Minor cleanup for Tramp "doas".
[emacs.git] / ChangeLog.2
blobdbb56ab2aa2c5603a27aea476e379366c0371b23
1 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
3         Shrink static heap a bit
5         * src/sheap.h: Include lisp.h, for Lisp_Object.
6         (STATIC_HEAP_SIZE): Now an enum constant, not a macro.
7         Make it 2 MiB * sizeof (Lisp_Object), which is a bit more
8         conservative than the old value.
9         (Bug#22086)
11 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
13         Fix extern symbols defined and not used
15         * src/alloc.c: Always include <signal.h>.
16         (malloc_warning) [!SIGDANGER && (SYSTEM_MALLOC || HYBRID_MALLOC)]:
17         Do not define; unused.
18         * src/emacs.c, src/lisp.h (might_dump) [!DOUG_LEA_MALLOC]: Now static.
19         * src/gmalloc.c (gdefault_morecore): Rename from __default_morecore,
20         to avoid collision with glibc.  Now static.  All uses changed.
21         * src/lastfile.c (my_edata): Define only if
22         ((!defined SYSTEM_MALLOC && !defined HYBRID_MALLOC && !defined
23         WINDOWSNT) \ || defined CYGWIN || defined DARWIN_OS).
24         (Bug#22086)
26 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
28         Build lib/e-*.o only on platforms that need it
30         * configure.ac (hybrid malloc): Simplify configuration.
31         (SHEAP_OBJ): Remove; no longer needed.
32         (HYBRID_MALLOC): New var. Subst it.
33         (HYBRID_MALLOC_LIB): New Automake conditional.
34         * lib/Makefile.am (noinst_LIBRARIES): Add libegnu.a only if
35         HYBRID_MALLOC_LIB.
36         (libegnu_a_CPPFLAGS): Omit AM_CPPFLAGS; not needed.
37         (MOSTLYCLEANFILES): Add libegnu.a.
38         * src/Makefile.in (SHEAP_OBJ): Remove.
39         (HYBRID_MALLOC): New macro.
40         (base_obj): Use it to conditionally add sheap.o.
41         (LIBEGNU_ARCHIVE): New macro.
42         ($(LIBEGNU_ARCHIVE)): New rule, replacing $(lib)/libegnu.a.
43         All uses of the latter replaced by the former.
44         * src/alloc.c (USE_ALIGNED_ALLOC): Simplify configuration.
45         Correct misspelling ALIGNED_ALLOC to HAVE_ALIGNED_ALLOC.
46         * src/gmalloc.c: Update comment.
47         * src/lisp.h (aligned_alloc)
48         [!DOUG_LEA_MALLOC && !HYBRID_MALLOC && !SYSTEM_MALLOC]:
49         New decl.
50         (Bug#22086)
52 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
54         Include <malloc.h> when advisable
56         This should help insulate us better from future glibc changes.
57         It is good hygiene to include .h files for APIs that Emacs uses.
58         Fix type clashes between Emacs and GNU <malloc.h> (Bug#22086).
59         * configure.ac: Check for malloc.h.
60         * src/alloc.c: Include <malloc.h> depending on HAVE_MALLOC_H,
61         not on DOUG_LEA_MALLOC.
62         * src/emacs.c, src/gmalloc.c (malloc_enable_thread):
63         Remove decl (now in lisp.h).
64         * src/gmalloc.c: Include stddef.h earlier, for ptrdiff_t.
65         [emacs]: Include lisp.h.
66         [HAVE_MALLOC_H]: Include <malloc.h>.
67         (__MALLOC_HOOK_VOLATILE): New macro, if not already defined.
68         (__after_morecore_hook, __malloc_initialize_hook, __morecore)
69         (__default_morecore):
70         [!HAVE_MALLOC_H]: New decls near non-inclusion of <malloc.h>.
71         (calloc): Make it clear that the macro should not be used.
72         Remove unused decl.
73         (malloc_info): New macro, to avoid clash with glibc <malloc.h>.
74         (__morecore, __default_morecore, __after_morecore_hook)
75         (__malloc_extra_blocks, __malloc_initialize_hook, __free_hook)
76         (__malloc_hook, __realloc_hook, __memalign_hook, memory_warnings):
77         Remove later decls.
78         (gmalloc_hook, gfree_hook, grealloc_hook):
79         Rename from __malloc_hook, __free_hook, __realloc_hook to
80         avoid type collision with glibc <malloc.h>.  All uses changed.
81         (gmalloc_hook):
82         (__malloc_extra_blocks) [DOUG_LEA_MALLOC||HYBRID_MALLOC||SYSTEM_MALLOC]:
83         Now static.
84         (gmalloc_hook, __malloc_extra_blocks): Define even if [!HYBRID_MALLOC].
85         (__malloc_initialize_hook, __after_morecore_hook):
86         Declare with types compatible with glibc.
87         (__memalign_hook, hybrid_calloc) [HYBRID_MALLOC]:
88         Remove.  All uses removed.
89         * src/lisp.h (__malloc_extra_blocks, malloc_enable_thread): New decls.
90         * src/ralloc.c, src/vm-limit.c:
91         Simplify includes and include <malloc.h> if available.
93 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
95         * src/alloc.c: Include "sheap.h".
97         (alloc_unexec_pre, alloc_unexec_post) [HYBRID_MALLOC]:
98         Set and clear bss_sbrk_did_unexec, on all platforms not just Cygwin.
99         * src/lisp.h (alloc_unexec_pre, alloc_unexec_post) [!DOUG_LEA_MALLOC]:
100         Declare unconditionally.
101         * src/unexcw.c, src/unexelf.c (bss_sbrk_did_unexec): Remove decl.
102         (unexec): Don’t set or clear bss_sbrk_did_unexec;
103         the caller now does this.
104         (Bug#22086)
106 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
108         Pacify --enable-gcc-warnings when HYBRID_MALLOC
110         * src/buffer.c (init_buffer):
111         * src/emacs.c (main):
112         * src/xsmfns.c (smc_save_yourself_CB, x_session_initialize):
113         Use emacs_get_current_dir_name, not get_current_dir_name.
114         * src/conf_post.h (aligned_alloc) [HYBRID_MALLOC && emacs]: New macro.
115         (HYBRID_GET_CURRENT_DIR_NAME, get_current_dir_name): Remove.
116         * src/emacs.c: Include "sheap.h".
117         (report_sheap_usage): Remove decl.
118         (Fdump_emacs) [HYBRID_MALLOC]: Report usage directly.
119         Don't assume ptrdiff_t can be printed as int.
120         * src/gmalloc.c [HYBRID_MALLOC]:
121         Include "sheap.h" rather than declaring its contents by hand.
122         (get_current_dir_name, gget_current_dir_name)
123         (hybrid_get_current_dir_name): Remove.
124         (emacs_abort): Remove duplicate decl.
125         (aligned_alloc): Undef, like malloc etc.
126         (ALLOCATED_BEFORE_DUMPING): Now a static function, not a macro.
127         Make it a bit more efficient.
128         (malloc_find_object_address): Remove unused decl.
129         (enum mcheck_status, mcheck, mprobe, mtrace, muntrace, struct mstats)
130         (mstats, memory_warnings): Declare only if GC_MCHECK.
131         * src/lisp.h (emacs_get_current_dir_name):
132         New decl, replacing get_current_dir_name.
133         * src/sheap.c: Include sheap.h first.
134         (STATIC_HEAP_SIZE): Remove; now in sheap.h.
135         (debug_sheap): Now static.
136         (bss_sbrk_buffer_end): Remove; no longer used.
137         (bss_sbrk_ptr): Now static and private.
138         (bss_sbrk_did_unexec): Now bool.
139         (BLOCKSIZE): Remove, to avoid GCC warning about its not being used.
140         (bss_sbrk): Don't treat request_size 0 as special, since the code
141         works without this being a special case.
142         Avoid overflow if request size exceeds INT_MAX.
143         (report_sheap_usage): Remove; now done in emacs.c.
144         * src/sheap.h: New file.
145         * src/sysdep.c (get_current_dir_name): Remove macro.
146         Include "sheap.h".
147         (emacs_get_current_dir_name): Rename function from
148         get_current_dir_name.  Handle HYBRID_MALLOC here;
149         this is simpler.
150         (Bug#22086)
152 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
154         Report static heap usage on non-Cygwin, too
156         * src/emacs.c (Fdump_emacs) [HYBRID_MALLOC]: Report sheap usage here ...
157         * src/unexcw.c (unexec): ... instead of here, since sheap can be used
158         on platforms other than Cygwin (Bug#22086).
160 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
162         Pacify GCC on extern decls
164         * src/unexelf.c (bss_sbrk_did_unexec): Move decl to top level
165         to pacify recent GCC (Bug#22086).
167 2016-01-30  Wolfgang Jenkner  <wjenkner@inode.at>
169         Add musl patch to support HYBRID_MALLOC on elf systems
171         * src/gmalloc.c: Adjust for HYBRID_MALLOC in the non CYGWIN case.
172         (__default_morecore): Here, in particular.
173         * configure.ac: Define HYBRID_MALLOC when unexelf.o is used.
174         New variable SHEAP_OBJ.
175         * src/Makefile.in: Use it.
176         (Bug#22086)
178 2016-01-30  Rich Felker  <dalias@libc.org>  (tiny change)
180         unexelf.c hook to support HYBRID_MALLOC on ELF
182         * src/unexelf.c (unexec) [HYBRID_MALLOC]:
183         Define bss_sbrk_did_unexec (Bug#22086).
185 2016-01-30  Wolfgang Jenkner  <wjenkner@inode.at>
187         Link temacs with gnulib compiled with -Demacs
189         This is done to support HYBRID_MALLOC, since some static variables
190         (e.g., last_environ in putenv.c) hold pointers to memory malloced
191         before dumping (Bug#22086).
192         * lib/Makefile.am: Add incantation to install libegnu.a.
193         * src/Makefile.in ($(lib)/libgnu.a): Replace with libegnu.a
194         (temacs$(EXEEXT)): Use it.
196 2016-01-30  Wolfgang Jenkner  <wjenkner@inode.at>
198         Internal linkage for gmalloc etc. if HYBRID_MALLOC
200         This avoids clashes with symbols if the after-dump malloc is
201         derived from Doug Lea's implementation (Bug#22086).
203         * src/gmalloc.c (emacs_abort, __morecore, __default_morecore):
204         Move declarations up.  For HYBRID_MALLOC, turn all `extern'
205         declarations below to `static' ones.
206         (aligned_alloc): Declare for !MSDOS as well.
207         (heapsize, _fraghead): Move resp. copy declaration downwards.
208         For HYBRID_MALLOC, conditionalize out the other definitions,
209         since the previous `static' declarations double as tentative
210         definitions, anyway.
211         (_malloc, _free, _realloc, __free_hook, _aligned_blocks)
212         (__realloc_hook, __memalign_hook): Conditionalize out.
213         (cfree, memalign, valloc): Ditto.
215 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
217         Merge from origin/emacs-25
219         3f481ad Rename xref-query-replace to xref-query-replace-in-results
220         62f4ed4 Update cl-defgeneric and cl-defmethod docstrings
221         2111e0e Comment out next-error-function integration in xref
222         4e11ad3 Correct a use of "which" in intro.texi
223         a1865bc Distinguish the two meanings of Java's keyword "default".  Fixes bug #22358.
224         76045f7 Don't operate on menu bar of nonexistent frame
225         c32f3bc Unbreak the GNUstep build.
227 2016-01-30  Andreas Schwab  <schwab@linux-m68k.org>
229         Re-enable checks in member, memql, delete to complain about non-lists
231         * src/fns.c (Fmember, Fmemql, Fdelete): Revert 2007-10-16 change.
233 2016-02-04  Martin Rudalics  <rudalics@gmx.at>
235         Minor doc(-string) tweaks
237         * lisp/window.el (window-in-direction): Fix doc-string typo.
238         * doc/lispref/frames.texi (Frame Font): Mention canonical
239         character width/height.
240         * doc/lispref/windows.texi (Windows and Frames): Clarify
241         handling of minibuffer window for `window-in-direction'.
242         (Window Sizes): Minor tweaks in descriptions of
243         `window-max-chars-per-line', `window-min-width' and
244         `window-min-size'.
245         (Deleting Windows): Minor tweak in `delete-window' description.
246         (Selecting Windows): Clarify window use time description.
247         (Cyclic Window Ordering): Minor tweak.
248         (Switching Buffers): Clarify description of
249         `switch-to-buffer-in-dedicated-window'.
251 2016-02-04  Eli Zaretskii  <eliz@gnu.org>
253         Remove some useless-use-of eval.
255         * lisp/gnus/gnus.el (gnus-load-hook): Don't use eval.
256         * lisp/gnus/nnrss.el (xml): Simply require it.
257         (xml-rpc-method-call): Use declare-function.
259 2016-01-28  Glenn Morris  <rgm@gnu.org>
261         Don't use eval to quieten prolog.el compilation.
263         * lisp/progmodes/prolog.el (pltrace-on, pltrace-off): Declare.
264         (prolog-enable-sicstus-sd, prolog-disable-sicstus-sd): Don't use eval.
266 2016-01-28  Glenn Morris  <rgm@gnu.org>
268         Mark some risky prolog variables.
270         * lisp/progmodes/prolog.el (prolog-system-version)
271         (prolog-keywords, prolog-types, prolog-mode-specificators)
272         (prolog-determinism-specificators, prolog-directives)
273         (prolog-program-name, prolog-program-switches)
274         (prolog-consult-string, prolog-compile-string)
275         (prolog-eof-string, prolog-prompt-regexp, prolog-help-function):
276         Mark anything processed by prolog-find-value-by-system as risky.
278 2016-01-28  Glenn Morris  <rgm@gnu.org>
280         * lisp/custom.el (defcustom): Doc fix.
282         * doc/lispref/customize.texi (Variable Definitions):
283         Defcustom should always have a type.
285 2016-01-28  Glenn Morris  <rgm@gnu.org>
287         * lisp/emacs-lisp/bytecomp.el (byte-compile-nogroup-warn):
288         Warn if defcustom has no type.  (Bug#16276)
290         * lisp/cedet/semantic/db-file.el (semanticdb-persistent-path):
291         Fix :type.
293         * lisp/emacs-lisp/package.el (package-load-list): Improve :type.
295 2016-01-28  Michael Albinus  <michael.albinus@gmx.de>
297         Fix Bug#22452
299         * lisp/net/tramp-adb.el (tramp-adb-maybe-open-connection):
300         * lisp/net/tramp-gvfs.el (tramp-gvfs-maybe-open-connection):
301         * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
302         * lisp/net/tramp-smb.el (tramp-smb-maybe-open-connection):
303         Mark it as connected.
305         * lisp/net/tramp.el (tramp-handle-file-remote-p): Check also, if
306         connection property "connected" is set.  (Bug#22452)
308 2016-01-27  Glenn Morris  <rgm@gnu.org>
310         * test/lisp/vc/vc-hg.el: Move from test/automated/.
312         * lisp/xwidget.el (xwidget-query-on-exit-flag): Declare.
314         * lisp/xwidget.el (xwidget-webkit-browse-url): Give explicit error
315         if not compiled with xwidgets.
317 2016-01-26  Paul Eggert  <eggert@cs.ucla.edu>
319         C-u C-x = example doc fix
321         * doc/emacs/mule.texi (International Chars):
322         Adjust example to match current behavior of C-u C-x =.
324 2016-01-26  Paul Eggert  <eggert@cs.ucla.edu>
326         malloc.h hygiene
328         This attempts to future-proof Emacs a bit against possible glibc
329         changes, by having Emacs use <malloc.h> declarations rather than
330         coding them up by hand.  Problem noted by Florian Weimer in:
331         https://sourceware.org/ml/libc-alpha/2016-01/msg00777.html
332         Implement this mainly by moving malloc.h-related functions from
333         emacs.c (which does not include <malloc.h>) to alloc.c (which does).
334         * src/alloc.c (my_heap_start) [DOUG_LEA_MALLOC || GNU_LINUX]:
335         New function.
336         The remaining changes to this file apply only if DOUG_LEA_MALLOC.
337         (alloc_unexec_pre, alloc_unexec_post): New functions.
338         (malloc_initialize_hook): Use my_heap_start and alloc_unexec_post.
339         (__MALLOC_HOOK_VOLATILE): New macro, if not already defined.
340         (__malloc_initialize_hook): Use it.
341         (malloc_state_ptr, malloc_initialize_hook, __malloc_initialize_hook):
342         Move here from ...
343         * src/emacs.c: ... here.
344         (malloc_get_state, malloc_set_state): Remove extern decls.
345         (my_heap_start) [DOUG_LEA_MALLOC || GNU_LINUX]: Remove static var.
346         All uses changed to similarly-named new function.
347         (Fdump_emacs): Use new functions alloc_unexec_pre, alloc_unexec_post.
348         * src/lisp.h (my_heap_start, alloc_unexec_pre, alloc_unexec_post):
349         New decls.
351 2016-01-26  Eli Zaretskii  <eliz@gnu.org>
353         * doc/emacs/mark.texi (Using Region): Clarify wording.  (Bug#22467)
355 2016-01-26  Paul Eggert  <eggert@cs.ucla.edu>
357         Remove never-set var handle_user_signal_hook
359         * src/keyboard.c, src/keyboard.h (handle_user_signal_hook):
360         Remove never-set var.  All uses removed.
362 2016-01-26  Anders Lindgren  <andlind@gmail.com>
364         Fixed NextStep fullscreen issue (bug#22468)
366         When in fullscreen mode, `[screen visibleFrame]' sometimes
367         includes, sometimes excludes the menu bar. This could cause
368         a frame to be placed too low when in fullscreen mode.
370         * src/nsterm.m (ns_menu_bar_should_be_hidden): Trace.
371         (constrain_frame_rect): New parameter, isFullscreen, when true don't
372         query the height of the menu bar.
373         (ns_constrain_all_frames): Pass `false' (isFullscreen) to
374         `constrain_frame_rect'.
375         ([EmacsView initFrameFromEmacs:]): Trace.
376         ([EmacsView isFullscreen]): Trace.
377         ([EmacsWindow constrainFrameRect:toScreen:]): Pass fullscreen
378         state to `constrain_frame_rect'.
380 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
382         * lisp/files.el: Use a fixed file name for the second dir-locals file
384         (dir-locals-file): Revert to its original fixed value.
385         (dir-locals-file-2): New const.
386         (dir-locals--all-files): Don't use `file-name-all-completions'.
387         Instead, just check for the 2 dir-locals files and return a list
388         of the ones that exit (if any).
390         * etc/NEWS: Document the change.
392         * doc/emacs/custom.texi (Directory Variables): Document the change.
394         * doc/lispref/variables.texi (Directory Local Variables): Update
395         accordingly.
397 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
399         * lisp/files-x.el (modify-dir-local-variable): Small rewrite
401         Change a variable name to be more meaningful, and reorder some of
402         the code with no change in behaviour.
404 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
406         * lisp/files.el (dir-locals-find-file): Refactor return values
408         Returning a cache remains unchanged, but the case of returning a
409         file (or pattern) is now changed to return the contaning
410         directory.
412         (dir-locals-read-from-file): Rename to `dir-locals-read-from-dir'
413         and make obsolete.
414         (dir-locals-read-from-dir): Simplify accordingly.
415         (hack-dir-local-variables): Simplify accordingly and rename a
416         variable.
418 2016-01-25  Glenn Morris  <rgm@gnu.org>
420         * lisp/textmodes/flyspell.el (flyspell--prev-meta-tab-binding):
421         Declare.
423         * configure.ac (USE_CAIRO): Rename to more standard HAVE_CAIRO.
425         * configure.ac (--with-cairo): Say it's experimental.
427         * lisp/xwidget.el (xwidget-webkit-scroll-behavior):
428         Rename using American spelling.  Update all uses.
430 2016-01-25  Glenn Morris  <rgm@gnu.org>
432         Yet more xwidget doc fixes.
434         * lisp/xwidget.el (xwidget-webkit-scroll-behaviour)
435         (xwidget-insert, xwidget-webkit-browse-url)
436         (xwidget-webkit-scroll-up, xwidget-webkit-scroll-down)
437         (xwidget-webkit-scroll-forward, xwidget-webkit-scroll-backward)
438         (xwidget-webkit-insert-string, xwidget-webkit-show-named-element)
439         (xwidget-webkit-show-id-element)
440         (xwidget-webkit-show-id-or-named-element)
441         (xwidget-webkit-adjust-size, xwidget-webkit-current-url)
442         (xwidget-webkit-execute-script-rv)
443         (xwidget-webkit-copy-selection-as-kill, xwidget-get)
444         (xwidget-put):  Doc fixes.
445         (xwidget-webkit-insert-string, xwidget-webkit-show-named-element)
446         (xwidget-webkit-show-id-element)
447         (xwidget-webkit-show-id-or-named-element): Prompt fixes.
449 2016-01-25  Ted Zlatanov  <tzz@lifelogs.com>
451         * lisp/gnus/gnus-art.el (gnus-blocked-images):
452         Add explicit nil choice and tags.
454 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
456         Spelling fixes
458 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
460         (rng-c-fix-escaped-newlines): Use subst-char-in-string
462         * lisp/nxml/rng-cmpct.el (rng-c-fix-escaped-newlines):
463         Use subst-char-in-string.
465 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
467         * lisp/textmodes/sgml-mode.el (sgml-forward-sexp): New function
469         (sgml-cursor-sensor, sgml-pretty-print, sgml-parse-tag-backward)
470         (sgml-calculate-indent): Use it.
472 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
474         * lisp/org: Fix some compiler warnings
476         * lisp/org/ob-core.el (org-babel-check-confirm-evaluate)
477         (org-babel-map-src-blocks): Don't emit warnings if added vars are not used.
478         (*this*): Declare as dyn-bound.
479         (org-babel-expand-src-block, org-babel-load-in-session)
480         (org-babel-switch-to-session-with-code, org-babel-get-rownames):
481         Mark unused args.
482         (org-babel-combine-header-arg-lists): Remove unused var `args'.
483         (org-babel-find-named-block): Remove unused var `msg'.
485         * lisp/org/org-src.el (org-inhibit-startup, org-src-fontify-natively):
486         Declare as dyn-bound.
487         (org-edit-src-code): Remove unused var `lfmt'.
488         (org-edit-fixed-width-region): Remove unused var `preserve-indentation'.
490 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
492         * lisp/font-lock.el: Use #' to quote function symbols
494 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
496         (font-lock-ensure-function): Fix bug#22399
498         * lisp/font-lock.el (font-lock-ensure-function): Fix handling when
499         font-lock-mode is not enabled (bug#22399).
501 2016-01-25  Alan Mackenzie  <acm@muc.de>
503         Expunge "allow" + infinitive from source and doc, part 2.
505         Do the same for "permit", "enable", "prevent", and (where appropriate)
506         "require".
508         doc/misc/reftex.texi:
509         doc/misc/url.texi:
510         lib/get-permissions.c:
511         lib/strftime.c:
512         lisp/org/org-element.el:
513         lisp/org/org-mobile.el:
514         lisp/textmodes/reftex-vars.el:
515         src/bidi.c:
516         src/emacs.c:
517         src/xdisp.c:
518         test/etags/c-src/emacs/src/lisp.h:
520         Expunge the likes of "This allows to do something" from the above files.
522 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
524         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-mode): Redundant line
526         `special-mode' is already read-only.
528 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
530         * lisp/emacs-lisp/ert.el (ert--results-move): Change error to user-error
532 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
534         Port "$@" to OpenIndiana ksh93
536         In http://lists.gnu.org/archive/html/bug-autoconf/2015-12/msg00000.html
537         Pavel Raiskup reports that ${1+"$@"} runs afoul of a bug in /bin/sh
538         (derived from ksh 93t+ 2010-03-05).  ${1+"$@"} works around an ancient
539         bug in long-dead shells, so remove the workaround.
540         * admin/check-doc-strings, configure.ac, lib-src/rcs2log:
541         Use plain "$@" rather than ${1+"$@"}.
543 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
545         * src/xwidget.c (Fxwidget_set_adjustment): Fix doc string quoting typo.
547 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
549         Improve wording for SMB support
551         * doc/misc/tramp.texi (External methods): Improve and modernize
552         wording for discussion of smbclient.  There is no longer any
553         need to mention the laundry list of old MS Windows implementations
554         of SMB and CIFS, nor to mention CIFS.  Also, give a URL for Samba.
556 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
558         Merge from gnulib
560         This incorporates:
561         2016-01-24 openat_proc_name: fix last '/' overwritten on OS/2 kLIBC
562         2016-01-24 closedir, dirfd, opendir: port to OpenSolaris 5.10
563         2016-01-15 detect utimes() correctly on OS/2 kLIBC
564         2016-01-15 openat_proc_name: port to OS/2 kLIBC
565         2016-01-14 stdint: check _INTPTR_T_DECLARED for intptr_t etc.
566         2016-01-14 opendir, closedir, dirfd, fdopendir: port to OS/2 kLIBC
567         2016-01-14 dup, dup2, fcntl: support a directory fd on OS/2 kLIBC
568         2016-01-14 binary-io: don't put fd in binary mode if a console on EMX
569         2016-01-14 sig2str: list all signals on FreeBSD >= 7
570         2016-01-13 acl-permissions: port to USE_ACL==0 platforms
571         2016-01-12 mktime: rename macro to avoid glibc clash
572         2016-01-12 Port "$@" to OpenIndiana ksh93
573         2016-01-12 Port Universal Time settings to strict POSIX
574         * build-aux/gitlog-to-changelog, build-aux/update-copyright:
575         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
576         * lib/binary-io.h, lib/dirent.in.h, lib/dirfd.c, lib/dup2.c:
577         * lib/fcntl.c, lib/fdopendir.c, lib/mktime.c, lib/openat-proc.c:
578         * lib/sig2str.h, lib/stdint.in.h, m4/dirfd.m4, m4/dup2.m4:
579         * m4/fcntl.m4, m4/utimes.m4:
580         Copy from gnulib.
581         * m4/gnulib-comp.m4: Regenerate.
583 2016-01-24  Alan Mackenzie  <acm@muc.de>
585         Expunge "allow" + infinitive without direct object from source and doc.
587         Do the same for "permit", "enable", and "prevent".
589         * doc/emacs/mule.texi:
590         * doc/lispref/control.texi:
591         * doc/lispref/display.texi:
592         * doc/lispref/frames.texi:
593         * doc/lispref/functions.texi:
594         * doc/lispref/nonascii.texi:
595         * doc/lispref/streams.texi:
596         * doc/lispref/windows.texi:
597         * doc/misc/dbus.texi:
598         * doc/misc/eww.texi:
599         * doc/misc/flymake.texi:
600         * doc/misc/octave-mode.texi:
601         * doc/misc/org.texi:
602         * doc/misc/reftex.texi:
603         * doc/misc/tramp.texi:
604         * doc/misc/wisent.texi:
605         * etc/NEWS:
606         * lisp/autorevert.el:
607         * lisp/cedet/mode-local.el:
608         * lisp/cedet/semantic/senator.el:
609         * lisp/cedet/semantic/wisent.el:
610         * lisp/dos-fns.el:
611         * lisp/frameset.el:
612         * lisp/gnus/gnus-agent.el:
613         * lisp/gnus/mm-util.el:
614         * lisp/international/characters.el:
615         * lisp/ldefs-boot.el:
616         * lisp/mail/mailclient.el:
617         * lisp/man.el:
618         * lisp/mh-e/mh-search.el:
619         * lisp/net/tramp-cmds.el:
620         * lisp/net/tramp-gvfs.el:
621         * lisp/org/org-crypt.el:
622         * lisp/org/org-element.el:
623         * lisp/org/org-feed.el:
624         * lisp/org/org.el:
625         * lisp/org/ox-ascii.el:
626         * lisp/org/ox-icalendar.el:
627         * lisp/org/ox-publish.el:
628         * lisp/org/ox.el:
629         * lisp/play/gamegrid.el:
630         * lisp/play/gomoku.el:
631         * lisp/progmodes/antlr-mode.el:
632         * lisp/progmodes/python.el:
633         * lisp/progmodes/vhdl-mode.el:
634         * lisp/strokes.el:
635         * lisp/textmodes/ispell.el:
636         * lisp/tree-widget.el:
637         * lisp/vc/pcvs.el:
638         * lisp/window.el:
639         * src/lisp.h:
640         * src/w32.c:
641         * src/w32heap.c:
642         * src/w32term.c:
643         * src/window.c:
644         * src/xfaces.c:
646         Replace solecisms like "This allow to do something" with a correct
647         alternative, such as "This allow you to do something", "This allows
648         something to be done" or "This allows the doing of something".
650 2016-01-24  l3thal  <kwhite@gnu.org>
652         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
654 2016-01-24  Kelvin White  <kwhite@gnu.org>
656         Add NEWS entry for asynchronous reconnect in ERC
658 2016-01-24  l3thal  <kwhite@gnu.org>
660         Add NEWS entry for asynchronous reconnect in ERC
662 2016-01-24  Kelvin White  <kwhite@gnu.org>
664         browse-url.el: Add 'google-chrome' to supported browsers.
666 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
668         Port Tramp manual to latest Texinfo
670         Otherwise, 'make pdf' did not work (Bug#22416).
671         * doc/misc/tramp.texi (xxx, yyy): Remove macros.
672         (trampfn): Specialize to the case where METHOD is nonempty.
673         The 2nd argument is now user@host, not 2nd user and 3rd host args.
674         All uses changed.
675         (trampf): New macro.
677 2016-01-24  Lars Ingebrigtsen  <larsi@gnus.org>
679         * eww.el (eww-render): Protect against empty content-types.
681 2016-01-24  Nicolas Petton  <nicolas@petton.fr>
683         authors.el updates
685         * admin/authors.el (authors-ignored-files, authors-renamed-files-alist):
686           Additions.
688 2016-01-23  Dmitry Gutov  <dgutov@yandex.ru>
690         Rename xref-query-replace to xref-query-replace-in-results
692         * lisp/progmodes/xref.el(xref-query-replace):
693         Rename to xref-query-replace-in-results.
694         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01240.html)
696         * lisp/progmodes/xref.el (xref--xref-buffer-mode-map):
697         * lisp/dired-aux.el (dired-do-find-regexp-and-replace):
698         * doc/emacs/dired.texi (Operating on Files):
699         * doc/emacs/maintaining.texi (Xref Commands)
700         (Identifier Search, Identifier Search): Update accordingly.
702 2016-01-23  Dmitry Gutov  <dgutov@yandex.ru>
704         Update cl-defgeneric and cl-defmethod docstrings
706         * lisp/emacs-lisp/cl-generic.el: Remove outdated TODO item.
707         (cl-defgeneric): Rename BODY to DEFAULT-BODY.
708         (cl-defmethod): Mention that multiple dispatch arguments are
709         allowed.  Document supported types.  (Bug#22336)
711 2016-01-23  Dmitry Gutov  <dgutov@yandex.ru>
713         Comment out next-error-function integration in xref
715         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
716         Comment out next-error-function integration
717         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01286.html).
719 2016-01-23  John Wiegley  <johnw@newartisans.com>
721         Correct a use of "which" in intro.texi
723 2016-01-23  Alan Mackenzie  <acm@muc.de>
725         Distinguish the two meanings of Java's keyword "default".  Fixes bug #22358.
727         * lisp/progmodes/cc-engine.el (c-guess-basic-syntax CASE 14): Check the
728         context of case labels (including "default") more rigorously.
729         (c-guess-basic-syntax CASE 15): Consequential amendment.
731         * lisp/progmodes/cc-langs.el (c-modifier-kwds): Add "default" to Java's value.
733 2016-01-23  Oscar Fuentes  <ofv@wanadoo.es>
735         Don't operate on menu bar of nonexistent frame
737         * src/xfns.c (Fx_hide_tip) [USE_LUCID]: Check that the current frame
738         is valid before redisplaying its menu. Fixes bug#22438.
740 2016-01-23  Anders Lindgren  <andlind@gmail.com>
742         Unbreak the GNUstep build.
744         * src/nsterm.m ([EmacsBell init]): In GNUstep, don't use the
745         predefined "caution" image. Add trace.
746         (x_set_window_size): Remove unused variables `cols' and `rows'.
747         (ns_draw_fringe_bitmap): Exclude assignment of `fromRect' when
748         GNUstep is used.
749         ([EmacsView updateFrameSize:]): Remove unused variable `win'.
750         ([EmacsWindow zoom:]): Remove unused variable `f'.
752 2016-01-23  Eli Zaretskii  <eliz@gnu.org>
753             John Wiegley  <johnw@gnu.org>
754             Michael Heerdegen  <michael_heerdegen@web.de>
756         Improve documentation of 'pcase'
758         * doc/lispref/control.texi (Pattern matching case statement):
759         Reorganize, expand, and improve wording.
761         * etc/NEWS: Mention that 'pcase' changes are documented.
763 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
765         * etc/NEWS: Say that Cairo is experimental.
767 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
769         Report error for PNG under Cairo
771         * src/image.c (lookup_rgb_color): Signal a file error instead
772         of dumping core when mishandling an image.
774 2016-01-23  Arash Esbati  <esbati@gmx.de>
776         Delete a spurious backquote (tiny change)
778         * lisp/textmodes/reftex-ref.el (reftex-label): Delete a
779         spurious backquote which raises an error with emacs 25.
781 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
783         Pacify --enable-gcc-warnings --with-cairo
785         Problem reported by Alexander Kuleshov in:
786         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01289.html
787         * src/gtkutil.c (xg_get_page_setup):
788         Use switch rather than if-then-else.
789         * src/image.c (COLOR_TABLE_SUPPORT):
790         Define directly rather than via #define and optional later #undef.
791         (lookup_rgb_color) [USE_CAIRO && ENABLE_CHECKING]:
792         Crash when the pixel is undefined, as there is a genuine bug
793         here (Bug#22442).
794         * src/image.c (tiff_load, gif_load, svg_load_image)
795         (x_kill_gs_process) [USE_CAIRO]:
796         * src/xterm.c (x_draw_fringe_bitmap) [USE_CAIRO]:
797         Omit unused locals, or move them to where they’re needed.
798         (x_clear_area1): Now ATTRIBUTE_UNUSED.
800 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
802         Update documentation for Dired search and replace
804         * doc/emacs/dired.texi (Operating on Files): Update descriptions
805         of 'A' and 'Q' now bound to 'dired-do-find-regexp' and
806         'dired-do-find-regexp-and-replace'.
808         * etc/NEWS: Mention xref-related changes in Dired.
810 2016-01-22  Paul Eggert  <eggert@cs.ucla.edu>
812         Port recent xdisp.c fix to picky C compilers
814         * src/xdisp.c (dump_glyph): Redo the call to fprintf to avoid
815         putting #if inside the arguments to a standard function, which
816         the C standard says has undefined behavior.
818 2016-01-22  Alan Mackenzie  <acm@muc.de>
820         Prevent spurious recognition of K&R argument declarations.  Fixes bug #2203
822         * cc-engine.el (c-forward-declarator): New function.
823         (c-in-knr-argdecl): Before recognizing a K&R argument declaration, check it is
824         contained in the preceding arg list.
826         * cc-fonts.el (c-font-lock-declarators): Use the new function
827         `c-forward-declarator' in place of inline code.
829 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
831         Fix the build with --enable-checking=glyphs
833         * src/xdisp.c (dump_glyph): Don't refer to glyph->u.xwidget in a
834         build without xwidget support.
836 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
838         Document cl-generic.el
840         * doc/lispref/functions.texi (Generic Functions): New section.
841         (Bug#22336)
842         (Functions): Update the chapter menu.
843         * doc/lispref/elisp.texi: Update the master menu.
845 2016-01-22  Paul Eggert  <eggert@cs.ucla.edu>
847         xwidgets style cleanup
849         Adjust the newly-added Xwidgets code so that it uses a more-typical
850         Emacs style.  This should not affect behavior, except that in
851         a few places it adds runtime checks that Lisp arguments are of
852         the proper type, and in one place it uses more-precise arithmetic.
853         * src/buffer.c, src/dispnew.c, src/emacs.c, src/emacsgtkfixed.c:
854         * src/emacs.c, src/print.c, src/window.c, src/xdisp.c, src/xterm.c:
855         Include xwidget.h unconditionally.
856         * src/buffer.c (Fkill_buffer):
857         * src/dispnew.c (update_window):
858         * src/emacs.c (main):
859         * src/print.c (print_object):
860         * src/window.c (Fdelete_window_internal):
861         * src/xdisp.c (handle_single_display_spec, push_it, pop_it)
862         (get_next_element, set_iterator_to_next, next_element_from_xwidget)
863         (dump_glyph, calc_pixel_width_or_height, BUILD_GLYPH_STRINGS_XW)
864         (BUILD_GLYPH_STRINGS, x_produce_glyphs, get_window_cursor_type):
865         * src/xterm.c (x_draw_glyph_string, x_draw_bar_cursor):
866         Call xwidget functions and macros without worrying about
867         HAVE_XWIDGETS when the code is a no-op on non-xwidget
868         platforms.
869         * src/dispextern.h (XWIDGET_GLYPH, struct glyph_string.xwidget)
870         (IT_XWIDGET, GET_FROM_XWIDGET, struct it.u.xwidget)
871         (struct it.xwidget):
872         * src/lisp.h (PVEC_XWIDGET, PVEC_XWIDGET_VIEW):
873         Always define.
874         * src/emacsgtkfixed.h: Omit unnecessary comment.
875         * src/keyboard.c: Fix spacing.
876         * src/xdisp.c (BUILD_XWIDGET_GLYPH_STRING, produce_xwidget_glyph):
877         Define to be a no-op if not HAVE_XWIDGETS.
878         * src/xwidget.c: Include xwidget.h first (after config.h)
879         to make sure that it can stand by itself.
880         (Fmake_xwidget, Fxwidget_webkit_execute_script):
881         Fix typo in doc string.
882         (Fmake_xwidget): Check type of args.
883         (Fmake_xwidget, offscreen_damage_event)
884         (webkit_document_load_finished_cb, webkit_download_cb)
885         (webkit_new_window_policy_decision_requested_cb)
886         (webkit_navigation_policy_decision_requested_cb)
887         (xwidget_osr_draw_cb, xwidget_osr_event_forward)
888         (xwidget_osr_event_set_embedder, xwidget_init_view):
889         Omit unnecessary casts.
890         * src/xwidget.c (Fmake_xwidget, xwidget_hidden)
891         (xwidget_show_view, xwidget_hide_view)
892         (x_draw_xwidget_glyph_string, xwidget_start_redisplay, xwidget_touch)
893         (xwidget_touched):
894         * src/xwidget.h (struct xwidget.kill_without_query)
895         (struct xwidget_view.redisplayed, struct xwidget_view.hidden):
896         Use bool for boolean.
897         * src/xwidget.c (store_xwidget_event_string, Fxwidget_size_request):
898         Simplify by using list functions.
899         (WEBKIT_FN_INIT): Omit unnecessary test for nil.
900         (Fxwidget_resize): Check type of integer args
901         before doing any work.  Check that they are nonnegative.
902         (Fxwidget_set_adjustment): Check type of integer arg.
903         Avoid redundant call to gtk_scrolled_window_get_vadjustment.
904         Simplify.  Use double, not float.
905         (Fxwidget_info, Fxwidget_view_info): Simplify by using CALLN.
906         (valid_xwidget_spec_p): Simplify.
907         (xwidget_spec_value): Omit unused arg FOUND.  All callers changed.
908         * src/xwidget.h: Include lisp.h first, so that includers do
909         not need to worry about doing that before including this file.
910         Make this .h file safe to include even on non-HAVE_XWIDGETS
911         configurations, to simplify the includers.
912         (x_draw_xwidget_glyph_string, syms_of_xwidget, valid_xwidget_spec_p)
913         (xwidget_end_redisplay, lookup_xwidget)
914         (xwidget_view_delete_all_in_window, kill_buffer_xwidgets):
915         Now a no-op if !HAVE_XWIDGETS, to simplify callers.
916         (struct glyph_matrix, struct glyph_string, struct xwidget)
917         (struct xwidget_view, struct window):
918         New forward or incomplete decls, so that includers need not
919         assume the corresponding .h files are already included, or that
920         HAVE_XWIDGETS is defined.
921         (struct xwidget_type, xwidget_from_id): Remove; unused.
923 2016-01-22  John Wiegley  <johnw@newartisans.com>
925         Further corrections to the pcase docstring
927 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
929         * doc/emacs/anti.texi (Antinews): Rewrite for Emacs 25.
931 2016-01-21  Stephen Leake  <stephen_leake@stephe-leake.org>
933         In xref-collect-references, force backends to respect the 'dir' arg
935         * lisp/progmodes/xref.el (xref-collect-references): Force symref backends
936         to use `default-directory'.
938 2016-01-21  John Wiegley  <johnw@newartisans.com>
940         Minor correction to pcase docstring
942 2016-01-21  John Wiegley  <johnw@newartisans.com>
944         Write a new docstring for the pcase macro
946         * lisp/emacs-lisp/pcase.el (pcase): Write a new docstring.
948 2016-01-21  Stephen Berman  <stephen.berman@gmx.net>
950         Avoid byte-compiler warning in todo-mode (bug#21953)
952         * todo-mode.el (todo-convert-legacy-files): Add limit argument
953         to looking-back to comply with advertised-calling-convention.
955 2016-01-21  Stephen Berman  <stephen.berman@gmx.net>
957         Fix desktop support in todo-mode and doc-view (bug#22377)
959         * lisp/calendar/todo-mode.el (todo-restore-desktop-buffer):
960         * lisp/doc-view.el (doc-view-restore-desktop-buffer): Return current buffer.
962         * lisp/calendar/todo-mode.el (todo-modes-set-2):
963         * lisp/doc-view.el (doc-view-mode): Set desktop-save-buffer unconditionally.
965 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
967         No need to configure gobject-introspection
969         It wasn’t needed for the recently-installed xwidget_mvp code; see:
970         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01154.html
971         * configure.ac (DOES_XWIDGETS_USE_GIR, GIR_REQUIRED, GIR_MODULES):
972         (HAVE_GIR):
973         * src/Makefile.in (GIR_LIBS, GIR_CFLAGS):
974         Remove.  All uses removed.
975         * configure.ac (emacs_config_features): Don’t worry about GIR.
977 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
979         Don’t export C symbols not used elsewhere
981         These were recently added, mostly as part of xwidget code.
982         * src/emacsgtkfixed.c (emacs_fixed_get_type): Now static.
983         (EMACS_FIXED, EMACS_FIXED_GET_CLASS):
984         Now static functions here, not macros in emacsgtkfixed.h.
985         * src/emacsgtkfixed.h (EMACS_TYPE_FIXED):
986         Remove.  All uses replaced by definiens.
987         (EMACS_FIXED, EMACS_FIXED_GET_CLASS):
988         Remove; these are now static functions in emacsgtkfixed.c.
989         (EMACS_FIXED_CLASS, EMACS_IS_FIXED, EMACS_IS_FIXED_CLASS):
990         Remove; unused.
991         (emacs_fixed_get_type): Remove decl; no longer extern.
992         * src/xwidget.c (offscreen_damage_event)
993         (webkit_mime_type_policy_typedecision_requested_cb)
994         (webkit_new_window_policy_decision_requested_cb)
995         (webkit_navigation_policy_decision_requested_cb)
996         (xwidget_spec_value, xwidget_view_lookup)
997         (xwidget_start_redisplay, xwidget_touch):
998         Now static.
999         * src/xwidget.h (xwidget_start_redisplay, xwidget_touch):
1000         Remove decls.
1002 2016-01-20  Dmitry Gutov  <dgutov@yandex.ru>
1004         Support squiggly heredocs in ruby-mode
1006         * lisp/progmodes/ruby-mode.el (ruby-here-doc-beg-re):
1007         Support squiggly heredocs added in Ruby 2.3.
1009         * test/indent/ruby.rb: Add squiggly example.
1011 2016-01-20  Glenn Morris  <rgm@gnu.org>
1013         * configure.ac (emacs_config_features): Remove WEBKIT.
1015 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
1017         Port to platforms with gtk3 but not webkitgtk3
1019         I ran into this problem on my Fedora 23 installation;
1020         Emacs configured but did not build when --with-xwidgets was specified.
1021         * configure.ac (HAVE_WEBKIT, HAVE_GIR): Omit unnecessary initializations.
1022         (DOES_XWIDGETS_USE_GIR): New var.
1023         If --with-xwidgets is specified, report an error if not
1024         doable, to be consistent with the other --with options.
1025         Require webkitgtk3 to use Xwidgets, as the Xwidgets code does
1026         not work at all without webkitgtk3.  Simplify use of
1027         EMACS_CHECK_MODULES.  Output message about gobject
1028         introspection only if xwidgets are used.
1029         * etc/NEWS: Users need webkitgtk3, not merely webkit.
1030         * src/xwidget.c (syms_of_xwidget): Don’t worry about HAVE_WEBKIT_OSR,
1031         since this file is no longer compiled if webkitgtk3 is not available.
1033 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
1035         Fix doc string of 'isearch-search-fun-function'
1037         * lisp/isearch.el (isearch-search-fun-function)
1038         (isearch-search-string): Doc fixes.  (Bug#22411)
1040 2016-01-19  Stefan Monnier  <monnier@iro.umontreal.ca>
1042         * lisp/xwidget.el: Nitpicks
1044         * lisp/xwidget.el (xwidget-log, xwidget-webkit-callback):
1045         Use with-current-buffer rather than save-excursion + set-buffer.
1047 2016-01-19  Glenn Morris  <rgm@gnu.org>
1049         Don't hard-code 1 as point-min.
1051         * lisp/image-mode.el (image-display-size):
1052         * lisp/xwidget.el (xwidget-webkit-last-session)
1053         (xwidget-webkit-current-session): Don't hard-code 1 as point-min.
1055 2016-01-19  Glenn Morris  <rgm@gnu.org>
1057         * lisp/xwidget.el: Add declarations to silence non-xwidget compilation.
1059 2016-01-19  Glenn Morris  <rgm@gnu.org>
1061         Trivial doc copyedits.
1063         * src/xwidget.c (Fmake_xwidget, Fget_buffer_xwidgets)
1064         (Fxwidget_webkit_get_title, Fxwidget_resize)
1065         (Fxwidget_set_adjustment, Fxwidgetp, Fxwidget_view_p)
1066         (Fxwidget_info, Fxwidget_view_lookup)
1067         (Fset_xwidget_query_on_exit_flag): Trivial doc copyedits.
1069 2016-01-19  Glenn Morris  <rgm@gnu.org>
1071         Avoid advising image-display-size for xwidgets.
1073         * lisp/xwidget.el (xwidget-image-display-size): Remove.
1074         (image-display-size): Remove advice.
1075         * lisp/image-mode.el (xwidget-info, xwidget-at): Declare.
1076         (image-display-size): Incorporate xwidget code directly.
1078 2016-01-19  Glenn Morris  <rgm@gnu.org>
1080         Avoid breaking non-xwidget Emacs that happen to load xwidget.el.
1082         * lisp/xwidget.el (window-configuration-change-hook)
1083         (kill-buffer-query-functions): Only modify these hooks if
1084         compiled with xwidget support.
1086 2016-01-19  Glenn Morris  <rgm@gnu.org>
1088         * lisp/xwidget.el (xwidget-webkit-scroll-behaviour): Fix custom spec.
1090         * configure.ac (WEBKIT, GIR, CAIRO): Use EMACS_CHECK_MODULES, not PKG_.
1092         * configure.ac (emacs_config_features): Add XWIDGETS, WEBKIT, GIR.
1094         * configure.ac (HAVE_WEBKIT_OSR): Remove broken, duplicated gtk3 test.
1096 2016-01-19  Katsumi Yamaoka  <yamaoka@jpl.org>
1098         * lisp/gnus/nnir.el (nnir-request-update-mark):
1099         Default to the original mark.
1100         cf. <http://thread.gmane.org/gmane.emacs.gnus.general/86583>
1101         and <http://thread.gmane.org/gmane.emacs.gnus.general/86640>
1103 2016-01-19  Glenn Morris  <rgm@gnu.org>
1105         * lisp/xwidget.el (report-xwidget-bug): Remove.
1107         (top-level): No longer require reporter.
1109 2016-01-19  Joakim Verona  <joakim@verona.se>
1110             Grégoire Jadi  <daimrod@gmail.com>
1112         Support for the new Xwidget feature.
1114         * configure.ac:
1115         (HAVE_XWIDGETS, WIDGET_OBJ, EMACS_CONFIG_FEATURES):
1116         * xterm.c (x_draw_glyph_string, x_draw_bar_cursor):
1117         * xdisp.c:
1118         (handle_display_spec, handle_single_display_spec, push_it)
1119         (pop_it, set_iterator_to_next, dump_glyph)
1120         (calc_pixel_width_or_height, fill_xwidget_glyph_string)
1121         (BUILD_XWIDGET_GLYPH_STRING, BUILD_GLYPH_STRINGS)
1122         (produce_xwidget_glyph, x_produce_glyphs)
1123         (get_window_cursor_type):
1124         * window.c (Fdelete_window_internal):
1125         * termhooks.h (e):
1126         * print.c (print_object):
1127         * lisp.h (ptrdiff_t):
1128         * keyboard.c (kbd_buffer_get_event, make_lispy_event)
1129         (syms_of_keyboard):
1130         * emacs.c (main):
1131         * dispnew.c (update_window, scrolling_window):
1132         * dispextern.h (g, i):
1133         * Makefile.in (XWIDGETS_OBJ, WEBKIT_CFLAGS, WEBKIT_LIBS)
1134         (GIR_LIBS, ALL_CFLAGS, base_obj, LIBES):
1135         * keyboard.c (kbd_buffer_get_event):
1136         * emacsgtkfixed.c (emacs_fixed_gtk_widget_size_allocate)
1137         (emacs_fixed_class_init): Add case for an xwidget view.
1139         * xwidget.c, xwidget.h, xwidget.el: New files for xwidgets
1142         Various improvements to the Xwidget feature.
1143         * xwidgets.c:
1144         * emacsgtkfixed.c:
1145         * xwidget.el:
1147 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
1149         Improve documentation of 'alist-get'
1151         * doc/lispref/variables.texi (Setting Generalized Variables): Add
1152         'alist-get' to the list of functions that can appear in PLACE
1153         argument of 'setf'.
1155 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
1157         Minor copyedits of doc/emacs/maintaining.texi
1159         * doc/emacs/maintaining.texi (List Identifiers): More accurate
1160         description of "C-M-i" wrt tags tables.
1161         (Tags Tables): Move the definition of "tag" to a footnote.
1163 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
1165         Unbreak the Cygwin-w32 build
1167         * src/w32fns.c (globals_of_w32fns): Move the initialization of
1168         resetstkoflw into a part that isn't compiled on Cygwin.
1169         (Bug#22403)
1171 2016-01-19  Lars Magne Ingebrigtsen  <larsi@gnus.org>
1173         * shr.el (shr-table-body): Allow tables to have text children.
1175 2016-01-19  Phillip Lord  <phillip.lord@russet.org.uk>
1177         Cope with multiple overlapping faces.
1179         * lisp/htmlfontify.el (hfy-face-to-style-i): Treat inheritance right to
1180           left.
1181           (hfy-face-resolve-face): Handle font specification as well as font
1182           name. Documentation update. (Bug#21990)
1184 2016-01-18  Paul Eggert  <eggert@cs.ucla.edu>
1186         Fix spurious escapes in describe-input-method
1188         Problem reported by Vincent Belaïche (Bug#22309).
1189         * lisp/international/mule-cmds.el (describe-language-environment):
1190         * lisp/international/quail.el (quail-help):
1191         Apply substitute-command-keys to doc strings before displaying them.
1193 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
1195         Bump version to 25.0.90
1197         * README:
1198         * configure.ac:
1199         * msdos/sed2v2.inp: Bump version to 25.0.90.
1201 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
1203         * etc/AUTHORS: Update the AUTHORS file
1205 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
1207         authors.el updates
1209         * admin/authors.el (authors-renamed-files-alist): Additions.
1211 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
1213         Make it possible to run make change-history on emacs-25
1215         * Makefile.in: Check if the current branch is emacs-25 instead of
1216           master.
1218 2016-01-30  lu4nx  <lx@shellcodes.org>
1220         Support Go language in 'etags'
1222         * lib-src/etags.c <Ruby_help>: Fix documentation of Ruby tags.
1223         <Go_help>: New help.
1224         <Go_suffixes>: New variable.
1225         (Go_functions): New function.
1226         <lang_names>: Add entry for Go.  (Bug#22370)
1228         * doc/emacs/maintaining.texi (Tag Syntax): Document Go support.
1229         * doc/man/etags.1: Mention Go support.
1231         * etc/NEWS: Mention Go support.
1233         * test/etags/go-src/test.go:
1234         * test/etags/go-src/test1.go: New test files.
1235         * test/etags/Makefile (GOSRC): New variable.
1236         (SRCS): Add $(GOSRC).
1237         * test/etags/ETAGS.good_1:
1238         * test/etags/ETAGS.good_2:
1239         * test/etags/ETAGS.good_3:
1240         * test/etags/ETAGS.good_4:
1241         * test/etags/ETAGS.good_5:
1242         * test/etags/ETAGS.good_6:
1243         * test/etags/CTAGS.good: Adapt to addition of Go tests.
1245 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
1247         Improve Ruby support in 'etags'
1249         * lib-src/etags.c (Ruby_functions): Tag constants.  Don't tag
1250         singleton classes.  Remove class qualifiers from tags generated
1251         for method and constant names.  (Bug#22241)
1253         * doc/emacs/maintaining.texi (Tag Syntax): Mention that constants
1254         are tagged by etags in Ruby.
1256         * etc/NEWS: Mention that constants are tagged by etags in Ruby.
1258         * test/etags/ruby-src/test1.ruby: Add more tests.
1259         * test/etags/ETAGS.good_1:
1260         * test/etags/ETAGS.good_2:
1261         * test/etags/ETAGS.good_3:
1262         * test/etags/ETAGS.good_4:
1263         * test/etags/ETAGS.good_5:
1264         * test/etags/ETAGS.good_6:
1265         * test/etags/CTAGS.good: Adapt to the changes in etags and in Ruby
1266         tests.
1268 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
1270         Adjust etags test results to changes in copyright years
1272         * test/etags/CTAGS.good:
1273         * test/etags/ETAGS.good_1:
1274         * test/etags/ETAGS.good_2:
1275         * test/etags/ETAGS.good_3:
1276         * test/etags/ETAGS.good_4:
1277         * test/etags/ETAGS.good_5:
1278         * test/etags/ETAGS.good_6: Adjust to shift in characters and
1279         in line numbers.
1281 2016-01-30  Andreas Schwab  <schwab@linux-m68k.org>
1283         Revert "Re-enable checks in member, memql, delete to complain about non-lists"
1285         This reverts commit f524e8b7f12d9b5a8b92084e5385429fe7b085b9.
1287 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
1289         Make it possible to run make change-history on emacs-25
1291         * Makefile.in: Check if the current branch is emacs-25 instead of
1292           master.
1294 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
1296         Don't fiddle with DEFAULT
1298         * lisp/progmodes/project.el (project--completing-read-strict):
1299         Don't change DEFAULT, whether is has any matches in
1300         COLLECTION, or not.
1302 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
1304         Document xwidget commands and functions
1306         * doc/lispref/display.texi (Xwidgets): New section, describes some
1307         of the xwidget primitives.
1308         * doc/lispref/display.texi (Display): Update the chapter menu.
1309         * doc/emacs/misc.texi (Embedded WebKit Widgets): New section.
1310         * doc/emacs/emacs.texi (Top): Update the master menu to include
1311         the xwidget node.
1313 2016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
1315         Build fix for shr.el
1317         * shr.el (seq): Require.
1319 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
1321         Improve project-find-file yet again!
1323         * lisp/progmodes/project.el (project--completing-read-strict):
1324         New function.
1325         (project-find-file-in): Use it.
1326         (project-file-completion-table): Move the default
1327         implementation inside the cl-defgeneric form.
1328         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01720.html)
1330 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
1332         Don't pass DIR to 'hg status'
1334         * lisp/vc/vc-hg.el (vc-hg-dir-status-files):
1335         Don't pass DIR to 'hg status' (bug#22481).
1337 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
1339         Fix typo in previous commits
1341         * lisp/progmodes/project.el (project-find-file-in):
1342         * lisp/vc/vc-mtn.el (vc-mtn-find-ignore-file): Fix typo in previous
1343         commit.
1345 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
1347         Improve project-find-file
1349         * lisp/progmodes/project.el (project-file-completion-table): New.
1350         (project-find-file, project-or-external-find-file): Default to filename
1351         at point.
1352         (project-file-completion-table): New, split out from
1353         project--find-file-in.
1354         (project-find-file-in): Renamed from project--find-file-in, use
1355         project-file-completion-table.
1357         * lisp/progmodes/xref.el (ede-minor-mode): New declaration.
1358         (xref--find-ignores-arguments): Add doc string.
1360 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
1362         Implement vc-mtn-find-ignore-file, fix some doc strings
1364         * lisp/cedet/cedet-global.el (cedet-gnu-global-root): Improve doc string.
1366         * lisp/cedet/ede/locate.el (initialize-instance): Improve doc string.
1368         * lisp/vc/vc-git.el (vc-git-find-ignore-file): Fix doc string.
1370         * lisp/vc/vc-mtn.el (vc-mtn-find-ignore-file): New function.
1372 2016-01-23  Michael Albinus  <michael.albinus@gmx.de>
1374         Improve user name completion in Tramp
1376         * lisp/net/tramp.el (tramp-parse-passwd, tramp-parse-etc-group):
1377         Call also "getent passwd" or "getent group", if possible.
1378         (tramp-parse-putty): Cache the result.
1380 2016-01-22  Michael Albinus  <michael.albinus@gmx.de>
1382         * etc/NEWS: Move kqueue entries to Emacs 25.1 sections.
1384 2016-01-20  Glenn Morris  <rgm@gnu.org>
1386         Remove handling of non-string time-stamp formats, obsolete for 20 years.
1388         * lisp/time-stamp.el (time-stamp-format): Doc fix.
1389         (time-stamp-old-format-warn, time-stamp-fconcat): Remove.
1390         (time-stamp-string): Ignore non-string formats.
1392 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
1394         Anoter fix for problematic merge from emacs-25
1396         * src/w32fns.c (globals_of_w32fns): Move initialization of
1397         resetstkoflw to a non-Cygwin part.
1399 2016-01-20  Michael Albinus  <michael.albinus@gmx.de>
1401         * test/Makefile.in (mostlyclean): Use ${LOGFILES}.
1403 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
1405         Fix MS-Windows build broken by a botched merge from emacs-25
1407         * src/w32.c (w32_crypto_hprov): New static variable.
1408         (globals_of_w32): Initialize w32_crypto_hprov.
1409         (w32_init_crypt_random, w32_init_random): New functions.
1410         Include wincrypt.h.
1411         * src/w32.h (w32_init_random): Add prototype.
1413 2016-01-20  Vincent Belaïche  <vincentb1@users.sourceforge.net>
1415         Correct a whole bunch of bugs coming with renamed cell relocation.
1417         * lisp/ses.el (ses-localvars): rename variable
1418         `ses--renamed-cell-symb-list' into `ses--in-killing-named-cell-list'
1419         and adjust the comment about it.
1420         (ses-plist-delq): new defun.
1421         (ses--ses-buffer-list): new defvar.
1422         (ses--unbind-cell-name): new defun.
1423         (ses-relocate-symbol): Do not relocate symbol when it is a named cell.
1424         (ses-relocate-formula): Undo change of
1425         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net that was
1426         preventing relocation for named cell --- now doing this is delegated
1427         to function `ses-relocate-symbol'.
1428         (ses-relocate-range): In docstring, undo change of
1429         2016-01-03T07:31:52Z!johnw@newartisans.com, `ses-range' must remain
1430         lower case as it is not a variable.
1431         (ses-relocate-all): Cell name relocation : 1) check that cell is a
1432         renamed cell by testing `ses-cell' property to :ses-named, rather than
1433         comparing name to corresponding standard name. Set rowcol of renamed
1434         cell into the hashmap --- `ses-cell' property must not be used for
1435         that as the same name can be used for different locations in different
1436         SES sheets ; 2) use `local-variable-if-set-p' rather than `boundp' and
1437         `local-variable-p' to check if cell name is already in use in this
1438         sheet or needs initialisation.
1439         (ses-relocate-all): Cell value relocation : 1) like for name
1440         relocation use the `ses-cell' property rather than comparing actual
1441         name to corresponding standard name. 2) Correct bug introduced in
1442         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net, as the test was
1443         made the other way round than the intention --- ie value relocation
1444         was disabled for standard cell, not for renamed cell as was the
1445         intention.
1446         (ses-relocate-all): Add loop for unbinding deleted renamed cells
1447         names.
1448         (ses-killbuffer-hook): new defun.
1449         (ses-mode): Add the ses--ses-buffer-list maintenance mechanism ---
1450         kill buffer hook, plus pushing current buffer if new in list.
1451         (ses-delete-row, ses-delete-column): Collect deleted renamed cells
1452         into `ses--in-killing-named-cell-list'.
1453         (ses-rename-cell): Remove update of variable
1454         `ses--renamed-cell-symb-list', this variable is renamed to
1455         `ses--in-killing-named-cell-list', and its setting is done in
1456         functions `ses-delete-row' and , `ses-delete-column' now.
1457         (ses-rename-cell): Make cell new name a buffer local variable.
1458         (ses-rename-cell): Change correction of
1459         2015-12-30T23:10:37Z!vincentb1@users.sourceforge.net concerning
1460         computation of the range over which `cursor-intangible' property was
1461         to be updated. This correction was ok for non spilling cells, but not
1462         for cells spilling over following blank cells. Simply use
1463         `next-single-property-change' rather than computing the end column
1464         from column widths.
1466 2016-01-19  John Wiegley  <johnw@newartisans.com>
1468         Merge from origin/emacs-25
1470         3ae7934 ; * etc/NEWS: Mark entries that don't need further treatment.
1471         6165c36 * lisp/files.el (dir-locals--all-files): Respect absolute file-names
1472         2ffdf15 * lisp/help-fns.el (describe-variable): Fix a left-over parenthesis
1473         71ecd62 * lisp/dired-x.el (dired-omit-here-always): Use add-dir-local-variable
1474         f0b82b3 * lisp/files.el (dir-locals--all-files): Use completion instead of wildcards
1475         86e4513 Fix incompatbilities with MS-Windows 2000 and older
1476         4e96521 Mention in PROBLEMS an issue with MS-Windows NT4
1477         15c23aa Ensure 8-byte aligned memory allocation on MS-Windows 9X
1478         39afa42 Fix tests for active region in hideif.el
1479         05df666 Fix interactive specs in some hideif.el commands
1481 2016-01-19  John Wiegley  <johnw@newartisans.com>
1483         -
1485 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
1487         Avoid stdio in SIGINT handler
1489         * admin/merge-gnulib (GNULIB_MODULES): Add ignore-value.
1490         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
1491         * lib/ignore-value.h: New file, from gnulib.
1492         * src/keyboard.c: Include it.
1493         (write_stdout, read_stdin): New functions.
1494         (handle_interrupt): Use them instead of printf and getchar,
1495         and avoid fflush when handling signals.
1497 2016-01-19  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
1499         Refactor mml-smime.el, mml1991.el, mml2015.el
1501         (Maybe this is the last merge from Gnus git to Emacs git)
1503         Cf. discussion on ding mailing list, messages in
1504         <http://thread.gmane.org/gmane.emacs.gnus.general/86228>.
1505         Common code from the three files mml-smime.el, mml1991.el, and
1506         mml2015.el is moved to mml-sec.el.  Auxiliary functions are added
1507         to gnus-util.el.
1509         The code is supported by test cases with necessary test keys.
1511         Documentation in message.texi is updated.
1513         * doc/misc/message.texi (Security, Using S/MIME):
1514         Update for refactoring mml-smime.el, mml1991.el, mml2015.el.
1515         (Using OpenPGP): Rename from "Using PGP/MIME"; update contents.
1516         (Passphrase caching, Encrypt-to-self, Bcc Warning): New sections.
1518         * lisp/gnus/gnus-util.el (gnus-test-list, gnus-subsetp, gnus-setdiff):
1519         New functions.
1521         * lisp/gnus/mml-sec.el: Require gnus-util and epg.
1522         (epa--select-keys): Autoload.
1523         (mml-signencrypt-style-alist, mml-secure-cache-passphrase): Doc fix.
1524         (mml-secure-openpgp-signers): New user option;
1525         make mml1991-signers and mml2015-signers obsolete aliases to it.
1526         (mml-secure-smime-signers): New user option;
1527         make mml-smime-signers an obsolete alias to it.
1528         (mml-secure-openpgp-encrypt-to-self): New user option;
1529         make mml1991-encrypt-to-self and mml2015-encrypt-to-self obsolete
1530         aliases to it.
1531         (mml-secure-smime-encrypt-to-self): New user option;
1532         make mml-smime-encrypt-to-self an obsolete alias to it.
1533         (mml-secure-openpgp-sign-with-sender): New user option;
1534         make mml2015-sign-with-sender an obsolete alias to it.
1535         (mml-secure-smime-sign-with-sender): New user option;
1536         make mml-smime-sign-with-sender an obsolete alias to it.
1537         (mml-secure-openpgp-always-trust): New user option;
1538         make mml2015-always-trust an obsolete alias to it.
1539         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
1540         New user options.
1541         (mml-secure-cust-usage-lookup, mml-secure-cust-fpr-lookup)
1542         (mml-secure-cust-record-keys, mml-secure-cust-remove-keys)
1543         (mml-secure-add-secret-key-id, mml-secure-clear-secret-key-id-list)
1544         (mml-secure-cache-passphrase-p, mml-secure-cache-expiry-interval)
1545         (mml-secure-passphrase-callback, mml-secure-check-user-id)
1546         (mml-secure-secret-key-exists-p, mml-secure-check-sub-key)
1547         (mml-secure-find-usable-keys, mml-secure-select-preferred-keys)
1548         (mml-secure-fingerprint, mml-secure-filter-keys)
1549         (mml-secure-normalize-cust-name, mml-secure-select-keys)
1550         (mml-secure-select-keys-1, mml-secure-signer-names, mml-secure-signers)
1551         (mml-secure-self-recipients, mml-secure-recipients)
1552         (mml-secure-epg-encrypt, mml-secure-epg-sign): New functions.
1554         * lisp/gnus/mml-smime.el: Require epg;
1555         refactor declaration and autoloading of epg functions.
1556         (mml-smime-use): Doc fix.
1557         (mml-smime-cache-passphrase, mml-smime-passphrase-cache-expiry):
1558         Obsolete.
1559         (mml-smime-get-dns-cert, mml-smime-get-ldap-cert):
1560         Use format instead of gnus-format-message.
1561         (mml-smime-epg-secret-key-id-list): Remove variable.
1562         (mml-smime-epg-passphrase-callback, mml-smime-epg-find-usable-key)
1563         (mml-smime-epg-find-usable-secret-key): Remove functions.
1564         (mml-smime-epg-sign, mml-smime-epg-encrypt): Refactor.
1566         * lisp/gnus/mml1991.el (mml1991-cache-passphrase)
1567         (mml1991-passphrase-cache-expiry): Obsolete.
1568         (mml1991-epg-secret-key-id-list): Remove variable.
1569         (mml1991-epg-passphrase-callback, mml1991-epg-find-usable-key)
1570         (mml1991-epg-find-usable-secret-key): Remove functions.
1571         (mml1991-epg-sign, mml1991-epg-encrypt): Refactor.
1573         * lisp/gnus/mml2015.el (mml2015-cache-passphrase)
1574         (mml2015-passphrase-cache-expiry): Obsolete.
1575         (mml2015-epg-secret-key-id-list): Remove variable.
1576         (mml2015-epg-passphrase-callback, mml2015-epg-check-user-id)
1577         (mml2015-epg-check-sub-key, mml2015-epg-find-usable-key)
1578         (mml2015-epg-find-usable-secret-key): Remove functions.
1579         (mml2015-epg-decrypt, mml2015-epg-clear-decrypt, mml2015-epg-sign)
1580         (mml2015-epg-encrypt): Refactor.
1582 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
1584         Merge from gnulib
1586         This mostly just updates copyright dates of gnulib files.
1587         It also updates to the latest version of texinfo.tex.
1589 2016-01-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
1591         Move variables to inner loop, preparing for Mac port merge
1593         * src/keyboard.c (command_loop_1): Move variables `cmd',
1594         `keybuf', and `i' to inner loop.
1596 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
1598         Minor improvements to (random t) documentation
1600         * doc/lispref/numbers.texi (Random Numbers):
1601         * src/fns.c (Frandom):
1602         Omit unnecessary details about randomness fallback.
1603         Say that it is a fallback.
1605 2016-01-19  Dmitry Gutov  <dgutov@yandex.ru>
1607         Rename methods in Ruby etags example file
1609         * test/etags/ruby-src/test.rb: Rename the example methods to
1610         correspond to the common terminology used in Ruby.
1611         * test/etags/CTAGS.good:
1612         * test/etags/ETAGS.good_1:
1613         * test/etags/ETAGS.good_2:
1614         * test/etags/ETAGS.good_3:
1615         * test/etags/ETAGS.good_4:
1616         * test/etags/ETAGS.good_5:
1617         * test/etags/ETAGS.good_6: Adjust accordingly.
1619 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
1621         Propertize backtick in 'def `(abc)' as symbol constituent
1623         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
1624         Propertize backtick in 'def `(abc)' as symbol constituent.
1625         (ruby-syntax-propertize-function):
1626         Rename to ruby-syntax-propertize.
1628 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
1630         Fix scrolling under scroll-preserve-screen-position on TTY
1632         * src/window.c (window_scroll_line_based): When setting point to
1633         preserve screen coordinates, don't let cursor enter either of the
1634         two scroll margins.  (Bug#22395)
1636 2016-01-18  Lars Magne Ingebrigtsen  <larsi@gnus.org>
1638         Fix shr table rendering of nested tables
1640         * shr.el (shr-table-body): Don't include all tbodies in nested
1641         tables in the levels above.
1643 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
1645         * lisp/progmodes/project.el (project--read-regexp): Quote the identifier.
1647 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
1649         Add xref-based replacements for Dired search commands
1651         * lisp/dired-aux.el (dired-do-find-regexp)
1652         (dired-do-find-regexp-and-replace): New commands.
1653         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00864.html
1655         * lisp/dired.el (dired-mode-map): Change bindings for `A' and
1656         `Q' to the new commands.
1658         * lisp/progmodes/xref.el (xref-query-replace)
1659         (xref-collect-matches): Add progress reporters.
1660         (xref--find-ignores-arguments): Return nil for zero ignores.
1661         (xref--show-xrefs): Add an optional argument.
1662         (xref-collect-matches): Drop the assert.  'find' accepts a
1663         regular file in place of directory argument, too.
1665 2016-01-18  Alan Mackenzie  <acm@muc.de>
1667         * doc/lispref/frames.texi (Position Parameters): Say they don't exist on TTYs.
1669 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
1671         Improve user documentation of Xref
1673         * doc/emacs/maintaining.texi (Xref, Find Identifiers)
1674         (Looking Up Identifiers, Identifier Search, List Identifiers):
1675         Adjudicate comments by Dmitry Gutov <dgutov@yandex.ru>.  See
1676         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00650.html
1677         for the details.
1679 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
1681         Fix scrolling under scroll-preserve-screen-position and margins
1683         * src/window.c (window_scroll_pixel_based): When setting point to
1684         preserve screen coordinates, don't let cursor enter either of the
1685         two scroll margins.  Fix incorrect usage of
1686         WINDOW_WANTS_HEADER_LINE_P and use WINDOW_HEADER_LINE_HEIGHT
1687         instead of CURRENT_HEADER_LINE_HEIGHT.  (Bug#22395)
1689 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
1691         Unbreak the MS-Windows build
1693         * src/sysdep.c (emacs_gnutls_global_init, gnutls_rnd): Disable for
1694         WINDOWSNT, to avoid link failure.  (Bug#22202)
1696 2016-01-18  Alan Mackenzie  <acm@muc.de>
1698         Desktop: protect users against inadvertant upgrading of desktop file.
1700         An upgraded (version 208) desktop file cannot be read in Emacs < 25.
1702         * etc/NEWS: Add an entry about upgrading a desktop file.
1704         * lisp/desktop.el (desktop-file-version): Amend doc string.
1705         (desktop-native-file-version, desktop-io-file-version): new variables.
1706         (desktop-clear): Set desktop-io-file-version to nil.
1707         (desktop-buffer-info): make the presence of the last item on the list
1708         conditional on (>= desktop-io-file-version 208).
1709         (desktop-save): Add extra parameter VERSION to take user's C-u or C-u C-u.
1710         Amend the doc string.  Add code to determine the output file version.
1711         (desktop-create-buffer): Set desktop-io-file-version to the input file's
1712         version.
1714 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
1716         Initialize GnuTLS before calling gnutls_rnd
1718         * src/gnutls.c (emacs_gnutls_global_init): Now extern.
1719         Don’t set gnutls_global_initialized if gnutls_global_init fails.
1720         * src/sysdep.c: Include "gnutls.h", and <gnutls/crypto.h>
1721         if 2.12 or later, which has gnutls_rnd.
1722         (emacs_gnutls_global_init, gnutls_rnd): New fallback
1723         placeholder macros if before 2.12.
1724         (init_random): Initialize gnutls globals before trying to
1725         use gnutls_rnd.
1727 2016-01-17  Andreas Schwab  <schwab@linux-m68k.org>
1729         Don't use GnuTLS before it is initialized
1731                 * src/sysdep.c (init_random): Don't use gnutls_rnd.
1733 2016-01-17  Bill Wohler  <wohler@newt.com>
1735         * mh-e.el (mh-version): Add +git to version.
1737 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
1739         Port cleanup attribute to OpenBSD
1741         The OpenBSD C compiler issues false alarms about strcpy, strcat, and
1742         sprintf, and this messes up 'configure' when it tests for the cleanup
1743         attribute.  Work around the problem by using __has_attribute directly.
1744         Problem reported by Joakim Jalap (Bug#22385).
1745         * configure.ac: Don’t use AX_GCC_VAR_ATTRIBUTE.
1746         * m4/ax_gcc_var_attribute.m4: Remove.
1747         * src/conf_post.h (__has_attribute): Provide a substitute, for
1748         non-GCC or older GCC compilers.  All uses changed to assume
1749         the substitute.  Check for the cleanup attribute.
1750         * src/emacs-module.c (module_has_cleanup): Just use __has_attribute.
1752 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
1754         Prefer GnuTLS when acquiring random seed
1756         This attempts to improve on the fix for Bug#22202.
1757         * configure.ac (HAVE_DEV_URANDOM): Remove.
1758         Check /dev/urandom existence at run time, not at build time,
1759         since the device could exist in the former but not the latter.
1760         * src/sysdep.c [HAVE_GNUTLS]: Include gnutls/gnutls.h.
1761         (gnutls_rnd) [GNUTLS_VERSION_NUMBER < 0x020c00]: New fallback macro.
1762         (random_seed): New typedef.
1763         (set_random_seed): New static function.
1764         (seed_random): Use them.
1765         (init_random): Use random_seed instead of uintmax_t, so as to
1766         not consume more entropy than needed.  Prefer gnutls_rnd if it
1767         works; this avoids a redundant open of /dev/urandom on
1768         GNU/Linux with modern GnuTLS.
1770 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
1772         Improve documentation of dynamic modules
1774         * doc/lispref/loading.texi (How Programs Do Loading): Update the
1775         description of searching for files in 'load' when Emacs was built
1776         with support for dynamic modules.
1778 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
1780         * INSTALL: Document --with-modules.
1782 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
1784         Document 'function-put'
1786         * doc/lispref/symbols.texi (Symbol Plists): Document
1787         'function-put'.  Update documentation of 'function-get'.
1789 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
1791         Document 'funcall-interactively'
1793         * doc/lispref/commands.texi (Interactive Call): Document
1794         'funcall-interactively'.
1795         * doc/lispref/functions.texi (Calling Functions): Mention
1796         'funcall-interactively' and provide a cross-reference.
1798 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
1800         * doc/lispref/lists.texi (Association Lists): Document 'alist-get'.
1802         * doc/lispref/strings.texi (Text Comparison): Document 'string-greaterp'.
1804 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
1806         Document renaming of selection-related functions
1808         * doc/lispref/frames.texi (Window System Selections): Rename "x-*"
1809         functions into the corresponding "gui-*" functions.  Make the
1810         description slightly less X-centric.
1812 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
1814         * doc/lispref/macros.texi (Expansion): Document 'macroexpand-1'.
1816 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
1818         Document 'define-inline'
1820         * doc/lispref/functions.texi (Defining Functions): Document
1821         'define-inline' and related macros.
1823         * lisp/emacs-lisp/inline.el (inline-letevals): Doc fix.
1825 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
1827         * lisp/files.el (dir-locals--all-files): Respect absolute file-names
1829         * lisp/help-fns.el (describe-variable): Fix a left-over parenthesis
1831 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
1833         * lisp/dired-x.el (dired-omit-here-always): Use add-dir-local-variable
1835         instead of manually writing a dir-locals file.
1837 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
1839         * lisp/files.el (dir-locals--all-files): Use completion instead of wildcards
1841         (dir-locals-file)
1842         * lisp/files-x.el (modify-dir-local-variable)
1843         * lisp/dos-fns.el (dosified-file-name)
1844         * lisp/help-fns.el (describe-variable): Change accordingly.
1846 2016-01-16  Jussi Lahdenniemi  <jussi@aprikoodi.fi>  (tiny change)
1848         Fix incompatbilities with MS-Windows 2000 and older
1850         * src/w32.c <multiByteToWideCharFlags>: New global variable.
1851         (filename_to_utf16, filename_from_ansi, check_windows_init_file):
1852         Use it instead of the literal MB_ERR_INVALID_CHARS.
1853         (maybe_load_unicows_dll): Initialize multiByteToWideCharFlags as
1854         appropriate for the underlying OS version.  For details, see
1855         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00835.html.
1856         * src/w32.h: Declare multiByteToWideCharFlags.
1857         * src/w32fns.c (Fx_file_dialog, Fw32_shell_execute)
1858         (add_tray_notification): Use multiByteToWideCharFlags instead of
1859         the literal MB_ERR_INVALID_CHARS.
1860         (_resetstkoflw_proc): New typedef.
1861         (w32_reset_stack_overflow_guard): Call _resetstkoflw via a
1862         pointer, as this function is absent in msvcrt.dll shipped with W2K
1863         and older systems.
1865 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
1867         Mention in PROBLEMS an issue with MS-Windows NT4
1869         * etc/PROBLEMS (MS-Windows): Mention the problem with Shell32.dll
1870         on Windows NT4.  For the details, see
1871         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00835.html.
1873 2016-01-16  Jussi Lahdenniemi  <jussi@aprikoodi.fi>  (tiny change)
1875         Ensure 8-byte aligned memory allocation on MS-Windows 9X
1877         * src/w32heap.c (init_heap): Redirect malloc, realloc, and free to
1878         special functions on Windows 9X.  Refuse to dump Emacs on Windows 9X.
1879         (malloc_after_dump_9x, realloc_after_dump_9x)
1880         (free_after_dump_9x): New functions.  (Bug#22379)  See also
1881         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00852.html
1882         for more details about the original problem.
1884         * nt/inc/ms-w32.h (malloc_after_dump_9x, realloc_after_dump_9x)
1885         (free_after_dump_9x): Add prototypes.
1887 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
1889         Fix tests for active region in hideif.el
1891         * lisp/progmodes/hideif.el (hif-evaluate-macro, hide-ifdef-block): Use
1892         'use-region-p' to test whether to operate on region, instead of
1893         testing 'mark-active'.
1895 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
1897         Fix interactive specs in some hideif.el commands
1899         * lisp/progmodes/hideif.el (hif-evaluate-macro)
1900         (hide-ifdef-undef, show-ifdef-block): Don't use '(interactive "r")'
1901         in commands that should only act on the region if it's active.
1903 2016-01-15  Phillip Lord  <phillip.lord@russet.org.uk>
1905         Enable test selector from command line
1907         * test/automated/Makefile.in: Change variable manipulation to avoid
1908           over-writing selector.
1910 2016-01-15  Alan Mackenzie  <acm@muc.de>
1912         Don't confuse "::" with ":" when trying to parse member initializers.
1914         * lisp/progmodes/cc-engine.el (c-back-over-member-initializers): Check
1915         more robustly for ":" token when searching backwards for it.
1917         * lisp/progmodes/cc-langs (c-:$-multichar-token-regexp): New language
1918         variable.
1920 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
1922         Ensure positive number of glyphs for margins of positive width
1924         * src/dispnew.c (margin_glyphs_to_reserve): Always return a
1925         positive value when a non-zero width of the marginal area was
1926         requested.  (Bug#22356)
1928 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
1930         Fix crashes when mini-window has non-zero margins
1932         * src/window.c (resize_frame_windows): Use 'new_size' to set
1933         minibuffer window's 'total_cols' value, as 'size' might be in
1934         pixels.  (Bug#22356)
1936 2016-01-15  Alan Mackenzie  <acm@muc.de>
1938         In comment-dwim with style `extra-line', respect indent-tabs-mode.
1940         This fixes bug #22369.
1942         * lisp/newcomment.el (comment-make-bol-ws): New function.
1943         (comment-make-extra-lines): Use new function instead of a crude `make-string'.
1945 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
1947         Make 'random' seeds cryptographically secure if possible
1949         * configure.ac: Check for "/dev/urandom".
1951         * src/sysdep.c (init_random) [HAVE_DEV_URANDOM]: Read the stream
1952         for the seed from "/dev/urandom".
1953         [WINDOWSNT]: Obtain the stream for the seed from w32 APIs.
1954         * src/fns.c (Frandom): Update the doc string to indicate that
1955         system entropy is used when available.
1956         * src/w32.c: Include wincrypt.h.
1957         (w32_init_crypt_random, w32_init_random): New functions, use the
1958         CryptGenRandom API.
1959         (globals_of_w32): Initialize w32_crypto_hprov handle to zero.
1960         * src/w32.h (w32_init_random): Add prototype.
1962         * doc/lispref/numbers.texi (Random Numbers): Document more details
1963         about 't' as the argument to 'random'.
1965         * etc/NEWS: Mention that '(random t)' now uses a cryptographically
1966         strong seed if possible.
1968         (Bug#22202)
1970 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
1972         Unhide the --no-line-directive option to 'etags'
1974         * lib-src/etags.c (print_help): Un-undocument the --no-line-directive
1975         option.  (Bug#22306)
1977         * doc/man/etags.1: Document the --no-line-directive option.
1979 2016-01-15  Alan J Third  <alan@idiocy.org>  (tiny change)
1981         Fix picture-mode wrt double-width characters
1983         * lisp/textmodes/picture.el (picture-insert): Check the width of
1984         the character being replaced, not just that of the replacement.
1985         (Bug#1808)
1987 2016-01-15  Eric Abrahamsen  <eric@ericabrahamsen.net>
1989         Honor docstring of gnus-group-get-new-news
1991         * lisp/gnus/gnus-start.el (gnus-get-unread-articles): If the prefix arg is t,
1992         but non-numeric, unconditionally consider all groups to need updating.
1994 2016-01-14  Simen Heggestøyl  <simenheg@gmail.com>
1996         Disallow parenthesis in non-pseudo CSS selectors
1998         * lisp/textmodes/css-mode.el (css--font-lock-keywords): Disallow
1999         parenthesis in selectors except for in the function notation that
2000         might appear right after a pseudo-class.
2001         * test/indent/scss-mode.scss: Add a test for it.
2003 2016-01-14  Katsumi Yamaoka  <yamaoka@jpl.org>
2005         * lisp/gnus/nntp.el (nntp-request-newgroups): Simplify
2007 2016-01-14  Michael Albinus  <michael.albinus@gmx.de>
2009         check-maybe shall run only default tests
2011         * test/automated/Makefile.in (check, check-expensive): Depend on
2012         mostlyclean.
2013         (check-maybe): Re-run only default tests.
2014         (check-doit): Use code of check-maybe.
2015         (mostlyclean): Move *.log files away.
2017 2016-01-13  Mark Oteiza  <mvoteiza@udel.edu>
2019         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "magnet:"
2021 2016-01-13  Dmitry Gutov  <dgutov@yandex.ru>
2023         Un-obsolete tags-loop-continue
2025         * lisp/progmodes/etags.el (tags-loop-continue): Un-obsolete.
2026         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00682.html
2028 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
2030         Document obsoletion of 'intangible' and 'point-entered/left'
2032         * doc/lispref/text.texi (Special Properties): Document the new
2033         properties 'cursor-intangible' and 'cursor-sensor-functions'.
2034         Document the obsolete status of 'intangible', 'pointer-left',
2035         and 'point-entered' properties, and of 'inhibit-point-motion-hooks'.
2036         * doc/lispref/display.texi (Overlay Properties): Document that
2037         'intangible' overlay property is obsolete.
2039         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor-mode): Doc fix.
2041 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
2043         Updater documentation of 'looking-back'
2045         * doc/lispref/searching.texi (Regexp Search): Update documentation
2046         of 'looking-back'.  Fix markup.
2048 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
2050         Document 'pre-redisplay-functions'
2052         * doc/lispref/hooks.texi (Standard Hooks):
2053         * doc/lispref/display.texi (Forcing Redisplay): Document
2054         'pre-redisplay-functions'.
2056 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
2058         Document the new deafault value of 'load-read-function'
2060         * doc/lispref/loading.texi (How Programs Do Loading): Document the
2061         change in the default value of 'load-read-function'.
2063 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
2065         Document 'bufferpos-to-filepos' and 'filepos-to-bufferpos'
2067         * doc/lispref/nonascii.texi (Text Representations): Document
2068         'bufferpos-to-filepos' and 'filepos-to-bufferpos'.
2070 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
2072         Document the new prefix-command hooks
2074         * doc/lispref/hooks.texi (Standard Hooks): Document
2075         `prefix-command-echo-keystrokes-functions' and
2076         `prefix-command-preserve-state-hook'.
2078 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
2080         Fix one more misuse of time-stamp-time-zone
2082         * test/etags/html-src/softwarelibero.html: Use "UTC0" rather
2083         than the unportable "GMT" for time zone.
2085 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
2087         Fix NNTP NEWGROUPS off-by-a-few-hours bug
2089         * lisp/gnus/nntp.el (nntp-request-newgroups): Format string
2090         in Universal Time, since we’re telling the server “GMT”.
2092 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
2094         Update publicsuffix.txt from upstream
2096         * etc/publicsuffix.txt: Update from
2097         https://publicsuffix.org/list/effective_tld_names.dat
2098         dated 2016-01-12 11:52:01 UTC.
2100 2016-01-12  Glenn Morris  <rgm@gnu.org>
2102         Fix some declarations.
2104         * lisp/descr-text.el (internal-char-font):
2105         * lisp/cedet/mode-local.el (xref-item-location):
2106         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
2107         (epg-sub-key-capability, epg-sub-key-validity):
2108         * lisp/international/mule-util.el (internal-char-font):
2109         Fix declarations.
2111 2016-01-12  Glenn Morris  <rgm@gnu.org>
2113         Fix some custom types.
2115         * lisp/gnus/gnus-fun.el (gnus-x-face-omit-files, gnus-face-omit-files):
2116         * lisp/gnus/gnus.el (gnus-valid-select-methods):
2117         * lisp/mail/rmail.el (rmail-get-coding-function):
2118         * lisp/net/newst-treeview.el (newsticker-groups-filename):
2119         * lisp/progmodes/hideif.el (hide-ifdef-exclude-define-regexp):
2120         * lisp/textmodes/tildify.el (tildify-space-predicates):
2121         * lisp/url/url-tramp.el (url-tramp-protocols):
2122         Fix custom types.
2124 2016-01-12  Glenn Morris  <rgm@gnu.org>
2126         Add some missing version tags.
2128         * lisp/electric.el (electric-quote-comment)
2129         (electric-quote-string, electric-quote-paragraph):
2130         * lisp/epg-config.el (epg-gpgconf-program):
2131         * lisp/rect.el (rectangle-preview):
2132         * lisp/emacs-lisp/check-declare.el (check-declare-ext-errors):
2133         * lisp/emacs-lisp/package.el (package-selected-packages)
2134         (package-hidden-regexps):
2135         * lisp/erc/erc.el (erc-network-hide-list, erc-channel-hide-list):
2136         * lisp/eshell/em-term.el (eshell-destroy-buffer-when-process-dies):
2137         * lisp/gnus/mml-sec.el (mml1991-signers, mml2015-signers)
2138         (mml-smime-signers, mml1991-encrypt-to-self, mml2015-encrypt-to-self)
2139         (mml-smime-encrypt-to-self, mml2015-sign-with-sender)
2140         (mml-smime-sign-with-sender, mml2015-always-trust)
2141         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
2142         * lisp/net/browse-url.el (browse-url-conkeror-new-window-is-buffer)
2143         (browse-url-conkeror-arguments):
2144         * lisp/net/newst-reader.el (newsticker-download-logos):
2145         * lisp/progmodes/gud.el (gud-guiler-command-name):
2146         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
2147         * lisp/progmodes/project.el (project-vc):
2148         * lisp/progmodes/python.el (python-indent-guess-indent-offset-verbose)
2149         (python-shell-remote-exec-path, python-shell-first-prompt-hook)
2150         (python-shell-completion-native-disabled-interpreters)
2151         (python-shell-completion-native-enable)
2152         (python-shell-completion-native-output-timeout)
2153         (python-shell-completion-native-try-output-timeout):
2154         * lisp/progmodes/xref.el (xref):
2155         * lisp/term/screen.el (xterm-screen-extra-capabilities):
2156         * lisp/term/xterm.el (xterm-max-cut-length):
2157         Add missing version tags.
2159 2016-01-12  Glenn Morris  <rgm@gnu.org>
2161         * test/automated/core-elisp-tests.el
2162         (core-elisp-tests-1-defvar-in-let): Add a custom type.
2164 2016-01-12  Glenn Morris  <rgm@gnu.org>
2166         * src/buffer.c (syms_of_buffer) <major-mode>: Doc fix.
2168         Remove comments that do not apply since 2005-08-09.  (Bug#22349)
2170 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
2172         Merge from gnulib
2174         This mostly just changes "UTC" to "UTC0" for POSIX conformance.
2175         It also updates to the latest version of texinfo.tex.
2176         * build-aux/gitlog-to-changelog, build-aux/move-if-change:
2177         * build-aux/update-copyright, doc/misc/texinfo.tex:
2178         Update from gnulib.
2180 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
2182         Update documentation of 'process-running-child-p'
2184         * doc/lispref/processes.texi (Input to Processes): Document the
2185         changes in return value of 'process-running-child-p'.
2187 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
2189         Update documentation of 'deactivate-mark'.
2191         * doc/lispref/markers.texi (The Mark): Document that
2192         'deactivate-mark' is now buffer-local when set.
2194 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
2196         Update documentation of 'completion-table-dynamic'
2198         * doc/lispref/minibuf.texi (Programmed Completion): Document the
2199         new optional argument to 'completion-table-dynamic'.
2201 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
2203         Document changes in 'read-buffer' and 'read-buffer-function'
2205         * doc/lispref/minibuf.texi (High-Level Completion): Document the
2206         4th argument to 'read-buffer' and 'read-buffer-function'.
2208 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
2210         Fix time-stamp-time-zone bugs introduced in July
2212         This fixes a bug introduced when the July changes to
2213         format-time-string installed, as the changes were not
2214         correctly handled in this module (Bug#22302).
2215         Also, document time stamp time zones.
2216         * lisp/time-stamp.el (time-stamp-time-zone): Document values better.
2217         (time-stamp--format): New private function.
2218         (time-stamp-string, time-stamp-string-preprocess)
2219         (time-stamp-do-number): Use it.
2220         * doc/emacs/files.texi (Time Stamps): Mention time zones.
2221         * doc/misc/autotype.texi (Timestamps): Document time-stamp-time-zone.
2223 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
2225         Make piping to subprocesses more robust on MS-Windows
2227         * src/w32.c (sys_write): Don't write to a pipe more stuff than its
2228         buffer can hold.  Don't return -1 if something has been written to
2229         the pipe.  Zero out 'errno' before calling '_write', to avoid
2230         returning a stale value.  (Bug#22344)
2231         * src/w32proc.c (syms_of_ntproc) <w32-pipe-buffer-size>: New variable.
2232         * src/w32.c (pipe2): Use it to request a user-defined size for the
2233         pipe being created.
2235         * etc/NEWS: Mention 'w32-pipe-buffer-size'.
2237         * doc/emacs/msdos.texi (Windows Processes): Document
2238         'w32-pipe-buffer-size'.
2240 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
2242         * lisp/emacs-lisp/syntax.el (syntax-ppss-table): New var
2244         (syntax-ppss):
2245         * lisp/font-lock.el (font-lock-fontify-syntactically-region): Use it.
2247 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
2249         lisp/nxml: Use syntax-tables for comments
2251         * lisp/nxml/nxml-mode.el (nxml-set-face): Prepend.
2252         (nxml-mode): Set syntax-ppss-table.
2253         Use sgml-syntax-propertize-function for syntax-propertize-function.
2254         Let font-lock highlight strings and comments.
2255         (nxml-degrade): Don't touch "nxml-inside" property any more.
2256         (nxml-after-change, nxml-after-change1): Remove functions.
2257         (comment): Don't set fontify rule any more.
2258         (nxml-fontify-attribute): Don't highlight the value any more.
2259         (nxml-namespace-attribute-value-delimiter, nxml-namespace-attribute-value)
2260         (nxml-comment-delimiter, nxml-comment-content): Remove faces.
2262         * lisp/nxml/nxml-rap.el (nxml-scan-end): Remove.
2263         (nxml-get-inside, nxml-inside-start, nxml-inside-end): Use syntax-ppss.
2264         (nxml-clear-inside, nxml-set-inside): Remove.
2265         (nxml-scan-after-change): Remove function.
2266         (nxml-scan-prolog, nxml-tokenize-forward): Simplify.
2267         (nxml-ensure-scan-up-to-date): Use syntax-propertize.
2268         (nxml-move-outside-backwards):
2269         * lisp/nxml/nxml-outln.el (nxml-section-tag-backward): Adjust to new
2270         nxml-inside-start behavior.
2272         * lisp/nxml/nxml-util.el (nxml-debug-set-inside)
2273         (nxml-debug-clear-inside): Remove macros.
2275         * lisp/nxml/xmltok.el (xmltok-forward-special): Remove function.
2276         (xmltok-scan-after-comment-open): Simplify.
2278 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
2280         * elisp-mode.el (elisp--font-lock-flush-elisp-buffers): Fix comment
2282 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
2284         * lisp/nxml: Use standard completion; it also works for company-mode
2286         * lisp/nxml/nxml-mode.el (nxml-complete): Obsolete.
2287         (nxml-completion-at-point-function): Remove.
2288         (nxml-mode): Don't set completion-at-point-functions.
2289         * lisp/nxml/rng-nxml.el (rng-nxml-mode-init): Set it here instead.
2290         (rng-completion-at-point): Rename from rng-complete and mark it
2291         non-interactive.  It is now to be used as completion-at-point-function.
2292         (rng-complete-tag, rng-complete-end-tag, rng-complete-attribute-name)
2293         (rng-complete-attribute-value): Don't perform completion, but return
2294         completion data instead.
2295         (rng-complete-qname-function, rng-generate-qname-list): Add a few
2296         arguments, previously passed via dynamic coping.
2297         (rng-strings-to-completion-table): Rename from
2298         rng-strings-to-completion-alist.  Don't return an alist.  Don't both
2299         sorting and uniquifying.
2301         * lisp/nxml/rng-util.el (rng-complete-before-point): Delete function.
2302         (rng-completion-exact-p, rng-quote-string): Delete functions.
2304         * lisp/nxml/rng-valid.el (rng-recover-start-tag-open)
2305         (rng-missing-attributes-message, rng-missing-element-message)
2306         (rng-mark-missing-end-tags): Use explicit ".." in formats rather than
2307         calling rng-quote-string everywhere.
2309 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
2311         Use sgml-electric-tag-pair-mode also in nxml-mode
2313         * lisp/nxml/rng-nxml.el: Require sgml-mode.
2314         (rng-nxml-easy-menu): Add entry for sgml-electric-tag-pair-mode.
2315         (rng-complete-qname-function): Use complete-with-action.
2317         * lisp/textmodes/sgml-mode.el (sgml-electric-tag-pair-before-change-function):
2318         Let-bind forward-sexp-function, since nxml-mode binds it to
2319         something incompatible.
2321         * lisp/nxml/nxml-mode.el: Use setq-local and defvar-local.
2323 2016-01-15  Stefan Monnier  <monnier@iro.umontreal.ca>
2325         * xmltok.el: Mark the "sole --" rather than the comment opener
2327         * lisp/nxml/xmltok.el (xmltok-scan-after-comment-open): Put the error
2328         marker on the "sole --" rather than on the comment opener.
2330 2016-01-15  Sam Steingold  <sds@gnu.org>
2332         replace `tramp-compat-split-string' (removed) with `split-string'
2334         (python-shell-tramp-refresh-process-environment)
2335         (python-shell-calculate-pythonpath): use `split-string'
2336         instead of defunct `tramp-compat-split-string'
2338 2016-01-15  Stefan Monnier  <monnier@iro.umontreal.ca>
2340         Update nXML to use Emacs's Unicode support, and lexical-binding
2342         * etc/nxml/*.el: Remove obsolete char-name files.
2343         * lisp/nxml/xsd-regexp.el (xsdre-range-list-difference): Remove unused
2344         var `next'.
2345         * lisp/nxml/rng-nxml.el (rng-set-state-after): Don't assume point-min==1.
2346         * lisp/nxml/rng-match.el (rng-update-match-state): Simplify.
2347         * lisp/nxml/nxml-outln.el (nxml-outline-state-transform-exceptions)
2348         (nxml-target-section-pos, nxml-depth-in-target-section)
2349         (nxml-outline-state-transform-alist)
2350         (nxml-outline-display-section-tag-function): Move decl before first use.
2351         * lisp/nxml/nxml-mode.el (nxml-char-name-ignore-case)
2352         (nxml-char-name-alist, nxml-char-name-table)
2353         (nxml-autoload-char-name-set-list, nxml-named-char-history): Remove vars.
2354         (nxml-enable-char-name-set, nxml-disable-char-name-set)
2355         (nxml-char-name-set-enabled-p, nxml-autoload-char-name-set)
2356         (nxml-define-char-name-set, nxml-get-char-name): Remove functions.
2357         (nxml-insert-named-char): Use read-char-by-name instead.
2358         (nxml-char-ref-display-extra): Use get-char-code-property.
2359         * lisp/nxml/nxml-maint.el (nxml-create-unicode-char-name-sets):
2360         Remove function.
2361         * lisp/nxml/nxml-glyph.el, lisp/nxml/nxml-uchnm.el: Remove files.
2363 2016-01-15  Michael Albinus  <michael.albinus@gmx.de>
2365         Add "sg" method to Tramp
2367         * doc/misc/tramp.texi (Inline methods): Add "sg" method.
2368         (Customizing Completion): Add function `tramp-parse-etc-group'.
2370         * lisp/net/tramp-sh.el (tramp-methods) <sg>: Add.  (Bug#22329)
2371         (tramp-completion-function-alist-sg): New defconst.
2372         (top): Completion function for "sg" is
2373         `tramp-completion-function-alist-sg'.
2375         * lisp/net/tramp.el (tramp-completion-function-alist): Adapt docstring.
2376         (tramp-parse-etc-group, tramp-parse-etc-group-group): New defuns.
2378 2016-01-14  Michael Albinus  <michael.albinus@gmx.de>
2380         Remove XEmacs compatibility in Tramp
2382         * doc/misc/tramp.texi: Replace flags by their hard coded name.
2383         Remove unused flags and the enclosed alternative text for XEmacs.
2385         * doc/misc/trampver.texi: Use "Tramp" CamelCase.  Rename "emacs"
2386         and "xemacs" flags to "unified" and "separate".  Remove flags
2387         "emacsgw", "emacsname", "emacsdir", "ftppackagename",
2388         "emacsothername", "emacsotherdir" and "emacsotherfilename".
2389         (trampver):
2390         * lisp/net/trampver.el (tramp-version): Set to "2.3.0-pre".
2392         * lisp/net/tramp.el (bkup-backup-directory-info)
2393         (directory-sep-char, ls-lisp-use-insert-directory-program)
2394         (outline-regexp, tramp-backup-directory-alist)
2395         (tramp-default-method, tramp-shell-prompt-pattern, tramp-syntax)
2396         (tramp-file-name-regexp-unified)
2397         (tramp-file-name-regexp-separate)
2398         (tramp-completion-file-name-regexp-unified)
2399         (tramp-completion-file-name-regexp-separate, tramp-chunksize)
2400         (tramp-get-method-parameter, tramp-find-method, tramp-find-user)
2401         (tramp-debug-message, tramp-progress-reporter-update)
2402         (with-tramp-progress-reporter)
2403         (tramp-rfn-eshadow-setup-minibuffer)
2404         (rfn-eshadow-setup-minibuffer-hook, tramp-unload-hook)
2405         (tramp-rfn-eshadow-update-overlay)
2406         (rfn-eshadow-update-overlay-hook, tramp-default-file-modes)
2407         (tramp-file-name-for-operation)
2408         (tramp-completion-file-name-handler)
2409         (tramp-autoload-file-name-handler, tramp-completion-mode-p)
2410         (tramp-handle-directory-files)
2411         (tramp-handle-directory-files-and-attributes)
2412         (tramp-handle-dired-uncache, tramp-handle-find-backup-file-name)
2413         (tramp-handle-insert-file-contents, tramp-handle-load)
2414         (tramp-handle-shell-command)
2415         (tramp-handle-verify-visited-file-modtime)
2416         (tramp-handle-file-notify-valid-p, tramp-accept-process-output)
2417         (tramp-check-for-regexp, tramp-wait-for-regexp)
2418         (tramp-send-string, tramp-mode-string-to-int)
2419         (tramp-get-local-gid, tramp-check-cached-permissions)
2420         (tramp-get-remote-tmpdir, tramp-make-tramp-temp-file)
2421         (auto-save-file-name-transforms)
2422         (tramp-handle-make-auto-save-file-name, tramp-read-passwd)
2423         (tramp-clear-passwd, tramp-time-diff):
2424         * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp)
2425         (directory-sep-char, tramp-adb-file-name-handler-alist)
2426         (tramp-adb-parse-device-names)
2427         (tramp-adb-handle-expand-file-name)
2428         (tramp-adb-handle-file-truename, tramp-adb--gnu-switches-to-ash)
2429         (tramp-adb-handle-file-local-copy)
2430         (tramp-adb-handle-write-region, tramp-adb-handle-set-file-modes)
2431         (tramp-adb-handle-rename-file, tramp-adb-handle-process-file)
2432         (tramp-adb-handle-shell-command)
2433         (tramp-adb-handle-start-file-process, tramp-adb-get-device)
2434         (tramp-adb-maybe-open-connection):
2435         * lisp/net/tramp-cache.el (tramp-persistency-file-name)
2436         (tramp-cache-print):
2437         * lisp/net/tramp-cmds.el (tramp-cleanup-all-connections)
2438         (tramp-bug, tramp-reporter-dump-variable)
2439         (tramp-load-report-modules, tramp-append-tramp-buffers):
2440         * lisp/net/tramp-compat.el (tramp-compat-funcall)
2441         (tramp-advice-file-expand-wildcards)
2442         (tramp-compat-temporary-file-directory)
2443         (tramp-compat-make-temp-file, tramp-compat-copy-file)
2444         (tramp-compat-delete-directory, )
2445         (tramp-compat-process-running-p):
2446         * lisp/net/tramp-ftp.el (tramp-methods) <ftp>:
2447         (tramp-default-method-alist, tramp-foreign-file-name-handler-alist):
2448         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
2449         (tramp-gvfs-do-copy-or-rename-file, tramp-gvfs-handle-copy-file)
2450         (tramp-gvfs-handle-file-local-copy)
2451         (tramp-gvfs-handle-file-name-all-completions)
2452         (tramp-gvfs-handle-file-notify-add-watch)
2453         (tramp-gvfs-monitor-file-process-filter)
2454         (tramp-gvfs-handle-file-readable-p)
2455         (tramp-gvfs-handle-rename-file, tramp-gvfs-handle-write-region)
2456         (tramp-gvfs-file-name, tramp-gvfs-handler-askquestion)
2457         (tramp-gvfs-maybe-open-connection)
2458         (tramp-gvfs-parse-device-names):
2459         * lisp/net/tramp-gw.el (tramp-gw-aux-proc-sentinel)
2460         (tramp-gw-open-connection, tramp-gw-open-network-stream):
2461         * lisp/net/tramp-sh.el (directory-sep-char)
2462         (tramp-sh-file-name-handler-alist)
2463         (tramp-sh-handle-file-truename)
2464         (tramp-sh-handle-set-visited-file-modtime)
2465         (tramp-sh-handle-verify-visited-file-modtime)
2466         (tramp-sh-handle-set-file-modes, tramp-sh-handle-set-file-times)
2467         (tramp-sh-handle-file-acl)
2468         (tramp-sh-handle-file-name-all-completions)
2469         (tramp-sh-handle-copy-file, tramp-sh-handle-rename-file)
2470         (tramp-do-copy-or-rename-file-directly)
2471         (tramp-do-copy-or-rename-file-out-of-band)
2472         (dired-compress-file-suffixes, dired-remove-file)
2473         (tramp-sh-handle-dired-compress-file)
2474         (tramp-sh-handle-insert-directory)
2475         (tramp-sh-handle-expand-file-name)
2476         (tramp-sh-handle-start-file-process)
2477         (tramp-sh-handle-process-file, tramp-sh-handle-file-local-copy)
2478         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
2479         (tramp-sh-handle-file-notify-add-watch)
2480         (tramp-sh-gvfs-monitor-dir-process-filter)
2481         (tramp-sh-inotifywait-process-filter, tramp-maybe-send-script)
2482         (tramp-find-executable)
2483         (tramp-open-connection-setup-interactive-shell)
2484         (tramp-find-inline-encoding, tramp-compute-multi-hops)
2485         (tramp-maybe-open-connection, tramp-convert-file-attributes)
2486         (tramp-get-remote-path, tramp-get-remote-touch):
2487         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
2488         (tramp-smb-handle-copy-directory, tramp-smb-handle-copy-file)
2489         (tramp-smb-handle-delete-directory)
2490         (tramp-smb-handle-directory-files, tramp-smb-handle-file-acl)
2491         (tramp-smb-handle-make-directory-internal)
2492         (tramp-smb-handle-process-file, tramp-smb-handle-rename-file)
2493         (tramp-smb-handle-set-file-acl, tramp-smb-handle-set-file-modes)
2494         (tramp-smb-handle-write-region, tramp-smb-get-file-entries)
2495         (tramp-smb-get-cifs-capabilities)
2496         (tramp-smb-maybe-open-connection):
2497         * lisp/net/trampver.el (tramp-repository-get-version):
2498         Remove XEmacs compat code.
2500         * lisp/net/tramp-cmds.el (mml-mode, mml-insert-empty-tag)
2501         (reporter-dump-variable): Declare functions.
2503         * lisp/net/tramp.el (tramp-bkup-backup-directory-info)
2504         (tramp-advice-minibuffer-electric-separator)
2505         (tramp-advice-minibuffer-electric-tilde)
2506         (tramp-handle-unhandled-file-name-directory):
2507         * lisp/net/tramp-compat.el (tramp-compat-with-temp-message)
2508         (tramp-compat-font-lock-add-keywords)
2509         (tramp-compat-load, tramp-compat-number-sequence)
2510         (tramp-compat-split-string, tramp-compat-delete-dups):
2511         * lisp/net/tramp-sh.el (tramp-sh-handle-insert-file-contents-literally):
2512         Remove.
2514         * lisp/net/tramp-sh.el (tramp-methods) <psftp>: This does not work
2515         recursively.
2517 2016-01-14  K. Handa  <handa@gnu.org>
2519         fix previous change of src/ftfont.c (ftfont_shape_by_flt)
2521         * src/ftfont.c (ftfont_shape_by_flt): Fix previous change.  Access the
2522         second glyph only when there are enough glyphs.
2524 2016-01-13  Glenn Morris  <rgm@gnu.org>
2526         * src/buffer.c (Fset_buffer_major_mode): Allow default major-mode,
2528         or its hook, to move point.  (Bug#22348)
2530 2016-01-12  Michael Albinus  <michael.albinus@gmx.de>
2532         Merge missing commit from emacs-25 branch
2534         * test/Makefile.in (SELECTOR_DEFAULT, SELECTOR_EXPENSIVE, SELECTOR):
2535         New variables.
2536         (check-expensive, check-doit): New targets.
2538         * Makefile.in (check-expensive): New target.
2540         * test/lisp/autorevert-tests.el
2541         (auto-revert-test01-auto-revert-several-files):
2542         * test/lisp/filenotify-tests.el (file-notify--deftest-remote)
2543         (file-notify-test06-many-events):
2544         * test/lisp/net/tramp-tests.el (tramp-test26-process-file)
2545         (tramp-test27-start-file-process, tramp-test28-shell-command)
2546         (tramp-test29-vc-registered)
2547         (tramp-test31-special-characters-with-stat)
2548         (tramp-test31-special-characters-with-perl)
2549         (tramp-test31-special-characters-with-ls)
2550         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
2551         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
2552         (tramp-test35-unload): Tag the tests as :expensive-test.
2554 2016-01-12  John Wiegley  <johnw@newartisans.com>
2556         Merge from origin/emacs-25
2558         1f6898d test/automated/vc-hg.el: Support out-of-tree build
2559         3adb56e Minor change in tramp-tests.el
2560         2b535ba ; * etc/NEWS: Update the js.el entry.
2561         76b518c * etc/HELLO: Add Armenian and Mongolian greetings.
2562         b51f1ef Java Mode: Fontify identifiers in the presence of annotations.
2563         36b9539 Avoid an infloop when we run out of memory
2564         2006752 Avoid unnecessary failures of auto-saving after fatal error
2565         eef6784 Simplify HAVE_MODULES use in mark_maybe_pointer
2566         552694a Revert attempt to use 'noexcept' in typedef
2567         6ad0d39 Update documentation of 'indirect-function'
2568         c6a5314 ; * etc/NEWS: Move entry of 'inhibit-point-motion-hooks'.
2569         303141a Update documentation for obsoleting 'syntax-begin-function'
2570         4e6f61c ; * etc/NEWS: Mark documented and not-to-be-documented entries.
2571         e667bbb Document new features if Eshell
2572         9c4e4e0 ; * etc/NEWS: Update EUDC entries.
2573         1089dc9 Handle too long commands in Tramp
2574         684eb58 * .gitattributes: *.cur and *.pif are binary files too.
2575         d2c7fda * src/alloc.c (mark_maybe_pointer): HAVE_MODULES may be undefined
2576         bd3f53d * sh-script.el (sh-smie-sh-rules): Improve indentation inside $(...)
2577         09b2b8a * src/alloc.c (mark_maybe_pointer): Also check wide-int's emacs_value
2578         cca0f93 ; Account for spaces before the filename
2579         c71e1e8 Use short date for 'hg annotate', and output the author
2580         f50027b Spelling fix
2581         c7dff67 ; * etc/NEWS: Fix the Xref entries that got separated.
2582         cc140bc Document user-level functions in project.el
2583         f8208b6 Document the user-level features of the Xref package
2584         b131fb8 * loading.texi: Add `define-type' entry for load-history
2585         db3c2a8 Improve doc strings and prompts in xref.el
2586         f6117ef Allow the use of `font-lock-extend-region-multiline' in CC Mode.
2587         90fd798 Fix coding system for Tramp on OS X.
2588         e985a0e ; * etc/NEWS: Mark the 'check-expensive' entry not to be documented.
2589         9dfcbf0 Update 'load-history' docs
2590         207e191 Fix (error ...) error
2591         457738f Correctly analyze brace arguments in templated C++ function declarations.
2592         d57724a * lisp/cedet/mode-local.el (describe-function-orig-buffer): Declare.
2593         2a9532d * lisp/ffap.el (ffap-latex-mode): Avoid free variable.
2594         1a6b084 * lisp/play/dunnet.el (dun-fix-screen): Avoid `end-of-buffer`.
2595         8be046f Respect fontification region calculated by major mode.  Fixes bug #22316.
2596         4b37cba Improve documentation of Delete Selection mode
2597         a034dd3 Fix two project-find-file issues
2598         30abf29 Clarify doc string of 'dired-current-directory'
2599         e990bb2 Use the face of preceding text for displaying the ellipsis
2600         5810ac3 Suppress Chinese file name test for OSX in tramp-tests.el
2601         eeb710a ; * lisp/startup.el: Sentences end with two spaces.
2602         428b3de * admin/admin.el (set-version): Also handle the NEWS file.
2603         648de81 ; Add NEWS entry for project.el
2604         671862f apropos-library: Skip obvious duplicates; don't error on generics
2605         51668a5 ; Grammar fix
2606         ed41d11 Add project-find-file and project-or-external-find-file
2607         056da45 ; Improve commentary in 'setup_for_ellipsis'
2608         269d008 ; Improve docstring for `inhibit-startup-echo-area-message'
2610 2016-01-12  John Wiegley  <johnw@newartisans.com>
2612         Merge from origin/emacs-25
2614         ce4a052 Add defvar-local to lisp-imenu-generic-expression
2615         a0121bc Revert commit b1e3d14845517bfa9fa5d6d3840f3ab3160306fd
2616         76fe2d5 * lisp/emacs-lisp/autoload.el (autoload-find-destination): Doc fix.
2617         1ae088f * lisp/emacs-lisp/autoload.el (autoload-find-destination):
2618         b6b47af Properly encode/decode base64Binary data in SOAP
2619         c632466 Obey coding-system-for-write when writing stdout/stderr in batch
2620         2f32cb5 * doc/misc/efaq.texi (Packages that do not come with Emacs):
2621                 Update the URI of MELPA and marmalade-repo.
2622                 Reported by CHENG Goa <chenggao@royau.me> in
2623                 https://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00390.html.
2624         d2937aa * lisp/progmodes/opascal.el (opascal-mode-syntax-table):
2625         5330c25 * lisp/progmodes/xscheme.el (xscheme-prompt-for-expression-exit):
2626         7380990 Remove function wrongly on AWK Mode value of context
2627         fontification hook.
2628         d400753 * src/buffer.c: Stick with ASCII in doc string.
2629         221240c Reword transient-mark-mode doc string
2630         977d3ea Update doc string of 'selective-display'
2631         229c3fa Make C++ buffers writeable when writing their initial text
2632                 properties.
2633         f5c762c Additional changes for "make check-expensive"
2634         1729cf3 ; * admin/MAINTAINERS: Remove myself.
2635         33219d3 Apply text properties for <, > in new after-change function
2636                 (C++ Java Modes).
2638 2016-01-12  John Wiegley  <johnw@newartisans.com>
2640         Merge from origin/emacs-25
2642         9fb185a shr-tag-video bug fix
2643         6300655 Minor fixes in tramp-tests.el
2644         50575b1 Ensure redisplay when 'truncate-lines' is set
2645         0d9e80d Fix a doc string of 'transient-mark-mode'
2646         0000ae5 MS-Windows followup to latest gnulib update
2647         4bc5e02 Spelling fix
2648         f1093f7 Do secure signed Bcc handling
2650 2016-01-12  John Wiegley  <johnw@newartisans.com>
2652         Merge from origin/emacs-25
2654         861022f * doc/misc/texinfo.tex: Revert unwanted copyright change.
2655         46e47a5 ; * etc/refcards/ru-refcard.tex (cyear): Update via M-x set-copyright.
2656         71ea138 * lisp/align.el (align): Simplify a lambda
2657         5618a50 * lisp/align.el (align): Fix arg order in call to `align-region'
2658         1f680db Fix compilation next-error in buffers with selective-display
2659         d20a948 * nsm.el (nsm-check-protocol): Fix typo in the message.
2660         1da116f Add SHA1 warnings for high network security settings
2661         e48bacd ; * etc/NEWS: Typo fix.
2663 2016-01-12  John Wiegley  <johnw@newartisans.com>
2665         Merge from origin/emacs-25
2667         43662a2 ; Clarify that xref is still experimental
2668         0a6e6ca ; * admin/release-process: Remove some obsolete records.
2669         c2e9e3d * lisp/progmodes/fortran.el (fortran-make-syntax-propertize-function):
2670         8637f3d (semantic-symref-derive-find-filepatterns): Return a list
2671         0a7ad07 ; Re-arrange xref-related entries in NEWS.
2672         fe903ef Fix xref-find-references on MS-Windows
2673         55a28d8 ; Fixed visual bell artifact problem on NextStep.
2674         d064034 Document new features of tildify-mode
2675         964bea7 Document new features of Whitespace mode
2676         cd68f47 Improve documentation of new Hide-IfDef features
2677         723b8bf Fix regression in font-locking cl-assert and cl-check-type
2679 2016-01-12  John Wiegley  <johnw@newartisans.com>
2681         Merge from origin/emacs-25
2683         ef33bc7 Spelling and grammar fixes
2684         9c3dbab Fix copyright years by hand
2685         0e96320 Update copyright year to 2016
2687 2016-01-12  John Wiegley  <johnw@newartisans.com>
2689         Merge from origin/emacs-25
2691         9ee6ecb lisp/emacs-lisp/chart.el (chart-new-buffer): Move to silence byte compiler.
2692         526d80c Port chart.el methods to cl-generic.
2693         410bb69 Add nt/INSTALL.W64 build instructions
2694         8f5b524 Add new input method 'programmer-dvorak'
2695         6d11f6e Allow to invoke original M-TAB binding in 'flyspell-prog-mode'
2696         bb83bb1 Fix EWW rendering of long RTL lines
2697         b1a8509 fix  bug#21054
2698         ce5ad12 Clean up cairo printing code
2700 2016-01-12  John Wiegley  <johnw@newartisans.com>
2702         Merge from origin/emacs-25
2704         6ee327d Add handle_user_signal_hook
2705         47580e0 Avoid writing to purespace
2706         0588be7 Remove unused variable
2707         89e7483 * configure.ac: Find libxml2 headers in Xcode SDK dir on Darwin.
2708         3b95e9c Use posix_openpt instead of openpty on Darwin
2709         86312ff Document support for ':documentation' in Lisp mode
2710         c930e75b Document new features of TeX mode
2711         7c83d84 Clarify docs of hscroll in RTL text
2712         4c8f8db Fix rendering of HTML pages that use character composition
2713         a8d37ca Avoid some compiler warnings in w32.c
2714         ce106f3de Undo ill-advised change
2715         be0bba4 Unbreak completion in python-mode buffers
2717 2016-01-11  Dmitry Gutov  <dgutov@yandex.ru>
2719         test/automated/vc-hg.el: Support out-of-tree build
2721         * test/automated/vc-hg.el
2722         (vc-hg-annotate-extract-revision-at-line-with-filename)
2723         (vc-hg-annotate-extract-revision-at-line-with-both):
2724         Don't refer to source-directory.
2725         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00755.html
2727 2016-01-11  Michael Albinus  <michael.albinus@gmx.de>
2729         Minor change in tramp-tests.el
2731         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
2732         Use `dired-uncache' instead of a Tramp internal function.
2734 2016-01-11  Peter Feigl  <peter.feigl@nexoid.at>
2736         * etc/HELLO: Add Armenian and Mongolian greetings.
2738         (Bug#22346)
2740 2016-01-11  Alan Mackenzie  <acm@muc.de>
2742         Java Mode: Fontify identifiers in the presence of annotations.
2744         * lisp/progmodes/cc-engine.el (c-forward-annotation): Tidy up the coding:
2745         Don't move point when the defun fails.
2746         (c-forward-decl-or-cast-1): Correct a usage of match data.
2748         * lisp/progmodes/cc-fonts.el (c-font-lock-maybe-decl-faces): Remove.
2749         (c-font-lock-declarations): Use the new c-maybe-decl-faces in place of the
2750         removed variable.
2752         * lisp/progmodes/cc-langs.el (c-maybe-decl-faces): New language variable.
2754 2016-01-11  Eli Zaretskii  <eliz@gnu.org>
2756         Avoid an infloop when we run out of memory
2758         * src/alloc.c (garbage_collect_1): Don't bother saving and
2759         restoring the echo-area message if we are GC'ing after running out
2760         of memory.  This avoids an infloop due to repeated attempts to
2761         allocate memory for the cons cell needed to save the message,
2762         which signals the memory-full error, which attempts to save the
2763         echo-area message, which signals memory-full again, etc.
2765 2016-01-11  Eli Zaretskii  <eliz@gnu.org>
2767         Avoid unnecessary failures of auto-saving after fatal error
2769         * src/w32.c (map_w32_filename): Avoid non-trivial system calls for
2770         the benefit of FAT volumes if we are called as part of shutting
2771         down due to a fatal error, which probably means we are trying to
2772         auto-save the session.
2773         * src/lread.c (check_obarray): Don't bother making the obarray
2774         valid if we are shutting down due to a fatal error.  This avoids
2775         interfering with auto-saving the crashed session.
2777 2016-01-11  Paul Eggert  <eggert@cs.ucla.edu>
2779         Simplify HAVE_MODULES use in mark_maybe_pointer
2781         * src/alloc.c (HAVE_MODULES): Now a constant 0 if not defined,
2782         so that later code can use 'if' rather than '#ifdef'.
2783         (mark_maybe_pointer): Simplify based on HAVE_MODULES now
2784         always working.
2786 2016-01-11  Paul Eggert  <eggert@cs.ucla.edu>
2788         Revert attempt to use 'noexcept' in typedef
2790         This use of 'noexcept' runs afoul of the C++11 standard.
2791         Problem reported by Philipp Stephani in:
2792         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00706.html
2793         * src/emacs-module.c (emacs_finalizer_function):
2794         Move this typedef here ...
2795         * src/emacs-module.h: ... from here, and use only the C
2796         version of the typedef.  The typedef is now private since it
2797         is never used in the .h file now and anyway it seemed to be
2798         causing more confusion than it cured.
2799         (make_user_ptr, get_user_finalizer, set_user_finalizer):
2800         Open-code the type instead.
2802 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
2804         Update documentation of 'indirect-function'
2806         * doc/lispref/eval.texi (Function Indirection): Update the
2807         documentation of 'indirect-function'.
2809 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
2811         Update documentation for obsoleting 'syntax-begin-function'
2813         * doc/lispref/syntax.texi (Position Parse): Undocument
2814         'syntax-begin-function' that is now obsolete.
2816 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
2818         Document new features if Eshell
2820         * doc/misc/eshell.texi (Input/Output): Document the new
2821         '#<bufname>' syntax.
2822         (Input/Output): Document 'eshell-destroy-buffer-when-process-dies'.
2823         Disable "Key Index" generation, as there are no @kindex entries in
2824         this manual.
2826 2016-01-10  Michael Albinus  <michael.albinus@gmx.de>
2828         Handle too long commands in Tramp
2830         * lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link)
2831         (tramp-do-file-attributes-with-ls): Send sequence of commands, in
2832         order to not exceed shell command line limit.
2834         * test/automated/tramp-tests.el (tramp--test-darwin-p): Remove.
2835         (tramp--test-utf8): Include Arabic file name, again.
2837 2016-01-10  Paul Eggert  <eggert@cs.ucla.edu>
2839         * .gitattributes: *.cur and *.pif are binary files too.
2841 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
2843         * src/alloc.c (mark_maybe_pointer): HAVE_MODULES may be undefined
2845 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
2847         * sh-script.el (sh-smie-sh-rules): Improve indentation inside $(...)
2849         * lisp/progmodes/sh-script.el (sh-smie-sh-rules): Improve indentation
2850         within $(...).
2851         * test/indent/shell.sh: Add corresponding test.
2853 2016-01-09  Stefan Monnier  <monnier@iro.umontreal.ca>
2855         * src/alloc.c (mark_maybe_pointer): Also check wide-int's emacs_value
2857         (mark_memory): Simplify loop.  Don't assume a pointer-sized word can be
2858         cast to Lisp_Object.
2860 2016-01-09  Dmitry Gutov  <dgutov@yandex.ru>
2862         Use short date for 'hg annotate', and output the author
2864         * lisp/vc/vc-hg.el (vc-hg-annotate-command):
2865         Change '-d' to '-dq'.  (Bug#21805)
2866         (vc-hg-annotate-switches): Default to "-u" "--follow".
2867         (vc-hg-annotate-re): Update to recognize the short date format
2868         and the optional username.
2869         (vc-hg-annotate-time)
2870         (vc-hg-annotate-extract-revision-at-line): Update accordingly.
2872         * test/automated/vc-hg.el: New file.
2874 2016-01-09  Paul Eggert  <eggert@cs.ucla.edu>
2876         Spelling fix
2878 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
2880         Document user-level functions in project.el
2882         * lisp/progmodes/project.el (project-find-file)
2883         (project-or-external-find-file): Add doc strings.
2885 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
2887         Document the user-level features of the Xref package
2889         * doc/emacs/maintaining.texi (Maintaining): Add a list of
2890         described features.
2891         (Xref): New section, made out of thoroughly rewritten "Tags"
2892         section.
2893         (Find Identifiers, Looking Up Identifiers, Xref Commands)
2894         (Identifier Search, List Identifiers): New subsections,
2895         incorporating the old tags commands and the new xref commands.
2896         (Tags Tables, Tag Syntax, Create Tags Table, Etags Regexps):
2897         Section and subsections demoted to a lower level.
2898         * doc/emacs/search.texi (Search):
2899         * doc/emacs/windows.texi (Pop Up Window):
2900         * doc/emacs/frames.texi (Creating Frames):
2901         * doc/emacs/programs.texi (Imenu, Symbol Completion):
2902         * doc/emacs/building.texi (Grep Searching):
2903         * doc/emacs/dired.texi (Operating on Files):
2904         * doc/emacs/glossary.texi (Glossary): All references to tags changed.
2906 2016-01-09  Stefan Monnier  <monnier@iro.umontreal.ca>
2908         * loading.texi: Add `define-type' entry for load-history
2910         * doc/lispref/loading.texi (Where Defined): Remove incorrect
2911         cl-defmethod description, and add missing define-type entry.
2913 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
2915         Improve doc strings and prompts in xref.el
2917         * lisp/progmodes/xref.el (xref-backend-functions)
2918         (xref-find-definitions): Doc fixes.
2919         (xref-query-replace): Doc fix.  Improve prompts for arguments.
2921 2016-01-09  Alan Mackenzie  <acm@muc.de>
2923         Allow the use of `font-lock-extend-region-multiline' in CC Mode.
2925         * lisp/progmodes/cc-mode.el (c-font-lock-init): Remove
2926         `font-lock-extend-regions-wholelines' from
2927         `font-lock-extend-region-functions' rather than setting the latter to
2928         nil.
2930 2016-01-09  Michael Albinus  <michael.albinus@gmx.de>
2932         Fix coding system for Tramp on OS X.
2934         * lisp/net/tramp-compat.el: Require ucs-normalize.
2936         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
2937         Set coding system to `utf-8-hfs' for Mac OS X.
2939         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
2940         Flush directory properties when needed.
2941         (tramp--test-utf8): Include Chinese file name, again.
2943 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
2945         Update 'load-history' docs
2947         * doc/lispref/loading.texi (Where Defined): Update the list of
2948         forms in 'load-history' by adding the forms created for the
2949         'cl-generic' generics.  (Bug#21422)
2951 2016-01-08  Paul Eggert  <eggert@cs.ucla.edu>
2953         Fix (error ...) error
2955         Problem reported by Glenn Morris in:
2956         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00561.html
2957         * lisp/vc/add-log.el (change-log-goto-source): Fix typos
2958         introduced in my Aug 28 change, where I got confused by the
2959         two meanings of (error ...).
2961 2016-01-08  Alan Mackenzie  <acm@muc.de>
2963         Correctly analyze brace arguments in templated C++ function declarations.
2965         * lisp/progmodes/cc-defs.el (c-go-list-forward, c-go-list-backward): add
2966         POS and LIMIT parameters, like the other c-go-list-* functions have.
2968         * lisp/progmodes/cc-engine.el (c-restore-<>-properties): Check backwards
2969         for a ?\( rather than a ?<.  (c-looking-at-inexpr-block): Handle names
2970         followed by template specifiers.
2972 2016-01-08  Glenn Morris  <rgm@gnu.org>
2974         * lisp/cedet/mode-local.el (describe-function-orig-buffer): Declare.
2976         * lisp/ffap.el (ffap-latex-mode): Avoid free variable.
2978 2016-01-08  Mark Oteiza  <mvoteiza@udel.edu>
2980         * lisp/play/dunnet.el (dun-fix-screen): Avoid `end-of-buffer`.
2982 2016-01-08  Alan Mackenzie  <acm@muc.de>
2984         Respect fontification region calculated by major mode.  Fixes bug #22316.
2986         * lisp/font-lock.el (font-lock-extend-jit-lock-region-after-change): when a
2987         fontification region has been calculated by a function on
2988         font-lock-extend-after-change-region-function use this region rather than
2989         changing the end position to somewhere else.
2991 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
2993         Improve documentation of Delete Selection mode
2995         * lisp/delsel.el (delete-selection-mode)
2996         (delete-selection-helper): Update and expand the doc strings.
2997         (Bug#22296)
2999         * doc/emacs/mark.texi (Using Region): Document the behavior of
3000         delete commands in Delete Selection mode.  (Bug#22296)
3002         * doc/lispref/markers.texi (The Mark): Document how to add the
3003         support for Delete Selection mode to Lisp programs. (Bug#22296)
3005 2016-01-08  Dmitry Gutov  <dgutov@yandex.ru>
3007         Fix two project-find-file issues
3009         * lisp/progmodes/project.el (project--value-in-dir):
3010         Temporarily set enable-local-variables to :all.
3011         (project-find-file, project-or-external-find-file):
3012         All autoloads.
3013         (project--find-file-in): Require xref.
3015 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
3017         Clarify doc string of 'dired-current-directory'
3019         * lisp/dired.el (dired-current-directory): Doc fix: clarify that
3020         the return value might not end in a slash when called with the
3021         optional argument non-nil.  (Bug#6273)
3023 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
3025         Use the face of preceding text for displaying the ellipsis
3027         * src/xdisp.c (setup_for_ellipsis): Use the face of the preceding
3028         text in it->saved_face_id for displaying the ellipsis, and ignore
3029         the face, if any, of the invisible text.  (Bug#22320)
3031 2016-01-08  Michael Albinus  <michael.albinus@gmx.de>
3033         Suppress Chinese file name test for OSX in tramp-tests.el
3035         * test/automated/tramp-tests.el (tramp--test-utf8):
3036         Remove instrumentation.  Suppress Chinese file name test for OSX.
3038 2016-01-07  Glenn Morris  <rgm@gnu.org>
3040         * admin/admin.el (set-version): Also handle the NEWS file.
3042 2016-01-07  Dmitry Gutov  <dgutov@yandex.ru>
3044         apropos-library: Skip obvious duplicates; don't error on generics
3046         * lisp/apropos.el (apropos-library): Skip "was an autoload"
3047         entries, to avoid obvious duplicates.  For each cl-defmethod
3048         entry, take just its function symbol (bug#21422).
3050 2016-01-07  Dmitry Gutov  <dgutov@yandex.ru>
3052         Add project-find-file and project-or-external-find-file
3054         * lisp/minibuffer.el (completion-category-defaults):
3055         Add `project-file' category.
3057         * lisp/progmodes/project.el (project-find-file)
3058         (project-or-external-find-file): New commands.
3059         (project--find-file-in): New private function.
3061         * lisp/progmodes/xref.el (xref-collect-matches): Use
3062         `expand-file-name' on DIR, to expand the tildes.
3063         (xref--find-ignores-arguments): Extract from
3064         `xref--rgrep-command'.
3066 2016-01-06  Leo Liu  <sdl.web@gmail.com>
3068         Add defvar-local to lisp-imenu-generic-expression
3070         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression): Add
3071           defvar-local.
3073 2016-01-06  Leo Liu  <sdl.web@gmail.com>
3075         Revert commit b1e3d14845517bfa9fa5d6d3840f3ab3160306fd
3077         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
3078           Don't declare (indent 1).
3080 2016-01-06  Glenn Morris  <rgm@gnu.org>
3082         * lisp/emacs-lisp/autoload.el (autoload-find-destination): Doc fix.
3084 2016-01-06  Glenn Morris  <rgm@gnu.org>
3086         * lisp/emacs-lisp/autoload.el (autoload-find-destination):
3088         Avoid specifying the length of a time object (it has not been "2"
3089         for some time).
3091 2016-01-06  Andreas Schwab  <schwab@linux-m68k.org>
3093         Properly encode/decode base64Binary data in SOAP
3095                 * lisp/net/soap-client.el (soap-encode-xs-basic-type): Encode
3096                 base64Binary value as utf-8.
3097                 (soap-decode-xs-basic-type): Decode base64Binary value as utf-8.
3099 2016-01-06  Eli Zaretskii  <eliz@gnu.org>
3101         Obey coding-system-for-write when writing stdout/stderr in batch
3103         * src/print.c (printchar_to_stream):
3104         * src/xdisp.c (message_to_stderr): If coding-system-for-write has
3105         a non-nil value, use it to encode output in preference to
3106         locale-coding-system.  See the discussions in
3107         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00048.html
3108         for the details.
3110         * doc/lispref/os.texi (Terminal Output): Document how to send
3111         non-ASCII text via 'send-string-to-terminal'.
3112         (Batch Mode): Document how text written to standard streams is
3113         encoded.  Fix inaccuracy regarding which output streams are used
3114         by output functions in batch mode.
3116 2016-01-06  Xue Fuqiao  <xfq.free@gmail.com>
3118         * doc/misc/efaq.texi (Packages that do not come with Emacs):
3119         Update the URI of MELPA and marmalade-repo.  Reported by CHENG Gao
3120         <chenggao@royau.me> in
3121         https://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00390.html.
3123 2016-01-05  Maksim Golubev  <maksim.golubev72@gmail.com>  (tiny change)
3125         * lisp/progmodes/opascal.el (opascal-mode-syntax-table):
3127         Fix backslash.  (Bug#22224)
3129 2016-01-05  Federico Beffa  <beffa@ieee.org>  (tiny change)
3131         * lisp/progmodes/xscheme.el (xscheme-prompt-for-expression-exit):
3133         Make it actually work.  (Bug#22265)
3135 2016-01-05  Alan Mackenzie  <acm@muc.de>
3137         Remove function wrongly on AWK Mode value of context fontification hook.
3139         * lisp/progmodes/cc-langs.el (c-before-context-fontification-functions):
3140         swap order of entries so that awk's entry isn't superseded by the default.
3142         * lisp/progmodes/cc-mode.el (c-before-context-fl-expand-region): Correct
3143         to handle nil value of c-before-context-fontification-functions.
3145 2016-01-05  Paul Eggert  <eggert@cs.ucla.edu>
3147         * src/buffer.c: Stick with ASCII in doc string.
3149 2016-01-05  Paul Eggert  <eggert@cs.ucla.edu>
3151         Reword transient-mark-mode doc string
3153         * src/buffer.c (syms_of_buffer): Reword doc string to avoid confusion.
3154         The value 'lambda (literally) can be interpreted as (quote lambda),
3155         which is not intended here; we want just the lambda symbol.
3157 2016-01-05  Eli Zaretskii  <eliz@gnu.org>
3159         Update doc string of 'selective-display'
3161         * src/buffer.c (syms_of_buffer) <selective-display>: Say that
3162         using it with the value of 't' is obsolete.  (Bug#1092)
3164 2016-01-05  Alan Mackenzie  <acm@muc.de>
3166         Make C++ buffers writeable when writing their initial text properties.
3168         This is a correction to yesterday's CC Mode patch.
3170         * lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Put
3171         c-save-buffer-state around the function rather than a mere `let'.
3173 2016-01-05  Michael Albinus  <michael.albinus@gmx.de>
3175         Additional changes for "make check-expensive"
3177         * CONTRIBUTE : Encourage use of ":tags '(:expensive-test)".
3178         Explain make target `check-expensive'.
3180         * etc/NEWS: Mention new make target `check-expensive'.
3182         * test/automated/Makefile.in (check-doit): New target.
3183         (check, check-expensive): Use it.
3185 2016-01-04  Alan Mackenzie  <acm@muc.de>
3187         Apply text properties for <, > in new after-change function (C++ Java Modes).
3189         These are category/syntax-table properties to give < and > paren syntax.
3190         Also apply certain `c-type' text properties to the insides of <..> constructs
3191         to ensure that identifiers contained by them get fontified.  This patch fixes
3192         bug #681.
3194         * lisp/progmodes/cc-cmds.el (c-electric-lt-gt): Reformulate due to new
3195         after-change action.
3197         * lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Expand
3198         change region to include <s and >s which might not be already marked as
3199         parens, rather than just when paren text properties are removed.
3200         (c-restore-<>-properties): New after-change function, which applies text
3201         properties marking < and > with paren syntax.
3203         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Ensure `c-type'
3204         properties are applied to the interiors of <...> constructs, to ensure
3205         fontification of identifiers there.
3207         * lisp/progmodes/cc-langs.el (c-before-font-lock-functions): Add
3208         c-restore-<>-properties to this list for C++ and Java.
3210         * lisp/progmodes/cc-mode.el (c-common-init): When invoking
3211         c-before-font-lock-functions, exclude c-restore-<>-properties from the
3212         functions invoked.
3213         (c-before-change): Initialize c-new-BEG/END here (rather than c-after-change)
3214         to allow modification by before-change functions.
3215         (c-after-change): Amend c-new-END here, rather than initializing it and
3216         c-new-BEG.
3218 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
3220         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
3222 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
3224         Introduce check-expensive tests.
3226         * Makefile.in (check-expensive):
3227         * test/automated/Makefile.in (check-expensive): New target.
3229         * test/automated/auto-revert-tests.el
3230         (auto-revert-test01-auto-revert-several-files):
3231         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
3232         * test/automated/tramp-tests.el (tramp-test26-process-file)
3233         (tramp-test27-start-file-process, tramp-test28-shell-command)
3234         (tramp-test29-vc-registered)
3235         (tramp-test31-special-characters-with-stat)
3236         (tramp-test31-special-characters-with-perl)
3237         (tramp-test31-special-characters-with-ls)
3238         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
3239         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
3240         (tramp-test35-unload): Tag the tests as :expensive-test.
3242 2016-01-04  Lars Magne Ingebrigtsen  <larsi@gnus.org>
3244         shr-tag-video bug fix
3246         * shr.el (shr-tag-video): Protect against the `poster' being
3247         empty.
3249 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
3251         Minor fixes in tramp-tests.el
3253         * test/automated/tramp-tests.el (tramp-test26-process-file):
3254         Move point properly.
3255         (tramp-test29-vc-registered): Work with relative file names.
3257 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
3259         Ensure redisplay when 'truncate-lines' is set
3261         * lisp/frame.el (redisplay--variables): Add 'truncate-lines'.
3262         (Bug#22303)
3264 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
3266         Fix a doc string of 'transient-mark-mode'
3268         * src/buffer.c (syms_of_buffer) <transient-mark-mode>: Prevent
3269         "lambda" in doc string from becoming a link to lambda expressions.
3271 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
3273         MS-Windows followup to latest gnulib update
3275         * nt/gnulib.mk (EXTRA_DIST): Add ignore-value.h.
3277 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
3279         Spelling fix
3281 2016-01-03  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
3283         Do secure signed Bcc handling
3285         * lisp/gnus/message.el (message-send): Do secure signed Bcc handling
3286         (bug#18718).
3288 2016-01-03  Paul Eggert  <eggert@cs.ucla.edu>
3290         Avoid stdio in SIGINT handler
3292         * admin/merge-gnulib (GNULIB_MODULES): Add ignore-value.
3293         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
3294         * lib/ignore-value.h: New file, from gnulib.
3295         * src/keyboard.c: Include it.
3296         (write_stdout, read_stdin): New functions.
3297         (handle_interrupt): Use them instead of printf and getchar,
3298         and avoid fflush when handling signals.
3300 2016-01-03  Paul Eggert  <eggert@cs.ucla.edu>
3302         * doc/misc/texinfo.tex: Revert unwanted copyright change.
3304 2016-01-03  Artur Malabarba  <bruce.connor.am@gmail.com>
3306         * lisp/align.el (align): Simplify a lambda
3308         * lisp/align.el (align): Fix arg order in call to `align-region'
3310 2016-01-03  Eli Zaretskii  <eliz@gnu.org>
3312         Fix compilation next-error in buffers with selective-display
3314         * lisp/progmodes/compile.el (compilation-beginning-of-line): New
3315         function.
3316         (compilation-internal-error-properties)
3317         (compilation-next-error-function, compilation-set-window): Use
3318         it.  (Bug#1092)
3320 2016-01-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
3322         * nsm.el (nsm-check-protocol): Fix typo in the message.
3324 2016-01-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
3326         Add SHA1 warnings for high network security settings
3328         * nsm.el (nsm-check-protocol): When using high security, warn
3329         about SHA1 certificates, which are now believed to be open to
3330         spoofing.
3332 2016-01-02  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
3334         Refactor mml-smime.el, mml1991.el, mml2015.el
3336         (Maybe this is the last merge from Gnus git to Emacs git)
3338         Cf. discussion on ding mailing list, messages in
3339         <http://thread.gmane.org/gmane.emacs.gnus.general/86228>.
3340         Common code from the three files mml-smime.el, mml1991.el, and
3341         mml2015.el is moved to mml-sec.el.  Auxiliary functions are added
3342         to gnus-util.el.
3344         The code is supported by test cases with necessary test keys.
3346         Documentation in message.texi is updated.
3348         * doc/misc/message.texi (Security, Using S/MIME):
3349         Update for refactoring mml-smime.el, mml1991.el, mml2015.el.
3350         (Using OpenPGP): Rename from "Using PGP/MIME"; update contents.
3351         (Passphrase caching, Encrypt-to-self, Bcc Warning): New sections.
3353         * lisp/gnus/gnus-util.el (gnus-test-list, gnus-subsetp, gnus-setdiff):
3354         New functions.
3356         * lisp/gnus/mml-sec.el: Require gnus-util and epg.
3357         (epa--select-keys): Autoload.
3358         (mml-signencrypt-style-alist, mml-secure-cache-passphrase): Doc fix.
3359         (mml-secure-openpgp-signers): New user option;
3360         make mml1991-signers and mml2015-signers obsolete aliases to it.
3361         (mml-secure-smime-signers): New user option;
3362         make mml-smime-signers an obsolete alias to it.
3363         (mml-secure-openpgp-encrypt-to-self): New user option;
3364         make mml1991-encrypt-to-self and mml2015-encrypt-to-self obsolete
3365         aliases to it.
3366         (mml-secure-smime-encrypt-to-self): New user option;
3367         make mml-smime-encrypt-to-self an obsolete alias to it.
3368         (mml-secure-openpgp-sign-with-sender): New user option;
3369         make mml2015-sign-with-sender an obsolete alias to it.
3370         (mml-secure-smime-sign-with-sender): New user option;
3371         make mml-smime-sign-with-sender an obsolete alias to it.
3372         (mml-secure-openpgp-always-trust): New user option;
3373         make mml2015-always-trust an obsolete alias to it.
3374         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
3375         New user options.
3376         (mml-secure-cust-usage-lookup, mml-secure-cust-fpr-lookup)
3377         (mml-secure-cust-record-keys, mml-secure-cust-remove-keys)
3378         (mml-secure-add-secret-key-id, mml-secure-clear-secret-key-id-list)
3379         (mml-secure-cache-passphrase-p, mml-secure-cache-expiry-interval)
3380         (mml-secure-passphrase-callback, mml-secure-check-user-id)
3381         (mml-secure-secret-key-exists-p, mml-secure-check-sub-key)
3382         (mml-secure-find-usable-keys, mml-secure-select-preferred-keys)
3383         (mml-secure-fingerprint, mml-secure-filter-keys)
3384         (mml-secure-normalize-cust-name, mml-secure-select-keys)
3385         (mml-secure-select-keys-1, mml-secure-signer-names, mml-secure-signers)
3386         (mml-secure-self-recipients, mml-secure-recipients)
3387         (mml-secure-epg-encrypt, mml-secure-epg-sign): New functions.
3389         * lisp/gnus/mml-smime.el: Require epg;
3390         refactor declaration and autoloading of epg functions.
3391         (mml-smime-use): Doc fix.
3392         (mml-smime-cache-passphrase, mml-smime-passphrase-cache-expiry):
3393         Obsolete.
3394         (mml-smime-get-dns-cert, mml-smime-get-ldap-cert):
3395         Use format instead of gnus-format-message.
3396         (mml-smime-epg-secret-key-id-list): Remove variable.
3397         (mml-smime-epg-passphrase-callback, mml-smime-epg-find-usable-key)
3398         (mml-smime-epg-find-usable-secret-key): Remove functions.
3399         (mml-smime-epg-sign, mml-smime-epg-encrypt): Refactor.
3401         * lisp/gnus/mml1991.el (mml1991-cache-passphrase)
3402         (mml1991-passphrase-cache-expiry): Obsolete.
3403         (mml1991-epg-secret-key-id-list): Remove variable.
3404         (mml1991-epg-passphrase-callback, mml1991-epg-find-usable-key)
3405         (mml1991-epg-find-usable-secret-key): Remove functions.
3406         (mml1991-epg-sign, mml1991-epg-encrypt): Refactor.
3408         * lisp/gnus/mml2015.el (mml2015-cache-passphrase)
3409         (mml2015-passphrase-cache-expiry): Obsolete.
3410         (mml2015-epg-secret-key-id-list): Remove variable.
3411         (mml2015-epg-passphrase-callback, mml2015-epg-check-user-id)
3412         (mml2015-epg-check-sub-key, mml2015-epg-find-usable-key)
3413         (mml2015-epg-find-usable-secret-key): Remove functions.
3414         (mml2015-epg-decrypt, mml2015-epg-clear-decrypt, mml2015-epg-sign)
3415         (mml2015-epg-encrypt): Refactor.
3417 2016-01-02  Glenn Morris  <rgm@gnu.org>
3419         * lisp/progmodes/fortran.el (fortran-make-syntax-propertize-function):
3421         Explicitly ignore case.  (Bug#22262)
3423 2016-01-02  Stefan Monnier  <monnier@iro.umontreal.ca>
3425         (semantic-symref-derive-find-filepatterns): Return a list
3427         * lisp/cedet/semantic/symref/grep.el
3428         (semantic-symref-derive-find-filepatterns): Return a list.
3429         (semantic-symref-perform-search): Quote the result here once and for all.
3431 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
3433         Fix xref-find-references on MS-Windows
3435         * lisp/cedet/semantic/symref/grep.el
3436         (semantic-symref-derive-find-filepatterns): Use
3437         'shell-quote-argument' instead of manually quoting in a way that
3438         only works with Posix shells.  (Bug#22289)
3440 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
3442         Document new features of tildify-mode
3444         * lisp/textmodes/tildify.el (tildify-foreach-ignore-environments)
3445         (tildify-mode): Spelling fixes in doc strings.
3447         * etc/NEWS: Reformat the tildify-mode entry.
3449 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
3451         Document new features of Whitespace mode
3453         * doc/emacs/display.texi (Useless Whitespace): Document
3454         'whitespace-toggle-options' and the new 'big-indent' style.
3455         Document 'whitespace-big-indent-regexp'.  Document the Global
3456         Whitespace mode.
3458 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
3460         Improve documentation of new Hide-IfDef features
3462         * etc/NEWS: Expand and reword Hide-IfDef section.
3464 2016-01-02  Leo Liu  <sdl.web@gmail.com>
3466         Fix regression in font-locking cl-assert and cl-check-type
3468         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2): Fix
3469           el-errs-re.
3471 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
3473         Spelling and grammar fixes
3475 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
3477         Fix copyright years by hand
3479         These are dates that admin/update-copyright did not update, or
3480         updated incorrectly.
3482 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
3484         Update copyright year to 2016
3486         Run admin/update-copyright.
3488 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
3490         Merge from gnulib
3492         This mostly just updates copyright dates of gnulib files.
3493         It also updates to the latest version of texinfo.tex.
3495 2015-12-31  Mark Oteiza  <mvoteiza@udel.edu>
3497         lisp/emacs-lisp/chart.el (chart-new-buffer): Move to silence byte compiler.
3499 2015-12-31  Mark Oteiza  <mvoteiza@udel.edu>
3501         Port chart.el methods to cl-generic.
3503         cl-call-next-method cannot be used inside EIEIO's defmethod.
3504         * lisp/emacs-lisp/chart.el: Require cl-generic at compile time.
3505         * lisp/emacs-lisp/chart.el (initialize-instance, chart-draw):
3506         (chart-draw-title, chart-size-in-dir, chart-draw-axis):
3507         (chart-axis-draw, chart-translate-xpos, chart-translate-ypos):
3508         (chart-translate-namezone, chart-draw-data, chart-add-sequence):
3509         (chart-trim, chart-sort): Use cl-defmethod instead of defmethod.
3511 2015-12-31  Brian Burns  <bburns.km@gmail.com>
3513         Add nt/INSTALL.W64 build instructions
3515         * nt/INSTALL.W64: New file.
3516         * nt/INSTALL: Point to INSTALL.W64 for 64-bit build instructions.
3518 2015-12-31  Joakim Jalap  <joakim.jalap@fastmail.com>
3520         Add new input method 'programmer-dvorak'
3522         * lisp/leim/quail/programmer-dvorak.el ("programmer-dvorak"): New
3523         input method.
3525         * etc/NEWS: Mention it.
3527 2015-12-31  Eli Zaretskii  <eliz@gnu.org>
3529         Allow to invoke original M-TAB binding in 'flyspell-prog-mode'
3531         * lisp/textmodes/flyspell.el (flyspell-prog-mode): Record the
3532         original M-TAB binding in a buffer-local variable.
3533         (flyspell-auto-correct-word): Invoke the original binding of M-TAB
3534         if that is recorded, when point is in a place where flyspell
3535         should not be active (e.g., because the user turned on
3536         'flyspell-prog-mode').  (Bug#18533)
3538 2015-12-31  Eli Zaretskii  <eliz@gnu.org>
3540         Fix EWW rendering of long RTL lines
3542         * lisp/net/shr.el (shr-insert-document): Undo any previous hscroll
3543         of the selected window before filling its lines.  (Bug#22250)
3545 2015-12-31  Vincent Belaïche  <vincentb1@users.sourceforge.net>
3547         fix  bug#21054
3549         * ses.el (ses-check-curcell): Call `ses-set-curcell' unconditionally
3551 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3553         Clean up cairo printing code
3555         * src/gtkutil.c (xg_get_page_setup): Use listn.
3556         * src/xfns.c (Fx_export_frames, Fx_print_frames_dialog): Doc fix.  Use
3557         decode_window_system_frame and FRAME_VISIBLE_P.
3558         (Fx_print_frames_dialog): Use redisplay_preserve_echo_area instead
3559         of Fdisplay.
3560         * src/xterm.c (x_cr_export_frames): Use redisplay_preserve_echo_area
3561         instead of Fdisplay.  Temporarily unblock_input around QUIT.
3563 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3565         Add handle_user_signal_hook
3567         * src/keyboard.h (handle_user_signal_hook): New declaration.
3568         * src/keyboard.c (handle_user_signal_hook): New variable.
3569         (handle_user_signal): Call it.
3571 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3573         Avoid writing to purespace
3575         * src/alloc.c (Fmake_string): Don't write to empty string contents.
3576         (allocate_vector): Don't write to empty vector size.
3577         * src/character.h (CHECK_CHARACTER_CAR, CHECK_CHARACTER_CDR):
3578         Don't call unnecessary XSETCAR or XSETCDR.
3579         * src/lisp.h (STRING_SET_UNIBYTE, STRING_SET_MULTIBYTE): Don't
3580         write to empty string size_byte.
3582 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3584         Remove unused variable
3586         * lisp/international/mule-cmds.el: Remove unused variable
3587         `mac-system-coding-system'.
3589 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3591         * configure.ac: Find libxml2 headers in Xcode SDK dir on Darwin.
3593 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3595         Use posix_openpt instead of openpty on Darwin
3597         * configure.ac (PTY_ITERATION, FIRST_PTY_LETTER, PTY_OPEN)
3598         (PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF): Remove
3599         Darwin-specific definitions.  Use posix_openpt instead.
3601 2015-12-30  Shakthi Kannan  <shakthimaan@gmail.com>
3603         Document support for ':documentation' in Lisp mode
3605         * lisp/emacs-lisp/lisp-mode.el (lisp-string-in-doc-position-p)
3606         (lisp-string-after-doc-keyword-p)
3607         (lisp-font-lock-syntactic-face-function): Add doc strings.
3609 2015-12-30  Shakthi Kannan  <shakthimaan@gmail.com>
3611         Document new features of TeX mode
3613         * doc/emacs/text.texi (TeX Print): Document
3614         'tex-print-file-extension'.
3615         * doc/emacs/programs.texi (Misc for Programs): Document support
3616         for Prettify Symbols mode in TeX mode.
3618 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
3620         Clarify docs of hscroll in RTL text
3622         * doc/lispref/windows.texi (Horizontal Scrolling): Clarify the
3623         meaning of a window's horizontal scroll amount for RTL paragraphs.
3625 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
3627         Fix rendering of HTML pages that use character composition
3629         * src/indent.c (Fvertical_motion): Fix the case when point starts
3630         in the middle of a composition, as in shr-vertical-motion.
3631         (Bug#22250)
3633 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
3635         Avoid some compiler warnings in w32.c
3637         * src/w32.c (codepage_for_filenames, crlf_to_lf)
3638         (ansi_encode_filename, socket_to_fd, sys_write)
3639         (check_windows_init_file): Avoid compiler warnings about
3640         differences in pointer signedness.
3642 2015-12-29  Dmitry Gutov  <dgutov@yandex.ru>
3644         Undo ill-advised change
3646         * lisp/progmodes/xref.el (xref-collect-matches): Undo
3647         ill-advised change.  The hits come in the order that `find'
3648         produces them in, which isn't alphabetical.
3650 2015-12-29  Dmitry Gutov  <dgutov@yandex.ru>
3652         Unbreak completion in python-mode buffers
3654         * lisp/progmodes/python.el (python-shell-completion-at-point):
3655         Unbreak in python-mode buffers.
3657 2016-01-09  Andrew Hyatt  <ahyatt@gmail.com>
3659         Adding example replies to bug-triage.
3661         * admin/notes/bug-triage: Added example replies. Also, as requested,
3662           making the process notes into more of a checklist.
3664 2016-01-08  Andrew Hyatt  <ahyatt@gmail.com>
3666         Rename the notes/admin/triage file to bug-triage.
3668         * CONTRIBUTE: Change reference to the triage file name.
3669         * admin/notes/triage: Rename file to admin/notes/bug-triage.
3671 2016-01-07  Glenn Morris  <rgm@gnu.org>
3673         Allow creation of loaddefs files without timestamps.
3675         * lisp/emacs-lisp/autoload.el (autoload-timestamps): New variable.
3676         (autoload-generate-file-autoloads, update-directory-autoloads):
3677         If autoload-timestamps is nil, write "t" instead of file timestamp.
3678         (autoload-find-destination, update-directory-autoloads):
3679         If timestamp is "t", use the modtime of the output file instead.
3681 2016-01-06  Glenn Morris  <rgm@gnu.org>
3683         Doc tweaks.
3685         * lisp/calendar/cal-hebrew.el (diary-hebrew-list-entries):
3686         * lisp/calendar/cal-iso.el (calendar-iso-to-absolute)
3687         (calendar-iso-from-absolute):
3688         * lisp/calendar/cal-tex.el (cal-tex-comment):
3689         * lisp/calendar/solar.el (calendar-time-display-form): Doc tweaks.
3691 2016-01-06  Glenn Morris  <rgm@gnu.org>
3693         Build tweaks related to tags files.
3695         * lib-src/Makefile.in (tagsfiles): New variable.
3696         (TAGS): Also depend on the source files.  Use our own etags program.
3697         * lisp/Makefile.in (ETAGS): Add EXEEXT.
3698         (lisptagsfiles1, lisptagsfiles2, lisptagsfiles3, lisptagsfiles4):
3699         Remove.
3700         (tagsfiles): New, replacing lisptagsfiles1 etc.
3701         Remove irrelevant source files here rather than in the TAGS rule.
3702         (${ETAGS}): New rule.
3703         (TAGS): Also depend on the etags executable.
3704         * lwlib/Makefile.in (EXEEXT): New, set by configure.
3705         (ETAGS): Add EXEEXT.
3706         (${ETAGS}): New rule.
3707         (ctagsfiles): Use "wildcard".
3708         (TAGS): Also depend on the etags executable.
3709         * nt/Makefile.in (ETAGS, tagsfiles): New variables.
3710         (${ETAGS}): New rule.
3711         (TAGS): Fix dependencies.
3712         * oldXMenu/Makefile.in (EXEEXT): New, set by configure.
3713         (ETAGS): New variable, replacing $TAGS.  Use our own etags program.
3714         Remove "-t" argument.
3715         (${ETAGS}): New rule.
3716         (tagsfiles): New variable.
3717         (TAGS): New rule, with proper dependencies.
3718         * src/Makefile.in (ETAGS): Add EXEEXT.  Add a build rule.
3719         (ctagsfiles1, ctagsfiles2): Use "wildcard".
3720         (ctagsfiles3): Remove.
3721         (TAGS): Depend on etags.
3722         (../lisp/TAGS, $(lwlibdir)/TAGS): Let the rules in the relevant
3723         directories decide if updates are needed.
3725 2016-01-06  Glenn Morris  <rgm@gnu.org>
3727         * lisp/Makefile.in (CAL_SRC): Skip calendar.el.
3729 2016-01-06  Glenn Morris  <rgm@gnu.org>
3731         * test/lisp/emacs-lisp/package-tests.el
3733         (package-test-macro-compilation): Fixup branch merge.
3735 2016-01-05  Eli Zaretskii  <eliz@gnu.org>
3737         Fix fallout from merging emacs-25 branch in test/
3739         * .gitignore: Update for the new place of biditest.txt.
3740         * test/automated/: Directory removed.  All files moved to their
3741         proper places.
3742         * test/etags/: Directory removed.  All files moved to their proper
3743         places.
3744         * test/automated/url-parse-tests.el: File removed; it was an exact
3745         copy of the same file in test/lisp/url/.
3746         * test/automated/url-expand-tests.el: Moved to test/lisp/url/.
3748 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
3750         Spelling fixes.
3752 2016-01-04  Daniel Colascione  <dancol@dancol.org>
3754         Let users disable unsafe signal handling code
3756         * src/keyboard.c (syms_of_keyboard): New user variables
3757         `attempt-stack-overflow-recovery' and
3758         `attempt-orderly-shutdown-on-fatal-signal'.
3759         * src/sysdep.c (stack_overflow): Check
3760         `attempt-stack-overflow-recovery'.
3761         * src/emacs.c (terminate_due_to_signal): Check
3762         `attempt-orderly-shutdown-on-fatal-signal'.
3764 2016-01-03  Michael Albinus  <michael.albinus@gmx.de>
3766         * configure.ac: Add error message for gfile on Nextstep.
3768 2016-01-03  John Wiegley  <johnw@newartisans.com>
3770         Merge branch 'emacs-25-merge'
3772 2016-01-02  Vincent Belaïche  <vincentb1@users.sourceforge.net>
3774         Align textually on fix done for emacs-25 branch for bug#21054
3776         * lisp/ses.el (ses-check-curcell): Suppress ``temporary fix'' comment,
3777         and useless `(if t ...)' in order to align textually on fix done for
3778         emacs-25 branch for bug#21054.
3780 2016-01-02  K. Handa  <handa@gnu.org>
3782         support rendering of wider range of combinging characters by ftfont backend
3784         * lisp/language/hebrew.el (hebrew-shape-gstring): If the font backend
3785         supports rendering of combining characters, call
3786         font-shape-gstring.
3788         * src/font.c (Ffont_get): Handle `combining-capability' property.
3789         (syms_of_font): New symbol ":combining-capability'.
3791         * src/font.h (struct font_driver): New member combining_capability.
3793         * src/ftfont.c: Include "category.h".
3794         (ftfont_driver): Initialize combining_capability to
3795         ftfont_combining_capability.
3796         (ftfont_shape_by_flt): If OTF is null, try to find a suitable
3797         FLT in advance.
3798         (ftfont_combining_capability): New function.
3800 2016-01-01  Andrew Hyatt  <ahyatt@gmail.com>
3802         Add notes on bug triage procedure
3804         * CONTRIBUTE: In section on the issue tracker, point to new triage file.
3805         * admin/notes/triage: New file explaining triage procedure.
3807 2015-12-30  Vincent Belaïche  <vincentb1@users.sourceforge.net>
3809         Correct ses-rename-cell cursor-intangible text prop updating.
3811         There were two problems:
3813         - First ses-rename-cell has to work when called non interactively
3814           (with non-nil CELL argument), so in this case the start pos of
3815           put-text-property cannot be plainly (point), you need a
3816           ses-goto-print call before
3818         - Second, the range itself was computed erronously, only the first
3819           char was affected instead of the full cell width. This was not
3820           noticeable prior to changes (Deprecate `intangible' and
3821           `point-entered' properties) made by Stefan on 2015-04-13T19:51:15Z
3823         * lisp/ses.el (ses-rename-cell): Correct computation of position range
3824         to which the 'cursor-intangible text property has to be set to cell
3825         new name.
3827 2015-12-30  Vincent Belaïche  <vincentb1@users.sourceforge.net>
3829         Don't fake empty cells value by "" when printing with a lambda.
3831         When using a lambda expression printer function the user should be
3832         free to format differently a really empty cell, ie. containing nil,
3833         from a cell containing an empty string "".
3835         * ses.el (ses-call-printer): Replace `(or value "")' by just `value'
3836         in the case of a lambda expression printer function.
3838         * ses.texi (Printer functions): Add example and description about
3839         lambda expression printer function handling all the possible values,
3840         including unexpected ones.
3842 2015-12-30  Vincent Belaïche  <vincentb1@users.sourceforge.net>
3844         Quick temporary hack to fix curcell refreshing.
3846         The problem was caused by change: 2015-04-13 Deprecate `intangible'
3847         and `point-entered' properties. The problem is that this change has
3848         removed the (setq ses--curcell t) setting in the ses-command-hook
3849         function.
3851         * ses.el (ses-check-curcell): replace `(eq ses--curcell t)' by just `t' as
3852         a condition to call function `ses-set-curcell'. Comment this as a quick
3853         temporary hack to make it work, as I don't know yet whether a definite
3854         correction would be to make the ses-set-curcell at every ses-check-curcell,
3855         or to revert to the previous approach, ie marking ses--curcell as out-of-date
3856         at every potentially cursor motion command.
3858 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
3860         Restrictive URL checking tweaks
3862         * lisp/net/eww.el (eww): Check whether the domain is
3863         restrictive instead of the string
3864         (http://македонија.icom.museum is restrictive even if each
3865         part is from a different script).
3867 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
3869         New function `puny-highly-restrictive-domain-p'
3871         * lisp/net/puny.el (puny-highly-restrictive-string-p): Rename.
3872         (puny-highly-restrictive-domain-p): New function.
3874 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
3876         eww build fix (require puny)
3878 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
3880         Transform non-restrictive domains to punycode for display
3882         * lisp/net/eww.el (eww): Check whether the domain is Highly
3883         Restrictive in the Unicode IDNA sense.
3885 2015-12-30  John Wiegley  <johnw@newartisans.com>
3887         Merge emacs-25 into master (using imerge)
3889 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
3891         Fix typos in CC Mode manual
3893         * doc/misc/cc-mode.texi (c-offsets-alist, Style Variables): Fix
3894         typos.  (Bug#22267)
3896 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
3898         Avoid assertion violations in compact_font_cache_entry
3900         * src/alloc.c (compact_font_cache_entry): Don't use VECTORP to
3901         avoid assertion violation in ASIZE.  (Bug#22263)
3903 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
3905         Fix filling text with bidirectional characters in shr.el
3907         * lisp/net/shr.el (shr-insert-document): Bind
3908         bidi-display-reordering to nil while filling lines.  This is
3909         required for when a line includes characters whose bidi
3910         directionality is opposite to the base paragraph direction,
3911         because columns are counted in the logical order.  (Bug#22250)
3913 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
3915         Further Unicode restrictive fixups
3917         * puny.el (puny-highly-restrictive-p): Include the extra
3918         identifier characters from table 3.
3920 2015-12-29  Martin Rudalics  <rudalics@gmx.at>
3922         * src/xfns.c (x_create_tip_frame): Process alpha parameter.
3924 2015-12-29  Michael Albinus  <michael.albinus@gmx.de>
3926         Sync with Tramp 2.2.13
3928         * doc/misc/trampver.texi: Change version to "2.2.13.25.1".
3930         * lisp/net/tramp-compat.el (tramp-compat-delete-dups):
3931         Use `tramp-compat-funcall'.
3933         * lisp/net/tramp-gvfs.el (tramp-gvfs-parse-device-names):
3934         Make `split-string' call compatible with older Emacsen.
3936         * lisp/net/trampver.el: Change version to "2.2.13.25.1".
3938 2015-12-29  Lambda Coder  <sjLambda@gmail.com>
3940         * doc/misc/tramp.texi: Editorial revisions to the Tramp manual
3942 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
3944         Mention that tls.el is secure by default, and will fail
3946 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
3948         Make tls.el use trustfiles by default
3950         * lisp/net/tls.el (tls-program): Add a certfile by default (bug#21227).
3951         (open-tls-stream): Insert the trustfile by looking at
3952         `gnutls-trustfiles'.
3954 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
3956         Refactor out gnutls-trustfiles
3958         * lisp/net/gnutls.el (gnutls-trustfiles): Refactor out for reuse by tls.el.
3960 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
3962         Remove --insecure from gnutls-cli invocation
3964         * tls.el (tls-program): Default to using secure TLS
3965         connections (bug#19284).
3967 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
3969         Add a new function to say whether a string is restrictive
3971         * puny.el (puny-highly-restrictive-p): New function.
3973 2015-12-28  Paul Eggert  <eggert@cs.ucla.edu>
3975         Spelling fix
3977 2015-12-28  Paul Eggert  <eggert@cs.ucla.edu>
3979         Port report-emacs-bug to deterministic builds
3981         * lisp/mail/emacsbug.el (report-emacs-bug): Future-proof the
3982         recent "built on" change to deterministic builds where
3983         emacs-build-system will be nil.  See:
3984         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg01369.html
3986 2015-12-28  Jose A. Ortega Ruiz  <jao@gnu.org>  (tiny change)
3988         Fix URL auth error message
3990         * lisp/url/url-http.el (url-http-handle-authentication): Make the error
3991         message more correct (bug#20069).
3993 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
3995         Mention the new puny.el library
3997 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
3999         IDNA-related fixes for the URL library
4001         * lisp/url/url-http.el (url-http-create-request): IDNA-encode
4002         the Host: header.
4004         * lisp/url/url-util.el (url-encode-url): Don't hex-encode
4005         domain names, but leave them as UTF-8, so that they can be
4006         IDNA-encoded later when contacting the host.
4008 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
4010         IDNA-encode all domain names in `open-network-stream'
4012         * network-stream.el (open-network-stream)
4013         (network-stream-open-plain, network-stream-open-starttls):
4014         IDNA-encode all domain names, if needed.
4016 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
4018         Fix puny-encoding all-non-ASCII domains
4020         * puny.el (puny-encode-string): Fix the all-non-ASCII encoding case.
4022 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
4024         * lisp/net/shr.el (shr-next-link): Don't bug out on adjacent links.
4026 2015-12-28  Tom Tromey  <tom@tromey.com>
4028         set :safe on css-indent-offset
4030         * lisp/textmodes/css-mode.el (css-indent-offset): Add :safe 'integerp.
4032 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
4034         * eww.el (eww-mode): Remove superfluous bidi reset.
4036 2015-12-28  James Stout  <james.wolf.stout@gmail.com>  (tiny change)
4038         Make chunked encoding trailer detection more compliant
4040         * lisp/url/url-http.el
4041         (url-http-chunked-encoding-after-change-function): Make
4042         trailer detection more compliant (bug#16345).
4044 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
4046         Reconnect erc even on server errors
4048         * lisp/erc/erc-backend.el (erc-server-reconnect-p): Try to
4049         reconnect even if a server error has occurred (bug#18527).
4051 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
4053         Fix punycode short circuit logic
4055         * puny.el (puny-encode-domain): Fix short-circuit logic.
4057 2015-12-28  Martin Rudalics  <rudalics@gmx.at>
4059         Fix Bug#10873 in `report-emacs-bug'
4061         * lisp/mail/emacsbug.el (report-emacs-bug): If
4062         `report-emacs-bug-no-explanations' is nil, make sure we can show
4063         mail and warnings buffer on this frame (Bug#10873).
4065 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
4067         IDNA speed up
4069         * puny.el (puny-encode-domain): Make the common non-IDNA case faster
4071 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
4073         Add IDNA domain encode/decode functions
4075         * puny.el (puny-decode-domain): New function.
4076         (puny-encode-domain): Ditto.
4077         (puny-decode-digit): Fix digit decoding error.
4079 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
4081         Rename idna.el to puny.el
4083         * puny.el: Renamed from idna.el to avoid name collisions with
4084         the external idna.el library.
4086 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
4088         Always reset the bidi direction
4090         * eww.el (eww-display-html): Always reset the bidi direction
4091         to `left-to-right' (bug#22257).
4093 2015-12-28  Alan Mackenzie  <acm@muc.de>
4095         Allow line comments ending with escaped NL to be continued to the next line.
4097         Use this in C, C++, and Objective C Modes.  Fixes bug#22246
4099         * src/syntax.c (comment-end-can-be-escaped): New buffer local variable.
4100         (forw-comment, back-comment): On encountering an end of comment character,
4101         test whether it is escaped when `comment-end-can-be-escaped' is non-nil.
4103         * doc/lispref/syntax.texi (Control Parsing): Describe
4104         `comment-end-can-be-escaped'.
4106         * etc/NEWS (Lisp Changes): Describe `comment-end-can-be-escaped'.
4108         * lisp/progmodes/cc-langs.el: New c-lang-setvar `comment-end-can-be-escaped'.
4110 2015-12-28  Katsumi Yamaoka  <yamaoka@jpl.org>
4112         lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): Keep old Emacsen compatibility
4114         * lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe):
4115         Don't use split-string with 4th arg for old Emacsen compatibility.
4117 2015-12-27  Dmitry Gutov  <dgutov@yandex.ru>
4119         Rename project-library-roots to project-external-roots
4121         * lisp/progmodes/project.el (project-library-roots): Rename to
4122         project-external-roots.
4123         (project-library-roots-function): Rename to
4124         project-vc-external-roots-function.  Only use it in the VC
4125         backend, for now.  Update project-external-roots accordingly.
4126         (project-vc-library-roots): Remove.
4127         (project-or-libraries-find-regexp):
4128         Rename to project-or-external-find-regexp.
4130         * lisp/progmodes/elisp-mode.el (elisp-library-roots):
4131         Rename to elisp-load-path-roots.
4133         * lisp/progmodes/etags.el (etags-library-roots): Remove.  Use
4134         an anonymous function for the default value of
4135         project-vc-external-roots-function.
4137 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
4139         * idna.el (idna-decode-string-internal): Implement decoding.
4141 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
4143         Further IDNA tweaks
4145         (idna-encode-string): Make idna-encode-string safe for
4146         non-ASCII use.
4148 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
4150         Clean up the code slightly
4152 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
4154         Added basic idna encoding support
4156         * lisp/net/idna.el: New file.
4158 2015-12-27  Vivek Dasmohapatra  <vivek@etla.org>
4160         Disconnection fixes for erc
4162         * lisp/erc/erc-backend.el (erc-server-reconnect-p): Don't
4163         reconnect if the user has disconnected explicitly (bug#4589).
4165 2015-12-27  Thomas Riccardi  <riccardi.thomas@gmail.com>  (tiny change)
4167         Further erc asynch fixes
4169         * lisp/erc/erc-backend.el (erc-process-sentinel-2): Make
4170         erc-server-connect to return even if the connection is not
4171         ready.  Then erc-open and erc-server-reconnect do the
4172         same. (bug#5650).
4174 2015-12-27  Vivek Dasmohapatra  <vivek@etla.org>
4176         Make erc connect asynchronously
4178         * lisp/erc/erc-backend.el (erc-server-reconnect): Use it to
4179         reconnect asynchronously.
4181         * lisp/erc/erc-backend.el (erc-open-network-stream): New function (bug#5650).
4183 2015-12-27  Deniz Dogan  <deniz@dogan.se>
4185         Clear erc user list upon disconnection
4187         * lisp/erc/erc-backend.el (erc-process-sentinel): Clear channel user
4188         lists upon disconnection.  This prevents invalid channel
4189         user lists when reconnecting (bug#10947).
4191 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
4193         Don't bug out in erc after waking from sleep
4195         * erc-backend.el (erc-server-send-ping): If the server has
4196         closed connection, this may already have been detected and
4197         `erc-server-last-received-time' has been set to nil (bug#13608).
4199 2015-12-27  David Edmondson  <dme@dme.org>
4201         Proxy error in erc with multiple clients
4203         * lisp/erc/erc.el (erc-channel-receive-names): Fix errors
4204         generated when multiple IRC clients talk to a single IRC proxy
4205         (bug#19034).
4207 2015-12-27  Dima Kogan  <dima@secretsauce.net>
4209         Ensure that we don't have several timers in erc
4211         * lisp/erc/erc-backend.el (erc-server-setup-periodical-ping): Checks
4212         for existing timers in the alist before adding new ones.  If a
4213         timer already exists, it is cancelled and
4214         overwritten. (bug#19292).
4216 2015-12-27  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
4218         * lisp/gnus/mml-sec.el: Fix warnings by adding autoloads
4219         (bug#18718).
4221 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
4223         * lisp/erc/erc-log.el (erc-log-setup-logging): Insert the previous log
4224         at the start of the buffer, not at the end (bug#20496).
4226 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
4228         * lisp/net/eww.el (eww-setup-buffer): Restore left-to-right defaults.
4230 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
4232         Don't join erc channels doubly
4234         * erc-join.el (erc-autojoin-channels): Don't join channels
4235         more than once (if you have several nicks) (bug#20695).
4237 2015-12-27  Eli Zaretskii  <eliz@gnu.org>
4239         Avoid leaving "ghost" of mouse pointer on MS-Windows
4241         * src/w32term.c (frame_set_mouse_pixel_position):
4242         * src/w32fns.c (Fw32_mouse_absolute_pixel_position): Momentarily
4243         disable "mouse trails" when moving the mouse pointer.  (Bug#22247)
4244         * src/w32term.c (frame_set_mouse_pixel_position): Include
4245         w32common.h.
4247 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
4249         * lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): Fix typo in last check-in.
4251 2015-12-27  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
4253         Identify unsafe combinations of Bcc and encryption
4255         * lisp/gnus/gnus-util.el (gnus-subsetp): New function
4256         * lisp/gnus/mml-sec.el (mml-secure-safe-bcc-list): New variable
4257         * lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): New function
4259 2015-12-27  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
4261         Fix auth source lookups from erc with port numbers
4263         * lisp/erc/erc.el (erc-open): `auth-source' wants strings, not port
4264         numbers (bug#20541).
4266 2015-12-27  Fran Litterio  <flitterio@gmail.com>
4268         Run erc-kill-channel-hook always on exit
4270         * lisp/erc/erc.el (erc-kill-buffer-function): Run erc-kill-channel-hook
4271         when erc-kill-queries-on-quit is set (bug#21187).
4273 2015-12-26  Paul Eggert  <eggert@cs.ucla.edu>
4275         Spelling fix
4277         * test/automated/url-parse-tests.el:
4278         (url-generic-parse-url/same-document-reference):
4279         Rename from url-generic-parse-url/same-decument-reference.
4281 2015-12-26  Paul Eggert  <eggert@cs.ucla.edu>
4283         Reword initial *scratch* for brevity, appearance
4285         * lisp/startup.el (initial-scratch-message):
4286         Reword to avoid apostrophes, and to make it shorter.
4287         See the thread starting in:
4288         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg01241.html
4290 2015-12-26  Leo Liu  <sdl.web@gmail.com>
4292         Add ert-deftest to lisp-mode.el
4294         * lisp-mode.el (lisp-imenu-generic-expression,
4295           lisp-el-font-lock-keywords-1): Add ert-deftest.
4297 2015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
4299         Mark imap changes as not needing doc changes
4301         * imap.el (imap-ssl-open): Remove
4303 2015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
4305         Use built-in encryption in imap.el
4307         * lisp/net/imap.el (imap-ssl-program): Remove (bug#21134).
4308         (imap-starttls-open): Use open-network-stream instead of starttls.el.
4309         (imap-tls-open): Use open-network-stream instead of tls.el.
4311 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
4313         Don't try using /bin/sh in artist.el on MS-Windows
4315         * lisp/textmodes/artist.el (artist-figlet-get-font-list-windows):
4316         New function.
4317         (artist-figlet-choose-font): Use it on MS-Windows and MS-DOS.
4318         (Bug#20167)
4320 2015-12-26  Wolfgang Jenkner  <wjenkner@inode.at>
4322         Always define gmalloc etc. in src/gmalloc.c
4324         This is a work-around to prevent the compiler from using semantic
4325         knowledge about malloc for optimization purposes.  E.g., gcc 5.2
4326         with -O2 replaces most of calloc's definition by a call to calloc;
4327         see Bug#22085.
4328         * src/gmalloc.c [!HYBRID_MALLOC] (malloc, realloc, calloc)
4329         (aligned_alloc, free): Do not undef.  Instead, define these as
4330         functions (perhaps renamed to gmalloc etc.) in terms of gmalloc etc.
4332 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
4334         Fix documentation of browse-url browser-related functions
4336         * lisp/net/browse-url.el (browse-url)
4337         (browse-url-default-browser, browse-url-default-windows-browser)
4338         (browse-url-default-macosx-browser, browse-url-chromium)
4339         (browse-url-kde, browse-url-text-xterm): Clarify the usage of ARGS
4340         and NEW-WINDOW arguments in these functions.  (Bug#19421)
4342 2015-12-26  Paul Eggert  <eggert@cs.ucla.edu>
4344         Propagate Bug#14412 fix to backtrace_eval_unrewind
4346         * src/eval.c (unbind_to): Redo so that the FALLTHROUGH!! comment
4347         becomes accurate again. This shouldn’t affect behavior.
4348         (backtrace_eval_unrewind): Apply the recent unbind_to fix here, too.
4350 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
4352         Don't produce non-ASCII characters in *scratch*
4354         * lisp/startup.el (initial-scratch-message): Quote apostrophes to
4355         avoid producing non-ASCII characters in the *scratch* buffer's
4356         commentary.
4358 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
4360         Document changes in 'compare-windows'
4362         * lisp/vc/compare-w.el (compare-windows-removed)
4363         (compare-windows-added): Doc fix.
4365         * doc/emacs/files.texi (Comparing Files): Document the changes in
4366         window selection by 'compare-windows'.
4368 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
4370         Document 'vc-annotate-background-mode'
4372         * doc/emacs/maintaining.texi (Old Revisions): Document
4373         'vc-annotate-background-mode'.
4375 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
4377         Document 'vc-region-history'
4379         * doc/emacs/maintaining.texi (VC Change Log): Document
4380         'vc-region-history'.
4382 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
4384         Improve documentation of 'vc-push'
4386         * doc/emacs/maintaining.texi (Pulling / Pushing): Expand and
4387         improve the documentation of 'vc-push'.
4389         * lisp/vc/vc.el (vc-pull, vc-push): Doc fix.
4391 2015-12-26  Alain Schneble  <a.s@realize.ch>
4393         Include the tests for the URL parsing fixes
4395 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
4397         Document 'url-user-agent'.
4399         * lisp/url/url-http.el (url-user-agent): Move from here...
4400         * lisp/url/url-vars.el (url-user-agent): ...to here.  This is to
4401         keep all the URL defcustoms in one place, and also have it defined
4402         whenever the URL library is loaded.
4404         * doc/misc/url.texi (Customization): Document 'url-user-agent'.
4406 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
4408         Document protocols supported by URL library via Tramp
4410         * doc/misc/url.texi (Tramp): New node, describes the URL schemes
4411         supported via Tramp.
4412         (Supported URL Types, file/ftp, rlogin/telnet/tn3270): Mention
4413         Tramp.
4415 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
4417         Document changes in Shell-script mode
4419         * lisp/progmodes/sh-script.el (sh-mode, sh-set-shell): Document
4420         the 'sh-shell' file-local variable.
4421         (top level): Add an auto-load form to avoid byte-compiler warning
4422         about 'comint-send-string'.
4424 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
4426         Fix documentation of 'ses-define-local-printer'
4428         * doc/misc/ses.texi (Printer functions): Fix whitespace between
4429         sentences and punctuation.  Add an index entry for
4430         'ses-define-local-printer'.
4432 2015-12-26  Shakthi Kannan  <shakthimaan@gmail.com>
4434         Document 'ert-summarize-tests-batch-and-exit'
4436         * doc/misc/ert.texi (Running Tests in Batch Mode): Document
4437         'ert-summarize-tests-batch-and-exit'.
4439 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
4441         Avoid assertion violation in unbind_to
4443         * src/eval.c (unbind_to) <SPECPDL_LET>: Avoid assertion violation
4444         if we get here with an object that is not a symbol.  (Bug#14412)
4446 2015-12-25  Andreas Schwab  <schwab@linux-m68k.org>
4448         Don't treat /foo/bar:mumble as ange-ftp address
4449         * lisp/net/browse-url.el (browse-url-filename-alist): Match colons
4450         only in the first component.  (bug#5362)
4452 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
4454         Make sure *scratch* etc. use forward slashes in its default-directory
4456         * lisp/startup.el (normal-top-level): On MS-Windows, convert
4457         backslashes to forward slashes while decoding default-directory
4458         of the initially-created buffers.
4460 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
4462         Restore info about the build host in bug reports
4464         * lisp/mail/emacsbug.el (report-emacs-bug): Report the system on
4465         which Emacs was built.  This is important information for
4466         investigating bug reports reported by users who don't build their
4467         Emacs.
4469 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
4471         Fix bootstrap broken by changes related to OS X file-name encoding
4473         * lisp/international/ucs-normalize.el (eval-when-compile): Make
4474         sure char-code-property-alist includes elements that allow access
4475         to 'decomposition' and 'canonical-combining-class' Unicode
4476         properties, as compiling ucs-normalize.el requires that.
4477         * lisp/loadup.el (featurep 'ns): Load ucs-normalize and ns-win
4478         only of charprop.el was already loaded.
4480         * src/Makefile.in ($(lispsource)/international/ucs-normalize.elc):
4481         New order-only dependency.
4483 2015-12-25  Leo Liu  <sdl.web@gmail.com>
4485         * lisp/ido.el (ido-add-virtual-buffers-to-list):
4486         Use bookmark-get-filename.
4488 2015-12-25  Michael Albinus  <michael.albinus@gmx.de>
4490         Make tramp-test29-vc-registered more robust
4492         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
4493         Move `bzr' case down.  Skip test when `vc-create-repo' fails.
4494         Remove instrumentation.
4496 2015-12-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4498         * lisp/term/x-win.el (x-gtk-stock-map): Fix typo.
4500 2015-12-23  Katsumi Yamaoka  <yamaoka@jpl.org>
4502         Fix `gnus-union' so as to behave like `cl-union'
4504         * lisp/gnus/gnus-group.el (gnus-group-prepare-flat):
4505         Make gnus-union use `equal' to compare items in lists.
4507         * lisp/gnus/gnus-util.el (gnus-union):
4508         Make it behave like cl-union partially.
4510 2015-12-23  Paul Eggert  <eggert@cs.ucla.edu>
4512         Fix dired.c typo with ptrdiff_t vs Lisp_Object
4514         * src/dired.c (file_name_completion): Don't assume Lisp_Object is
4515         an integer type, fixing a problem introduced in the recent fix for
4516         Bug#22169.
4518 2015-12-23  Eli Zaretskii  <eliz@gnu.org>
4520         Document default process sentinel more prominently
4522         * doc/lispref/processes.texi (Asynchronous Processes): Mention the
4523         defaults for process filter and sentinel.  Provide cross-references.
4524         (Process Information): Provide cross-references to where filters
4525         and sentinels are described.
4526         (Filter Functions): Add an index entry for "default filter".
4527         (Sentinels): Add a few status messages not documented previously.
4528         Resolve the "killed" confusion.  Document and describe the default
4529         sentinel.  (Bug#22220)
4531 2015-12-23  Eli Zaretskii  <eliz@gnu.org>
4533         Fix file-name completion on OS X
4535         * src/dired.c (file_name_completion): Reject false matches due to
4536         file-name-coding-systems that decompose characters when encoding
4537         file names, by comparing decoded file names as well.  (Bug#22169)
4538         (syms_of_dired) <Qdecomposed_characters>: New DEFSYM.
4540         * lisp/international/ucs-normalize.el (utf-8-hfs): Give it a
4541         non-nil 'decomposed-characters' property.
4543 2015-12-23  Anders Lindgren  <andlind@gmail.com>
4545         File-name completion of non-ASCII characters on OS X (bug#22169)
4547         The coding system `utf-8-nfd', locally defined in ns-win.el,
4548         didn't provide a :pre-write-conversion method, causing file name
4549         completion of non-ASCII characters to fail.  Solved by using the
4550         `utf-8-hfs' coding system provided by `ucs-normalize'.
4552         * lisp/loadup.el: Load international/ucs-normalize (when building
4553         for ns).
4555         * lisp/term/ns-win.el (utf-8-nfd): Made `utf-8-nfd' as alias for
4556         `utf-8-hfs' and removed the old implementation.  Set `utf-8-hfs'
4557         as the file name coding system.
4559         * src/nsfns.m (ns-convert-utf8-nfd-to-nfc): Removed.
4561 2015-12-22  Tom Tromey  <tom@tromey.com>
4563         Fix bug #18588 by making bug-reference-bug-regexp more lenient
4565         * lisp/progmodes/bug-reference.el (bug-reference-bug-regexp): Accept
4566         "bug NNNN".  (Bug #18588)
4568 2015-12-22  Tom Tromey  <tom@tromey.com>
4570         add some cl-* aliases to lisp-mode imenu
4572         * (lisp-imenu-generic-expression): Add cl-define-compiler-macro,
4573         cl-defgeneric, and cl-defmethod.
4575 2015-12-22  Tom Tromey  <tom@tromey.com>
4577         Make a variable buffer-local
4579         * lisp/generic-x.el (generic-rul-mode-setup-function): Make
4580         font-lock-syntax-table buffer-local.  (Bug #21627)
4582 2015-12-22  Eli Zaretskii  <eliz@gnu.org>
4584         Fix decoding of text in URLs retrieved by EWW
4586         * lisp/net/eww.el (eww-render): Pass 'charset' to
4587         'eww-display-raw'.  Use the value of 'last-coding-system-used', if
4588         non-nil, to set 'buffer-file-coding-system' of the buffer where we
4589         show the URL.
4590         (eww-display-html, eww-display-raw): Decode the text correctly,
4591         using the charset found in the headers, and defaulting to UTF-8.
4592         If the user told us to use a specific encoding, override the
4593         charset from the headers.  (Bug#22222)
4595 2015-12-22  Alan Mackenzie  <acm@muc.de>
4597         Fix a coding error in c-forward-<>-arglist-recur.  Fixes bug#22156
4599         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): Remove unused
4600         variable `tmp'.
4601         After a failed search for a matching ">", restore point before continuing.
4603 2015-12-22  Michael Albinus  <michael.albinus@gmx.de>
4605         Instrument Tramp tests
4607         * test/automated/tramp-tests.el (tramp-test29-vc-registered)
4608         (tramp--test-utf8): Instrument tests.
4610 2015-12-22  Martin Rudalics  <rudalics@gmx.at>
4612         Fix `display-buffer' call in `display-message-or-buffer' (Bug#22221)
4614         * lisp/simple.el (display-message-or-buffer): Call
4615         `display-buffer' with ACTION instead of NOT-THIS-WINDOW
4616         (Bug#22221).
4618 2015-12-21  Juri Linkov  <juri@linkov.net>
4620         * lisp/saveplace.el (toggle-save-place, save-place-to-alist)
4622         (save-places-to-alist, save-place-dired-hook):
4623         Check for dired-subdir-alist.  (Bug#19851)
4625 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
4627         Add FIXME comment re stack overflow and modules
4629 2015-12-20  Paul Eggert  <eggert@cs.ucla.edu>
4631         Revert some recent emacs-module commentary
4633         Most of the recently-added commentary was incorrect, due to the
4634         possibility of stack overflow.
4636 2015-12-20  Paul Eggert  <eggert@cs.ucla.edu>
4638         Spelling fix: prefer "cooperate" to "co-operate"
4640 2015-12-20  Paul Eggert  <eggert@cs.ucla.edu>
4642         Port undo fixes to -fno-common
4644         Port recent fix for Bug#21968 to platforms like 'gcc -fno-common'.
4645         * src/keyboard.c, src/keyboard.h (point_before_last_command_or_undo)
4646         (buffer_before_last_command_or_undo):
4647         Declare in keyboard.h, and define in keyboard.c,
4648         instead of assuming the traditional Unix relaxed ref-def linkage.
4650 2015-12-20  Philipp Stephani  <phst@google.com>
4652         Improve commentary for emacs-module.c
4654         * src/lisp.h: Document emacs-module.c assumptions about EQ and NILP.
4655         * src/emacs-module.c (module_non_local_exit_get): Document that we
4656         cannot use the current implementation.
4657         (module_is_not_nil, module_eq): Document assumptions about EQ and
4658         NILP.
4660 2015-12-20  Michael Albinus  <michael.albinus@gmx.de>
4662         Suppress test on Mac OS X
4664         * test/automated/tramp-tests.el (tramp--test-darwin-p): New defun.
4665         (tramp--test-utf8): Use it.
4667 2015-12-20  Alan Mackenzie  <acm@muc.de>
4669         Merge branch 'scratch/follow' into emacs-25
4671         This allows Isearch, etc., to work well when Follow Mode is active.
4673 2015-12-19  Michael Albinus  <michael.albinus@gmx.de>
4675         * lisp/net/tramp-sh.el (tramp-get-ls-command-with-w-option):
4676         Improve check.
4678 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
4680         Fix last commit
4682         * doc/emacs/rmail.texi (Rmail Deletion): Document new behavior of 'u'
4683         with numeric argument.
4685 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
4687         Document new features of Rmail
4689         * doc/emacs/rmail.texi (Rmail Summary Edit, Rmail Deletion):
4690         Document new behavior of 'd' and 'C-d' with numeric argument.
4691         (Rmail Display): Document the rendering of HTML MIME parts.
4693 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
4695         Improve documentation of new cl-lib functions
4697         * doc/misc/cl.texi (Predicates on Numbers, Numerical Functions):
4698         Fix wording.
4700 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
4702         Document the new feature of 'minibuffer-with-setup-hook'
4704         * lisp/files.el (minibuffer-with-setup-hook): Clarify how FUN is
4705         added to `minibuffer-setup-hook'.
4707 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
4709         Document new features of Font Lock
4711         * doc/lispref/modes.texi (Other Font Lock Variables): Document
4712         'font-lock-flush-function' and 'font-lock-ensure-function'.
4713         (Font Lock Basics): Document the basic fontification functions
4714         referenced in "Other Font Lock Variables".
4716         * lisp/font-lock.el (font-lock-flush, font-lock-ensure): Doc fix.
4718 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
4720         Document new features of Rectangle mode
4722         * doc/emacs/killing.texi (Rectangles): Document "C-x C-x" in
4723         rectangle-mark-mode.
4725 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
4727         Manual followup to last change
4729         * doc/lispref/display.texi (Displaying Messages): Sync with the
4730         doc string.  (Bug#22210)
4732 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
4734         Clarify doc string of 'display-message-or-buffer'
4736         * lisp/simple.el (display-message-or-buffer): Doc fix.  Suggested
4737         by Sebastian Wiesner <swiesner@lunaryorn.com>.  (Bug#22210)
4739 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
4741         * doc/emacs/emacs.texi (Top): Update top-level menus.
4743         * doc/lispref/elisp.texi (Top): Update top-level menus.
4745 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
4747         Document how to avoid file-local variables that aren't
4749         * doc/emacs/custom.texi (Specifying File Variables): Describe how
4750         to prevent Emacs from interpreting unrelated text as file-local
4751         variables.  (Bug#22166)
4753 2015-12-19  Dave Thomas  <dave@pragprog.org>  (tiny change)
4755         Fix a typo in eterm-color's termcap entry
4757         * lisp/term.el (term-termcap-format): Fix a typo in the "ue="
4758         entry.  (Bug#22184)
4760 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
4762         Allow 'browse-url-emacs' visit non-existent URLs
4764         * lisp/url/url-handlers.el (url-insert-file-contents): Don't
4765         signal an error if VISIT is non-nil, to more faithfully emulate
4766         the behavior of 'insert-file-contents'.  (Bug#22160)
4768 2015-12-18  Paul Eggert  <eggert@cs.ucla.edu>
4770         Remove SunOS 4.x cruft
4772         Support for SunOS 4.x was removed in Emacs 23 but some cruft was left behind.
4773         * lib-src/pop.c [sun]: Remove no-longer-needed include.
4774         * lwlib/xlwmenu.c (SUNSO41): Remove.
4776 2015-12-18  Paul Eggert  <eggert@cs.ucla.edu>
4778         Merge from gnulib
4780         This mostly commentary fixes.
4781         * doc/misc/texinfo.tex, lib/intprops.h: Copy from gnulib.
4782         * lib/gnulib.mk: Regenerate with new gnulib-tool.
4784 2015-12-18  Michael Albinus  <michael.albinus@gmx.de>
4786         Minor fixes in Tramp
4788         * lisp/net/tramp-sh.el (tramp-do-file-attributes-with-ls):
4789         Reorder ls arguments.
4791         * lisp/net/tramp.el (tramp-dissect-file-name): Fix docstring.
4793 2015-12-18  Michael Albinus  <michael.albinus@gmx.de>
4795         Make tramp a built-in package
4797         * lisp/finder.el (finder-compile-keywords): Update
4798         `package--builtins' also when Version: keyword is available.
4800         * lisp/net/trampver.el: Add Version: keyword.
4801         (tramp-version): Change it to "2.2.13.25.1", in order to be
4802         compatible with `version-to-list'.
4804 2015-12-18  Lele Gaifax  <lele@metapensiero.it>
4806         * etc/tutorials/TUTORIAL.it: Update and fix typos.  (Bug#22187)
4808 2015-12-18  Alan Mackenzie  <acm@muc.de>
4810         Rename `recenter-group' to `recenter-window-group'
4812         * doc/lispref/windows.texi (Textual Scrolling)
4813         * lisp/window.el (top level, recenter-group)
4814         * lisp/follow.el (follow-mode)
4815         * lisp/isearch.el (isearch-back-into-window): Rename `recenter-group' to
4816         `recenter-window-group' and `recenter-group-function' to
4817         `recenter-window-group-function'.
4819 2015-12-18  Eli Zaretskii  <eliz@gnu.org>
4821         Fix vertical-motion in tabulated-list mode
4823         * src/indent.c (Fvertical_motion): When moving from line beginning
4824         to point under line truncation, assume overshoot by one line only
4825         if point actually lies beyond the window's right margin.
4826         (Bug#22194)
4828 2015-12-18  Martin Rudalics  <rudalics@gmx.at>
4830         Don't have help functions call x-display-pixel-width/-height on ttys
4832         * lisp/help.el (temp-buffer-max-height, temp-buffer-max-width):
4833         Don't call x-display-pixel-width/-height on ttys.
4835 2015-12-17  Dmitry Gutov  <dgutov@yandex.ru>
4837         Use 'hg id' in vc-hg-previous-revision
4839         * lisp/vc/vc-hg.el (vc-hg-previous-revision):
4840         Use 'hg id' to retrieve it (bug#22032).
4842 2015-12-17  Alan Mackenzie  <acm@muc.de>
4844         * lisp/follow.el (follow-sit-for): Remove (it's redundant).
4846 2015-12-17  Eli Zaretskii  <eliz@gnu.org>
4848         Fix a typo in the Emacs manual
4850         * doc/emacs/trouble.texi (Sending Patches): Fix a typo.  Reported
4851         by Lele Gaifax <lele@metapensiero.it>.  (Bug#22193)
4853 2015-12-17  Eli Zaretskii  <eliz@gnu.org>
4855         Fix parsing netrc entries with ports
4857         * lisp/gnus/auth-source.el (auth-source-ensure-strings): Don't
4858         make a list out of 't'.  (Bug#22188)
4860         * test/automated/auth-source-tests.el
4861         (auth-source-test-netrc-parse-entry): New test.
4863 2015-12-17  Paul Eggert  <eggert@cs.ucla.edu>
4865         Fix typo in Doug Lea malloc configure log
4867         * configure.ac (emacs_cv_var_doug_lea_malloc):
4868         Fix typo that confused the log output of 'configure'.
4870 2015-12-16  Nicolas Petton  <nicolas@petton.fr>
4872         * etc/NEWS: Mention the new pcase patterns `seq' and `map'.
4874 2015-12-16  Alan Mackenzie  <acm@muc.de>
4876         * etc/NEWS: Move entry on pcase to correct section
4878         (Accidentally omitted from previous commit)
4880 2015-12-16  Alan Mackenzie  <acm@muc.de>
4882         Add documentation for changes to Show Paren mode.
4884         * lisp/paren.el (show-paren-highlight-openparen): Enhance doc string.
4886         * doc/emacs/programs.texi (Matching): Add descriptions of some pertinent user
4887         options, including the new show-paren-when-point-inside-paren and
4888         show-paren-when-point-in-periphery.
4890         * etc/NEWS (.. Specialized Modes ...): Add an entry for Show Paren mode.
4891         Move an entry on pcase to the Lisp Changes section.
4893 2015-12-16  Eli Zaretskii  <eliz@gnu.org>
4895         Document Eldoc changes
4897         * doc/emacs/programs.texi (Lisp Doc): Document Global Eldoc mode.
4899 2015-12-16  Eli Zaretskii  <eliz@gnu.org>
4901         Fix invocation of Python and Guile interpreters from gdb-mi
4903         * lisp/progmodes/gdb-mi.el (gdb-control-commands-regexp): Add
4904         commands for interactive Python and Guile interpreters.
4905         (gdb-send): Recognize various ways of exiting from Python and
4906         Guile interpreters and returning to GDB.  For details, see
4907         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00693.html
4908         and http://stackoverflow.com/questions/31514741.
4910 2015-12-16  Paul Eggert  <eggert@cs.ucla.edu>
4912         Remove attempt to use C11 threads
4914         C11 threads are not needed for Emacs now, and their use is causing
4915         hassles on FreeBSD 10.x.  Problem reported by Ashish SHUKLA in:
4916         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00648.html
4917         * configure.ac: Do not check for C11 threads. Remove unnecessary
4918         fiddling with CPPFLAGS when configuring pthreads.
4919         * src/emacs-module.c (main_thread, check_main_thread)
4920         (module_init): Do not worry about C11 threads.
4922 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
4924         Set utf8 encoding with stty in Tramp
4926         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
4927         Move up uname check.  Handle Mac OS X eol encoding.  Set utf8
4928         encoding with stty.
4930 2015-12-15  Alan Mackenzie  <acm@muc.de>
4932         Tidy up documentation associated with window groups.
4934         * doc/lispref/windows.texi (Basic Windows): Add an @anchor for "Window
4935         Groups".  Correct example function to `window-group-start'.
4936         (Window Start and End, Textual scrolling): Point to the new anchor.  State
4937         that (most of) the args in window group functions have the same meaning as for
4938         the corresponding window primitives.
4940         * doc/lispref/positions.texi (Screen Lines).  Same as above.
4942 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
4944         Complete last commit
4946         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
4947         Move uname check up.  Handle Mac OS X eol encoding.
4949 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
4951         Handle Mac OS X eol encoding in Tramp
4953         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
4954         Handle Mac OS X eol encoding.
4956 2015-12-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4958         Fix variable name typo in compute_tip_xy
4960         * src/w32fns.c (compute_tip_xy):
4961         * src/xfns.c (compute_tip_xy): Modify *root_x instead of *root_y
4962         when `right' is integer.
4964 2015-12-14  foudfou  <foudil.newbie+git@gmail.com>  (tiny change)
4966         * lisp/ibuffer.el: Add ability to (un-)mark or delete buffers in the region.
4968 2015-12-14  Tassilo Horn  <tsdh@gnu.org>
4970         Revert "Fix rx matcher overflow without limiting"
4972         This reverts commit fe27e037663d36be3e5741c2ce86ab4ee8017db1.
4974 2015-12-14  Alan Mackenzie  <acm@muc.de>
4976         Ispell: Bind isearch-regexp-function to nil around call to isearch..-new-loop
4978         * lisp/textmodes/ispell.el (ispell-highlight-spelling-error-overlay): bind
4979         isearch-regexp-function to nil around call to isearch-lazy-highligh-new-loop.
4981 2015-12-14  Tassilo Horn  <tsdh@gnu.org>
4983         Fix rx matcher overflow without limiting
4985         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Improve last
4986         change to the regexp without imposing a limit on the length of the
4987         options.
4989 2015-12-14  Alan Mackenzie  <acm@muc.de>
4991         Enhance ispell-skip-region-alist by generating part of it at runtime.
4993         * lisp/textmodes/ispell.el (ispell--\\w-filter, ispell--make-\\w-expression)
4994         (ispell--make-filename-or-URL-re): New functions which generate a regexp.
4995         (ispell-skip-region-alist): Remove the bit that matches a filename/URL, etc.
4996         (ispell-begin-skip-region-regexp, ispell-skip-region-list, ispell-message):
4997         Include the result of ispell--make-filename-or-URL-re in regexps.
4999 2015-12-14  Glenn Morris  <rgm@gnu.org>
5001         * build-aux/gitlog-to-emacslog: Ignore more pointless merge commits.
5003 2015-12-14  Alan Mackenzie  <acm@muc.de>
5005         Replace GROUP argument in six window primitives by new functions.
5007         * doc/lispref/windows.texi (Window Start and End, Textual Scrolling)
5008         * doc/lispref/positions.texi (Screen Lines): Remove optional GROUP argument
5009         from description of six window functions.  Add in description of new functions
5010         window-group-start, window-group-end, set-window-group-start,
5011         pos-visible-in-window-group-p, recenter-group and move-to-window-group-line,
5012         together with the six variables indirecting to the pertinent group
5013         functions.
5015         * src/window.c
5016         * src/keyboard.c: Revert the commit from 2015-11-11 12:02:48, in so far as it
5017         applies to these two files, which added the GROUP argument to six window
5018         primitives.
5020         * lisp/follow.el (follow-mode): Use updated variable names for the indirected
5021         functions.
5023         * lisp/isearch.el (isearch-update, isearch-done, isearch-string-out-of-window)
5024         (isearch-back-into-window, isearch-lazy-highlight-new-loop)
5025         (isearch-lazy-highlight-search, isearch-lazy-highlight-update): Replace calls
5026         to window primitives (e.g. window-start) with a GROUP argument by calls to
5027         new functions (e.g. window-group-start).
5029         * lisp/ispell.el (ispell-command-loop): Replace call to
5030         pos-visible-in-window-p with pos-visible-in-window-group-p.
5032         * lisp/window.el (window-group-start, window-group-end)
5033         (set-window-group-start, recenter-group, pos-visible-in-window-group-p)
5034         (selected-window-group, move-to-window-group-line): New functions.
5035         (window-group-start-function, window-group-end-function)
5036         (set-window-group-start-function, recenter-group-function)
5037         (pos-visible-in-window-group-p-function, selected-window-group-function)
5038         (move-to-window-group-line-function): New variables.
5040 2015-12-14  Vitorio Miguel  <vdrbandeiras@gmail.com>  (tiny change)
5042         * etc/tutorials/TUTORIAL.pt_BR: Fix a typo.  (Bug#22165)
5044 2015-12-13  Eli Zaretskii  <eliz@gnu.org>
5046         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
5048 2015-12-13  Tassilo Horn  <tsdh@gnu.org>
5050         Improve regex to not trigger stack overflow
5052         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Improve regex in
5053         order not to trigger a stack overflow in regex matcher with unbalanced
5054         brackets (bug#22146).
5056 2015-12-13  Eli Zaretskii  <eliz@gnu.org>
5058         Fix visiting files with raw-text
5060         * src/fileio.c (Finsert_file_contents): Fix setting buffer unibyte
5061         when some stuff was actually read.  (Bug#22162)
5063 2015-12-13  Tassilo Horn  <tsdh@gnu.org>
5065         Fix regex matching keyval labels
5067         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Fix regexp
5068         matching keyval labels.
5070 2015-12-13  Michael Albinus  <michael.albinus@gmx.de>
5072         * lisp/ido.el (ido-file-name-all-completions-1): Do not raise an error
5074         ... in case of Tramp.  (Bug#20821)
5076 2015-12-12  Paul Eggert  <eggert@cs.ucla.edu>
5078         Fix performance regression with gcc -O0
5080         This fixes the smaller performance hit that I noted in:
5081         https://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00357.html
5082         * src/alloc.c (macro_XPNTR_OR_SYMBOL_OFFSET, macro_XPNTR):
5083         * src/puresize.h (puresize_h_PURE_P)
5084         (puresize_h_CHECK_IMPURE):
5085         New macros, with the old contents of the functions.
5086         * src/alloc.c (XPNTR_OR_SYMBOL_OFFSET, XPNTR):
5087         * src/puresize.h (PURE_P, CHECK_IMPURE):
5088         Use the new macros.  Also macros, if DEFINE_KEY_OPS_AS_MACROS.
5089         * src/conf_post.h (ATTRIBUTE_UNUSED):
5090         * src/lisp.h (DEFINE_KEY_OPS_AS_MACROS): New macros.
5092 2015-12-12  Artur Malabarba  <bruce.connor.am@gmail.com>
5094         * lisp/emacs-lisp/package.el (package-unpack): Security check
5096         Check that we received the package we were offered.
5098 2015-12-12  Artur Malabarba  <bruce.connor.am@gmail.com>
5100         * lisp/emacs-lisp/package.el (package--compile): Don't activate
5102         `package-unpack' takes care of all activations now (other than
5103         `package-initialize).  `package--compile' now only compiles.
5105 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
5107         Document the new bindings of <UP> and <DOWN> in the minibuffer
5109         * doc/emacs/mini.texi (Minibuffer History): Describe the new
5110         bindings of <UP> and <DOWN> in the minibuffer.
5112 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
5114         Document new features of Ido
5116         * doc/misc/ido.texi (Misc): Document 'C-S-b'.
5118 2015-12-12  Martin Rudalics  <rudalics@gmx.at>
5120         Fix frame height calculations with added menu bar on Windows (Bug#22105)
5122         * doc/lispref/frames.texi (Parameter Access): Mention pitfalls
5123         when simultaneously specifying multiple parameters for
5124         `modify-frame-parameters' that all may change the frame's size.
5125         * src/w32fns.c (x_set_menu_bar_lines): Don't set
5126         windows_or_buffers_changed here.
5127         (my_create_tip_window, Fx_show_tip): Call AdjustWindowRect
5128         with third argument false.
5129         * src/w32menu.c (set_frame_menubar): Set
5130         windows_or_buffers_changed here.
5131         * src/w32term.c (x_set_window_size): Determine third argument of
5132         AdjustWindowRect from whether the frame has a menu bar and not
5133         from whether it wants one.
5135 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
5137         Document the change in interactive shell mode
5139         * doc/emacs/misc.texi (Interactive Shell): Document that the
5140         '*shell*' buffer by default displays in a new window.
5142 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
5144         Document new features of package.el
5146         * doc/emacs/package.texi (Package Menu): Document the 'external'
5147         status and the new menu commands.
5148         (Package Installation): Document archive priorities.
5150         * lisp/emacs-lisp/package.el (package-archive-priorities): Doc fix.
5151         (package-menu-hide-low-priority): Doc fix.
5153 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
5155         Update and document new features of xterm support
5157         * doc/emacs/frames.texi (Text-Only Mouse): Document that
5158         track-mouse is supported by newer xterm versions.
5160 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
5162         Document new features of Prettify Mode
5164         * doc/emacs/programs.texi (Misc for Programs): Document
5165         'prettify-symbols-compose-predicate' and
5166         'prettify-symbols-unprettify-at-point'.
5168         * lisp/progmodes/prog-mode.el (prettify-symbols-alist)
5169         (prettify-symbols-default-compose-p)
5170         (prettify-symbols-compose-predicate)
5171         (prettify-symbols--compose-symbol): Doc fixes.
5173 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
5175         Document multi-mode indentation facilities
5177         * doc/lispref/text.texi (Mode-Specific Indent): Document
5178         'prog-indentation-context', 'prog-first-column', and 'prog-widen'.
5180         * lisp/progmodes/prog-mode.el (prog-indentation-context)
5181         (prog-widen): Doc fixes.
5183 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
5185         Document 'vc-refresh-state'
5187         * doc/emacs/maintaining.texi (Version Control): Document
5188         'vc-refresh-state'.
5190         * lisp/vc/vc-hooks.el (vc-refresh-state): Doc fix.
5192 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
5194         Fix echo for "C-u"
5196         * src/keyboard.c (command_loop_1): Undo last change.  It caused
5197         duplicate echo of C-u.  (Bug#22107)
5199 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
5201         Avoid errors when creating files under SVN in new directory
5203         * lisp/vc/vc-svn.el (vc-svn-registered): Use
5204         file-accessible-directory-p, to avoid cd'ing to a non-existing
5205         directory, which signals an error on some systems.  (Bug#21984)
5206         (vc-svn-checkin): Call log-edit-extract-headers with 2 arguments.
5207         Use declare-function to avoid byte-compiler warnings.
5209 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
5211         Improve Lua support in etags
5213         * lib-src/etags.c (Lua_functions): Skip spaces before looking for
5214         "function".
5216         * etc/NEWS: Mention improved Lua support by 'etags'.
5218         * test/etags/lua-src/test.lua (test): Add tests for indented
5219         function definitions.
5220         * test/etags/ETAGS.good_1:
5221         * test/etags/ETAGS.good_2:
5222         * test/etags/ETAGS.good_3:
5223         * test/etags/ETAGS.good_4:
5224         * test/etags/ETAGS.good_5:
5225         * test/etags/ETAGS.good_6:
5226         * test/etags/CTAGS.good: Adapt to the modified Lua tests.
5228 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
5230         Fix 'this-command-keys' wrt prefix argument
5232         * src/keyboard.c (command_loop_1): Restore the feature whereby C-u
5233         was part of this-command-keys, but not of this-single-command-keys.
5234         (Bug#22107)
5236         * lisp/simple.el (internal-echo-keystrokes-prefix): Add
5237         commentary about the function's return value.
5239 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
5241         * lisp/files.el (load-library): Doc fix.  (Bug#22140)
5243 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
5245         Improve and document Ruby support in 'etags'
5247         * lib-src/etags.c (Ruby_suffixes): Add ".ruby".
5248         (Ruby_functions): Support "module" and overloaded operators.
5249         (Ruby_help): Mention "module".
5251         * test/etags/ruby-src/test.rb:
5252         * test/etags/ruby-src/test1.ruby: New files.
5253         * test/etags/Makefile (RBSRC): New tests.
5254         (SRCS): Add ${RBSRC}.
5255         * test/etags/ETAGS.good_1:
5256         * test/etags/ETAGS.good_2:
5257         * test/etags/ETAGS.good_3:
5258         * test/etags/ETAGS.good_4:
5259         * test/etags/ETAGS.good_5:
5260         * test/etags/ETAGS.good_6:
5261         * test/etags/CTAGS.good: Adapt to the new Ruby tests.
5263         * doc/man/etags.1: Mention Ruby support.
5264         * etc/NEWS: Mention Ruby support.
5266 2015-12-11  Xi Lu  <lx@shellcodes.org>
5268         Initial support for Ruby in 'etags'
5270         * lib-src/etags.c <Ruby_suffixes>: New variable.
5271         (lang_names): Add an entry for Ruby.
5272         (Ruby_functions): New function.  (Bug#22116)
5274 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
5276         Clarify documentation of 'modify-frame-parameters'
5278         * doc/lispref/frames.texi (Parameter Access): Clarify what "ignored
5279         PARMs" mean for 'modify-frame-parameters'.
5281         * src/frame.c (Fmodify_frame_parameters): Clarify what "ignored
5282         PARMs" mean for this function.  (Bug#22104)
5284 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
5286         Fix setting buffer unibyte when reading from a device
5288         * src/fileio.c (Finsert_file_contents): Call Fset_buffer_multibyte
5289         to make a (possibly non-empty) buffer unibyte.  (Bug#22096)
5291 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
5293         Clarify documentation of 'values'
5295         * doc/lispref/eval.texi (Eval): Clarify that 'values' are not
5296         updated by any evaluation commands in 'lisp-interaction-mode'.
5297         (Bug#22056)
5299 2015-12-11  Anders Lindgren  <andlind@gmail.com>
5301         Fixed subversion vc error when opening file in new directory (bug#21984).
5303         * lisp/vc/vc-svn.el (vc-svn-registered): Check if directory exists.
5305 2015-12-09  Eli Zaretskii  <eliz@gnu.org>
5307         Yet another fix for when point ends up in invisible text
5309         * src/xdisp.c (redisplay_window): When someone forced
5310         window-start, and honoring that failed to show the cursor, try
5311         moving out of invisible text, before falling back to the middle of
5312         the window.  (Bug#22098)
5314 2015-12-09  Michael Albinus  <michael.albinus@gmx.de>
5316         Fix error in Tramp perl script for cygwin
5318         * lisp/net/tramp-sh.el (tramp-perl-file-truename): Do not raise an
5319         error if file doesn't exist.
5321 2015-12-09  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5323         Remove font workaround for limited outdated versions
5325         * src/macfont.m (mac_font_descriptor_get_adjusted_weight): Remove
5326         workaround for HiraginoSans-W7 on OS X 10.11 and 10.11.1.
5328 2015-12-09  Anders Lindgren  <andlind@gmail.com>
5330         Don't add "." to load path (bug#21104)
5332         When configured with --enable-locallisppath=no, which is the
5333         default for OS X, the load-path incorrectly was populated with ".".
5335         * src/lread.c (init_lread): Don't call `decode_env_path' when
5336         PATH_SITELOADSEARCH is empty.
5338 2015-12-08  Artur Malabarba  <bruce.connor.am@gmail.com>
5340         * lisp/emacs-lisp/package.el (package--with-response-buffer):
5342         Search for the blank-line in the right buffer.
5344 2015-12-08  Glenn Morris  <rgm@gnu.org>
5346         * test/automated/simple-test.el (undo-auto-boundary-timer): Update
5347         for recent change.
5349 2015-12-08  Glenn Morris  <rgm@gnu.org>
5351         Fix some display-warning usage.
5353         * lisp/files.el (hack-local-variables, hack-dir-local-variables):
5354         * lisp/calendar/diary-lib.el (diary-include-files, diary-sexp-entry):
5355         * lisp/calendar/holidays.el (calendar-holiday-list):
5356         * lisp/mail/rmailout.el (rmail-output-read-file-name):
5357         Fix display-warning usage.
5359 2015-12-07  Glenn Morris  <rgm@gnu.org>
5361         * lisp/calendar/cal-html.el: Require diary-lib.
5363         (cal-html-list-diary-entries): Handle no diary.  (Bug#21994)
5365 2015-12-07  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
5367         Add Obsolete-since header to eudcb-ph.el
5369         * eudcb-ph.el: Add Obsolete-since header.
5371 2015-12-07  Paul Eggert  <eggert@cs.ucla.edu>
5373         Spelling fixes
5375         * doc/misc/calc.texi (Predefined Units): Use the bland modern
5376         scientific style for spelling the units “ampere” and
5377         “angstrom” rather than the older style “Ampere” and
5378         “Ångstrom”.  The latter spelling was wrong anyway (it should
5379         have been “Ångström”).
5380         * lisp/emacs-lisp/ert.el (ert--explain-equal-rec):
5381         Fix misspelling of ‘atom’ in code.
5383 2015-12-07  Eli Zaretskii  <eliz@gnu.org>
5385         Improve documentation of kill commands
5387         * lisp/simple.el (region-extract-function, delete-backward-char)
5388         (delete-forward-char, kill-region, copy-region-as-kill)
5389         (kill-ring-save): Better document the optional argument REGION in
5390         the doc strings.  Mention in the doc strings that text put in the
5391         kill-ring can be filtered by 'filter-buffer-substring'.
5393         * doc/lispref/text.texi (Kill Functions): Mention that functions
5394         described in this subsection can filter text they put in the
5395         kill-ring.  Add a cross-reference to "Buffer Contents" and an
5396         index entry.  Document the optional argument 'region' and its
5397         effect.
5398         (Bug#21315)
5400 2015-12-07  Alan Mackenzie  <acm@muc.de>
5402         Further progress making Isearch, Ispell, Replace work with Follow Mode.
5404         * lisp/follow.el: (follow-mode): Remove references to sit*-for-function, which
5405         no longer exists.  Add follow-post-command-hook to  three special purpose
5406         hooks at setup, and remove them at tear down.
5408         * lisp/isearch.el: (isearch-update): invoke isearch-update-post-hook before
5409         isearch-lazy-highlight-new-loop.
5410         (isearch-lazy-highlight-new-loop): Restore this function to what it previously
5411         was, merging the functionality of isearch-lazy-highlight-maybe-new-loop into
5412         it.
5413         (isearch-lazy-highlight-maybe-new-loop): function removed.
5415         * lisp/replace.el: (replace-update-post-hook): New hook variable.
5416         (perform-replace): Add second (nil) argument to looking-back.  Invoke
5417         replace-update-post-hook before calling replace-highlight.
5419         * lisp/textmodes/ispell.el: (ispell-update-post-hook): New hook variable.
5420         (ispell-command-loop): invoke ispell-update-post-hook.  Add GROUP argument to
5421         call of pos-visible-in-window-p.
5422         (ispell-display-buffer): Place *Choices* window at the top of the last window
5423         in a window group.
5425 2015-12-07  Alan Mackenzie  <acm@muc.de>
5427         Amend doc of `mapconcat': it can take sequences, not merely strings.
5429         * doc/lispref/functions.texi (Mapping Functions): Amend the doc of `mapconcat'
5430         to say that SEPARATOR and the results from FUNCTION may be any character
5431         sequences, not just strings.  Add an @xref to "Sequences Arrays Vectors".
5433 2015-12-07  Michael Albinus  <michael.albinus@gmx.de>
5435         Fix an utf8 problem for Tramp on BSD
5437         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
5438         Make lax check for utf8.
5439         (tramp-get-remote-locale): Add "en_US.UTF-8" as candidate.
5441 2015-12-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
5443         Make eudcb-ph.el obsolete
5445         * doc/misc/eudc.texi: Bump version to 1.40.0.
5446         Remove PH/QI sections and mentions.
5447         * lisp/obsolete/eudcb-ph.el: Make obsolete.
5448         * lisp/net/eudc-vars.el (eudc-known-protocols): Remove ph.
5449         (eudc-ph-bbdb-conversion-alist): Make obsolete.
5450         * etc/NEWS: Mention this.  (Bug#21191)
5452 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
5454         Remove overenthusiastic eassert
5456         * src/lisp.h (XSYMBOL): Remove eassert incorrectly added in
5457         previous change.  It breaks on MS-Windows --with-wide-int.
5458         Problem reported by Eli Zaretskii in:
5459         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00275.html
5461 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
5463         Pacify gcc -Wparentheses
5465         * src/xdisp.c (row_containing_pos): Reparenthesize.
5467 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
5469         Port mod-test to 32-bit Emacs --without-wide-int
5471         * modules/mod-test/test.el (mod-test-sum-test):
5472         Bring back the 2**29 tests, but port them to 32-bit Emacs
5473         --without-wide-int.
5475 2015-12-06  Michael Albinus  <michael.albinus@gmx.de>
5477         Fix minor Tramp problems found on BSD
5479         * lisp/net/tramp-sh.el (tramp-perl-file-truename): Do not append
5480         trailing slash.  Quote apostrophes.
5481         (tramp-sh-handle-file-truename): Do not append trailing slash in
5482         the "ls" case.
5483         (tramp-get-ls-command-with-w-option): New defun.
5484         (tramp-do-file-attributes-with-ls)
5485         (tramp-do-directory-files-and-attributes-with-stat): Use it.
5487         * test/automated/tramp-tests.el
5488         (tramp-test31-special-characters-with-perl)
5489         (tramp-test31-special-characters-with-ls)
5490         (tramp-test32-utf8-with-perl, tramp-test32-utf8-with-ls):
5491         Suppress also readlink.
5493 2015-12-06  Eli Zaretskii  <eliz@gnu.org>
5495         Fix cursor display when invisible text is at line beginning
5497         * src/xdisp.c (redisplay_window): When scrolling fails to show
5498         point, prefer using the desired matrix if possible for finding the
5499         fallback glyph row for displaying the cursor.  (Bug#22098)
5500         (row_containing_pos): Exit the loop as soon as we hit the first
5501         disabled glyph row.  Otherwise we risk accessing garbled data and
5502         departing to the no-no land.
5504 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
5506         Improve module interface when WIDE_EMACS_INT
5508         * src/emacs-module.c (plain_values): New constant.
5509         (module_nil): Now a constant.
5510         (Finternal_module_call, value_to_lisp_bits, lisp_to_value_bits)
5511         (syms_of_module): Use if, not #ifdef, so that both sides are
5512         checked at compile-time, and so that GCC doesn’t complain
5513         about an unused var in the typical case.  Also, depend on
5514         plain_values, not on WIDE_EMACS_INT; the code shouldn’t assume
5515         that WIDE_EMACS_INT implies !USE_LSB_TAG.
5516         (value_to_lisp_bits, lisp_to_value_bits): New functions.
5517         Sign-extend integers rather than zero-extending them, as small
5518         negative integers are more likely.
5519         (value_to_lisp, lisp_to_value): Rewrite in terms of the new *_bits
5520         functions.
5521         (HAVE_STRUCT_ATTRIBUTE_ALIGNED): Define to 0 if not already defined.
5522         (mark_modules): Remove.  All uses removed.
5523         (lisp_to_value): Don’t assume Fcons returns a pointer aligned
5524         to GCALIGNMENT.
5525         (syms_of_module): Check that module_nil converts to Qnil.
5526         * src/lisp.h (lisp_h_XSYMBOL, XSYMBOL): Use signed conversion, since
5527         we prefer signed to unsigned when either will do.
5528         (TAG_PTR): Sign-extend pointers when USE_LSB_TAG, as this is
5529         a bit better for emacs-module.c.
5531 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
5533         Port mod-test to x86-64 GNU/Linux running 32-bit
5535         * modules/mod-test/test.el (mod-test-sum-test):
5536         Don’t attempt to match descriptions to operating systems.
5537         It didn’t work on Fedora x86-64 running a 32-bit executable,
5538         and it’s not worth the trouble anyway.
5539         Port to 32-bit platforms by removing an assumption about
5540         fixnum widths.
5542 2015-12-06  Michael Albinus  <michael.albinus@gmx.de>
5544         Fix auto-revert-tests.el when filenotify isn't used
5546         * test/automated/auto-revert-tests.el (auto-revert--wait-for-revert):
5547         Make it working also when filenotify isn't used.
5549 2015-12-05  Juri Linkov  <juri@linkov.net>
5551         * lisp/textmodes/ispell.el (ispell-highlight-spelling-error-overlay):
5553         Let-bind isearch-regexp-function to nil.  (Bug#22097)
5555 2015-12-05  Artur Malabarba  <bruce.connor.am@gmail.com>
5557         * lisp/emacs-lisp/package.el: Don't install bad signatures (bug#22089)
5559         (package--with-response-buffer): NOERROR and ERROR-FORM only
5560         handle connection errors.
5561         (bad-signature): New error type.
5562         (package--check-signature-content): Use it.
5563         (package--check-signature): Properly distinguish connection errors
5564         from bad-signature errors.  Do the check for
5565         `package-check-signature' `allow-unsigned' here instead of forcing
5566         the callbacks to do it.  Add a new argument, UNWIND.
5567         (package--download-one-archive, package-install-from-archive):
5568         Update usage of `package--check-signature'.
5570 2015-12-05  Ulf Jasper  <ulf.jasper@web.de>
5572         Fix Bug#22092.
5574         * lisp/calendar/icalendar.el (icalendar--get-unfolded-buffer):
5575           Clean up inconsistent line endings. (Bug#22092)
5576           (icalendar--clean-up-line-endings): New.
5577         * test/automated/icalendar-tests.el (icalendar-real-world): Add test
5578           for Bug#22092.
5580 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
5582         Document 'bookmark-set-no-overwrite'
5584         * doc/emacs/regs.texi (Bookmarks): Document the new command
5585         'bookmark-set-no-overwrite' and its keybinding.
5587 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
5589         Document new binding of 'mouse-buffer-menu'
5591         * doc/emacs/buffers.texi (Buffer Menus): 'mouse-buffer-menu' is
5592         now also on C-F10.
5594 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
5596         Initial documentation of dynamic modules
5598         * doc/lispref/loading.texi (Dynamic Modules): New section with
5599         initial documentation for dynamic modules.
5600         * doc/lispref/elisp.texi (Top): Add "Dynamic Modules" to the
5601         detailed menu
5603         * etc/NEWS: Fix typos in dynamic modules' entry.
5605 2015-12-05  Artur Malabarba  <bruce.connor.am@gmail.com>
5607         Remove copyright statements from trivial test files
5609 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
5611         Add "Preliminaries" section to etc/DEBUG
5613         * etc/DEBUG: Add the "Preliminaries" section for GDB beginners.
5614         Most of the content was suggested by Phillip Lord
5615         <phillip.lord@russet.org.uk>.  Remove the section about debugging
5616         with the Visual Studio, as building Emacs with the Microsoft
5617         compilers is no longer supported.  Minor fixes in some other
5618         sections.
5620 2015-12-05  Alex Dunn  <dunn.alex@gmail.com>  (tiny change)
5622         Improve parsing of version strings
5624         * lisp/subr.el (version-regexp-alist): Allow "." as priority separator
5625         (version-to-list): More helpful error messages.
5626         (version-to-list): ".5" is valid (update docstring).  Make
5627         "22.8X3" invalid, as the doc string says.
5629         * test/automated/subr-tests.el (ert-test-version-parsing): New
5630         tests for version string processing.
5632 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
5634         Fix documentation of 'undo' changes
5636         * doc/lispref/text.texi (Undo): Minor wording changes.  Use US
5637         English conventions for spelling and whitespace between sentences.
5639         * etc/NEWS: Fix wording and spelling of undo-related entries.
5640         Mark them as documented.
5642 2015-12-04  Glenn Morris  <rgm@gnu.org>
5644         * lisp/net/net-utils.el: Small improvements.
5646         (net-utils--executable-find-sbin): New function.
5647         (ifconfig-program): Check sbin directories.
5648         Fallback to "ip".  (Bug#22091)
5649         (ifconfig-program-options): Check the actual program in use.
5650         (arp-program): Check sbin directories.
5652 2015-12-04  Arash Esbati  <esbati@gmx.de>  (tiny change)
5654         Fix wrong-type-argument integer-or-marker-p nil error
5656         * lisp/textmodes/reftex-auc.el (reftex-what-index-tag):
5657         Fix (wrong-type-argument integer-or-marker-p nil) error (bug#22077).
5659 2015-12-04  Alan Mackenzie  <acm@muc.de>
5661         Merge branch 'scratch/follow' of /home/acm/emacs/emacs.git/emacs-25 into scratch/follow
5663         Merge necessitated by a rebase operation.
5665 2015-12-04  Alan Mackenzie  <acm@muc.de>
5667         lisp/isearch.el: Eliminate macro isearch-call-message, replacing with funcall.
5669 2015-12-04  Alan Mackenzie  <acm@muc.de>
5671         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
5673         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
5674         Windows" and new @defun selected-window-group.
5675         (Window Start and End): Describe new &optional parameter GROUP and
5676         ...-group-function for window-start, window-end, set-window-start, and
5677         pos-visible-in-window-p.
5678         (Textual Scrolling) Describe the same for recenter.
5679         doc/lispref/positions.texi (Screen Lines): Describe the same for
5680         move-to-window-line.
5682         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
5683         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
5684         new optional parameter "group".  At the beginning of each, check whether the
5685         corresponding ...-group-function is set to a function, and if so execute this
5686         function in place of the normal processing.
5687         (syms_of_window): Define symbols for the six new variables below.
5688         (window-start-group-function, window-end-group-function)
5689         (set-window-start-group-function, recenter-group-function)
5690         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
5691         New permanent local buffer local variables.
5692         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
5693         Fpos_visible_in_window_p.
5695         lisp/window.el (selected-window-group-function): New permanent local buffer
5696         local variable.
5697         (selected-window-group): New function.
5699         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
5700         enable, kill them at mode disable.  Add/remove follow-after-change to/from
5701         after-change-functions.
5702         (follow-start-end-invalid): New variable.
5703         (follow-redisplay): Manipulate follow-start-end-invalid.
5704         (follow-after-change, follow-window-start, follow-window-end)
5705         (follow-set-window-start, follow-pos-visible-in-window-p)
5706         (follow-move-to-window-line, follow-sit-for): New functions.
5708         lisp/isearch.el (isearch-call-message): New macro.
5709         (isearch-update, with-isearch-suspended, isearch-del-char)
5710         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
5711         (with-isearch-suspended): Rearrange code such that isearch-call-message is
5712         invoked before point is moved.
5713         (isearch-message): Add comment about where point must be at function call.
5714         (isearch-search): Remove call to isearch-message.
5715         (isearch-lazy-highlight-window-group): New variable.
5716         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
5717         the battery of tests to ...
5718         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
5719         Note: (sit-for 0) is still called.
5720         (isearch-lazy-highlight-update): Check membership of
5721         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
5722         property.
5723         (isearch-update, isearch-done, isearch-string-out-of-window)
5724         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
5725         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
5726         (isearch-lazy-highlight-update): Call the six amended primitives (see
5727         src/window.c above) with the new `group' argument set to t, to cooperate
5728         with Follow Mode.
5730 2015-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
5732         * lisp/emacs-lisp/ert.el: Prefer pcase over cl-typecase
5734         * lisp/emacs-lisp/ert.el (ert--should-error-handle-error)
5735         (ert--explain-format-atom, ert--explain-equal-rec)
5736         (ert--print-backtrace, ert-test-result-type-p, ert-select-tests)
5737         (ert--insert-human-readable-selector): Prefer pcase over cl-typecase.
5739 2015-12-04  Artur Malabarba  <bruce.connor.am@gmail.com>
5741         * lisp/character-fold.el: Remove special case-folding support
5743         (character-fold-to-regexp): Remove special code for
5744         case-folding.  Char-fold search still respects the
5745         `case-fold-search' variable (i.e., f matches F).  This only
5746         removes the code that was added to ensure that f also matched
5747         all chars that F matched.  For instance, after this commit, f
5748         no longer matches 𝔽.
5750         This was necessary because the logic created a regexp with
5751         2^(length of the string) redundant paths.  So, when a very
5752         long string "almost" matched, Emacs took a very long time to
5753         figure out that it didn't.  This became particularly relevant
5754         because isearch's lazy-highlight does a search bounded by (1-
5755         match-end) (which, in most circumstances, is a search that
5756         almost matches).  A recipe for this can be found in bug#22090.
5758 2015-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
5760         * lisp/emacs-lisp/cl-macs.el (character): Can't be negative
5761         Fixes (bug#21701)
5763 2015-12-04  Daiki Ueno  <ueno@gnu.org>
5765         lisp/gnus/qp.el: Don't replace "from " at bol
5767         * lisp/gnus/qp.el (quoted-printable-encode-region): Bind `case-fold-search'
5768         to nil when looking for "^From ".  Problem reported by Simon Josefsson.
5770 2015-12-03  Phillip Lord  <phillip.lord@russet.org.uk>
5772         Externalize some symbols in undo-auto
5774          * doc/lispref/text.texi: Update symbols.
5775          * lisp/simple.el (undo-auto--amalgamate,
5776            undo-auto--current-boundary-timer): Make symbols public.
5777          * src/cmds.c (Fself_insert_command,Fdelete_char): Call
5778            updated symbol.
5780 2015-12-03  Stefan Monnier  <monnier@iro.umontreal.ca>
5782         * lisp/emacs-lisp/smie.el (smie-next-sexp): Fix BOB "token"
5784 2015-12-03  Michael Albinus  <michael.albinus@gmx.de>
5786         Some error message improvements in tramp-sh.el
5788         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
5789         Suppress error messages for "mesg" and "biff" calls.
5790         (tramp-get-remote-path): Ignore errors when expanding
5791         `tramp-own-remote-path'.  Raise a warning instead.
5793 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
5795         Document 'nacl' value for 'system-type'
5797         * doc/lispref/os.texi (System Environment): Document the 'nacl'
5798         value of 'system-type'.
5800 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
5802         Document 'window-max-chars-per-line'
5804         * doc/lispref/windows.texi (Window Sizes): Document
5805         'window-max-chars-per-line'.
5807 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
5809         Fix some file headers for the purpose of `package--builtins'
5811         * lisp/emacs-lisp/cl-preloaded.el
5812         * lisp/emacs-lisp/eieio-compat.el
5813         * lisp/net/sasl-scram-rfc.el: Add a "Package:" header
5815         * lisp/ielm.el: Fix summary line.
5817 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
5819         * lisp/emacs-lisp/package.el (package-unpack): Load before compiling
5821         Reload any previously loaded package files before compiling
5822         the package (also reload the same files after compiling).
5823         This ensures that we have the most recent definitions during
5824         compilation, and avoids generating bad elc files when a macro
5825         changes and it is used in a different file from the one it's
5826         defined in.
5828 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
5830         * lisp/emacs-lisp/package.el: Refactor package activation code
5832         (package-activate): Move code that activates dependencies into
5833         package-activate-1.
5834         (package--load-files-for-activation): New function.
5835         (package-activate-1): Add code for (optionally) activating
5836         dependencies, and move file-loading code into
5837         `package--load-files-for-activation'.
5839 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
5841         Document new font-related functionality
5843         * doc/lispref/display.texi (Low-Level Font): Document
5844         'default-font-width', 'default-font-height', 'window-font-width',
5845         and 'window-font-height'.
5847         * etc/NEWS: Move entries for 'default-font-width',
5848         'default-font-height', 'window-font-width', and 'window-font-height'
5849         to their place and mark them documented.
5851 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
5853         Fix documentation and implementation of 'directory-name-p'
5855         * lisp/files.el (directory-name-p): Modify to recognize
5856         backslashes on MS-Windows and MS-DOS.  Adjust the doc string
5857         accordingly.  Use '=', not char-equal, for comparison, as
5858         letter-case cannot possibly be an issue here.
5860         * doc/lispref/files.texi (Directory Names): Move the documentation
5861         of directory-name-p here from "Relative File Names".  Update the
5862         description per the changes in implementation.
5864         * etc/NEWS: Move the entry for 'directory-name-p' to its proper
5865         place and mark it documented.
5867 2015-12-02  Eli Zaretskii  <eliz@gnu.org>
5869         Minor copyedit in Emacs manual
5871         * doc/emacs/search.texi (Lax Search): Make wording about character
5872         folding by default less definitive.  (Bug#22043)
5874 2015-12-02  Eli Zaretskii  <eliz@gnu.org>
5876         More emacs-module.c fixes for wide ints
5878         * src/emacs-module.c (value_to_lisp) [WIDE_EMACS_INT]: Use
5879         unsigned data types to manipulate pointers, to avoid sign
5880         extension coming after us with a vengeance.
5882         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
5883         Emacs with wide ints that verify integer values near the critical
5884         value that requires us to switch to a cons cell.
5886 2015-12-02  Stephen Leake  <stephen_leake@stephe-leake.org>
5888         Fix bug#22069 in cl-generic.el
5890         * lisp/emacs-lisp/cl-generic.el (cl-no-method): Remove %S; this string is
5891         not run thru `format'.
5893 2015-12-01  Dmitry Gutov  <dgutov@yandex.ru>
5895         APPEND etags--xref-backend to xref-backend-functions
5897         * lisp/progmodes/xref.el (xref-backend-functions):
5898         Use APPEND when adding the default element
5899         (http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00061.html).
5901 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
5903         More accurate documentation of lax whitespace matching
5905         * lisp/isearch.el (isearch-forward-word, isearch-forward-symbol)
5906         (word-search-backward, word-search-forward)
5907         (word-search-backward-lax, word-search-forward-lax): Mention in
5908         doc strings that toggling lax whitespace matching has no effect on
5909         these commands.
5911         * doc/emacs/search.texi (Word Search, Symbol Search): Clarify that
5912         lax whitespace matching has no effect on these commands.
5914 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
5916         Fix emacs-module.c for wide ints
5918         * src/emacs-module.c (lisp_to_value): Compare the produced value
5919         with the original Lisp object, not with the one potentially
5920         converted into a Lisp_Cons.  Fixes assertion violations when
5921         working with integers larger than fit into a 32-bit value.
5923         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
5924         large integers, to test --with-wide-int.
5926 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
5928         Document 'directory-files-recursively'
5930         * lisp/files.el (directory-files-recursively): Doc fix.  Rename
5931         the argument MATCH to REGEXP, to be more explicit about its form.
5933         * doc/lispref/files.texi (Contents of Directories): Improve the
5934         documentation of 'directory-files-recursively'.  Add
5935         cross-references.
5937         * etc/NEWS: Move the entry for 'directory-files-recursively' to
5938         its place and mark it documented.
5940 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
5942         Document 'inhibit-read-only' property
5944         * doc/lispref/text.texi (Special Properties): Describe the new
5945         'inhibit-read-only' text property.  Add cross-reference to where
5946         read-only buffers are described.
5947         * doc/lispref/buffers.texi (Read Only Buffers): Mention that
5948         'inhibit-read-only' property exempts text from being read-only.
5949         Add cross-reference to "Special Properties".
5951         * etc/NEWS: Move the entry about 'inhibit-read-only' property to
5952         its place and mark it documented.
5954 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
5956         * lisp/emacs-lisp/package.el: Update header comments
5958 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
5960         * lisp/character-fold.el: Add back multi-char matching
5962         (character-fold-to-regexp): Uncomment recently commented code
5963         and make the algorithm "dummer" by not checking every possible
5964         combination.  This will miss some possible matches, but it
5965         greatly reduces regexp size.
5967         * test/automated/character-fold-tests.el
5968         (character-fold--test-fold-to-regexp): Comment out test of
5969         functionality no longer supported.
5971 2015-12-01  Xue Fuqiao  <xfq.free@gmail.com>
5973         * doc/emacs/ack.texi (Acknowledgments): Update.
5975 2015-12-01  Michael Albinus  <michael.albinus@gmx.de>
5977         Check `file-remote-p' over absolute files names in files.el
5979         * lisp/files.el (directory-files-recursively)
5980         (get-free-disk-space): Check `file-remote-p' over absolute files names.
5982 2015-12-01  Andreas Schwab  <schwab@linux-m68k.org>
5984                 * src/lread.c (syms_of_lread): Doc fix.
5986 2015-11-30  Dmitry Gutov  <dgutov@yandex.ru>
5988         Don't mistake certain JS method calls for keywords
5990         * lisp/progmodes/js.el (js--ctrl-statement-indentation):
5991         Braceless keyword can't come after a period (bug#22063).
5993 2015-11-30  David Reitter  <david.reitter@gmail.com>
5995         Read frame_title_format from buffer-local variable for NS port
5997         * src/nsfns.m (x_implicitly_set_name): Read frame-title-format and
5998         icon-title-format variables from buffer in appropriate window.
5999         (Bug#22048)
6001 2015-11-30  Juri Linkov  <juri@linkov.net>
6003         * lisp/replace.el (occur-engine): Count matches in empty lines.
6005         (Bug#22062)
6007 2015-11-30  Aurélien Aptel  <aurelien.aptel@gmail.com>
6009         * src/emacs-module.h: Fix finalizer typedef for C++11
6011         C++11 standard doesn't allow exception-specification in typedef.
6012         The workaround is to declare a dummy function prototype and use
6013         decltype on it.
6015 2015-11-30  Eli Zaretskii  <eliz@gnu.org>
6017         Fix last change
6019         * src/emacs-module.c (lisp_to_value, value_to_lisp)
6020         [WIDE_EMACS_INT]: Avoid compiler warnings.
6022 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
6024         Rely on conservative stack scanning to find "emacs_value"s
6026         * src/emacs-module.c (struct emacs_value_tag)
6027         (struct emacs_value_frame, struct emacs_value_storage): Remove.
6028         (value_frame_size): Remove constant.
6029         (struct emacs_env_private): Use Lisp_Object for non_local_exit info.
6030         (lisp_to_value): Remove first arg.
6031         (module_nil): New constant.
6032         Use it instead of NULL when returning an emacs_value.
6033         (module_make_function): Adjust to new calling convention of
6034         Qinternal_module_call.
6035         (DEFUN): Receive args in an array rather than a list.
6036         Use SAFE_ALLOCA rather than xnmalloc.  Skip the lisp_to_value loop when
6037         we don't have WIDE_EMACS_INT.  Adjust to new type of non_local_exit info.
6038         (module_non_local_exit_signal_1, module_non_local_exit_throw_1):
6039         Adjust to new type of non_local_exit info.
6040         (ltv_mark) [WIDE_EMACS_INT]: New constant.
6041         (value_to_lisp, lisp_to_value): Rewrite.
6042         (initialize_frame, initialize_storage, finalize_storage): Remove functions.
6043         (allocate_emacs_value): Remove function.
6044         (mark_modules): Gut it.
6045         (initialize_environment): Don't initialize storage any more.
6046         Keep the actual env object on Vmodule_environments.
6047         (finalize_environment): Don't finalize storage any more.
6048         (syms_of_module): Initialize ltv_mark and module_nil.
6050         * src/emacs-module.h (emacs_value): Make it more clear that this type
6051         is really opaque, including the fact that NULL may not be valid.
6053         * modules/mod-test/mod-test.c (Fmod_test_signal, Fmod_test_throw):
6054         Don't assume that NULL is a valid emacs_value.
6056 2015-11-30  Eli Zaretskii  <eliz@gnu.org>
6058         Yet another doc improvement for search commands
6060         * doc/emacs/search.texi (Word Search, Symbol Search)
6061         (Regexp Search): Document commands that don't support lax
6062         whitespace matching or character folding.
6063         (Nonincremental Search): Mention the search commands that can be
6064         invoked from the menu bar.
6066         * lisp/isearch.el (isearch-define-mode-toggle-word)
6067         (isearch-define-mode-toggle-symbol)
6068         (isearch-define-mode-toggle-character-fold): Note in the doc
6069         string that turning these on exits the regexp mode.
6070         (isearch-forward-regexp, isearch-forward-word)
6071         (isearch-forward-symbol, isearch-backward-regexp)
6072         (word-search-backward, word-search-forward)
6073         (word-search-backward-lax, word-search-forward-lax): State in the
6074         doc string which commands don't support character folding and/or
6075         lax-whitespace matching.
6077 2015-11-30  Martin Rudalics  <rudalics@gmx.at>
6079         Run `window-size-change-functions' also when reading from minibuffer
6081         * src/xdisp.c (redisplay_internal): Run `window-size-change-functions'
6082         also when reading from minibuffer.
6084 2015-11-30  Ulf Jasper  <ulf.jasper@web.de>
6086         Fix scrambling of html-rendered item buffers
6088         * lisp/net/newst-treeview.el (newsticker--treeview-render-text): Fix
6089           scrambling of contents by wrapping call to html-renderer in
6090           save-selected-window.
6092 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
6094         Fix font typo in previous doc fix.
6096 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
6098         A bit more security doc, esp. file local vars
6100         * doc/emacs/emacs.texi (Top):
6101         * doc/emacs/misc.texi (Miscellaneous Commands):
6102         Refer to new Host Security section.
6103         (Host Security): New section.
6104         * doc/lispref/os.texi (Security Considerations):
6105         Mention file local variables.
6107 2015-11-30  Artur Malabarba  <bruce.connor.am@gmail.com>
6109         * lisp/character-fold.el: Comment out branching code
6111         (character-fold-to-regexp): Comment out code that uses multi-char
6112         table.  The branching caused by this induces absurdly long regexps,
6113         up to 10k chars for as little as 25 input characters.
6115 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
6117         Spelling and grammar fixes
6119 2015-11-29  Dmitry Gutov  <dgutov@yandex.ru>
6121         Make lisp-completion-at-point a wrapper instead of an alias
6123         * lisp/progmodes/elisp-mode.el (lisp-completion-at-point):
6124         Turn into an obsolete wrapper around elisp-completion-at-point
6125         (bug#20455).
6127 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
6129         * lisp/isearch.el (isearch-search-fun-default): Nicer error
6131         message when the search fails.
6133 2015-11-29  Dmitry Gutov  <dgutov@yandex.ru>
6135         Update menu-bar-goto-uses-etags-p for the current xref API
6137         * lisp/menu-bar.el (menu-bar-goto-uses-etags-p): Consult
6138         xref-backend-functions, instead of now-nonexistent
6139         xref-find-function.
6141 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
6143         * lisp/isearch.el (isearch-define-mode-toggle): Advertise binding
6145 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
6147         * lisp/menu-bar.el: Use folding in searches
6149         (nonincremental-search-forward): Use `isearch-search-fun-default'
6150         to determine the search function.
6151         (nonincremental-search-backward)
6152         (nonincremental-repeat-search-forward)
6153         (nonincremental-repeat-search-backward): Use it.
6155 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
6157         * lisp/menu-bar.el (menu-bar-goto-uses-etags-p): Fix a warning
6159 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
6161         * lisp/character-fold.el (character-fold-to-regexp): Be careful
6163         not to return huge regexps.
6165 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
6167         Improve documentation of string-collate-* functions
6169         * doc/lispref/strings.texi (Text Comparison): Improve wording and
6170         indexing of 'string-collate-equalp' and 'string-collate-lessp'.
6172         * etc/NEWS: Move the entry of 'string-collate-equalp' and
6173         'string-collate-lessp' to "Lisp Changes" section and mark it as
6174         documented.
6176 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
6178         Document truncate-string-ellipsis
6180         * doc/lispref/display.texi (Size of Displayed Text): Document
6181         'truncate-string-ellipsis'.
6183         * lisp/international/mule-util.el (truncate-string-ellipsis): Doc fix.
6184         (truncate-string-to-width): Mention in the doc string that the
6185         default for ELLIPSIS comes from 'truncate-string-ellipsis'.
6187         * etc/NEWS: Move the 'truncate-string-ellipsis' entry to the "Lisp
6188         Changes" section.
6190 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
6192         Fix confusion wrt character folding in the Emacs manual
6194         * doc/emacs/search.texi (Nonincremental Search, Regexp Search):
6195         Document that invoking search-forward/backward and
6196         re-search-forward/backward supports only case folding, but not the
6197         rest of the lax-search features.  Reported by Mike Kupfer
6198         <m.kupfer@acm.org>.
6200 2015-11-29  Ken Brown  <kbrown@cornell.edu>
6202         Update mod-test-sum-test
6204         * modules/mod-test/test.el (mod-test-sum-test): Update to
6205         accommodate the lack of dladdr on Cygwin.
6207 2015-11-29  Alan Mackenzie  <acm@muc.de>
6209         Byte compiler: Catch missing argument to `funcall'.  Fixes bug#22051.
6211         * lisp/emacs-lisp/bytecomp.el (byte-compile-funcall): When there's no argument
6212         to `funcall', (i) Output an error message; (ii) Generate code to signal a
6213         `wrong-number-of-arguments' error.
6215 2015-11-29  Martin Rudalics  <rudalics@gmx.at>
6217         * lisp/window.el (split-window): Don't sanitize sizes when SIZE is non-nil.
6219 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
6221         * lisp/character-fold.el (character-fold-to-regexp)
6223         Warn about using long strings.
6225         * test/automated/character-fold-tests.el
6226         (character-fold--test-lax-whitespace)
6227         (character-fold--test-consistency): Reduce string size for tests.
6229 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
6231         Document renaming of x-select-enable-* variables
6233         * doc/emacs/killing.texi (Clipboard): Rename
6234         x-select-enable-clipboard to select-enable-clipboard and
6235         x-select-enable-primary to select-enable-primary.  Update index
6236         entries.
6238         * etc/NEWS: Mark entry as documented.
6240 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
6242         Document the shorthand hints displayed by M-x
6244         * doc/emacs/m-x.texi (M-x): Document the numeric meaning of
6245         suggest-key-bindings.  Document the shorthand hints for commands
6246         that have no key bindings.  Document that M-x completion ignores
6247         obsolete commands.
6249         * etc/NEWS: Move the M-x entry to "Editing Changes" and mark it as
6250         documented.
6252 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
6254         Update docs of character folding
6256         * doc/emacs/search.texi (Lax Search): Update the description of
6257         character folding for the latest changes.
6259 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
6261         * lisp/character-fold.el: Also play nice with case-folding
6263         (character-fold-to-regexp): Take `case-fold-search' into account.
6265 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
6267         * lisp/character-fold.el: Add support for multi-char matches
6269         (character-fold-table): Now has an extra-slot. This is a second
6270         char-table that holds multi-character matches.  See docstring for
6271         details.
6272         (character-fold-to-regexp): Can build branching regexps when a
6273         character's entry the extra slot of `character-fold-table' matches the
6274         characters that succeed it.
6276 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
6278         * lisp/character-fold.el: Code simplifications
6280         (character-fold-table): Reduce the scope of a variable.
6281         (character-fold-to-regexp): Change logic to work directly on the
6282         input string.  It's a little easier to understand, probably
6283         faster, and sets us up for implementing multi-char matches.
6285         * test/automated/character-fold-tests.el
6286         (character-fold--test-fold-to-regexp): New test.
6288 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
6290         Document changes in "C-h l"
6292         * doc/emacs/help.texi (Misc Help): Document the changes in "C-h l".
6294         * etc/NEWS: mark "C-h l" changes as documented.
6296 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
6298         Finalize documentation of 'custom-prompt-customize-unsaved-options'
6300         * doc/emacs/custom.texi (Saving Customizations): Index the new
6301         function 'custom-prompt-customize-unsaved-options'.
6303         * etc/NEWS: Mention when 'custom-prompt-customize-unsaved-options'
6304         is useful.
6306 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
6308         Document 'comment-line'
6310         * doc/emacs/programs.texi (Comment Commands): Document
6311         'comment-line'.
6313         * etc/NEWS: Move the entry for 'comment-line' into "Editing Changes".
6315 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
6317         Document new checkdoc features
6319         * doc/lispref/tips.texi (Tips, Library Headers): Document the
6320         keyword-checking features of checkdoc and the commands
6321         'checkdoc-file' and 'checkdoc-current-buffer'.
6323         * etc/NEWS: Move the checkdoc-related entries to their own
6324         section.
6326 2015-11-28  Philipp Stephani  <p.stephani2@gmail.com>
6328         Simplify the prologue of emacs-module.c functions
6330         * src/emacs-module.c (MODULE_FUNCTION_BEGIN): New macro.
6331         (module_make_global_ref)
6332         (module_free_global_ref, module_make_function, module_funcall)
6333         (module_intern, module_type_of, module_extract_integer)
6334         (module_make_integer, module_extract_float, module_make_float)
6335         (module_copy_string_contents, module_make_string)
6336         (module_make_user_ptr, module_get_user_ptr, module_set_user_ptr)
6337         (module_get_user_finalizer, module_set_user_finalizer)
6338         (module_vec_set, module_vec_get, module_vec_size): Use new helper
6339         macro MODULE_FUNCTION_BEGIN.
6341 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
6343         Don't reject module calls with no arguments
6345         * src/emacs-module.c (Finternal_module_call): Allow ARGLIST be nil.
6347 2015-11-28  Philipp Stephani  <p.stephani2@gmail.com>
6349         Make module-call be visible from Lisp
6351         * src/emacs-module.c (module_make_function): Use internal--module-call.
6352         (Finternal_module_call): Renamed from Fmodule_call.  Add safety
6353         checks.
6354         (syms_of_module): DEFSYM save-value-p and save-pointer-p.  Do
6355         defsubr internal--module-call.
6357 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
6359         Add etags tests for the recent Lua-related bugfix
6361         * test/etags/lua-src/test.lua: New file, tests the issues raised
6362         by bug#21934.
6363         * test/etags/Makefile (LUASRC): Add test.lua.
6364         * test/etags/ETAGS.good_1:
6365         * test/etags/ETAGS.good_2:
6366         * test/etags/ETAGS.good_3:
6367         * test/etags/ETAGS.good_4:
6368         * test/etags/ETAGS.good_5:
6369         * test/etags/ETAGS.good_6:
6370         * test/etags/CTAGS.good: Adapt to the new Lua test.  Also, an old
6371         regression fix, resolved around 25 May 2015, required changes to
6372         the "good" ETAGS files.
6374 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
6376         Fix Lua tags when a function name includes '.' or ':'
6378         * lib-src/etags.c (Lua_functions): Add a tag for the last element
6379         of a function name after a dot or a colon.  (Bug#21934)
6381 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
6383         Improve documentation of search and replace commands
6385         * doc/emacs/search.texi (Replacement and Lax Matches): Document
6386         which commands are affected by 'replace-character-fold'.
6387         (Lax Search): Add a cross reference to "Replacement and Lax
6388         Matches".  Improve wording.  Fix lost extra whitespace.
6389         (Search Customizations): Improve wording.  (Bug#22036)
6390         See also comments in
6391         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02376.html.
6393         * lisp/replace.el (query-replace, query-replace-regexp)
6394         (query-replace-regexp-eval, replace-string, replace-regexp):
6395         Mention 'replace-character-fold' in the doc strings.
6397 2015-11-28  Paul Eggert  <eggert@cs.ucla.edu>
6399         Fix minor problems found by static checking
6401         * src/undo.c (prepare_record): Add proper prototype for C.
6403 2015-11-27  Stefan Monnier  <monnier@iro.umontreal.ca>
6405         * src/emacs-module.c (struct env_storage): Delete
6407         (struct emacs_runtime_private): Keep an emacs_env instead.
6408         (Fmodule_load, Fmodule_call): Declare emacs_env_private separately.
6409         (initialize_environment): Split the arg in two.  Adjust all callers.
6410         Only store the private part in Vmodule_environments.
6411         (finalize_environment): Change the arg to only be the private env.
6412         Adjust all callers.
6414 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
6416         Improve documentation of 'replace-character-fold'
6418         * lisp/replace.el (replace-character-fold): Clarify which commands
6419         are affected by this variable.
6421 2015-11-27  Dmitry Gutov  <dgutov@yandex.ru>
6423         Autoload etags when using its xref backend
6425         * lisp/progmodes/xref.el (xref--etags-backend):
6426         Rename to etags--xref-backend.  Move to etags.el.  Autoload.
6427         (Bug#22026)
6429 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
6431         * lisp/character-fold.el: Allow complex chars to match their decomposition
6433         (character-fold-table): When a character's decomposition does not
6434         involve a formatting tag (i.e., if it has an "exact" description via
6435         other characters), then this character is allowed to match the
6436         decomposition.
6438 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
6440         * lisp/character-fold.el: More descriptive variable names
6442         (character-fold-table): Rename a lot of the lexical variables to
6443         make the code easier to read.
6445 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
6447         * lisp/isearch.el: Ensure we still support `isearch-new-word'
6449         (isearch-new-regexp-function): Define variable.
6450         (isearch-new-word): Define as an obsolete alias. (Bug#22018)
6452 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
6454         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
6456 2015-11-27  Lee Bochicchio  <lboc.home@gmail.com>
6458         * test/lisp/abbrev-tests.el: Define more tests
6460         (abbrev-table-name-test, kill-all-abbrevs-test)
6461         (clear-abbrev-table-test): New tests.
6463 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
6465         Add module tests for wrong-type-argument
6467         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
6468         wrong-type-argument.
6470 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
6472         Improve handling of signals and 'throw' in modules
6474         * src/emacs-module.c: Add commentary explaining how to write
6475         functions in this file.
6476         (module_make_global_ref, module_free_global_ref)
6477         (module_non_local_exit_signal, module_non_local_exit_throw)
6478         (module_make_function, module_funcall, module_intern)
6479         (module_type_of, module_is_not_nil, module_eq)
6480         (module_extract_integer, module_make_integer)
6481         (module_extract_float, module_make_float)
6482         (module_copy_string_contents, module_make_string)
6483         (module_make_user_ptr, module_get_user_ptr, module_set_user_ptr)
6484         (module_get_user_finalizer, module_set_user_finalizer)
6485         (module_vec_set, module_vec_get, module_vec_size)
6486         (module_non_local_exit_signal_1, module_non_local_exit_throw_1):
6487         Do nothing and return with failure indication immediately, if some
6488         previous module call signaled an error or wants to throw.  See
6489         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02133.html
6490         for the relevant discussions.
6492 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
6494         Add ':version' tag to 'checkdoc-package-keywords-flag'
6496         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
6497         Add a ':version' tag.
6499 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
6501         Improve documentation of 'eval-buffer' and 'eval-region'
6503         * src/lread.c (Feval_buffer, Feval_region): Doc fixes.  (Bug#22023)
6505         * doc/lispref/eval.texi (Eval): Mention narrowing to clarify
6506         "accessible portion of buffer".
6508 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
6510         Unbreak the Cygwin w32 build
6512         * src/emacs.c (main): Call w32_init_main_thread in the Cygwin w32
6513         build as well.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
6515 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
6517         Improve commentary in character-fold.el
6519         * lisp/character-fold.el (character-fold-to-regexp): Move detailed
6520         description from commit log message to comments.  (Bug#22019)
6522 2015-11-26  Alan Mackenzie  <acm@muc.de>
6524         Byte Compiler: generate code to adjust stack count after call to `signal'.
6526         Corrects change from earlier today.
6528         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): supply the current value of
6529         `byte-compile--for-effect' as argument to `byte-compile-form'.
6531 2015-11-26  Eli Zaretskii  <eliz@gnu.org>
6533         Improve commentary of prepare_to_modify_buffer_1
6535         * src/insdel.c (prepare_to_modify_buffer_1): Mention in commentary
6536         that this function runs Lisp.  Suggested by Richard Stallman
6537         <rms@gnu.org>.
6539 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
6541         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
6543 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
6545         Fix regression after merge.
6547          * src/undo.c (prepare_record): Remove call to run_undoable_change.
6549 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
6551         After delete, record point location in undo.
6553         Addresses Bug #21968.
6555                 * lisp/simple.el (undo-auto--add-boundary): Clean up code to
6556                 better support intercalating calls.
6557                 * src/keyboard.c, src/keyboard.h (command_loop_1): Store value of
6558                 point and current buffer before each command.
6559                 * src/undo.c (record_point): Now only record the point.
6560                 * src/undo.c (prepare_record): Functionality removed form
6561                 record_point.
6562                 * src/undo.c (record_delete): Check if point needs recording.
6563                 * src/undo.c (undo-boundary): Record value of point before each
6564                 boundary.
6565                 * test/automated/simple-test.el: New tests.
6567         Conflicts:
6568                 src/undo.c
6570 2015-11-26  Eli Zaretskii  <eliz@gnu.org>
6572         Fix compiler warnings in w32.c
6574         * src/w32.c (sys_socket): In case of error, use -1 as return
6575         value, not INVALID_SOCKET, which causes compiler warnings.
6576         (maybe_load_unicows_dll): Cast the return value of GetProcAddress
6577         to the appropriate function signature, to avoid compiler errors.
6578         Reported by Andy Moreton <andrewjmoreton@gmail.com>.  (Bug#21953)
6580 2015-11-26  Dmitry Gutov  <dgutov@yandex.ru>
6582         Check if the file exists on disk before producing the revert diff
6584         * lisp/vc/vc-dispatcher.el (vc-buffer-sync): Check if the file
6585         exists on disk (bug#20558).
6587 2015-11-26  Alan Mackenzie  <acm@muc.de>
6589         Byte compiler: on setq with an odd number of arguments, generate a `signal'
6591         * lisp/emacs-lisp/cconv.el (cconv-convert): Don't transform `setq' form when
6592         it has an odd number of arguments, to allow bytecomp to handle the error.
6594         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): In a `setq' form with an
6595         odd number of arguments, generate a `signal' instead of the normal code.
6597 2015-11-25  Dmitry Gutov  <dgutov@yandex.ru>
6599         Use find-tag-default for xref-backend-identifier-at-point
6601         * lisp/progmodes/etags.el (find-tag-tag)
6602         (tags-completion-at-point-function): Extract common code as
6603         find-tag--default.
6604         (xref-backend-identifier-at-point): Define in terms of the new
6605         function.
6607 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
6609         * src/undo.c (record_property_change): Remove now-unused local.
6611 2015-11-25  Phillip Lord  <phillip.lord@russet.org.uk>
6613         run_undoable_changes now called from insdel.
6615         The original calls from inside undo.c are not always at a safe position
6616         to call lisp, as they originate in varied positions within insdel.c.
6617         Calling them directly from prepare_to_modify_buffer_1 ensures that they
6618         are always run at the same point.
6620          * src/undo.c (run_undoable_changes,syms_of_undo): Remove function
6621          and symbol used.
6622          * src/insdel.c (run_undoable_changes): Add function and symbol.
6624 2015-11-25  Eli Zaretskii  <eliz@gnu.org>
6626         Improve and update documentation of search commands
6628         * doc/emacs/search.texi (Lax Search): Renamed from "Search Case";
6629         all references changed.  Move the description of lax-whitespace
6630         here.  Add description of the new character folding features and
6631         additional customizable options.
6632         (Isearch Yank): Move before "Error in Search".
6633         (Basic Isearch): Improve wording.  Add index entries.  Add short
6634         description of how to abandon search, making this subsection a
6635         complete introduction to search basics.
6636         (Repeat Isearch): Add index entries.  Describe additional
6637         customizable options.  Describe mouse clicks.
6638         (Isearch Yank): Add index entries.  Describe mouse-2 click in echo
6639         area.  Describe more customizable options.
6640         (Error in Isearch): Add index entries.
6641         (Special Isearch): Move actual description of some isearch
6642         commands to other sections, leaving here just the summary of the
6643         commands.  Add command that toggles character folding.  Describe
6644         commands, like "C-h C-h", that were previously omitted for some
6645         reason.
6646         (Not Exiting Isearch): Describe search-exit-option.  Add index
6647         entries.
6648         (Word Search): Describe eww-search-word and eww-search-prefix.
6649         (Symbol Search): Add index entries.
6650         (Regexp Search): Describe regexp-search-ring-max.
6651         (Replacement and Lax Matches): Renamed from "Replacement and
6652         Case"; all references changed.  Describe lax-whitespace matching
6653         in replace commands and related options.  Describe character
6654         folding in replace commands and related options.
6655         (Query Replace): Describe query-replace-from-to-separator and the
6656         new history features.  Add index entries for highlighted text.
6657         Describe query-replace-skip-read-only.  Describe more keys
6658         accepted by query-replace.
6659         (Other Repeating Search): More index entries for Occur.  Describe
6660         list-matching-lines-default-context-lines.
6661         (Search Customizations): New section, documents customizable
6662         options that were not documented until now.
6663         * doc/emacs/glossary.texi (Glossary): Add "Case Folding" and
6664         "Character Folding".
6666         * etc/NEWS: Move search- and replace-related entries to a single
6667         parent section.
6669         * lisp/replace.el (query-replace-show-replacement): Doc fix.
6670         * lisp/isearch.el (search-nonincremental-instead)
6671         (isearch-hide-immediately): Doc fixes.
6673 2015-11-25  Katsumi Yamaoka  <yamaoka@jpl.org>
6675         Remove nnml-retrieve-groups that is unnecessary and somewhat problematic
6677         * lisp/gnus/nnml.el (nnml-retrieve-groups): Remove.  See:
6678         <http://thread.gmane.org/gmane.emacs.gnus.general/86308> and
6679         <http://thread.gmane.org/gmane.emacs.gnus.general/86321>
6681 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
6683         Fix module_format_fun_env when dynlib_addr fails
6685         * src/emacs-module.c (module_format_fun_env):
6686         exprintf doesn’t support %p, so use %x.  Reported by Eli Zaretskii in:
6687         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02122.html
6689 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
6691         Disambiguate variable help a bit better
6693         * lisp/help-fns.el (describe-variable): Quote the
6694         variable’s value if it is a symbol other than t or nil.
6695         See: T.V Raman in:
6696         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02147.html
6698 2015-11-24  Dmitry Gutov  <dgutov@yandex.ru>
6700         Pass SVN commit message through log-edit-extract-headers
6702         * lisp/vc/vc-svn.el (vc-svn-checkin): Pass COMMENT through
6703         log-edit-extract-headers (bug#18954).
6705 2015-11-24  Alan Mackenzie  <acm@muc.de>
6707         CC Mode: Eliminate compiler warning messages.
6709         * lisp/progmodes/cc-mode.el (top level): remove compile time declaration of
6710         `font-lock-syntactic-keywords' (which CC Mode doesn't use).
6711         * lisp/progmodes/cc-awk.el (awk-mode-syntax-table)
6712         (c-awk-set-syntax-table-properties): Clarify comments about
6713         `font-lock-syntactic-keywords'.
6715         * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-load): Create a dummy declaration
6716         of this before the real (interpreted) one, to satisfy the byte compiler.
6718 2015-11-24  Simen Heggestøyl  <simenheg@gmail.com>
6720         Extend the test suite for json.el
6722         * lisp/json.el (json-plist-p): Clarify docstring.
6724         * test/automated/json-tests.el (json-tests--with-temp-buffer): New
6725         macro.
6726         (test-json-join, test-json-alist-p)
6727         (test-json-plist-p, test-json-advance, test-json-peek)
6728         (test-json-pop, test-json-skip-whitespace)
6729         (test-json-read-keyword, test-json-encode-keyword)
6730         (test-json-read-number, test-json-encode-number)
6731         (test-json-read-escaped-char, test-json-read-string)
6732         (test-json-encode-string, test-json-encode-key)
6733         (test-json-new-object, test-json-add-to-object)
6734         (test-json-read-object, test-json-encode-list)
6735         (test-json-read-array, test-json-encode-array)
6736         (test-json-read, test-json-read-from-string)
6737         (test-json-encode): New tests.
6738         (json-read-simple-alist): Merged into `test-json-read-object'.
6739         (json-encode-string-with-special-chars): Merged into
6740         `test-json-encode-string'.
6741         (json-read-string-with-special-chars): Split into
6742         `test-json-encode-string' and `test-json-read-from-string'.
6744 2015-11-24  Anders Lindgren  <andlind@gmail.com>
6746         Fixed bug#18283: Enable applescript in NextStep.
6748         * nextstep/templates/Info.plist.in: Set NSAppleScriptEnabled to YES.
6750 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
6752         Allow completion on dynamic module files in load-library
6754         * lisp/files.el (load-library): Bind completion-ignored-extensions
6755         to nil, to allow completion on dynamic modules typed as file
6756         names.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
6758 2015-11-24  Alan Mackenzie  <acm@muc.de>
6760         CC Mode: eliminate almost all byte compilation warnings
6762         * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-noruntime-functions): Remove.
6763         (cc-require): Remove the crude hack that saved and restored
6764         byte-compile-noruntime-functions.
6765         (cc-conditional-require, cc-conditional-require-after-load): New macros.
6767         * lisp/progmodes/cc-defs.el (top level): Reformulate code which loaded
6768         cc-fix.el using the new macros in cc-bytecomp.el.
6770         * lisp/progmodes/cc-langs.el (c++-template-syntax-table)
6771         (c-no-parens-syntax-table): Add extra "(eval ..)"s around "'(lambda ..)"
6772         forms to remove the superflous quotes.
6774 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
6776         Add one more mod-test test
6778         * modules/mod-test/test.el (mod-test-sum-test): Test the error
6779         signaled when the function is invoked with a wrong number of
6780         arguments.
6782 2015-11-24  Philipp Stephani  <phst@google.com>
6784         * modules/mod-test/mod-test.c (Fmod_test_sum): Verify there are 2 args.
6786 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
6788         Implement dynlib_addr for MS-Windows
6790         * src/dynlib.c [WINDOWSNT]: Include w32common.h.
6791         <g_b_init_get_module_handle_ex> [WINDOWSNT]: New static variable.
6792         (GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS)
6793         (GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT) [WINDOWSNT]: Define
6794         if undefined.
6795         (dynlib_reset_last_error): Reset g_b_init_get_module_handle_ex to
6796         zero.
6797         (dynlib_addr) [WINDOWSNT]: Non-trivial implementation to report
6798         the full file name of the module for a given address.
6800 2015-11-24  Alan Mackenzie  <acm@muc.de>
6802         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
6804 2015-11-24  Alan Mackenzie  <acm@muc.de>
6806         Squashed commit of the following:
6808         commit e1ecf76585bef2eb87995f7a7f92cc12003a6f70
6809         Author: Alan Mackenzie <acm@muc.de>
6810         Date:   Tue Nov 24 16:50:09 2015 +0000
6812             Byte compile: minor amendments.
6814             * lisp/emacs-lisp/bytecomp.el (byte-compile-initial-macro-environment):
6815             add a comment to explain the binding of variables around a subsidiary
6816             compilation.
6817             (byte-compile-new-defuns): Amend the doc string.
6819         commit c537bfed1dda1593d218956ff00c6105a3ff0316
6820         Author: Alan Mackenzie <acm@muc.de>
6821         Date:   Sat Nov 21 18:43:57 2015 +0000
6823             Byte compiler: fix spurious warnings "might not be defined at runtime".
6825             Also initialize byte-compile-noruntime-functions between runs.
6827             * lisp/emacs-lisp/bytecomp.el (byte-compile-new-defuns): New variable.
6828             (byte-compile-initial-macro-environment): For eval-when-compile: bind
6829             byte-compile-unresolved-functions and byte-compile-new-defuns around
6830             byte-compile-top-level, to prevent spurious entries being made.
6831             (byte-compile-warn-about-unresolved-functions): Check whether function is
6832             in byte-compile-new-defuns before emitting a warning about it.
6833             (byte-compile-from-buffer): Initialize new variable and
6834             byte-compile-noruntime-functions to nil.
6835             (byte-compile-file-form-require): record all new functions defined by a
6836             `require' in byte-compile-new-defuns.
6837             (byte-compile-file-form-defmumble): record the new alias in
6838             byte-compile-new-defuns.
6840 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
6842         Fix crash at startup related to GC of font entities
6844         * src/font.h (GC_FONT_SPEC_P, GC_FONT_ENTITY_P)
6845         (GC_FONT_OBJECT_P, GC_XFONT_SPEC, GC_XFONT_ENTITY)
6846         (GC_XFONT_OBJECT): New macros, for use in garbage collector.
6847         * src/alloc.c (compact_font_cache_entry, compact_font_caches):
6848         Don't ifdef away font cache compaction on NT_GUI, as the problems
6849         which led to that seem to have been solved.
6850         (compact_font_cache_entry): Use GC_FONT_SPEC_P, GC_XFONT_SPEC,
6851         GC_XFONT_ENTITY, and GC_XFONT_OBJECT, instead of their non-GC_
6852         cousins.  (Bug#21999)
6854 2015-11-24  Alan Mackenzie  <acm@muc.de>
6856         Byte compile: Output an error, not a warning, for odd number of args to setq
6858         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): Amend.
6860 2015-11-24  Ken Raeburn  <raeburn@raeburn.org>
6862         Fix kbd_buffer iteration loop in readable_events
6864         * src/keyboard.c (readable_events): Wrap the event pointer back to the
6865         start of the kbd_buffer array inside the top of the loop instead of
6866         right before checking the loop condition, since kbd_fetch_ptr and
6867         kbd_store_ptr point past the end of the array to mean that element 0
6868         is next. (bug#21935)
6870 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
6872         Improve text-quoting-style doc again
6874         * doc/lispref/help.texi (Keys in Documentation):
6875         Omit overkill discussion of ‘setq’.  Mention Emacs versions
6876         where ‘grave’ style was standard.
6878 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
6880         Improve text-quoting-style doc
6882 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
6884         Simplify module_make_function
6886         * src/emacs-module.c (module_make_function):
6887         Simplify by calling build_unibyte_string.
6889 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
6891         Port better to FreeBSD’s dlfunc vs dlsym
6893         This avoids warnings when converting between void * and
6894         function pointers, which strict C11 does not allow.
6895         * configure.ac (dlfunc): Check for existence.
6896         * src/dynlib.c (dlfunc) [!HAVE_DLFUNC]: New macro.
6897         (dynlib_func): New function.
6898         * src/dynlib.h (dynlib_function_ptr, dynlib_func): New decls.
6899         * src/emacs-module.c (Fmodule_load): Use dynlib_func, not
6900         dynlib_sym, for function pointers.
6902 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
6904         Simplify use of emacs_finalizer_function type
6906         * src/emacs-module.h (emacs_finalizer_function):
6907         Now EMACS_NOEXCEPT.  All users simplified to omit EMACS_NOEXCEPT.
6908         (struct emacs_env_25): Use emacs_finalizer_function where applicable.
6910 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
6912         module_format_fun_env fixes
6914         * src/doprnt.c (exprintf) [HAVE_MODULES]: Also define in this case.
6915         * src/emacs-module.c (module_format_fun_env):
6916         Convert path and sym to UTF-8.
6917         Don’t use VLAs, as the C11 standard says they’re optional,
6918         and anyway they can cause core dumps with large allocations.
6919         Use exprintf rather than snprintf, as exprintf handles arbitrarily
6920         long strings.  Simplify the code a bit.
6922 2015-11-23  Dmitry Gutov  <dgutov@yandex.ru>
6924         Don't use package-user-dir in elisp-library-roots if it's not bound
6926         * lisp/progmodes/elisp-mode.el (elisp-library-roots): Don't
6927         use package-user-dir if it's not bound (bug#19759).
6929 2015-11-23  Anders Lindgren  <andlind@gmail.com>
6931         New visible-bell for NextStep (OS X El Capitan compatible).
6933         Instead of inverting a rectangle in the middle of the frame, use
6934         the standard NextStep image "caution", represented using an
6935         warning sign with an exclamation mark.  (Bug#21662)
6937         Implemented based on a suggestion drafted by Mustafa Kocaturk.
6939         * src/nsterm.m (EmacsBell): New class for managing the caution
6940         image.  Support multiple active bells, the image is removed once
6941         all bells have timed out.
6942         (ns_timeout): Removed, no longer used.
6943         (ns_ring_bell): Reimplemented to use EmacsBell.
6945 2015-11-23  Johan Bockgård  <bojohan@gnu.org>
6947         * lisp/emacs-lisp/nadvice.el (add-function): Fix debug spec.
6949         (remove-function): Ditto. (Bug#20376)
6951 2015-11-23  Mark Oteiza  <mvoteiza@udel.edu>
6953         * lisp/leim/quail/tamil-dvorak.el: Add necessary escapes.
6955 2015-11-23  Eli Zaretskii  <eliz@gnu.org>
6957         Improve how non-ASCII strings are accepted from modules
6959         * src/emacs-module.c (module_make_function, module_make_string):
6960         Build a unibyte Lisp string and then decode it by UTF-8, instead
6961         of building a multibyte string without decoding.  This is more
6962         tolerant to deviations from UTF-8.
6964 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
6966         Port recent module changes to pickier compilers
6968         * src/emacs-module.c (module_make_function)
6969         (module_make_string): Add casts to fix pointer signedness issues.
6971 2015-11-23  Philipp Stephani  <phst@google.com>
6973         Fix how strings are accepted from modules
6975         * emacs-module.c (module_make_function, module_make_string): Use
6976         make_multibyte_string.
6977         (module_copy_string_contents): Encode before reading the byte
6978         size.  Return false if and only if an error occurred.
6980 2015-11-23  Eli Zaretskii  <eliz@gnu.org>
6982         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
6984 2015-11-23  Shakthi Kannan  <shakthimaan@gmail.com>
6986         Add the tamil-dvorak input method
6988         * lisp/leim/quail/tamil-dvorak.el: New file.  (Bug#21768)
6990         * etc/NEWS: Mention the new input method.
6992 2015-11-23  Martin Rudalics  <rudalics@gmx.at>
6994         Move setting FRAME_WINDOW_SIZES_CHANGED to resize_frame_windows.
6996         * src/frame.c (adjust_frame_size): Don't set
6997         FRAME_WINDOW_SIZES_CHANGED here ...
6998         * src/window.c (resize_frame_windows): ... but here, as suggested
6999         by Stefan Monnier.  Also remove some dead code along the way.
7001 2015-11-23  Alan Mackenzie  <acm@muc.de>
7003         * /etc/NEWS (Incompatible Lisp Changes): Also `setf' needs an even # of args.
7005 2015-11-23  Alan Mackenzie  <acm@muc.de>
7007         Signal an error when `setf' gets an odd number of arguments.
7009         * lisp/emacs-lisp/gv.el (setf): Amend.
7011 2015-11-23  Stefan Monnier  <monnier@iro.umontreal.ca>
7013         * lisp/emacs-lisp/smie.el (smie-backward-sexp): Handle BOB better.
7015 2015-11-23  Alan Mackenzie  <acm@muc.de>
7017         * etc/NEWS (Incompatible Lisp Changes): Document new restriction on `setq'.
7019 2015-11-23  Alan Mackenzie  <acm@muc.de>
7021         Expunge occurrences of `setq' with an odd number of arguments.
7023         * lisp/apropos.el (apropos-documentation):
7024         * lisp/obsolete/complete.el (PC-include-file-all-completions):
7025         * lisp/progmodes/compile.el (compilation-goto-locus):
7026         * lisp/vc/vc-cvs.el (vc-cvs-parse-root): (twice)
7027         Insert missing nil at end of `setq' forms.
7029         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-autoload): Remove an
7030         erroneous trailing variable name from a setq, thus allowing a compilation
7031         properly to track functions not defined at runtime.
7033 2015-11-23  John Wiegley  <johnw@newartisans.com>
7035         Add a note about a questionable use of bool in xdisp.c
7037 2015-11-23  Alan Mackenzie  <acm@muc.de>
7039         Issue a warning from the byte compiler on a malformed `setq' form.
7041         Partly fixes bug#20241.
7042         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): Issue a warning when a
7043         `setq' form with an odd number of arguments is compiled.
7045 2015-11-23  Alan Mackenzie  <acm@muc.de>
7047         Don't let cconv_convert insert a nil argument into a `setq' form.
7049         Fixes bug#21983.
7050         * lisp/emacs-lisp/cconv.el (cconv-convert): Don't silently insert a nil last
7051         argument into a `setq' when there're an odd number of args.  This enables the
7052         byte compiler to issue a message in this case.
7054 2015-11-23  Alan Mackenzie  <acm@muc.de>
7056         Signal an error when `setq' has an odd number of arguments.  Fixes bug#20241.
7058         * src/eval.c (Fsetq): Signal an error on an odd number of arguments.
7059         (syms_of_eval): Add a DEFSYM for Qsetq.
7061 2015-11-23  Martin Rudalics  <rudalics@gmx.at>
7063         * doc/lispref/windows.texi (Window Sizes): Fix indices and references.
7065         * src/frame.c (adjust_frame_size): Set FRAME_WINDOW_SIZES_CHANGED (Bug#21975).
7067 2015-11-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
7069         Add EUDC BBDB 3 entry in NEWS
7071         * NEWS: Mention EUDC BBDB backend support for BBDB 3.
7073 2015-11-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
7075         Improve EUDC to BBDB 3 export
7077         * eudc-vars.el (eudc-ldap-bbdb-conversion-alist): Change phone
7078         entry to single item.  Add company conversion.
7079         * eudc-export.el (eudc-bbdbify-company): New function.
7080         (bbdb-parse-phone): Declare function.
7081         (eudc-bbdbify-phone): Add BBDB 3 support.
7082         (Bug#21971)
7084 2015-11-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
7086         Add BBDB 3 support for EUDC export
7088         * eudc.el: Add bbdb-version defvar.
7089         (eudc--using-bbdb-3-or-newer-p): New function.
7090         * eudc-export.el (eudc-create-bbdb-record): Add support for
7091         bbdb-create-internal argument list changes introduced in BBDB 3.
7092         * eudcb-bbdb.el: Remove bbdb-version defvar.
7093         (eudc-bbdb-field): Call eudc--using-bbdb-3-or-newer-p.
7094         (Bug#21971)
7096 2015-11-22  Eli Zaretskii  <eliz@gnu.org>
7098         Allow loading modules by 'load-file'
7100         * src/lread.c (Fload): Call 'unbind_to' with 'Fmodule_load' as the
7101         2nd arg, to avoid the "binding stack not balanced" error.
7102         (syms_of_lread) <module-file-suffix>: New Lisp variable.
7104         * lisp/files.el (module-file-suffix): Declare.
7105         (load-file): Remove 'module-file-suffix' from
7106         'completion-ignored-extensions', to allow completion on modules.
7108         * etc/NEWS: Mention 'module-file-suffix'.
7110 2015-11-22  Eli Zaretskii  <eliz@gnu.org>
7112         Fix unoptimized builds
7114         * src/lisp.h (XTYPE): Move before XSYMBOL, to fix unoptimized
7115         builds.
7117 2015-11-22  Dmitry Gutov  <dgutov@yandex.ru>
7119         Work around the asynchronous-empty-diff problem
7121         * lisp/vc/vc-rcs.el (vc-rcs-diff):
7122         * lisp/vc/vc-mtn.el (vc-mtn-diff):
7123         * lisp/vc/vc-hg.el (vc-hg-diff):
7124         * lisp/vc/vc-git.el (vc-git-diff): Ignore the ASYNC argument,
7125         do a synchronous process call (bug#21969).
7127 2015-11-21  Karl Fogel  <kfogel@red-bean.com>
7129         Finish excising electric indent from `open-line'
7131         * lisp/simple.el (open-line): Remove INTERACTIVE argument.
7133         * test/automated/simple-test.el (open-line-indent, open-line-hook):
7134           Adjust accordingly.
7136         This change finishes what my commit of Thu Nov 19 17:32:37 2015 -0600
7137         (git commit c59353896) started.  It turns out that having INTERACTIVE
7138         cause `post-self-insert-hook' to run (via `newline') meant `open-line'
7139         still had the electric indent behavior, as `post-self-insert-hook'
7140         normally contains `electric-indent-post-self-insert-function' ever
7141         since `electric-indent-mode' has been on by default.  Tracing the code
7142         change in `open-line' is mildly twisty, because Artur Malabarba's
7143         earliest two commits of 24 Oct 2015 first removed the `interactive'
7144         form entirely (git commit 6939896e2) and then restored it with the new
7145         extra "p" already added (git commit bd4f04f86), such that there is no
7146         single-commit diff in which one sees the second "p" appear.  Thus this
7147         change is effectively a reversion of parts of each of those commits.
7149         This could close bug#21884, at least until further discussion.
7151 2015-11-21  Dmitry Gutov  <dgutov@yandex.ru>
7153         Adhere closer to the "implicit tag name" definition
7155         * lisp/progmodes/etags.el (etags-tags-completion-table):
7156         Adhere closer to the "implicit tag name" definition.  Simplify
7157         the regexp.  Search for the explicit tag name first, and when
7158         not found, search locally for the implicit one.  (Bug#21934)
7160 2015-11-21  Stefan Monnier  <monnier@iro.umontreal.ca>
7162         Unrevert most of regexp reentrancy abort patch
7164         The problem was in:
7165           * src/syntax.c (update_syntax_table_forward): Propertize even when truncated
7166         which is hence not unreverted.
7167         The rest is:
7168         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
7169         (UPDATE_SYNTAX_TABLE_FAST): Re-introduce.
7170         All callers in regex.c changed back to the _FAST versions.
7172         * test/automated/message-mode-tests.el: Tweak the test to rely on auto
7173         propertization in backward-sexp.
7175 2015-11-21  Paul Eggert  <eggert@cs.ucla.edu>
7177         Revert regexp reentrancy abort patch
7179         Although the patch does fix Bug#21688 and prevents a core dump,
7180         it also makes the message-mode-propertize test fail; see:
7181         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01667.html
7182         Perhaps someone else can come up with a better fix some day.
7183         * src/syntax.c (update_syntax_table_forward):
7184         Propertize even when truncated.
7185         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
7186         (UPDATE_SYNTAX_TABLE_FAST): Remove.
7187         All callers changed back to the non-_FAST versions.
7189 2015-11-21  Paul Eggert  <eggert@cs.ucla.edu>
7191         Add a few safety checks when ENABLE_CHECKING
7193         This was motivated by the recent addition of module code,
7194         which added some ENABLE_CHECKING-enabled checks that are
7195         useful elsewhere too.
7196         * src/alloc.c (compact_font_cache_entry):
7197         * src/fns.c (sweep_weak_table):
7198         * src/lread.c (oblookup):
7199         Use gc_asize rather than doing it by hand.
7200         * src/emacs-module.c (module_make_global_ref)
7201         (module_free_global_ref, module_vec_size):
7202         Omit assertions that lisp.h now checks.
7203         * src/lisp.h (XFASTINT, ASIZE): In functional implementations,
7204         check that the result is nonnegative.  Use eassume, as this
7205         info can help a bit when optimizing production code.
7206         (XSYMBOL) [!USE_LSB_TAG]: Assert that argument is a symbol,
7207         to be consistent with the USE_LSB_TAG case.
7208         (gc_asize): New function, when ASIZE is needed in the gc.
7209         (gc_aset): Use it.
7210         (HASH_TABLE_P): Move definition up, so that it can be used ...
7211         (XHASH_TABLE): ... here, to assert that the arg is a hash table.
7213 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
7215         Simplify recording of main thread's ID on MS-Windows
7217         * src/w32term.c (w32_initialize):
7218         * src/w32console.c (initialize_w32_display):
7219         * src/w32fns.c (globals_of_w32fns): Don't record the main thread
7220         ID independently for each type of session (GUI, TTY, batch).
7221         * src/w32term.c (w32_init_main_thread): New function, records the
7222         main thread's thread ID.
7223         * src/w32term.h: Add prototype for w32_init_main_thread.
7224         * src/emacs.c (main) [WINDOWSNT]: Call w32_init_main_thread.
7226         * src/emacs-module.c [WINDOWSNT]: Rename main_thread_id to
7227         main_thread, for consistency with other threading libraries.  All
7228         users changed.  Include w32term.h.
7229         (check_main_thread) [WINDOWSNT]: Simplify the test: no need to
7230         make sure the main thread is alive, as we hold a handle on it
7231         opened by w32_init_main_thread.
7232         (module_init) [WINDOWSNT]: Reuse the thread ID recorded by
7233         w32_init_main_thread, instead of calling the requisite APIs once
7234         more.
7236 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
7238         Call 'window-size-change-functions' for mini-windows
7240         * src/window.c (grow_mini_window, shrink_mini_window): Set the
7241         frame's 'window_sizes_changed' flag.
7242         * src/xdisp.c (redisplay_internal): Call the hooks on
7243         'window-size-change-functions' if the call to 'echo_area_display'
7244         sets the frame's 'window_sizes_changed' flag.
7245         (syms_of_xdisp) <window-size-change-functions>:
7246         Update doc string to indicate the mini-window resizes trigger a
7247         call to the hooks, and don't promise that will happen "before
7248         redisplay".  (Bug#19576, Bug#21333)
7250         * doc/lispref/windows.texi (Window Hooks): Update the description
7251         of 'window-size-change-functions'.
7253 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
7255         Improve documentation of dynamic modules
7257         * src/fns.c (Frequire): Doc fix to include the dynamic module
7258         support.
7259         * src/lread.c (Fload, Vload_suffixes): Doc fixes to include the
7260         dynamic module support.
7261         (Fload): Treat the module suffix the same as '*.el' and '*.elc'
7262         wrt the MUST-SUFFIX argument.
7264         * etc/NEWS: Expand documentation of dynamically loaded modules.
7266 2015-11-21  Philipp Stephani  <phst@google.com>  (tiny change)
7268         Initial documentation for dynamic modules
7270         * etc/NEWS: Mention the new support for dynamically loaded modules.
7272 2015-11-20  Dmitry Gutov  <dgutov@yandex.ru>
7274         Add xref--etags-backend to xref-backing-functions using add-hook
7276         * lisp/progmodes/xref.el (xref-backend-functions): Move the
7277         default value into a separate `add-hook' call (bug#21964).
7279         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
7280         Don't declare the xref-backend-functions variable.
7281         It doesn't make any difference.
7283 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
7285         Fix double-decrement bug when freeing global refs
7287         * src/emacs-module.c (module_free_global_ref): Add a FIXME
7288         comment about error reporting.  Fix a recently-introduced typo
7289         that double-decremented the refcount.
7291 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
7293         Declare emacs_module_init in the module API
7295         * src/emacs-module.h (emacs_module_init): New decl.
7296         Without it, GCC might complain about a module that defines
7297         emacs_module_init without using it.  This also checks the
7298         API better.
7300 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
7302         Fix module test to use ptrdiff_t nargs too
7304         * modules/mod-test/mod-test.c (Fmod_test_return_t)
7305         (Fmod_test_sum, Fmod_test_signal, Fmod_test_throw)
7306         (Fmod_test_non_local_exit_funcall, Fmod_test_globref_make)
7307         (Fmod_test_string_a_to_b, Fmod_test_userptr_make)
7308         (Fmod_test_userptr_get, Fmod_test_vector_fill)
7309         (Fmod_test_vector_eq): Arg counts are ptrdiff_t, not int.
7310         (finalizer): Remove; no longer used.
7312 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
7314         Fix reindent-introduced typo in module code
7316         * src/emacs-module.c (MODULE_SETJMP_1): Fix typo that I
7317         introduced while reindenting the code earlier, and add a
7318         comment explaining the unusual use of do-while here.
7320 2015-11-20  Anders Lindgren  <andlind@gmail.com>
7322         Fixed bug#19576: `write-file' saves wrong buffer.
7324         If a function on the hook `window-size-change-functions' doesn't
7325         restore the current buffer, functions that save and restore the
7326         current window configuration (like `y-or-no-p') could silently
7327         change the current buffer.  When `write-file' asked the user
7328         confirmation to overwrite a file, `y-or-no-p' changed the current
7329         buffer, and the wrong buffer was saved to the file.
7331         * lisp/follow.el (follow-windows-start-end): Call `select-frame'
7332         using the `norecord' parameter.
7333         (follow-window-size-change): Restore current buffer. Call
7334         `select-frame' using the `norecord' parameter. Cleanup.
7336 2015-11-20  John Wiegley  <johnw@newartisans.com>
7338         Correct a documentation error in frames.texi
7340 2015-11-20  Stephen Leake  <stephen_leake@stephe-leake.org>
7342         * lisp/cedet/mode-local.el: Delete obsolete comment
7344 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
7346         Module function arg counts are ptrdiff_t, not int
7348         * src/emacs-module.c (struct module_fun_env)
7349         (module_make_function, module_funcall, Fmodule_call):
7350         * src/emacs-module.h (struct emacs_runtime, struct emacs_env_25):
7351         Use ptrdiff_t, not int, for arg counts.
7352         * src/emacs-module.c (module_make_function): Don’t bother
7353         checking arity against MOST_POSITIVE_FIXNUM, as that’s
7354         unnecessary here.  Make the checking clearer by negating it.
7355         (module_make_function, Fmodule_call): No need to use xzalloc
7356         since the storage doesn’t need to be cleared.
7357         (module_funcall): Don’t use VLA, since C11 doesn’t guarantee support
7358         for it, and many implementations are buggy with large VLAs anyway.
7359         Use SAFE_ALLOCA_LISP instead.
7360         (module_vec_set): Don’t crash if i < 0.
7361         (module_vec_get): Don’t crash if i < MOST_NEGATIVE_FIXNUM.
7362         (module_vec_set, module_vec_get): Do fixnum checks only when
7363         i is out of array bounds, for efficiency in the usual case.
7364         (Fmodule_load): Simplify fixnum range check.
7365         (Fmodule_call): Simplify arity check.  Use xnmalloc to detect
7366         integer overflow in array allocation size.
7368 2015-11-20  Eli Zaretskii  <eliz@gnu.org>
7370         Minor improvements in module test
7372         * modules/mod-test/mod-test.c: Include stdlib.h, to avoid warnings
7373         about missing prototype of malloc.
7374         * modules/mod-test/Makefile (CFLAGS): Add -std=gnu99, to avoid
7375         compiler warnings.
7377 2015-11-20  Eli Zaretskii  <eliz@gnu.org>
7379         Improve MS-Windows implementation in dynlib.c
7381         * src/dynlib.c [WINDOWSNT]: Include errno.h, lisp.h, and w32.h.
7382         No need to include windows.h, as w32.h already does that.
7383         <dynlib_last_err>: New static variable.
7384         (dynlib_reset_last_error): New function.
7385         (dynlib_open): Convert forward slashes to backslashes.  Convert
7386         file names from UTF-8 to either UTF-16 or the current ANSI
7387         codepage, and call either LoadLibraryW or LoadLibraryA.  If the
7388         argument is NULL, return a handle to the main module, like
7389         'dlopen' does.  Record the error, if any, for use by dynlib_error.
7390         (dynlib_sym): Check the handle for validity. Record the error, if
7391         any, for use by dynlib_error.
7392         (dynlib_error): Call w32_strerror to produce the error string, and
7393         zero out the last error code, like dlerror does.
7394         (dynlib_close): Check the handle for validity.  Record the error,
7395         if any, for use by dynlib_error.  Don't call FreeLibrary with a
7396         handle for the main module.
7397         * src/w32.c (globals_of_w32): Call dynlib_reset_last_error.
7399 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
7401         Include-file tweaks for modules
7403         * src/dynlib.c, src/emacs-module.c: Include <config.h> first.
7404         * src/dynlib.h: Do not include config.h.
7405         It’s every .c file’s responsibility to include config.h first.
7406         * src/emacs-module.c: Include emacs-module.h immediately after
7407         config.h, to test that emacs-module.h doesn’t depend on
7408         include files other than config.h.
7410 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
7412         Simplify push_handler and profile its malloc
7414         * src/lisp.h (PUSH_HANDLER): Remove.
7415         All callers changed to use push_handler directly.
7416         * src/eval.c (internal_condition_case)
7417         (internal_condition_case_1, internal_condition_case_2)
7418         (internal_condition_case_n):
7419         Use same pattern as for other invokers of push_handler.
7420         (push_handler, push_handler_nosignal): Use call-by-value
7421         instead of call-by-reference.  All uses changed.
7422         (push_handler): Simplify by rewriting in terms of
7423         push_handler_nosignal.
7424         (push_handler_nosignal): Profile any newly allocated memory.
7426 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
7428         * src/emacs-module.h: Include stddef.h, not stdlib.h.
7430 2015-11-19  Juanma Barranquero  <lekktu@gmail.com>
7432         Discover repository version in linked worktrees (bug#21930)
7434         * lisp/version.el (emacs-repository--version-git-1): Do not assume
7435         HEAD is at .git/HEAD, it can also be at .git/worktrees/<branch>/HEAD.
7436         (emacs-repository-get-version): Grok linked worktrees when EXTERNAL
7437         is nil too.
7439 2015-11-19  Juri Linkov  <juri@linkov.net>
7441         * lisp/replace.el (occur-regexp-descr): New function.
7442         (occur-1, occur-engine): Use it.
7444         * lisp/isearch.el (isearch-occur): Propertize regexp with
7445         isearch-string and isearch-regexp-function-descr for
7446         occur-regexp-descr to display the correct description
7447         message in the header (bug#21176, bug#21180).
7449 2015-11-19  Karl Fogel  <kfogel@red-bean.com>
7451         Revert `open-line' electric-indent sensitivity
7453         * lisp/simple.el (open-line): Remove electric indent code.
7454           (electric-indent-just-newline): Don't declare.
7456         * test/automated/simple-test.el (open-line-indent): Adjust test.
7458         This partly reverts Artur Malabarba's change that added electric
7459         indent sensitivity to `open-line' (Oct 24 22:26:27 2015 +0100, git
7460         commit bd4f04f86), and adjusts a new test he added right afterwards
7461         (Sat Oct 24 23:43:06 2015 +0100, git commit 207f235e3) accordingly.
7462         However, the new INTERACTIVE argument to `open-line', which he also
7463         added in the first commit, is not reverted here.
7465         See the thread "Questioning the new behavior of `open-line'." on the
7466         Emacs Devel mailing list, and in particular this message:
7468           From: Artur Malabarba
7469           Subject: Re: Questioning the new behavior of `open-line'.
7470           To: Karl Fogel
7471           Cc: David Kastrup, Pierpaolo Bernardi, emacs-devel
7472           Date: Wed, 18 Nov 2015 21:03:58 +0000
7473           Message-ID: \
7474             <CAAdUY-KN06pvCMy5bt3+Buk3yeKjf6n9iB2FaSTTOPpCqPwyhA@mail.gmail.com>
7476           https://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01707.html
7478 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
7480         Omit unnecessary clear in Fmodule_load
7482         * src/emacs-module.c (Fmodule_load):
7483         Simplify and avoid unnecessary initialization of priv member to 0.
7485         * src/emacs-module.c: (module_vec_set, module_vec_get, module_vec_size)
7487 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
7489         Prefer signed integer types in module code
7491         Generally speaking, at the C level the Emacs source code prefers
7492         signed types like ‘ptrdiff_t’ to unsigned types like ‘size_t’,
7493         partly to avoid the usual signedness confusion when comparing values.
7494         Change the module API to follow this convention.
7495         Use ‘int’ for small values that can’t exceed INT_MAX.
7496         * modules/mod-test/mod-test.c (Fmod_test_globref_make)
7497         (Fmod_test_string_a_to_b, Fmod_test_vector_fill)
7498         (Fmod_test_vector_eq):
7499         * src/emacs-module.c (struct emacs_value_frame)
7500         (module_make_global_ref, module_free_global_ref)
7501         (module_copy_string_contents, module_make_string)
7502         (module_vec_set, module_vec_get, module_vec_size):
7503         * src/emacs-module.h (struct emacs_runtime, struct emacs_env_25):
7504         * src/lread.c (suffix_p):
7505         Prefer signed to unsigned integer types.
7507 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
7509         Omit ‘const’ on locals
7511         Remove ‘const’ qualifier from locals that were newly added.
7512         We don’t normally bother declaring locals with ‘const’ even
7513         though they are not modified, for the same reason we don’t
7514         bother declaring them with ‘register’ even though their
7515         addresses are not taken; the advantage in compile-time
7516         checking isn’t worth the loss of readability.
7517         * modules/mod-test/mod-test.c (Fmod_test_non_local_exit_funcall)
7518         (Fmod_test_vector_fill, Fmod_test_vector_eq):
7519         * src/emacs-module.c (MODULE_SETJMP_1)
7520         (module_make_global_ref, module_free_global_ref)
7521         (module_non_local_exit_get, module_make_function)
7522         (module_extract_integer, module_extract_float)
7523         (module_get_user_ptr, module_set_user_ptr)
7524         (module_get_user_finalizer, module_set_user_finalizer)
7525         (module_vec_get, Fmodule_call)
7526         (module_non_local_exit_signal_1)
7527         (module_non_local_exit_throw_1, lisp_to_value)
7528         (finalize_storage, allocate_emacs_value, mark_modules)
7529         (module_handle_signal, module_handle_throw)
7530         (module_format_fun_env):
7531         * src/eval.c (push_handler, push_handler_nosignal)
7532         (init_handler):
7533         * src/lread.c (suffix_p):
7534         Omit unnecessary ‘const’.
7536 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
7538         Prefer intmax_t to int64_t in module code
7540         * modules/mod-test/mod-test.c (sum, Fmod_test_sum):
7541         * src/emacs-module.c (module_extract_integer)
7542         (module_make_integer):
7543         * src/emacs-module.h (struct emacs_env_25):
7544         Prefer intmax_t to int64_t.  This doesn’t change the generated
7545         code on any of the machines Emacs currently ports to, but it’s
7546         at least in theory more future-proof as C99 doesn’t guarantee
7547         that int64_t exists.
7549 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
7551         Rename module.c to emacs-module.c, etc.
7553         * src/emacs-module.c: Rename from src/module.c.
7554         * src/emacs-module.h: Rename from src/module.h.
7555         All uses changed.
7557 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
7559         Fix minor module problems found by static checking
7561         * src/dynlib.c (dynlib_close): #ifdef out for now, as it’s not used.
7562         * src/eval.c, src/lisp.h (lisp_eval_depth): Now static.
7563         * src/module.c (Fmodule_load): Fix pointer signedness bug.
7564         (Fmodule_call): Tell GCC that the default case is unreachable.
7566 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
7568         Style fixes for indenting etc. in module code
7570         This is mostly indenting and spacing changes.  Also, remove
7571         some unnecessary static decls instead of bothering to reindent them.
7572         * src/module.h (EMACS_EXTERN_C_BEGIN): Remove, and do this inline,
7573         as most other Emacs files do for this sort of thing.
7575 2015-11-19  Eli Zaretskii  <eliz@gnu.org>
7577         Minor improvements in modules testing Makefile
7579         * modules/mod-test/Makefile (EMACS, SO): New variables.
7580         (CFLAGS): When SO = dll, don't use -fPIC.
7581         (check): New target, runs the test.
7583 2015-11-19  Eli Zaretskii  <eliz@gnu.org>
7585         * .gitignore: Add "*.dll".
7587 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
7589         Migrate modules/.gitignore into .gitignore
7591         * .gitignore: Add former contents of modules/.gitignore.
7592         * modules/.gitignore: Remove.
7594 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
7596         Add copyright notices to module code
7598         Put them in the usual format for GNU Emacs copyright notices.
7600 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
7602         Rename emacs_module.h to module.h
7604         * src/module.h: Rename from src/emacs_module.h.
7605         All uses changed.
7607 2015-11-19  Juanma Barranquero  <lekktu@gmail.com>
7609         * src/module.c (Fmodule_load): Remove unused vars `doc_name', `args'
7611         * src/lread.c (Fload): Remove unused variable `size'
7613 2015-11-19  Alan Mackenzie  <acm@muc.de>
7615         src/keyboard.c (pre-command-hook): Fix typo in doc string: "pre" -> "post".
7617 2015-11-18  Dmitry Gutov  <dgutov@yandex.ru>
7619         Prioritize looking inside vc-parent-buffer over log-view-mode fallback
7621         * lisp/vc/vc.el (vc-deduce-fileset): Prioritize looking inside
7622         vc-parent-buffer over log-view-mode fallback (bug#21955).
7624 2015-11-18  Alan Mackenzie  <acm@muc.de>
7626         lisp/isearch.el: Eliminate macro isearch-call-message, replacing with funcall.
7628 2015-11-18  Ken Brown  <kbrown@cornell.edu>
7630         * configure.ac (LIBMODULES): Don’t define on Cygwin
7632 2015-11-18  Eli Zaretskii  <eliz@gnu.org>
7634         Fix MS-Windows build --with-modules
7636         * src/module.c: Reformat copyright commentary.
7637         (module_vec_get): Use explicit cast to size_t to avoid compiler
7638         warning in 32-bit builds.
7639         (check_main_thread) [WINDOWSNT]: Fix letter-case in Windows APIs.
7640         Compare thread IDs directly, as GetThreadId is not available
7641         before Windows Vista.
7642         (check_main_thread) [WINDOWSNT]: Duplicate the thread handle
7643         without using APIs and constants not available on XP and older
7644         systems.  Obtain and store the thread ID as well.
7646 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
7647             Philipp Stephani  <phst@google.com>
7649         Add dynamic module test and helper script
7651         Add 'modhelp.py' script (python2) to automate module testing and
7652         module generation.
7654         To build and test all modules in the modules/ dir
7655           $ ./modhelp.py test
7657         To generate a module from template code (good starting point)
7658           $ ./modhelp init mynewtestmodule
7660         See the script -h option for more documentation.
7662         * modules/modhelp.py: New module helper script.
7663         * modules/mod-test/Makefile: New file. Makefile for the test module.
7664         * modules/mod-test/mod-test.c: New file. Test module source file.
7665         * modules/mod-test/test.el: New file. ert test suite for the test module.
7666         * modules/.gitignore: New file. Local .gitignore file.
7668 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
7670         Make 'Fload' look for modules
7672         'Fload' can now load dynamic modules. This also makes 'require' work.
7674         * src/lread.c:
7675           (suffix_p): New function.
7676           (Fload): Use 'suffix_p'.  Call 'Fmodule_load' when we try to load a file
7677           with a module suffix.
7678           (syms_of_lread): Append module suffix to 'Vload_suffixes'.
7680 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
7681             Philipp Stephani  <phst@google.com>
7683         Add dynamic module module support
7685         * configure.ac: Add '--with-modules' option.  Conditionally add
7686           dynlib.o and module.o to the list of objects.  Add any system
7687           specific flags to the linker flags to support dynamic libraries.
7688         * m4/ax_gcc_var_attribute.m4: Add autoconf extension to test gcc
7689           attributes.
7690         * src/Makefile.in: Conditionally add module objects and linker flags.
7691         * src/alloc.c (garbage_collect_1): protect module local values from
7692           GC.
7693         * src/lisp.h: Add 'module_init' and 'syms_of_module' prototypes.
7694         * src/emacs_module.h: New header file included by modules.  Public
7695           module API.
7696         * src/module.c: New module implementation file.
7698 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
7700         Add new User Pointer (User_Ptr) type
7702         * src/lisp.h: Add new Lisp_Misc_User_Ptr type.
7703         (XUSER_PTR): New User_Ptr accessor.
7704         * src/alloc.c (make_user_ptr): New function.
7705         (mark_object, sweep_misc): Handle Lisp_Misc_User_Ptr.
7706         * src/data.c (Ftype_of): Return 'user-ptr' for user pointer.
7707         (Fuser-ptrp): New user pointer type predicate function.
7708         (syms_of_data): New 'user-ptrp', 'user-ptr' symbol.  New 'user-ptrp'
7709         subr.
7710         * src/print.c (print_object): Add printer for User_Ptr type.
7712 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
7713             Philipp Stephani  <phst@google.com>
7715         Add portable layer for dynamic loading
7717         * src/dynlib.h: New file.
7718         * src/dynlib.c: New file.
7720 2015-11-18  Philipp Stephani  <phst@google.com>
7722         Add catch-all & no-signal version of PUSH_HANDLER
7724         Ground work for modules. Add a non-signaling version of PUSH_HANDLER and
7725         a new "catch-all" handler type.
7727         * src/eval.c (init_handler, push_handler, push_handler_nosignal): New
7728           functions.
7729         * src/fns.c (hash_remove_from_table): Expose function public.
7730         * src/lisp.h: New handler type, define macro to push_handler call.
7732 2015-11-18  Ken Brown  <kbrown@cornell.edu>
7734         Silence byte-compiler warning
7736         * lisp/server.el (server-process-filter): Silence byte-compiler
7737         warning.
7739 2015-11-18  Paul Eggert  <eggert@cs.ucla.edu>
7741         Quote symbols in docstrings using `'
7743         Be more systematic about quoting symbols `like-this' rather than
7744         `like-this or 'like-this' in docstrings.  This follows up Artur
7745         Malabarba's email in:
7746         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01647.html
7748 2015-11-18  Peder O. Klingenberg  <peder@klingenberg.no>
7750         Fix savegames in dunnet
7752         * lisp/play/dunnet.el (dun-rot13): Use the standard rot13-region instead
7753           of separate implementation.
7755 2015-11-18  Artur Malabarba  <bruce.connor.am@gmail.com>
7757         * lisp/emacs-lisp/package.el (package--with-response-buffer):
7759         Ensure we're at the start of the buffer before searching for
7760         the end of headers.
7762 2015-11-17  Xue Fuqiao  <xfq.free@gmail.com>
7764         * admin/release-process: Improve wording.
7766 2015-11-17  Paul Eggert  <eggert@cs.ucla.edu>
7768         Fix docstring quoting problems with ‘ '’
7770         Problem reported by Artur Malabarba in:
7771         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01513.html
7772         Most of these fixes are to documentation; many involve fixing
7773         longstanding quoting glitches that are independent of the
7774         recent substitute-command-keys changes.  The changes to code are:
7775         * lisp/cedet/mode-local.el (mode-local-augment-function-help)
7776         (describe-mode-local-overload):
7777         Substitute docstrings before displaying them.
7778         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
7779         Quote the generated docstring for later substitution.
7781 2015-11-17  Eli Zaretskii  <eliz@gnu.org>
7783         Improve configure --help text for wide ints
7785         * configure.ac (wide-int): Clarify user-level advantages and
7786         disadvantages.
7788 2015-11-17  Stephen Leake  <stephen_leake@stephe-leake.org>
7790         Improve doc string
7792         * lisp/progmodes/xref.el (xref-backend-references): Improve doc string.
7794 2015-11-17  Paul Eggert  <eggert@cs.ucla.edu>
7796         eval_sub followed dangling pointer when debugging
7798         Problem reported by Pip Cet (Bug#21245).
7799         This bug could occur in eval_sub if the C compiler reused
7800         storage associated with the ‘argvals’ local after ‘argvals’
7801         went out of scope, and if the Elisp debugger stopped on Elisp
7802         function exit and accessed ‘argvals’.  It could also occur if
7803         a variadic function was called with so many arguments (over
7804         2048 args on x86-64) that SAFE_ALLOCA_LISP called malloc, then
7805         SAFE_FREE freed the arguments, then the memory manager used
7806         the storage for other purposes, then the debugger accessed the
7807         arguments.
7808         * src/eval.c (eval_sub): Declare ‘argvals’ at top level of
7809         function body.  Simplify local decls.
7810         When allocating args via SAFE_ALLOCA, call
7811         debugger before invoking SAFE_FREE, as the debugger needs
7812         access to the args.
7813         (eval_sub, apply_lambda): Rework to avoid need for
7814         set_backtrace_debug_on_exit hack.  This is cleaner,
7815         and should work better with buggy custom debuggers.
7817 2015-11-16  Daiki Ueno  <ueno@gnu.org>
7819         * lisp/image-mode.el: Support encrypted file
7821         (image-toggle-display-image): Read content from the buffer instead
7822         of the file, if the buffer holds a decrypted data.  (Bug#21870)
7824 2015-11-16  Paul Eggert  <eggert@cs.ucla.edu>
7826         ELF unexec: align section header
7828         This ports the recent unexelf.c changes to Fedora x86-64
7829         when configured with GCC’s -fsanitize=undefined option.
7830         * src/unexelf.c (unexec): Align new_data2_size to a multiple
7831         of ElfW (Shdr)’s alignment, so that NEW_SECTION_H returns a
7832         pointer aligned appropriately for its type.
7834 2015-11-16  Andreas Schwab  <schwab@linux-m68k.org>
7836         Do more checks on bytecode objects (Bug#21929)
7838         * src/eval.c (funcall_lambda): Check size of compiled function
7839         object.
7840         (Ffetch_bytecode): Likewise.
7842 2015-11-16  Johan Bockgård  <bojohan@gnu.org>
7844         pcase.el: Fix edebugging of backquoted cons patterns
7846         * lisp/emacs-lisp/pcase.el (pcase-QPAT): Fix edebugging of backquoted
7847         cons patterns. (Bug#21920)
7849 2015-11-16  Paul Eggert  <eggert@cs.ucla.edu>
7851         Improve fix for regex reentrancy abort
7853         Suggested by Stefan Monnier (Bug#21688).
7854         * src/syntax.c (update_syntax_table_forward):
7855         Remove recently-added PROPERTIZE arg, and assume it is true.
7856         All callers changed.
7857         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
7858         Invoke update_syntax_table directly.
7860 2015-11-16  Artur Malabarba  <bruce.connor.am@gmail.com>
7862         * lisp/faces.el (faces--attribute-at-point): Use `face-list-p'
7864         * lisp/emacs-lisp/package.el (package--with-response-buffer): Missing require
7866         * lisp/emacs-lisp/nadvice.el (add-function): Escape quote
7868 2015-11-15  Vasily Korytov  <vasily.korytov@yahoo.com>
7870         Recognize .rbw and .pyw files (bug#18753)
7872         * lisp/progmodes/python.el (auto-mode-alist):
7873         Recognize .pyw files.
7875         * lisp/progmodes/ruby-mode.el (auto-mode-alist):
7876         Recognize .rbw files.
7878 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
7880         Fix ruby-mode auto-mode-alist entry
7882         * lisp/progmodes/ruby-mode.el (auto-mode-alist): Add grouping
7883         around the extensions (bug#21257).
7885 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
7887         Fix etags completion near eob
7889         * lisp/progmodes/etags.el (tags-completion-at-point-function):
7890         Use `goto-char', to avoid the end-of-buffer error (bug#20061).
7892 2015-11-15  Alan Mackenzie  <acm@muc.de>
7894         De-pessimize detection of C++ member initialization lists.
7896         list/progmodes/cc-engine.el (c-back-over-list-of-member-inits): New macro.
7897         (c-back-over-member-initializers): Reformulate such that c-at-toplevel-p
7898         is only called when a construct "looks right" rather than continually.
7899         (c-guess-basic-syntax, CASE 5R): Add a check for the mode being C++ Mode.
7901 2015-11-15  Stephen Leake  <stephen_leake@stephe-leake.org>
7903         Improve a few doc strings, comments
7905         * lisp/cedet/cedet-global.el (cedet-gnu-global-expand-filename):
7906         * lisp/cedet/ede/locate.el (ede-locate-base):
7907         * lisp/cedet/semantic/symref.el (semantic-symref-calculate-rootdir):
7908         * src/fns.c (Fdelq): Improve doc string.
7910         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Add FIXME.
7912 2015-11-15  Anders Lindgren  <andlind@gmail.com>
7914         Enhance NSTRACE (trace output for NextStep).
7916         Trace can be disabled for groups of functions. By default, event
7917         functions and functions that generate lots of output are disabled.
7919         Trace output of Objective-C functions now use the "[ClassName
7920         parameter:]" form.
7922         * src/nsterm.h (NSTRACE_ALL_GROUPS, NSTRACE_GROUP_EVENTS)
7923         (NSTRACE_GROUP_UPDATES, NSTRACE_GROUP_FRINGE, NSTRACE_GROUP_COLOR)
7924         (NSTRACE_GROUP_GLYPHS, NSTRACE_GROUP_FOCUS): New macros,
7925         controlling in which function groups trace should be active.
7926         (NSTRACE_WHEN): Support for silencing a function, this also
7927         silencing all called functions.
7928         (NSTRACE_UNSILENCE): New macro, used to re-enable trace.
7929         (NSTRACE_FMT_FSTYPE, NSTRACE_ARG_FSTYPE): New macros, used to
7930         print the full screen state in NSTRACE functions.
7932         * src/nsterm.m (nstrace_depth, nstrace_num): Made volatile as they
7933         can be accessed from multiple threads.
7934         (nstrace_enabled_global): New variable, when FALSE, trace is
7935         silenced.
7936         (nstrace_restore_global_trace_state): New function, used to
7937         restore `nstrace_enabled_global' at end of block.
7938         ([EmacsView setFrame:], [EmacsWindow setFrame:display:])
7939         ([EmacsWindow setFrame:display:animation:])
7940         ([EmacsWindow setFrameTopLeftPoint:]): New functions, print trace
7941         and call corresponding super function.
7942         (Many functions): Add or enhance trace output.
7944         * src/nsimage.m (ns_image_from_file): Enhanced trace output.
7946         * src/nsfns.m (x_set_tool_bar_lines): Add trace output.
7948         * src/nsmenu.m ([EmacsToolbar setVisible:]): New function, print trace
7949         and call corresponding super function.
7951 2015-11-15  Anders Lindgren  <andlind@gmail.com>
7953         Fixed a toolbar related issue on OS X.
7955         Earlier, when toggling the tool-bar in a maximized frame, the
7956         frame size didn't match the number of text lines, leaving an
7957         unused area at the bottom of the frame.
7959         * nsfns.m (x_set_tool_bar_lines): Exit maximized and full height
7960         fullscreen modes when tool bar is disabled.
7962 2015-11-15  Anders Lindgren  <andlind@gmail.com>
7964         Fixed OS X 10.6.8 build issue (bug#21862).
7966         * src/nsterm.h (EmacsView): Add missing declarations.
7967         * src/nsterm.m ([EmacsView windowDidBecomeKey]): New method, like
7968         the standard method but without the notification parameter.
7969         Intended to be used for direct calls.
7970         ([EmacsView windowDidEnterFullScreen]): Call the non-notification
7971         version of `windowDidBecomeKey'. Made the notification method call
7972         the non-notification method instead of the vice versa.
7973         (NSWindowDidEnterFullScreenNotification): Deleted, no longer
7974         needed.
7976 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
7978         * lisp/faces.el (faces--attribute-at-point): Fix an issue
7980         Previous code would signal an error when the face at point was
7981         a manually built list of attributes such as '(:foregroud "white").
7983         * test/automated/faces-tests.el (faces--test-color-at-point): Add a test
7985 2015-11-15  Paul Eggert  <eggert@cs.ucla.edu>
7987         Fix regex abort when it tries to reenter itself
7989         Problem reported by Ken Raeburn.
7990         Solution suggested by Stefan Monnier (Bug#21688).
7991         * src/regex.c (re_match_2_internal):
7992         Use new _FAST functions to avoid regex code reentering itself.
7993         * src/syntax.c (update_syntax_table_forward): New arg PROPERTIZE.
7994         All callers changed.
7995         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST)
7996         (UPDATE_SYNTAX_TABLE_FAST): New inline functions.
7998 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
8000         Improve Ruby 1.9-style keyword keys highlighting
8002         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords):
8003         Handle required keyword arguments (bug#21367).
8004         And highlight the colon together with the name.
8006 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
8008         Unify the absolutely equal xref-backend-references implementations
8010         * lisp/progmodes/elisp-mode.el (xref-backend-references):
8011         Remove.
8013         * lisp/progmodes/etags.el (xref-backend-references):
8014         Remove.
8016         * lisp/progmodes/xref.el (xref-backend-references):
8017         Define the default implementation.
8019 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
8021         Update project-find-regexp for the new xref API
8023         * lisp/progmodes/project.el (project--read-regexp):
8024         Update to use the new xref API methods.
8026         * lisp/progmodes/xref.el (xref-find-backend): Autoload.
8028 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
8030         Fix replacing a match with a shorter string
8032         In effect, partially reverting fe973fc.
8034         * lisp/progmodes/xref.el (xref-query-replace): Store the end
8035         of each match as a marker again, instead of length.
8036         (xref--query-replace-1): Update accordingly.
8038 2015-11-14  Artur Malabarba  <bruce.connor.am@gmail.com>
8040         * lisp/progmodes/xref.el (xref-pop-marker-stack): Downgrade errors
8042         Signal user-errors instead.
8044 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
8046         Document 'describe-symbol'
8048         * doc/emacs/help.texi (Help Summary): Mention "C-h o".
8049         (Name Help): Document "C-h o" and describe-symbol.
8051         * lisp/help-fns.el (describe-symbol): Doc fix.
8053 2015-11-14  Paul Eggert  <eggert@cs.ucla.edu>
8055         Change test name to avoid spellcheck issue.
8057 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
8059         Avoid signaling an error in 'describe-symbol'
8061         * lisp/help-fns.el (describe-symbol): Avoid errors when the symbol
8062         exists as a function/variable/face/etc., but is undocumented.
8064         * test/automated/help-fns.el (help-fns-test-describe-symbol): New
8065         test.
8067 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
8069         * INSTALL (--with-cairo): Document this new configure option.
8071 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
8073         Document that GNU Make >= 3.81 is required to build Emacs
8075         * doc/lispref/internals.texi (Building Emacs): Document that GNU
8076         Make 3.81 or later is now required.
8078 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
8080         * CONTRIBUTE (Branches): Improve wording for back-ported commits.
8082 2015-11-13  l3thal  <kwhite@gnu.org>
8084         Merge branch 'erc-async-reconnect' into emacs-25
8086         Reconnect asynchronously.
8088 2015-11-11  Alan Mackenzie  <acm@muc.de>
8090         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
8092         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
8093         Windows" and new @defun selected-window-group.
8094         (Window Start and End): Describe new &optional parameter GROUP and
8095         ...-group-function for window-start, window-end, set-window-start, and
8096         pos-visible-in-window-p.
8097         (Textual Scrolling) Describe the same for recenter.
8098         doc/lispref/positions.texi (Screen Lines): Describe the same for
8099         move-to-window-line.
8101         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
8102         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
8103         new optional parameter "group".  At the beginning of each, check whether the
8104         corresponding ...-group-function is set to a function, and if so execute this
8105         function in place of the normal processing.
8106         (syms_of_window): Define symbols for the six new variables below.
8107         (window-start-group-function, window-end-group-function)
8108         (set-window-start-group-function, recenter-group-function)
8109         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
8110         New permanent local buffer local variables.
8111         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
8112         Fpos_visible_in_window_p.
8114         lisp/window.el (selected-window-group-function): New permanent local buffer
8115         local variable.
8116         (selected-window-group): New function.
8118         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
8119         enable, kill them at mode disable.  Add/remove follow-after-change to/from
8120         after-change-functions.
8121         (follow-start-end-invalid): New variable.
8122         (follow-redisplay): Manipulate follow-start-end-invalid.
8123         (follow-after-change, follow-window-start, follow-window-end)
8124         (follow-set-window-start, follow-pos-visible-in-window-p)
8125         (follow-move-to-window-line, follow-sit-for): New functions.
8127         lisp/isearch.el (isearch-call-message): New macro.
8128         (isearch-update, with-isearch-suspended, isearch-del-char)
8129         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
8130         (with-isearch-suspended): Rearrange code such that isearch-call-message is
8131         invoked before point is moved.
8132         (isearch-message): Add comment about where point must be at function call.
8133         (isearch-search): Remove call to isearch-message.
8134         (isearch-lazy-highlight-window-group): New variable.
8135         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
8136         the battery of tests to ...
8137         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
8138         Note: (sit-for 0) is still called.
8139         (isearch-lazy-highlight-update): Check membership of
8140         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
8141         property.
8142         (isearch-update, isearch-done, isearch-string-out-of-window)
8143         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
8144         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
8145         (isearch-lazy-highlight-update): Call the six amended primitives (see
8146         src/window.c above) with the new `group' argument set to t, to cooperate
8147         with Follow Mode.
8149 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
8151         * shr.el (shr-descend): Allow using lambdas in external functions.
8153 2015-12-25  Stefan Monnier  <monnier@iro.umontreal.ca>
8155         * admin/gitmerge.el: Tweaks that seemed necessary
8157         * admin/gitmerge.el (gitmerge-skip-regexp): Remove "sync".
8158         (gitmerge-maybe-resume): Provide explicit empty commit message.
8160 2015-12-25  Łukasz Stelmach  <stlman@poczta.fm>  (tiny change)
8162         Use a different port for TLS erc
8164         * lisp/erc/erc.el (erc-default-port-tls): New variable
8165         (bug#19497).
8166         * lisp/erc/erc.el (erc-tls): Use it.
8168 2015-12-25  Alain Schneble  <a.s@realize.ch>
8170         Make relative URL parsing and resolution consistent with RFC 3986 (bug#22044)
8172         * test/lisp/url/url-parse-tests.el: Add tests covering url-generic-parse-url.
8173         * test/lisp/url/url-expand-tests.el: Add tests covering url-expand-file-name.
8174         * lisp/url/url-parse.el (url-generic-parse-url): Keep empty fragment
8175         information in URL-struct.
8176         * lisp/url/url-parse.el (url-path-and-query): Do not artificially turn empty
8177         path and query into nil path and query, respectively.
8178         * lisp/url/url-expand.el (url-expander-remove-relative-links): Do not turn
8179         empty path into an absolute ("/") path.
8180         * lisp/url/url-expand.el (url-expand-file-name): Properly resolve
8181         fragment-only URIs. Do not just return them unchanged.
8182         * lisp/url/url-expand.el (url-default-expander): An empty path in the relative
8183         reference URI should not drop the last segment.
8185 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
8187         Let url use default file modes when copying files
8189         * lisp/url/url-handlers.el (url-copy-file): Use default file
8190         modes when copying files (bug#11400).
8192 2015-12-25  Devon Sean McCullough  <Emacs-Hacker2012@jovi.net>
8194         Doc fix for url-http
8196         * lisp/url/url-http.el (url-http): Document better return values
8197           (bug#13187) (tiny change)
8199 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
8201         * eww.el (eww-display-html): Support <button> tags (bug#20485).
8203 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
8205         Made ffap-url-p a defun instead of a defsubst
8207         * lisp/ffap.el (ffap-url-p): Change from defsusbt to defun,
8208         since there doesn't seem to be much of a reason for it to be a
8209         defsubst (bug#18203).
8211 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
8213         Add a command to view files in the browser to dired
8215         * lisp/dired.el (dired-mode-map): Add the `W' command
8216         (bug#18810).
8218 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
8220         Allow http://user:pass@foo/ URLs again
8222         * lisp/url/url-auth.el (url-basic-auth): Allow explicit
8223         user/passwords in URLs (bug#19046).
8225 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
8227         * eww.el (eww-mode-map): Fix command name of eww-toggle-colors.
8229 2015-12-25  Samer Masterson  <samer@samertm.com>
8231         Autoload url-insert-buffer-contents
8233         * lisp/url/url-handlers.el: Add autoload cookie so that
8234         `package-list-packages' doesn't bug out (bug#21927) (tiny change)
8236 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
8238         Allow toggling colors in eww
8240         * doc/misc/eww.texi (Basics): Mention "C".
8242         * lisp/net/eww.el (eww-toggle-colors): New command and keystroke.
8244         * lisp/net/shr.el (shr-use-colors): New variable.
8245         (shr-colorize-region): Use it.
8247 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
8249         Follow meta refresh tags in eww
8251         * eww.el (eww-tag-meta): Follow meta refresh tags (bug#22234).
8253 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
8255         More eww file name coding fixes
8257         * eww.el (eww-decode-url-file-name): Use the base coding
8258         system to check for encodability.
8260 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
8262         Always save eww history
8264         * eww.el (eww-setup-buffer): Always save history, even when
8265         called from outside the eww buffer (bug#19638).
8267 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
8269         Default web pages to right-to-left
8271         * eww.el (eww-mode): Most web pages are left-to-right, so make
8272         that the default (bug#19801).
8274         * shr.el (shr-tag-html): Respect "dir" attributes
8275         (left-to-right, right-to-left).
8277 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
8279         Make toggling checkboxes work again
8281         * eww.el (eww-update-field): Make toggling checkboxes work
8282         again (bug#21881).
8284 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
8286         Don't store cookies with empty names
8288         * lisp/url/url-cookie.el (url-cookie-store): Refuse to store
8289         cookies with empty names (bug#21936).
8291 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
8293         * shr.el (shr-descend): Stop rendering before we run out of
8294         specpdl room (bug#22117).
8296 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
8298         Use cl-reduce, not reduce.
8300 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
8302         Allow several <tbody> tags in shr
8304         * shr.el (shr-table-body): New function to find the real body
8305         of a table.
8306         (shr-tag-table): Use it to render several <tbody> tags in a
8307         table (bug#22170).
8309 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
8311         Make prettier unique file names in eww
8313         (eww-make-unique-file-name): Make unique file names by making
8314         files like foo(2).jpg instead of foo(1)(2).jpg.
8316 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
8318         Decode hex-encoded URLs before using them as file names
8320         * eww.el (eww-decode-url-file-name): New function.
8321         (eww-download-callback): Use it to decode file names before
8322         saving them.
8324 2015-12-24  Ashish SHUKLA  <ashish.is@lostca.se>  (tiny change)
8326         * doc/misc/emacs-gnutls.texi (Help For Users): Document FreeBSD bundle.
8327         * lisp/net/gnutls.el (gnutls-trustfiles): Add FreeBSD cert bundle.
8329 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
8331         Allow overriding shr functions from eww
8333         * eww.el (eww-display-html): Allow overriding elements in
8334         `shr-external-rendering-functions'.
8336 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
8338         Ignore invalid SVG images
8340         * shr.el (shr-tag-svg): Ignore SVG images that have no width
8341         or height, because these can't be displayed by ImageMagick,
8342         anyway.
8344 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
8346         shr table rendering fix
8348         * shr.el (shr-tag-table): Allow rendering body-less tables
8349         that have headers.
8351 2015-12-22  Sam Steingold  <sds@gnu.org>
8353         clipboard should still work even if interprogram-* is disabled
8355         (clipboard-yank): When `interprogram-cut-function' is nil,
8356         bind it to `gui-selection-value' - the default value.
8357         (clipboard-kill-region, clipboard-kill-ring-save): When
8358         `interprogram-paste-function' is nil, bind it to `gui-select-text' -
8359         the default value.
8361 2015-12-18  Phillip Lord  <phillip.lord@russet.org.uk>
8363         Fix bootstrap issue with dired-loaddefs
8365         * lisp/dired.el: Autoloads for secondary files loaded optionally.
8367 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
8369         dired generate autoloads to non-versioned file.
8371         * lisp/dired.el: Remove autoloads.
8372         * lisp/Makefile.in: Add dired to autogenel.
8373         * lisp/dired-aux.el,lisp/dired-x.el: Update file local.
8374         * test/lisp/dired-tests.el: Add new test.
8376 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
8378         eieio generate autoloads to non-versioned file.
8380         * lisp/Makefile.in: eieio-loaddefs add to autogenel.
8381         * lisp/emacs-lisp/eieio.el,lisp/emacs-lisp/eieio-core.el:
8382           Remove autoloads.
8383         * lisp/emacs-lisp/eieio-compat.el,lisp/emacs-lisp/eieio-custom.el,
8384           lisp/emacs-lisp/eieio-opt.el: Update file local.
8385         * test/lisp/emacs-lisp/eieio-tests/eieio-tests.el: New test.
8387 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
8389         htmlfontify generate autoload to non-versioned file.
8391         * lisp/Makefile.in: Add htmlfontity-loaddefs to autogenel.
8392         * lisp/hfy-cmap.el: Update file local.
8393         * lisp/htmlfontify.el: Remove autoloads, add require.
8394         * test/lisp/htmlfontify-tests.el: Test autoload functionality.
8396 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
8398         ibuffer generate autoloads to non-versioned file.
8400         * lisp/Makefile.in: Add ibuffer-loaddefs to autogenel.
8401         * lisp/ibuf-ext.el: Update file local.
8402         * lisp/ibuffer.el: Remove autoloads and add a require.
8403         * test/lisp/ibuffer-tests.el: Test that autoload is working.
8405 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
8407         rmail generate autoloads to non-versioned file.
8409         * lisp/Makefile.in: Add rmail-loaddefs.el to autogenel.
8410         * lisp/mail/rmail.el: Remove autoloads, add require.
8411         * lisp/mail/rmailedit.el,lisp/mail/rmailkwd.el,
8412           lisp/mail/rmailmm.el,lisp/mail/rmailmsc.el,
8413           lisp/mail/rmailsort.el,lisp/mail/rmailsum.el,
8414           lisp/mail/undigest.el: Update file-local.
8415         * test/lisp/mail/rmail-tests.el:
8417 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
8419         Add autoload-force target.
8421         * lisp/Makefile.in (autoload-force): New target.
8423 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
8425         ps-print generate autoloads to non versioned file.
8427         * lisp/Makefile.in: Add ps-print-loaddefs.el to autogen list.
8428         * lisp/ps-print.el: Remove autoloads.
8429         * lisp/ps-mule.el: Update file-local.
8430         * test/lisp/ps-print-tests.el: Test autoload functionality.
8432 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
8434         reftex generate autoloads to non versioned file.
8436         * lisp/Makefile.in: Add reftex-loaddefs to autogen files
8437         * lisp/textmodes/reftex.el: Remove autoloads.
8438         * lisp/textmodes/reftex-auc.el,lisp/textmodes/reftex-cite.el,
8439           lisp/textmodes/reftex-dcr.el,lisp/textmodes/reftex-global.el,
8440           lisp/textmodes/reftex-index.el,lisp/textmodes/reftex-parse.el,
8441           lisp/textmodes/reftex-ref.el,lisp/textmodes/reftex-sel.el,
8442           lisp/textmodes/reftex-toc.el: Update autoload file-local.
8443         * test/lisp/textmodes/reftex-tests.el: Add test of an autoloaded
8444           function.
8446 2015-12-07  Stefan Monnier  <monnier@iro.umontreal.ca>
8448         * lisp/calculator.el (calculator-define-key): Undo last change
8450         Make map argument mandatory instead (bug#22106).
8451         (calculator-add-operators): Pass the argument that's not optional any more.
8453 2015-12-03  Glenn Morris  <rgm@gnu.org>
8455         * Makefile.in: Avoid duplication.
8457         (have-tests): New rule.
8458         (check, check-maybe): Use it.
8460 2015-12-02  Phillip Lord  <phillip.lord@russet.org.uk>
8462         make check unconditional, check-maybe top-level.
8464          * Makefile.in: Add check-maybe target.
8465          * test/Makefile.in: Restore unconditional behaviour to make check.
8467 2015-12-01  Phillip Lord  <phillip.lord@russet.org.uk>
8469         Tests now support out-of-source-build.
8471          * tests/Makefile.in,test/make-test-deps.emacs-lisp: Remove assumptions
8472            about current working directory.
8474 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
8476         * lisp/emacs-lisp/let-alist.el: Now an Elpa :core package
8478 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
8480         Improve documentation and clean up.
8482          * test/Makefile.in: Improve documentation, use EMACS variable
8483            correctly, and clean up makefile rules.
8485 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
8487         Update file headers for name change.
8489          * (test/src/decompress-tests.el, test/src/alloc-tests.el): Update headers.
8491 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
8493         Test files renamed to new scheme.
8495          * (finalizer-tests.el): Now renamed alloc-tests.el
8496          * (zlib-tests.el): Now renamed decompress-tests.el.
8498 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
8500         Tests now depend on source files
8502          * test/Makefile.in: Include dependences from tests to source files.
8503          * test/make-test-deps.emacs-lisp: New file
8504          * .gitignore: Ignore generated make include file
8506 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
8508         * lisp/progmodes/which-func.el: Improve disabling the mode
8510         Use lexical-binding.
8511         (which-func-modes, which-func-non-auto-modes, which-func-maxout)
8512         (which-func, which-func-format): Remove redundant :group arg.
8513         (which-func-try-to-enable): New function.
8514         (which-func-ff-hook, which-function-mode): Use it.
8515         (mode-line-misc-info): Add ourselves here instead of in bindings.el.
8516         * lisp/bindings.el (mode-line-misc-info): Remove which-func-mode entry.
8518 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
8520         * lisp/calculator.el (calculator-define-key): Silence warning
8522         ...about unknown calculator-mode-map.
8524 2015-11-29  Eli Barzilay  <eli@barzilay.org>
8526         * lisp/calculator.el: more improvements and bugfixes.
8528         - Mark `calculator-paste-decimals' as obsolete.  (It wasn't having an
8529           effect anyway.)
8531         - Simplify `calculator-number-to-string' by throwing most of the work
8532           onto `number-to-string', leaving just some tweaks for decimal inputs.
8533           This leads to some minor changes, for example, pasting "1x1" in hex
8534           mode would warn that "x" is ignored and result in "11" (and it wasn't
8535           done in decimal mode), whereas now it just ignores everything from the
8536           "x" and on and result in a "1" just like in decimal input mode.  Also,
8537           overflows are left for `number-to-string' to deal with.
8539         - `calculator-paste' is very simple as a result.
8541         - Extend the simplified `calculator-paste': with a prefix argument it
8542           pastes a string as if the characters were entered.  This can be used
8543           to reduce expressions, but note that it's a simple literal operation,
8544           so precedence can be messed, a number can be paster while entering a
8545           number, spaces and newlines matter, etc.
8547         - Fix a minor bug where "e+" in hex mode wouldn't use "+" as an
8548           operator.
8550         - Fix a bug in `calculator-put-value': avoid grouping in the display
8551           that is used to construct `calculator-curnum'.  This would trigger
8552           when pasting or getting a value from a register in some radix mode
8553           with a large enough value.  Another fix: make the output radix equal
8554           the input one, otherwise numbers could be converted twice.
8556 2015-11-29  Eli Barzilay  <eli@barzilay.org>
8558         * lisp/calculator.el: Re-do key bindings.
8560         Use a helper function that arranges a parent keymap that binds alternate
8561         case keys so if some letter key is unbound and it's un/shifted version
8562         is, it will get used.  This makes the global-map trickery unnecessary.
8564         Also switch to passing strings that name keys through `kbd'.
8566 2015-11-29  Eli Barzilay  <eli@barzilay.org>
8568         * lisp/calculator.el: improve radix modes
8570         Fix prompt for some input radix with decimal output (eg, "BD" instead of
8571         the incorrect "B="); also, some minor docstring tweaks for these.
8573 2015-11-29  Eli Barzilay  <eli@barzilay.org>
8575         * lisp/calculator.el: better reading of register names
8577         Use `register-read-with-preview' with a dynamically bound
8578         `register-alist' and a proper preview function to read register names.
8580 2015-11-29  Eli Barzilay  <eli@barzilay.org>
8582         * lisp/calculator.el: General improvements
8584         Use things like `when', `unless', and `push'.
8586         Improve `calculator-last-input' so it doesn't barf when hitting `F1' in
8587         non-electric mode.
8589 2015-11-28  Michael Albinus  <michael.albinus@gmx.de>
8591         Fix a problem with gfilenotify in filenotify-tests.el
8593         * test/lisp/filenotify-tests.el
8594         (file-notify--test-expected-events): Remove.
8595         (file-notify--test-cleanup): Do not set that variable.
8596         (file-notify--test-with-events): EVENTS can also be a list of lists.
8597         (file-notify-test02-events, file-notify-test04-file-validity):
8598         Adapt expected result.
8600 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
8602         * .gitignore: Adjust to changes in 'test' directory structure.
8604 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
8606         Fix test/manual/etags/Makefile
8608         * test/manual/etags/Makefile (ETAGS_PROG, CTAGS_PROG): Adjust to
8609         changes in 'test' directory structure.
8611 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
8613         Exclude resource dirs from search for tests.
8615         * test/Makefile.in: Test file locations are now found with find
8616           rather than using finds native functions.
8618 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
8620         Add test targets without directory names.
8622          * (test/Makefile.in): Extend test_template to add two targets for each
8623            file.
8625 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
8627         * lisp/emacs-lisp/package.el: Require url-handlers
8629 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
8631         Move elisp-mode-tests to new function names.
8633          * test/lisp/progmodes/elisp-mode-tests.el (find-defsdefun-c-defvar-c,
8634          find-defs-defun-el-defvar-c): Call `elisp--xref-find-definitions'.
8636 2015-11-27  Juanma Barranquero  <lekktu@gmail.com>
8638         * lisp/emacs-lisp/package.el: Declare `url-insert-buffer-contents'
8640 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
8642         Merge branch 'feature/standard-test-location'
8644 2015-11-25  Stefan Monnier  <monnier@iro.umontreal.ca>
8646         * lisp/emacs-lisp/eieio.el: Add some default implementations
8648         (standard-class): Mark it obsolete.
8649         (slot-missing): Give it a default implementation.
8650         (destructor): Simplify and mark it obsolete.
8651         (object-print): Give it a default implementation.
8652         (eieio-change-class): Rename from change-class.
8653         (change-class): Redefine as obsolete alias.
8655 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
8657         Some final fixes in file notification before merging with master
8659         * lisp/filenotify.el (file-notify--rm-descriptor): Remove WHAT arg.
8660         (file-notify-callback): Improve check for `stopped' event.  Call
8661         `file-notify-rm-watch' rather than `file-notify--rm-descriptor'.
8662         (file-notify-add-watch): In case FILE is not a directory, call the
8663         file monitor for the kqueue backend.  Otherwise, call the
8664         directory monitor for the upper directory.
8666         * src/inotify.c (inotifyevent_to_event): Extract file name from
8667         watch_object if the event doesn't provide it.
8668         (Finotify_add_watch): Add file name to watch_object.
8670         * test/automated/file-notify-tests.el (file-notify--test-timeout):
8671         Use different timeouts for different libraries.
8672         (file-notify--test-with-events): Suppress lock files.  Flush
8673         outstanding events before running the body.
8674         (file-notify-test02-events, file-notify-test04-file-validity): Do
8675         not skip cygwin tests.  Add additional test for file creation.
8676         Adapt expected result for different backends.
8677         (file-notify-test03-autorevert): Some of the tests don't work for
8678         w32notify.
8679         (file-notify-test06-many-events): Rename into both directions.
8681 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
8683         Rework file notifications, kqueue has problems with directory monitors
8685         * lisp/filenotify.el (file-notify-add-watch): Call the native
8686         add-watch function on the file, not on the dir.
8688         * src/kqueue.c (kqueue_compare_dir_list): Make also bookkeeping
8689         about already deleted entries.
8691         * test/automated/auto-revert-tests.el
8692         (auto-revert-test01-auto-revert-several-files): Do not call "cp -f"
8693         since this deletes the target file first.
8695         * test/automated/file-notify-tests.el (file-notify--test-event-test):
8696         Make stronger checks.
8697         (file-notify-test01-add-watch, file-notify-test02-events)
8698         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
8699         Rewrite in order to call file monitors but directory monitors.
8700         (file-notify-test06-many-events): Ler rename work in both directions.
8702 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
8704         Continue with pending events
8706         * src/kqueue.c (pending_events): Remove global variable.
8707         (kqueue_compare_dir_list): Create `write' event for not used
8708         pending events.
8709         (globals_of_kqueue): Remove initialization of pending_events.
8711 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
8713         Improve loops in file-notify-test06-many-events
8715         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
8716         Use `read-event' pauses for the `write-file' loops; otherwise
8717         events are lost in inotify and gfilenotify cases.
8719 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
8721         Handle more complex rename operation in kqueue
8723         * src/kqueue.c (pending_events): New variable.
8724         (kqueue_compare_dir_list): Handle more complex rename operation.
8725         (globals_of_kqueue): Initialize pending_events.
8727         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
8728         Adapt expected events in the `rename-file' case.
8729         (file-notify-test06-many-events-remote): Declare.
8731 2015-11-25  Wolfgang Jenkner  <wjenkner@inode.at>
8733         New test with a larger number of events
8735         * test/automated/file-notify-tests.el (file-notify--test-with-events):
8736         Make timeout heuristically depend on the number of events.
8738         (file-notify-test06-many-events): Use it for new test.
8740 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
8742         Further fixes for kqueue
8744         * lisp/filenotify.el (file-notify-callback): Raise also event if
8745         directory name matches.
8746         (file-notify-add-watch): Add `create' to the flags for `kqueue'.
8748         * src/kqueue.c (kqueue_generate_event): Use watch_object as
8749         argument instead of ident.  Remove callback argument.  Adapt
8750         callees.  Check actions whether they are monitored flags.
8752         * test/automated/file-notify-tests.el (file-notify--test-library):
8753         New defun.
8754         (file-notify-test00-availability, file-notify-test02-events)
8755         (file-notify-test04-file-validity)
8756         (file-notify-test05-dir-validity): Use it.
8757         (file-notify-test02-events, file-notify-test04-file-validity): Add
8758         `read-event' calls between different file actions, in order to
8759         give the backends a chance to rais an event.  Needed especially
8760         for kqueue.  In case of deleting a directory, there are two
8761         `deleted' events.
8763 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
8765         Code cleanup of kqueue.c
8767         * src/kqueue.c (kqueue_directory_listing): Skip "." and "..".
8768         (kqueue_compare_dir_list): Do not loop when calling
8769         directory_files_internal.  Remove checks for "." and "..", this is
8770         done in kqueue_directory_listing now.
8771         (Fkqueue_add_watch): Check for proper emacs_open flags.
8773 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
8775         Doc changes for kqueue
8777         * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
8778         Fix some glitches in the example.
8780 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
8782         Finish implementation in kqueue.c
8784         * src/kqueue.c (kqueue_directory_listing, kqueue_callback):
8785         Simplify access to list.
8786         (kqueue_compare_dir_list): Simplify access to list.  Raise
8787         `delete' event if directory does not exist any longer.  Otherwise,
8788         wait until directory contents has changed.  Fix error in check.
8790 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
8792         * lisp/filenotify.el (file-notify-add-watch): Fix thinko.
8794 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
8796         More work on kqueue
8798         * lisp/filenotify.el (file-notify-callback): Handle also the
8799         `rename' event from kqueue.
8800         (file-notify-add-watch): Do not register an entry twice.
8802         * src/kqueue.c (kqueue_directory_listing): New function.
8803         (kqueue_generate_event): New argument FILE1.  Adapt callees.
8804         (kqueue_compare_dir_list): Rewrite in order to make it more robust.
8806 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
8808         Implement directory events
8810         * lisp/filenotify.el (file-notify-handle-event)
8811         (file-notify-callback): Remove traces.
8813         * src/kqueue.c: Include <sys/time.h>.
8814         (kqueue_generate_event, kqueue_compare_dir_list): New functions.
8815         (kqueue_callback): Use them.  Call kevent() with a zero timeout.
8816         (Fkqueue_add_watch): Adapt docstring.  Support directory events.
8817         Compute initial directory listing.  Close file descriptor in case
8818         of errors.
8819         (syms_of_kqueue): Declare Qcreate.
8821 2015-11-25  Wolfgang Jenkner  <wjenkner@inode.at>
8823         Build fixes for kqueue support
8825         * src/kqueue.c (Fkqueue_add_watch): O_BINARY is not a POSIX open(3)
8826         flag.
8828         * configure.ac (HAVE_KQUEUE): There is no pkg-config module for native
8829         kqueue on *BSD.
8831 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
8833         Continue kqueue implementation
8835         * lisp/filenotify.el (file-notify-handle-event)
8836         (file-notify-callback): Enable trace messages.
8838         * src/kqueue.c: Include also <sys/types.h>.
8839         (kqueue_callback): Remove watch in case of NOTE_DELETE or NOTE_RENAME.
8840         (Fkqueue_rm_watch, Fkqueue_valid_p): New functions.
8841         (syms_of_kqueue): Add them.
8843 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
8845         Work on kqueue
8847         * lisp/filenotify.el (file-notify--library)
8848         (file-notify-descriptors, file-notify-callback)
8849         (file-notify-add-watch, file-notify-rm-watch)
8850         (file-notify-valid-p): Add kqueue support.
8852         * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
8854 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
8856         Add kqueue support
8858         * configure.ac (--with-file-notification): Add kqueue.
8859         (top): Remove special test for "${HAVE_NS}" and
8860         ${with_file_notification}, this is handled inside gfilenotify
8861         tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
8862         instead of library specific variables.
8864         * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
8866         * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
8868         * src/kqueue.c: New file.
8870         * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
8872 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
8874         Update elisp-mode-tests for changed file location.
8876          * test/lisp/progmodes/elisp-mode-tests.el:
8878 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
8880         Exclude manual tests from Makefile
8882          * test/Makefile.in:
8884 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
8886         Move package test files to new directory.
8888          * test/lisp/emacs-lisp/package-tests.el: Update resoruce file location.
8889          * test/data/package: Moved to test/lisp/emacs-lisp/package-resources
8891 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
8893         Restore delete Makefiles and fix .gitignore.
8895          * .gitignore: Update Makefiles to changed locations
8896          * test/lisp/progmodes/flymake-resources/Makefile,
8897            test/manual/etags/Makefile,
8898            test/manual/etags/make-src/Makefile,
8899            test/manual/indent/Makefile: Restored and moved to new location.
8901 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
8903         Test infrastructure: updates after directory move
8905          * (test/Makefile.in): Support directories several levels deep.
8906          * (test/data/flymake): Rename to test/lisp/progmodes/flymake-resources.
8907          * (test/lisp/progmodes/flymake-tests.el): Support renamed resource directory.
8909 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
8911         Rename all test files to reflect source layout.
8913          * CONTRIBUTE,Makefile.in,configure.ac: Update to reflect
8914            test directory moves.
8915          * test/file-organisation.org: New file.
8916          * test/automated/Makefile.in
8917            test/automated/data/decompress/foo.gz
8918            test/automated/data/epg/pubkey.asc
8919            test/automated/data/epg/seckey.asc
8920            test/automated/data/files-bug18141.el.gz
8921            test/automated/data/flymake/test.c
8922            test/automated/data/flymake/test.pl
8923            test/automated/data/package/archive-contents
8924            test/automated/data/package/key.pub
8925            test/automated/data/package/key.sec
8926            test/automated/data/package/multi-file-0.2.3.tar
8927            test/automated/data/package/multi-file-readme.txt
8928            test/automated/data/package/newer-versions/archive-contents
8929            test/automated/data/package/newer-versions/new-pkg-1.0.el
8930            test/automated/data/package/newer-versions/simple-single-1.4.el
8931            test/automated/data/package/package-test-server.py
8932            test/automated/data/package/signed/archive-contents
8933            test/automated/data/package/signed/archive-contents.sig
8934            test/automated/data/package/signed/signed-bad-1.0.el
8935            test/automated/data/package/signed/signed-bad-1.0.el.sig
8936            test/automated/data/package/signed/signed-good-1.0.el
8937            test/automated/data/package/signed/signed-good-1.0.el.sig
8938            test/automated/data/package/simple-depend-1.0.el
8939            test/automated/data/package/simple-single-1.3.el
8940            test/automated/data/package/simple-single-readme.txt
8941            test/automated/data/package/simple-two-depend-1.1.el
8942            test/automated/abbrev-tests.el
8943            test/automated/auto-revert-tests.el
8944            test/automated/calc-tests.el
8945            test/automated/icalendar-tests.el
8946            test/automated/character-fold-tests.el
8947            test/automated/comint-testsuite.el
8948            test/automated/descr-text-test.el
8949            test/automated/electric-tests.el
8950            test/automated/cl-generic-tests.el
8951            test/automated/cl-lib-tests.el
8952            test/automated/eieio-test-methodinvoke.el
8953            test/automated/eieio-test-persist.el
8954            test/automated/eieio-tests.el
8955            test/automated/ert-tests.el
8956            test/automated/ert-x-tests.el
8957            test/automated/generator-tests.el
8958            test/automated/let-alist.el
8959            test/automated/map-tests.el
8960            test/automated/advice-tests.el
8961            test/automated/package-test.el
8962            test/automated/pcase-tests.el
8963            test/automated/regexp-tests.el
8964            test/automated/seq-tests.el
8965            test/automated/subr-x-tests.el
8966            test/automated/tabulated-list-test.el
8967            test/automated/thunk-tests.el
8968            test/automated/timer-tests.el
8969            test/automated/epg-tests.el
8970            test/automated/eshell.el
8971            test/automated/faces-tests.el
8972            test/automated/file-notify-tests.el
8973            test/automated/auth-source-tests.el
8974            test/automated/gnus-tests.el
8975            test/automated/message-mode-tests.el
8976            test/automated/help-fns.el
8977            test/automated/imenu-test.el
8978            test/automated/info-xref.el
8979            test/automated/mule-util.el
8980            test/automated/isearch-tests.el
8981            test/automated/json-tests.el
8982            test/automated/bytecomp-tests.el
8983            test/automated/coding-tests.el
8984            test/automated/core-elisp-tests.el
8985            test/automated/decoder-tests.el
8986            test/automated/files.el
8987            test/automated/font-parse-tests.el
8988            test/automated/lexbind-tests.el
8989            test/automated/occur-tests.el
8990            test/automated/process-tests.el
8991            test/automated/syntax-tests.el
8992            test/automated/textprop-tests.el
8993            test/automated/undo-tests.el
8994            test/automated/man-tests.el
8995            test/automated/completion-tests.el
8996            test/automated/dbus-tests.el
8997            test/automated/newsticker-tests.el
8998            test/automated/sasl-scram-rfc-tests.el
8999            test/automated/tramp-tests.el
9000            test/automated/obarray-tests.el
9001            test/automated/compile-tests.el
9002            test/automated/elisp-mode-tests.el
9003            test/automated/f90.el
9004            test/automated/flymake-tests.el
9005            test/automated/python-tests.el
9006            test/automated/ruby-mode-tests.el
9007            test/automated/subword-tests.el
9008            test/automated/replace-tests.el
9009            test/automated/simple-test.el
9010            test/automated/sort-tests.el
9011            test/automated/subr-tests.el
9012            test/automated/reftex-tests.el
9013            test/automated/sgml-mode-tests.el
9014            test/automated/tildify-tests.el
9015            test/automated/thingatpt.el
9016            test/automated/url-future-tests.el
9017            test/automated/url-util-tests.el
9018            test/automated/add-log-tests.el
9019            test/automated/vc-bzr.el
9020            test/automated/vc-tests.el
9021            test/automated/xml-parse-tests.el
9022            test/BidiCharacterTest.txt
9023            test/biditest.el
9024            test/cedet/cedet-utests.el
9025            test/cedet/ede-tests.el
9026            test/cedet/semantic-ia-utest.el
9027            test/cedet/semantic-tests.el
9028            test/cedet/semantic-utest-c.el
9029            test/cedet/semantic-utest.el
9030            test/cedet/srecode-tests.el
9031            test/cedet/tests/test.c
9032            test/cedet/tests/test.el
9033            test/cedet/tests/test.make
9034            test/cedet/tests/testdoublens.cpp
9035            test/cedet/tests/testdoublens.hpp
9036            test/cedet/tests/testfriends.cpp
9037            test/cedet/tests/testjavacomp.java
9038            test/cedet/tests/testnsp.cpp
9039            test/cedet/tests/testpolymorph.cpp
9040            test/cedet/tests/testspp.c
9041            test/cedet/tests/testsppcomplete.c
9042            test/cedet/tests/testsppreplace.c
9043            test/cedet/tests/testsppreplaced.c
9044            test/cedet/tests/testsubclass.cpp
9045            test/cedet/tests/testsubclass.hh
9046            test/cedet/tests/testtypedefs.cpp
9047            test/cedet/tests/testvarnames.c
9048            test/etags/CTAGS.good
9049            test/etags/ETAGS.good_1
9050            test/etags/ETAGS.good_2
9051            test/etags/ETAGS.good_3
9052            test/etags/ETAGS.good_4
9053            test/etags/ETAGS.good_5
9054            test/etags/ETAGS.good_6
9055            test/etags/a-src/empty.zz
9056            test/etags/a-src/empty.zz.gz
9057            test/etags/ada-src/2ataspri.adb
9058            test/etags/ada-src/2ataspri.ads
9059            test/etags/ada-src/etags-test-for.ada
9060            test/etags/ada-src/waroquiers.ada
9061            test/etags/c-src/a/b/b.c
9062            test/etags/c-src/abbrev.c
9063            test/etags/c-src/c.c
9064            test/etags/c-src/dostorture.c
9065            test/etags/c-src/emacs/src/gmalloc.c
9066            test/etags/c-src/emacs/src/keyboard.c
9067            test/etags/c-src/emacs/src/lisp.h
9068            test/etags/c-src/emacs/src/regex.h
9069            test/etags/c-src/etags.c
9070            test/etags/c-src/exit.c
9071            test/etags/c-src/exit.strange_suffix
9072            test/etags/c-src/fail.c
9073            test/etags/c-src/getopt.h
9074            test/etags/c-src/h.h
9075            test/etags/c-src/machsyscalls.c
9076            test/etags/c-src/machsyscalls.h
9077            test/etags/c-src/sysdep.h
9078            test/etags/c-src/tab.c
9079            test/etags/c-src/torture.c
9080            test/etags/cp-src/MDiagArray2.h
9081            test/etags/cp-src/Range.h
9082            test/etags/cp-src/burton.cpp
9083            test/etags/cp-src/c.C
9084            test/etags/cp-src/clheir.cpp.gz
9085            test/etags/cp-src/clheir.hpp
9086            test/etags/cp-src/conway.cpp
9087            test/etags/cp-src/conway.hpp
9088            test/etags/cp-src/fail.C
9089            test/etags/cp-src/functions.cpp
9090            test/etags/cp-src/screen.cpp
9091            test/etags/cp-src/screen.hpp
9092            test/etags/cp-src/x.cc
9093            test/etags/el-src/TAGTEST.EL
9094            test/etags/el-src/emacs/lisp/progmodes/etags.el
9095            test/etags/erl-src/gs_dialog.erl
9096            test/etags/f-src/entry.for
9097            test/etags/f-src/entry.strange.gz
9098            test/etags/f-src/entry.strange_suffix
9099            test/etags/forth-src/test-forth.fth
9100            test/etags/html-src/algrthms.html
9101            test/etags/html-src/index.shtml
9102            test/etags/html-src/software.html
9103            test/etags/html-src/softwarelibero.html
9104            test/etags/lua-src/allegro.lua
9105            test/etags/objc-src/PackInsp.h
9106            test/etags/objc-src/PackInsp.m
9107            test/etags/objc-src/Subprocess.h
9108            test/etags/objc-src/Subprocess.m
9109            test/etags/objcpp-src/SimpleCalc.H
9110            test/etags/objcpp-src/SimpleCalc.M
9111            test/etags/pas-src/common.pas
9112            test/etags/perl-src/htlmify-cystic
9113            test/etags/perl-src/kai-test.pl
9114            test/etags/perl-src/yagrip.pl
9115            test/etags/php-src/lce_functions.php
9116            test/etags/php-src/ptest.php
9117            test/etags/php-src/sendmail.php
9118            test/etags/prol-src/natded.prolog
9119            test/etags/prol-src/ordsets.prolog
9120            test/etags/ps-src/rfc1245.ps
9121            test/etags/pyt-src/server.py
9122            test/etags/tex-src/gzip.texi
9123            test/etags/tex-src/nonewline.tex
9124            test/etags/tex-src/testenv.tex
9125            test/etags/tex-src/texinfo.tex
9126            test/etags/y-src/atest.y
9127            test/etags/y-src/cccp.c
9128            test/etags/y-src/cccp.y
9129            test/etags/y-src/parse.c
9130            test/etags/y-src/parse.y
9131            test/indent/css-mode.css
9132            test/indent/js-indent-init-dynamic.js
9133            test/indent/js-indent-init-t.js
9134            test/indent/js-jsx.js
9135            test/indent/js.js
9136            test/indent/latex-mode.tex
9137            test/indent/modula2.mod
9138            test/indent/nxml.xml
9139            test/indent/octave.m
9140            test/indent/pascal.pas
9141            test/indent/perl.perl
9142            test/indent/prolog.prolog
9143            test/indent/ps-mode.ps
9144            test/indent/ruby.rb
9145            test/indent/scheme.scm
9146            test/indent/scss-mode.scss
9147            test/indent/sgml-mode-attribute.html
9148            test/indent/shell.rc
9149            test/indent/shell.sh
9150            test/redisplay-testsuite.el
9151            test/rmailmm.el
9152            test/automated/buffer-tests.el
9153            test/automated/cmds-tests.el
9154            test/automated/data-tests.el
9155            test/automated/finalizer-tests.el
9156            test/automated/fns-tests.el
9157            test/automated/inotify-test.el
9158            test/automated/keymap-tests.el
9159            test/automated/print-tests.el
9160            test/automated/libxml-tests.el
9161            test/automated/zlib-tests.el: Files Moved.
9163 2015-11-20  Michael Albinus  <michael.albinus@gmx.de>
9165         Rework file notifications, kqueue has problems with directory monitors
9167         * lisp/filenotify.el (file-notify-add-watch): Call the native
9168         add-watch function on the file, not on the dir.
9170         * src/kqueue.c (kqueue_compare_dir_list): Make also bookkeeping
9171         about already deleted entries.
9173         * test/automated/auto-revert-tests.el
9174         (auto-revert-test01-auto-revert-several-files): Do not call "cp -f"
9175         since this deletes the target file first.
9177         * test/automated/file-notify-tests.el (file-notify--test-event-test):
9178         Make stronger checks.
9179         (file-notify-test01-add-watch, file-notify-test02-events)
9180         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
9181         Rewrite in order to call file monitors but directory monitors.
9182         (file-notify-test06-many-events): Ler rename work in both directions.
9184 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
9186         Continie with pending events
9188         * src/kqueue.c (pending_events): Remove global variable.
9189         (kqueue_compare_dir_list): Create `write' event for not used
9190         pending events.
9191         (globals_of_kqueue): Remove initialization of pending_events.
9193 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
9195         Improve loops in file-notify-test06-many-events
9197         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
9198         Use `read-event' pauses for the `write-file' loops; otherwise
9199         events are lost in inotify and gfilenotify cases.
9201 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
9203         Handle more complex rename operation in kqueue
9205         * src/kqueue.c (pending_events): New variable.
9206         (kqueue_compare_dir_list): Handle more complex rename operation.
9207         (globals_of_kqueue): Initialize pending_events.
9209         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
9210         Adapt expected events in the `rename-file' case.
9211         (file-notify-test06-many-events-remote): Declare.
9213 2015-11-18  Wolfgang Jenkner  <wjenkner@inode.at>
9215         New test with a larger number of events.
9217         * test/automated/file-notify-tests.el (file-notify--test-with-events):
9218         Make timeout heuristically depend on the number of events.
9220         (file-notify-test06-many-events): Use it for new test.
9222 2015-11-18  Michael Albinus  <michael.albinus@gmx.de>
9224         Further fixes for kqueue.
9226         * lisp/filenotify.el (file-notify-callback): Raise also event if
9227         directory name matches.
9228         (file-notify-add-watch): Add `create' to the flags for `kqueue'.
9230         * src/kqueue.c (kqueue_generate_event): Use watch_object as
9231         argument instead of ident.  Remove callback argument.  Adapt
9232         callees.  Check actions whether they are monitored flags.
9234         * test/automated/file-notify-tests.el (file-notify--test-library):
9235         New defun.
9236         (file-notify-test00-availability, file-notify-test02-events)
9237         (file-notify-test04-file-validity)
9238         (file-notify-test05-dir-validity): Use it.
9239         (file-notify-test02-events, file-notify-test04-file-validity): Add
9240         `read-event' calls between different file actions, in order to
9241         give the backends a chance to rais an event.  Needed especially
9242         for kqueue.  In case of deleting a directory, there are two
9243         `deleted' events.
9245 2015-11-17  Michael Albinus  <michael.albinus@gmx.de>
9247         Code cleanup of kqueue.c
9249         * src/kqueue.c (kqueue_directory_listing): Skip "." and "..".
9250         (kqueue_compare_dir_list): Do not loop when calling
9251         directory_files_internal.  Remove checks for "." and "..", this is
9252         done in kqueue_directory_listing now.
9253         (Fkqueue_add_watch): Check for proper emacs_open flags.
9255 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
9257         Doc changes for kqueue
9259         * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
9260         Fix some glitches in the example.
9262 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
9264         Finish implementation in kqueue.c
9266         * src/kqueue.c (kqueue_directory_listing, kqueue_callback):
9267         Simplify access to list.
9268         (kqueue_compare_dir_list): Simplify access to list.  Raise
9269         `delete' event if directory does not exist any longer.  Otherwise,
9270         wait until directory contents has changed.  Fix error in check.
9272 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
9274         * lisp/filenotify.el (file-notify-add-watch): Fix thinko.
9276 2015-11-15  Michael Albinus  <michael.albinus@gmx.de>
9278         More work on kqueue
9280         * lisp/filenotify.el (file-notify-callback): Handle also the
9281         `rename' event from kqueue.
9282         (file-notify-add-watch): Do not register an entry twice.
9284         * src/kqueue.c (kqueue_directory_listing): New function.
9285         (kqueue_generate_event): New argument FILE1.  Adapt callees.
9286         (kqueue_compare_dir_list): Rewrite in order to make it more robust.
9288 2015-11-14  Michael Albinus  <michael.albinus@gmx.de>
9290         Implement directory events
9292         * lisp/filenotify.el (file-notify-handle-event)
9293         (file-notify-callback): Remove traces.
9295         * src/kqueue.c: Include <sys/time.h>.
9296         (kqueue_generate_event, kqueue_compare_dir_list): New functions.
9297         (kqueue_callback): Use them.  Call kevent() with a zero timeout.
9298         (Fkqueue_add_watch): Adapt docstring.  Support directory events.
9299         Compute initial directory listing.  Close file descriptor in case
9300         of errors.
9301         (syms_of_kqueue): Declare Qcreate.
9303 2015-11-11  Wolfgang Jenkner  <wjenkner@inode.at>
9305         Build fixes for kqueue support.
9307         * src/kqueue.c (Fkqueue_add_watch): O_BINARY is not a POSIX open(3)
9308         flag.
9310         * configure.ac (HAVE_KQUEUE): There is no pkg-config module for native
9311         kqueue on *BSD.
9313 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
9315         Continue kqueue implementation
9317         * lisp/filenotify.el (file-notify-handle-event)
9318         (file-notify-callback): Enable trace messages.
9320         * src/kqueue.c: Include also <sys/types.h>.
9321         (kqueue_callback): Remove watch in case of NOTE_DELETE or NOTE_RENAME.
9322         (Fkqueue_rm_watch, Fkqueue_valid_p): New functions.
9323         (syms_of_kqueue): Add them.
9325 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
9327         Work on kqueue
9329         * lisp/filenotify.el (file-notify--library)
9330         (file-notify-descriptors, file-notify-callback)
9331         (file-notify-add-watch, file-notify-rm-watch)
9332         (file-notify-valid-p): Add kqueue support.
9334         * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
9336 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
9338         Add kqueue support
9340         * configure.ac (--with-file-notification): Add kqueue.
9341         (top): Remove special test for "${HAVE_NS}" and
9342         ${with_file_notification}, this is handled inside gfilenotify
9343         tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
9344         instead of library specific variables.
9346         * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
9348         * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
9350         * src/kqueue.c: New file.
9352         * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
9354 2015-11-21  Wilson Snyder  <wsnyder@wsnyder.org>
9356         verilog-mode.el: Commentary and fix pre-Emacs 21 behavior.
9358         * verilog-mode.el (verilog-save-font-no-change-functions):
9359         Commentary and fix pre-Emacs 21 behavior.
9361 2015-11-19  Przemysław Wojnowski  <esperanto@cumego.com>
9363         Use obarray functions from obarray.
9365         * lisp/abbrev.el (copy-abbrev-table, abbrev-table-p, make-abbrev-table,
9366           abbrev-table-get, abbrev-table-put, abbrev-table-empty-p,
9367           clear-abbrev-table, define-abbrev, abbrev--symbol, abbrev-table-menu):
9368           delegate to obarray.el functions.
9369         * lisp/loadup.el: load obarray before abbrev
9370         * test/automated/abbrev-tests.el: new tests
9372 2015-11-18  Christian Schwarzgruber  <c.schwarzgruber.cs@gmail.com>  (tiny change)
9374         epa.el: Add option to replace original text
9376         * lisp/epa.el (epa-replace-original-text): New user option.
9377         (Bug#21947)
9379 2015-11-18  Mark Oteiza  <mvoteiza@udel.edu>
9381         Add interactive seek command.
9383         * lisp/mpc.el (mpc-cmd-seekcur): New function.
9384         (mpc-seek-current): New command.
9385         (mpc-mode-menu): Add entry for mpc-seek-current
9386         (mpc-mode-map): Bind mpc-seek-current to "g"
9388 2015-11-18  Mark Oteiza  <mvoteiza@udel.edu>
9390         Fix issue where a new tempfile was created every refresh
9392         * lisp/mpc.el (mpc-format): Leave dir as relative path
9394 2015-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
9396         * lisp/progmodes/cc-defs.el: Use with-silent-modifications
9398         (c-save-buffer-state): Use with-silent-modifications when available.
9399         (c--macroexpand-all): Check macroexpand-all directly rather than
9400         c--mapcan-status.
9402 2015-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
9404         * lisp/loadup.el: Set max-lisp-eval-depth here
9406         * lisp/Makefile.in (BIG_STACK_DEPTH, BIG_STACK_OPTS): Remove.
9407         (BYTE_COMPILE_FLAGS): Adjust accordingly.
9409 2015-11-17  João Távora  <joaotavora@gmail.com>
9411         Minor fix to comment indentation and typo in last commit
9413         * linum.el (linum-update-window): Fix comment indentation and a
9414         typo.
9416 2015-11-17  João Távora  <joaotavora@gmail.com>
9418         linum-mode plays more nicely with other margin-setting extensions
9420         linum.el will only modify the left margin if it needs to, and will
9421         only reset the it back to 0 if it guesses that no-one has touched that
9422         margin in the meantime.
9424         As such, this is a more of a workaround than an actual fix, but fixes
9425         the problems described in bug#20674 regarding the interaction with
9426         modes such as darkroom-mode and olivetti-mode.
9428         A similar fix was commited to nlinum.el in ELPA.git's
9429         e7f5f549fbfb740b911fb7f33b42381ecece56d8
9431         * linum.el (linum-delete-overlays): Restore margins more
9432         criteriously.
9433         (linum-update-window): Set margins more criteriously.
9435 2015-11-16  Daiki Ueno  <ueno@gnu.org>
9437         * lisp/image-mode.el: Support encrypted file
9439         (image-toggle-display-image): Read content from the buffer instead
9440         of the file, if the buffer holds a decrypted data.  (Bug#21870)
9442 2015-11-15  Juanma Barranquero  <lekktu@gmail.com>
9444         * lisp/progmodes/verilog-mode.el (verilog-save-buffer-state): Add backquote
9446 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
9448         * lisp/emacs-lisp/package.el: Fix a decoding issue
9450         (package--with-response-buffer): Use `url-insert-buffer-contents'.
9451         The previous code had some issues with decoding. Refactoring that
9452         function allows us to use the decoding from url-handlers while still
9453         treating both sync and async requests the same.
9455         * lisp/url/url-handlers.el (url-insert-file-contents): Move some code to
9456         `url-insert-buffer-contents'.
9457         (url-insert-buffer-contents): New function
9459 2015-11-15  Stefan Monnier  <monnier@iro.umontreal.ca>
9461         * lisp/progmodes/verilog-mode.el: Use with-silent-modifications
9463         (verilog-save-buffer-state): Use with-silent-modifications when available.
9464         (verilog-save-font-no-change-functions): Don't bind
9465         before/after-change-functions if it's not needed.
9467 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
9469         * CONTRIBUTE: Remove information about feature freeze.
9471         Merge branch 'release-process-lowercase'
9473 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
9475         Document the release process
9477         * admin/notes/versioning: Add information about RC releases.
9478         * admin/release-process: Document the release process.
9479         * admin/authors.el (authors-ignored-files):
9480         * admin/README: Change FOR-RELEASE to release-process.
9481         * CONTRIBUTE:
9482         * admin/notes/bugtracker: Don't mention FOR-RELEASE.
9484 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
9486         * admin/release-process: Rename from admin/FOR-RELEASE.
9488 2015-11-14  David Engster  <deng@randomsample.de>
9490         gitmerge: Fix git log command
9492         * admin/gitmerge.el (gitmerge-missing): Use '--left-only' since we
9493         only want commits from the branch that is to be merged.
9494         (gitmerge-setup-log-buffer): Use the same symmetric range as in
9495         `gitmerge-missing'.
9497 2015-11-14  David Engster  <deng@randomsample.de>
9499         gitmerge: Try to detect cherry-picks
9501         * admin/gitmerge.el (gitmerge-default-branch): Change to
9502         origin/emacs-25.
9503         (gitmerge-missing): Use symmetric difference ('...') between
9504         branch and master so that cherry-picks can be detected.
9506 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
9508         Increment Emacs version on master branch
9510         * lisp/cus-edit.el (customize-changed-options-previous-release):
9511         Increase previous version to 24.5.
9513         * configure.ac:
9514         * msdos/sed2v2.inp: Bump version to 25.1.50.
9516 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
9518         Mention CONTRIBUTE in README, since it was moved from etc/ to root.
9519         * etc/TODO: Remove the reference to `etc/CONTRIBUTE'.
9520         * README: Mention CONTRIBUTE.
9522 2015-11-13  Wilson Snyder  <wsnyder@wsnyder.org>
9524         Update verilog-mode.el to 2015-11-09-b121d60-vpo
9526         * verilog-mode.el (verilog-auto, verilog-delete-auto)
9527         (verilog-modi-cache-results, verilog-save-buffer-state)
9528         (verilog-save-font-no-change-functions): When internally suppressing
9529         change functions, use `inhibit-modification-hooks' and call
9530         `after-change-funtions' to more nicely work with user hooks.
9531         Reported by Stefan Monnier.
9532         (verilog-auto, verilog-delete-auto, verilog-delete-auto-buffer):
9533         Create `verilog-delete-auto-buffer' to avoid double-calling
9534         fontification hooks.
9535         (verilog-restore-buffer-modified-p, verilog-auto)
9536         (verilog-save-buffer-state): Prefer restore-buffer-modified-p over
9537         set-buffer-modified-p.  Reported by Stefan Monnier.
9538         (verilog-diff-auto, verilog-diff-buffers-p)
9539         (verilog-diff-ignore-regexp): Add `verilog-diff-ignore-regexp'.
9540         (verilog-auto-inst-port, verilog-read-sub-decls-expr): Fix
9541         AUTOINST with unpacked dimensional parameters, bug981.  Reported by
9542         by Amol Nagapurkar.
9543         (verilog-read-decls, verilog-read-sub-decls-line): Avoid unneeded
9544         properties inside internal structures.  No functional change
9545         intended.
9547 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
9549         Use generic dispatch for xref backends
9551         * lisp/progmodes/xref.el (xref-backend-functions):
9552         New variable.
9553         (xref-find-function): Remove.
9554         (xref-find-backend)
9555         (xref--etags-backend): New functions.
9556         (xref-identifier-at-point-function)
9557         (xref-identifier-completion-table-function): Remove.
9558         (xref-backend-definitions, xref-backend-references)
9559         (xref-backend-apropos, xref-backend-identifier-at-point)
9560         (xref-backend-identifier-completion-table):
9561         New generic functions.
9563         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
9564         Add `elisp--xref-backend' to the beginning of
9565         `xref-backend-functions', locally.  Delete references to
9566         removed functions and vars.
9567         (elisp-xref-find): Remove.
9568         (elisp--xref-backend): New function.
9569         (elisp--xref-find-references, elisp--xref-find-apropos)
9570         (elisp--xref-identifier-completion-table):
9571         Turn into appropriately named generic methods.
9573         * lisp/progmodes/etags.el (etags-xref-find): Remove.
9574         (xref-backend-identifier-completion-table)
9575         (xref-backend-references, xref-backend-definitions)
9576         (xref-backend-apropos): New generic methods.
9578 2015-11-13  Juri Linkov  <juri@linkov.net>
9580         Support rectangular regions for more commands
9582         * lisp/simple.el (region-extract-function): Handle the arg
9583         value ‘bounds’.
9584         (region-insert-function): New function.
9585         (shell-command-on-region): Add arg ‘region-noncontiguous-p’.
9586         If non-nil, operate on multiple chunks.
9587         (region-noncontiguous-p): New function.
9589         * lisp/rect.el: Add function rectangle--insert-region
9590         around region-insert-function.
9591         (extract-rectangle-bounds): New function.
9592         (rectangle--extract-region): Handle the arg value ‘bounds’.
9593         (rectangle--insert-region): New function.
9595         * lisp/emulation/cua-rect.el: Add function cua--insert-rectangle
9596         around region-insert-function.
9597         (cua--extract-rectangle-bounds): New function.
9598         (cua--rectangle-region-extract): Handle the arg value ‘bounds’.
9600         * lisp/replace.el (query-replace, query-replace-regexp): Add arg
9601         ‘region-noncontiguous-p’.  Use ‘use-region-p’.
9602         (query-replace-regexp-eval, map-query-replace-regexp)
9603         (replace-string, replace-regexp): Use ‘use-region-p’.
9604         (keep-lines, flush-lines, how-many): Use ‘use-region-p’.
9605         (perform-replace): Add arg ‘region-noncontiguous-p’.
9606         If non-nil, operate on multiple chunks.
9608         * src/casefiddle.c (Fdowncase_region): Add arg ‘region-noncontiguous-p’.
9609         If non-nil, operate on multiple chunks.  (Bug#19829)
9611 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
9613         Handle multiple matches on the same line; add highlighting
9615         * lisp/progmodes/xref.el (xref-location-marker): Interpret the
9616         column value in characters.
9617         (xref--collect-matches): Rename from `xref--collect-match'.
9618         Search for all matches in the hit line.  Add `highlight' face to
9619         the matched region in the summary.  Update both callers.
9621 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
9623         Replace xref-match-bounds with xref-match-length
9625         Relying on xref-location-marker to point to the beginning of the match
9627         * lisp/progmodes/xref.el (xref-match-bounds): Remove.
9628         (xref-match-length): Add.
9629         (xref-make-match): Change the arguments.
9630         (xref--match-buffer-bounds): Remove.
9631         (xref-match-item): Store length, instead of end-column.
9632         (xref-pulse-momentarily)
9633         (xref--collect-match)
9634         (xref--query-replace-1): Update accordingly.
9635         (xref-query-replace): Ditto.  And check that the search results
9636         are up-to-date.
9638 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
9640         Merge from gnulib
9642         This incorporates:
9643         2015-11-13 xalloc-oversized: improve performance with GCC 5
9644         * lib/xalloc-oversized.h: Copy from gnulib.
9646 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
9648         Spruce up ftfont.c memory allocation
9650         * src/ftfont.c (setup_otf_gstring):
9651         Avoid O(N**2) behavior when reallocating.
9652         (ftfont_shape_by_flt): Prefer xpalloc to xrealloc when
9653         reallocating buffers; this simplifies the code.  Do not trust
9654         mflt_run to leave the output areas unchanged on failure, as
9655         this isn’t part of its interface spec.
9657 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
9659         Port recent XCB changes to 64-bit ‘long int’
9661         For historical reasons, libX11 represents 32-bit values like Atoms as
9662         ‘long int’ even on platforms where ‘long int’ is 64 bits.  XCB doesn’t
9663         do that, so adapt the recent XCB code to behave properly on 64-bit
9664         platforms.  Also, fix what appears to be a bug in the interpretation
9665         of xcb_get_property_value_length, at least on my Fedora platform
9666         which is running libxcb-1.11-5.fc21.
9667         * src/xfns.c (x_real_pos_and_offsets):
9668         * src/xterm.c (get_current_wm_state):
9669         xcb_get_property_value_length returns a byte count, not a word count.
9670         For 32-bit quantities, xcb_get_property_value returns a vector
9671         of 32-bit words, not of (possibly 64-bit) long int.
9673 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
9675         * src/undo.c (run_undoable_change): Now static.
9677 2016-01-30  Michael Albinus  <michael.albinus@gmx.de>
9679         Adapt Tramp version, do not merge with master
9681         * doc/misc/trampver.texi (trampver):
9682         * lisp/net/trampver.el (tramp-version): Set to "2.2.13-25.1".
9684 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
9686         Remove support for ':timeout' from w32 tray notifications
9688         * src/w32fns.c (Fw32_notification_notify): Delete the code that
9689         supports ':timeout'.
9690         (syms_of_w32fns): Don't DEFSYM ':timeout'.  This avoids clashes
9691         with dbusbind.c when D-Bus is compiled in.
9693         * doc/lispref/os.texi (Desktop Notifications): Don't mention
9694         ':timeout'.
9696 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
9698         * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
9699         (simple-test--transpositions): New macro.
9700         (simple-transpose-subr): New test.
9702 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
9704         * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
9706 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
9708         * src/undo.c: Small fixes for previous change
9709         (run_undoable_change): Mark void argument list.
9710         (record_property_change): Remove unused variable `boundary'.
9712 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
9714         Add a few more variables to redisplay--variables
9716         * lisp/frame.el (redisplay--variables): Add bidi-paragraph-direction
9717         and bidi-display-reordering to the list.
9719 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
9721         * lisp/loadup.el: Enlarge the size of the hash table to 80000.
9723 2015-11-13  Eli Barzilay  <eli@barzilay.org>
9725         Fix point positioning after transposing with negative arg
9727         * lisp/simple.el (transpose-subr): When invoked with a negative
9728         argument, move point to after the transposed text, like we do
9729         when invoked with a positive argument.  (Bug#21885)
9731 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
9733         Fix last change in shr.el
9735         * lisp/net/shr.el (shr--have-one-fringe-p): Rename from
9736         have-fringes-p.  All callers changed.  Doc fix.  (Bug#21895)
9738 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
9740         Fix last change
9742         * src/w32fns.c (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]:
9743         Don't DEFSYM tray notification symbols if D-Bus is being used.
9745 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
9747         Another fix for MinGW64 and Cygwin builds due to notifications
9749         * src/w32fns.c: Ifdef away tray notification code if D-Bus is
9750         being compiled into Emacs.
9751         (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]: Don't defsubr
9752         Sw32_notification_notify and Sw32_notification_close if the code
9753         is not compiled.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
9755 2016-01-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9756 2015-11-12  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9758         Remove intern calls and XXX comments from Fx_export_frames
9760         * src/xfns.c (Fx_export_frames): Use Qpdf, Qpng, Qpostscript, and
9761         Qsvg instead of intern calls.  Use "postscript" instead of "ps"
9762         for consistency with image types.  Remove XXX comments.
9763         (syms_of_xfns) <Qpdf>: DEFSYM it.
9765 2016-01-30  Eric Hanchrow  <eric.hanchrow@gmail.com>
9766 2015-11-12  Eric Hanchrow  <eric.hanchrow@gmail.com>
9768         shr: don't invoke unbound function (Bug#21895)
9770         * lisp/net/shr.el (have-fringes-p): New function.
9771         (shr-insert-document, shr-fill-text): Use it.
9773 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
9775         * test/automated/keymap-tests.el: Fix test to make it repeatable
9777         (keymap-store_in_keymap-FASTINT-on-nonchars): Reset Buffer-menu-mode-map
9778         entry to its initial value to make the test repeatable in interactive
9779         sessions (assuming it doesn't fail and crashes Emacs, of course).
9781 2016-01-30  Artur Malabarba  <bruce.connor.am@gmail.com>
9783         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors): Small fix
9785 2016-01-30  Phillip Lord  <phillip.lord@russet.org.uk>
9787         : Tests for undo-auto functionality.
9788 2015-11-12  Artur Malabarba  <bruce.connor.am@gmail.com>
9790         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
9791         Small fix.
9793 2015-11-12  Phillip Lord  <phillip.lord@newcastle.ac.uk>
9795         The heuristic that Emacs uses to add an `undo-boundary' has been
9796         reworked, as it interacts poorly with functions on `post-command-hook'
9797         or `after-change-functions'.
9799         * lisp/simple.el: New section added.
9800         * src/cmds.c (remove_excessive_undo_boundaries): Now in lisp.
9801         (self_insert_command): Calls simple.el to amalgamate.
9802         (delete_char): Calls simple.el to amalgamate.
9803         * src/keyboard.c (last_undo_boundary): Removed.
9804         * src/undo.c (run_undoable_change): New function.
9806 2015-11-12  Juri Linkov  <juri@linkov.net>
9808         Bind [?\S-\ ] to previous line command in Dired-like modes.
9810         * lisp/arc-mode.el (archive-mode-map):
9811         * lisp/dired.el (dired-mode-map):
9812         * lisp/proced.el (proced-mode-map):
9813         * lisp/vc/vc-dir.el (vc-dir-mode-map):
9814         Bind [?\S-\ ] to previous line command.
9815         (Bug#20790)
9817 2015-11-12  Eli Zaretskii  <eliz@gnu.org>
9819         Fix the MinGW64 and Cygwin-w32 builds
9821         * src/w32fns.c (MYNOTIFYICONDATAW_V1_SIZE)
9822         (MYNOTIFYICONDATAW_V2_SIZE, MYNOTIFYICONDATAW_V3_SIZE): Define and
9823         use instead of the corresponding NOTIFYICONDATAW_Vn_SIZE macros,
9824         which cause trouble with MinGW42 headers.  Ifdef away tray
9825         notifications code for Cygwin.  Reported by Andy Moreton
9826         <andrewjmoreton@gmail.com>.
9828 2015-11-12  Simen Heggestøyl  <simenheg@gmail.com>
9830         Enable sorting of JSON object keys when encoding
9832         * lisp/json.el (json-encoding-object-sort-predicate): New variable
9833         for specifying a sorting predicate for JSON objects during encoding.
9834         (json--plist-to-alist): New utility function.
9835         (json-encode-hash-table): Re-use `json-encode-alist' when object keys
9836         are to be sorted.
9837         (json-encode-alist): Sort output by
9838         `json-encoding-object-sort-predicate, when set.
9839         (json-encode-plist): Re-use `json-encode-alist' when object keys are
9840         to be sorted.
9841         (json-pretty-print-buffer-ordered): New command to pretty print the
9842         buffer with object keys sorted alphabetically.
9843         (json-pretty-print-ordered): New command to pretty print the region
9844         with object keys sorted alphabetically.
9846         * test/automated/json-tests.el (test-json-plist-to-alist)
9847         (test-json-encode-plist, test-json-encode-hash-table)
9848         (test-json-encode-alist-with-sort-predicate)
9849         (test-json-encode-plist-with-sort-predicate): New tests.
9851         * etc/NEWS: Add an entry for the new commands.
9853 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
9855         * test/automated/keymap-tests.el: New test file.
9857 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
9859         Speed up x_real_pos_and_offsets using XCB
9861         * src/xfns.c (x_real_pos_and_offsets) [USE_XCB]: Add XCB flavors of
9862         all X calls, and pipeline requests when possible, collecting results
9863         later.  Eliminate use of x_catch_errors (and thus XSync) in XCB case.
9865 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
9867         Enable use of XCB for checking window manager state
9869         * src/xterm.c (get_current_wm_state) [USE_XCB]: Use XCB calls instead
9870         of XGetWindowProperty plus error-catching, since we can explicitly
9871         check for errors in the XCB version.  This eliminates 3 XSync calls on
9872         top of the round-trip actually fetching the information.
9874 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
9876         Detect XCB and save a connection handle
9878         * configure.ac: If using X11, check for XCB libraries and header.
9879         * src/Makefile.in (XCB_LIBS): Define.
9880         (LIBX_EXTRA): Include it.
9882         * src/xterm.h [USE_XCB]: Include X11/Xlib-xcb.h.
9883         (struct x_display_info) [USE_XCB]: Add an XCB connection handle field.
9884         * src/xterm.c (x_term_init) [USE_XCB]: Initialize the new field.
9886 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
9888         Reduce some data dependencies between X calls
9890         Gains nothing in the traditional-Xlib code, but more closely aligns
9891         with how the XCB version will work.
9893         * src/xfns.c (x_real_pos_and_offsets): When translating coordinates,
9894         send coordinates (0,0) to the X server and add in the real coordinates
9895         after getting the response.  Move XGetGeometry for outer window inside
9896         error-trapping block.  Use DPY variable more, since it's available.
9898 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
9900         Use color cache for creating bitmap
9902         * src/image.c (x_create_bitmap_from_xpm_data) [ALLOC_XPM_COLORS]:
9903         Set attributes to use the caching color allocator.  Initialize and
9904         free the cache.
9906 2015-11-12  Eli Barzilay  <eli@barzilay.org>
9908         Add "^" to the interactive specs of `dired-next/previous-line'
9910         * lisp/dired.el (dired-next-line, dired-previous-line): It makes sense
9911         to bind these commands to the arrow keys, and that means that they work
9912         better with a "^" in the `interactive' declaration so selection works
9913         as expected.
9915 2016-01-30  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
9917         Sync with soap-client repository, version 3.0.2
9919         * lisp/net/soap-client.el: Bump version to 3.0.2.
9921         * lisp/net/soap-client.el (soap-warning): Use format, not format-message.
9923         * lisp/net/soap-client.el: Add cl-lib to Package-Requires.  Require cl-lib.
9924         (soap-validate-xs-simple-type): Use cl-labels instead of cl-flet.
9926         * lisp/net/soap-client.el: Support Emacs versions that do not have
9927         define-error.
9929         * lisp/net/soap-inspect.el: Remove version header.
9931         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Fix first line header
9932 2015-11-11  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
9934         Sync with soap-client repository, version 3.0.2
9936         * soap-client.el: Bump version to 3.0.2.
9938         * soap-client.el (soap-warning): Use format, not format-message.
9940         * soap-client.el: Add cl-lib to Package-Requires.  Require cl-lib.
9941         (soap-validate-xs-simple-type): Use cl-labels instead of cl-flet.
9943         * soap-client.el: Support Emacs versions that do not have
9944         define-error.
9946         * soap-inspect.el: Remove version header.
9948         * soap-client.el, soap-inspect.el, jira2.el: Fix first line header
9949         format.
9951 2015-11-11  Alan Mackenzie  <acm@muc.de>
9953         CC Mode: Respect users' settings of open-paren-in-column-0-is-defun-start.
9955         * lisp/progmodes/cc-engine.el (c-backward-single-comment)
9956         (c-backward-comments, c-invalidate-state-cache-1, c-parse-state-1)
9957         (c-guess-basic-syntax):
9958         Remove bindings of open-paren-in-column-0-is-defun-start to nil.
9959         (c-get-fallback-scan-pos): "New" function (existed several years ago).
9960         (c-parse-state-get-strategy): Reintroduce the 'BOD strategy, using
9961         c-get-fallback-scan-pos.
9962         (c-parse-state-1): Handle 'BOD strategy.
9964         * lisp/progmodes/cc-mode.el (c-before-change, c-after-change)
9965         (c-font-lock-fontify-region): Remove bindings of
9966         open-paren-in-column-0-is-defun-start to nil.
9968         * doc/misc/cc-mode.texi (Performance Issues)
9969         (Limitations and Known Bugs): Fix mix up between @chapter and @appendix.
9971 2015-11-11  Artur Malabarba  <bruce.connor.am@gmail.com>
9973         * lisp/obarray.el: Fix shadowed variables.
9974         (obarray-map, obarray-remove, obarray-put, obarray-get):
9975         Change OBARRAY arg to OB to avoid shadowing ‘obarray’.
9977 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
9979         Avoid error in submitting a form with EWW
9981         * lisp/gnus/mm-url.el (mm-url-form-encode-xwfu): Allow argument
9982         CHUNK to be nil.  (Bug#21881)
9984 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
9986         Rename seq-p and map-p to seqp and mapp
9988         * lisp/emacs-lisp/seq.el (seqp): New name.
9989         * lisp/emacs-lisp/map.el (mapp): New name.
9990         * doc/lispref/sequences.texi: Update the documentation for seqp.
9991         * test/automated/map-tests.el: Update the tests for mapp.
9993 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
9995         Rename obarray-p to obarrayp
9997         * lisp/obarray.el (obarrayp): New name.
9998         * test/automated/obarray-tests.el: Update the tests.
10000 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
10002         Rename obarray-foreach to obarray-map
10004         * lisp/obarray.el (obarray-map): New name.
10005         * test/automated/obarray-tests.el: Update the corresponding tests.
10007 2015-11-11  Przemysław Wojnowski  <esperanto@cumego.com>
10009         New file with obarray functions.
10011         * lisp/obarray.el: Basic obarray functions extracted from abbrev.el.
10012         * test/automated/obarray-tests.el: New file.
10014 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
10016         Implement tray notifications for MS-Windows
10018         * src/w32fns.c (MY_NOTIFYICONDATAW): New typedef.
10019         (NOTIFYICONDATAW_V1_SIZE, NOTIFYICONDATAW_V2_SIZE)
10020         (NOTIFYICONDATAW_V3_SIZE, NIF_INFO, NIIF_NONE, NIIF_INFO)
10021         (NIIF_WARNING, NIIF_ERROR, EMACS_TRAY_NOTIFICATION_ID)
10022         (EMACS_NOTIFICATION_MSG): New macros.
10023         (NI_Severity): New enumeration.
10024         (get_dll_version, utf8_mbslen_lim, add_tray_notification)
10025         (delete_tray_notification, Fw32_notification_notify)
10026         (Fw32_notification_close): New functions.
10027         (syms_of_w32fns): Defsubr functions exposed to Lisp.  DEFSYM
10028         keywords used by w32-notification-notify.
10030         * doc/lispref/os.texi (Desktop Notifications): Describe the native
10031         w32 tray notifications.
10033 2016-01-30  Alan Mackenzie  <acm@muc.de>
10035         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
10037         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
10038         Windows" and new @defun selected-window-group.
10039         (Window Start and End): Describe new &optional parameter GROUP and
10040         ...-group-function for window-start, window-end, set-window-start, and
10041         pos-visible-in-window-p.
10042         (Textual Scrolling) Describe the same for recenter.
10043         doc/lispref/positions.texi (Screen Lines): Describe the same for
10044         move-to-window-line.
10046         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
10047         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
10048         new optional parameter "group".  At the beginning of each, check whether the
10049         corresponding ...-group-function is set to a function, and if so execute this
10050         function in place of the normal processing.
10051         (syms_of_window): Define symbols for the six new variables below.
10052         (window-start-group-function, window-end-group-function)
10053         (set-window-start-group-function, recenter-group-function)
10054         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
10055         New permanent local buffer local variables.
10056         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
10057         Fpos_visible_in_window_p.
10059         lisp/window.el (selected-window-group-function): New permanent local buffer
10060         local variable.
10061         (selected-window-group): New function.
10063         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
10064         enable, kill them at mode disable.  Add/remove follow-after-change to/from
10065         after-change-functions.
10066         (follow-start-end-invalid): New variable.
10067         (follow-redisplay): Manipulate follow-start-end-invalid.
10068         (follow-after-change, follow-window-start, follow-window-end)
10069         (follow-set-window-start, follow-pos-visible-in-window-p)
10070         (follow-move-to-window-line, follow-sit-for): New functions.
10072         lisp/isearch.el (isearch-call-message): New macro.
10073         (isearch-update, with-isearch-suspended, isearch-del-char)
10074         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
10075         (with-isearch-suspended): Rearrange code such that isearch-call-message is
10076         invoked before point is moved.
10077         (isearch-message): Add comment about where point must be at function call.
10078         (isearch-search): Remove call to isearch-message.
10079         (isearch-lazy-highlight-window-group): New variable.
10080         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
10081         the battery of tests to ...
10082         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
10083         Note: (sit-for 0) is still called.
10084         (isearch-lazy-highlight-update): Check membership of
10085         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
10086         property.
10087         (isearch-update, isearch-done, isearch-string-out-of-window)
10088         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
10089         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
10090         (isearch-lazy-highlight-update): Call the six amended primitives (see
10091         src/window.c above) with the new `group' argument set to t, to cooperate
10092         with Follow Mode.
10094 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
10096         Optimize `file-equal-p' and `file-in-directory-p' in Tramp
10098         * lisp/net/tramp.el (tramp-handle-file-equal-p)
10099         (tramp-handle-file-in-directory-p): New defuns.  Suggested by
10100         Harvey Chapman <hchapman@3gfp.com>.
10102         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
10103         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
10104         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
10105         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist): Use them.
10107 2015-11-10  Karl Fogel  <kfogel@red-bean.com>
10109         * CONTRIBUTE: Encourage adding tests.
10111         Based on this post from John Wiegley:
10113           From: "John Wiegley" <johnw@newartisans.com>
10114           Subject: Re: [Emacs-diffs] master 1f02cbe: Fix bug#21766 and add test
10115           To: Juanma Barranquero <lekktu@gmail.com>
10116           Cc: emacs-diffs@gnu.org, bruce.connor.am@gmail.com,
10117               emacs-devel <emacs-devel@gnu.org>
10118           Date: Wed, 28 Oct 2015 18:45:29 -0700
10119           Message-ID: <m2y4emqwg6.fsf@newartisans.com>
10121           https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02372.html
10123 2015-11-10  David Reitter  <david.reitter@gmail.com>
10125         Avoid creating notification objects when possible
10127         * src/nsterm.m (windowWillEnterFullScreen, windowWillExitFullScreen:)
10128         (windowDidEnterFullScreen, windowDidExitFullScreen): Provide convenience
10129         functions that do not require a notification object.  When needed,
10130         define NSWindowDidEnterFullScreenNotification to allow for compilation
10131         on OS X 10.6.8.
10133 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
10135         Move INTEGER_TO_CONS body out of .h file
10137         * src/data.c (INTBIG_TO_LISP): New macro, with most
10138         of the contents of the old INTEGER_TO_CONS.
10139         (intbig_to_lisp, uintbig_to_lisp): New functions.
10140         * src/lisp.h (INTEGER_TO_CONS):
10141         Simplify by using EXPR_SIGNED and the new functions.
10142         This shrinks code size a bit, and makes it easier to
10143         put a breakpoint on handling of large integers.
10145 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
10147         Merge from gnulib
10149         This incorporates:
10150         2015-11-10 intprops: new public macro EXPR_SIGNED
10151         2015-11-10 intprops: fix typo in clang port
10152         * lib/intprops.h: Copy from gnulib.
10154 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
10156         Spelling fixes
10158         * lisp/net/soap-inspect.el (soap-inspect-xs-simple-type):
10159         Fix misspelling in output.
10161 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
10163         * doc/lispref/variables.texi (Directory Local Variables):
10164         Document dir-locals wildcards.
10166         * lisp/files.el (dir-locals-file): Point to Info node.
10168         * doc/emacs/custom.texi (Directory Variables):
10169         Document dir-locals wildcards.
10171         * etc/NEWS: Document new functionality.
10173 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
10175         * lisp/files.el: Don't allow customization of dir-locals sorting.
10176         In retrospect, this is not a good idea for the same reason that
10177         `dir-locals-file' is a defconst, because it is important that this
10178         behaviour be "uniform across different environments and users".
10179         Sure, the user can still change the sorting with a hack, but we
10180         shouldn't encourage them to change it.
10181         (dir-locals--all-files): Return list in the order returned by
10182         `file-expand-wildcards'.
10183         (file-expand-wildcards): Document the sorting predicate used.
10184         (dir-locals-sort-predicate): Delete variable.
10186 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
10188         * lisp/files.el (dir-locals-read-from-file): Better handle errors.
10190         * lisp/isearch.el (search-default-regexp-mode): Change default value.
10192 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
10194         * lisp/files.el (dir-locals-find-file): Don't stop at unreadable files.
10195         `locate-dominating-file' will now keep looking if the files it finds in
10196         a given directory are unreadable (or not files).
10198 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
10200         * lisp/files.el (dir-locals-file): Allow wildcards.
10201         (dir-locals-find-file, dir-locals-collect-variables)
10202         (dir-locals-read-from-file): Update accordingly.
10203         (hack-dir-local-variables): Rename a local variable.
10205         * lisp/files-x.el (modify-dir-local-variable): Update accordingly.
10207         * lisp/help-fns.el (describe-variable): Update accordingly.
10209         * .gitignore: Add .dir-locals?.el.
10211 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
10213         * lisp/emacs-lisp/map.el (map-merge-with): New function.
10215         * test/automated/map-tests.el (test-map-merge-with): New test.
10217 2015-11-09  Karl Fogel  <kfogel@red-bean.com>
10219         Fix some recently-perturbed bookmark autoloads
10221         * lisp/bookmark.el (bookmark-set-internal): Remove unnecessary autoload.
10222         (bookmark-set): Restore autoload.
10223         (bookmark-set-no-overwrite): Add autoload.
10225         Thanks to Juanma Barranquero for noticing the autoload problems
10226         introduced by my recent commit adding/changing the above functions
10227         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
10229 2016-01-30  Noah Friedman  <friedman@splode.com>
10231         (ydump-buffer): Handle case where gap is at the start of buffer.
10232         I don't recall if older versions of gdb were less strict but you
10233         cannot dump a 0-length range in gdb 7.9.1.
10235 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
10236 2015-11-09  Noah Friedman  <friedman@splode.com>
10238         * etc/emacs-buffer.gdb (ydump-buffer): Handle case where gap is at
10239         the start of buffer.  I don't recall if older versions of gdb were
10240         less strict but you cannot dump a 0-length range in gdb 7.9.1.
10242 2015-11-09  Dmitry Gutov  <dgutov@yandex.ru>
10244         * lisp/progmodes/project.el: Update Commentary.
10246         Merge branch 'project-next'
10248 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
10250         Fold `project-ask-user' into `project-current'
10252         * lisp/progmodes/project.el (project-find-functions): Remove
10253         `project-ask-user'.
10254 2015-11-09  Dmitry Gutov  <dgutov@yandex.ru>
10256         Fold `project-ask-user' into `project-current'
10258         * lisp/progmodes/project.el (project-find-functions):
10259         Remove `project-ask-user'.
10260         (project-ask-user): Remove function and the corresponding
10261         `project-roots' implementation.
10262         (project-current): Add a new argument, MAYBE-PROMPT.  Prompt the
10263         user in case there's no project in the current directory.  Update
10264         all callers.
10266 2015-11-09  Karl Fogel  <kfogel@red-bean.com>
10268         When VC detects a conflict, specify which file
10270         * lisp/vc/vc.el (vc-message-unresolved-conflicts): New function.
10271         * lisp/vc/vc-svn.el (vc-svn-find-file-hook):
10272         * lisp/vc/vc-hg.el (vc-hg-find-file-hook):
10273         * lisp/vc/vc-bzr.el (vc-bzr-find-file-hook):
10274         * lisp/vc/vc-git.el (vc-git-find-file-hook): Use above new function
10275           to display a standard message that specifies the conflicted file.
10277         Before this change, the message VC used for indicating a conflicted
10278         file was just "There are unresolved conflicts in this file" without
10279         naming the file (and this language was duplicated in several places).
10280         After this change, it's "There are unresolved conflicts in file FOO"
10281         (and this language is now centralized in one function in vc.el).
10283         Justification: It's important for the message to name the conflicted
10284         file because the moment when VC realizes a file is conflicted does not
10285         always come interactively.  For example, some people automatically
10286         find a set of Org Mode files on startup, and may keep those .org files
10287         under version control.  If any of the files are conflicted, the user
10288         just sees some messages fly by, and might later check the "*Messages*"
10289         buffer to find out what files were conflicted.  I'm not saying this
10290         happened to me or anything; it's a purely hypothetical example.
10292 2015-11-09  Eli Zaretskii  <eliz@gnu.org>
10294         Fix assertion violation in define-key
10296         * src/keymap.c (store_in_keymap): Don't use XFASTINT on non-character
10297         objects.  Reported by Drew Adams <drew.adams@oracle.com>
10298         and Juanma Barranquero <lekktu@gmail.com>.
10300 2015-11-09  Dima Kogan  <dima@secretsauce.net>
10302         Fix a memory leak in GC of font cache
10304         * src/alloc.c (compact_font_cache_entry): Don't GC unmarked font
10305         entities if some of the fonts it references are marked.  This
10306         plugs a memory leak.  (Bug#21556)
10308 2015-11-09  Paul Eggert  <eggert@cs.ucla.edu>
10310         Use INT_ADD_WRAPV etc. to check integer overflow
10312         * src/alloc.c (xnmalloc, xnrealloc, xpalloc, Fmake_string):
10313         * src/buffer.c (record_overlay_string, overlay_strings):
10314         * src/casefiddle.c (casify_object):
10315         * src/ccl.c (Fccl_execute_on_string):
10316         * src/character.c (char_width, c_string_width, lisp_string_width)
10317         (count_size_as_multibyte, string_escape_byte8):
10318         * src/coding.c (coding_alloc_by_realloc, produce_chars):
10319         * src/data.c (arith_driver):
10320         * src/dispnew.c (realloc_glyph_pool, init_display):
10321         * src/editfns.c (styled_format):
10322         * src/fns.c (Ffillarray):
10323         * src/ftfont.c (ftfont_shape_by_flt):
10324         * src/gnutls.c (gnutls_hex_string):
10325         * src/gtkutil.c (get_utf8_string):
10326         * src/image.c (x_to_xcolors, x_detect_edges, png_load_body):
10327         * src/keymap.c (Fkey_description):
10328         * src/lisp.h (SAFE_ALLOCA_LISP):
10329         * src/term.c (encode_terminal_code):
10330         * src/tparam.c (tparam1):
10331         * src/xselect.c (x_property_data_to_lisp):
10332         * src/xsmfns.c (smc_save_yourself_CB):
10333         * src/xterm.c (x_term_init):
10334         When checking for integer overflow, prefer INT_MULTIPLY_WRAPV to
10335         more-complicated code involving division and/or
10336         INT_MULTIPLY_OVERFLOW, and similarly for INT_ADD_WRAPV and
10337         subtraction and/or INT_ADD_OVERFLOW.
10338         * src/casefiddle.c (casify_object): Simplify multibyte size check.
10339         * src/character.c: Remove some obsolete ‘#ifdef emacs’s.
10340         * src/data.c (arith_driver): Also check for division overflow,
10341         as that’s now possible given that the accumulator can now contain
10342         any Emacs integer.
10343         * src/lisp.h (lisp_word_count): Remove; no longer used.
10345 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
10346 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
10348         Make sure that the ignore file exists
10350         * lisp/vc/vc.el (vc-default-ignore-completion-table):
10351         Make sure that the ignore file exists.
10353 2016-01-30  Michael Sperber  <mike@xemacs.org>
10355         * lisp/gnus-sum.el (gnus-summary-backend-map): Bind B-backspace to
10356 2015-11-08  Michael Sperber  <mike@xemacs.org>
10358         * gnus-sum.el (gnus-summary-backend-map): Bind B-backspace to
10359         `gnus-summary-delete-article` in a way that also works on XEmacs.
10361 2015-11-08  Simen Heggestøyl  <simenheg@gmail.com>
10363         Add support for retrieving paths to JSON elements
10365         Add support for retrieving the path to a JSON element. This can for
10366         instance be useful to retrieve paths in deeply nested JSON
10367         structures.
10369         * lisp/json.el (json-pre-element-read-function)
10370         (json-post-element-read-function): New variables to hold pre- and post
10371         read callback functions for `json-read-array' and `json-read-object'.
10372         (json--path): New variable used internally by `json-path-to-position'.
10373         (json--record-path, json--check-position): New functions used
10374         internally by `json-path-to-position'.
10375         (json-path-to-position): New function for retrieving the path to a
10376         JSON element at a given position.
10377         (json-read-object, json-read-array): Call
10378         `json-pre-element-read-function' and `json-post-element-read-function'
10379         when set.
10381         * test/automated/json-tests.el (test-json-path-to-position-with-objects)
10382         (test-json-path-to-position-with-arrays)
10383         (test-json-path-to-position-no-match): New tests for
10384         `json-path-to-position'.
10386 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
10388         * etc/NEWS: Mention new `bookmark-set-no-overwrite'.
10390         This really should been part of my previous commit
10391         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
10393 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
10395         Offer non-overwrite bookmark setter (Bug#15746)
10397         * lisp/bookmark.el (bookmark-set-internal): New helper function to do
10398         what `bookmark-set' used to do, but with more choices for overwrite
10399         vs push, and with minor changes to the interactive prompt format.
10400         (bookmark-set): Rewrite as wrapper around above.
10401         If overwriting, inform the user of that in the prompt.
10402         (bookmark-set-no-overwrite): New function, also done as wrapper.
10403         Bind to "M" in `ctl-x-r-map' autoloads.
10404         (bookmark-map): Similarly bind "M" here.
10406 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
10408         * src/unexelf.c (NEW_PROGRAM_H): Remove unused macro (Bug#20614).
10410 2015-11-08  Alan Modra  <amodra@gmail.com>
10412         ELF unexec: Don't insert a new section
10414         Reuse the .bss section instead, making it SHT_PROGBITS.  This way we
10415         don't need to mess with symbol st_shndx, or section sh_link and
10416         sh_info.
10418         This does lead to eu-elflint complaints about symbols defined in .bss
10419         with a needed version, because normally it is undefined symbols that
10420         have needed versions;  Defined symbols have version definitions.
10421         The exception is symbols defined by the linker in .dynbss for
10422         variables copied from a shared library in order to avoid text
10423         relocations, with copy relocs to copy their initial values from the
10424         shared library.  These symbols are both defined and have needed
10425         versions, and eu-elflink only expects to see them in SHT_NOBITS
10426         sections.  Of course there is no real problem with having such symbols
10427         in SHT_PROGBITS sections.  glibc ld.so handles them fine.
10429         * src/unexelf.c: Delete outdated comments.
10430         (PATCH_INDEX): Delete.
10431         (find_section): Delete.
10432         (unexec): Don't add a new section.  Instead reuse the last bss
10433         section, extending it to cover dumped data.  Make bss sections
10434         SHT_PROGBITS.  Remove all patching of sh_link, sh_info and
10435         st_shndx.  Rename bss sections.
10437 2015-11-08  Alan Modra  <amodra@gmail.com>
10439         ELF unexec: Drive from PT_LOAD header rather than sections
10441         This rewrites bss handling in the ELF unexec code.  Finding bss
10442         sections by name results in complicated code that
10443         - does not account for all names of possible bss sections,
10444         - assumes specific ordering of bss sections,
10445         - can wrongly choose a SHT_NOBITS section not in the bss segment,
10446         - incorrectly calculates bss size (no accounting for alignment gaps),
10447         - assumes .data and .bss are in the same segment.
10449         All of these problems and more are solved by finding the bss segment
10450         in PT_LOAD headers, ie. the address range included in p_memsz but not
10451         p_filesz of the last PT_LOAD header, then matching SHT_NOBITS sections
10452         in that address range.
10454         * src/unexelf.c: Delete old ppc comment.
10455         (OLD_PROGRAM_H): Define.
10456         (round_up): Delete.
10457         (unexec): Don't search for bss style sections by name.  Instead,
10458         use the last PT_LOAD header address range covered by p_memsz
10459         but not p_filesz and match any SHT_NOBITS section in that
10460         address range.  Simplify initialisation of section header vars.
10461         Don't assume that section headers are above bss segment.  Move
10462         copying of bss area out of section loop.  Align .data2 section
10463         to 1, since it now covers the entire bss area.  For SHT_NOBITS
10464         sections in the bss segment, leave sh_addr and sh_addralign
10465         unchanged, but correct sh_offset.  Clear memory corresponding
10466         to SHT_NOBITS .plt section.  Delete comment and hacks for
10467         sections partly overlapping bss range now that the full range
10468         is properly calculated.  Delete now dead .sbss code.
10469         (Bug#20614)
10471 2015-11-08  Alan Modra  <amodra@gmail.com>
10473         ELF unexec: R_*_NONE relocs
10475         These should be ignored on all targets.
10477         * src/unexelf.c (unexec): Ignore R_*_NONE relocs for any target,
10478         not just Alpha.  Comment on reloc size assumption.
10480 2015-11-08  Alan Modra  <amodra@gmail.com>
10482         ELF unexec: _OBJC_ symbols in bss sections
10484         This code assumed that there was only one bss section.  Rather than
10485         checking for a particular index, check the section type.  Also, handle
10486         the possibility that the section was SHT_NOBITS originally and is
10487         unchanged, in which case no clearing is needed (and sh_offset isn't
10488         necessarily valid, which can lead to a wild memset).
10490         * src/unexelf.c (unexec): Properly handle _OBJC_ symbols in
10491         bss sections.
10493 2015-11-08  Alan Modra  <amodra@gmail.com>
10495         ELF unexec: Symbol table patching
10497         No st_shndx value larger than SHN_LORESERVE should be changed.
10498         * src/unexelf.c (unexec): Don't adjust any st_shndx larger than
10499         SHN_LORESERVE.  Error on SHN_XINDEX.
10501 2015-11-08  Alan Modra  <amodra@gmail.com>
10503         ELF unexec: Merge Alpha and MIPS COFF debug handling
10505         * src/unexelf.c (unexec): Merge Alpha and MIPS COFF debug handling.
10506         Don't find .mdebug section index, find the section in the loop.
10507         Allow for unlikely possibility that .mdebug is located at sh_offset
10508         before bss segment, by calculating move from difference in
10509         sh_offset rather than just assuming new_data2_size.  Simplify
10510         cbLineOffset handling.
10512 2015-11-08  Alan Modra  <amodra@gmail.com>
10514         ELF unexec: Tidy code
10516         Separate out some of the more mechanical changes so following patches
10517         are smaller.
10519         * src/unexelf.c (unexec): Rearrange initialisation of program
10520         header vars.  Use pointer vars in loops rather than indexing
10521         section header array via macros.  Simplify _OBJC_ sym code
10522         and reloc handling code.
10524 2015-11-08  Alan Modra  <amodra@gmail.com>
10526         ELF unexec: Correct section header index
10528         First a small fix.  The code incorrectly uses "NEW_SECTION_H (n)" when
10529         it should have been using "NEW_SECTION_H (nn)" to find the name of the
10530         section currently being processed.  Of course, before the bss
10531         sections, n and nn have the same value, so this doesn't matter except
10532         in the case of .sbss.  For .sbss this probably meant .bss (most likely
10533         the next section) was copied from memory.  A later patch removes the
10534         bogus .sbss handling anyway.
10536         * src/unexelf.c (unexec): Use correct index to look up names.
10538 2015-11-08  Michael Albinus  <michael.albinus@gmx.de>
10540         Fix Bug#21841
10542         * lisp/filenotify.el (file-notify--rm-descriptor):
10543         Use `descriptor' instead of computing its value.
10544         (file-notify--descriptor): Additional argument FILE.  Adapt all callees.
10545         (file-notify-rm-watch): Use `descriptor' when calling file name handler.
10546         (Bug#21841)
10548 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
10550         Remove dirs in vc project roots from the the vc project library roots
10552         * lisp/progmodes/project.el (project-library-roots):
10553         Remove directories inside the project roots from the result.
10554         (http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00536.html)
10556 2015-11-07  Dmitry Gutov  <dgutov@yandex.ru>
10558         Move and rename xref-find-regexp to the project package
10560         * lisp/progmodes/project.el (project-find-regexp)
10561         (project--read-regexp)
10562         (project--find-regexp-in): New functions.
10564         * lisp/progmodes/xref.el (xref--find-xrefs): Extract from
10565         xref--show-xrefs.  Use in existing callers in place of that
10566         function.
10567         (xref--show-xrefs): Only do the "show" part.
10568         (xref-find-regexp): Rename, more or less, to
10569         project-or-libraries-find-regexp.
10571 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
10573         Abolish temporary buffer management for xref
10575         * lisp/progmodes/xref.el (xref--temporary-buffers)
10576         (xref--current)
10577         (xref--inhibit-mark-current)
10578         (xref--mark-selected): Remove.  Remove all references.
10579         (xref--show-xrefs): Do not construct the
10580         list of the temporary buffers, nor pass it along.
10582 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
10584         Rename "search path" to "library roots"
10586         * lisp/emacs-lisp/cl-seq.el (cl-set-difference): Retain the order
10587         of the elements from CL-LIST1.
10589         * test/automated/cl-lib-tests.el (cl-lib-test-set-functions):
10590         Update WRT to the above change.
10592         * lisp/progmodes/project.el (project-search-path-function): Rename
10593         to project-library-roots-function, update the documentation and
10594         references.
10595         (project-search-path): Likewise, to project-library-roots.
10596         (project-roots): Clarify documentation.
10597         (project-vc-search-path): Likewise, to project-vc-library-roots.
10598         (project-library-roots): In addition to the renames, thread the
10599         results through file-name-as-directory.
10600         (project-prune-directories): Accept a variable number of
10601         arguments.  Rename to project-combine-directories.
10602         (project-subtract-directories): New function.
10604         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
10605         Append project-roots and project-library-roots together.
10607         * lisp/progmodes/etags.el (etags--xref-find-references): Ditto.
10609 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
10611         Prefer xpalloc to doubling buffers by hand
10613         * src/lread.c (grow_read_buffer): New function, which uses xpalloc.
10614         (read1): Use it for simplicity.
10615         * src/macros.c (store_kbd_macro_char):
10616         * src/minibuf.c (read_minibuf_noninteractive):
10617         * src/term.c (encode_terminal_code):
10618         * src/xrdb.c (magic_db):
10619         Prefer xpalloc to growing buffers by hand.
10620         This doesn’t fix any bugs, but simplifies the code a bit.
10622 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
10624         Merge from gnulib
10626         This incorporates:
10627         2015-11-05 timespec-sub: fix overflow bug; add tests
10628         2015-11-04 intprops: revise _WRAPV macros, revert _OVERFLOW
10629         2015-11-03 intprops: add parentheses
10630         * lib/intprops.h, lib/timespec-add.c, lib/timespec-sub.c:
10631         Copy from gnulib.
10633 2015-11-07  David Reitter  <david.reitter@gmail.com>
10635         Provide NS notification objects where required to eliminate warnings
10637         * src/nsterm.m (windowDidResize:, toggleFullScreen:):
10638         Call notification functions with notification objects
10639         as per delegate APIs.
10641 2015-11-07  Noam Postavsky  <npostavs@users.sourceforge.net>
10643         Add test for bug #21824
10645         * test/automated/buffer-tests.el: New file.
10646         (overlay-modification-hooks-message-other-buf): New test.
10648 2015-11-07  Kelvin White  <kwhite@gnu.org>
10650         * lisp/erc/erc-pcomplete.el (pcomplete-erc-nicks): Fix bug#18771.
10652 2015-11-07  David Reitter  <david.reitter@gmail.com>
10654         Ignore fullscreen exit notifications on NS when frame is dead
10656         * src/nsterm.m (windowDidResize:, windowWillExitFullScreen:)
10657         (windowDidExitFullScreen:): Return if frame is dead.
10658         These functions may be called when a fullscreen frame
10659         is closed; they are called before, not after.
10661         May address Bug#21428.
10663 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
10665         Speed up lookup in redisplay--variables
10667         * lisp/frame.el (redisplay--variables): Make it a hash-table.
10669         * src/xdisp.c (maybe_set_redisplay): Access redisplay--variables
10670         as a hash-table.  This speeds up this function by an order of
10671         magnitude: where previously a setq was slowed down by 100% by
10672         introducing the maybe_set_redisplay test, it is now only 5%
10673         slower.
10674         (syms_of_xdisp) <redisplay--variables>: Doc fix.
10676 2015-11-07  Artur Malabarba  <bruce.connor.am@gmail.com>
10678         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Fix a bug.
10680         The defsubst was being created as:
10681             (cl-defsubst name (args) ("DOC") ...)
10683         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
10684         Add test.
10686 2015-11-07  Mihai Olteanu  <mihai_olteanu@fastmail.fm>  (tiny change)
10688         Update doc string of hexl-mode
10690         * lisp/hexl.el (hexl-mode): Doc fix.  (Bug#21800)
10692 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
10694         Fix error in copy-abbrev-table
10696         * lisp/abbrev.el (define-abbrev): Don't erase the :abbrev-table-modiff
10697         property of the abbrev-table.  (Bug#21828)
10699         * test/automated/abbrev-tests.el: New file.
10701 2015-11-07  Michael Albinus  <michael.albinus@gmx.de>
10703         Add test to auto-revert-tests.el for Bug#21841
10705         * test/automated/auto-revert-tests.el
10706         (auto-revert-test01-auto-revert-several-files): New test.
10707         (auto-revert-test02-auto-revert-tail-mode)
10708         (auto-revert-test03-auto-revert-mode-dired): Rename them.
10710 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
10712         * doc/lispref/windows.texi (Coordinates and Windows): Fix typo.
10714 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
10716         In x_consider_frame_title don't set title of tooltip frames
10718         * src/xdisp.c (x_consider_frame_title): Return immediately for
10719         tooltip frames to avoid displaying empty tooltips.
10721 2015-11-06  Anders Lindgren  <andlind@gmail.com>
10723         Fixed NextStep fullscreen problem (bug#21770).
10725         * src/nsterm.m (ns_constrain_all_frames): Don't constrain
10726         fullscreen frames.
10728 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
10730         Ensure redisplay after evaluation
10732         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp):
10733         Revert last change.
10734         * lisp/frame.el (redisplay--variables): Populate the
10735         redisplay--variables list.
10736         * src/xdisp.c (maybe_set_redisplay): New function.
10737         (syms_of_xdisp) <redisplay--variables>: New variable.
10738         * src/window.h (maybe_set_redisplay): Declare prototype.
10739         * src/data.c (set_internal): Call maybe_set_redisplay.  (Bug#21835)
10741 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
10743         * test/automated/subr-tests.el (subr-test-when): Fix again.
10745 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
10747         Don't invoke overlay modification hooks in wrong buffer
10749         * src/buffer.c (report_overlay_modification): When called with
10750         AFTER non-zero, don't invoke overlay modification hooks if the
10751         buffer recorded in last_overlay_modification_hooks is different
10752         from the current buffer.  (Bug#21824)
10754 2015-11-06  Juanma Barranquero  <lekktu@gmail.com>
10756         * admin/notes/repo: Fix a few obsolete references to Bazaar.
10758 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
10760         * test/automated/subr-tests.el (subr-test-when): Fix test.
10762 2015-11-06  Martin Rudalics  <rudalics@gmx.at>
10764         Avoid division by zero crash observed by Yuan MEI
10766         See http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00194.html.
10768         * src/dispnew.c (required_matrix_height, required_matrix_width):
10769         Avoid division by zero.
10770         * src/xterm.c (x_term_init): Init dpyinfo->smallest_font_height and
10771         dpyinfo->smallest_char_width to 1.
10773 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
10775         Ensure redisplay after "C-x C-e"
10777         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp): Make sure
10778         redisplay happens to account for any side effects of the evaluated
10779         sexp.  (Bug#21835)
10781 2015-11-06  Michael Albinus  <michael.albinus@gmx.de>
10783         Skip some file notification tests for cygwin
10785         * test/automated/file-notify-tests.el (file-notify--test-with-events):
10786         Remove argument TIMEOUT.  Adapt all callees.
10787         (file-notify-test02-events, file-notify-test04-file-validity):
10788         Skip for cygwin.  (Bug#21804)
10790 2015-11-05  Stephen Leake  <stephen_leake@stephe-leake.org>
10792         * lisp/progmodes/xref.el: Require semantic/symref during compilation.
10794 2015-11-05  Daiki Ueno  <ueno@gnu.org>
10796         Suppress redundant Pinentry startup messages
10798         * lisp/net/pinentry.el (pinentry-start): Add optional QUIET argument.
10799         * lisp/epg.el: Declare `pinentry-start'.
10800         (epg--start): Call `pinentry-start' with QUIET argument set.
10802 2015-11-05  Xue Fuqiao  <xfq.free@gmail.com>
10804         * doc/emacs/ack.texi (Acknowledgments): Updates.
10806 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
10808         * test/automated/elisp-mode-tests.el: Silence some run-time warnings.
10809         (xref-elisp-deftest): Bind `find-file-suppress-same-file-warnings' to t.
10811 2015-11-05  Tassilo Horn  <tsdh@gnu.org>
10813         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
10814         Add prettification support for \times.
10816 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
10818         * test/automated/process-tests.el: Skip tests when bash is unavailable.
10819         (process-test-sentinel-accept-process-output)
10820         (process-test-sentinel-sit-for): skip-unless bash executable found.
10822 2015-11-05  Eli Zaretskii  <eliz@gnu.org>
10824         Add test for bug #21831
10826         * test/automated/process-tests.el
10827         (start-process-should-not-modify-arguments): New test.  (Bug#21831)
10828         Suggested by Nicolas Richard <youngfrog@members.fsf.org>
10830 2015-11-04  Stefan Monnier  <monnier@iro.umontreal.ca>
10832         * lisp/emacs-lisp/eieio-compat.el: Typo caught by tests.
10834         (eieio--generic-static-object-generalizer): Fix typo.
10835         * test/automated/eieio-tests.el: Byte-compile it again.  It looks
10836         like the underlying cause of bug#17852 was fixed in the mean time.
10838 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
10840         Revert "* lisp/subr.el (when): Use `macroexp-progn'"
10842         This reverts commit 8e843831eaf271801836b7a3e4dd3b4fb0bb72b8.
10843         It breaks bootstrapping (duh).
10845 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
10847         * lisp/files.el (report-errors): Obsolete.
10849         (normal-mode, hack-local-variables, dir-locals-find-file):
10850         Use `with-demoted-errors' instead.
10852 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
10854         * lisp/subr.el (when): Use `macroexp-progn'.
10856         * test/automated/subr-tests.el (subr-test-when): New test.
10858 2015-11-04  Juanma Barranquero  <lekktu@gmail.com>
10860         * lisp/progmodes/xref.el: Doc fixes.
10861         (xref-make-file-location, xref-make-buffer-location, xref-make)
10862         (xref-make-bogus-location, xref-make-match): Add cross-references.
10863         (xref--insert-xrefs): Fix typo in docstring.
10865 2015-11-04  Anders Lindgren  <andlind@gmail.com>
10867         Render fringe bitmaps correctly on NextStep (bug#21301)
10869         The fringe bitmaps were inverted, the background was not transparent,
10870         the image data was horizontally mirrored, and periodic fringe bitmaps
10871         were not supported.
10873         * src/nsimage.m ([EmacsImage initFromXBM:width:height:fg:bg:]):
10874         When both background and foreground colors are 0, set the background
10875         alpha channel to 0 (making the background transparent).  When
10876         copying the image data, do this from the most significant bit
10877         (leftmost) to the least (rightmost), to avoid mirroring.
10878         * src/nsterm.m (ns_draw_fringe_bitmap): Don't invert the image bits.
10879         Add support for periodic images (e.g. the empty line indicator).
10881 2015-11-03  Michael Heerdegen  <michael_heerdegen@web.de>
10883         * lisp/emacs-lisp/pcase.el (pcase): Tweak docstring.
10885 2015-11-03  Nicolas Petton  <nicolas@petton.fr>
10887         * admin/MAINTAINERS: Add seq-tests.el, map-tests.el, and thunk-tests.el.
10889         * admin/MAINTAINERS: Add thunk.el.
10891 2015-11-03  Jay Belanger  <jay.p.belanger@gmail.com>
10893         * lisp/calc/calc.el (calc-bug-address): Change maintainer address.
10895 2015-11-03  Michael Albinus  <michael.albinus@gmx.de>
10897         Fix a stupid error in gfilenotify.c
10899         * src/gfilenotify.c (dir_monitor_callback): Cancel monitor only,
10900         if we've got a `deleted' signal AND the file name is the watched one.
10902 2015-11-03  Stephen Leake  <stephen_leake@stephe-leake.org>
10904         Fix Bug#21816; case insensitive file system in elisp-mode-tests.el
10906         * test/automated/elisp-mode-tests.el (xref-elisp-test-run):
10907         Use case-insensitive string compare for file names.
10908         (emacs-test-dir): Add 'downcase' to cause case differences (at
10909         least on my system).
10911 2015-11-02  Juanma Barranquero  <lekktu@gmail.com>
10913         flymake-tests.el (warning-predicate-rx-gcc): Fix check
10915         * test/automated/flymake-tests.el (warning-predicate-rx-gcc):
10916         Also check that "make" is available, not just "gcc".
10918 2015-11-02  Ken Brown  <kbrown@cornell.edu>
10920         Document behavior of collation on Cygwin
10922         * test/automated/fns-tests.el (fns-tests-collate-sort): Mark as
10923         expected failure on Cygwin.
10924         * doc/lispref/strings.texi (Text Comparison): Document that
10925         punctuation and whitespace are not ignored for sorting on Cygwin.
10927 2015-11-02  Dani Moncayo  <dmoncayo@gmail.com>
10929         * build-aux/msys-to-w32: Prevent double slashes in w32 path list.
10931 2015-11-01  Glenn Morris  <rgm@gnu.org>
10933         * lisp/progmodes/f90.el (f90-no-block-limit): Add associate.
10934         (Bug#21794)
10935         * test/automated/f90.el (f90-test-bug21794): New test.
10937 2015-11-01  Juanma Barranquero  <lekktu@gmail.com>
10939         Fix incompatibility with TCC in test for bug#18745
10941         * test/automated/process-tests.el (process-test-quoted-batfile):
10942         Remove spaces unrelated to the bug being tested.
10944 2015-11-01  Michael Albinus  <michael.albinus@gmx.de>
10946         Improve completion in tramp-gvfs.el
10948         * lisp/net/tramp-gvfs.el (tramp-zeroconf-parse-device-names):
10949         Rename from `tramp-zeroconf-parse-service-device-names'.
10950         (tramp-zeroconf-parse-webdav-device-names): Remove.  Code merged
10951         with `tramp-zeroconf-parse-device-names'.
10952         (tramp-gvfs-parse-device-names): New defun.
10953         (top): Use it when `tramp-zeroconf-parse-device-names' is not
10954         applicable.
10956         * lisp/net/tramp.el (tramp-set-completion-function): The argument
10957         could also be a zeroconf service type.
10959 2015-10-31  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
10961         * lisp/net/ntlm.el: Change version to 2.0.0.
10963 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
10965         Fix bug#21762
10966         * lisp/progmodes/python.el (python-syntax-closing-paren-p): Check with
10967         `eql' instead of `=' to accommodate the case that (syntax-after (point))
10968         returns nil.
10969         * test/automated/python-tests.el (python-indent-inside-paren-7):
10970         New test.
10972 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
10974         * test/automated/python-tests.el: Avoid warnings.
10975         (python-tests-with-temp-buffer, python-tests-with-temp-file):
10976         Bind `python-indent-guess-indent-offset' to nil.
10978 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
10980         * src/alloc.c: Silence compiler warnings.
10981         (pointers_fit_in_lispobj_p, mmap_lisp_allowed_p): #ifdef DOUG_LEA_MALLOC.
10983 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
10985         * etc/NEWS: Fix js-jsx-mode entry punctuation.
10987 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
10989         Add JSX indentation via js-jsx-mode  (Bug#21799)
10991         * lisp/progmodes/js.el: Add JSX indentation support.
10992         (js--jsx-end-tag-re)
10993         (js--jsx-after-tag-re): New variables.
10994         (js--jsx-find-before-tag)
10995         (js--jsx-indented-element-p)
10996         (js--as-sgml)
10997         (js--expression-in-sgml-indent-line)
10998         (js-jsx-indent-line)
10999         (js-jsx-mode): New functions.
11000         * test/indent/js-jsx.js: New file.
11001         * etc/NEWS: Add information about js-jsx-mode.
11003 2015-10-31  Michael Albinus  <michael.albinus@gmx.de>
11005         Minor fix in filenotify.el
11007         * lisp/filenotify.el (file-notify--event-file-name)
11008         (file-notify--event-file1-name): Normalize result with
11009         `directory-file-name'.
11011 2015-10-31  Eli Zaretskii  <eliz@gnu.org>
11013         Avoid errors in redisplay--pre-redisplay-functions
11015         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Don't
11016         use 'bobp', instead compare window-point with 1.  (Bug#21730)
11018 2015-10-30  Paul Eggert  <eggert@cs.ucla.edu>
11020         Merge from gnulib
11022         This incorporates:
11023         2015-10-30 intprops: add WRAPV and const flavors for GCC 5
11024         2015-10-25 stdalign: port to Sun C 5.9
11025         * doc/misc/texinfo.tex, lib/intprops.h, lib/stdalign.in.h:
11026         Copy from gnulib.
11028 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
11030         * src/w32proc.c (_NLSCMPERROR): Fix a typo in the name of this macro.
11031         (w32_compare_strings): Adjust for the correction.
11033 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
11035         * test/automated/vc-tests.el (vc-test--state)
11036         (vc-test--working-revision, vc-test--checkout-model):
11037         Add result messages.
11039 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
11041         * test/automated/faces-tests.el: Add another test
11043 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
11045         * lisp/faces.el (faces--attribute-at-point): Fix bug
11046         introduced by previous commit.
11048 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
11050         * test/automated/faces-tests.el: New file.
11052 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
11054         * lisp/faces.el: Refactor common code and fix a bug.
11055         (faces--attribute-at-point): New function.  Fix a bug when the
11056         face at point is a list of faces and the desired attribute is not
11057         on the first one.
11058         (foreground-color-at-point, background-color-at-point): Use it.
11060 2015-10-30  Przemysław Wojnowski  <esperanto@cumego.com>
11062         * etc/tutorials/TUTORIAL.translators: Fix PL names.
11064 2015-10-30  Juanma Barranquero  <lekktu@gmail.com>
11066         * lisp/character-fold.el: Provide `character-fold'.
11068 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
11070         * etc/themes/tsdh-dark-theme.el (tsdh-dark): Add more faces
11071         for Gnus and ivy.
11073 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
11075         Some minor fixes for tramp-gvfs.el
11077         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
11078         An attribute returned by gvfs-info might be empty.  In case of
11079         undetermined uid or gid, return "UNKNOWN" or -1, respectively.
11080         (tramp-zeroconf-parse-service-device-names): New defun.
11081         Derived from `tramp-zeroconf-parse-workstation-device-names'.
11082         (top): Add completion functions for "afp" and "smb" methods.
11084 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
11086         * test/automated/character-fold-tests.el: New file
11088 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
11090         * test/automated/sort-tests.el: New file.
11091         Tests in this file are randomly generated and then tested with
11092         regular, reverse, and case-fold sorting.
11094 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
11096         Describe known problems with pinning Emacs to taskbar
11098         * etc/PROBLEMS: Describe the problem with pinning Emacs to taskbar
11099         on Windows 10.  For the details, see the discussion starting at
11100         http://lists.gnu.org/archive/html/help-emacs-windows/2015-09/msg00000.html.
11102 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
11104         * lisp/isearch.el: Avoid an error that blocks isearch.
11105         (isearch-update): Don't error if `isearch--current-buffer' has
11106         been killed.
11108         * test/automated/isearch-tests.el (isearch--test-update):
11109         New file.
11111 2015-10-30  Phil Sainty  <psainty@orcon.net.nz>
11113         Fix documentation of 'beginning/end-of-buffer'
11115         * lisp/simple.el (beginning-of-buffer, end-of-buffer): Clarify
11116         conditions under which the mark will be pushed at the previous
11117         position.  (Bug#21748)
11119 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
11121         Add RefTeX feature idea: editing RefTeX TOC buffers
11123         More face defs for ivy, swiper, ace-window, eshell
11125 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
11127         * lisp/gnus/auth-source.el: Silence lexical-binding warnings.
11128         (auth-source-netrc-use-gpg-tokens): Simplify (symbol-value 'VAR) to
11129         just VAR.
11130         (auth-source-backend-parse): Use make-instance.
11131         (auth-source-search): Remove unused key args.
11132         Remove unused vars `accessor-key' and `backend'.  Avoid `eval'.
11133         (auth-source-search-backends): Use slot names rather than their initarg.
11134         (auth-source-netrc-create):
11135         (auth-source-delete):
11136         (auth-source-secrets-create, auth-source-plstore-search)
11137         (auth-source-macos-keychain-create, auth-source-macos-keychain-search)
11138         (auth-source-plstore-create, auth-source-netrc-search)
11139         (auth-source-netrc-parse): Remove unused key args.
11140         (auth-source-forget+): Simplify the arglist.
11141         (auth-source-macos-keychain-search-items)
11142         (auth-source-token-passphrase-callback-function): Mark unused args.
11143         (auth-source-epa-extract-gpg-token): Remove unused var `plain'.
11144         (pp-escape-newlines): Declare.
11145         (auto-source--symbol-keyword): New function.
11146         (auth-source-plstore-create, auth-source-netrc-create)
11147         (auth-source-netrc-normalize): Use it.
11148         (auth-source-netrc-search): Don't pass :delete to
11149         auth-source-netrc-parse since it doesn't use it.
11150         (auth-source-plstore-create, auth-source-netrc-create): Use plist-get
11151         symbol-value to index in keyword args.
11152         (auth-source-macos-keychain-result-append): Avoid setq.
11153         (auth-source-netrc-create): Remove unused vars `file' and `add'.
11154         (auth-source-user-or-password): Remove unused var `cname'.
11156 2015-10-29  Juri Linkov  <juri@linkov.net>
11158         * lisp/dired.el (dired-unmark-all-files-query): Declare.
11159         (dired-unmark-all-files): Let-bind it and use instead of ‘query’.
11160         (Bug#21746)
11162 2015-10-29  Juri Linkov  <juri@linkov.net>
11164         * lisp/ielm.el (ielm-indent-line): Use non-nil arg of comint-bol
11165         to go to the beginning of text line instead of command line.
11166         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02360.html
11168 2015-10-29  Eli Zaretskii  <eliz@gnu.org>
11170         Fix encoding of saving *Help* buffers
11172         * lisp/help-fns.el (describe-function-1): If we use curved quotes,
11173         set help buffer's buffer-file-coding-system to UTF-8.  (Bug#21780)
11175 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
11177         * lisp/emacs-lisp/cl-generic.el: Add (major-mode MODE) context.
11178         (cl--generic-derived-specializers): New function.
11179         (cl--generic-derived-generalizer): New generalizer.
11180         (cl-generic-generalizers): New specializer (derived-mode MODE).
11181         (cl--generic-split-args): Apply the rewriter, if any.
11182         (cl-generic-define-context-rewriter): New macro.
11183         (major-mode): Use it to define a new context-rewriter, so we can write
11184         `(major-mode MODE)' instead of `(major-mode (derived-mode MODE))'.
11186         * lisp/frame.el (window-system): New context-rewriter so we can write
11187         `(window-system VAL)' instead of (window-system (eql VAL)).
11188         (cl--generic-split-args): Apply the rewriter, if any.
11189         (frame-creation-function): Use the new syntax.
11191         * lisp/term/x-win.el (window-system-initialization)
11192         (handle-args-function, frame-creation-function)
11193         (gui-backend-set-selection, gui-backend-selection-owner-p)
11194         (gui-backend-selection-exists-p, gui-backend-get-selection):
11195         * lisp/term/w32-win.el (window-system-initialization)
11196         (handle-args-function, frame-creation-function)
11197         (gui-backend-set-selection, gui-backend-get-selection)
11198         (gui-backend-selection-owner-p, gui-backend-selection-exists-p):
11199         * lisp/term/pc-win.el (gui-backend-get-selection)
11200         (gui-backend-selection-exists-p, gui-backend-selection-owner-p)
11201         (gui-backend-set-selection, window-system-initialization)
11202         (frame-creation-function, handle-args-function):
11203         * lisp/term/ns-win.el (window-system-initialization)
11204         (handle-args-function, frame-creation-function)
11205         (gui-backend-set-selection, gui-backend-selection-exists-p)
11206         (gui-backend-get-selection):
11207         * lisp/startup.el (handle-args-function):
11208         * lisp/term/xterm.el (gui-backend-get-selection)
11209         (gui-backend-set-selection): Use the new syntax.
11211 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
11213         * test/indent/css-mode.css: Add tests for url(...) syntax.
11215 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
11217         * lisp/emacs-lisp/smie.el: Use `declare' for `pure'.
11218         (smie-precs->prec2, smie-merge-prec2s, smie-bnf->prec2)
11219         (smie-prec2->grammar): Use `declare'.
11221 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
11223         * lisp/emacs-lisp/cl-generic.el: Accommodate future changes.
11224         (cl--generic-generalizer): Add `name' field.
11225         (cl-generic-make-generalizer): Add corresponding `name' argument.
11226         (cl-generic-define-generalizer): New macro.
11227         (cl--generic-head-generalizer, cl--generic-eql-generalizer)
11228         (cl--generic-struct-generalizer, cl--generic-typeof-generalizer)
11229         (cl--generic-t-generalizer): Use it.
11230         (cl-generic-ensure-function): Add `noerror' argument.
11231         (cl-generic-define): Use it so we don't follow aliases.
11232         (cl-generic-define-method): Preserve pre-existing ordering of methods.
11233         (cl--generic-arg-specializer): New function.
11234         (cl--generic-cache-miss): Use it.
11235         (cl-generic-generalizers): Only fset a temporary definition
11236         during bootstrap.
11237         (cl--generic-struct-tag, cl--generic-struct-specializers):
11238         Allow extra arguments.
11240         * lisp/emacs-lisp/eieio-compat.el
11241         (eieio--generic-static-symbol-generalizer)
11242         (eieio--generic-static-object-generalizer):
11243         Use cl-generic-define-generalizer.
11244         (eieio--generic-static-symbol-specializers): Allow extra arguments.
11246         * lisp/emacs-lisp/eieio-core.el (eieio--generic-generalizer)
11247         (eieio--generic-subclass-generalizer):
11248         Use cl-generic-define-generalizer.
11249         (eieio--generic-subclass-specializers): Allow extra arguments.
11251 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
11253         * lisp/emacs-lisp/bytecomp.el (compile-defun): Add defvars in scope.
11255 2015-10-29  Michael Albinus  <michael.albinus@gmx.de>
11257         Add "afp" method to Tramp
11259         * doc/misc/tramp.texi (GVFS based methods): Describe `afp' method.
11261         * lisp/net/tramp-gvfs.el (tramp-gvfs-methods): Add "afp" method.
11262         (tramp-gvfs-handle-expand-file-name)
11263         (tramp-gvfs-handler-mounted-unmounted)
11264         (tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec)
11265         (tramp-gvfs-maybe-open-connection): Support also "afp".
11266         (tramp-gvfs-handle-file-attributes): Handle the case of empty
11267         "owner::user" and "owner::group" entries.
11269 2015-10-29  Andy Moreton  <andrewjmoreton@gmail.com>
11271         Handle negative coordinates in ‘x_calc_absolute_position’
11273         * src/w32term.c (x_calc_absolute_position): Find display origin to
11274         allow for negative coordinates.
11276 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
11278         (internal--syntax-propertize): Save match-data here (bug#21766)
11280         * lisp/emacs-lisp/syntax.el (internal--syntax-propertize): Save match-data.
11281         * lisp/simple.el (delete-trailing-whitespace): Undo last change.
11283 2015-10-28  Dmitry Gutov  <dgutov@yandex.ru>
11285         Don't require default-directory to end with a slash
11287         * doc/lispref/files.texi (Magic File Names): Document the change
11288         in unhandled-file-name-directory.
11290         * lisp/url/url-handlers.el
11291         (url-handler-unhandled-file-name-directory): Update accordingly.
11293         * src/buffer.c (default-directory): Update the docsting.
11295         * src/fileio.c (unhandled-file-name-directory): Default to calling
11296         `file-name-as-directory'
11297         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02294.html).
11299 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
11301         * lisp/isearch.el: Delete some outdated comments.
11303 2015-10-28  Vibhav Pant  <vibhavp@gmail.com>
11305         Fix eshell/clear not working if the output has a small line count
11307         * lisp/eshell/esh-mode.el (eshell/clear): Use (window-size) as the
11308         number of newlines to be inserted. This fixes the issue where
11309         eshell/clear wouldn't work if the prompt was not at the bottom of the
11310         window, and the output wasn't too long.
11312 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
11314         * lisp/files.el (write-file): Use vc-refresh-state.
11316         * lisp/autorevert.el (auto-revert-handler): Use vc-refresh-state.
11318         * lisp/vc/pcvs.el (cvs-revert-if-needed): Use vc-refresh-state.
11320 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
11322         * lisp/emacs-lisp/macroexp.el: Tweak macroexp-if optimizations.
11323         (macroexp-unprogn): Make sure we never return an empty list.
11324         (macroexp-if): Remove unused (and unsafe) optimization.
11325         Optimize (if A T (if B T E)) into (if (or A B) T E) instead, which does
11326         occur occasionally.
11328 2015-10-28  Juanma Barranquero  <lekktu@gmail.com>
11330         Fix bug#21766 and add test
11331         * lisp/simple.el (delete-trailing-whitespace): Save match data when
11332         calling `skip-syntax-backward'.
11333         * test/automated/simple-test.el (simple-delete-trailing-whitespace):
11334         New test.
11336 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
11338         * doc/lispref/sequences.texi (Sequence Functions): Fix typo.
11340 2015-10-28  Paul Eggert  <eggert@cs.ucla.edu>
11342         * src/dispnew.c (init_display): Simplify overflow checking.
11344 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
11346         * lisp/character-fold.el (character-fold-to-regexp): Fix case
11347         where string ends in space
11349 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
11351         * lisp/emacs-lisp/seq.el (seq-mapn): New function.
11353         * doc/lispref/sequences.texi (Sequence Functions): Document seq-mapn.
11355 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
11357         * lisp/character-fold.el: Make compatible with lax-whitespace.
11358         (character-fold-to-regexp): Rework internals to play nice with
11359         lax-whitespacing.
11361         When the user types a space, we want to match the table entry for
11362         ?\s, which is generally a regexp like "[ ...]".  However, the
11363         `search-spaces-regexp' variable doesn't "see" spaces inside these
11364         regexp constructs, so we need to use "\\( \\|[ ...]\\)" instead (to
11365         manually expose a space).
11367         Furthermore, the lax search engine acts on a bunch of spaces, not
11368         on individual spaces, so if the string contains sequential spaces
11369         like "  ", we need to keep them grouped together like this:
11370         "\\(  \\|[ ...][ ...]\\)".
11372 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
11374         * lisp/isearch.el: Refactor momentary messages.
11375         (isearch--momentary-message): New function.
11376         (isearch-toggle-lax-whitespace, isearch-toggle-case-fold)
11377         (isearch-toggle-invisible): Use it.
11379 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
11381         * lisp/isearch.el: Define all toggles with `isearch-define-mode-toggle'.
11382         (isearch-define-mode-toggle): New macro.
11383         (isearch-toggle-invisible): Rename to
11384         `isearch-define-mode-toggle'.
11385         (isearch-toggle-case-fold, isearch-toggle-invisible)
11386         (isearch-toggle-regexp, isearch-toggle-lax-whitespace): Define
11387         with `isearch-define-mode-toggle'.
11389 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
11391         Avoid using `add-to-list' on a let-local var in tramp-smb.el
11393         * lisp/net/tramp-compat.el (tramp-compat-delete-dups): New defun.
11394         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files): Use it.
11396 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
11398         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files):
11399         Revert 692bce5b9eccfae19ae2a5a23a9ccd8d6bf86076, `delete-dups'
11400         does not exist in XEmacs 21.4.
11402 2015-10-28  Anders Lindgren  <andlind@gmail.com>
11404         Fixed OS X startup crash
11406         Input events started to arrive before ns_term_init() was finished.
11407         Solved by blocking input.  This also seems to correct the "You
11408         can't open the application "Emacs" because it may be damaged or
11409         incomplete" error issued when double-clicking on the Emacs
11410         application.
11412         * src/nsterm.m (ns_constrain_all_frames, ns_init_term): Block input.
11413         * src/nsterm.m (ns_send_appdefined, EmacsApp): Trace output.
11415 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
11417         * src/process.c (Fget_buffer_process): Improve docstring.
11418         Document the fact that it doesn't return dead processes.
11420 2015-10-28  Anders Lindgren  <andlind@gmail.com>
11422         Fix incorrect NextStep tool-bar-mode -- wrong number of rows in frame.
11424         * src/nsterm.h (struct ns_output): New flag, in_animation.
11425         * src/nsfns.m (Fx_create_frame): Initialize in_animation flag.
11426         * src/nsmenu.m (free_frame_tool_bar, update_frame_tool_bar): Set
11427         in_animation flag around call to "setVisible". Set new tool bar
11428         height before call to setVisible.
11429         * src/nsterm.m (x_set_window_size): Don't call [view setRow:
11430         andColumns:] as this fools the subsequent call to updateFrameSize
11431         from performing the real resize.
11432         (windowDidResize): Don't update anything when in_animation is
11433         non-zero.
11435         Trace output.
11437         * src/nsmenu.m (free_frame_tool_bar, update_frame_tool_bar)
11438         (EmacsToolbar):
11439         * src/nsterm.m (x_set_window_size, updateFrameSize)
11440         ([EmacsView setRows: andColumns:])
11442 2015-10-28  Nicolas Petton  <nicolas@petton.fr>
11444         * lisp/emacs-lisp/thunk.el (thunk-delay): Fix the macro.
11446 2015-10-28  Tassilo Horn  <tsdh@gnu.org>
11448         Prettify TeX macros not ending in a word char
11450         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
11451         Prettify macros which don't end in a word character.
11453 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
11455         Pipe Hg commit descriptions through 'tabindent'
11457         * lisp/vc/vc-hg.el (vc-hg-log-format): Pipe commit description
11458         through 'tabindent'.
11459         (vc-hg-log-view-mode): Set tab-width to 2 locally.
11460         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02259.html)
11462 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
11464         * lisp/net/tramp-smb.el: Avoid using `add-to-list' on a let-local var.
11465         (tramp-smb-handle-directory-files): Use `delete-dups'.
11467         * lisp/net/tramp.el (auto-save-file-name-transforms): Declare.
11469 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
11471         * lisp/international/ccl.el: Use lexical-binding.
11472         (ccl-compile-if): Remove unused var `false-ic'.
11473         (ccl-compile-write-repeat): Remove unused var `i'.
11474         (ccl-compile-map-single): Remove unused var `id'.
11475         (ccl-dump, ccl-dump-binary): Use explicit let-binding to bind the
11476         dynamic var `ccl-code'.
11478 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
11480         * lisp/json.el (json-new-object): Optimize trivial `list' call.
11482 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
11484         * lisp/help.el: Fix bug with incorrect arglist string.
11485         (help-add-fundoc-usage): Don't mistake a mis-formatted string
11486         for a list.
11488 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
11490         * lisp/gnus/gnus-topic.el: Silence some warnings.
11491         (gnus-topic-prepare-topic): Remove unused var `topic'.
11492         (gnus-topic-remove-topic): Mark unused arg `hide'.
11493         (gnus-tmp-header): Declare.
11494         (gnus-topic-goto-missing-group): Remove unused var `entry'.
11495         (gnus-topic-unmark-topic): Mark unused arg `dummy'.
11496         (gnus-topic-copy-matching): Mark unused arg `copyp'.
11497         Move initialization of `topic' into its declaration.
11499 2015-10-27  Stephen Leake  <stephen_leake@stephe-leake.org>
11501         Minor CEDET fixes
11503         * lisp/cedet/cedet-global.el (cedet-gnu-global-gtags-call):
11504         Handle warnings from gtags about invalid options.
11505         (cedet-gnu-global-create/update-database): Do incremental update
11506         properly.
11508         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
11509         Get monotone root right.
11511 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
11513         Fall back to polling in autorevert when needed
11515         * lisp/autorevert.el (auto-revert-notify-handler): When a
11516         `stopped' event arrives from file notification, fall back to polling.
11518         * test/automated/file-notify-tests.el
11519         (file-notify-test03-autorevert): Extend test for polling when file
11520         notification ceases to work.
11522 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
11524         Show full commit messages in 'hg log' when appropriate
11526         * lisp/vc/vc-hg.el (vc-hg-log-format): New variable.
11527         (vc-hg-print-log, vc-hg-expanded-log-entry): Use it.
11528         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02191.html)
11530 2015-10-27  Nicolas Petton  <nicolas@petton.fr>
11532         Use a plain SVG file for the icon
11534         * etc/images/icons/hicolor/scalable/apps/emacs.svg: Use a plain SVG
11535           format instead of the Inkscape SVG format.
11537 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
11539         Fix subtle bug in auto-revert-tests.el
11541         * test/automated/auto-revert-tests.el
11542         (auto-revert-test02-auto-revert-mode-dired): Narrow *Messages*
11543         buffer where it belongs to.  (Bug#21668)
11545 2015-10-26  Nicolas Petton  <nicolas@petton.fr>
11547         * lisp/emacs-lisp/map.el: Better docstrings.
11549         * lisp/emacs-lisp/seq.el: Better docstrings.
11551         * lisp/emacs-lisp/seq.el: Rename all seq arguments to sequence.
11553 2015-10-26  Phillip Lord  <phillip.lord@russet.org.uk>
11555         * lisp/emacs-lisp/ert.el: Print results without newline escaping.
11557 2015-10-26  Stephen Leake  <stephen_leake@stephe-leake.org>
11559         Clarify that load-path contents should be directory file names
11561         * doc/lispref/files.texi (Directory Names): Define and use "directory
11562         file name".  Recommend `expand-file-name'.
11564         * src/lread.c (load-path): Fix doc string; elements are directory file
11565         names.
11567 2015-10-26  Eli Zaretskii  <eliz@gnu.org>
11569         Fix simple-test.el test
11571         * test/automated/simple-test.el (simple-test--dummy-buffer):
11572         Make sure indentation doesn't use TABs, otherwise the 6th test
11573         might fail.
11575 2015-10-26  Mark Oteiza  <mvoteiza@udel.edu>
11577         * lisp/net/eww.el (eww-bookmark-prepare): Use truncate-string-to-width.
11578         `substring' does not account for full width characters.
11580 2015-10-26  Michael Albinus  <michael.albinus@gmx.de>
11582         Further work on `stopped' events in filenotify.el
11584         * doc/lispref/os.texi (File Notifications): Rework examples.
11586         * lisp/filenotify.el (file-notify--rm-descriptor): Optional parameter.
11587         (file-notify--rm-descriptor, file-notify-callback): Improve check
11588         for sending `stopped' event.
11589         (file-notify-add-watch): Check for more events for `inotify'.
11591         * test/automated/file-notify-tests.el
11592         (file-notify--test-expected-events): New defvar.
11593         (file-notify--test-with-events): Use it.
11594         (file-notify--test-cleanup): Make it more robust when deleting
11595         directories.
11596         (file-notify--test-event-test): Check also for watched directories.
11597         (file-notify--test-event-handler): Suppress temporary .#files.
11598         (file-notify-test02-events, file-notify-test04-file-validity):
11599         Rework `stopped' events.
11600         (file-notify-test05-dir-validity): Wait for events when appropriate.
11602 2015-10-26  Artur Malabarba  <bruce.connor.am@gmail.com>
11604         * src/keyboard.c (post-command-hook): Shorten docstring.
11606 2015-10-26  Tassilo Horn  <tsdh@gnu.org>
11608         Fix infinite loop in sh-script's SMIE code
11610         * lisp/progmodes/sh-script.el (sh-smie-sh-forward-token): Fix infinite
11611         loop (bug#21747).
11613 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
11615         * lisp/isearch.el (search-default-regexp-mode): Revert to nil.
11616         Character-fold search _still_ doesn't play well with
11617         lax-whitespace.  So disable it by default (again) for now.
11619 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
11621         * lisp/isearch.el: No visual feedback for default search mode.
11622         During an isearch where character-folding is the default, we don't
11623         want to take up minibuffer space just to tell the user that
11624         "Char-fold " is on.  The same goes for other modes, if the user
11625         changes the default.  In contrast, if the user toggles OFF the
11626         default mode, they should see "Literal", to distinguish it from
11627         the default mode.
11628         (isearch--describe-regexp-mode): Return "" if describing the
11629         default mode, and return "literal " if describing a plain search
11630         and it is not default.
11632 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
11634         * test/automated/simple-test.el: New file.
11635         Define tests for `newline' and `open-line'.
11637 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
11639         * lisp/simple.el (open-line): Integrate with electric-indent-mode.
11640         Also run `post-self-insert-hook' when called interactively.
11642 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
11644         * lisp/simple.el (open-line): Fix docstring.
11645         Also explain apparently redundant line.
11647 2015-10-25  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
11648             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
11650         Sync with soap-client repository, version 3.0.1
11652         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
11653         Bump version to 3.0.1.
11655         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Update home page.
11657 2015-10-25  Eli Zaretskii  <eliz@gnu.org>
11659         * lisp/progmodes/grep.el (grep): Doc fix.  (Bug#21754)
11661 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
11663         * src/keyboard.c (post-command-hook): Extend the docstring.
11664         Mainly, explain how to use it without hanging Emacs, or giving the
11665         impression that it is hanging.  Also mention `pre-command-hook'.
11666         (pre-command-hook): Mention `post-command-hook'.
11668 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
11670         * lisp/custom.el (custom-declare-variable): Shorten code again.
11671         Without using pcase this time.  We can't use pcase because it is
11672         loaded after custom in loadup.el.  Also add a comment explaining
11673         this to future dummies like me.
11675 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
11677         * doc/lispref/os.texi (File Notifications): Document `stopped event'.
11679 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
11681         Introduce `stopped' event in file notification
11683         * lisp/filenotify.el (file-notify--rm-descriptor): New defun.
11684         (file-notify-rm-watch): Use it.
11685         (file-notify-callback): Implement `stopped' event.
11686         (file-notify-add-watch): Mention `stopped' in the docstring.
11687         Check, that upper directory exists.
11689         * test/automated/file-notify-tests.el (file-notify-test01-add-watch):
11690         Add two test cases.
11691         (file-notify-test02-events): Handle also `stopped' event.
11692         (file-notify-test04-file-validity): Add another test case.
11694 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
11696         Revert commit that broke 'make bootstrap'
11698         * lisp/custom.el (custom-declare-variable): Revert commit
11699         79fac080d277fed07b3c192890ad59d36d9f83b6.  custom.el needs to work
11700         even when pcase has not been defined yet, when doing bootstrapping.
11702 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
11704         Port recent inline functions fix to Standard C
11706         * src/lisp.h (LISP_MACRO_DEFUN, LISP_MACRO_DEFUN_VOID): Remove.
11707         All uses rewritten to define the function directly rather than to
11708         use a macro to define the function.  This conforms to Standard C,
11709         which does not allow stray semicolons at the top level.  I hope it
11710         also avoids the problems with TAGS.  Those macros, though clever,
11711         were pretty confusing anyway, and it wasn’t clear they were worth
11712         the aggravation even without the TAGS problem.
11714 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
11716         * lisp/isearch.el: Make character-fold search the default again.
11718 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
11720         * lisp/character-fold.el: Many improvements.
11721         (character-fold-search-forward, character-fold-search-backward):
11722         New command.
11723         (character-fold-to-regexp): Remove lax-whitespace hack.
11724         (character-fold-search): Remove variable.  Only isearch and
11725         query-replace use char-folding, and they both have their own
11726         variables to configure that.
11728 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
11730         * lisp/isearch.el: Generalize definition of regexp-function toggles.
11731         (isearch-specify-regexp-function): New macro for specifying
11732         possible values of `isearch-regexp-function'.
11733         (isearch-toggle-character-fold, isearch-toggle-symbol)
11734         (isearch-toggle-word): Define with `isearch-specify-regexp-function'.
11736 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
11738         * lisp/isearch.el (search-default-regexp-mode): New variable.
11739         (isearch-mode): Use it.
11741 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
11743         * lisp/isearch.el (search-exit-option, search-slow-window-lines)
11744         (search-slow-speed, search-upper-case)
11745         (search-nonincremental-instead, search-whitespace-regexp)
11746         (search-invisible, isearch-hide-immediately)
11747         (isearch-resume-in-command-history, search-ring-max)
11748         (regexp-search-ring-max, search-ring-update, search-highlight)
11749         (isearch-fail): Delete :group entries.
11751 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
11753         * lisp/custom.el (custom-declare-variable): Shorten code a bit.
11755 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
11757         addpm.c: Silence some warnings.
11759         * nt/addpm.c (DdeCommand): Cast pData argument of DdeClientTransaction
11760         to LPBYTE.
11761         (add_registry): Pass NULL to optional lpClass argument of
11762         RegCreateKeyEx, not an empty string.
11764 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
11766         addpm.c: Do not add obsolete GTK libraries to the path.
11768         * nt/addpm.c (REG_GTK, REG_RUNEMACS_PATH): Delete.
11769         (add_registry): Remove variables `size' and `gtk_key'.
11770         Do not add the GTK DLL directory to the library search path; it is
11771         confusing behavior (in particular, the same Emacs version with and
11772         without invoking addpm will use a different path), and the GTK image
11773         libraries are obsolete anyway.
11775 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
11777         addpm.c: Replace existing registry entries, but do not create new ones
11779         * nt/addpm.c (add_registry): If the Emacs registry key exists, replace
11780         existing values from previous versions, but do not add new ones; the
11781         key could exist for other reasons unrelated to old Emacsen, like X-style
11782         resources, or to set some environment variables like HOME or LANG, and
11783         in that case we don't want to populate it with obsolete values.
11785 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
11787         * nt/addpm.c (add_registry): Do not compute unused return value.
11789 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
11791         addpm.c: Don't pass REG_OPTION_NON_VOLATILE to RegOpenKeyEx
11793         * nt/addpm.c (add_registry): Pass 0 to ulOptions argument of
11794         RegOpenKeyEx, not REG_OPTION_NON_VOLATILE.  This doesn't change
11795         current behavior because REG_OPTION_NON_VOLATILE is defined to
11796         be 0L anyway, but that option is actually documented only for
11797         RegCreateKeyEx.
11799 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
11801         * src/w32notify.c (Fw32notify_add_watch): Fix version check.
11803 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
11805         Update frame title when redisplay scrolls selected window
11807         * src/xdisp.c (redisplay_window): Reconsider the frame's title
11808         when the mode-line of the frame's selected window needs to be
11809         updated.
11811 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
11813         Update frame title when scrolling the selected window
11815         * src/window.c (wset_update_mode_line): New function, sets either
11816         the window's update_mode_line flag or the global update_mode_lines
11817         variable.
11818         (Fset_window_start, set_window_buffer, window_scroll_pixel_based)
11819         (window_scroll_line_based): Call it instead of only setting the
11820         window's update_mode_line flag.
11822 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
11824         An even better fix for bug#21739
11826         * src/window.c (set_window_buffer): If the window is the frame's
11827         selected window, set update_mode_lines, not the window's
11828         update_mode_line flag.
11829         * src/buffer.c (Fkill_buffer): Undo last change.
11830         (set_update_modelines_for_buf): Function deleted.
11832 2015-10-24  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
11833             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
11835         Sync with soap-client repository, version 3.0.0
11837         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
11838         Bump version to 3.0.0.
11840         * lisp/net/soap-inspect.el: Merge in changes from Emacs master branch.
11842         * lisp/net/soap-client.el: Merge in changes from Emacs master branch.
11844         * lisp/net/soap-inspect.el: Shorten first line description.
11846         * lisp/net/soap-client.el: Make a small whitespace fix.
11848         * lisp/net/soap-inspect.el: Update copyright years.
11850         * lisp/net/soap-client.el (soap-encoded-namespaces): Move above
11851         first use in soap-encode-xs-element.
11853         * lisp/net/soap-client.el (soap-type-is-array?): new defun
11854         (soap-encode-xs-element): handle array elements in this function
11855         (soap-encode-xs-complex-type): flag error if asked to encode an
11856         array type, this is handled in `soap-encode-xs-element'
11858         * lisp/net/soap-inspect.el (soap-inspect-xs-attribute-group):
11859         Do not print type for attribute group.
11861         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute-group)
11862         New function.
11863         (soap-inspect-xs-attribute-group): Likewise.
11865         * lisp/net/soap-inspect.el
11866         (soap-resolve-references-for-xs-attribute-group): Resolve
11867         references of attributes in an attribute group.
11869         * lisp/net/soap-client.el (soap-decode-xs-attributes): Process attribute
11870         type directly, not through soap-wsdl-get.
11872         * lisp/net/soap-client.el (soap-xs-parse-attribute): Leave reference
11873         nil if reference attribute is nil.
11875         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
11876         Convert XML schema attributes to xsd:string.
11878         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute):
11879         New function.
11880         (soap-sample-value-for-xs-simple-type): Prepend attributes to result.
11881         (soap-sample-value-for-xs-complex-type): Likewise.
11882         (soap-inspect-xs-attribute): New function.
11883         (soap-inspect-xs-simple-type): Print attributes.
11884         (soap-inspect-xs-complex-type): Likewise.
11886         * lisp/net/soap-inspect.el (soap-resolve-references-for-xs-simple-type):
11887         Resolve references for attributes.
11888         (soap-resolve-references-for-xs-complex-type): Likewise.
11890         * lisp/net/soap-client.el (soap-xml-node-find-matching-child):
11891         Rename from soap-xml-node-first-child.
11892         (soap-xs-parse-attribute): Call soap-xml-node-find-matching-child.
11893         (soap-xs-parse-simple-type): Likewise.
11895         * lisp/net/soap-client.el (soap-invoke-async): Add error checking.
11897         * lisp/net/soap-client.el (soap-invoke-internal): New function.
11898         (soap-invoke-async): Call soap-invoke-internal.
11899         (soap-invoke): Likewise.
11901         * lisp/net/soap-client.el (soap-invoke-async): Ensure buffer passed to
11902         url-retrieve callback is killed.
11904         * lisp/net/soap-client.el (soap-parse-wsdl-phase-validate-node):
11905         Rename function.
11906         (soap-parse-wsdl-phase-fetch-imports): Likewise.
11907         (soap-parse-wsdl-phase-parse-schema): Likewise.
11908         (soap-parse-wsdl-phase-fetch-schema): Likewise.
11909         (soap-parse-wsdl-phase-finish-parsing): Likewise.
11910         (soap-parse-wsdl): Update calls.
11912         * lisp/net/soap-client.el (soap-invoke-async): Fix callback invocation.
11914         * lisp/net/soap-client.el (soap-invoke-async): New function.
11915         (soap-invoke): Reimplement using soap-invoke-async.
11917         * lisp/net/soap-client.el (soap-parse-server-response):
11918         Improve docstring.
11919         (soap-invoke): Inline call to soap-parse-server-response.
11921         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
11922         Prevent incorrect warning.
11924         * lisp/net/soap-client.el (soap-parse-server-response):
11925         Rename soap-process-url-response.  Destroy the mime part.
11926         (soap-invoke): Call soap-parse-server-response.
11928         * lisp/net/soap-client.el: Update copyright date.
11930         * lisp/net/soap-client.el: Fix checkdoc issues.
11932         * lisp/net/soap-client.el: Fix indentation and long lines.
11934         * lisp/net/soap-client.el (soap-time-format): Remove variable.
11935         (soap-encode-xs-basic-type): Simplify date-time format detection.
11936         (soap-decode-xs-basic-type): Remove soap-time-format support.
11938         * lisp/net/soap-client.el (soap-process-url-response): New function.
11939         (soap-fetch-xml-from-url): Call soap-process-url-response.
11940         (soap-parse-wsdl-phase-1): New function.
11941         (soap-parse-wsdl-phase-2): Likewise.
11942         (soap-parse-wsdl-phase-3): Likewise.
11943         (soap-parse-wsdl-phase-4): Likewise.
11944         (soap-parse-wsdl-phase-5): Likewise.
11945         (soap-parse-wsdl): Call phase functions.
11947         * lisp/net/soap-client.el (soap-decode-xs-basic-type):
11948         Remove one-argument and call.
11950         * lisp/net/soap-client.el (soap-decode-date-time): Improve docstring.
11952         * lisp/net/soap-client.el (soap-xmlschema-imports): Remove variable.
11953         (soap-parse-schema): Add wsdl argument.  Look up XML schema
11954         imports from wsdl.
11955         (soap-load-wsdl): Do not set soap-xmlschema-imports.
11956         (soap-parse-wsdl): Get XML schema imports from wsdl.
11958         * lisp/net/soap-client.el (soap-current-file): Remove variable.
11959         (soap-wsdl): Add current-file slot.
11960         (soap-fetch-xml-from-url): Add wsdl argument.  Look up current
11961         file from wsdl.
11962         (soap-fetch-xml-from-file): Likewise.
11963         (soap-fetch-xml): Likewise.
11964         (soap-load-wsdl): Always create wsdl object first.
11965         (soap-parse-wsdl): Pass wsdl to soap-fetch-xml.
11967         * lisp/net/soap-client.el (soap-xs-element): Add is-group slot.
11968         (soap-xs-parse-element): Set is-group slot.
11969         (soap-resolve-references-for-xs-element): Skip is-group elements.
11970         (soap-xs-complex-type): Add is-group slot.
11971         (soap-xs-parse-complex-type): Set is-group slot.
11972         (soap-xs-parse-sequence): Parse xsd:group elements.
11973         (soap-resolve-references-for-xs-complex-type): Inline elements
11974         from referenced xsd:group nodes.
11975         (soap-parse-schema): Parse xsd:group nodes.
11977         * lisp/net/soap-client.el (soap-invoke):
11978         Don't set url-http-version to 1.0.
11980         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
11981         Allow choice nodes to accept multiple values.
11983         * lisp/net/soap-client.el (soap-encode-body): Check parameters argument
11984         for extra header values.
11986         * lisp/net/soap-client.el (soap-well-known-xmlns):
11987         Add wsa and wsaw tags.
11988         (soap-operation): Add input-action and output-action slots.
11989         (soap-parse-operation): Parse wsaw:Action nodes.
11990         (soap-encode-body): Encode service-url for WS-Addressing.
11991         (soap-create-envelope): Likewise.
11992         (soap-invoke): Update soap-create-envelope call to provide
11993         service-url argument.
11995         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
11996         Support xsi:type override attribute.
11997         (soap-decode-array): Likewise.
11999         * lisp/net/soap-client.el (soap-parse-schema):
12000         Handle location attribute.
12002         * lisp/net/soap-client.el (soap-decode-type): Check that multiRef
12003         matched validation regexp.
12005         * lisp/net/soap-client.el (soap-encode-xs-simple-type):
12006         Encode xsd:list nodes.
12007         (soap-decode-xs-simple-type): Decode xsd:list nodes.
12009         * lisp/net/soap-client.el (soap-get-candidate-elements):
12010         Fix reference handling.
12012         * lisp/net/soap-client.el (soap-xs-simple-type): Add is-list slot.
12013         (soap-xs-parse-simple-type): Call soap-xs-add-list for xsd:list nodes.
12014         (soap-xs-add-list): New function.
12016         * lisp/net/soap-client.el (soap-encode-xs-element): When a boolean is
12017         expected, interpret nil as "false".
12019         * lisp/net/soap-client.el (soap-make-xs-basic-types): Add gYearMonth,
12020         gYear, gMonthDay, gDay and gMonth.
12022         * lisp/net/soap-client.el (soap-time-format): New variable.
12023         (soap-encode-xs-basic-type): Handle dateTime, time, date,
12024         gYearMonth, gYear, gMonthDay, gDay and gMonth.
12025         (soap-decode-date-time): New function.
12026         (soap-decode-xs-basic-type): Use soap-decode-date-time.
12028         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Validate value
12029         after encoding.
12030         (soap-decode-xs-basic-type): Validate value before decoding.
12032         * lisp/net/soap-client.el (soap-validate-xs-basic-type): New function.
12033         (soap-validate-xs-simple-type): Call soap-validate-xs-basic-type.
12035         * lisp/net/soap-client.el (soap-xs-add-union): Append result to base
12036         instead of overwriting it.
12037         (soap-validate-xs-simple-type): Add union support.
12039         * lisp/net/soap-client.el (soap-xs-add-restriction): Translate pattern
12040         to Emacs regexp using xsdre-translate.
12041         (soap-validate-xs-simple-type): Validate value against pattern.
12043         * lisp/net/soap-client.el (soap-xs-add-union): Preserve WSDL order of
12044         inline simpleType nodes.
12045         (soap-decode-type): Handle union types.
12047         * lisp/net/soap-client.el (soap-decode-xs-attributes): Decode basic-type
12048         attributes.
12050         * lisp/net/soap-client.el (soap-get-xs-attributes-from-groups): Rename
12051         from soap-xs-attribute-group-consolidate, all callers updated
12052         (soap-get-xs-attributes): Rename from
12053         soap-xs-attributes-consolidate, all callers updated
12055         * lisp/net/soap-client.el (soap-xs-type): Add attribute-group slot.
12056         (soap-xs-attribute-group): New type.
12057         (soap-xs-parse-attribute-group): New function.
12058         (soap-resolve-references-for-xs-attribute-group): Likewise.
12059         (soap-xs-add-extension): Handle attribute groups.
12060         (soap-resolve-references-for-xs-simple-type): Likewise.
12061         (soap-xs-parse-complex-type): Likewise.
12062         (soap-xs-parse-extension-or-restriction): Likewise.
12063         (soap-resolve-references-for-xs-complex-type): Likewise.
12064         (soap-xs-attribute-group-consolidate): New function.
12065         (soap-xs-attributes-consolidate): Handle attribute groups.
12066         (soap-parse-schema): Likewise.
12068         * lisp/net/soap-client.el (soap-encode-xs-basic-type):
12069         Fix boolean encoding.
12071         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Print ref
12072         element names in warnings.
12074         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Fix splicing.
12076         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
12077         Eliminate invalid warnings for choice types.
12079         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
12080         Also encode base type attributes.
12082         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Fix compilation
12083         warning.  Print e-name in warnings, or element if e-name is nil.
12085         * lisp/net/soap-client.el (soap-xs-element): Add alternatives slot.
12086         (soap-xs-parse-element): Set substitution-group.
12087         (soap-resolve-references-for-xs-element): Populate alternatives slot.
12088         (soap-get-candidate-elements): New function.
12089         (soap-encode-xs-complex-type): Iterate through all candidate elements.
12090         Handle types with nil type indicator.  Fix warning logic.
12092         * lisp/net/soap-client.el (soap-current-wsdl): Move declaration
12093         earlier in the file to prevent compiler warning.
12095         * lisp/net/soap-client.el (soap-node-optional): New function.
12096         (soap-node-multiple): Likewise.
12097         (soap-xs-parse-element): Call soap-node-optional and
12098         soap-node-multiple.
12099         (soap-xs-complex-type): Add optional? and multiple? slots.
12100         (soap-xml-get-children-fq): New function.
12101         (soap-xs-element-get-fq-name): Likewise.
12102         (soap-xs-complex-type-optional-p): Likewise.
12103         (soap-xs-complex-type-multiple-p): Likewise.
12104         (soap-xs-attributes-consolidate): Likewise.
12105         (soap-decode-xs-attributes): Likewise.
12106         (soap-decode-xs-complex-type): Decode types with nil type indicator.
12107         Support children that use local namespaces.  Decode attributes.
12108         Add type considerations to optional? and multiple? warnings.
12110         * lisp/net/soap-client.el (soap-xs-parse-extension-or-restriction):
12111         Store parsed attributes.
12112         (soap-encode-xs-complex-type-attributes): Encode custom attributes.
12114         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
12115         Don't add the xsi:type attribute (Exchange refuses requests which have
12116         this attribute).
12118         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Convert to lexical binding,
12119         correct compiler warnings about unused function arguments and
12120         local variables.
12122         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Handle nil
12123         type indicator.
12124         (soap-parse-envelope): Handle response headers.
12125         (soap-parse-response): Likewise.  Only return non-nil decoded values.
12127         * lisp/net/soap-client.el (soap-validate-xs-simple-type):
12128         Return validated value.
12130         * lisp/net/soap-client.el (soap-xs-parse-element)
12131         (soap-xs-parse-simple-type)
12132         (soap-xs-parse-complex-type)
12133         (soap-parse-message)
12134         (soap-parse-operation): Add the current namespace to the element
12135         being created.
12136         (soap-resolve-references-for-xs-element)
12137         (soap-resolve-references-for-xs-simple-type)
12138         (soap-resolve-references-for-xs-complex-type)
12139         (soap-resolve-references-for-operation): Resolve the namespace to
12140         the namespace tag.
12141         (soap-make-wsdl): specify a namespace tag when creating the xsd
12142         and soapenc namespaces
12143         (soap-wsdl-resolve-references): don't update namespace tags in
12144         elements here
12145         (soap-parse-port-type): bind the urn: to soap-target-xmlns
12146         (soap-encode-body): don't add nil namespace tags to
12147         soap-encoded-namespaces
12149         * lisp/net/soap-inspect.el: Use `soap-make-wsdl` to construct the object
12150         for registering the soap-inspect method.  Make debbugs tests pass.
12151         * lisp/net/soap-client.el (soap-decode-any-type): Use soap-l2fq on the
12152         type name, also skip string only nodes when decoding a structure.
12153         (soap-xs-parse-complex-type): (BUG) Dispatch parsing for choice
12154         types too.
12155         (soap-encode-body): Grab the header value from the param table.
12157         * lisp/net/soap-client.el (soap-should-encode-value-for-xs-element):
12158         New function.
12159         (soap-encode-xs-element): Don't encode nil value unless needed.
12161         * lisp/net/soap-client.el (soap-bound-operation): New slot `soap-body`.
12162         (soap-parse-binding): Parse the message parts required in the body.
12163         (soap-encode-body): Encode only the parts that are declared to be
12164         part of the body.
12166         * lisp/net/soap-client.el (soap-encode-xs-element): use the fq name
12167         when writing out the tag.
12168         (soap-encode-body): Remove hack that inserts the xmlns in the
12169         element attributes list.
12171         * lisp/net/soap-client.el (soap-xs-attribute): Add "default" slot.
12172         (soap-xs-parse-attribute): Default slot is set from the XML
12173         "fixed" attribute.
12174         (soap-encode-xs-complex-type-attributes): Encode any attributes
12175         that have a default value.  Also, don't put the xsi:nil attribute
12176         when the complex type has no content anyway.
12178         * lisp/net/soap-client.el (soap-well-known-xmlns):
12179         Add the xml namespace.
12180         (soap-local-xmlns): Start with the xml namespace.
12181         (soap-xml-node-first-child): Skip xsd:annotation nodes too.
12182         (soap-make-xs-basic-types): More xsd types added.
12183         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
12184         Handle "language", "time", "date", "nonNegativeInteger".
12185         (soap-resolve-references-for-xs-element): Don't signal an error if
12186         the element does not have a type.
12187         (soap-xs-parse-simple-type): Subtypes are handled with ecase,
12188         added stum for xsd:list.
12189         (soap-xs-add-union): Call soap-l2fq on all union members.
12190         (soap-xs-add-extension): Call soap-l2fq on the base member.
12191         (soap-resolve-references-for-xs-simple-type): Don't signal an
12192         error if the simple type has no base.
12193         (soap-resolve-references-for-xs-simple-type): Bugfix, call
12194         soap-wsdl-get on each type of the base.
12196         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
12197         Referenced type can be eiher a simple type or a basic type.
12198         (soap-xs-add-restriction)
12199         (soap-xs-parse-extension-or-restriction): Use `soap-l2fq' on base.
12200         (soap-make-xs-basic-types)
12201         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
12202         Add support for more XMLSchema basic types.
12203         (soap-current-file, soap-xmlschema-imports): New defvars.
12204         (soap-parse-schema): Add locations from xsd:import tags to
12205         `soap-xmlschema-imports'.
12206         (soap-wsdl): Make destructor private.
12207         (soap-make-wsdl): New defun, SOAP-WSDL object constructor.
12208         (soap-wsdl-add-alias): Check if we try to replace aliases.
12209         (soap-fetch-xml-from-url, soap-fetch-xml-from-file)
12210         (soap-fetch-xml): New defuns.
12211         (soap-load-wsdl): Update to load the WSDL from either a file or
12212         an url.
12213         (soap-load-wsdl-from-url): Now an alias to `soap-load-wsdl'.
12214         (soap-parse-wsdl): Process wsdl:import tags and imports from
12215         `soap-xmlschema-imports'.
12216         * lisp/net/soap-client.el (soap-l2wk): Bugfix: call symbolp instead of
12217         symbol-name.
12218         (soap-l2fq): Make the name part always a string.
12219         (soap-name-p): New defun, used for name tests.
12221         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-complex-type):
12222         Supply sample values for choice types with a special tag.
12223         * lisp/net/soap-client.el (soap-encode-xs-complex-type):
12224         Handle anonymous elements correctly.
12225         (soap-encode-value): Accept nodes that have no namespace tag.
12227         * lisp/net/soap-client.el (soap-invoke): Encode the string for
12228         `url-request-data' as UTF-8.  Fixes issue 16.
12230 2015-10-24  Nicolas Petton  <nicolas@petton.fr>
12232         Update the new icon
12234         Move the E slightly to the right in the circle.
12236         * etc/images/icons/hicolor/128x128/apps/emacs.png:
12237         * etc/images/icons/hicolor/16x16/apps/emacs.png:
12238         * etc/images/icons/hicolor/24x24/apps/emacs.png:
12239         * etc/images/icons/hicolor/32x32/apps/emacs.png:
12240         * etc/images/icons/hicolor/48x48/apps/emacs.png:
12241         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
12242         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
12243         * nt/icons/emacs.ico: New icom update.
12245 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
12247         Avoid missing inline functions from lisp.h in TAGS
12249         * src/lisp.h (LISP_MACRO_DEFUN): Mention in the commentary the
12250         need to end each invocation with a semi-colon.
12251         Add a semi-colon at the end of each invocation of LISP_MACRO_DEFUN
12252         and LISP_MACRO_DEFUN_VOID.  This is to avoid missing in TAGS
12253         inline functions defined immediately after each invocation, and
12254         also avoid tagging every invocation of these macros.
12256 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
12258         A better fix for bug#21739
12260         * src/buffer.c (set_update_modelines_for_buf): New function.
12261         (Fkill_buffer): Use it to set the global variable
12262         update_mode_lines if the killed buffer was displayed in some
12263         window.  Don't set windows_or_buffers_changed.  This is a better
12264         fix for bug#21739 than the previous fix, since it will cause only
12265         redisplay of mode lines, not of entire windows, but will still
12266         catch attention of x_consider_frame_title in xdisp.c, which
12267         redraws the frame title.
12269 2015-10-24  Tassilo Horn  <tsdh@gnu.org>
12271         * lisp/dired-aux.el (dired-compress-files-alist): Add support for
12272         tar.bz2 and tar.xz archives.
12274 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
12276         Fix infloop in redisplay introduced by a recent change
12278         * src/xdisp.c (redisplay_internal): Avoid inflooping when
12279         redisplaying the selected window sets the selected frame's
12280         redisplay flag.  (Bug#21745)
12282 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
12284         * lisp/emacs-lisp/thunk.el: Better documentation.
12286 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
12288         Replace the old icon for Windows and Mac OSX
12290         * nt/icons/emacs.ico:
12291         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
12292         Use the new icons.
12294 2015-10-23  Stephen Leake  <stephen_leake@stephe-leake.org>
12296         * lisp/emacs-lisp/package.el (package-autoload-ensure-default-file):
12297         `load-path' should contain only directory names.
12299 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
12301         New library thunk.el
12303         thunk.el is extracted from stream.el in ELPA, with additional tests.
12305         * lisp/emacs-lisp/thunk.el: New file.
12306         * test/automated/thunk-tests.el: New file.
12307         * etc/NEWS: Add information about thunk.el
12309 2015-10-23  Michael Albinus  <michael.albinus@gmx.de>
12311         Fix bug#21669
12313         * lisp/filenotify.el (file-notify-rm-watch): Improve check for
12314         calling low-level functions.
12316         * test/automated/file-notify-tests.el (file-notify--test-timeout):
12317         Decrase to 6 seconds for remote directories.
12318         (file-notify-test02-events): Expect different number of
12319         `attribute-changed' events for the local and remote cases.  Apply
12320         short delays between the operations, in order to receive all
12321         events in the remote case.  Combine `attribute-change' tests.
12322         (Bug#21669)
12324 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
12326         Decode the HTML source when displaying it in EWW
12328         * lisp/net/eww.el (eww-view-source): Decode the HTML source
12329         according to its headers.
12331 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
12333         New default icon
12335         * etc/images/icons/hicolor/128x128/apps/emacs23.png:
12336         * etc/images/icons/hicolor/16x16/apps/emacs23.png:
12337         * etc/images/icons/hicolor/24x24/apps/emacs23.png:
12338         * etc/images/icons/hicolor/32x32/apps/emacs23.png:
12339         * etc/images/icons/hicolor/48x48/apps/emacs23.png:
12340         * etc/images/icons/hicolor/scalable/apps/emacs23.svg:
12341         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document23.svg:
12342         Move the old logo files to emacs23.*.
12343         * etc/images/icons/hicolor/128x128/apps/emacs.png:
12344         * etc/images/icons/hicolor/16x16/apps/emacs.png:
12345         * etc/images/icons/hicolor/24x24/apps/emacs.png:
12346         * etc/images/icons/hicolor/32x32/apps/emacs.png:
12347         * etc/images/icons/hicolor/48x48/apps/emacs.png:
12348         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
12349         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document.svg:
12350         New files.
12351         * etc/images/icons/README: Update the copyright information.
12353 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
12355         Fix redisplay of frame title when current buffer is killed
12357         * src/buffer.c (Fkill_buffer): Set windows_or_buffers_changed to a
12358         non-zero value, to redisplay more than just the affected windows.
12359         (Bug#21739)
12361 2015-10-23  Anders Lindgren  <andlind@gmail.com>
12363         NextStep maximization and NSTRACE rewrite
12365         Full-height, full-width, and maximized windows now cover the
12366         entire screen (except the menu bar), including the part where the
12367         system dock is placed.  The system zoom animation is no longer
12368         used.
12370         Made NonMaximized->FullWidth->FullHeight->NonMaximized restore the
12371         original size.
12373         * src/nsterm.m (ns_menu_bar_height): New function, return height of
12374         the menu bar, or 0 when it's hidden.
12375         (constrain_frame_rect): New function for constraining a frame.
12376         (ns_constrain_all_frames): Set frame size explicitly rather than
12377         relying on the system doing it for us by writing back the current
12378         frame size.
12379         (windowWillUseStandardFrame): Register non-maximized width or
12380         height as new user size.  When entering full width or height,
12381         the other size component is taken from the user size.
12382         (fullscreenState): New method for accessing the fullscreen state.
12383         (constrainFrameRect): Restrict frame to be placed under the menu bar,
12384         if present.  The old version, sometimes, restricted the height of a
12385         frame to the screen, this version never does this.
12386         (zoom): Perform zoom by setting the frame to the full size of the
12387         screen (minus the menu bar).  The default system function, with the
12388         zoom animation, is no longer used, as the final frame size doesn't
12389         cover the entire screen.
12391         Rework how to constrain resizing to the character grid.  The old
12392         system used "resizeIncrements" in NSWindows.  However, once a frame
12393         was resized so that it was not aligned to the text grid, it
12394         remained unaligned even after a resize.  In addition, it conflicted
12395         when resizing a fullheight window.
12397         * src/nsterm.m (windowWillResize): Restrict frame size to text grid,
12398         unless when pixelwise frame resizing is enabled.
12399         (updateFrameSize, initFrameFromEmacs)
12400         (toggleFullScreen, handleFS): Don't set resizeIncrements.
12402         Redesign the NS trace system.  The call structure is represented
12403         using indentations and vertical lines.  The NSTRACE macro accepts
12404         printf-style arguments.  New macros for printing various
12405         information.
12407         * src/nsterm.h (NSTRACE_ENABLED): Macro to enable trace system.
12408         (NSTRACE, NSTRACE_WHEN, NSTRACE_UNLESS): Macros to start a new
12409         block (typically a function), accept printf-style arguments.
12410         (NSTRACE_MSG): Macro for extra information, accepts
12411         printf-style arguments.
12412         (NSTRACE_what): Macros for printing various types.
12413         (NSTRACE_FMT_what): Macro with printf format string snippets.
12414         (NSTRACE_ARG_what): Macros for passing printf-style arguments,
12415         corresponds to NSTRACE_FMT_what.
12416         (NSTRACE_RETURN): Macro to print return value, accept
12417         printf-style arguments.
12418         (NSTRACE_RETURN_what): Macros to print return value for
12419         various types.
12421         * src/nsterm.m: Remove old NSTRACE macro
12422         * src/nsterm.m (nstrace_num): Trace counter.
12423         (nstrace_depth): Current call depth.
12424         (nstrace_leave): NSTRACE support function, called when the
12425         local variable "nstrace_enabled" goes out of scope using the
12426         "cleanup" extension.
12427         (ns_print_fullscreen_type_name): NSTRACE_FSTYPE support function.
12428         (constrain_frame_rect, ns_constrain_all_frames)
12429         (ns_update_auto_hide_menu_bar, ns_update_begin)
12430         (ns_update_window_begin, update_window_end, ns_update_end)
12431         (ns_focus, ns_unfocus, ns_ring_bell, ns_frame_raise_lower)
12432         (ns_frame_rehighlight, x_make_frame_visible)
12433         (x_make_frame_invisible, x_iconify_frame, x_free_frame_resources)
12434         (x_destroy_window, x_set_offset, x_set_window_size)
12435         (ns_fullscreen_hook, ns_lisp_to_color, ns_color_to_lisp)
12436         (ns_defined_color, frame_set_mouse_pixel_position)
12437         (note_mouse_movement, ns_mouse_position, ns_frame_up_to_date)
12438         (ns_define_frame_cursor, x_get_keysym_name, ns_redraw_scroll_bars)
12439         (ns_clear_frame, ns_clear_frame_area, ns_scroll_run)
12440         (ns_after_update_window_line, ns_shift_glyphs_for_insert)
12441         (dumpcursor, ns_draw_vertical_window_border)
12442         (ns_draw_window_divider, ns_draw_relief)
12443         (ns_dumpglyphs_box_or_relief, ns_maybe_dumpglyphs_background)
12444         (ns_dumpglyphs_image, ns_draw_glyph_string, ns_send_appdefined)
12445         (ns_read_socket, ns_select, ns_set_vertical_scroll_bar)
12446         (ns_set_horizontal_scroll_bar, ns_condemn_scroll_bars)
12447         (ns_redeem_scroll_bar, ns_judge_scroll_bars, ns_delete_terminal)
12448         (ns_create_terminal, ns_term_init, sendEvent)
12449         (applicationDidFinishLaunching, applicationDidBecomeActive)
12450         (timeout_handler, fd_handler, EmacsView_dealloc, changeFont)
12451         (acceptsFirstResponder, resetCursorRects, keyDown, mouseDown)
12452         (deltaIsZero, rightMouseDown, otherMouseDown, mouseUp)
12453         (rightMouseUp, otherMouseUp, scrollWheel, mouseMoved)
12454         (mouse_autoselect_window, in_window, mouseDragged)
12455         (rightMouseDragged, otherMouseDragged, windowShouldClose)
12456         (updateFrameSize, windowWillResize, windowDidResize)
12457         (windowDidBecomeKey, windowDidResignKey, windowWillMiniaturize)
12458         (initFrameFromEmacs, windowDidMove, windowDidDeminiaturize)
12459         (windowDidExpose, windowDidMiniaturize, windowWillEnterFullScreen)
12460         (windowDidEnterFullScreen, windowWillExitFullScreen)
12461         (windowDidExitFullScreen, toggleFullScreen, handleFS, setFSValue)
12462         (mouseEntered, mouseExited, menuDown, toolbarClicked, drawRect)
12463         (draggingEntered, performDragOperation, validRequestorForSendType)
12464         (setMiniwindowImage, constrainFrameRect, performZoom, zoom)
12465         (EmacsScroller_initFrame, EmacsScroller_setFrame)
12466         (EmacsScroller_dealloc, condemn, reprieve, judge)
12467         (resetCursorRects, setPosition, EmacsScroller_mouseDown)
12468         (EmacsScroller_mouseDragged, syms_of_nsterm): Use new trace system.
12470         * src/nsfns.m: Remove old NSTRACE macro
12471         * src/nsfns.m (x_set_icon_name, ns_set_name, x_explicitly_set_name)
12472         (x_implicitly_set_name, x_set_title, ns_set_name_as_filename)
12473         (ns_implicitly_set_icon_type, x_set_icon_type): Use new trace system.
12475         * src/nsimage.m: Remove old NSTRACE macro
12476         * src/nsimage.m (ns_image_from_XBM, ns_image_for_XPM)
12477         (ns_image_from_bitmap_file, ns_load_image): Use new trace system.
12479         * src/nsmenu.m: Remove old NSTRACE macro
12480         * src/nsmenu.m (ns_update_menubar, ns_menu_show, ns_popup_dialog):
12481         Use new trace system.
12483 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
12485         No need to use eval-and-compile
12487         * lisp/gnus/auth-source.el: Do require epg (when compiling) before
12488         autoload epg functions.
12490 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
12492         Fix auth-source-epa-make-gpg-token compilation (bug#21724)
12494         * lisp/gnus/auth-source.el: Add eval-and-compile to autoloads for
12495         epg-context-set-passphrase-callback, epg-decrypt-string, and
12496         epg-encrypt-string; require epg when compiling for the setf-method
12497         for epg-context-armor. (bug#21724)
12499 2015-10-22  Eli Zaretskii  <eliz@gnu.org>
12501         Include file cleanup for w32 files in src directory
12503         * src/w32xfns.c: Don't include keyboard.h, window.h, charset.h,
12504         fontset.h, blockinput.h.
12505         * src/w32uniscribe.c: Don't include dispextern.h, character.h,
12506         charset.h, fontset.h.
12507         * src/w32term.c: Don't include systty.h, systime.h, charset.h,
12508         character.h, ccl.h, dispextern.h, disptab.h, intervals.h,
12509         process.h, atimer.h, keymap.h, w32heap.h.  Include bitmap/gray.xbm
12510         in an ifdef-ed away block.
12511         Include fcntl.h for CYGWIN.
12512         (set_frame_param): Remove unused function.
12513         * src/w32select.c: Don't include charset.h and composite.h.
12514         (setup_config, Fw32_get_clipboard_data): Avoid compiler warnings
12515         due to pointer signedness mismatches.
12516         * src/w32reg.c (w32_get_string_resource): Avoid compiler warnings
12517         due to pointer signedness mismatches.
12518         * src/w32proc.c: Include unistd.h.  Don't include systime.h,
12519         process.h, dispextern.h.
12520         (sys_spawnve, Fw32_short_file_name, Fw32_long_file_name)
12521         (Fw32_application_type): Avoid compiler warnings due to pointer
12522         signedness mismatches.
12523         * src/w32menu.c: Don't include keymap.h, termhooks.h, window.h,
12524         character.h, charset.h, dispextern.h.
12525         (simple_dialog_show, add_menu_item): Avoid compiler warnings due
12526         to pointer signedness mismatches.
12527         * src/w32inevt.c: Don't include dispextern.h, window.h,
12528         termhooks.h, w32heap.h.
12529         * src/w32font.c: Don't include dispextern.h, character.h,
12530         charset.h, fontset.h, font.h.
12531         (intern_font_name, add_font_entity_to_list)
12532         (registry_to_w32_charset, w32_to_x_charset, fill_in_logfont)
12533         (list_all_matching_fonts): Avoid compiler warnings due to pointer
12534         signedness mismatches.
12535         * src/w32fns.c: Don't include character.h, intervals.h,
12536         dispextern.h, epaths.h, charset.h, ccl.h, fontset.h, systime.h,
12537         termhooks.h, w32heap.h, bitmap/gray.xbm, font.h, w32font.h.
12538         (w32_color_map_lookup, add_system_logical_colors_to_map)
12539         (x_decode_color, x_set_name, FPRINTF_WM_CHARS, Fxw_color_defined_p)
12540         (Fxw_color_values, x_display_info_for_name, Fset_message_beep)
12541         (x_create_tip_frame, Fx_file_dialog, Fsystem_move_file_to_trash)
12542         (w32_parse_hot_key, Ffile_system_info, w32_kbd_patch_key): Avoid
12543         compiler warnings, mainly due to pointer signedness mismatches.
12544         (unwind_create_frame_1): Remove unused function.
12545         * src/w32console.c: Don't include character.h, disptab.h, frame.h,
12546         window.h, termhooks.h, dispextern.h.
12547         (w32con_write_glyphs, w32con_write_glyphs_with_face): Fix pointer
12548         signedness mismatch.
12549         * src/w32.c: Include c-strcase.h and systty.h.  Don't include
12550         w32heap.h.
12552 2015-10-22  Tassilo Horn  <tsdh@gnu.org>
12554         Improve doc-view wrt. auto-revert-mode
12556         * lisp/doc-view.el (doc-view-revert-buffer): Don't revert when file
12557         is corrupted (bug#21729).
12558         (doc-view-mode): Set doc-view-revert-buffer as revert-buffer-function.
12560 2015-10-22  Oleh Krehel  <ohwoeowho@gmail.com>
12562         Describe dired-do-compress-to in the manual
12564         * etc/NEWS: Update.
12566         * lisp/dired-aux.el: Fix typo.
12568         * doc/emacs/dired.texi: Add entry.
12570 2015-10-22  Jürgen Hötzel  <juergen@archlinux.org>
12572         Further fix for proper locale handling in tramp-gvfs.el
12574         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
12575         Just suppress LC_MESSAGES locale category settings.
12577 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
12579         New lispref section “Security Considerations”
12581         This attempts to document some of the issues recently discussed
12582         on emacs-devel, and to indicate other such issues.  The section
12583         could be a lot longer.
12584         * doc/lispref/os.texi (Security Considerations):
12585         New node.
12586         * doc/lispref/elisp.texi (Top):
12587         * doc/lispref/processes.texi (Shell Arguments):
12588         * lisp/subr.el (shell-quote-argument):
12589         * src/callproc.c (syms_of_callproc):
12590         Reference it.
12592 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
12594         Merge from gnulib
12596         This incorporates:
12597         2015-10-18 stdalign: work around pre-4.9 GCC x86 bug
12598         2015-10-18 time_rz: avoid warning from bleeding-edge gcc's -Wnonnull
12599         * doc/misc/texinfo.tex, lib/stdalign.in.h, lib/time_rz.c:
12600         Copy from gnulib.
12602 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
12604         * lisp/gnus/mailcap.el (mailcap-mime-data): Remove fboundp checks.
12605         (mailcap-viewer-passes-test): Do it instead.  Thanks to Stefan Monnier.
12607 2015-10-21  Ken Brown  <kbrown@cornell.edu>
12609         Further include-file cleanup
12611         * src/sheap.c: Include stdlib.h.
12612         * src/unexcw.c: Include string.h.
12614 2015-10-21  Eli Zaretskii  <eliz@gnu.org>
12616         Fix logic in 'server-kill-emacs-query-function'
12618         * lisp/server.el (server-kill-emacs-query-function): Correct the
12619         logic that controls whether the user is asked for confirmation.
12620         (Bug#21723)
12622 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
12624         * lisp/isearch.el (isearch-search-fun-default): Simplify logic.
12625         (isearch--lax-regexp-function-p): New function.
12627 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
12629         * lisp/isearch.el: Support lax-whitespace in regexp-function searches.
12630         (isearch-search-fun-default): Let-bind `search-spaces-regexp'
12631         around `isearch-regexp-function'.
12633 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
12635         * lisp/isearch.el: Rename word search to regexp-function search.
12636         `isearch-word' went well beyond its original purpose, and the name
12637         no longer makes sense.  It is now called
12638         `isearch-regexp-function', and its value should always be a function
12639         that converts a string to a regexp (though setting it to t is still
12640         supported for now).
12641         (isearch-word): Make obsolete.
12642         (isearch-regexp-function): New variable.
12643         (isearch-mode, isearch-done, isearch--state, isearch--set-state)
12644         (with-isearch-suspended, isearch-toggle-regexp)
12645         (isearch-toggle-word, isearch-toggle-symbol)
12646         (isearch-toggle-character-fold, isearch-query-replace)
12647         (isearch-occur, isearch-highlight-regexp)
12648         (isearch-search-and-update, isearch-message-prefix)
12649         (isearch-search-fun-default, isearch-search)
12650         (isearch-lazy-highlight-new-loop, isearch-lazy-highlight-search):
12651         Use it.
12652         (isearch-lazy-highlight-regexp-function): New var.
12653         (isearch-lazy-highlight-word): Make obsolete.
12654         (isearch--describe-regexp-mode): New function.
12655         (isearch--describe-word-mode): Make obsolete.
12657         * lisp/info.el (Info-isearch-search):
12658         * lisp/replace.el (replace-search, replace-highlight):
12659         * lisp/obsolete/longlines.el (longlines-search-function):
12660         * lisp/hexl.el (hexl-isearch-search-function):
12661         * lisp/cedet/semantic/senator.el (senator-isearch-search-fun):
12662         Use the new var.
12664 2015-10-21  Oleh Krehel  <ohwoeowho@gmail.com>
12666         Add dired-do-compress-to command bound to "c"
12668         * lisp/dired-aux.el (dired-shell-command): Use the caller's
12669           `default-directory', return the result of `process-file'.
12670         (dired-compress-file-suffixes): Add comment on why "tar -zxf" isn't
12671         used by default.
12672         (dired-compress-files-alist): New defvar.
12673         (dired-do-compress-to): New command.
12675         * lisp/dired.el (dired-mode-map): Bind `dired-do-compress-to' to "c".
12676         (dired-do-compress-to): Add an autoload entry.
12678         * etc/NEWS: Add two entries.
12680 2015-10-21  Tassilo Horn  <tsdh@gnu.org>
12682         Make RefTeX work with LaTeX subfiles package
12684         * lisp/textmodes/reftex.el (reftex-TeX-master-file): Recognize subfiles
12685         document class argument as master file for referencing purposes.
12687 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
12689         * lisp/gnus/mailcap.el (mailcap-mailcap-entry-passes-test): Doc fix.
12691 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
12693         Include-file cleanup for src directory
12695         Omit ‘#include "foo.h"’ unless the file needs foo.h (Bug#21707).
12696         In a few cases, add ‘#include "foo.h"’ if the file needs foo.h
12697         but does not include it directly.  As a general rule, a source
12698         file should include foo.h if it needs the interfaces that foo.h
12699         defines.
12700         * src/alloc.c: Don’t include process.h.  Include dispextern.h,
12701         systime.h.
12702         * src/atimer.c: Don’t include blockinput.h.
12703         * src/buffer.c: Include coding.h, systime.h.  Don’t include
12704         keyboard.h, coding.h.
12705         * src/callint.c: Don’t include commands.h, keymap.h.
12706         * src/callproc.c: Don’t include character.h, ccl.h, composite.h,
12707         systty.h, termhooks.h.
12708         * src/casetab.c: Don’t include character.h.
12709         * src/category.c: Don’t include charset.h, keymap.h.
12710         * src/ccl.h: Don’t include character.h.
12711         * src/character.c: Don’t include charset.h.
12712         * src/charset.c: Don’t include disptab.h.
12713         * src/chartab.c: Don’t include ccl.h.
12714         * src/cm.c: Don’t include frame.h, termhooks.h.
12715         * src/cmds.c: Don’t include window.h, dispextern.h.
12716         * src/coding.c: Don’t include window.h, frame.h.
12717         * src/composite.c: Include composite.h.  Don’t include window.h,
12718         font.h.
12719         * src/data.c: Don’t include syssignal.h, termhooks.h, font.h.
12720         * src/dbusbind.c: Don’t include frame.h.
12721         * src/decompress.c: Don’t include character.h.
12722         * src/dired.c: Don’t include character.h, commands.h, charset.h.
12723         * src/dispnew.c: Don’t include character.h, indent.h, intervals.h,
12724         process.h, timespec.h.  Include systime.h.
12725         * src/doc.c: Include coding.h.  Don’t include keyboard.h.
12726         * src/editfns.c: Include composite.h.  Don’t include frame.h.
12727         * src/emacs.c: Include fcntl.h, coding.h.  Don’t include
12728         commands.h, systty.h..
12729         * src/fileio.c: Don’t include intervals.h, dispextern.h.
12730         Include composite.h.
12731         * src/filelock.c: Don’t include character.h, systime.h.
12732         * src/fns.c: Don’t include time.h, commands.h, keyboard.h,
12733         keymap.h, frame.h, blockinput.h, xterm.h.  Include composite.h.
12734         * src/font.c: Include termhooks.h.
12735         * src/font.h: Don’t include ccl.h, frame.h.  Add forward decls of
12736         struct composition_it, struct face, struct glyph_string.
12737         * src/fontset.c: Don’t include buffer.h, ccl.h, keyboard.h,
12738         intervals.h, window.h, termhooks.h.
12739         * src/frame.c: Don’t include character.h, commands.h, font.h.
12740         * src/frame.h: Don’t include dispextern.h.
12741         * src/fringe.c: Don’t include character.h.
12742         * src/ftcrfont.c: Don’t include dispextern.h, frame.h,
12743         character.h, charset.h, fontset.h.
12744         * src/ftfont.c: Don’t include frame.h, blockinput.h, coding.h,
12745         fontset.h.
12746         * src/ftxfont.c: Don’t include dispextern.h, character.h,
12747         charset.h, fontset.h.
12748         * src/gfilenotify.c: Don’t include frame.h, process.h.
12749         * src/gtkutil.c: Include dispextern.h, frame.h, systime.h.
12750         Don’t include syssignal.h, buffer.h, charset.h, font.h.
12751         * src/gtkutil.h: Don’t include frame.h.
12752         * src/image.c: Include fcntl.h and stdio.h instead of sysstdio.h.
12753         Don’t include character.h.
12754         * src/indent.c: Don’t include keyboard.h, termchar.h.
12755         * src/inotify.c: Don’t include character.h, frame.h.
12756         * src/insdel.c: Include composite.h.  Don’t include blockinput.h.
12757         * src/intervals.c: Don’t include character.h, keyboard.h.
12758         * src/intervals.h: Don’t include dispextern.h, composite.h.
12759         * src/keyboard.c: Don’t include sysstdio.h, disptab.h, puresize.h.
12760         Include coding.h.
12761         * src/keyboard.h: Don’t incldue systime.h.
12762         * src/keymap.c: Don’t include charset.h, frame.h.
12763         * src/lread.c: Include dispextern.h and systime.h.
12764         Don’t include frame.h.  Include systime.h.
12765         * src/macros.c: Don’t include commands.h, character.h, buffer.h.
12766         * src/menu.c: Include character.h, coding.h.  Don’t include
12767         dispextern.h.
12768         * src/menu.h: Don’t include systime.h.
12769         * src/minibuf.c: Don’t include commands.h, dispextern.h, syntax.h,
12770         intervals.h, termhooks.h.
12771         * src/print.c: Include coding.h.  Don’t include keyboard.h,
12772         window.h, dispextern.h, termchar.h, termhooks.h, font.h.
12773         Add forward decl of struct terminal.
12774         * src/process.c: Don’t include termhooks.h, commands.h,
12775         dispextern.h, composite.h.
12776         * src/region-cache.c: Don’t include character.h.
12777         * src/scroll.c: Don’t include keyboard.h, window.h.
12778         * src/search.c: Don’t include category.h, commands.h.
12779         * src/sound.c: Don’t include dispextern.h.
12780         * src/syntax.c: Don’t include command.h, keymap.h.
12781         * src/sysdep.c: Don’t include window.h, dispextern.h.
12782         * src/systime.h: Use ‘#ifdef emacs’, not ‘#ifdef EMACS_LISP_H’,
12783         * src/term.c: Don’t include systty.h, intervals.h, xterm.h.
12784         * src/terminal.c: Include character.h.
12785         Don’t include charset.h, coding.h.
12786         * src/textprop.c: Don’t include character.h.
12787         * src/undo.c: Don’t include character.h, commands.h, window.h.
12788         * src/unexsol.c: Don’t include character.h, charset.h.
12789         * src/widget.c: Include widget.h.  Don’t include keyboard.h,
12790         window.h, dispextern.h, blockinput.h, character.h, font.h.
12791         * src/widgetprv.h: Don’t include widget.h.
12792         * src/window.c: Don’t include character.h, menu.h, intervals.h.
12793         * src/xdisp.c: Include composite.h, systime.h.  Don’t include
12794         macros.h, process.h.
12795         * src/xfaces.c: Don’t include charset.h, keyboard.h, termhooks.h,
12796         intervals.h.
12797         * src/xfns.c: Don’t include menu.h, character.h, intervals.h,
12798         epaths.h, fontset.h, systime.h, atimer.h, termchar.h.
12799         * src/xfont.c: Don’t include dispextern.h, fontset.h, ccl.h.
12800         * src/xftfont.c: Don’t include dispextern.h, character.h, fontset.h.
12801         * src/xgselect.c: Don’t include timespec.h, frame.h.
12802         Include systime.h.
12803         * src/xgselect.h: Don’t include time.h.
12804         Use a forward decl to struct timespec instead.
12805         * src/xmenu.c: Don’t include keymap.h, character.h, charset.h,
12806         dispextern.h.  Include systime.h.
12807         * src/xml.c: Don’t include character.h.
12808         * src/xrdb.c [USE_MOTIF]: Don’t include keyboard.h.
12809         * src/xselect.c: Don’t include dispextern.h, character.h,
12810         buffer.h, process.h.
12811         * src/xsmfns.c: Don’t include systime.h, sysselect.h.
12812         * src/xterm.c: Don’t include syssignal.h, charset.h, disptab.h,
12813         intervals.h process.h, keymap.h, xgselect.h.  Include composite.h.
12815 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
12817         (/ N) now returns the reciprocal of N
12819         This is more compatible with Common Lisp and XEmacs (Bug#21690).  See:
12820         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg01053.html
12821         * lisp/color.el (color-hue-to-rgb, color-hsl-to-rgb)
12822         (color-xyz-to-srgb, color-xyz-to-lab):
12823         * lisp/emacs-lisp/cl-extra.el (cl-float-limits):
12824         * lisp/net/shr-color.el (shr-color-hue-to-rgb)
12825         (shr-color-hsl-to-rgb-fractions):
12826         Exploit the change to simplify the code a bit.
12827         * lisp/emacs-lisp/bytecomp.el (byte-compile-quo):
12828         Don’t complain about single-argument calls to ‘/’.
12829         * src/data.c (arith_driver, float_arith_driver):
12830         Implement the change.
12832 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
12834         Call vc-dir-refresh after stash operations
12836         * lisp/vc/vc-git.el (vc-git-stash-apply-at-point)
12837         (vc-git-stash-pop-at-point): Call vc-dir-refresh (bug#13960).
12839         * lisp/vc/vc-dir.el (vc-dir-resynch-file): Expand FNAME as well,
12840         since it can be abbreviated (as returned by vc-find-root).
12842 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
12844         * lisp/vc/vc-svn.el:
12845         * lisp/vc/vc-mtn.el:
12846         * lisp/vc/vc-hg.el:
12847         * lisp/vc/vc-cvs.el:
12848         * lisp/vc/vc-git.el:
12849         * lisp/vc/vc-bzr.el: Don't declare vc-exec-after anymore.
12850         Its usages have been replaced with vc-run-delayed.
12852 2015-10-20  Dima Kogan  <dima@secretsauce.net>
12854         Fix memory leak in fontset handling
12856         * src/font.c (copy_font_spec): Make a deep copy of the input
12857         argument FONT.  (Bug#21651)
12859 2015-10-20  Michael Sperber  <mike@xemacs.org>
12861         * lisp/gnus/mailcap.el (mailcap-mime-data):
12862         Conditonalize `doc-view-mode', which does not exist on XEmacs.
12864 2015-10-20  Oleh Krehel  <ohwoeowho@gmail.com>
12866         Update the way directories are compressed
12868         * lisp/dired-aux.el (dired-compress-file-suffixes): Update the recipe
12869         for *.tar.gz decompression to use a pipe.
12870         Add an entry for the default directory compression (to *.tar.g).
12871         (dired-compress-file): Update.
12873         See https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg00949.html.
12875 2015-10-20  Michael Sperber  <mike@xemacs.org>
12877         Unbreak `group' option for `mail-sources'
12879         * lisp/gnus/nnml.el (nnml-retrieve-groups, nnml-request-scan):
12880         * lisp/gnus/nnmail.el (nnmail-get-new-mail-per-group)
12881         (nnmail-get-new-mail-1): Unbreak `group' option for `mail-sources'.
12883 2015-10-19  Nicolas Petton  <nicolas@petton.fr>
12885         New function seq-position
12887         * lisp/emacs-lisp/seq.el (seq-position): New function.
12888         * test/automated/seq-tests.el: New tests for seq-position.
12889         * doc/lispref/sequences.texi: Add documentation for `seq-position'.
12891 2015-10-19  Ken Brown  <kbrown@cornell.edu>
12893         Enable --with-wide-int build on 32-bit Cygwin
12895         * src/sheap.c (STATIC_HEAP_SIZE): Remove distinction between x86
12896         and x86_64 to enable --with-wide-int build on 32-bit Cygwin.
12898 2015-10-19  Glenn Morris  <rgm@gnu.org>
12900         * doc/emacs/ack.texi (Acknowledgments): Small, sad, update.
12902 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
12904         Resurrect image loading under auto-image-file-mode
12906         * src/image.c (x_find_image_fd): Handle the case of -2 returned by
12907         'openp' specially.  This special case was lost in the changes on
12908         2015-08-18.  (Bug#21685)
12910 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
12912         Fix return value of 'set-file-extended-attributes'
12914         * lisp/files.el (set-file-extended-attributes): Return non-nil
12915         when setting either ACLs or SELinux context succeeds.  Document
12916         the return value.  (Bug#21699)
12918         * doc/lispref/files.texi (Changing Files): Document the return
12919         value of set-file-extended-attributes.
12921 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
12923         Improve documentation of functions that change files
12925         * doc/lispref/files.texi (Changing Files): Document that these
12926         functions signal an error on failure.
12928 2015-10-18  Eli Zaretskii  <eliz@gnu.org>
12930         Fix doc string of 'shell-quote-argument'
12932         * lisp/subr.el (shell-quote-argument): Doc fix.  (Bug#21702)
12934 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
12936         Some minor Tramp changes
12938         * doc/misc/tramp.texi (Obtaining Tramp): Add http git cloning.
12940         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
12941         Expand `tramp-auto-save-directory'.
12943 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
12945         Minor edits in Tramp
12947         * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp):
12948         Declare it.
12950         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
12951         Remove declaration.
12953 2015-10-17  Mark Oteiza  <mvoteiza@udel.edu>
12955         * lisp/emacs-lisp/eldoc.el: Add back-to-indentation to the command list.
12957 2015-10-17  Eli Zaretskii  <eliz@gnu.org>
12959         Avoid crashes when redisplayng a window changes faces or fonts
12961         * src/xdisp.c (redisplay_internal): If redisplaying the selected
12962         window or one of the frames turns on the frame's 'redisplay' flag,
12963         redisplay again.  (Bug#21428)
12965         * src/frame.c (x_set_font): Set the frame's 'fonts_changed' flag.
12967 2015-10-17  Michael Albinus  <michael.albinus@gmx.de>
12969         Solve timimg issues in file-notify-tests.el
12971         * test/automated/file-notify-tests.el (file-notify-test02-events):
12972         Rectify `attribute-change' tests.  There are timing issues with
12973         gfilenotify.  (Bug#21669)
12975 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
12977         Fix quoting of data within htmlfontify doc
12979         * doc/misc/htmlfontify.texi (Data Structures, Customization):
12980         Fix quoting of data structures.  A Lisp quote is needed only
12981         when data appears within Lisp code.
12983 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
12985         * lisp/emacs-lisp/package.el: Reload archive-contents if
12986         priorities change.
12987         (package--old-archive-priorities): New variable.
12988         (package-read-all-archive-contents, package-menu--refresh): Use it
12989         to decide when the `package-archive-contents' needs to be read
12990         again.
12992 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
12994         Make src headers idempotent and standalone
12996         Redo src/*.h so that each include file is idempotent (that is, can
12997         be included multiple times with the latter inclusions having no
12998         effect) and standalone (that is, can be included by itself,
12999         with no include file other than config.h needed as a prerequisite).
13000         This is standard practice in GNU programs nowadays.
13001         * lwlib/lwlib-widget.h, src/buffer.h, src/category.h, src/character.h:
13002         * src/charset.h, src/coding.h, src/commands.h, src/disptab.h:
13003         * src/fontset.h, src/gnutls.h, src/indent.h, src/keymap.h, src/macros.h:
13004         * src/regex.h [emacs]:
13005         * src/syntax.h, src/systty.h, src/termhooks.h:
13006         Include lisp.h, for Lisp_Object.
13007         * src/buffer.h, src/category.h, src/cm.h, src/commands.h, src/disptab.h:
13008         * src/indent.h, src/intervals.h, src/keyboard.h, src/macros.h:
13009         * src/process.h, src/puresize.h, src/region-cache.h, src/syntax.h:
13010         * src/syssignal.h, src/sysstdio.h, src/systty.h, src/termchar.h:
13011         * src/termopts.h, src/tparam.h, src/unexec.h:
13012         Protect against multiple inclusion.
13013         * src/buffer.h: Include character.h, for STRING_CHAR.
13014         * src/emacsgtkfixed.h (struct frame):
13015         * src/fontset.h (struct face):
13016         * src/region-cache.h (struct buffer):
13017         * src/termhooks.h (struct glyph):
13018         * src/xsettings.h (struct x_display_info):
13019         Add possibly-forward decl.
13020         * src/syntax.h: Include buffer.h, for BVAR.
13021         * src/sysselect.h: Include lisp.h, for eassume.
13022         * src/termchar.h: Include <stdio.h>, for FILE.
13023         * src/widget.h: Include <X11/IntrinsicP.h>, for Widget.
13024         * src/xsettings.h: Include <X11/Xlib.h>, for XEvent.
13026 2015-10-16  Jürgen Hötzel  <juergen@archlinux.org>
13028         Handle symlink targets containing spaces in tramp-gvfs.el
13030         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
13031         Handle symlink targets containing spaces.
13033 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
13035         * lisp/custom.el (custom-theme-load-path): Demote to defvar.
13037         `custom-theme-load-path' was a defcustom, but it shouldn't be for the
13038         same reason that `load-path' shouldn't.  Setting it via the customize
13039         interface is a trap for the user.
13041         Installed themes commonly add themselves to this variable, which means
13042         its value is not fit for being saved (it will permanently remember dirs
13043         that don't exist anymore).
13045         This is aggravated by the fact that Emacs always applies the `user'
13046         theme on top of any theme that's loaded, since this will apply the old
13047         variable value and remove any new directories that had been recently
13048         added by themes themselves.
13050         Not to mention, we already have `custom-theme-directory', which is safe
13051         to customize.
13053 2015-10-16  Stefan Monnier  <monnier@iro.umontreal.ca>
13055         * lisp/mpc.el: Rename the new toggling commands.
13056         (mpc-toggle-consume, mpc-toggle-repeat, mpc-toggle-single)
13057         (mpc-toggle-shuffle): Add "-toggle" in the name.
13059 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
13061         Improve the doc string of 'completion-boundaries'
13063         * lisp/minibuffer.el (completion-boundaries): Rename the argument
13064         TABLE to COLLECTION, for consistency with other high-level
13065         completion functions.  Document how COLLECTION is called if it
13066         is a function.  (Bug#21644)
13068 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
13070         * lisp/dired-aux.el (dired-shell-command): Fix compile warning.
13072 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
13074         Make dired-do-compress work for *.zip files
13076         * lisp/dired-aux.el (dired-check-process): Transform the top-level
13077           comment into a docstring.
13078         (dired-shell-command): New command.  This mirrors
13079         `dired-check-process', but is more user-friendly for passing
13080         arguments.
13081         (dired-compress-file-suffixes): Allow to specify the command switches
13082         along with input (%i) and output (%o) inside the PROGRAM part.
13083         Add an entry for *.zip files, and update the entry for *.tar.gz files
13084         to the new style.  Update the docstring.
13085         (dired-compress-file): When PROGRAM matches %i or %o, use the new
13086         logic.
13087         (dired-update-file-line): Avoid an error when at end of buffer.
13089         Fixes bug#21637.
13091 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
13093         Minor improvement in documentation of internals
13095         * doc/lispref/internals.texi (Writing Emacs Primitives): Document QUIT.
13097 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
13099         Improve documentation of COLLECTION in completion functions
13101         * doc/lispref/minibuf.texi (Minibuffer Completion): Add a
13102         cross-reference to "Programmed Completion".
13104         * src/minibuf.c (Fcompleting_read): Improve the doc string.
13105         (Bug#21644)
13107 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
13109         Add more release info to etc/HISTORY
13111         * etc/HISTORY: Add more release information about 19.x and 20.x
13112         versions.
13114 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
13116         New file etc/HISTORY
13118         * admin/FOR-RELEASE: Procedure for etc/HISTORY.
13119         * etc/HISTORY: New file.
13120         * etc/NEWS: Mention it.
13122 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
13124         js-mode: Don't misindent generator methods
13126         * lisp/progmodes/js.el (js--looking-at-operator-p): Distinguish
13127         generator methods from multiplication operator
13128         (https://github.com/mooz/js2-mode/issues/275).
13130 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
13132         Fix animation timeout delay calculation
13134         * lisp/image.el (image-animate-timeout):
13135         Don’t assume speed is floating-point.
13137 2015-10-15  Mark Oteiza  <mvoteiza@udel.edu>
13139         Add commands for controlling MPD modes
13141         * lisp/mpc.el (mpc-cmd-consume, mpc-cmd-random, mpc-cmd-repeat)
13142         (mpc-cmd-single): New functions.
13143         (mpc-consume, mpc-repeat, mpc-single, mpc-shuffle): New commands.
13144         (mpc-mode-menu): Add new commands as menu items.
13146 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
13148         Refer to `(elisp)Basic Completion' in completing-read docstring
13150         * src/minibuf.c (Fcompleting_read): Refer to `(elisp)Basic
13151         Completion' in the docstring (bug#21644).
13153 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
13155         * lisp/mpc.el (mpc-format): Always push form to pred
13157 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
13159         Spelling fixes
13161         * configure.ac (bitmapdir): Fix misspelling of bmd_acc.
13162         * test/automated/coding-tests.el (ert-test-coding-bogus-coding-systems):
13163         Fix misspelling of nonexistent file name.
13165 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
13167         * lisp/mpc.el (mpc-mode-menu, mpc-toggle-play): Fix docstrings
13169 2015-10-14  Michael Albinus  <michael.albinus@gmx.de>
13171         Some editing fixes in Tramp
13173         * lisp/net/tramp-gvfs.el:
13174         * doc/misc/tramp.texi: "customer option" -> "custom option".
13176         * lisp/net/tramp.el (tramp-completion-function-alist): Fix docstring.
13178 2015-10-14  Jürgen Hötzel  <juergen@archlinux.org>
13180         Use proper localization in tramp-gvfs.el
13182         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
13183         Suppress localized settings in order to proper parse gfvs output.
13185 2015-10-14  Warren Lynn  <wrn.lynn@gmail.com>  (tiny change)
13187         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
13188         Quote argument in proper order.  (Bug#21562)
13190 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
13192         Fix typos in docstrings
13194         * lisp/emacs-lisp/map.el:
13195         * lisp/emacs-lisp/seq.el: Fix typos in the docstrings of the pcase
13196           macros.
13198 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
13200         * lisp/mpc.el (mpc-volume-refresh): Check if buffer is live.
13202 2015-10-14  Oleh Krehel  <ohwoeowho@gmail.com>
13204         Make dired-jump work with tar-subfile-mode
13206         * lisp/dired-x.el (dired-jump): When in `tar-subfile-mode', instead of
13207           emitting an error, switch to `tar-superior-buffer'.
13209 2015-10-14  Juanma Barranquero  <lekktu@gmail.com>
13211         * .gitignore: Add build-aux/ar-lib.
13213 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
13215         Better docstrings in seq.el and map.el
13217         * lisp/emacs-lisp/map.el:
13218         * lisp/emacs-lisp/seq.el: Improve the docstring for the pcase patterns.
13220 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
13222         Merge from gnulib
13224         This incorporates:
13225         2015-10-13 binary-io, u64, unistd: port to strict C
13226         2015-09-26 c-ctype: do not worry about EBCDIC + char signed
13227         2015-09-25 c-ctype: port better to z/OS EBCDIC
13228         2015-09-25 gnulib-common.m4: fix gl_PROG_AR_RANLIB/AM_PROG_AR clash
13229         * doc/misc/texinfo.tex, lib/binary-io.c, lib/c-ctype.h, lib/u64.c:
13230         * lib/unistd.c, m4/gnulib-common.m4, m4/gnulib-comp.m4:
13231         Copy from gnulib.
13233 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
13235         Take XPNTR private
13237         * src/alloc.c (PURE_POINTER_P): Remove.
13238         All uses replaced with PURE_P.
13239         (XPNTR_OR_SYMBOL_OFFSET): New function.
13240         (XPNTR): Move here from lisp.h.
13241         Reimplement in terms of XPNTR_OR_SYMBOL_OFFSET.
13242         (mark_maybe_object, valid_lisp_object_p, survives_gc_p):
13243         Remove unnecessary cast.
13244         (purecopy): Use XPNTR_OR_SYMBOL_OFFSET instead of XPNTR,
13245         to avoid an unnecessary runtime test for symbols.
13246         * src/lisp.h (lisp_h_XPNTR, XPNTR): Remove, moving XPNTR to alloc.c.
13247         Only alloc.c needs XPNTR now.
13249 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
13251         Add MPC play/pause command
13253         * lisp/mpc.el (mpc-toggle-play): New command.
13254         (mpc-mode-map): Bind it to "s".
13255         (mpc-mode-menu): Add corresponding menu item.
13257 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
13259         Add bindings and menu items for prev and next tracks
13261         * lisp/mpc.el (mpc-mode-map): Bind ">" to mpc-next,
13262         "<" to mpc-prev.
13263         (mpc-mode-menu): Add corresponding menu items
13265 2015-10-13  Ken Raeburn  <raeburn@raeburn.org>
13267         Reduce face-related consing during frame creation.
13269         * lisp/faces.el (face--attributes-unspecified): Compute the "unspecified"
13270         attribute list once.
13271         (face-spec-reset-face): Use it instead of building the list.
13273 2015-10-13  Ken Raeburn  <raeburn@permabit.com>
13275         Do process ConfigureNotify events indicating size changes.
13277         * src/xterm.c (handle_one_xevent): If consecutive ConfigureNotify
13278         events don't have the same size, process each one.
13280 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
13282         Derive mpc-mode from special-mode
13284         lisp/mpc.el (mpc-mode-map): Make from sparse keymap.  Unbind g.
13285         (mpc-mode): Derive from special mode.
13286         (mpc-songs-mode-map): Don't set parent keymap.
13288 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
13290         Fix error messages for when covers are not found.
13292         The last change to mpc-format let the binding to file call
13293         mpc-file-local-copy with nil argument.  Instead, employ if-let here
13294         so nil bindings don't result in needless computation and errors.
13295         * lisp/mpc.el: Require 'subr-x at compile time.
13296         * lisp/mpc.el (mpc-format): Use if-let.
13298 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
13300         Make dired-do-compress work for *.tar.gz files
13302         * lisp/dired-aux.el (dired-compress-file-suffixes): Associate
13303           "tar -zxvf" to *.tar.gz; update docstring.
13305         (dired-compress-file): Allow to specify switches after the command in
13306         `dired-compress-file-suffixes'.
13308 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
13310         Make dired-do-compress work for directories
13312         * lisp/dired-aux.el (dired-compress-file): When FILE is a directory,
13313           instead of emitting an error, call "tar -czf FILE.tar.gz FILE".
13314         Also convert the top comment into a docstring.
13316 2015-10-13  Stefan Monnier  <monnier@iro.umontreal.ca>
13318         * lisp/mpc.el (mpc-songs-refresh): Don't side-effect `active'
13320         ... since it might come straight from the memoizing table.
13322 2015-10-13  Juanma Barranquero  <lekktu@gmail.com>
13324         * src/w32fns.c (x_change_tool_bar_height): Remove unused variable frame.
13326 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
13328         Use special-mode in eww list modes
13330         * lisp/net/eww.el (eww-bookmark-mode, eww-history-mode)
13331         (eww-buffers-mode): Derive from special-mode and remove redundant
13332         setting of buffer-read-only.
13333         (eww-mode-map): Remove redundant keymap parent setting.
13334         (eww-bookmark-mode-map, eww-history-mode-map, eww-buffers-mode-map):
13335         Remove redundant keymap suppressions and mappings.
13337 2015-10-13  Martin Rudalics  <rudalics@gmx.at>
13339         Allow setting frame pixel sizes from frame parameters (Bug#21415)
13341         Also fix some misfeatures in frame (re-)sizing code, add more
13342         debugging information and remove some dead code.
13344         * lisp/frame.el (frame-notice-user-settings, make-frame): Change
13345         parameter names when setting `frame-size-history'.
13346         (frame--size-history): New function.
13348         * src/frame.c (frame_inhibit_resize): If frame has not been made
13349         yet, return t if inhibit_horizontal_resize or
13350         inhibit_vertical_resize bit have been set.
13351         (adjust_frame_size): Simplify.
13352         (make_frame): Initialize inhibit_horizontal_resize,
13353         inhibit_vertical_resize, tool_bar_redisplayed, tool_bar_resized.
13354         (Fframe_after_make_frame): Reset inhibit_horizontal_resize and
13355         inhibit_vertical_resize slots.
13356         (x_set_frame_parameters): Handle `text-pixels' specification for
13357         width and height parameters.  Don't consider new_height or
13358         new_width changes.  Call adjust_frame_size instead of
13359         Fset_frame_size.
13360         (x_figure_window_size): Two new arguments x_width and y_width
13361         returning frame's figures width and height.  Calculate tool bar
13362         height before frame sizes so SET_FRAME_HEIGHT can pick it up.
13363         Handle `text-pixels' specification for width and height
13364         parameters.
13365         (Qtext_pixels, Qx_set_frame_parameters, Qset_frame_size)
13366         (Qx_set_window_size_1, Qx_set_window_size_2)
13367         (Qx_set_window_size_3, Qx_set_menu_bar_lines)
13368         (Qupdate_frame_menubar, Qfree_frame_menubar_1)
13369         (Qfree_frame_menubar_2): New symbols.
13370         * src/frame.h (structure frame): New booleans
13371         tool_bar_redisplayed, tool_bar_resized,
13372         inhibit_horizontal_resize, inhibit_vertical_resize.
13373         (x_figure_window_size): Update external declaration.
13374         * src/gtkutil.c (xg_frame_set_char_size): Set size hints before
13375         calling gtk_window_resize.
13376         (update_frame_tool_bar): Make inhibiting of frame resizing more
13377         discriminative.  Set tool_bar_resized bit.
13378         * src/nsfns.m (x_set_tool_bar_lines): Make inhibiting of frame
13379         resizing more discriminative.  Call adjust_frame_size instead of
13380         x_set_window_size.
13381         (Fx_create_frame): Handle x_width and x_height if
13382         set by x_figure_window_size.
13383         * src/nsterm.m (x_set_window_size): For GNUSTEP build don't
13384         subtract 3 from tool bar height.
13385         (x_set_window_size): Add frame_size_history_add call.
13386         (x_new_font): Call adjust_frame_size instead of
13387         x_set_window_size.
13388         * src/w32fns.c (x_change_tool_bar_height): Reset
13389         tool_bar_redisplayed and tool_bar_resized bits when adding tool
13390         bar.  Make inhibiting of frame resizing more discriminative.
13391         (w32_wnd_proc): Remove dead code in WM_WINDOWPOSCHANGING case.
13392         (Fx_create_frame): Handle x_width and x_height if set by
13393         x_figure_window_size.  Set size hints before adjusting frame size.
13394         (x_create_tip_frame): Adjust x_figure_window_size call.
13395         * src/w32term.c (x_set_window_size): Add frame_size_history_add
13396         call.
13397         * src/widget.c (set_frame_size): Remove dead code.  Add
13398         frame_size_history_add call.  When frame_resize_pixelwise is t
13399         use FRAME_PIXEL_WIDTH and FRAME_PIXEL_HEIGHT instead of
13400         pixel_width and pixel_height.
13401         (update_various_frame_slots): Remove dead code.
13402         (EmacsFrameResize): Add more information in
13403         frame_size_history_add call.
13404         (EmacsFrameQueryGeometry): Round only when frame_resize_pixelwise
13405         is not set.
13406         * src/xdisp.c (redisplay_tool_bar): Set tool_bar_redisplayed bits.
13407         * src/xfns.c (x_set_menu_bar_lines): Change argument name.
13408         (x_change_tool_bar_height): Reset tool_bar_redisplayed and
13409         tool_bar_resized bits when adding tool bar.  Make inhibiting of
13410         frame resizing more discriminative.
13411         (Fx_create_frame): Handle x_width and x_height if set by
13412         x_figure_window_size.  Set size hints before adjusting frame size.
13413         (x_create_tip_frame): Adjust x_figure_window_size call.
13414         * src/xmenu.c (update_frame_menubar): Don't handle Lucid specially.
13415         (set_frame_menubar): On Lucid never add core-border-width to
13416         avoid that adding XtNinternalBorderWidth adds it again.
13417         (free_frame_menubar): Handle frame_inhibit_resize true for Motif.
13418         * src/xterm.c (x_new_font): In non-toolkit case handle size
13419         change of menu bar.
13420         (x_set_window_size_1): Fix calls to frame_size_history_add.
13421         (x_wm_set_size_hint): Remove dead code.  Set
13422         size_hints.min_width and size_hints.min_height to base_width and
13423         base_height.
13425 2015-10-13  Michael Albinus  <michael.albinus@gmx.de>
13427         * test/automated/file-notify-tests.el (file-notify--test-timeout):
13428         Add docstring.  Increase to 10 seconds for remote
13429         directories.  (Bug#21669)
13431 2015-10-12  Paul Eggert  <eggert@cs.ucla.edu>
13433         Unmacroize ebrowse.c and etags.c a bit
13435         * lib-src/ebrowse.c (READ_CHUNK_SIZE): Now an enum constant.
13436         (streq, filename_eq, set_flag, has_flag): Now inline functions.
13437         (set_flag): First arg is now an address, not an lvalue.
13438         All callers changed.
13439         (filename_eq, set_flag, has_flag):
13440         Rename from FILENAME_EQ, SET_FLAG, HAS_FLAG.
13441         All callers changed.
13442         * lib-src/etags.c (streq, strcaseeq, strneq, strncaseeq):
13443         Now inline functions.  Remove asserts that are unnecessary these
13444         days (and in some cases were too-generous anyway).
13446 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
13448         Use highlight for current items
13450         * lisp/mpc.el (mpc-select-make-overlay, mpc-tagbrowser-all-select):
13451         Apply highlight face instead of region face.
13453 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
13455         Search for more cover image names in MPC
13457         * lisp/mpc.el (mpc-format): Also look for .folder.jpg or folder.jpg
13458         case insensitively
13460 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
13462         Remove or comment out unused variables
13464         * src/w32fns.c (x_set_mouse_color): Comment out variables cursor,
13465         nontext_cursor, mode_cursor, hand_cursor and count.
13466         (x_change_tool_bar_height): Remove variable old_text_height.
13467         (deliver_wm_chars): Remove variable strip_Alt.
13468         (Fw32_shell_execute): Remove variable document_a.
13469         (Fw32_frame_geometry): Remove variable fullboth.
13470         * src/w32term.c (w32_setup_relief_color): Comment out variable
13471         w32_display_info.
13472         (w32_horizontal_scroll_bar_handle_click): Remove variables start, end.
13473         (w32_read_socket): Comment out variables rows, columns.
13474         * src/w32uniscribe.c (uniscribe_check_otf_1): Remove variable rest.
13476 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
13478         * src/w32proc.c (sys_select): Fix bitwise test.
13480 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
13482         Minor typo corrections in doc strings
13484         * lisp/menu-bar.el (popup-menu, popup-menu-normalize-position):
13485         Doc fixes.
13487 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
13489         * nt/INSTALL: Recommend MSYS Automake/Autoconf from ezwinports.
13491 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
13493         Attempt to avoid crashes in plist-member
13495         * src/fns.c (Fplist_member): Don't call QUIT between a CONSP test
13496         and a call to XCDR.  (Bug#21655)
13498 2015-10-12  Mike FABIAN  <mfabian@redhat.com>
13500         * lisp/select.el (gui-get-primary-selection): In
13501         gui-get-primary-selection use gui--selection-value-internal (Bug#20906)
13503 2015-10-12  Tassilo Horn  <tsdh@gnu.org>
13505         Support RTF in doc-view
13507         * lisp/doc-view.el (doc-view-set-doc-type): Add entry for RTF extension.
13509 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
13511         * src/w32fns.c (get_wm_chars): Increment counter, not pointer.
13513 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
13515         Replace the usage of an obsolete function in auth-source.el
13517         * lisp/gnus/auth-source.el (auth-source-epa-make-gpg-token):
13518         Replace an usage of `epg-context-set-armor' with `setf'.
13520 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
13522         * lisp/gnus/auth-source.el: Use sharp-quoting with functions.
13524 2015-10-11  Jay Belanger  <jay.p.belanger@gmail.com>
13526         Have calc-yank recognize numbers in different bases.
13528         * lisp/calc/calc-yank.el (math-number-regexp): New function.
13529         (calc-yank): Use `math-number-regexp' to recognize numbers.
13531 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
13533         Handle an opaque-move X11 window manager operation more efficiently
13535         * src/xterm.c (handle_one_xevent): If a ConfigureNotify event is
13536         followed by more ConfigureNotify events for the same window, process
13537         only the last one.
13539 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
13541         Fix cursor setting for tip frame; re-enable cursor generation
13543         * src/xfns.c (x_create_tip_frame): Include the cursor in the window
13544         attributes sent when creating the new X window.  Don't skip setting
13545         the pointerColor parameter.
13547 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
13549         Rewrite x_set_mouse_color to sync less
13551         We can track serial numbers of X requests and correlate error events
13552         with the associated requests.  This way we can identify errors for
13553         specific calls without having to use XSync after every one.
13555         * src/xfns.c (enum mouse_cursor): New type.
13556         (struct mouse_cursor_types, struct mouse_cursor_data): New types.
13557         (mouse_cursor_types): New array listing the Lisp variables and default
13558         cursor appearances for each cursor type.
13559         (x_set_mouse_color_handler): New function; checks error event serial
13560         number against submitted requests.
13561         (x_set_mouse_color): Updated to use the new error handler callback,
13562         and to be more table-driven, to simplify repetitious code.
13564 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
13566         Add x_catch_errors_with_handler
13568         * src/xterm.c (struct x_error_message_stack): Add new fields for a
13569         callback function and associated data pointer.
13570         (x_error_catcher): If the callback function is set, call it after
13571         saving the error message string.
13572         (x_catch_errors_with_handler): Renamed from x_catch_errors but now
13573         accepts a callback function and data pointer.
13574         (x_catch_errors): Now a wrapper function.
13575         * src/xterm.h (x_special_error_handler): New typedef.
13576         (x_catch_errors_with_handler): Declare.
13578 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
13580         Introduce x_uncatch_errors_after_check to reduce XSync calls
13582         Both x_had_errors_p and x_check_errors call XSync, so if they're
13583         immediately followed by x_uncatch_errors, its XSync call will be
13584         redundant, resulting in a wasted round trip to the X server.
13586         * src/xterm.c (x_uncatch_errors_after_check): New routine; a copy of
13587         x_uncatch_errors without the XSync call.
13588         (XTmouse_position, x_wm_supports):
13589         * src/xfns.c (x_set_mouse_color):
13590         * src/xmenu.c (Fx_menu_bar_open_internal):
13591         * src/xselect.c (x_own_selection, x_get_foreign_selection):
13592         (Fx_get_atom_name): Call it instead of x_uncatch_errors.
13593         * src/xterm.h (x_uncatch_errors_after_check): Declare.
13595 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
13597         Document the optional prefix to `calc-yank'
13599         * doc/misc/calc.texi (Yanking into the Stack): Document the optional
13600         prefix to `calc-yank'.
13601         * lisp/calc/calc-yank.el (calc-yank): Ensure that things killed from
13602         the Calc buffer are yanked back unchanged.
13604 2015-10-10  Mark Oteiza  <mvoteiza@udel.edu>
13606         * lisp/calendar/calendar.el: Display buffer before executing body.
13608         In each use of this macro, the modeline is derived from a window width
13609         calculation, which will be wrong if (display-buffer) splits the window
13610         horizontally.
13612 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
13614         Use ‘echo’ safely with ‘\’ or leading ‘-’
13616         POSIX says that ‘echo FOO’ produces implementation-defined output
13617         if FOO contains leading ‘-’, or ‘\’ anywhere, so don’t assume GNU
13618         behavior in that case.
13619         * Makefile.in (removenullpaths): Remove.
13620         (epaths-force): Rewrite to avoid the need for ‘echo’.
13621         (install-etc): Be clearer about escaping the shell metacharacters
13622         ‘\’ and ‘$’.
13623         * Makefile.in (install-arch-indep, install-etcdoc):
13624         * admin/charsets/mapconv, admin/merge-gnulib, admin/merge-pkg-config:
13625         * admin/quick-install-emacs, build-aux/gitlog-to-emacslog:
13626         * configure.ac, lib-src/rcs2log, make-dist:
13627         * src/Makefile.in (lisp.mk):
13628         Don’t assume ‘echo’ outputs ‘\’ and leading ‘-’ unscathed.
13629         For example, use ‘printf '%s\n' "$foo"’ rather than ‘echo "$foo"’
13630         if $foo can contain arbitrary characters.
13631         * lisp/Makefile.in (TAGS): Use ‘ls’, not ‘echo’, to avoid ‘\’ issues.
13632         * doc/lispref/two-volume.make (vol1.pdf):
13633         * test/etags/make-src/Makefile (web ftp publish):
13634         Use ‘printf’ rather than ‘echo -e’.
13636 2015-10-10  Kaushal Modi  <kaushal.modi@gmail.com>
13638         Allow numbers with different radixes to be yanked.
13640         * lisp/calc/calc-yank.el (calc-yank): Allow radixes besides the
13641         default base 10.
13643 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
13645         Improve CHECK_IMPURE and PURE_P speedup
13647         * src/data.c (Faset): Use XVECTOR and XSTRING rather than XPNTR.
13649 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
13651         Use events instead of chars to keep track of steps.
13653         * lisp/calc/calc-prog.el (calc-kbd-loop): Use events instead of chars
13654         to keep track of steps.
13656 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
13658         Fix --enable-gcc-warnings problem with older GCC
13660         * src/puresize.h: Add INLINE_HEADER_BEGIN, INLINE_HEADER_END.
13661         This is for building with --enable-gcc-warnings with
13662         GCC 4.6 through 5.0.
13664 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
13666         Fix vertical-motion in truncated lines that end in a stretch
13668         * src/indent.c (Fvertical_motion): Expect overshoot when point is
13669         beyond window margin and lines are truncated, even if we have a
13670         stretch at point.  (Bug#21468)
13672 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
13674         Avoid link-time errors due to inline functions
13676         * src/emacs.c: Include puresize.h, to avoid link-time errors in
13677         unoptimized builds due to PURE_P and CHECK_IMPURE, which are now
13678         inline functions.
13680 2015-10-10  Andreas Schwab  <schwab@linux-m68k.org>
13682         * src/data.c (Faset): Fix last change.
13684 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
13686         CHECK_IMPURE and PURE_P speedup
13688         * src/intervals.c (create_root_interval):
13689         Do CHECK_IMPURE only for strings; not needed for buffers.
13690         Prefer ! STRINGP to BUFFERP, for a tad more speed.
13691         * src/puresize.h (CHECK_IMPURE, PURE_P):
13692         Now inline functions instead of macros.
13693         (PURE_P): Don’t use XPNTR; that is now the caller’s responsibility.
13694         All callers changed.
13695         (CHECK_IMPURE): New argument PTR, to save us the work of running XPNTR.
13696         All callers changed.
13698 2015-10-09  Noah Friedman  <friedman@splode.com>
13700         (tramp-open-connection-setup-interactive-shell): Send -onlcr as well.
13702 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
13704         * lisp/progmodes/cc-mode.el (c-after-font-lock-init): Only *move*
13706         our after-change-function, rather than re-adding it if it was removed.
13708 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
13710         * lisp/cedet/ede: Silence some compiler warnings
13712         * lisp/cedet/ede.el: Require cl-lib.  Silence some compiler warnings.
13713         (ede-menu-obj-of-class-p): Use cl-some rather than `eval'.
13714         (ede-apply-object-keymap, ede-reset-all-buffers)
13715         (ede-auto-add-to-target): Use dolist.
13716         (ede-new, ede-flush-deleted-projects, ede-global-list-sanity-check):
13717         Use field names rather than initarg names in `oref'.
13718         (ede-load-project-file): Remove unused var `file'.
13719         (ede-map-any-target-p): Use cl-some rather than ede-map-targets.
13720         (ede-set): Remove unused var `a'.
13722         * lisp/cedet/ede/emacs.el: Silence some compiler warnings.
13723         (ede-project-autoload): Avoid the old-style "name" argument.
13724         (ede-emacs-find-matching-target): Use field names rather than initarg
13725         names in `oref'.
13727         * lisp/cedet/ede/linux.el: Silence some compiler warnings.
13728         (ede-linux-load, ede-project-autoload): Avoid the old-style
13729         "name" argument.
13730         (ede-linux-find-matching-target): Use field names rather than initarg
13731         names in `oref'.
13733 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
13735         * lisp/textmodes/reftex.el: Silence byte-compiler warnings.
13737 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
13739         * lisp/progmodes/prolog.el (prolog-smie-rules): Try and avoid
13740         indenting too far after ":-".
13742 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
13744         Update case-table and categories of recently added characters
13746         * lisp/international/characters.el: Update information about Latin
13747         Extended-C, Latin Extended-D, Latin Extended-E, Cyrillic Extended,
13748         Georgian, Glagolitic, Deseret, Old Hungarian, and Warang Citi
13749         blocks.  (Byug#21654)
13751 2015-10-09  Martin Rudalics  <rudalics@gmx.at>
13753         * src/frame.c (adjust_frame_size): In minibuffer-only windows
13754         don't count minibuffer height twice.  (Bug#21643)
13756 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
13758         Avoid inflooping in font-lock
13760         * lisp/font-lock.el (font-lock-extend-region-wholelines): Bind
13761         inhibit-field-text-motion around the call to
13762         line-beginning-position, to avoid inflooping.  (Bug#21615)
13764 2015-10-09  Tassilo Horn  <tsdh@gnu.org>
13766         Refactor duplicated code; ensure default is in completions
13768         * lisp/textmodes/reftex-cite.el (reftex--query-search-regexps):
13769         New function.
13770         (reftex-extract-bib-entries): Use it.
13771         (reftex-extract-bib-entries-from-thebibliography): Use it.
13773 2015-10-09  Vincent Belaïche  <vincentb1@users.sourceforge.net>
13775         * doc/misc/autotype.texi (Skeletons as Abbrevs): "if" -> "ifst"
13776         in the example.
13778 2015-10-08  Stefan Monnier  <monnier@iro.umontreal.ca>
13780         * lisp/calc/calc.el: Silence byte-compiler warnings.
13781         (calc-scan-for-dels): Use ignore-errors.
13782         (calc-dispatch, calc-do-dispatch): Make unused arg optional.
13783         (calc-read-key-sequence): Remove unused var `prompt2'.
13784         (calc-kill-stack-buffer): Remove unused var `buflist'.
13785         (calc): Remove unused var `oldbuf'.
13786         (calc-refresh): Use inhibit-read-only.
13787         (calc-can-abbrev-vectors): Declare.
13788         (calc-record): Remove unused var `mainbuf'.
13789         (math-sub-bignum): Remove unused var `sum'.
13790         (math-svo-c, math-svo-wid, math-svo-off): Declare.
13792 2015-10-08  Daiki Ueno  <ueno@gnu.org>
13794         Use g_clear_error instead of g_error_free
13796         * src/image.c: Define g_clear_error instead of g_error_free.
13797         (init_svg_functions): Resolve symbol g_clear_error instead of
13798         g_error_free.
13799         (svg_load_image): Use g_clear_error instead of g_error_free, to
13800         suppress GLib warnings when ERR is not set.  See bug#21641.
13802 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
13804         * src/image.c (image_size_error): Simplify.
13806 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
13808         Fix problems caught with --enable-gcc-warnings
13810         * src/image.c (lookup_rgb_color):
13811         * src/xfns.c (x_defined_color):
13812         * src/xterm.c (x_parse_color):
13813         Remove unused locals.
13815 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
13817         * lisp/calc/calc.el (calc-digit-start-entry): Fix typo.
13819 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
13821         Format initial input uniformly
13823         * lisp/calc/calc.el (calc-digit-start-entry): New function.
13824         * lisp/calc/calc.el (calcDigit-start):
13825         * lisp/calc/calc-aent.el (calc-alg-digit-entry):
13826         Use `calc-digit-start-entry' to format input.
13828 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
13830         Disable non-working pointerColor setting for X tooltip frame
13832         It generates a bunch of server traffic, but there's some bug wherein
13833         the new mouse cursor settings don't seem to get used.  In most
13834         situations the cursor isn't likely to be seen anyway, so it's not
13835         urgent to fix.
13837         * src/xfns.c (x_create_tip_frame): Don't set pointerColor.
13839 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
13841         Reduce some unnecessary X calls
13843         * src/xfns.c (x_real_pos_and_offsets): Remove a redundant XGetGeometry
13844         call.  If border width is wanted, get it from the XGetGeometry call
13845         instead of calling XGetWindowAttributes on the same window.  Skip some
13846         X calls if we've already detected an error from the X server.
13847         * src/xterm.c (x_wm_supports): Delete x_sync before x_had_errors_p.
13848         (handle_one_xevent): Delete XSync call before x_uncatch_errors.
13850 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
13852         Reduce color allocation/query traffic in the TrueColor case
13854         When working with an X visual with TrueColor class, pixel values can
13855         be generated from the RGB values according to mask value provided by
13856         the server on connection.  Some of the image-handling code was already
13857         doing this.
13859         * src/xterm.h (x_make_truecolor_pixel): New function; code taken from
13860         lookup_rgb_color.
13861         (x_mutable_colormap): New function.
13862         * src/image.c (lookup_rgb_color): Move pixel composition code to
13863         x_make_truecolor_pixel.
13864         (x_kill_gs_process): Call x_mutable_colormap.
13865         * src/xfaces.c (x_free_colors, x_free_dpy_colors): Call
13866         x_mutable_colormap.
13867         * src/xftfont.c (xftfont_get_colors): Call x_query_colors.
13868         * src/xterm.c (x_query_colors): For a TrueColor display, decompose the
13869         pixel value into RGB values directly, and don't send a request to the
13870         server.
13871         (x_alloc_nearest_color): For a TrueColor display, construct the pixel
13872         value with x_make_truecolor_pixel.
13873         (x_copy_color): For an immutable color map, just return the provided
13874         pixel value.
13876 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
13878         Cache XParseColor results in the X display info structure
13880         With repeated lookups of foreground and background colors for multiple
13881         faces per frame, we issue a lot of redundant color name lookups to the
13882         X server, waiting every time for the response.  On a remote network
13883         with, say, 30ms round-trip time, this can add nearly a full second to
13884         creation of a new frame.
13886         * src/gtkutil.c (xg_check_special_colors): Call x_parse_color.
13887         * src/image.c (get_spec_bg_or_alpha_as_argb):
13888         (xpm_init_color_cache, xpm_lookup_color):
13889         * src/xfns.c (x_defined_color):
13890         * src/xterm.c (x_parse_color): New function; caches color names not
13891         starting with "#" in the display-info structure.
13892         (x_delete_display): Delete the cache content.
13893         * src/xterm.h (struct color_name_cache_entry): New type.
13894         (x_parse_color): Declare.
13895         (struct x_display_info): Add a new field for the cache.
13897 2015-10-07  Stefan Monnier  <monnier@iro.umontreal.ca>
13899         * src/syntax.c (syms_of_syntax): Make syntax-propertize--done local.
13901 2015-10-07  Eli Zaretskii  <eliz@gnu.org>
13903         Fix segfault in image_size_error
13905         * src/image.c (image_size_error): Pass a Lisp string to
13906         image_error, not a C string.  (Bug#21641)
13908 2015-10-07  Simen Heggestøyl  <simenheg@gmail.com>
13910         Highlight CSS variable definitions
13912         * lisp/textmodes/css-mode.el (css-nmstart-re): Tweak regexp to accept
13913         CSS variables.  (Bug#21638)
13915 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
13917         * test/automated/tabulated-list-test.el: New file.
13918         Test bug#21639 and some basic functionality.
13920 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
13922         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-sort):
13923         Check if column can be sorted before trying.  (Bug#21639)
13925 2015-10-07  Nicolas Richard  <youngfrog@members.fsf.org>
13927         Add test for `self-insert-command' (bug#21633)
13929         * test/automated/cmds-tests.el: New file.
13931 2015-10-07  Martin Rudalics  <rudalics@gmx.at>
13933         * src/window.c (resize_frame_windows): Don't set root window's
13934         top position when resizing horizontally.
13936 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
13938         * lisp/progmodes/prog-mode.el (prettify-symbols-alist):
13939         Document more possible values.
13941 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
13943         * lisp/textmodes/tex-mode.el: Use lexical-binding.
13945 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
13947         * lisp/indent.el (indent--default-inside-comment): New function.
13948         (indent-for-tab-command): Use it for `noindent' indentation.
13950 2015-10-06  Paul Eggert  <eggert@cs.ucla.edu>
13952         Fix bug in GC_CHECK_MARKED_OBJECTS check
13954         * src/alloc.c (mark_object): Fix bug in checking code.
13955         When GC_CHECK_MARKED_OBJECTS is defined, the bug caused
13956         CHECK_ALLOCATED_AND_LIVE_SYMBOL to repeatedly do the
13957         CHECK_ALLOCATED and CHECK_LIVE tests for the first symbol in each
13958         bucket.  The bug did not affect behavior either in the normal case
13959         where GC_CHECK_MARKED_OBJECTS is not defined, or where Emacs does
13960         not have an internal error that a properly-written
13961         CHECK_ALLOCATED_AND_LIVE_SYMBOL would detect.
13963 2015-10-06  Tassilo Horn  <tsdh@gnu.org>
13965         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
13966         Add prettified version for \\Bbb{Q}.
13968 2015-10-06  Artur Malabarba  <bruce.connor.am@gmail.com>
13970         * test/automated/package-test.el (package-test-install-single):
13971         Add a test for bug#21625.
13973 2015-10-06  Aaron Ecay  <aaronecay@gmail.com>
13975         * lisp/emacs-lisp/package.el (package-install): Fix error when pkg is
13976           not a package-desc object.  Also clarify documentation.  (Bug#21625)
13978 2015-10-06  Eli Zaretskii  <eliz@gnu.org>
13980         Fix display of characters adjacent to ZWJ and ZWNJ
13982         * src/bidi.c (bidi_resolve_neutral): Treat all Bn (a.k.a. "control")
13983         characters the same as directional formatting controls.
13984         (bidi_level_of_next_char): Include all Bn characters in rule L1,
13985         as mandated by the UBA.
13987 2015-10-06  Andreas Schwab  <schwab@suse.de>
13989         * src/cmds.c (Fself_insert_command): Don't use XFASTINT on a negative
13990         number.  (Bug#21633)
13992 2015-10-05  Xue Fuqiao  <xfq.free@gmail.com>
13994         * doc/lispref/objects.texi (Window Type): Add a cross reference.
13996         * src/buffer.c (syms_of_buffer): Typo fix.  (Bug#21622)
13998 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
14000         * lisp/language/misc-lang.el (composition-function-table):
14001         Fix entries for Arabic and Syriac.
14003 2015-10-05  Damien Cassou  <damien@cassou.me>
14005         Add first unit tests for auth-source.el
14007         * test/automated/auth-source-tests.el: New file.
14009 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
14011         Remove redundant redisplay code
14013         * src/xdisp.c (redisplay_internal, try_cursor_movement)
14014         (try_window_reusing_current_matrix, try_window_id): Remove
14015         redundant restrictions on redisplay optimizations based on the
14016         frame's 'redisplay' flag.  See
14017         http://osdir.com/ml/general/2015-10/msg02110.html for the relevant
14018         discussions.
14020 2015-10-04  Stefan Monnier  <monnier@iro.umontreal.ca>
14022         * src/xdisp.c (windows_or_buffers_changed): Improve docstring.
14024 2015-10-04  Xue Fuqiao  <xfq.free@gmail.com>
14026         Update tutorials/TUTORIAL.cn
14028         * etc/tutorials/TUTORIAL.cn: Improve translation.
14030 2015-10-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14032         * src/macfont.m (macfont_encode_char, syms_of_macfont):
14033         Remove unused vars.
14035 2015-10-04  Stefan Merten  <stefan@merten-home.de>
14037         Pull in version numbers from rst.el upstream release.
14039         * lisp/textmodes/rst.el (rst-cvs-header, rst-svn-rev)
14040         (rst-svn-timestamp, rst-official-version)
14041         (rst-official-cvs-rev, rst-package-emacs-version-alist):
14042         Update version numbers.
14044 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
14046         * test/automated/coding-tests.el: New file.
14048 2015-10-04  Michael Albinus  <michael.albinus@gmx.de>
14050         Improve XEmacs compatibility of Tramp
14052         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
14053         Declare if it doesn't exist.
14054         (file-remote-p): Remove defalias, which was necessary for GNU Emacs 21.
14055         (redisplay): Make it an alias if it doesn't exist.
14057         * lisp/net/tramp.el (tramp-get-remote-tmpdir): Don't use
14058         `file-remote-p' (due to XEmacs compatibility).
14060         * lisp/net/trampver.el (locate-dominating-file)
14061         (tramp-compat-replace-regexp-in-string): Autoload.
14062         (tramp-repository-get-version): Do not dupe byte-compiler.
14064 2015-09-02  K. Handa  <handa@gnu.org>
14066         fix for the case that M17N_FLT_USE_NEW_FEATURE is not defined
14068         * src/ftfont.c (ftfont_drive_otf) [not M17N_FLT_USE_NEW_FEATURE]:
14069         Adjusted for the change of type of elements in the array
14070         MFLTGlyphString.glyphs.
14072 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
14073             Michael Heerdegen  <michael_heerdegen@web.de>
14075         shr: fix too long lines in rendered buffers (Bug#21012)
14077         * lisp/net/shr.el (shr-insert-document, shr-fill-text):
14078         Correct calculation of available width.
14079         (shr-find-fill-point): Don't overflow window edge if shr-kinsoku-shorten
14080         is nil.
14082 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
14084         Restore blank line before next section, erroneously erased
14085         in my previous commit
14087         * etc/compilation.txt (symbol ant): Add an additional trailing blank
14088         line to this section, so that there are two of them immediately before
14089         the next section.
14091 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
14093         Support MSW filename style for ant compilation error regexp
14095         * etc/compilation.txt (symbol ant):
14096         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
14097         Support MSW filename style.
14099 2015-10-03  Paul Eggert  <eggert@cs.ucla.edu>
14101         * nt/INSTALL: Minor spelling and quote fixes.
14103         * lisp/ibuffer.el: Fix docstring length (Bug#21541).
14105 2015-10-03  Simen Heggestøyl  <simenheg@gmail.com>
14107         Maintain ordering of JSON object keys by default
14109         * lisp/json.el (json-object-type): Mention order handling in doc-string.
14110         (json--plist-reverse): New utility function.
14111         (json-read-object): Maintain ordering for alists and plists.
14112         (json-pretty-print): Ensure that ordering is maintained.
14114         * test/automated/json-tests.el (test-json-plist-reverse): New test for
14115         `json--plist-reverse'.
14116         (json-read-simple-alist): Update test to accommodate for changes in
14117         `json-read-object'.
14119         * etc/NEWS: Document the new behavior of the pretty printing functions.
14121 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
14123         * src/coding.c (complement_process_encoding_system): Revert last change.
14125 2015-10-03  Ulf Jasper  <ulf.jasper@web.de>
14127         * admin/MAINTAINERS: Add entry for Ulf Jasper.
14129 2015-10-03  Xue Fuqiao  <xfq.free@gmail.com>
14131         Doc fix for `defmacro'
14133         * doc/lispref/objects.texi (Macro Type): `defmacro' is a macro now.
14135 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
14137         More validatation of coding systems
14139         * src/fileio.c (Finsert_file_contents): Remove redundant
14140         coding-system check.
14141         (choose_write_coding_system): Likewise.
14142         * src/coding.c (complement_process_encoding_system): Check argument
14143         for valid coding system.
14145 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
14147         Avoid crashes in coding_inherit_eol_type
14149         * src/coding.c (coding_inherit_eol_type): Check the validity of
14150         the arguments.  Suggested by Andreas Schwab <schwab@linux-m68k.org>.
14151         (Bug#21602)
14153 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
14155         More validatation of coding system in 'write-region'
14157         * src/coding.c (choose_write_coding_system): More validation of
14158         coding-system from various sources.  Suggested by Andreas Schwab
14159         <schwab@linux-m68k.org>.  (Bug#21602)
14161 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
14163         Avoid crashes due to invalid coding-system
14165         * src/fileio.c (choose_write_coding_system)
14166         (Finsert_file_contents): Check validity of coding-system-for-write
14167         and coding-system-for-read bound by the caller.  (Bug#21602)
14169 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
14171         Adapt to new prettify-symbols-unprettify-at-point default
14173         * etc/NEWS: Mention that unprettication of symbol at point is off
14174         by default.
14176 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
14178         Revert my two recent process.c changes
14180         Revert "Improve last commit to process.c" and "Remove callback-handled
14181         channels from Available set" because they did not fix bug#21313.
14183         This reverts commits bfa1aa8e2bdaf14adbbf1e9e824051d3f740694c and
14184         27f871907cc24f33a7d12ac3a4ab71a88f0bc554.
14186 2015-10-02  Markus Triska  <triska@metalevel.at>
14188         * lisp/progmodes/prolog.el: Update and extend operator table.
14189         (prolog-smie-grammar): Add multifile, public etc.
14191 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
14193         Allow autogen even when Git is not installed
14195         * autogen.sh: Test ‘git status’ before trying to use Git.
14197 2015-10-02  Stefan Monnier  <monnier@iro.umontreal.ca>
14199         * lisp/vc/vc-git.el (vc-git-region-history): Handle local changes.
14200         Adjust lto/lfrom when we have uncommitted changes.
14202 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
14204         Fix problems found by clang 3.5.0
14206         * src/cmds.c (Fdelete_char): Don’t assume XINT returns int.
14207         * src/font.c (font_parse_family_registry):
14208         Use &"str"[X] instead of "str"+X, to pacify clang -Wstring-plus-int.
14210 2015-10-02  Eli Zaretskii  <eliz@gnu.org>
14212         * nt/INSTALL: Update instructions for running autogen.sh.
14214         * nt/INSTALL: Point to ezwinports for libXpm binaries.
14216 2015-10-02  Daniel Colascione  <dancol@dancol.org>
14218         Fix winner in cl-lib not loaded case
14220         * lisp/winner.el (winner-change-fun): Don't use cl-lib functions
14221         without requiring CL
14223 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
14225         Fix a few problems with directed quotes
14227         This is in response to a problem report by Kaushal Modi in:
14228         http://bugs.gnu.org/21588#25
14229         * lisp/cedet/mode-local.el (describe-mode-local-overload):
14230         * lisp/emacs-lisp/bytecomp.el (byte-compile-fix-header):
14231         * lisp/info-xref.el (info-xref-check-all-custom):
14232         * lisp/mail/emacsbug.el (report-emacs-bug-hook):
14233         Prefer directed to undirected single quotes in diagnostics.
14235 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
14237         Revert "Attempt to fix slow redisplay caused by last changes"
14239         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
14240         (try_cursor_movement): Don't relax requirements for redisplay
14241         optimizations for the selected frame.  (Bug#21597)
14243         This reverts commit c4c1fb97727ff52bcfa83ad5ed94a64a93d12e59.
14245 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
14247         Fix slow redisplay when daemon frame exists
14249         * src/xdisp.c (redisplay_internal): Don't consider daemon frames
14250         when looking for frames that need to be redisplayed.  (Bug#21597)
14252 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
14254         Attempt to fix slow redisplay caused by last changes
14256         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
14257         (try_cursor_movement): Relax requirements for redisplay
14258         optimizations for the selected frame.  (Bug#21597)
14260 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
14262         * src/dired.c (Ffile_name_completion, Ffile_name_all_completions):
14263         Improve doc string.
14265 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
14267         * lisp/minibuffer.el (minibuffer-completion-help):
14268         Set default base-size, in case completion table does not set it.
14270 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
14272         Fix GUD display of GDB output with non-ASCII text
14274         * lisp/progmodes/gdb-mi.el (gdb-mi-decode-strings): New defcustom.
14275         (gdb-mi-decode): New function.
14276         (gud-gdbmi-marker-filter): If gdb-mi-decode-strings is non-nil,
14277         decode octal escapes in GDB output.  (Bug#21572)
14279 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
14281         * nt/INSTALL: Document where to find XPM support files.
14283 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
14285         Un- and re-prettification are not exclusive
14287         * lisp/progmodes/prog-mode.el (prettify-symbols--post-command-hook):
14288         Re-apply prettification to previous symbol also when unprettifying
14289         next one.
14291 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
14293         Don't unprettify symbol at point by default
14295         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
14296         Default to disabled (nil).
14298 2015-09-30  Artur Malabarba  <bruce.connor.am@gmail.com>
14300         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
14301         Support unprettifying when point is after a symbol.
14303         * etc/NEWS: Document `prettify-symbols-unprettify-at-point'.
14305 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
14307         Avoid assertion violations in push_prefix_prop
14309         * src/xdisp.c (push_prefix_prop): Avoid assertion violations when
14310         a line that has a line-prefix defined starts with an image.  (Bug#21428)
14312 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
14314         Disable some display optimizations when frames need redisplay
14316         These optimizations were previously disabled by the
14317         windows_or_buffers_changed flag, which now is not set
14318         when only some frames need to be redrawn.
14319         * src/xdisp.c (redisplay_internal): Redisplay any frame whose
14320         'redisplay' flag is set.
14321         (try_window_reusing_current_matrix, try_window_id)
14322         (try_cursor_movement): Disable these optimizations when the
14323         frame's 'redisplay' flag is set.
14325 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
14327         Don't modify buffer by unprettification
14329         * lisp/progmodes/prog-mode.el (prettify-symbols--compose-symbol):
14330         (prettify-symbols--post-command-hook, prettify-symbols-mode): Don't
14331         modify buffer when setting/removing custom prettify-symbols-start/end
14332         text properties.  Add them to font-lock-extra-managed-props, too.
14334 2015-09-30  Stefan Monnier  <monnier@iro.umontreal.ca>
14336         Try to avoid redisplaying all frames when creating a new one
14338         * src/xfns.c (x_set_menu_bar_lines, x_change_tool_bar_height):
14339         * src/xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
14340         (Finternal_set_lisp_face_attribute, update_face_from_frame_parameter):
14341         * src/frame.c (x_set_screen_gamma): Set the specific frame's
14342         `redisplay' bit rather than windows_or_buffers_changed.
14344         * src/window.c (apply_window_adjustment): Remove redundant setting of
14345         windows_or_buffers_changed.
14347         * src/xdisp.c (redisplay_internal): Set the specific frame's
14348         `redisplay' bit rather than update_mode_lines in response to
14349         cursor_type_changed.
14350         (syms_of_xdisp): Use hash-tables for redisplay_*_cause tables.
14351         (AINC): Adjust accordingly.
14353 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
14355         Implement unprettification of symbol at point
14357         * lisp/progmodes/prog-mode.el: Implement feature for unprettifying the
14358         symbol at point.
14359         (prettify-symbols--current-symbol-bounds): New variable.
14360         (prettify-symbols--post-command-hook): New function.
14361         (prettify-symbols-unprettify-at-point): New defcustom.
14362         (prettify-symbols-mode): Use it.
14363         (prettify-symbols--compose-symbol): Use them.
14365 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14367         * src/macfont.m (mac_font_descriptor_supports_languages):
14368         Regard "zh" as synonym of "zh-Hans".
14370 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14372         Work around crash when displaying etc/HELLO on OS X 10.11
14374         * src/macfont.m (mac_font_get_weight)
14375         (mac_font_descriptor_get_adjusted_weight): New functions.
14376         (macfont_store_descriptor_attributes): Adjust weight.
14378 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14380         * src/macfont.m: Fix compilation with USE_CT_GLYPH_INFO.
14382 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
14384         * lisp/arc-mode.el (archive-rar-summarize): Better alignment
14385         of the columns.
14387 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
14389         Use unar and lsar to handle RAR archives in arc-mode
14391         * lisp/arc-mode.el (archive-rar-extract, archive-extract-by-file): Rely
14392         on unar and lsar instead of unrar-free for RAR archives (bug#17663).
14394 2015-09-30  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
14396         Clarify :create in auth-source's docs
14398         * lisp/gnus/auth-source.el (auth-source-search):
14399         Clarify :create's meaning.
14401 2015-09-30  Phil Sainty  <psainty@orcon.net.nz>
14403         Avoid empty -path arguments in rgrep
14405         * lisp/progmodes/grep.el (rgrep-default-command): Remove nil from
14406         the list produced according to grep-find-ignored-directories,
14407         before passing it to Find/Grep invocation.  (Bug#21548)
14409 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
14411         Clarify documentation of pos-visible-in-window-p
14413         * src/window.c (Fpos_visible_in_window_p): Clarify the meaning of
14414         t for POS.  See
14415         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg01040.html
14416         for the original report.
14418         * doc/lispref/windows.texi (Window Start and End): Clarify the
14419         meaning of t for the POSITION argument of pos-visible-in-window-p.
14421 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
14423         * lisp/progmodes/prolog.el: Fix various indentation cases.
14424         (prolog-operator-chars): New const (add \\).
14425         (prolog-smie-forward-token, prolog-smie-backward-token): Use it.
14426         (prolog-smie-rules): Add rules according to bug#21526.
14428 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
14430         * lisp/progmodes/sh-script.el: Old "dumb" continued line indent.
14431         (sh-indent-after-continuation): Add new value `always' (bug#17620)
14432         (sh-smie-sh-rules): Remove old handling of continued lines.
14433         (sh-smie--indent-continuation): New function.
14434         (sh-set-shell): Use it.
14436 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
14438         * lisp/progmodes/octave.el: Use grammar more; Handle enumeration fun.
14439         Remove redundant :group keyword args.
14440         (octave-begin-keywords, octave-else-keywords, octave-end-keywords):
14441         Remove variables.
14442         (octave-operator-table, octave-smie-bnf-table): Use let-when-compile to
14443         turn them into compile-time variables.
14444         Auto-generate the "foo ... end" rules from the "foo ... endfoo" rules.
14445         Add rules for break, continue, return, global, and persistent.
14446         Refine the rule for "until".
14447         (octave-smie--funcall-p, octave-smie--end-index-p)
14448         (octave-smie--in-parens-p): New functions.
14449         (octave-smie-backward-token, octave-smie-forward-token): Use them to
14450         distinguish the "enumeration" function and the "end" index from
14451         their corresponding keywords.
14452         (octave--block-offset-keywords): New constant.
14453         (octave-smie-rules): Use it.  Adjust rules for new global/persistent
14454         parsing.
14455         (octave-reserved-words): Redefine using octave-smie-grammar.
14456         (octave-font-lock-keywords): Use octave-smie--funcall-p and
14457         octave-smie--end-index-p.
14459 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
14461         * lisp/emacs-lisp/lisp-mode.el (let-when-compile): Work like let*.
14463 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
14465         * nt/INSTALL: Remove references to GTK site.
14466         That site no longer offers Windows downloads.
14468 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
14470         * nt/INSTALL: Add instructions for installing Git.
14472 2015-09-29  Katsumi Yamaoka  <yamaoka@jpl.org>
14474         * lisp/net/shr.el (shr-colorize-region): Allow 88-color tty to
14475         use colors.  Suggested by Eli Zaretskii.
14477 2015-09-28  Katsumi Yamaoka  <yamaoka@jpl.org>
14479         * lisp/net/shr.el (shr-colorize-region): Don't do it on a system
14480         not supporting 256 above colors (bug#21557).
14482 2015-09-28  Dmitry Gutov  <dgutov@yandex.ru>
14484         Revert "Don't rely on defaults in decoding UTF-8 encoded Lisp files"
14486         This reverts commit db828f62f6f17414fbbc3206dac123dc73dd6055.
14488 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
14490         Add documentation for seq.el
14492         * doc/lispref/sequences.texi: Add documentation regarding extending
14493         seq.el, as well as missing documentation for seq-elt, seq-length, seq-p,
14494         seq-do and seq-map.
14496 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
14498         Better documentation for seq-some
14500         * doc/lispref/sequences.texi:
14501         * lisp/emacs-lisp/seq.el: Update the documentation of seq-some to
14502         guarantee that the returned value is the first non-nil value that
14503         resulted from applying the predicate.
14505 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
14507         * lisp/arc-mode.el: Sharp-quote function arguments.
14509 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
14511         Avoid redisplay error in ediff-regions-wordwise
14513         * lisp/vc/ediff-util.el
14514         (ediff-clone-buffer-for-region-comparison): Make sure the mark is
14515         set before activating it.  (Bug#21567)
14517 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
14519         Another attempt to fix crashes due to prematurely freed faces
14521         * src/xdisp.c (redisplay_internal): Inhibit freeing of realized
14522         faces for as long as we might have desired matrices that reference
14523         those faces.  (Bug#21428)
14525 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
14527         Add auctex development list email address
14529 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
14531         * admin/MAINTAINERS: Add entries for AUCTeX team and myself.
14533 2015-09-28  Arash Esbati  <esbati@gmx.de>  (tiny change)
14535         Improve wrapfig package support and caption parsing
14537         * lisp/textmodes/reftex-vars.el (reftex-label-alist-builtin):
14538         Correct description string and add wraptable environment.
14539         (reftex-default-context-regexps): Improve caption regexp.
14541 2015-09-28  Anders Lindgren  <andlind@gmail.com>
14543         Respect value of frame_resize_pixelwise when handling fullscreen state
14545         * src/nsterm.m (handleFS): Respect frame_resize_pixelwise when
14546         setting size increments.
14548 2015-09-27  Michael Albinus  <michael.albinus@gmx.de>
14550         * src/gfilenotify.c (Fgfile_add_watch): Cleanup temporary variable.
14552 2015-09-27  Simen Heggestøyl  <simenheg@gmail.com>
14554         Add prettify-symbols-alist for js-mode
14556         * lisp/progmodes/js.el (js--prettify-symbols-alist): New defconst.
14557         (js-mode): Use it.
14559 2015-09-27  Eli Zaretskii  <eliz@gnu.org>
14561         * nt/subdirs.el: File deleted (no longer used).
14563 2015-09-26  Alan Mackenzie  <acm@muc.de>
14565         Fix follow-scroll-up/down, making them replacements for scroll-up/down
14567         1. Allow point to move between follow windows in scroll operations.
14568         2. Fix bug where `right-char' just before EOB caused spurious scrolling,
14569         when EOB was isolated in the last follow window.
14571         * lisp/follow.el (follow-fixed-window): New variable.
14572         (follow-get-scrolled-point): New function.
14573         (follow-scrol-up, follow-scroll-down): Add autoload cookies.
14574         Reformulate the code.  Put `scroll-command' properties on the functions.
14575         Correct minor errors in ...-down's doc string and code.
14576         (follow-calc-win-end): Amend incomplete doc string.  Use
14577         `pos-visible-in-window-p' to check whether EOB is in the window.
14578         (follow-estimate-first-window-start): Correct an off-by-1 error.
14579         (follow-adjust-window): Add handling for explicit scrolling operations.
14581 2015-09-26  Paul Eggert  <eggert@cs.ucla.edu>
14583         * admin/MAINTAINERS: Add self, plus list some more files
14584         sans maintaners.
14586 2015-09-26  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
14588         New DWIM commands for changing letter-case
14590         * lisp/simple.el (upcase-dwim, downcase-dwim, capitalize-dwim):
14591         New functions.  (Bug#21501)
14593 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
14595         * etc/PROBLEMS: Document problems with pasting on MS-Windows.
14597 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
14599         Make face realization be more frame-specific
14601         * src/frame.h (struct f): New flag face_change.
14602         * src/xfaces.c (Finternal_make_lisp_face)
14603         (Finternal_copy_lisp_face, Finternal_set_lisp_face_attribute)
14604         (update_face_from_frame_parameter): Set the face_change flag only
14605         for the frame whose faces are affected.
14606         * src/xdisp.c (init_iterator): If a frame's face_change flag is
14607         set, free faces only on that frame.
14608         (redisplay_internal): Disable "display optimization 1" if the
14609         frame's face_change flag is set.
14610         (redisplay_window): Don't allow skipping a window's redisplay if
14611         its frame's face_change flag is set.
14612         * src/frame.c (x_set_screen_gamma): Instead of calling
14613         Fclear_face_cache, call clear_face_cache and set
14614         windows_or_buffers_changed to a non-zero value.  This avoids
14615         setting the global face_change flag that triggers face realization
14616         on all frames and thorough redisplay of all of them.
14618         * lisp/term/tty-colors.el (tty-register-default-colors): Don't
14619         clear face cache if the selected frame is a GUI frame.
14621 2015-09-26  Tassilo Horn  <tsdh@gnu.org>
14623         Remove font-latex specific check
14625         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
14626         Use syntax-ppss data to identify verbatim contents.
14628 2015-09-25  Tassilo Horn  <tsdh@gnu.org>
14630         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
14631         Fix some false negatives.
14633 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
14635         Reorder Windows version in Emacs manifests
14637         * nt/emacs-x64.manifest:
14638         * nt/emacs-x86.manifest: Reorder Windows version from lowest to
14639         highest.
14641 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
14643         Update Emacs manifest files for Windows 10
14645         * nt/emacs-x86.manifest:
14646         * nt/emacs-x64.manifest: Declare compatibility with Windows 10.
14648 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
14650         Avoid non-ASCII decoding errors in C src files
14652         * src/nsterm.m:
14653         * src/lisp.h:
14654         * src/editfns.c:
14655         * src/doprnt.c: Add 'coding' cookies -- these files include
14656         Unicode characters and should be decoded as UTF-8.
14658 2015-09-25  Alan Mackenzie  <acm@muc.de>
14660         Resurrect edebug-set-initial-mode, repurposing it to set the global mode
14662         * lisp/emacs-lisp/edebug.el (edebug-initial-mode-alist): Uncomment, and
14663         amend to match current modes and functions.
14664         (edebug-set-initial-mode): Uncomment and change from setting a defun's
14665         `edebug-initial-mode''s property to setting the variable
14666         `edebug-initial-mode'.
14667         (top level): Create new binding C-x C-a C-m for
14668         `edebug-set-initial-mode'.
14670         * doc/lispref/edebug.texi (Edebug Execution Modes): Document
14671         `edebug-set-initial-mode' and its new key binding.
14672         (Edebug Options): Mention the new command in the pertinent place.
14674         * etc/NEWS: Write entry for this change.
14676 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
14678         Avoid non-ASCII decoding errors in Texinfo files
14680         * doc/misc/tramp.texi:
14681         * doc/lispref/strings.texi:
14682         * doc/lispref/positions.texi:
14683         * doc/lispref/help.texi:
14684         * doc/lispref/functions.texi:
14685         * doc/lispintro/emacs-lisp-intro.texi:
14686         * doc/emacs/text.texi:
14687         * doc/emacs/modes.texi:
14688         * doc/emacs/mini.texi:
14689         * doc/emacs/display.texi:
14690         * doc/emacs/custom.texi:
14691         * doc/emacs/basic.texi: Add 'coding' cookies -- these files use
14692         Unicode characters and should be decoded as UTF-8.
14693         * doc/lispref/frames.texi (Size Parameters): Don't use a non-ASCII
14694         apostrophe unnecessarily.
14696 2015-09-25  Paul Eggert  <eggert@cs.ucla.edu>
14698         Merge from gnulib
14700         This incorporates:
14701         2015-09-25 c-ctype: rewrite to use inline functions
14702         2015-09-24 maint: add coding cookies to non-ASCII sources
14703         2015-09-24 gitlog-to-changelog: trim only trailing whitespaces
14704         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
14705         * lib/acl-internal.c, lib/acl-internal.h, lib/c-ctype.c:
14706         * lib/c-ctype.h, lib/get-permissions.c, lib/qcopy-acl.c:
14707         * lib/set-permissions.c:
14708         Copy from gnulib.
14710 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
14712         Update publicsuffix.txt from upstream
14714         * etc/publicsuffix.txt: Update from
14715         https://publicsuffix.org/list/effective_tld_names.dat
14716         dated 2015-09-24 17:29:21 UTC.
14718 2015-09-24  Eli Zaretskii  <eliz@gnu.org>
14720         Prevent timers from messing up TTY menus
14722         * src/term.c (tty_menu_activate): Inhibit redisplay for as long as
14723         the TTY menu is open.  (Bug#21530)
14725 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
14727         No need to mention K&R C in c-mode intro
14729 2015-09-24  Stefan Monnier  <monnier@iro.umontreal.ca>
14731         Fix recent bootstrap problems
14733         * src/syntax.c (parse_sexp_propertize): Fix last fix.
14734         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): Fix paren typo.
14735         * lisp/emacs-lisp/lisp-mode.el: Require cl-lib for cl-progv.
14737 2015-09-24  Michael Albinus  <michael.albinus@gmx.de>
14739         * src/gfilenotify.c (Fgfile_add_watch): Decrease polling rate.
14741 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
14743         Properly quote nested xml comments (Bug#6267) (Bug#20001)
14745         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): New function.
14746         (nxml-mode): Set comment-quote-nested-function.
14748 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
14750         Allow major-modes full control over quoting nested comments
14752         * lisp/newcomment.el (comment-quote-nested-function): New variable.
14753         (comment-quote-nested-default): New function.
14754         (comment-quote-nested): Use `comment-quote-nested-function'.
14756 2015-09-23  Paul Eggert  <eggert@cs.ucla.edu>
14758         Prefer CALLN in a few more places
14760         * src/macfont.m (macfont_set_family_cache):
14761         * src/nsterm.m (append2):
14762         * src/xterm.c (x_cr_export_frames):
14763         Prefer CALLN to allocating the arg arrays by hand.
14765 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
14767         Adapt file-notify-test02-events test case
14769         * test/automated/file-notify-tests.el (file-notify-test02-events):
14770         Create a new watch for every test.
14772 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
14774         Continue gfilenotify.c implementation of missing parts
14776         * lisp/filenotify.el (file-notify-add-watch): Append `flags' to
14777         `gfile-add-watch' call.
14778         (file-notify-rm-watch): Modify `file-notify-descriptors' only
14779         after calling the low level functions.
14781         * src/gfilenotify.c (dir_monitor_callback): Check, whether
14782         event_type is expected.
14783         (Fgfile_add_watch): Allow also `change'and `attribute-change' for FLAGS.
14784         (Fgfile_rm_watch): Fix typo.
14785         (syms_of_gfilenotify): Declare Qchange and Qattribute_change.
14787 2015-09-23  Stefan Monnier  <monnier@iro.umontreal.ca>
14789         * src/syntax.c (parse_sexp_propertize): Handle spurious
14790         e_property_truncated flag.
14791         (update_syntax_table_forward): Remove invalid assertion.
14793 2015-09-23  Eli Zaretskii  <eliz@gnu.org>
14795         * src/xdisp.c (produce_stretch_glyph): Support ':relative-width'
14796         space display spec on text-mode terminals, by calling
14797         PRODUCE_GLYPHS instead of x_produce_glyphs.  Remove the
14798         HAVE_WINDOW_SYSTEM guards from the supporting code, as well as the
14799         test for a GUI frame.
14801 2015-09-23  Oleh Krehel  <ohwoeowho@gmail.com>
14803         Move let-when-compile to lisp-mode.el
14805         This fixes the bootstrapping problem of `let-when-compile' using
14806         `cl-progv' while being in subr.el (i.e. before cl stuff was loaded).
14808 2015-09-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
14810         * lisp/url/url-http.el (url-http-parse-headers): Do not
14811         automatically include Authorization header in redirect.
14812         (Bug#21350)
14814 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
14816         Clarify documentation of ':relative-width'
14818         * doc/lispref/display.texi (Specified Space): Document that
14819         ':relative-width' is only supported on GUI frames.
14821 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
14823         Fix 'current-column' in presence of :relative-width
14825         * src/indent.c (check_display_width): Support ':relative-width'
14826         in a display spec that specifies a stretch glyph.  (Bug#21533)
14828 2015-09-22  Ken Manheimer  <ken.manheimer@gmail.com>
14830         Reformat the pdbtrack remote-file fix ChangeLog.2 entry
14832         ... to conform better to CONTRIBUTE guidelines.
14834 2015-09-22  Stefan Monnier  <monnier@iro.umontreal.ca>
14836         * lisp/progmodes/prolog.el: Fix indentation of empty line
14838         * lisp/emacs-lisp/smie.el (smie-rules-function): Document new
14839         `empty-line-token' element.
14840         (smie-indent-empty-line): New function.
14841         (smie-indent-functions): Add it.
14843         * lisp/progmodes/prolog.el (prolog-smie-rules): Fix :list-intro
14844         behavior and use the new `empty-line-token' element (bug#21526).
14845         (prolog-mode-variables): Fix comment-start-skip setting to match
14846         comment-start.
14848         * test/indent/prolog.prolog: Add nested indentation tests.
14850         * lisp/newcomment.el (comment-normalize-vars): Fix default value of
14851         comment-start-skip not to misuse submatch 1.
14853 2015-09-22  Alan Mackenzie  <acm@muc.de>
14855         Make description of `edebug-initial-mode' user friendly
14857         Fixes bug#21365.
14859         * doc/lispref/edebug.texi (Edebug Execution Modes): Change the
14860         description of `edebug-initial-mode' from that of its implementation
14861         to that of its visual effect and use.  Move the paragraph higher up.
14863 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
14865         lisp/progmodes/gud.el (gud-format-command): Fix last commit
14867         * lisp/progmodes/gud.el (gud-format-command): Don't use Tramp internal
14868         functions 'tramp-file-name-localname' and 'tramp-dissect-file-name'.
14870 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
14872         Improve last commit to process.c
14874 2015-09-22  Michael Albinus  <michael.albinus@gmx.de>
14876         Implement gfile-valid-p
14878         * lisp/filenotify.el (file-notify-callback): Fix typo.
14879         (gfile-valid-p): Remove defalias.
14881         * src/gfilenotify.c (dir_monitor_callback): Cancel the monitor if
14882         the file or directory to be watched is deleted.
14883         (Fgfile_add_watch): Make watch_object a triple.
14884         (Fgfile_rm_watch): Check, whether watch is cancelled already.
14885         (Fgfile_valid_p): New defun.
14886         (syms_of_gfilenotify): Declare Sgfile_valid_p.
14888 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
14890         Remove callback-handled channels from Available set
14892         * src/process.c (wait_reading_process_output): Remove channel from
14893         Available set if it is handled by a callback, e.g., dbus or
14894         inotify (bug#21313).
14896 2015-09-21  Mark Oteiza  <mvoteiza@udel.edu>
14898         Use lunate epsilon for TeX \epsilon
14900         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
14901         Add \varepsilon using GREEK SMALL LETTER EPSILON, and change
14902         \epsilon to use GREEK LUNATE EPSILON SYMBOL
14904 2015-09-21  Stefan Monnier  <monnier@iro.umontreal.ca>
14906         * lisp/progmodes/prolog.el: Fix nested electric if-then-else
14908         * lisp/progmodes/prolog.el (prolog-find-unmatched-paren): Use innermost
14909         rather than outermost paren (bug#21526).
14911 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
14913         Improve git diff hunk headers for .el, .texi
14915         Problem reported by Alan Mackenzie in:
14916         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00826.html
14917         * .gitattributes (*.el, *.texi): New patterns.
14918         * autogen.sh: Configure diff.elisp.xfuncname and
14919         diff.texinfo.xfuncname if using Git.
14921 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
14923         Don't rely on defaults in decoding UTF-8 encoded Lisp files
14925         * lisp/replace.el:
14926         * lisp/textmodes/rst.el:
14927         * lisp/whitespace.el: Add an explicit UTF-8 encoding tag.
14929 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
14931         Clarify or replace a few \u escapes
14933         * doc/lispref/nonascii.texi (Character Properties)
14934         More-detailed commentary for \u escapes.
14935         * lisp/progmodes/python.el (python--prettify-symbols-alist):
14936         * lisp/replace.el (query-replace-from-to-separator):
14937         * lisp/textmodes/rst.el (rst-bullets, rst-re-alist-def)
14938         (rst-mode-syntax-table):
14939         * lisp/whitespace.el (whitespace-display-mappings):
14940         Prefer actual character to \u escape when this makes the code
14941         easier to follow in the usual case where Unicode chars can be
14942         displayed.
14944 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
14946         Pacify GCC -Wmaybe-uninitialized in xdisp.c
14948         * src/xdisp.c (face_before_or_after_it_pos): Use do-while rather
14949         than while loop to avoid GCC -Wmaybe-uninitialized diagnostic with
14950         charpos.  The loop should always execute at least once anyway.
14952 2015-09-21  Tassilo Horn  <tsdh@gnu.org>
14954         Signal error on invalid regexp
14956         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
14957         Signal an error when the user tries searching with a regexp
14958         matching the empty string.
14960 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
14962         Another fix of file-notify-tests for w32notify
14964         * test/automated/file-notify-tests.el (file-notify-test02-events):
14965         Further adaptation for w32notify: reduce the number of expected
14966         'changed' events.  (Bug#21435)
14968 2015-09-21  Michael Albinus  <michael.albinus@gmx.de>
14970         Adapt tests and manual for w32notify
14972         * doc/lispref/os.texi (File Notifications): w32notify does not
14973         send `attribute-changed' events.
14975         * test/automated/file-notify-tests.el (file-notify--test-with-events):
14976         Simplify parameters.  Adapt all callees.
14977         (file-notify-test02-events): w32notify does not send
14978         `attribute-changed' events.
14979         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
14980         Do not skip in case of w32notify.  Simply ignore this part of the test.
14982 2015-09-21  Dima Kogan  <dima@secretsauce.net>
14984         Fix setting breakpoints when remote-debugging
14986         * lisp/progmodes/gud.el (gud-format-command): Send localized file
14987         names to the debugger running on the remote.  (Bug#13304)
14989 2015-09-21  Nicolas Petton  <nicolas@petton.fr>
14991         Better docstring and parameter name for seq-find
14993         * lisp/emacs-lisp/seq.el (seq-find): Improve the docstring and rename
14994         the parameter `sentinel' to `default'.
14996         * doc/lispref/sequences.texi (Sequence Functions): Update the
14997           documentation for `seq-find' accordingly.
14999 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
15001         Avoid infinite recursion while displaying box face
15003         * src/xdisp.c (face_before_or_after_it_pos): Fix calculation of
15004         the previous string/buffer character position under bidi
15005         iteration.  (Bug#21428)
15007 2015-09-21  Anders Lindgren  <andlind@gmail.com>
15009         Keep upper edge unchanged when changing size of NS frame
15011         * src/nsterm.m (x_set_window_size): Keep upper frame edge unchanged
15012         (Bug#21415).
15014 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
15016         * lisp/progmodes/prolog.el: Improve handling of if/then/else.
15017         (prolog-smie-rules): Accommodate standard if/then/else special
15018         indentation.
15019         (prolog-mode): Add . to electric-indent-chars.
15020         (prolog-electric--if-then-else): Re-indent the line before adding space
15021         after the new char (bug#21526).
15023 2015-09-20  Mark Oteiza  <mvoteiza@udel.edu>
15025         Add prettify symbols to python-mode
15027         * lisp/progmodes/python.el (python-prettify-symbols-alist):
15028         New variable.
15029         (python-mode): Use it
15031 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
15033         * lisp/emacs-lisp/syntax.el (syntax-begin-function): Make obsolete.
15035 2015-09-20  Jostein Kjønigsen  <jostein@secure.kjonigsen.net>  (tiny change)
15037         (compilation-error-regexp-alist-alist): Tone down guile-file
15039         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
15040         Make guile-file a bit less enthusiastic (bug#21496).
15042 2015-09-20  Drew Csillag  <drew@thecsillags.com>
15044         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords):
15045         Fix m4_* highlighting.
15047         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords): Fix recognition
15048         of commands when they have a "m4_" prefix.
15050 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
15052         '.' -> `.' in doc string
15054         * lisp/emacs-lisp/timer.el (run-at-time): In doc string, quote
15055         individual chars with grave quotes instead of straight quotes, as
15056         this works better when they are translated to curved quotes.
15058 2015-09-20  Michael Albinus  <michael.albinus@gmx.de>
15060         Improve file notifications, especially for Tramp
15062         * doc/lispref/files.texi (Magic File Names):
15063         Mention `file-notify-valid-p'.
15065         * doc/lispref/os.texi (File Notifications):
15066         Describe `file-notify-valid-p'.
15068         * etc/NEWS: Add `file-notify-valid-p'.
15070         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
15071         Improve implementation.
15072         (tramp-gvfs-monitor-file-process-filter): Rename from
15073         `tramp-gvfs-file-gvfs-monitor-file-process-filter'.  Delete
15074         process if appropriate.
15076         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
15077         Improve implementation.
15078         (tramp-sh-gvfs-monitor-dir-process-filter): Rename from
15079         `tramp-sh-file-gvfs-monitor-dir-process-filter'.  Delete process
15080         if appropriate.
15081         (tramp-sh-inotifywait-process-filter): Rename from
15082         `tramp-sh-file-inotifywait-process-filter'.  Delete process if
15083         appropriate.
15085         * lisp/net/tramp.el (tramp-handle-file-notify-rm-watch):
15086         Use `delete-process'.
15087         (tramp-handle-file-notify-valid-p): Check also, that file or
15088         directory to be watched still exists.
15090         * test/automated/file-notify-tests.el (file-notify--test-timeout):
15091         New defun.  Use it at all places a timeout is needed.
15092         (file-notify--test-cleanup): Delete directories recursively.
15093         Cleanup also Tramp connections.
15094         (file-notify-test02-events): Add tests for `attribute-change'.
15095         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
15096         Add tests for `file-notify-rm-watch'.
15098 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
15100         Use %s to format strings instead of splicing them
15102         If FOO might contain quotes that are part of a file or variable
15103         name, the quotes should not be translated when showing FOO’s name
15104         in a diagnostic.  So, for example, (message (concat (FOO ": bar")))
15105         is not quite right, as it would translate FOO’s quotes.
15106         Change it to (message "%s: bar" FOO) instead.
15107         * lisp/allout.el (allout-process-exposed):
15108         * lisp/calc/calc-ext.el (calc-do-prefix-help):
15109         * lisp/calc/calc-store.el (calc-store-into):
15110         * lisp/calendar/todo-mode.el (todo-category-completions):
15111         * lisp/cedet/semantic/complete.el (semantic-completion-message):
15112         * lisp/org/ob-latex.el (convert-pdf):
15113         * lisp/org/org-crypt.el (org-crypt-check-auto-save):
15114         * lisp/org/ox-latex.el (org-latex-compile):
15115         * lisp/org/ox-man.el (org-man-compile):
15116         * lisp/org/ox-odt.el (org-odt--export-wrap):
15117         * lisp/org/ox-texinfo.el (org-texinfo-compile):
15118         * lisp/progmodes/ruby-mode.el (ruby-in-ppss-context-p):
15119         * lisp/progmodes/verilog-mode.el (verilog-batch-execute-func)
15120         (verilog-signals-combine-bus, verilog-read-defines)
15121         (verilog-getopt-file, verilog-expand-dirnames)
15122         (verilog-modi-lookup, verilog-modi-modport-lookup-one):
15123         * lisp/term/ns-win.el (ns-spi-service-call):
15124         Use %s to avoid translating quotes of file names etc. in diagnostics.
15126 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
15128         * lisp/progmodes/js.el (js--syntax-begin-function): Remove.
15129         (js-mode): Don't set syntax-begin-function.
15131 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
15133         * lisp/font-lock.el (font-lock-compile-keywords): Don't assume
15134         syntax-begin-function is a symbol.
15136 2015-09-20  Eli Zaretskii  <eliz@gnu.org>
15138         Improve documentation of 'run-at-time'
15139         * lisp/emacs-lisp/timer.el (run-at-time): Improve the doc string.
15140         In particular, don't refer to 'diary-entry-time', because it is
15141         unavailable until diary-lib is loaded.  Also, refer to
15142         'timer-duration-words', not 'timer-duration', as the latter's doc
15143         string says nothing about the accepted strings.
15145 2015-09-19  Jay Belanger  <jay.p.belanger@gmail.com>
15147         * lisp/calc/calc-ext.el (calc-do-prefix-help): Tidy up error message.
15149 2015-09-19  Ken Manheimer  <ken.manheimer@gmail.com>
15151         Repair pdbtrack remote file tracking
15152         * lisp/progmodes/python.el (python-pdbtrack-set-tracked-buffer):
15153         Rectify pdbtrack so it follows transitions from one remote source
15154         file to the next.
15156 2015-09-19  Artur Malabarba  <bruce.connor.am@gmail.com>
15158         * lisp/emacs-lisp/timer.el (run-at-time): Docstring formatting.
15160 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
15162         Adapt vc-src to the old-new vc-checkin API
15163         * lisp/vc/vc-src.el (vc-src-checkin): Accept and ignore an
15164         additional optional parameter.
15166 2015-09-19  Simen Heggestøyl  <simenheg@gmail.com>
15168         Add overflow module to CSS property list
15169         * lisp/textmodes/css-mode.el (css-property-ids): Add properties
15170         from CSS Overflow Module Level 3.
15172 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
15174         Fix documentation of "C-u C-x v v"
15175         * doc/emacs/maintaining.texi (Advanced C-x v v): Make the
15176         documentation of "C-u C-x v v" match what the code does.
15178         Resurrect the ability to specify a revision in vc-next-action
15179         * lisp/vc/vc-bzr.el (vc-bzr-checkin):
15180         * lisp/vc/vc-dav.el (vc-dav-checkin):
15181         * lisp/vc/vc-git.el (vc-git-checkin):
15182         * lisp/vc/vc-hg.el (vc-hg-checkin):
15183         * lisp/vc/vc-mtn.el (vc-mtn-checkin): Accept and silently ignore
15184         an additional optional argument, the revision to checkin.
15185         * lisp/vc/vc-sccs.el (vc-sccs-checkin):
15186         * lisp/vc/vc-cvs.el (vc-cvs-checkin):
15187         * lisp/vc/vc-rcs.el (vc-rcs-checkin): Allow to optionally specify
15188         a revision to checkin.
15189         * lisp/vc/vc.el (vc-next-action): Allow to optionally specify the
15190         revision when checking in files.
15191         See http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00688.html
15192         for the details.
15194 2015-09-18  Wilson Snyder  <wsnyder@wsnyder.org>
15196         * lisp/progmodes/verilog-mode.el (verilog-forward-sexp-function)
15197         (verilog-decls-princ, verilog-modport-princ)
15198         (verilog-modi-modport-lookup-one): Fix checkdoc warnings.
15200 2015-09-17  Jay Belanger  <jay.p.belanger@gmail.com>
15202         Fix the routine for help on Calc's prefixes
15203         * lisp/calc/calc-ext.el (calc-prefix-help-retry): New variable.
15204         (calc-do-prefix-help): Use `read-char' to determine the next Calc
15205         command.
15207 2015-09-17  Stefan Monnier  <monnier@iro.umontreal.ca>
15209         * lisp/font-lock.el (font-lock-beginning-of-syntax-function): Remove.
15210         (font-lock-fontify-block): Don't let-bind it.
15211         (font-lock-compile-keywords): Don't use it.
15212         (font-lock-set-defaults): Don't set it.  Allow the variable alist to
15213         start one slot earlier, instead.
15214         * lisp/emacs-lisp/syntax.el (font-lock-beginning-of-syntax-function):
15215         Don't declare.
15216         (syntax-ppss): Don't use it either.
15217         * lisp/font-core.el (font-lock-defaults): Remove SYNTAX-BEGIN
15218         from docstring.
15219         * doc/emacs/display.texi (Font Lock): Don't mention
15220         font-lock-beginning-of-syntax-function.
15221         * doc/lispref/modes.texi (Font Lock Basics): Update description of
15222         font-lock-defaults.
15223         (Syntactic Font Lock): Remove font-lock-beginning-of-syntax-function.
15224         * lisp/loadhist.el (unload-feature-special-hooks):
15225         Remove font-lock-beginning-of-syntax-function.
15226         * lisp/obsolete/lazy-lock.el (lazy-lock-fontify-region):
15227         * lisp/emacs-lisp/lisp.el (beginning-of-defun-raw): Don't let-bind
15228         font-lock-beginning-of-syntax-function.
15230 2015-09-17  Paul Eggert  <eggert@cs.ucla.edu>
15232         Backslash cleanup in Elisp source files
15233         This patch should not change behavior.  It typically omits backslashes
15234         where they are redundant (e.g., in the string literal "^\$").
15235         In a few places, insert backslashes where they make regular
15236         expressions clearer: e.g., replace "^\*" (equivalent to "^*") with
15237         "^\\*", which has the same effect as a regular expression.
15238         Also, use ‘\ %’ instead of ‘\%’ when avoiding confusion with SCCS IDs,
15239         and similarly use ‘\ $’ instead of ‘\$’ when avoiding confusion with
15240         RCS IDs, as that makes it clearer that the backslash is intended.
15242         Some more minor backslash fixes
15243         * test/automated/compile-tests.el (compile-tests--test-regexps-data):
15244         * test/automated/info-xref.el (info-xref-test-write-file):
15245         Double backslashes in strings.
15247         Fix several backslash typos in Elisp strings
15248         * lisp/calendar/todo-mode.el (todo-files, todo-rename-file)
15249         (todo-find-filtered-items-file, todo-reset-nondiary-marker)
15250         (todo-reset-done-string, todo-reset-comment-string)
15251         (todo-reset-highlight-item):
15252         * lisp/erc/erc-networks.el (erc-networks-alist):
15253         * lisp/gnus/gnus-art.el (gnus-button-handle-library):
15254         * lisp/gnus/gnus-group.el (gnus-read-ephemeral-gmane-group-url):
15255         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
15256         (nntp-telnet-shell-prompt):
15257         * lisp/gnus/spam-report.el (spam-report-gmane-regex):
15258         * lisp/image-dired.el (image-dired-rotate-original):
15259         (image-dired-get-exif-file-name):
15260         * lisp/international/latin1-disp.el (latin1-display-ucs-per-lynx):
15261         * lisp/mail/undigest.el (rmail-digest-parse-rfc1153strict):
15262         * lisp/mh-e/mh-letter.el (mh-file-is-vcard-p):
15263         * lisp/mh-e/mh-mime.el (mh-file-mime-type-substitutions):
15264         * lisp/net/shr-color.el (shr-color->hexadecimal):
15265         * lisp/org/org-bibtex.el (org-bibtex-fields):
15266         * lisp/org/org-docview.el (org-docview-export):
15267         * lisp/org/org-entities.el (org-entities):
15268         * lisp/org/ox-icalendar.el (org-icalendar-cleanup-string):
15269         * lisp/progmodes/cperl-mode.el (cperl-indent-exp):
15270         * lisp/progmodes/ebnf2ps.el (ebnf-file-suffix-regexp)
15271         (ebnf-style-database):
15272         * lisp/progmodes/idlw-help.el (idlwave-do-context-help1):
15273         * lisp/progmodes/ruby-mode.el (ruby-imenu-create-index-in-block):
15274         * lisp/progmodes/sql.el (sql-product-alist):
15275         * lisp/progmodes/verilog-mode.el (verilog-error-regexp-emacs-alist)
15276         (verilog-error-font-lock-keywords)
15277         (verilog-assignment-operator-re):
15278         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist):
15279         * lisp/textmodes/reftex-parse.el (reftex-parse-from-file):
15280         * lisp/vc/add-log.el (change-log-version-number-regexp-list):
15281         Fix typo by replacing ‘\’ with ‘\\’ in a string literal.
15282         For example, to get the regular expression ‘\.’ use the string
15283         literal "\\.", not "\." (which is equivalent to ".").
15284         * lisp/emulation/viper-util.el (viper-glob-unix-files):
15285         Remove stray ‘\j’ from string.
15286         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
15287         (nntp-telnet-shell-prompt):
15288         Treat > like $ when matching a shell prompt.
15289         * lisp/progmodes/make-mode.el (makefile-browse):
15290         Properly quote a diagnostic.
15292         Fix minor quoting problems in diagnostics
15293         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
15294         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
15295         Follow text-quoting-style in diagnostic, and quote a file name.
15297 2015-09-17  Eli Zaretskii  <eliz@gnu.org>
15299         * doc/lispref/frames.texi (Cursor Parameters):
15300         Document 'x-stretch-cursor'.
15302 2015-09-16  Paul Eggert  <eggert@cs.ucla.edu>
15304         Omit unnecessary \ before paren in C docstrings
15305         Although \( is needed in docstrings in Elisp code, it is not needed in
15306         docstrings in C code, since C function definitiions do not start with
15307         a parenthesis.  The backslashes made the docstrings a bit harder to
15308         read and to format in columns.  Also, some C docstrings had ( in
15309         column 1 and this did not appear to be causing any problems.  So,
15310         simplify C docstrings by replacing \( with ( and \) with ).
15312         A few more minor quoting fixes in a script and a text file
15314         Minor quoting fixes in scripts and doc
15315         Prefer straight quotes in random script files, as they are not
15316         converted.  Prefer grave quotes in a couple of places in the manual
15317         that were missed earlier, as these quotes are converted.
15319         Minor backslash fixes in manuals and scripts
15320         * Makefile.in (install-arch-indep):
15321         * admin/charsets/compact.awk:
15322         * admin/charsets/gb180302.awk (gb_to_index):
15323         * admin/charsets/gb180304.awk (gb_to_index):
15324         Avoid undefined behavior in Awk regular expression backslashes.
15325         * doc/misc/efaq.texi (Matching parentheses):
15326         Omit unnecessary backslashes.
15327         * doc/misc/gnus-faq.texi (FAQ 5-8):
15328         Avoid undefined behavior in suggested sed backslash usage.
15330         Add -Wswitch to --enable-gcc-warnings
15331         Make --enable-gcc-warnings a bit pickier, by also using -Wswitch.
15332         * configure.ac (WERROR_CFLAGS): Don’t add -Wno-switch.
15333         * lib-src/etags.c (main, consider_token, C_entries):
15334         * src/coding.c (encode_invocation_designation):
15335         * src/data.c (Ftype_of):
15336         * src/eval.c (Fdefvaralias, default_toplevel_binding)
15337         (Fbacktrace__locals, mark_specpdl):
15338         * src/lisp.h (record_xmalloc):
15339         * src/syntax.c (scan_lists, scan_sexps_forward):
15340         * src/window.c (window_relative_x_coord):
15341         * src/xdisp.c (push_it, pop_it):
15342         * src/xterm.c (xg_scroll_callback, x_check_fullscreen):
15343         Error out or do nothing (as appropriate) if a switch statement
15344         with an enum value does not cover all of the enum.
15345         * src/dispextern.h (struct iterator_stack_entry.u.comp):
15346         Remove unused member discovered by using -Wswitch.
15347         * src/lisp.h (record_xmalloc): Add a ‘+ 0’ to pacify -Wswitch.
15348         * src/vm-limit.c (check_memory_limits):
15349         Simplify warning-diagnostic computation by using a table.
15351         etags ‘fatal’ function is now printf-like
15352         * lib-src/etags.c (fatal): Now printf-like.  All callers changed.
15353         Also, now static; not clear why it needed to be extern.
15354         (verror): New function, with most of the old contents of ‘error’.
15355         (fatal, error): Use it.
15357 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
15359         More adaptations in file-notify-tests.el
15360         * test/automated/file-notify-tests.el
15361         (file-notify-test05-dir-validity): Skip for w32notify in
15362         batch-mode.  (Bug#21432)
15364 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
15366         Adapt test in file-notify-tests.el
15367         * test/automated/file-notify-tests.el
15368         (file-notify-test04-file-validity): Skip for w32notify in
15369         batch-mode.  Add test lost last commit.
15371 2015-09-16  Dima Kogan  <dima@secretsauce.net>
15373         winner no longer holds on to dead frames
15374         * lisp/winner.el (winner-change-fun): Cull dead frames.
15375         This prevents a potentially massive memory leak.  See:
15376         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00619.html
15378 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
15380         Use common report_file_notify_error function
15381         * src/fileio.c (report_file_notify_error): New function.
15382         * src/inotify.c (report_inotify_error): Remove function.
15383         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
15384         (Finotify_rm_watch): Use report_file_notify_error.
15385         * src/lisp.h (report_file_notify_error): Declare external function.
15386         * src/w32notify.c (report_w32notify_error): Remove function.
15387         (Fw32notify_add_watch, Fw32notify_rm_watch):
15388         Use report_file_notify_error.
15390 2015-09-16  Jay Belanger  <jay.p.belanger@gmail.com>
15392         Fix documentation.
15393         * doc/misc/calc.texi (Single-Variable Statistics): Fix the wording of
15394         the documentation of the root mean square.
15396 2015-09-16  Martin Rudalics  <rudalics@gmx.at>
15398         Remove tool_bar_redisplayed_once and associated code.
15399         * src/frame.h (tool_bar_redisplayed_once): Remove slot.
15400         * src/frame.c (make_frame, x_set_font): Remove initialization of
15401         f->tool_bar_redisplayed_once.
15402         * src/w32fns.c (x_change_tool_bar_height):
15403         * src/xfns.c (x_change_tool_bar_height): Don't check for
15404         f->tool_bar_redisplayed_once.
15405         * src/xdisp.c (redisplay_internal): Remove handling of
15406         f->tool_bar_redisplayed_once.
15408 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
15410         Restore some of the quoting in the manuals
15411         * doc/lispref/windows.texi (Coordinates and Windows)
15412         (Coordinates and Windows):
15413         * doc/lispref/variables.texi (Lexical Binding)
15414         (File Local Variables):
15415         * doc/lispref/text.texi (Format Properties):
15416         * doc/lispref/symbols.texi (Symbol Components):
15417         * doc/lispref/strings.texi (Creating Strings):
15418         * doc/lispref/sequences.texi (Sequence Functions):
15419         * doc/lispref/searching.texi (Regexp Special, Regexp Search)
15420         (Search and Replace):
15421         * doc/lispref/processes.texi (Bindat Spec):
15422         * doc/lispref/os.texi (Idle Timers):
15423         * doc/lispref/objects.texi (Basic Char Syntax):
15424         * doc/lispref/numbers.texi (Float Basics, Random Numbers):
15425         * doc/lispref/nonascii.texi (Character Properties):
15426         * doc/lispref/modes.texi (Major Mode Conventions, Mode Hooks)
15427         (Mode Line Variables):
15428         * doc/lispref/minibuf.texi (Text from Minibuffer):
15429         * doc/lispref/loading.texi (Autoload):
15430         * doc/lispref/keymaps.texi (Controlling Active Maps):
15431         * doc/lispref/frames.texi (Frame Layout, Size and Position)
15432         (Size Parameters, Implied Frame Resizing):
15433         * doc/lispref/files.texi (Changing Files, Magic File Names):
15434         * doc/lispref/eval.texi (Self-Evaluating Forms):
15435         * doc/lispref/display.texi (Progress, Abstract Display)
15436         (Abstract Display Example, Bidirectional Display):
15437         * doc/lispref/commands.texi (Event Mod):
15438         * doc/emacs/windows.texi (Displaying Buffers):
15439         * doc/emacs/trouble.texi (Bug Criteria, Checklist):
15440         * doc/emacs/text.texi (Enriched Text):
15441         * doc/emacs/programs.texi (MixedCase Words):
15442         * doc/emacs/picture-xtra.texi (Insert in Picture)
15443         (Tabs in Picture):
15444         * doc/emacs/misc.texi (Emacs Server, Printing):
15445         * doc/emacs/mini.texi (Minibuffer History):
15446         * doc/emacs/maintaining.texi (Old Revisions, VC Change Log)
15447         (Pulling / Pushing):
15448         * doc/emacs/killing.texi (Yanking, Cut and Paste, Clipboard):
15449         * doc/emacs/help.texi (Help, Help Echo):
15450         * doc/emacs/glossary.texi (Glossary):
15451         * doc/emacs/frames.texi (Mouse Commands, Creating Frames)
15452         (Frame Commands):
15453         * doc/emacs/files.texi (Reverting, Saving, Directories):
15454         * doc/emacs/entering.texi (Exiting):
15455         * doc/emacs/emacs.texi (Top):
15456         * doc/emacs/cmdargs.texi (Window Size X, Icons X):
15457         * doc/emacs/anti.texi (Antinews): Restore quoting of text where
15458         appropriate or replace quoting with @dfn.
15459         * doc/misc/ediff.texi (Window and Frame Configuration):
15460         * doc/lispref/processes.texi (Network Feature Testing):
15461         * doc/lispref/display.texi (Display Margins): Quote the phrase
15462         after "a.k.a." where appropriate.
15464 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
15466         Clarify reftex-extra-bindings docs
15467         * lisp/textmodes/reftex-vars.el (reftex-extra-bindings):
15468         * doc/misc/reftex.texi (Key Bindings): Document that the variable
15469         only has an effect at load-time.
15471 2015-09-16  Daniel McClanahan  <danieldmcclanahan@gmail.com>  (tiny change)
15473         * lisp/emacs-lisp/lisp-mode.el (lisp--el-match-keyword): Fix
15474         search argument.  (Bug#21492) (Bug#21493)
15476 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
15478         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
15479         Add pretty symbols for \qquad and \varrho.
15481 2015-09-15  Jay Belanger  <jay.p.belanger@gmail.com>
15483         Add new functions for the root mean square of a (Calc) vector
15484         * lisp/calc/calc-stat.el (calcFunc-rms, calc-vector-rms):
15485         New functions.
15486         * lisp/calc/calc-ext.el (calc-init-extensions): Add keybinding for
15487         `calc-vector-rms', add autoloads for `calc-vector-rms' and
15488         `calcFunc-rms'.
15489         * lisp/calc/calc-map.el (calc-u-oper-keys): Add entry for
15490         `calcFunc-rms'.
15491         * lisp/calc/calc-menu.el (calc-vectors-menu): Add entry for
15492         `calc-vector-rms'.
15493         * doc/misc/calc.texi (Single-Variable Statistics): Document the rms
15494         command.
15496 2015-09-15  Stephen Leake  <stephen_leake@stephe-leake.org>
15498         Add monotone EDE generic project
15499         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
15500         Add monotone generic project.
15502         Revert premature commit
15503         * doc/lispref/files.texi: Revert premature commit of change to
15504         file-name-all-completions.
15506         Fix a bug in elisp--xref-find-definitions related to cl-generic defaults
15507         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Fix bug
15508         with cl-generic defaults.
15509         (elisp--xref-find-references): Add doc string.
15510         * test/automated/elisp-mode-tests.el (xref-elisp-generic-*): Improve
15511         tests to find bug.
15513         Fix bugs in eieio-oref-default related to class symbols
15514         * lisp/emacs-lisp/eieio-core.el (class-p): Handle symbol properly.
15515         (eieio-oref-default): Handle class properly.
15517 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
15519         Quote “fullboth” when defining it
15520         * doc/lispref/frames.texi (Size Parameters): Use @dfn for “fullboth”
15521         and rewrite the containing paragraph, which was awkward.  (Bug#21472).
15523 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
15525         Minor doc fix in emacs/ack.texi
15526         * doc/emacs/ack.texi (Acknowledgments): Fix an xref missing the
15527         first argument.
15529 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
15531         Adapt tests in auto-revert-tests.el
15532         * test/automated/auto-revert-tests.el (auto-revert--timeout):
15533         Make it a defconst.
15534         (auto-revert--wait-for-revert): New defun.
15535         (auto-revert-test00-auto-revert-mode)
15536         (auto-revert-test01-auto-revert-tail-mode)
15537         (auto-revert-test02-auto-revert-mode-dired): Use it.
15539 2015-09-15  Stefan Monnier  <monnier@iro.umontreal.ca>
15541         * lisp/emacs-lisp/lisp-mode.el (lisp-mode-symbol-regexp): New const.
15542         Use it everywhere "\\(\\sw\\|\\s_\\|\\\\.\\)+" was used.
15543         (cl-lib-fdefs): Add defgeneric.
15544         (cl-kw): Add all elements of eieio-kw and cl-lib-kw.
15545         (eieio-kw, cl-lib-kw, el-kw): Remove.
15547 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
15549         Quote less in manuals
15550         The manuals often used quotes ``...'' when it is better to use @dfn or
15551         @code or capitalized words or no quoting at all.  For example, there is
15552         no need for the `` and '' in “if a variable has one effect for
15553         @code{nil} values and another effect for ``non-@code{nil}'' values”.
15554         Reword the Emacs, Lisp intro, and Lisp reference manuals to eliminate
15555         unnecessary quoting like this, and to use @dfn etc. instead when called
15556         for (Bug#21472).
15558 2015-09-15  Mark Oteiza  <mvoteiza@udel.edu>
15560         * lisp/custom.el (load-theme): Only compute hash when needed.
15562 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
15564         Pacify --enable-gcc-warnings
15565         * src/inotify.c (report_inotify_error): Declare it _Noreturn.
15567 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
15569         Improve error reports in inotify.c
15570         * src/inotify.c (report_inotify_error): New function.  Clone of
15571         report_w32notify_error.
15572         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
15573         (Finotify_rm_watch): Use it.
15575 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
15577         Fix the file-notify tests for watch validation on w32
15578         * test/automated/file-notify-tests.el
15579         (file-notify-test04-file-validity): Move the directory deletion
15580         out of the file-notify--test-with-events macro.
15581         (file-notify-test04-file-validity)
15582         (file-notify-test05-dir-validity): Enlarge the timeout of
15583         read-event to 0.5, as 0.1 is borderline on w32.  (Bug#21432)
15585 2015-09-15  Tassilo Horn  <tsdh@gnu.org>
15587         Use OPEN BOX instead of space for \quad.
15588         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Use OPEN BOX
15589         character for \quad instead of a space.
15591 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
15593         Add missing *.pbm images
15594         * etc/images/connect.pbm: New file.
15595         * etc/images/custom/down-pushed.pbm: New file.
15596         * etc/images/custom/down.pbm: New file.
15597         * etc/images/custom/right-pushed.pbm: New file.
15598         * etc/images/custom/right.pbm: New file.
15599         * etc/images/describe.pbm: New file.
15600         * etc/images/disconnect.pbm: New file.
15601         * etc/images/ezimage/bits.pbm: New file.
15602         * etc/images/ezimage/bitsbang.pbm: New file.
15603         * etc/images/ezimage/box-minus.pbm: New file.
15604         * etc/images/ezimage/box-plus.pbm: New file.
15605         * etc/images/ezimage/box.pbm: New file.
15606         * etc/images/ezimage/checkmark.pbm: New file.
15607         * etc/images/ezimage/dir-minus.pbm: New file.
15608         * etc/images/ezimage/dir-plus.pbm: New file.
15609         * etc/images/ezimage/dir.pbm: New file.
15610         * etc/images/ezimage/doc-minus.pbm: New file.
15611         * etc/images/ezimage/doc-plus.pbm: New file.
15612         * etc/images/ezimage/doc.pbm: New file.
15613         * etc/images/ezimage/info.pbm: New file.
15614         * etc/images/ezimage/key.pbm: New file.
15615         * etc/images/ezimage/label.pbm: New file.
15616         * etc/images/ezimage/lock.pbm: New file.
15617         * etc/images/ezimage/mail.pbm: New file.
15618         * etc/images/ezimage/page-minus.pbm: New file.
15619         * etc/images/ezimage/page-plus.pbm: New file.
15620         * etc/images/ezimage/page.pbm: New file.
15621         * etc/images/ezimage/tag-gt.pbm: New file.
15622         * etc/images/ezimage/tag-minus.pbm: New file.
15623         * etc/images/ezimage/tag-plus.pbm: New file.
15624         * etc/images/ezimage/tag-type.pbm: New file.
15625         * etc/images/ezimage/tag-v.pbm: New file.
15626         * etc/images/ezimage/tag.pbm: New file.
15627         * etc/images/ezimage/unlock.pbm: New file.
15628         * etc/images/gnus/important.pbm: New file.
15629         * etc/images/gnus/mail-send.pbm: New file.
15630         * etc/images/gnus/receipt.pbm: New file.
15631         * etc/images/gnus/toggle-subscription.pbm: New file.
15632         * etc/images/gnus/unimportant.pbm: New file.
15633         * etc/images/gud/all.pbm: New file.
15634         * etc/images/gud/rcont.pbm: New file.
15635         * etc/images/gud/recstart.pbm: New file.
15636         * etc/images/gud/recstop.pbm: New file.
15637         * etc/images/gud/rfinish.pbm: New file.
15638         * etc/images/gud/rnext.pbm: New file.
15639         * etc/images/gud/rnexti.pbm: New file.
15640         * etc/images/gud/rstep.pbm: New file.
15641         * etc/images/gud/rstepi.pbm: New file.
15642         * etc/images/gud/thread.pbm: New file.
15643         * etc/images/lock-broken.pbm: New file.
15644         * etc/images/lock-ok.pbm: New file.
15645         * etc/images/lock.pbm: New file.
15646         * etc/images/mail/copy.pbm: New file.
15647         * etc/images/mail/forward.pbm: New file.
15648         * etc/images/mail/not-spam.pbm: New file.
15649         * etc/images/mail/outbox.pbm: New file.
15650         * etc/images/mail/preview.pbm: New file.
15651         * etc/images/mail/save-draft.pbm: New file.
15652         * etc/images/mh-logo.pbm: New file.
15653         * etc/images/mpc/add.pbm: New file.
15654         * etc/images/mpc/ffwd.pbm: New file.
15655         * etc/images/mpc/next.pbm: New file.
15656         * etc/images/mpc/pause.pbm: New file.
15657         * etc/images/mpc/play.pbm: New file.
15658         * etc/images/mpc/prev.pbm: New file.
15659         * etc/images/mpc/rewind.pbm: New file.
15660         * etc/images/mpc/stop.pbm: New file.
15661         * etc/images/redo.pbm: New file.
15662         * etc/images/smilies/braindamaged.pbm: New file.
15663         * etc/images/smilies/cry.pbm: New file.
15664         * etc/images/smilies/dead.pbm: New file.
15665         * etc/images/smilies/evil.pbm: New file.
15666         * etc/images/smilies/forced.pbm: New file.
15667         * etc/images/smilies/grin.pbm: New file.
15668         * etc/images/smilies/indifferent.pbm: New file.
15669         * etc/images/sort-ascending.pbm: New file.
15670         * etc/images/sort-column-ascending.pbm: New file.
15671         * etc/images/sort-criteria.pbm: New file.
15672         * etc/images/sort-descending.pbm: New file.
15673         * etc/images/sort-row-ascending.pbm: New file.
15674         * etc/images/unchecked.pbm: New file.
15675         * etc/images/zoom-in.pbm: New file.
15676         * etc/images/README: Update instructions for PBM files.
15678         Add separator.pbm tool-bar image
15679         * etc/images/separator.pbm: New file.  Having it avoids the side
15680         effect of changing the tool-bar height when the default font's size
15681         changes and XPM image support is not available, due to the SPC
15682         characters that are left in the Lisp string used to display the tool
15683         bar, because there are no images to display instead of those SPC
15684         characters.
15686         Make show-paren-match face visible on mono-color displays
15687         * lisp/faces.el (show-paren-match): Use the underline face for
15688         mono-color displays.  (Bug#21481)
15690 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
15692         Don’t double-encode non-ASCII mail clipboard
15693         * lisp/mail/mailclient.el (mailclient-send-it):
15694         Also fix the case when mailclient-place-body-on-clipboard-flag
15695         is non-nil.  Problem reported by Eli Zaretskii (Bug#21471#37).
15697 2015-09-14  Michael Albinus  <michael.albinus@gmx.de>
15699         Adapt file-notify-tests.el test cases
15700         * lisp/filenotify.el (file-notify-rm-watch): Ignore `file-notify-error'.
15701         * src/inotify.c (Finotify_valid_p): Adapt docstring.
15702         * test/automated/file-notify-tests.el
15703         (file-notify-test03-autorevert)
15704         (file-notify-test04-file-validity)
15705         (file-notify-test04-file-validity-remote)
15706         (file-notify-test05-dir-validity)
15707         (file-notify-test05-dir-validity-remote): Adapt docstring.
15708         (file-notify-test04-file-validity): Let events arrive before
15709         calling final `file-notify-valid-p'.  Do not ignore errors.
15710         (file-notify-test05-dir-validity): Do not manipulate
15711         `temporary-file-directory', it isn't necessary.  Let events arrive
15712         before calling final `file-notify-valid-p'.  Do not ignore errors.
15714 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
15716         Don’t double-encode non-ASCII for mail client
15717         * lisp/mail/mailclient.el (mailclient-encode-string-as-url):
15718         Use RFC 6068’s list of unreserved characters.
15719         (mailclient-send-it): When encoding the body as a URL,
15720         first decode it as per Content-Type: and Content-Transfer-Encoding:,
15721         as URLs must use percent-encoded UTF-8 (Bug#21471).
15722         * doc/misc/url.texi (mailto): Update RFC number.
15724 2015-09-14  Stefan Monnier  <monnier@iro.umontreal.ca>
15726         * lisp/progmodes/cc-langs.el (c-make-init-lang-vars-fun): Use dolist.
15728 2015-09-14  Alan Mackenzie  <acm@muc.de>
15730         Replace `cadar' with `cadr/car', since `cadar' is problematic on Emacs
15731         (c-make-init-lang-vars-fun): Replace two occurrences of `cadar' with
15732         `cadr/car'.
15734 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
15736         Clarify documentation of char-table extra slots
15737         * doc/lispref/sequences.texi (Char-Tables): Clarify that extra
15738         slot numbers are zero-based.  (Bug#21467)
15740 2015-09-14  Alan Mackenzie  <acm@muc.de>
15742         Elisp mode: Make font-lock and imenu handle escaped characters in symbols
15743         Fixes bug#21449.
15744         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression)
15745         (lisp--el-match-keyword, lisp-el-font-lock-keywords-1)
15746         (lisp-cl-font-lock-keywords-1, lisp-el-font-lock-keywords-2)
15747         (lisp-cl-font-lock-keywords-2, lisp-string-in-doc-position-p):
15748         Insert "\\|\\\\." into regexps which match symbols.
15750 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
15752         Improve the doc string of w32notify-valid-p
15753         * src/w32notify.c (Fw32notify_valid_p): Mention in the doc string
15754         that removing a watch makes its object invalid.
15756 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
15758         Fix tests for file-notify-valid-p
15759         * test/automated/file-notify-tests.el (file-notify--test-cleanup):
15760         Use delete-directory to delete file-notify--test-tmpfile if it is
15761         a directory.  Likewise for file-notify--test-tmpfile1.
15762         (file-notify-test04-file-validity)
15763         (file-notify-test05-dir-validity): Delete the parent directory of
15764         the test.  Ignore errors when cleaning up after the test.
15766 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
15768         Report file-notify-error in w32notify.c
15769         * src/w32notify.c (report_w32notify_error): New function.
15770         (Fw32notify_add_watch, Fw32notify_rm_watch): Use it to report
15771         errors, instead of calling report_file_error.  (Bug#21432)
15773         Implement w32notify-valid-p
15774         * src/w32notify.c (Fw32notify_valid_p): New function.  (Bug#21432)
15775         * lisp/filenotify.el (w32notify-valid-p): No longer an alias for
15776         'identity'.
15778 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
15780         Test file-notify-valid-p
15781         * test/automated/file-notify-tests.el
15782         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
15783         New tests.
15785 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
15787         Fix markup in ELisp manual
15788         * doc/lispref/frames.texi (Font and Color Parameters): Fix markup
15789         of the 'alpha' parameter value.  (Bug#21470)
15791 2015-09-13  Michael Albinus  <michael.albinus@gmx.de>
15793         Introduce `file-notify-valid-p'
15794         * lisp/filenotify.el (file-notify-valid-p): New defun.
15795         (gfile-valid-p, w32notify-valid-p): Make them an alias to `identity'.
15796         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist)
15797         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
15798         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist)
15799         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
15800         <file-notify-valid-p>: Add handler.
15801         * lisp/net/tramp.el (tramp-file-name-for-operation):
15802         Add `file-notify-valid-p'.
15803         (tramp-handle-file-notify-valid-p): New defun.
15804         * src/inotify.c (Finotify_valid_p): New defun.
15805         (syms_of_inotify): Declare Sinotify_valid_p.
15807 2015-09-13  Paul Eggert  <eggert@cs.ucla.edu>
15809         Port Unicode char detection to FreeBSD+svgalib
15810         Problem reported by Ashish SHUKLA in:
15811         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00531.html
15812         * configure.ac: Check for struct unipair.unicode instead of for
15813         <linux/kd.h>, since that’s more specific to what the code
15814         actually needs.
15815         * src/terminal.c: Use HAVE_STRUCT_UNIPAIR_UNICODE, not HAVE_LINUX_KD_H.
15817         * src/indent.c (Fvertical_motion): Simplify bugfix (Bug#21468).
15819 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
15821         Fix vertical cursor motion across overlay strings with newlines
15822         * src/indent.c (Fvertical_motion): Don't leave point in the middle
15823         of an overlay string with newlines, as that will position the
15824         cursor after the string at whatever column is there.  (Bug#21468)
15826 2015-09-12  Michael Albinus  <michael.albinus@gmx.de>
15828         Fix tests in file-notify-tests.el
15829         * test/automated/file-notify-tests.el: Remove Tramp declarations.
15830         (file-notify-test00-availability): Print remote command w/o Tramp
15831         internal functions.
15832         (file-notify-test02-events, file-notify-test02-events-remote):
15833         Adapt docstring.
15834         (file-notify-test03-autorevert): Use `format-message' when
15835         inspecting *Messages* buffer.
15837 2015-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
15839         Bind inhibit-modification-hooks rather than a/b-c-f
15840         * lisp/wid-edit.el (widget-editable-list-insert-before)
15841         (widget-editable-list-delete-at):
15842         * lisp/progmodes/cperl-mode.el (cperl-find-pods-heres)
15843         (cperl-font-lock-unfontify-region-function):
15844         * lisp/progmodes/antlr-mode.el (save-buffer-state-x):
15845         * lisp/obsolete/longlines.el (longlines-mode):
15846         * lisp/obsolete/fast-lock.el (save-buffer-state):
15847         * lisp/mouse.el (mouse-save-then-kill-delete-region):
15848         * lisp/gnus/message.el (message-hide-headers):
15849         * lisp/eshell/esh-mode.el (eshell-send-input, eshell-output-filter):
15850         * lisp/ibuffer.el (ibuffer-update-title-and-summary)
15851         (ibuffer-redisplay-engine): Bind inhibit-modification-hooks to t rather
15852         than after/before-change-functions to nil.
15854 2015-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>
15856         (jit-lock-deferred-fontify): Pay attention to skipped redisplays
15857         * lisp/jit-lock.el (jit-lock-deferred-fontify): Make sure we refresh
15858         the buffers, even if the forced redisplay is interrupted.
15860         * lisp/emacs-lisp/eieio-core.el (class-p): Accept class objects
15862         Merge syntax-propertize--done and parse-sexp-propertize-done
15863         * lisp/emacs-lisp/syntax.el (syntax-propertize--done): Remove.
15864         (syntax-propertize): Set syntax-propertize--done even if
15865         syntax-propertize-function is nil.  Avoid recursive invocations.
15866         (syntax-propertize-chunks): New var.
15867         (internal--syntax-propertize): Use it.  Rename from syntax--jit-propertize.
15868         Simplify.
15869         (parse-sexp-propertize-function): Don't set any more.
15870         * src/syntax.c (SETUP_SYNTAX_TABLE): Call parse_sexp_propertize as needed.
15871         (parse_sexp_propertize): Don't assume charpos is not yet propertized.
15872         Call Qinternal__syntax_propertize instead of
15873         Vparse_sexp_propertize_function.  Truncate e_property if needed.
15874         (update_syntax_table_forward): Streamline.
15875         (syms_of_syntax): Define Qinternal__syntax_propertize.
15876         (syntax_propertize__done): Rename from parse_sexp_propertize_done.
15878 2015-09-11  Paul Eggert  <eggert@cs.ucla.edu>
15880         Prefer straight quoting in some text files
15881         Mostly this just changes ` to ' in static text.  Some exceptions:
15882         * INSTALL.REPO: Use curved quotes, as the diagnostic in question
15883         typically does that now.
15884         * admin/quick-install-emacs (TRY, top level):
15885         Use straight quoting in diagnostics.
15886         * src/README: Fix working-directory confusion.
15888         * CONTRIBUTE: Move send-email here from git-workflow.
15890 2015-09-11  Michael Albinus  <michael.albinus@gmx.de>
15892         Improve file notifications in Tramp
15893         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
15894         Set proper events to watch for.
15895         (tramp-sh-file-gvfs-monitor-dir-process-filter): Report only
15896         watched events.
15898 2015-09-11  Eli Zaretskii  <eliz@gnu.org>
15900         Fix NS build with --enable-checking='glyphs'
15901         * src/nsfns.m (unwind_create_frame): Make the preprocessor
15902         conditionals for referencing 'dpyinfo' consistent throughout the
15903         function.  (Bug#21426)
15905 2015-09-10  Nicolas Petton  <nicolas@petton.fr>
15907         Add seq-find
15908         This function is similar to `seq-some' but returns the found element.
15909         In the cases where nil can be the found element, a sentinel optional
15910         argument can be provided to avoid ambiguities.
15911         * lisp/emacs-lisp/seq.el (seq-find): New function.
15912         * test/automated/seq-tests.el (test-seq-find): Add tests for `seq-find'.
15913         * doc/lispref/sequences.texi (Sequence Functions): Add documentation for
15914         seq-find.
15916 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
15918         Document file-notify--test-with-events.
15919         * test/automated/file-notify-tests.el (file-notify--test-with-events):
15920         Add docstring.
15922 2015-09-10  Michael Albinus  <michael.albinus@gmx.de>
15924         Report used native library in file-notify-tests.el
15925         * test/automated/file-notify-tests.el
15926         (tramp-get-remote-gvfs-monitor-dir)
15927         (tramp-get-remote-inotifywait): Declare them.
15928         (file-notify-test00-availability): Print used native library.
15930 2015-09-10  Mark Oteiza  <mvoteiza@udel.edu>
15932         * lisp/mpc.el (mpc--proc-connect): Use file-name-absolute-p.
15933         (mpc-file-local-copy): Check for absolute path.  Check more config
15934         locations.
15936 2015-09-10  Eli Zaretskii  <eliz@gnu.org>
15938         Improve documentation of categories
15939         * doc/lispref/syntax.texi (Categories): Clarify the example of
15940         using define-category and modify-category-entry.  (Bug#21448)
15942 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
15944         Revert some stray curved quotes I missed earlier
15945         Problem reported by David Kastrup in:
15946         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00440.html
15947         * lisp/international/mule-cmds.el (leim-list-header):
15948         Use format-message with an ASCII-only format.
15950         Prefer NUMBERP to spelling it out
15951         * src/editfns.c (styled_format):
15952         * src/frame.h (NUMVAL):
15953         * src/image.c (parse_image_spec):
15954         * src/lisp.h (CHECK_NUMBER_OR_FLOAT)
15955         (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER):
15956         * src/process.c (Fsignal_process):
15957         * src/xdisp.c (calc_pixel_width_or_height, on_hot_spot_p):
15958         * src/xfaces.c (check_lface_attrs):
15959         * src/xselect.c (x_fill_property_data, x_send_client_event):
15960         Use NUMBERP rather than INTEGERP || FLOATP.
15962 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
15964         Improve file-notify-tests
15965         * test/automated/file-notify-tests.el: Use lexical-binding.
15966         (file-notify--test-cleanup): New function.
15967         (file-notify-test00-availability, file-notify-test01-add-watch)
15968         (file-notify-test02-events, file-notify-test03-autorevert): Use it.
15969         (file-notify--test-with-events): New macro.
15970         (file-notify-test02-events): Use it.
15972 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
15974         Add patch-sending instructions to git-workflow
15975         From a suggestion by Mitchel Humpherys in:
15976         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00421.html
15977         * admin/notes/git-workflow (Sending patches): New section.
15979         Port to GIFLIB 5.0.6 and later
15980         Problem reported by Mitchel Humpherys in:
15981         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00420.html
15982         * src/image.c (HAVE_GIFERRORSTRING) [HAVE_GIF]: New macro.
15983         (GifErrorString, init_gif_functions) [HAVE_GIF && WINDOWSNT]:
15984         (gif_load) [HAVE_GIF]: Use it.
15986 2015-09-10  Glenn Morris  <rgm@gnu.org>
15988         * lisp/cedet/ede/auto.el (ede-project-autoload): Doc fix.
15990 2015-09-09  Glenn Morris  <rgm@gnu.org>
15992         * test/automated/file-notify-tests.el (file-notify-test02-events):
15993         Fix recent change.
15995 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
15997         Refix movemail GCC pacification
15998         Problem reported by Ken Brown in:
15999         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00406.html
16000         * lib-src/movemail.c (main): Fix previous change.
16002 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
16004         * lisp/calendar/time-date.el (time-to-seconds, time-less-p):
16005         Mark unused vars with underscore.
16007         * src/syntax.c (SETUP_SYNTAX_TABLE): Move truncation...
16008         (parse_sexp_propertize): ...from here.
16010         * lisp/filenotify.el: Use lexical-binding
16011         (file-notify-add-watch): Avoid add-to-list.
16013 2015-09-09  Tassilo Horn  <tsdh@gnu.org>
16015         Start checking event types in file-notify tests
16016         * test/automated/file-notify-tests.el (file-notify--test-events):
16017         New variable.
16018         (file-notify--test-event-handler): Append received event to
16019         file-notify--test-events for later analysis.
16020         (file-notify-test02-events): Assert that the expected notifications have
16021         arrived in the expected order.
16023 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
16025         Merge from gnulib and texinfo
16026         This incorporates:
16027         2015-08-03 Improve port of stdalign to C++11
16028         * lib/stdalign.in.h: Copy from gnulib.
16029         * doc/misc/texinfo.tex: Copy from texinfo.
16031 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
16033         Make syntax.c call syntax-propertize on demand
16034         * lisp/emacs-lisp/syntax.el (syntax--jit-propertize): New function.
16035         (parse-sexp-propertize-function): Use it.
16036         (syntax-propertize): Disable parse-sexp-propertize-function.
16037         * src/syntax.c (parse_sexp_propertize, update_syntax_table_forward):
16038         New functions.
16039         (syms_of_syntax): New vars `parse-sexp-propertize-done' and
16040         `parse-sexp-propertize-function'.
16041         * src/syntax.h (struct gl_state_s): Add `e_property_truncated' field.
16042         (UPDATE_SYNTAX_TABLE_FORWARD): Use update_syntax_table_forward.
16043         (SETUP_BUFFER_SYNTAX_TABLE): Set e_property_truncated.
16044         * lisp/progmodes/elisp-mode.el (elisp-byte-code-syntax-propertize):
16045         Don't assume `point' is set.
16047 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
16049         Fix indentation of an @example in ELisp manual
16050         * doc/lispref/syntax.texi (Categories): Untabify the example.
16051         (Bug#21448)
16053 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
16055         Define internal-char-font even if --without-x
16056         The function is used now even in non-graphical environments.
16057         Problem reported by Glenn Morris in:
16058         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00401.html
16059         * src/font.c (Finternal_char_font): Move here ...
16060         * src/fontset.c (Finternal_char_font): ... from here.
16062 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
16064         * lisp/emacs-lisp/cl-generic.el (cl-generic-generalizers):
16065         Remove warning.
16067 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
16069         Fix display of complex local data types in GDB-MI
16070         * lisp/progmodes/gdb-mi.el (gdb-locals-handler-custom): If a
16071         variable has no value, display "<complex data type>" as a
16072         placeholder, instead of a confusing "nil".  (Bug#21438)
16074 2015-09-09  Oleh Krehel  <ohwoeowho@gmail.com>
16076         Remove redundant redefinition of seq-drop-while from seq.el
16077         * lisp/emacs-lisp/seq.el (seq-drop-while): Define only once.
16079 2015-09-09  Phil Sainty  <psainty@orcon.net.nz>
16081         * lisp/emacs-lisp/package.el (package--ensure-init-file):
16082         More robust check for `package-initialize' calls in init file.
16083         This function accepts an optional argument, but calls passing
16084         an argument would not have been detected.
16086 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
16088         Port movemail to RHEL 6 with --enable-gcc-warnings
16089         * lib-src/movemail.c (main): Declare local only if needed.
16091         Port recent Linux console changes to RHEL 6
16092         * src/terminal.c [HAVE_LINUX_KD_H]: Include <sys/ioctl.h>.
16094         Improvements for curved quotes on Linux consule
16095         This should help Emacs work better out-of-the-box on Linux consoles,
16096         which have only limited support for displaying Unicode characters.
16097         Also, undo the recent change that caused text-quoting-style to
16098         affect quote display on terminals, so that the two features are
16099         independent.  See Alan Mackenzie in:
16100         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00244.html
16101         Finally, add a style parameter to startup--setup-quote-display,
16102         so that this function can also be invoked after startup, with
16103         different styles depending on user preference at the time.
16104         * configure.ac: Check for linux/kd.h header.
16105         * doc/emacs/display.texi (Text Display): Document quote display.
16106         * doc/lispref/display.texi (Active Display Table):
16107         * etc/NEWS:
16108         * lisp/startup.el (startup--setup-quote-display, command-line):
16109         text-quoting-style no longer affects quote display.
16110         * doc/lispref/frames.texi (Terminal Parameters): Fix typo.
16111         * lisp/international/mule-util.el (char-displayable-p):
16112         * lisp/startup.el (startup--setup-quote-display):
16113         On a text terminal supporting glyph codes, use the reported
16114         glyph codes instead of the terminal coding system, as this
16115         is more accurate on the Linux console.
16116         * lisp/startup.el (startup--setup-quote-display):
16117         New optional arg STYLE.
16118         * src/fontset.c (Finternal_char_font):
16119         Report glyph codes for a text terminal, if they are available.
16120         Currently this is supported only for the Linux console.
16121         * src/termhooks.h (struct terminal): New member glyph-code-table.
16122         * src/terminal.c [HAVE_LINUX_KD_H]: Include <errno.h>, <linux/kd.h>.
16123         (calculate_glyph_code_table) [HAVE_LINUX_KD_H]: New function.
16124         (terminal_glyph_code): New function.
16126 2015-09-08  Juri Linkov  <juri@linkov.net>
16128         * lisp/info.el (Info-fontify-node): Don't stop at the non-title
16129         underline.  (Bug#21433)
16131 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
16133         * lisp/calendar/time-date.el (with-decoded-time-value): Fix debug spec.
16135 2015-09-08  Tassilo Horn  <tsdh@gnu.org>
16137         Fix double-reporting of rename events with inotify
16138         * lisp/filenotify.el (file-notify-callback): Fix double-reporting
16139         of rename events with inotify (bug#21435).
16141 2015-09-08  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
16143         * lisp/play/tetris.el (tetris-move-down): New command (bug#21360).
16144         (tetris-mode-map): Use it.
16146 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
16148         Remove a few simple cases of global redisplay
16149         * src/dispnew.c (redraw_frame): Don't redisplay all frames.
16150         * src/xdisp.c (echo_area_display): Set the frame's `redisplay' bit
16151         rather than returning a "resized_p" boolean.
16152         (redisplay_internal): Adjust call accordingly.
16153         * src/xfaces.c (free_realized_faces): Don't redisplay all frames.
16154         (free_all_realized_faces): Set windows_or_buffers_changed so as to ease
16155         tracking of this undesirable situation.
16157         * src/process.c (status_notify): Avoid global redisplay (bug#11822)
16158         * src/process.c (status_notify): Only set the update_mode_line on the
16159         relevant buffers rather than setting it globally.
16161 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
16163         * lisp/electric.el (electric-quote-post-self-insert-function):
16164         Don't use syntax-ppss if comment-use-syntax is nil (e.g. message-mode).
16165         (electric-quote-mode): Activate everywhere in message-mode.
16167 2015-09-07  Paul Eggert  <eggert@cs.ucla.edu>
16169         Go back to grave quoting in source-code docstrings etc.
16170         This reverts almost all my recent changes to use curved quotes
16171         in docstrings and/or strings used for error diagnostics.
16172         There are a few exceptions, e.g., Bahá’í proper names.
16173         * admin/unidata/unidata-gen.el (unidata-gen-table):
16174         * lisp/abbrev.el (expand-region-abbrevs):
16175         * lisp/align.el (align-region):
16176         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet)
16177         (outlineify-sticky):
16178         * lisp/apropos.el (apropos-library):
16179         * lisp/bookmark.el (bookmark-default-annotation-text):
16180         * lisp/button.el (button-category-symbol, button-put)
16181         (make-text-button):
16182         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
16183         * lisp/calc/calc-embed.el (calc-do-embedded):
16184         * lisp/calc/calc-ext.el (calc-user-function-list):
16185         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
16186         * lisp/calc/calc-help.el (calc-describe-key)
16187         (calc-describe-thing, calc-full-help):
16188         * lisp/calc/calc-lang.el (calc-c-language)
16189         (math-parse-fortran-vector-end, math-parse-tex-sum)
16190         (math-parse-eqn-matrix, math-parse-eqn-prime)
16191         (calc-yacas-language, calc-maxima-language, calc-giac-language)
16192         (math-read-giac-subscr, math-read-math-subscr)
16193         (math-read-big-rec, math-read-big-balance):
16194         * lisp/calc/calc-misc.el (calc-help, report-calc-bug):
16195         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
16196         (calc-auto-recompute):
16197         * lisp/calc/calc-prog.el (calc-fix-token-name)
16198         (calc-read-parse-table-part, calc-user-define-invocation)
16199         (math-do-arg-check):
16200         * lisp/calc/calc-store.el (calc-edit-variable):
16201         * lisp/calc/calc-units.el (math-build-units-table-buffer):
16202         * lisp/calc/calc-vec.el (math-read-brackets):
16203         * lisp/calc/calc-yank.el (calc-edit-mode):
16204         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
16205         * lisp/calendar/appt.el (appt-display-message):
16206         * lisp/calendar/diary-lib.el (diary-check-diary-file)
16207         (diary-mail-entries, diary-from-outlook):
16208         * lisp/calendar/icalendar.el (icalendar-export-region)
16209         (icalendar--convert-float-to-ical)
16210         (icalendar--convert-date-to-ical)
16211         (icalendar--convert-ical-to-diary)
16212         (icalendar--convert-recurring-to-diary)
16213         (icalendar--add-diary-entry):
16214         * lisp/calendar/time-date.el (format-seconds):
16215         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
16216         (timeclock-make-hours-explicit, timeclock-log-data):
16217         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
16218         (todo-item-mark, todo-check-format)
16219         (todo-insert-item--next-param, todo-edit-item--next-key)
16220         (todo-mode):
16221         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
16222         * lisp/cedet/mode-local.el (describe-mode-local-overload)
16223         (mode-local-print-binding, mode-local-describe-bindings-2):
16224         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
16225         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
16226         * lisp/cus-start.el (standard):
16227         * lisp/cus-theme.el (describe-theme-1):
16228         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
16229         (custom--sort-vars-1, load-theme):
16230         * lisp/descr-text.el (describe-text-properties-1, describe-char):
16231         * lisp/dired-x.el (dired-do-run-mail):
16232         * lisp/dired.el (dired-log):
16233         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
16234         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
16235         (ad-disable-advice, ad-remove-advice, ad-set-argument)
16236         (ad-set-arguments, ad--defalias-fset, ad-activate)
16237         (ad-deactivate):
16238         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
16239         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
16240         (byte-optimize-while, byte-optimize-apply):
16241         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
16242         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
16243         (byte-compile-log-file, byte-compile-format-warn)
16244         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
16245         (byte-compile-cl-warn)
16246         (byte-compile-warn-about-unresolved-functions)
16247         (byte-compile-file, byte-compile--declare-var)
16248         (byte-compile-file-form-defmumble, byte-compile-form)
16249         (byte-compile-normal-call, byte-compile-check-variable)
16250         (byte-compile-variable-ref, byte-compile-variable-set)
16251         (byte-compile-subr-wrong-args, byte-compile-setq-default)
16252         (byte-compile-negation-optimizer)
16253         (byte-compile-condition-case--old)
16254         (byte-compile-condition-case--new, byte-compile-save-excursion)
16255         (byte-compile-defvar, byte-compile-autoload)
16256         (byte-compile-lambda-form)
16257         (byte-compile-make-variable-buffer-local, display-call-tree)
16258         (batch-byte-compile):
16259         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use):
16260         * lisp/emacs-lisp/chart.el (chart-space-usage):
16261         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
16262         (check-declare-warn, check-declare-file)
16263         (check-declare-directory):
16264         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
16265         (checkdoc-message-text-engine):
16266         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer)
16267         (cl--describe-class):
16268         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
16269         (cl--generic-describe, cl-generic-generalizers):
16270         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
16271         (cl-symbol-macrolet):
16272         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
16273         * lisp/emacs-lisp/copyright.el (copyright)
16274         (copyright-update-directory):
16275         * lisp/emacs-lisp/edebug.el (edebug-read-list):
16276         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
16277         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
16278         (eieio-oref):
16279         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
16280         * lisp/emacs-lisp/eieio-speedbar.el:
16281         (eieio-speedbar-child-make-tag-lines)
16282         (eieio-speedbar-child-description):
16283         * lisp/emacs-lisp/eieio.el (defclass, change-class):
16284         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
16285         (elint-init-form, elint-check-defalias-form)
16286         (elint-check-let-form):
16287         * lisp/emacs-lisp/ert.el (ert-get-test, ert-results-mode-menu)
16288         (ert-results-pop-to-backtrace-for-test-at-point)
16289         (ert-results-pop-to-messages-for-test-at-point)
16290         (ert-results-pop-to-should-forms-for-test-at-point)
16291         (ert-describe-test):
16292         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
16293         (find-function-library):
16294         * lisp/emacs-lisp/generator.el (iter-yield):
16295         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
16296         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
16297         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
16298         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
16299         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
16300         (advice--make, define-advice):
16301         * lisp/emacs-lisp/package-x.el (package-upload-file):
16302         * lisp/emacs-lisp/package.el (package-version-join)
16303         (package-disabled-p, package-activate-1, package-activate)
16304         (package--download-one-archive)
16305         (package--download-and-read-archives)
16306         (package-compute-transaction, package-install-from-archive)
16307         (package-install, package-install-selected-packages)
16308         (package-delete, package-autoremove, describe-package-1)
16309         (package-install-button-action, package-delete-button-action)
16310         (package-menu-hide-package, package-menu--list-to-prompt)
16311         (package-menu--perform-transaction)
16312         (package-menu--find-and-notify-upgrades):
16313         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
16314         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
16315         * lisp/emacs-lisp/ring.el (ring-previous, ring-next):
16316         * lisp/emacs-lisp/rx.el (rx-check, rx-anything)
16317         (rx-check-any-string, rx-check-any, rx-check-not, rx-=)
16318         (rx-repeat, rx-check-backref, rx-syntax, rx-check-category)
16319         (rx-form):
16320         * lisp/emacs-lisp/smie.el (smie-config-save):
16321         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
16322         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
16323         * lisp/emacs-lisp/testcover.el (testcover-1value):
16324         * lisp/emacs-lisp/timer.el (timer-event-handler):
16325         * lisp/emulation/viper-cmd.el (viper-toggle-parse-sexp-ignore-comments)
16326         (viper-toggle-search-style, viper-kill-buffer)
16327         (viper-brac-function):
16328         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
16329         * lisp/env.el (setenv):
16330         * lisp/erc/erc-button.el (erc-nick-popup):
16331         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login, english):
16332         * lisp/eshell/em-dirs.el (eshell/cd):
16333         * lisp/eshell/em-glob.el (eshell-glob-regexp)
16334         (eshell-glob-entries):
16335         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
16336         * lisp/eshell/esh-opt.el (eshell-show-usage):
16337         * lisp/facemenu.el (facemenu-add-new-face)
16338         (facemenu-add-new-color):
16339         * lisp/faces.el (read-face-name, read-face-font, describe-face)
16340         (x-resolve-font-name):
16341         * lisp/files-x.el (modify-file-local-variable):
16342         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
16343         (set-auto-mode, hack-one-local-variable--obsolete)
16344         (dir-locals-set-directory-class, write-file, basic-save-buffer)
16345         (delete-directory, copy-directory, recover-session)
16346         (recover-session-finish, insert-directory)
16347         (file-modes-char-to-who, file-modes-symbolic-to-number)
16348         (move-file-to-trash):
16349         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer):
16350         * lisp/find-cmd.el (find-generic, find-to-string):
16351         * lisp/finder.el (finder-commentary):
16352         * lisp/font-lock.el (font-lock-fontify-buffer):
16353         * lisp/format.el (format-write-file, format-find-file)
16354         (format-insert-file):
16355         * lisp/frame.el (get-device-terminal, select-frame-by-name):
16356         * lisp/fringe.el (fringe--check-style):
16357         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
16358         * lisp/help-fns.el (help-fns--key-bindings)
16359         (help-fns--compiler-macro, help-fns--parent-mode)
16360         (help-fns--obsolete, help-fns--interactive-only)
16361         (describe-function-1, describe-variable):
16362         * lisp/help.el (describe-mode)
16363         (describe-minor-mode-from-indicator):
16364         * lisp/image.el (image-type):
16365         * lisp/international/ccl.el (ccl-dump):
16366         * lisp/international/fontset.el (x-must-resolve-font-name):
16367         * lisp/international/mule-cmds.el (prefer-coding-system)
16368         (select-safe-coding-system-interactively)
16369         (select-safe-coding-system, activate-input-method)
16370         (toggle-input-method, describe-current-input-method)
16371         (describe-language-environment):
16372         * lisp/international/mule-conf.el (code-offset):
16373         * lisp/international/mule-diag.el (describe-character-set)
16374         (list-input-methods-1):
16375         * lisp/mail/feedmail.el (feedmail-run-the-queue):
16376         * lisp/mouse.el (minor-mode-menu-from-indicator):
16377         * lisp/mpc.el (mpc-playlist-rename):
16378         * lisp/msb.el (msb--choose-menu):
16379         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
16380         * lisp/net/imap.el (imap-interactive-login):
16381         * lisp/net/mairix.el (mairix-widget-create-query):
16382         * lisp/net/newst-backend.el (newsticker--sentinel-work):
16383         * lisp/net/newst-treeview.el (newsticker--treeview-load):
16384         * lisp/net/rlogin.el (rlogin):
16385         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
16386         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
16387         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
16388         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
16389         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
16390         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
16391         (org-babel-goto-named-result):
16392         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
16393         * lisp/org/ob-ref.el (org-babel-ref-resolve):
16394         * lisp/org/org-agenda.el (org-agenda-prepare):
16395         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
16396         (org-clock-resolve):
16397         * lisp/org/org-ctags.el (org-ctags-ask-rebuild-tags-file-then-find-tag):
16398         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
16399         * lisp/org/org-habit.el (org-habit-parse-todo):
16400         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
16401         (org-mouse-context-menu):
16402         * lisp/org/org-table.el (org-table-edit-formulas):
16403         * lisp/org/ox.el (org-export-async-start):
16404         * lisp/proced.el (proced-log):
16405         * lisp/progmodes/ada-mode.el (ada-get-indent-case)
16406         (ada-check-matching-start, ada-goto-matching-start):
16407         * lisp/progmodes/ada-prj.el (ada-prj-display-page):
16408         * lisp/progmodes/ada-xref.el (ada-find-executable):
16409         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
16410         * lisp/progmodes/etags.el (etags-tags-apropos-additional):
16411         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
16412         (flymake-start-syntax-check-process):
16413         * lisp/progmodes/python.el (python-shell-get-process-or-error)
16414         (python-define-auxiliary-skeleton):
16415         * lisp/progmodes/sql.el (sql-comint):
16416         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
16417         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate):
16418         * lisp/recentf.el (recentf-open-files):
16419         * lisp/replace.el (query-replace-read-from)
16420         (occur-after-change-function, occur-1):
16421         * lisp/scroll-bar.el (scroll-bar-columns):
16422         * lisp/server.el (server-get-auth-key):
16423         * lisp/simple.el (execute-extended-command)
16424         (undo-outer-limit-truncate, list-processes--refresh)
16425         (compose-mail, set-variable, choose-completion-string)
16426         (define-alternatives):
16427         * lisp/startup.el (site-run-file, tty-handle-args, command-line)
16428         (command-line-1):
16429         * lisp/subr.el (noreturn, define-error, add-to-list)
16430         (read-char-choice, version-to-list):
16431         * lisp/term/common-win.el (x-handle-xrm-switch)
16432         (x-handle-name-switch, x-handle-args):
16433         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
16434         * lisp/textmodes/reftex-ref.el (reftex-label):
16435         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
16436         * lisp/textmodes/two-column.el (2C-split):
16437         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
16438         (tutorial--find-changed-keys):
16439         * lisp/type-break.el (type-break-noninteractive-query):
16440         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
16441         (wdired-do-perm-changes):
16442         * lisp/whitespace.el (whitespace-report-region):
16443         Prefer grave quoting in source-code strings used to generate help
16444         and diagnostics.
16445         * lisp/faces.el (face-documentation):
16446         No need to convert quotes, since the result is a docstring.
16447         * lisp/info.el (Info-virtual-index-find-node)
16448         (Info-virtual-index, info-apropos):
16449         Simplify by generating only curved quotes, since info files are
16450         typically that ways nowadays anyway.
16451         * lisp/international/mule-diag.el (list-input-methods):
16452         Don’t assume text quoting style is curved.
16453         * lisp/org/org-bibtex.el (org-bibtex-fields):
16454         Revert my recent changes, going back to the old quoting style.
16456 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
16458         * lisp/emacs-lisp/package.el: Reduce autoloading before compiling.
16459         (package--autoloads-file-name)
16460         (package--activate-autoloads-and-load-path): New function.
16461         (package-activate-1): Delegate autoloading and load-path
16462         configuration to `package--activate-autoloads-and-load-path'.
16463         (package--compile): Before compilation, call
16464         `package--activate-autoloads-and-load-path' instead of
16465         `package-activate-1'.
16467 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
16469         * src/keyboard.c (read_key_sequence): Complete last fix (bug#21403).
16471 2015-09-07  Eli Zaretskii  <eliz@gnu.org>
16473         Fix deletion of symlinks to directories on MS-Windows
16474         * src/w32.c (sys_unlink): If 'unlink' fails, and the argument is a
16475         symlink to a directory, try again with 'rmdir'.
16476         (is_symlink): If the argument is a symlink to a directory, set a
16477         bit in the return value to indicate that fact.
16479 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
16481         * lisp/emacs-lisp/package.el (package-initialize): Set enable-at-startup
16482         When `package-initialize' is called as part of loading the init file,
16483         the user probably doesn't want it to be called again afterwards.
16484         In this situation, `package-initialize' now sets
16485         `package-enable-at-startup' to nil to prevent that.  The user can have
16486         the old behavior by setting this variable to t after the call to
16487         `package-initialize'.  (Bug#21423)
16488         * doc/emacs/package.texi (Package Installation): Document it.
16489         * doc/lispref/package.texi (Packaging Basics): Document it.
16490         * etc/NEWS: Document it.
16492 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
16494         Bump version of ntlm.el to 2.00
16495         * lisp/net/ntlm.el: Bump version to 2.00.  New maintainer.
16496         Add comm keyword.
16498 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
16500         * doc/misc/gnus.texi (Mail Source Specifiers):
16501         Allow :mailbox to be a list.
16503 2015-09-06  Dmitry Gutov  <dgutov@yandex.ru>
16505         * lisp/progmodes/etags.el (etags-tags-completion-table):
16506         Allow even one non-regular character before the implicit tag name.
16507         Reported at http://emacs.stackexchange.com/questions/15269/.
16509 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
16511         Add support for NTLMv2 authentication
16512         * lisp/net/ntlm.el (ntlm): New customization group.
16513         (ntlm-compatibility-level): New defcustom.
16514         (ntlm-compute-timestamp): New function.
16515         (ntlm-generate-nonce): Likewise.
16516         (ntlm-build-auth-response): Add support for NTLMv2 authentication.
16518 2015-09-06  Artur Malabarba  <bruce.connor.am@gmail.com>
16520         * lisp/emacs-lisp/package.el: Rename custom faces.
16521         All of the recently introduced faces, like `package-name-face', have
16522         been renamed to no end in `-face' to comply with the convention
16523         described in (info "(elisp) Defining Faces").
16524         (package-name, package-description)
16525         (package-status-built-in, package-status-external)
16526         (package-status-available, package-status-new)
16527         (package-status-held, package-status-disabled)
16528         (package-status-installed, package-status-dependency)
16529         (package-status-unsigned, package-status-incompat)
16530         (package-status-avail-obso): New faces.
16531         (package-menu--print-info-simple): Use them.
16533 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
16535         mail-source.el: Make the imap mail-source's :mailbox handle a list
16536         * lisp/gnus/mail-source.el (mail-source-fetch-imap):
16537         Allow :mailbox to be  a list.
16539 2015-09-06  Eric Abrahamsen  <eric@ericabrahamsen.net>
16541         nnimap.el: Handle nil arg to nnimap-request-group
16542         * lisp/gnus/nnimap.el (nnimap-request-group): Handle nil "info" arg.
16543         This arg isn't always passed in, check it's not nil before making it
16544         into a list.  The active arg will also be nil if the group is new,
16545         check for that.
16547 2015-09-06  Michael Albinus  <michael.albinus@gmx.de>
16549         File notifications: Support renaming over directory boundaries
16550         * lisp/filenotify.el (file-notify-handle-event):
16551         (file-notify--pending-event): Adapt docstring.
16552         (file-notify--descriptor, file-notify-callback): Reimplement in
16553         order to support renaming over directory boundaries.
16554         (file-notify-add-watch): Adapt `file-notify--descriptor' call.
16555         * doc/lispref/os.texi (File Notifications): Remove limitation of
16556         file renaming to the same directory.
16558 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
16560         Spelling fix (Bug#21420)
16562 2015-09-05  Nicolas Petton  <nicolas@petton.fr>
16564         Improve the semantic of map-some
16565         Update map-some to return the returned by the predicate, similar to
16566         seq-some.
16567         * lisp/emacs-lisp/map.el (map-some): Update the function to return the
16568           return value of the predicate.
16569         * test/automated/map-tests.el (test-map-some): Update the test to check
16570           for non-nil values only.
16572         Rename map-contains-key-p and map-some-p
16573         Remove the "-p" suffix from both function names.
16574         * lisp/emacs-lisp/map.el (map-contains-key, map-some):
16575           Rename the functions.
16576         * test/automated/map-tests.el (test-map-contains-key, test-map-some):
16577           Update both test functions.
16579         Improve the semantic of seq-some
16580         Update seq-some to return non-nil if the predicate returns non-nil for
16581         any element of the seq, in which case the returned value is the one
16582         returned by the predicate.
16583         * lisp/emacs-lisp/seq.el (seq-some): Update the function and its
16584           docstring.
16585         * test/automated/seq-tests.el (test-seq-some): Add a regression test.
16586         * doc/lispref/sequences.texi (Sequence Functions): Update the
16587           documentation for seq-some.
16589         Rename seq-some-p to seq-some and seq-contains-p to seq-contains
16590         * lisp/emacs-lisp/seq.el (seq-some, seq-contains): Rename the functions
16591           without the "-p" prefix.
16592         * test/automated/seq-tests.el (test-seq-some, test-seq-contains): Update
16593           the tests accordingly.
16594         * doc/lispref/sequences.texi (Sequence Functions): Update the
16595           documentation for seq.el.
16597 2015-09-05  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
16599         text-quoting-style for usage of fn names with ‘’
16600         * lisp/help.el (help--docstring-quote): Don’t assume
16601         text-quoting-style is ‘curve’ when generating usage strings for
16602         functions whose names contain curved quotes.
16604 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
16606         Fix fix for describe-function keybinding confusion
16607         This fixes a bug introduced by the previous patch.
16608         * lisp/help-fns.el (help-fns--signature):
16609         Last arg of help-fns--signature is now a buffer, or nil if a
16610         raw signature is wanted.  All callers changed.
16611         (describe-function-1): Use this to do the right thing with signatures.
16613 2015-09-05  Johan Bockgård  <bojohan@gnu.org>
16615         * doc/lispref/frames.texi (Mouse Tracking): Fix typo.
16617         Use PAT rather than UPAT in pcase macros
16618         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
16619         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>: Use PAT rather
16620           than UPAT.
16622 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
16624         Fix describe-function keybinding confusion
16625         * lisp/help-fns.el (describe-function-1): Compute signature
16626         in the original buffer, not in standard-output, so that
16627         substitute-command-keys uses the proper keybindings.
16628         This fixes Bug#21412, introduced in commit
16629         2015-06-11T10:23:46-0700!eggert@cs.ucla.edu.
16631 2015-09-05  Xue Fuqiao  <xfq.free@gmail.com>
16633         * doc/emacs/programs.texi (Program Modes): Remove an index entry.
16635 2015-09-05  Robert Pluim  <rpluim@gmail.com>  (tiny change)
16637         Avoid read error messages from 'inotify'
16638         * src/process.c (wait_reading_process_output): Add a
16639         'tls_available' set and manipulate it instead of 'Available' when
16640         checking TLS inputs.  Assign the value to 'Available' only if we
16641         find any TLS data waiting to be read.  This avoids error messages
16642         from 'inotify' that tries to read data it shouldn't.  (Bug#21337)
16644 2015-09-05  Eli Zaretskii  <eliz@gnu.org>
16646         Avoid errors in thing-at-point with 2nd argument non-nil
16647         * lisp/thingatpt.el (thing-at-point): Only call 'length' on
16648         sequences.  (Bug#21391)
16650 2015-09-05  Philip  <pipcet@gmail.com>  (tiny change)
16652         Fix segfaults due to using a stale face ID
16653         * src/xdisp.c (forget_escape_and_glyphless_faces): New function.
16654         (display_echo_area_1, redisplay_internal): Call it to avoid
16655         reusing stale face IDs for 'escape-glyph' and 'glyphless-char'
16656         faces, which could case a segfault if the frame's face cache was
16657         freed since the last redisplay.  (Bug#21394)
16658         * src/xfaces.c (free_realized_faces):
16659         Call forget_escape_and_glyphless_faces.
16660         * src/dispextern.h (forget_escape_and_glyphless_faces): Add prototype.
16662 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
16664         Fix minor problems with " in manual
16666 2015-09-04  Michael Albinus  <michael.albinus@gmx.de>
16668         * doc/misc/tramp.texi (Frequently Asked Questions): New item for ad-hoc
16669         multi-hop files.
16671 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
16673         Support automated ‘make check’ in non-C locale
16674         This lets the builder optionally test Emacs behavior in other locales.
16675         The C locale is still the default for tests.
16676         * test/automated/Makefile.in (TEST_LOCALE): New macro.
16677         (emacs): Use it.
16678         * test/automated/flymake-tests.el (flymake-tests--current-face):
16679         Use C locale for subprocesses so that tests behave as expected.
16680         * test/automated/python-tests.el:
16681         (python-shell-prompt-validate-regexps-1)
16682         (python-shell-prompt-validate-regexps-2)
16683         (python-shell-prompt-validate-regexps-3)
16684         (python-shell-prompt-validate-regexps-4)
16685         (python-shell-prompt-validate-regexps-5)
16686         (python-shell-prompt-validate-regexps-6)
16687         (python-shell-prompt-set-calculated-regexps-1):
16688         Adjust expected output to match locale.
16689         * test/automated/tildify-tests.el (tildify-test--test)
16690         (tildify-space-test--test, tildify-space-undo-test--test):
16691         This test assumes UTF-8 encoding.
16693 2015-09-03  Paul Eggert  <eggert@cs.ucla.edu>
16695         Fix some more docstring etc. quoting problems
16696         Mostly these fixes prevent the transliteration of apostrophes
16697         that should stay apostrophes.  Also, prefer curved quotes in
16698         Bahá’í proper names, as that’s the preferred Bahá’í style and
16699         these names are chock-full of non-ASCII characters anyway.
16700         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-autoload)
16701         (eieio-defclass-internal):
16702         * lisp/emacs-lisp/eieio.el (defclass):
16703         * lisp/hi-lock.el (hi-lock-mode):
16704         Don’t transliterate Lisp apostrophes when generating a
16705         doc string or diagnostic.
16706         * lisp/international/mule-diag.el (list-coding-systems-1):
16707         * lisp/international/ogonek.el (ogonek-jak, ogonek-how):
16708         * lisp/mail/sendmail.el (sendmail-query-user-about-smtp):
16709         * lisp/vc/ediff-mult.el (ediff-redraw-registry-buffer):
16710         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
16711         Substitute quotes before putting them in the help buffer.
16713 2015-09-03  Stefan Monnier  <monnier@iro.umontreal.ca>
16715         Re-add the notion of echo_prompt lost in the translation
16716         * src/keyboard.h (struct kboard): Replace echo_after_prompt with new
16717         echo_prompt which contains the actual string.  Update all uses.
16718         * src/keyboard.c (kset_echo_prompt): New function.
16719         (echo_update): Add echo_prompt at the very beginning.
16720         (read_char): Remove workaround for bug#19875, not needed any more.
16721         (read_key_sequence): Set echo_prompt rather than echo_string
16722         (bug#21403).
16723         (mark_kboards): Mark echo_prompt.
16725         Fix disassembly of non-compiled lexical functions (bug#21377)
16726         * lisp/emacs-lisp/bytecomp.el (byte-compile): Handle `closure' arg.
16727         * lisp/emacs-lisp/disass.el: Use lexical-binding.
16728         (disassemble): Recognize `closure's as well.
16729         (disassemble-internal): Use indirect-function and
16730         help-function-arglist, and accept `closure's.
16731         (disassemble-internal): Use interactive-form.
16732         (disassemble-1): Use functionp.
16734         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
16735         Don't compose inside verbatim blocks!
16737 2015-09-03  Mark Oteiza  <mvoteiza@udel.edu>
16739         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "man:"
16740         (bug#19441).
16742         * lisp/mpc.el (mpc--proc-connect): Handle unix sockets (bug#19394).
16744 2015-09-03  Dmitry Gutov  <dgutov@yandex.ru>
16746         vc-git-mode-line-string: Explicitly re-apply the face
16747         * lisp/vc/vc-git.el (vc-git-mode-line-string): Explicitly re-apply
16748         the face (bug#21404).
16750 2015-09-02  Paul Eggert  <eggert@cs.ucla.edu>
16752         Treat initial-scratch-message as a doc string
16753         * doc/emacs/building.texi (Lisp Interaction):
16754         * doc/lispref/os.texi (Startup Summary):
16755         * etc/NEWS: Document this.
16756         * lisp/startup.el (initial-scratch-message):
16757         Look up find-file’s key rather than hardcoding it.
16758         (command-line-1): Substitute the doc string.
16759         This also substitutes the quotes, which will help test display
16760         quoting at startup.
16762         Fix describe-char bug with glyphs on terminals
16763         * lisp/descr-text.el (describe-char): Terminals can have glyphs in
16764         buffers too, so don’t treat them differently from graphic displays.
16765         Without this fix, describe-char would throw an error on a terminal
16766         if given a glyph with a non-default face.
16768         Follow text-quoting-style in display table init
16769         This attempts to fix a problem reported by Alan Mackenzie in:
16770         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00112.html
16771         * doc/lispref/display.texi (Active Display Table):
16772         Mention how text-quoting-style affects it.
16773         * doc/lispref/help.texi (Keys in Documentation):
16774         Say how to set text-quoting-style in ~/.emacs.
16775         * etc/NEWS: Document the change.
16776         * lisp/startup.el (startup--setup-quote-display):
16777         Follow user preference if text-quoting-style is set.
16778         (command-line): Setup quote display again if user expresses
16779         a preference in .emacs.
16781 2015-09-02  K. Handa  <handa@gnu.org>
16783         Fix typo
16784         * src/ftfont.c (ftfont_drive_otf): otf_positioning_type_components_mask
16785         -> OTF_positioning_type_components_mask.
16787         Fix previous change
16788         * src/ftfont.c (ftfont_drive_otf): Remember some bits of
16789         OTF_Glyph->positioning_type in MFLTGlyphFT->libotf_positioning_type.
16791 2015-09-01  David Caldwell  <david@porkrind.org>  (tiny change)
16793         * lisp/vc/vc-hooks.el (vc-refresh-state): New command.
16794         Rename from vc-find-file-hook and make interactive.
16795         (vc-find-file-hook): Redefine as obsolete alias.
16797 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
16799         Escape ` and ' in doc
16800         Escape apostrophes and grave accents in docstrings if they are
16801         are supposed to stand for themselves and are not quotes.  Remove
16802         apostrophes from docstring examples like ‘'(calendar-nth-named-day
16803         -1 0 10 year)’ that confuse source code with data.  Do some other
16804         minor docstring fixups as well, e.g., insert a missing close quote.
16806 2015-09-01  Stefan Monnier  <monnier@iro.umontreal.ca>
16808         Generalize the prefix-command machinery of C-u
16809         * lisp/simple.el (prefix-command-echo-keystrokes-functions)
16810         (prefix-command-preserve-state-hook): New hooks.
16811         (internal-echo-keystrokes-prefix): New function.
16812         (prefix-command--needs-update, prefix-command--last-echo): New vars.
16813         (prefix-command-update, prefix-command-preserve): New functions.
16814         (reset-this-command-lengths): New compatibility definition.
16815         (universal-argument--mode): Call prefix-command-update.
16816         (universal-argument, universal-argument-more, negative-argument)
16817         (digit-argument): Call prefix-command-preserve-state.
16818         * src/keyboard.c: Call internal-echo-keystrokes-prefix to build
16819         the "prefix argument" to echo.
16820         (this_command_key_count_reset, before_command_key_count)
16821         (before_command_echo_length): Delete variables.
16822         (echo_add_key): Always add a space.
16823         (echo_char): Remove.
16824         (echo_dash): Don't give up when this_command_key_count is 0, since that
16825         is now the case after a prefix command.
16826         (echo_update): New function, extracted from echo_now.
16827         (echo_now): Use it.
16828         (add_command_key, read_char, record_menu_key): Remove old disabled code.
16829         (command_loop_1): Don't refrain from pushing an undo boundary when
16830         prefix-arg is set.  Remove other prefix-arg special case, now handled
16831         directly in the prefix commands instead.  But call echo_now if there's
16832         a prefix state to echo.
16833         (read_char, record_menu_key): Use echo_update instead of echo_char.
16834         (read_key_sequence): Use echo_now rather than echo_dash/echo_char.
16835         (Freset_this_command_lengths): Delete function.
16836         (syms_of_keyboard): Define Qinternal_echo_keystrokes_prefix.
16837         (syms_of_keyboard): Don't defsubr Sreset_this_command_lengths.
16838         * lisp/simple.el: Use those new hooks for C-u.
16839         (universal-argument--description): New function.
16840         (prefix-command-echo-keystrokes-functions): Use it.
16841         (universal-argument--preserve): New function.
16842         (prefix-command-preserve-state-hook): Use it.
16843         (command-execute): Call prefix-command-update if needed.
16844         * lisp/kmacro.el (kmacro-step-edit-prefix-commands)
16845         (kmacro-step-edit-prefix-index): Delete variables.
16846         (kmacro-step-edit-query, kmacro-step-edit-insert): Remove ad-hoc
16847         support for prefix arg commands.
16848         (kmacro-step-edit-macro): Don't bind kmacro-step-edit-prefix-index.
16849         * lisp/emulation/cua-base.el (cua--prefix-override-replay)
16850         (cua--shift-control-prefix): Use prefix-command-preserve-state.
16851         Remove now unused arg `arg'.
16852         (cua--prefix-override-handler, cua--prefix-repeat-handler)
16853         (cua--shift-control-c-prefix, cua--shift-control-x-prefix):
16854         Update accordingly.
16855         (cua--prefix-override-timeout): Don't call reset-this-command-lengths
16856         any more.
16857         (cua--keep-active, cua-exchange-point-and-mark): Don't set mark-active
16858         if the mark is not set.
16860 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
16862         Rework quoting in Emacs Lisp Introduction
16863         * doc/lispintro/emacs-lisp-intro.texi (Sample let Expression)
16864         (if in more detail, type-of-animal in detail, else): Rework the
16865         early example to use " rather than ' so that we don’t burden
16866         complete novices with the low-priority detail of text quoting style.
16867         (Complete zap-to-char, kill-region, Complete copy-region-as-kill)
16868         (kill-new function, kill-ring-yank-pointer)
16869         (Complete forward-sentence, Loading Files)
16870         (Code for current-kill, Code for current-kill, yank):
16871         Resurrect the Emacs 22 versions of the code, which uses grave
16872         quoting style in doc strings.
16873         (Complete zap-to-char): Mention how quoting works in doc strings.
16875         Setup quote display only if interactive
16876         * lisp/startup.el (command-line):
16877         Skip call to startup--setup-quote-display if noninteractive.
16878         Without this change, python-shell-prompt-validate-regexps-1
16879         fails in test/automated/python-tests.el when run in an
16880         en_US.utf8 locale on Fedora.
16882 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
16884         Use defalias at the top level
16885         * lisp/gnus/gnus-util.el (gnus-format-message):
16886         * lisp/net/tls.el (tls-format-message): Use defalias at the top level
16887         so as to make eval-and-compile unnecessary.  Thanks to Stefan Monnier.
16889 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
16891         terminal-init-w32console mimicks command-line
16892         Problem reported by Eli Zaretskii.
16893         * lisp/startup.el (startup--setup-quote-display):
16894         New function, refactored from a part of ‘command-line’.
16895         (command-line): Use it.
16896         * lisp/term/w32console.el (terminal-init-w32console):
16897         Use it, so that this function stays consistent with ‘command-line’.
16899         Display replacement quotes with shadow glyphs
16900         * lisp/startup.el (command-line): When displaying ASCII
16901         replacements for curved quotes, use a shadow glyph instead of a
16902         regular one, to avoid ambiguity.
16904 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
16906         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Mask "Password:".
16908 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
16910         Docstring fixes re quotes in C code
16911         Fix some docstring quoting problems, mostly by escaping apostrophe.
16913 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
16915         Some Tramp password fixes
16916         * lisp/net/tramp.el (tramp-clear-passwd): Clear also the passwords
16917         of the hops.
16918         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Move "-p" "Password:"
16919         at the beginning of the command.  Otherwise, it could be
16920         interpreted as password prompt if the remote host echoes the
16921         command.
16922         (tramp-remote-coding-commands): Add "openssl enc -base64".
16924 2015-09-01  Dmitry Gutov  <dgutov@yandex.ru>
16926         Make vc-git-working-revision always return the commit hash
16927         * lisp/vc/vc-git.el (vc-git-working-revision):
16928         Return the commit hash (bug#21383).
16929         (vc-git--symbolic-ref): New function, extracted from above.
16930         (vc-git-mode-line-string): Use it.
16932 2015-09-01  K. Handa  <handa@gnu.org>
16934         Use the new type MFLTGlyphFT for MFLTGlyphString.glyphs
16935         * src/ftfont.c (MFLTGlyphFT): New type.
16936         (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_drive_otf)
16937         (ftfont_shape_by_flt): Make MFLTGlyphFT the actual type of
16938         elements in the array MFLTGlyphString.glyphs.
16940 2015-09-01  Stephen Leake  <stephen_leake@stephe-leake.org>
16942         Improve comments in elisp-mode.el, elisp-mode-tests.el
16943         * lisp/progmodes/elisp-mode.el: Clean up FIXMEs, comments.
16945         Delete Emacs 25 test in mode-local.el
16946         * lisp/cedet/mode-local.el (describe-mode-local-overload):
16947         Fix missed an edit in previous commit.
16949         Show all known mode-local overrides in *Help*
16950         * lisp/cedet/mode-local.el (describe-mode-local-overload):
16951         Assume Emacs 25. Add all known mode-local overrides.
16953 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
16955         * lisp/gnus/gnus-sum.el (gnus-summary-search-article):
16956         Ensure that the article where the search word is found is displayed
16957         and pointed to in the summary buffer.
16959 2015-08-31  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
16961         * lisp/newcomment.el (comment-dwim): Use `use-region-p'.
16962         When the region is active, but is empty (length 0), act as though
16963         the region was not active; that is, put a comment at the end of
16964         the line.  (Bug#21119)
16966 2015-08-31  Katsumi Yamaoka  <yamaoka@jpl.org>
16968         Port tls.el to older Emacs
16969         * lisp/net/tls.el (tls-format-message):
16970         Alias to format-message, or format if not available.
16971         (open-tls-stream): Use it.
16973 2015-08-31  Rüdiger Sonderfeld  <ruediger@c-plusplus.net>
16975         hideif.el: Recognize .h++ as C++ header
16976         * lisp/progmodes/hideif.el (hide-ifdef-header-regexp): Add .h++.
16978         isearch: Document character folding mode
16979         * lisp/isearch.el (isearch-forward):
16980         Mention `isearch-toggle-character-fold' in doc string.
16982 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
16984         Quoting fixes in ERC and Eshell
16985         * lisp/erc/erc-autoaway.el (erc-autoaway-set-away):
16986         * lisp/erc/erc-backend.el (define-erc-response-handler):
16987         * lisp/erc/erc-fill.el (erc-fill-static-center):
16988         * lisp/eshell/em-dirs.el (eshell-save-some-last-dir):
16989         * lisp/eshell/em-glob.el (eshell-glob-entries):
16990         * lisp/eshell/em-hist.el (eshell-save-some-history):
16991         * lisp/eshell/em-unix.el (eshell-remove-entries, eshell/rm)
16992         (eshell-shuffle-files):
16993         * lisp/eshell/esh-cmd.el (eshell-do-eval):
16994         * lisp/eshell/esh-proc.el (eshell-process-interact)
16995         (eshell-query-kill-processes):
16996         Respect ‘text-quoting-style’ in diagnostics and doc strings.
16998         Quoting fixes in Gnus
16999         * lisp/gnus/gnus-agent.el:
17000         (gnus-agent-possibly-synchronize-flags-server):
17001         * lisp/gnus/gnus-art.el (gnus-article-browse-delete-temp-files):
17002         * lisp/gnus/gnus-eform.el (gnus-edit-form):
17003         * lisp/gnus/gnus-group.el (gnus-group-edit-group)
17004         (gnus-group-nnimap-edit-acl):
17005         * lisp/gnus/gnus-topic.el (gnus-topic-edit-parameters):
17006         * lisp/gnus/mail-source.el (mail-source-delete-old-incoming):
17007         * lisp/gnus/message.el (message-strip-subject-encoded-words)
17008         (message-check-recipients, message-send-form-letter):
17009         * lisp/gnus/mm-decode.el (mm-display-part):
17010         * lisp/gnus/mm-uu.el (mm-uu-pgp-signed-extract-1):
17011         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
17012         (mml-smime-get-ldap-cert):
17013         * lisp/gnus/spam-report.el (spam-report-process-queue):
17014         Respect ‘text-quoting-style’ in diagnostics.
17015         * lisp/gnus/gnus-art.el (article-display-face)
17016         * lisp/gnus/gnus-fun.el (gnus-display-x-face-in-from):
17017         Use straight quoting in email.
17018         * lisp/gnus/rfc2231.el (rfc2231-decode-encoded-string):
17019         Escape apostrophes in doc strings.
17021         Quoting fixes in lisp mail, mh-e, net, url
17022         * lisp/mail/emacsbug.el (report-emacs-bug)
17023         (report-emacs-bug-hook): Use straight quotes in outgoing email,
17024         * lisp/mail/feedmail.el (feedmail-message-action-help-blat):
17025         * lisp/mail/rmail.el (rmail-unknown-mail-followup-to):
17026         * lisp/mail/rmailout.el (rmail-output-read-file-name):
17027         * lisp/net/imap.el (imap-interactive-login):
17028         * lisp/net/tls.el (open-tls-stream):
17029         * lisp/url/url-auth.el (url-register-auth-scheme):
17030         Respect ‘text-quoting-style’ in diagnostics.
17031         * lisp/mh-e/mh-e.el (mh-sortm-args):
17032         Quote docstring example using text quotes, not as a Lisp quote.
17034 2015-08-31  Stephen Leake  <stephen_leake@stephe-leake.org>
17036         Fix some byte-compiler warnings in EDE
17037         This fixes a bug that caused ede-generic-new-autoloader to overwrite the
17038         existing autoloader list, rather than add to it.
17039         * lisp/cedet/ede/auto.el (ede-project-class-files): Delete obsolete name
17040         argument to eieio class constructor.
17041         (ede-show-supported-projects): New.
17042         (ede-add-project-autoload): Replace obsolete `eieio-object-name-string'
17043         with (oref ... name).
17044         (ede-auto-load-project): Use slot name, not initarg key.
17045         * lisp/cedet/ede/generic.el (ede-generic-load)
17046         (ede-generic-find-matching-target): Use slot name, not initarg key.
17047         (ede-find-target): Use oref-default on class name.
17048         (ede-generic-new-autoloader): Delete obsolete name argument to eieio
17049         class constructor.
17050         (ede-enable-generic-projects): Make project type names unique.
17052 2015-08-31  Eli Zaretskii  <eliz@gnu.org>
17054         Fix directory accessibility tests for w32 network volumes
17055         * src/w32.c (faccessat): Don't fail with network volumes without a
17056         share.
17057         (w32_accessible_directory_p): Handle network volumes without a
17058         share.
17060         Fix handling long file names in readdir on MS-Windows
17061         * src/w32.c (sys_readdir): Append "\*" to the directory after
17062         converting it to UTF-16/ANSI, not before, to avoid overflowing the
17063         260-character limit on file names in filename_to_utf16/ansi.
17065         Make file-accessible-directory-p reliable on MS-Windows
17066         * src/w32.c (w32_accessible_directory_p): New function.
17067         * src/w32.h (w32_accessible_directory_p): Add prototype.
17068         * src/fileio.c (file_accessible_directory_p) [WINDOWSNT]: Call
17069         w32_accessible_directory_p to test a directory for accessibility
17070         by the current user.  (Bug#21346)
17071         (Ffile_accessible_directory_p): Remove the w32 specific caveat
17072         from the doc string.
17074 2015-08-31  Martin Rudalics  <rudalics@gmx.at>
17076         Don't call do_pending_window_change in signal handlers (Bug#21380)
17077         * src/gtkutil.c (xg_frame_resized):
17078         * src/xterm.c (x_set_window_size):
17079         * src/w32term.c (x_set_window_size): Don't call
17080         do_pending_window_change.
17082 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
17084         Quoting fixes in lisp/org
17085         * lisp/org/org-agenda.el (org-search-view, org-todo-list)
17086         (org-tags-view):
17087         * lisp/org/org-capture.el (org-capture-mode)
17088         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
17089         (org-ctags-ask-append-topic):
17090         * lisp/org/org.el (org-time-string-to-time)
17091         (org-time-string-to-absolute):
17092         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
17093         (org-ctags-ask-append-topic):
17094         * lisp/org/org.el (org-time-string-to-time)
17095         (org-time-string-to-absolute):
17096         Respect ‘text-quoting-style’ in diagnostics.
17097         * lisp/org/org-agenda.el (org-agenda-custom-commands)
17098         (org-agenda-dim-blocked-tasks): Plural of TODO is TODOs, not TODO’s.
17099         * lisp/org/org-capture.el (org-capture-fill-template):
17100         Avoid contraction in output file that might be ASCII.
17101         * lisp/org/org-compat.el (format-message):
17102         Define if not already defined, for backward compatibility.
17103         * lisp/org/org-src.el (org-edit-src-save):
17104         * lisp/org/org.el (org-cycle, org-ctrl-c-ctrl-c):
17105         Escape apostrophes in diagnostics.
17107         Treat “instead” strings as docstrings
17108         * lisp/emacs-lisp/bytecomp.el (byte-compile-form):
17109         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
17110         Substitute quotes in instead strings.
17112 2015-08-31  Nicolas Petton  <nicolas@petton.fr>
17114         Better documentation of seq-let
17115         * doc/lispref/sequences.texi (Sequence Functions): Rephrase the
17116         documentation of seq-let.
17118 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
17120         * lisp/international/ccl.el: Fix quoting.
17122         Quoting fixes in lisp/international and lisp/leim
17123         * lisp/international/ccl.el (ccl-dump, ccl-dump-call):
17124         * lisp/international/ja-dic-utl.el (skkdic-lookup-key):
17125         * lisp/international/mule-cmds.el:
17126         (select-safe-coding-system-interactively, leim-list-file-name):
17127         * lisp/international/quail.el (quail-use-package, quail-help):
17128         * lisp/international/titdic-cnv.el (tit-process-header)
17129         (miscdic-convert):
17130         Respect text quoting style in doc strings and diagnostics.
17131         * lisp/international/quail.el (lisp/international/quail.el):
17132         * lisp/leim/quail/ethiopic.el ("ethiopic"):
17133         Escape apostrophes in doc strings.
17135         Make ‘text-quoting-style’ a plain defvar
17136         It doesn’t need customization, as it’s likely useful only by experts.
17137         Suggested by Stefan Monnier in:
17138         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg01020.html
17139         * lisp/cus-start.el: Remove doc.c section for builtin customized vars.
17141         Quoting fixes in lisp/textmodes
17142         * lisp/textmodes/bibtex.el (bibtex-validate)
17143         (bibtex-validate-globally, bibtex-search-entries):
17144         * lisp/textmodes/ispell.el (ispell-command-loop):
17145         * lisp/textmodes/page-ext.el (search-pages, pages-directory):
17146         * lisp/textmodes/texinfmt.el (texinfmt-version)
17147         (texinfo-format-region, texinfo-format-buffer-1):
17148         * lisp/textmodes/two-column.el (2C-split):
17149         Respect text quoting style in doc strings and diagnostics.
17150         * lisp/textmodes/conf-mode.el (conf-mode-map, conf-quote-normal):
17151         * lisp/textmodes/sgml-mode.el (sgml-specials, sgml-mode):
17152         Escape apostrophes in doc strings.
17154         Documentation fixes re quotes
17155         Prefer curved quotes in examples if users will typically see
17156         curved quotes when the examples run.
17157         Mention format-message when appropriate.
17158         Don’t use @code in examples.
17159         Quote an apostrophe with @kbd.
17161         Quoting fixes in lisp/progmodes
17162         * lisp/progmodes/cc-engine.el (c-bos-report-error):
17163         * lisp/progmodes/cpp.el (cpp-edit-reset):
17164         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
17165         * lisp/progmodes/etags.el (etags-tags-apropos-additional)
17166         (etags-tags-apropos, list-tags, tags-apropos):
17167         * lisp/progmodes/executable.el (executable-set-magic):
17168         * lisp/progmodes/octave.el (octave-sync-function-file-names)
17169         (octave-help, octave-find-definition-default-filename)
17170         (octave-find-definition):
17171         Respect text quoting style in doc strings and diagnostics.
17172         * lisp/progmodes/cc-langs.el (c-populate-syntax-table):
17173         * lisp/progmodes/verilog-mode.el (verilog-auto-reset-widths):
17174         * lisp/progmodes/vhdl-mode.el (vhdl-electric-quote):
17175         Escape apostrophes in doc strings.
17176         * lisp/progmodes/cmacexp.el (c-macro-expansion):
17177         Use straight quoting in ASCII comment.
17178         * lisp/progmodes/idlwave.el (idlwave-auto-fill-split-string)
17179         (idlwave-pad-keyword):
17180         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate)
17181         (vhdl-electric-open-bracket, vhdl-electric-close-bracket):
17182         (vhdl-electric-semicolon, vhdl-electric-comma)
17183         (vhdl-electric-period, vhdl-electric-equal):
17184         Use directed quotes in diagnostics and doc strings.
17186 2015-08-30  Xue Fuqiao  <xfq.free@gmail.com>
17188         Minor documentation and NEWS tweak
17189         * doc/lispintro/emacs-lisp-intro.texi (fwd-para let):
17190         Add an index entry.
17191         * etc/NEWS: Fix a typo in character-fold-to-regexp.
17193 2015-08-30  Michael Albinus  <michael.albinus@gmx.de>
17195         * lisp/net/tramp-sh.el (tramp-convert-file-attributes):
17196         Revert patch from 2015-08-24.  Tramp shall behave like for local files.
17197         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
17198         Adapt test.
17200 2015-08-30  Paul Eggert  <eggert@cs.ucla.edu>
17202         Text quoting fixes in cedet, emulation, emacs-lisp
17203         * lisp/cedet/ede.el (ede-check-project-directory):
17204         * lisp/cedet/semantic/analyze/debug.el
17205         (semantic-analyzer-debug-insert-include-summary):
17206         * lisp/cedet/semantic/bovine/c.el (semantic-c-describe-environment):
17207         * lisp/cedet/semantic/decorate/include.el
17208         (semantic-decoration-unknown-include-describe)
17209         (semantic-decoration-all-include-summary):
17210         * lisp/cedet/semantic/ia.el (semantic-ia-fast-jump):
17211         * lisp/emulation/edt.el (edt-load-keys):
17212         * lisp/emulation/viper-cmd.el
17213         (viper-display-current-destructive-command)
17214         (viper-query-replace, viper-brac-function):
17215         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-compile):
17216         * lisp/emulation/viper-macs.el (viper-unrecord-kbd-macro):
17217         Respect text quoting style in doc string or diagnostic.
17218         * lisp/cedet/mode-local.el (describe-mode-local-overload):
17219         Use format-message to avoid overtranslating quotes.
17220         * lisp/emacs-lisp/checkdoc.el (checkdoc-in-sample-code-p):
17221         Escape an apostrophe in a docstring.
17222         * lisp/emacs-lisp/warnings.el (lwarn): Fix doc string.
17224 2015-08-29  Daniel Colascione  <dancol@dancol.org>
17226         Fix which-func for curly quotes: look for symbol, not message
17227         * lisp/progmodes/which-func.el (which-func-ff-hook): Look for new
17228         imenu-unavailable error symbol instead of trying to match message
17229         exactly.
17230         * lisp/imenu.el (imenu-unavailable): New error.
17231         (imenu-unavailable-error): New function.
17233 2015-08-29  Eli Zaretskii  <eliz@gnu.org>
17235         Fix Python tests on MS-Windows
17236         * test/automated/python-tests.el
17237         (python-shell-calculate-command-1): Run python-shell-interpreter
17238         through shell-quote-argument before comparing with what
17239         python-shell-calculate-command returns.
17240         (python-shell-calculate-pythonpath-1)
17241         (python-shell-calculate-pythonpath-2)
17242         (python-shell-calculate-process-environment-2): Use path-separator
17243         instead of a literal ':'.
17244         (python-shell-calculate-exec-path-2)
17245         (python-shell-calculate-exec-path-3)
17246         (python-shell-calculate-exec-path-4)
17247         (python-shell-with-environment-1)
17248         (python-shell-with-environment-2): Run "/env/bin" through
17249         expand-file-name before comparing with exec-path.  (Bug#21375)
17251 2015-08-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
17253         Use Core Text types/functions/variables/enumerators directly
17254         * src/macfont.h (FontDescriptorRef, FontRef, FontSymbolicTraits)
17255         (CharacterCollection): Remove typedefs.  All uses replaced with
17256         definitions.
17257         (MAC_FONT_NAME_ATTRIBUTE, MAC_FONT_FAMILY_NAME_ATTRIBUTE)
17258         (MAC_FONT_TRAITS_ATTRIBUTE, MAC_FONT_SIZE_ATTRIBUTE)
17259         (MAC_FONT_CASCADE_LIST_ATTRIBUTE)
17260         (MAC_FONT_CHARACTER_SET_ATTRIBUTE, MAC_FONT_LANGUAGES_ATTRIBUTE)
17261         (MAC_FONT_FORMAT_ATTRIBUTE, MAC_FONT_SYMBOLIC_TRAIT)
17262         (MAC_FONT_WEIGHT_TRAIT, MAC_FONT_WIDTH_TRAIT)
17263         (MAC_FONT_SLANT_TRAIT): Remove macros.  All uses replaced with
17264         definitions.
17265         (MAC_FONT_TRAIT_ITALIC, MAC_FONT_TRAIT_BOLD)
17266         (MAC_FONT_TRAIT_MONO_SPACE, MAC_FONT_TRAIT_COLOR_GLYPHS)
17267         (MAC_FONT_FORMAT_BITMAP)
17268         (MAC_CHARACTER_COLLECTION_IDENTITY_MAPPING)
17269         (MAC_CHARACTER_COLLECTION_ADOBE_JAPAN1): Remove enumerators.
17270         All uses replaced with definitions.
17271         (kCTFontTraitItalic, kCTFontTraitBold, kCTFontTraitMonoSpace)
17272         (kCTFontTraitColorGlyphs, kCTCharacterCollectionIdentityMapping)
17273         (kCTCharacterCollectionAdobeJapan1 kCTFontOrientationDefault):
17274         Add compatibility enumerators for older versions.
17275         (mac_font_descriptor_create_with_attributes)
17276         (mac_font_descriptor_create_matching_font_descriptors)
17277         (mac_font_descriptor_create_matching_font_descriptor)
17278         (mac_font_descriptor_copy_attribute)
17279         (mac_font_descriptor_supports_languages)
17280         (mac_font_create_with_name, mac_font_get_size)
17281         (mac_font_copy_family_name, mac_font_copy_character_set)
17282         (mac_font_get_glyphs_for_characters, mac_font_get_ascent)
17283         (mac_font_get_descent, mac_font_get_leading)
17284         (mac_font_get_underline_position)
17285         (mac_font_get_underline_thickness, mac_font_copy_graphics_font)
17286         (mac_font_copy_non_synthetic_table): Remove macros.  All uses
17287         replaced with definitions.
17288         (mac_font_create_preferred_family_for_attributes)
17289         (mac_font_get_advance_width_for_glyph)
17290         (mac_font_get_bounding_rect_for_glyph)
17291         (mac_font_create_available_families, mac_font_shape):
17292         Remove macros for renamed functions.
17293         (mac_nsctfont_copy_font_descriptor): Remove unused macro.
17294         * src/macfont.m (mac_font_descriptor_supports_languages):
17295         Rename from mac_ctfont_descriptor_supports_languages.
17296         (mac_font_create_preferred_family_for_attributes): Rename from
17297         mac_ctfont_create_preferred_family_for_attributes.
17298         (mac_font_get_advance_width_for_glyph): Rename from
17299         mac_ctfont_get_advance_width_for_glyph.
17300         Use kCTFontOrientationDefault also for older versions.
17301         (mac_font_get_bounding_rect_for_glyph): Rename from
17302         mac_ctfont_get_bounding_rect_for_glyph.
17303         Use kCTFontOrientationDefault also for older versions.
17304         (mac_font_create_available_families): Rename from
17305         mac_ctfont_create_available_families.
17306         (mac_font_equal_in_postscript_name): Rename from
17307         mac_ctfont_equal_in_postscript_name.  All uses changed.
17308         (mac_font_create_line_with_string_and_font): Rename from
17309         mac_ctfont_create_line_with_string_and_font.  All uses changed.
17310         (mac_font_shape): Rename from mac_ctfont_shape.
17311         (mac_font_family_compare): Remove unused declaration.
17313 2015-08-29  Paul Eggert  <eggert@cs.ucla.edu>
17315         Fix minor text quoting in calc, calendar, vc
17316         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
17317         * lisp/calc/calc-help.el (calc-j-prefix-help):
17318         * lisp/calc/calc-misc.el (calc-help):
17319         * lisp/calc/calc.el (calc-algebraic-mode, calc-mode):
17320         Escape an apostrophe in a docstring.
17321         * lisp/calc/calc-forms.el (calc-hms-notation):
17322         * lisp/calc/calc-mode.el (calc-display-raw, calc-algebraic-mode):
17323         Escape an apostrophe in a diagnostic.
17324         * lisp/calc/calc-misc.el (calc-help):
17325         * lisp/calendar/diary-lib.el (diary-include-files):
17326         * lisp/calendar/todo-mode.el (todo-prefix, todo-item-mark):
17327         * lisp/vc/diff-mode.el (diff-delete-trailing-whitespace):
17328         * lisp/vc/ediff-diff.el (ediff-same-contents):
17329         * lisp/vc/ediff-merg.el (ediff-re-merge):
17330         * lisp/vc/ediff-ptch.el (ediff-patch-file-internal):
17331         * lisp/vc/ediff-util.el (ediff-test-save-region)
17332         (ediff-status-info):
17333         * lisp/vc/ediff.el (ediff-merge-revisions)
17334         (ediff-merge-revisions-with-ancestor):
17335         * lisp/vc/pcvs.el (cvs-mode-checkout, cvs-vc-command-advice):
17336         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
17337         Respect text quoting style in doc string or diagnostic.
17338         * lisp/calc/calc-prog.el (calc-kbd-push, calc-kbd-pop):
17339         * lisp/vc/add-log.el (change-log-goto-source):
17340         Avoid double-formatting.
17341         * lisp/vc/ediff-init.el (format-message):
17342         New backward-compatibility alias.
17344 2015-08-28  Paul Eggert  <eggert@cs.ucla.edu>
17346         Fix minor text quoting problems in lisp top level
17347         * lisp/apropos.el (apropos-describe-plist):
17348         * lisp/cus-theme.el (customize-themes):
17349         * lisp/dired.el (dired-log):
17350         * lisp/help-fns.el (describe-variable):
17351         * lisp/hexl.el (hexl-insert-multibyte-char):
17352         * lisp/info.el (Info-finder-find-node):
17353         * lisp/json.el (json-read-string):
17354         * lisp/novice.el (disabled-command-function)
17355         (disabled-command-function):
17356         * lisp/startup.el (normal-mouse-startup-screen):
17357         * lisp/woman.el (WoMan-log, WoMan-warn):
17358         Respect text quoting style in doc string or diagnostic.
17359         * lisp/replace.el (replace-character-fold):
17360         * src/syntax.c (Fmodify_syntax_entry):
17361         Escape an apostrophe in a docstring.
17362         * lisp/tempo.el (tempo-define-template):
17363         Remove confusing apostrophe from docstring.
17364         * lisp/whitespace.el (whitespace-mark-x):
17365         Use directed quotes in docstring.
17367 2015-08-28  Simen Heggestøyl  <simenheg@gmail.com>
17369         Fix indentation rule in css-mode
17370         * lisp/textmodes/css-mode.el (css-smie-rules): Fix indentation of
17371         brackets in presence of pseudo-selectors.  (Bug#21328)
17373 2015-08-28  Eli Zaretskii  <eliz@gnu.org>
17375         Fix a bug in recording a macro while flyspell-mode is active
17376         * lisp/subr.el (sit-for): Don't call read-event when recording a
17377         macro.  (Bug#21329)
17379 2015-08-27  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
17381         Tweak startup screen quoting
17382         * lisp/startup.el (normal-splash-screen): Use standard
17383         "M-" abbrevation rather than a confusingly-different one.
17384         (normal-no-mouse-startup-screen): Follow ‘text-quoting-style’.
17386 2015-08-27  Paul Eggert  <eggert@cs.ucla.edu>
17388         Add test case for ‘format’ bug and refactor
17389         * src/editfns.c (styled_format): Refactor internally, mostly by
17390         moving declarations closer to uses.  This should not affect behavior.
17391         * test/automated/textprop-tests.el (textprop-tests-format): New test.
17393         Fix ‘format’ bug with property offsets
17394         * src/editfns.c (styled_format): Fix recently-introduced ‘format’
17395         bug in calculating string property offsets (Bug#21351).
17397         Use straight quotes in lib-src diagnostics
17398         These auxiliary programs can’t use Emacs’s text-quoting-style,
17399         and it’s too much trouble to redo that mechanism by hand.
17400         So just use straight quotes for now.
17401         * lib-src/ebrowse.c (main):
17402         * lib-src/emacsclient.c (decode_options, main):
17403         * lib-src/etags.c (Ada_help, default_C_help, Cplusplus_help)
17404         (Forth_help, HTML_help, Lisp_help, Makefile_help, Objc_help)
17405         (Perl_help, PHP_help, Python_help, Scheme_help, TeX_help, auto_help)
17406         (none_help, print_language_names, print_help, add_regex)
17407         (suggest_asking_for_help):
17408         * lib-src/make-docfile.c (write_c_args, scan_c_stream):
17409         Use straight quotes in diagnostics.
17411         ‘text-quoting-style’ fixes for admin
17412         * admin/admin.el (cusver-scan, cusver-check):
17413         * admin/authors.el (authors-canonical-file-name):
17414         * admin/bzrmerge.el (bzrmerge-missing):
17415         Respect ‘text-quoting-style’ in diagnostics.
17417 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
17419         Assume GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS
17420         This removes the need for GCPRO1 etc.  Suggested by Stefan Monnier in:
17421         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00918.html
17422         * doc/lispref/internals.texi (Writing Emacs Primitives):
17423         * etc/NEWS:
17424         Document the change.
17425         * src/alloc.c (gcprolist, dump_zombies, MAX_ZOMBIES, zombies)
17426         (nzombies, ngcs, avg_zombies, max_live, max_zombies, avg_live)
17427         (Fgc_status, check_gcpros, relocatable_string_data_p, gc-precise):
17428         * src/bytecode.c (mark_byte_stack) [BYTE_MARK_STACK]:
17429         * src/eval.c (gcpro_level) [DEBUG_GCPRO]:
17430         * src/lisp.h (struct handler.gcpro, struct gcpro, GC_MARK_STACK)
17431         (GC_USE_GCPROS_AS_BEFORE, GC_MAKE_GCPROS_NOOPS)
17432         (GC_MARK_STACK_CHECK_GCPROS, GC_USE_GCPROS_CHECK_ZOMBIES)
17433         (BYTE_MARK_STACK, GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5, GCPRO6)
17434         (GCPRO7, UNGCPRO, RETURN_UNGCPRO):
17435         Remove.  All uses removed.  The code now assumes
17436         GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS.
17437         * src/bytecode.c (relocate_byte_stack):
17438         Rename from unmark_byte_stack, since it now only relocates.
17439         All callers changed.
17440         * src/frame.c (make_frame): Add an IF_LINT to pacify GCC 5.2
17441         with GCPROs removed.
17442         * src/systime.h: Use EMACS_LISP_H as the canary instead of GCPRO1.
17443         * test/automated/finalizer-tests.el (finalizer-basic)
17444         (finalizer-circular-reference, finalizer-cross-reference)
17445         (finalizer-error):
17446         * test/automated/generator-tests.el (cps-test-iter-close-finalizer):
17447         Remove tests, as they depend on gc-precise.
17449 2015-08-26  Nicolas Petton  <nicolas@petton.fr>
17451         Improve seq-concatenate for new sequence types
17452         Use the new `seq-into-sequence' in seqs passed to `seq-concatenate' to
17453         ensure that concatenation happens on sequences only.  This makes it
17454         possible to use `seq-concatenate' for new types of seqs.
17455         * lisp/emacs-lisp/seq.el (seq-into-sequence, seq-concatenate):
17456         New function used in `seq-concatenate'.
17457         * test/automated/seq-tests.el (test-seq-into-sequence): New unit test
17458         for seq-into-sequence.
17460 2015-08-26  Stephen Leake  <stephen_leake@stephe-leake.org>
17462         Add mode local overrides to xref-find-definitions
17463         * lisp/cedet/mode-local.el (xref-mode-local--override-present)
17464         (xref-mode-local-overload): New; add mode local overrides to
17465         xref-find-definitions.
17466         * test/automated/elisp-mode-tests.el: Add mode local override tests.
17467         (xref-elisp-test-run): Handle indented defuns.
17468         (xref-elisp-generic-*): Improve doc strings.
17469         * lisp/progmodes/elisp-mode.el (elisp-xref-find-def-functions): New.
17470         (elisp--xref-find-definitions): Use it.
17472         Add mode local overrides to describe-function
17473         * lisp/cedet/mode-local.el (describe-mode-local-overload):
17474         New; add mode local overrides to describe-function.
17475         * etc/NEWS: Document change.
17477 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
17479         Prefer straight quoting in some etc text files
17480         These files are plain text and might be used by non-Emacs apps.
17481         They’re mostly ASCII, so just use straight quotes.
17483         Fix quoting in ‘message_with_string’
17484         * src/nsfont.m (nsfont_open): Use directed quotes in format; they
17485         should work now.
17486         * src/xdisp.c (message_to_stderr): New function, refactored from
17487         part of ‘message3_nolog’.
17488         (message3_nolog): Use it.
17489         (message_with_string): Use it.  Don’t mishandle NUL bytes when
17490         noninteractive.  Prefer AUTO_STRING when it’s most likely faster.
17491         Use ‘format-message’, not ‘format’, so that quotes are translated.
17493 2015-08-26  Eli Zaretskii  <eliz@gnu.org>
17495         Mention false positives of file-accessible-directory on w32
17496         * src/fileio.c (Ffile_accessible_directory_p): Doc fix.
17497         (Bug#21346)
17499 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
17501         Treat error strings as help
17502         * src/print.c (print_error_message): Translate quotes and command
17503         keys in errmsg so that users see, e.g., "Symbol’s value as
17504         variable is void: foo" when text-quoting-style is curved.
17506 2015-08-26  Michael Albinus  <michael.albinus@gmx.de>
17508         * lisp/net/tramp-cache.el (top): Use `message', not `format-message'.
17510 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
17512         Top-level elisp files respect ‘text-quoting-style’
17513         In top-level elisp files, use format-message in diagnostic formats,
17514         so that they follow user preference as per ‘text-quoting-style’
17515         rather than being hard-coded to quote `like this'.
17516         * lisp/allout.el (allout-get-configvar-values):
17517         * lisp/apropos.el (apropos-symbols-internal):
17518         * lisp/dired-aux.el (dired-do-shell-command, dired-create-files)
17519         (dired-do-create-files-regexp, dired-create-files-non-directory):
17520         * lisp/dired-x.el (dired-do-run-mail):
17521         * lisp/dired.el (dired-log, dired-dnd-handle-local-file):
17522         * lisp/disp-table.el (standard-display-european):
17523         * lisp/find-dired.el (find-dired):
17524         * lisp/forms.el (forms-mode):
17525         * lisp/ido.el (ido-buffer-internal):
17526         * lisp/info.el (Info-index-next):
17527         * lisp/outline.el (outline-invent-heading):
17528         * lisp/printing.el (pr-ps-outfile-preprint, pr-i-ps-send):
17529         * lisp/proced.el (proced-log):
17530         * lisp/ps-print.el (ps-print-preprint, ps-get-size):
17531         * lisp/recentf.el (recentf-open-files, recentf-save-list):
17532         * lisp/savehist.el (savehist-save):
17533         * lisp/server.el (server-ensure-safe-dir):
17534         * lisp/ses.el (ses-rename-cell):
17535         * lisp/simple.el (list-processes--refresh):
17536         * lisp/startup.el (command-line):
17537         * lisp/strokes.el (strokes-unset-last-stroke)
17538         (strokes-execute-stroke):
17539         Use format-message so that quotes are restyled.
17540         * lisp/cus-edit.el (custom-raised-buttons, customize-browse):
17541         Don’t quote ‘raised’.
17542         * lisp/descr-text.el (describe-char):
17543         * lisp/dirtrack.el (dirtrack-debug-message):
17544         * lisp/hexl.el (hexl-insert-multibyte-char):
17545         Apply substitute-command-keys to help string.
17546         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
17547         (wdired-do-perm-changes):
17548         Let dired-log do the formatting.
17550 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
17552         Go back to grave quoting in Tramp
17553         * lisp/net/tramp-adb.el:
17554         * lisp/net/tramp-cache.el:
17555         * lisp/net/tramp-compat.el:
17556         * lisp/net/tramp-gvfs.el:
17557         * lisp/net/tramp-gw.el:
17558         * lisp/net/tramp-sh.el:
17559         * lisp/net/tramp-smb.el:
17560         * lisp/net/tramp.el:
17561         Stick with grave quoting in diagnostics strings.  This is more
17562         portable to older Emacs, desirable for Tramp.
17563         * lisp/net/tramp-cache.el: Use ‘format-message’, not ‘format’,
17564         for diagnostic that needs requoting.
17565         * lisp/net/tramp-compat.el (format-message):
17566         Fall back on simple ‘format’, since that’s good enough now.
17568         Go back to grave quoting in Gnus
17569         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
17570         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
17571         (gnus-agent-fetch-headers):
17572         * lisp/gnus/gnus-int.el (gnus-start-news-server):
17573         * lisp/gnus/gnus-registry.el:
17574         (gnus-registry--split-fancy-with-parent-internal)
17575         (gnus-registry-post-process-groups):
17576         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
17577         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
17578         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
17579         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
17580         * lisp/gnus/spam.el (spam-check-blackholes):
17581         Stick with grave quoting in diagnostics strings.  This is more
17582         portable to older Emacs, desirable for Gnus.
17584         Fix customization of text-quoting-style
17585         * lisp/cus-edit.el (custom-guess-type, custom-variable-documentation):
17586         * lisp/wid-edit.el (widget-docstring):
17587         Get raw docstring here since it’s cooked later and should not be
17588         cooked twice.
17589         * lisp/cus-edit.el (custom-group-value-create):
17590         Cook the docstring before inserting it.
17591         * lisp/cus-start.el (text-quoting-style): Quote the customization
17592         docstrings according to the new rules.  Give curved examples.
17594         format-message now curves ` and '
17595         That way, the caller doesn’t have to use curved quotes to
17596         get diagnostics that match the text-quoting-style preferences.
17597         Suggested by Dmitry Gutov in:
17598         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00893.html
17599         This means we no longer need %qs, so remove that format.
17600         While we’re at it, fix an unlikely bug and lessen the pressure
17601         on the garbage collector by processing the string once rather
17602         than twice in the usual case.
17603         * doc/lispref/strings.texi (Formatting Strings):
17604         * etc/NEWS: Document this.
17605         * lisp/subr.el (format-message): Remove; now done in C.
17606         * src/callint.c (Fcall_interactively):
17607         * src/editfns.c (Fmessage, Fmessage_box):
17608         Use Fformat_message instead of Finternal__text_restyle
17609         followed by Fformat.
17610         * src/doc.c (LSQM, RSQM): Remove; all uses changed to use
17611         uLSQM and uRSQM.
17612         (Fsubstitute_command_keys): Prefer AUTO_STRING to build_string
17613         when pure ASCII now suffices.  Fix unlikely bug when parsing
17614         unibyte string containing non-ASCII bytes.  Use inline code
17615         rather than memcpy, as it’s a tiny number of bytes.
17616         (Finternal__text_restyle): Remove; no longer used.
17617         (syms_of_doc): Don’t declare it.
17618         * src/editfns.c (Fformat): Rewrite in terms of new function
17619         ‘styled_format’.
17620         (Fformat_message): New function, moved here from subr.el.
17621         (styled_format): New function, with the old guts of Fformat,
17622         except it now optionally transliterates quotes, and it transliterates
17623         traditional grave accent and apostrophe quoting as well.
17624         Remove recently-added q flag; no longer needed or used.
17625         (syms_of_editfns): Define format-message.
17626         * src/lisp.h (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
17627         Remove; no longer need to be global symbols.
17628         * src/xdisp.c (vadd_to_log): Use Fformat_message, not Fformat,
17629         so that callers can use `%s'.
17630         * src/image.c (image_size_error, xbm_load_image, xbm_load)
17631         (xpm_load, pbm_load, png_load_body, jpeg_load_body, tiff_load)
17632         (gif_load, imagemagick_load_image, imagemagick_load, svg_load)
17633         (svg_load_image, gs_load, x_kill_gs_process):
17634         * src/lread.c (load_warn_old_style_backquotes):
17635         * src/xfaces.c (load_pixmap):
17636         * src/xselect.c (x_clipboard_manager_error_1):
17637         Use `%s' instead of %qs in formats.
17639 2015-08-25  Eli Zaretskii  <eliz@gnu.org>
17641         Minor fixes in doc/emacs/search.texi
17642         * doc/emacs/search.texi (Basic Isearch): Fix a typo.
17643         (Special Isearch): Use @w{} to generate several consecutive spaces
17644         with Texinfo 6.  (Bug#21345)
17646 2015-08-25  Michael Albinus  <michael.albinus@gmx.de>
17648         * lisp/net/tramp-sh.el (tramp-awk-encode, tramp-awk-decode)
17649         (tramp-awk-coding-test): New defconsts.
17650         (tramp-remote-coding-commands): Use them.
17651         (tramp-find-inline-encoding): Check for Perl only if necessary.
17653 2015-08-25  Xue Fuqiao  <xfq.free@gmail.com>
17655         * doc/lispintro/emacs-lisp-intro.texi (Run a Program): Add some
17656         index entries for the special form `quote'.
17658 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
17660         Spelling fixes
17662         Gnus format-message typo fix
17663         * lisp/gnus/gnus-util.el (gnus-format-message):
17664         Fix typo when running in older Emacs.
17666         Prefer directed to neutral quotes in docstings and diagnostics.
17667         In docstrings, escape apostrophes that would otherwise be translated
17668         to curved quotes using the newer, simpler rules.
17669         * admin/unidata/unidata-gen.el (unidata-gen-table):
17670         * lisp/align.el (align-region):
17671         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet):
17672         * lisp/bookmark.el (bookmark-default-annotation-text):
17673         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
17674         * lisp/calc/calc-lang.el (math-read-giac-subscr)
17675         (math-read-math-subscr):
17676         * lisp/calc/calc-misc.el (report-calc-bug):
17677         * lisp/calc/calc-prog.el (calc-fix-token-name)
17678         (calc-read-parse-table-part):
17679         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
17680         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
17681         * lisp/dabbrev.el (dabbrev-expand):
17682         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
17683         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
17684         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
17685         * lisp/emulation/viper-cmd.el (viper-toggle-search-style):
17686         * lisp/erc/erc-button.el (erc-nick-popup):
17687         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login):
17688         * lisp/eshell/em-dirs.el (eshell/cd):
17689         * lisp/eshell/em-glob.el (eshell-glob-regexp):
17690         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
17691         * lisp/eshell/esh-arg.el (eshell-parse-arguments):
17692         * lisp/eshell/esh-opt.el (eshell-show-usage):
17693         * lisp/files-x.el (modify-file-local-variable):
17694         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer)
17695         (filesets-update-pre010505):
17696         * lisp/find-cmd.el (find-generic, find-to-string):
17697         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
17698         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
17699         (gnus-agent-fetch-headers):
17700         * lisp/gnus/gnus-int.el (gnus-start-news-server):
17701         * lisp/gnus/gnus-registry.el:
17702         (gnus-registry--split-fancy-with-parent-internal):
17703         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
17704         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
17705         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
17706         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
17707         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
17708         * lisp/gnus/spam.el (spam-check-blackholes):
17709         * lisp/mail/feedmail.el (feedmail-run-the-queue):
17710         * lisp/mpc.el (mpc-playlist-rename):
17711         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
17712         * lisp/net/mairix.el (mairix-widget-create-query):
17713         * lisp/net/tramp-cache.el:
17714         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
17715         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
17716         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
17717         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
17718         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
17719         (org-babel-goto-named-result):
17720         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
17721         * lisp/org/ob-ref.el (org-babel-ref-resolve):
17722         * lisp/org/org-agenda.el (org-agenda-prepare):
17723         * lisp/org/org-bibtex.el (org-bibtex-fields):
17724         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
17725         (org-clock-resolve):
17726         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
17727         * lisp/org/org-habit.el (org-habit-parse-todo):
17728         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
17729         (org-mouse-context-menu):
17730         * lisp/org/org-table.el (org-table-edit-formulas):
17731         * lisp/org/ox.el (org-export-async-start):
17732         * lisp/play/dunnet.el (dun-score, dun-help, dun-endgame-question)
17733         (dun-rooms, dun-endgame-questions):
17734         * lisp/progmodes/ada-mode.el (ada-goto-matching-start):
17735         * lisp/progmodes/ada-xref.el (ada-find-executable):
17736         * lisp/progmodes/antlr-mode.el (antlr-options-alists):
17737         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
17738         (flymake-start-syntax-check-process):
17739         * lisp/progmodes/python.el (python-define-auxiliary-skeleton):
17740         * lisp/progmodes/sql.el (sql-comint):
17741         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
17742         * lisp/server.el (server-get-auth-key):
17743         * lisp/subr.el (version-to-list):
17744         * lisp/textmodes/reftex-ref.el (reftex-label):
17745         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
17746         * lisp/vc/ediff-diff.el (ediff-same-contents):
17747         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
17748         * test/automated/tramp-tests.el (tramp-test33-asynchronous-requests):
17749         Use directed rather than neutral quotes in diagnostics.
17751         Treat ' like ’ even when not matching `
17752         This is simpler and easier to explain, and should encourage better
17753         typography.  Do this in Electric Quote mode and when translating
17754         quotes in docstrings.  Inspired by a suggestion by Dmitry Gutov in:
17755         https://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00806.html
17756         * doc/emacs/text.texi (Quotation Marks):
17757         * doc/lispref/help.texi (Keys in Documentation):
17758         * etc/NEWS:
17759         Document this.
17760         * lisp/electric.el (electric-quote-post-self-insert-function):
17761         * src/doc.c (Fsubstitute_command_keys):
17762         Always treat ' like ’ even when not matched by an open quote.
17764 2015-08-25  Glenn Morris  <rgm@gnu.org>
17766         * doc/emacs/cal-xtra.texi (Holiday Customizing): Fix typo in example.
17767         * lisp/calendar/holidays.el (calendar-holidays): Fix doc typo.
17769 2015-08-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
17771         * src/macfont.m (macfont_create_family_with_symbol):
17772         Accept localized names.
17774 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
17776         Tramp diagnostics as per ‘text-quoting-style’
17777         * lisp/net/tramp-adb.el (tramp-adb-handle-file-truename)
17778         (tramp-adb-get-ls-command, tramp-adb-handle-make-directory)
17779         (tramp-adb-handle-delete-directory)
17780         (tramp-adb-handle-delete-file)
17781         (tramp-adb-handle-file-local-copy)
17782         (tramp-adb-handle-write-region, tramp-adb-handle-copy-file)
17783         (tramp-adb-send-command-and-check, tramp-adb-wait-for-output)
17784         (tramp-adb-maybe-open-connection):
17785         * lisp/net/tramp-cache.el:
17786         * lisp/net/tramp-compat.el (tramp-compat-temporary-file-directory)
17787         (tramp-compat-octal-to-decimal)
17788         (tramp-compat-coding-system-change-eol-conversion):
17789         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler)
17790         (tramp-gvfs-do-copy-or-rename-file)
17791         (tramp-gvfs-handle-delete-directory)
17792         (tramp-gvfs-handle-delete-file)
17793         (tramp-gvfs-handle-expand-file-name)
17794         (tramp-gvfs-handle-file-local-copy)
17795         (tramp-gvfs-handle-file-notify-add-watch)
17796         (tramp-gvfs-handle-make-directory)
17797         (tramp-gvfs-handle-write-region, tramp-gvfs-url-file-name):
17798         * lisp/net/tramp-gw.el (tramp-gw-gw-proc-sentinel)
17799         (tramp-gw-aux-proc-sentinel, tramp-gw-open-connection):
17800         * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
17801         (tramp-sh-handle-set-visited-file-modtime)
17802         (tramp-sh-handle-set-file-modes)
17803         (tramp-sh-handle-file-name-all-completions)
17804         (tramp-sh-handle-add-name-to-file, tramp-do-copy-or-rename-file)
17805         (tramp-do-copy-or-rename-file-directly)
17806         (tramp-do-copy-or-rename-file-out-of-band)
17807         (tramp-sh-handle-make-directory)
17808         (tramp-sh-handle-delete-directory, tramp-sh-handle-delete-file)
17809         (tramp-sh-handle-insert-directory, tramp-process-sentinel)
17810         (tramp-sh-handle-start-file-process)
17811         (tramp-sh-handle-file-local-copy)
17812         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
17813         (tramp-sh-handle-file-notify-add-watch, tramp-maybe-send-script)
17814         (tramp-find-file-exists-command, tramp-open-shell)
17815         (tramp-find-shell)
17816         (tramp-open-connection-setup-interactive-shell)
17817         (tramp-find-inline-encoding, tramp-find-inline-compress)
17818         (tramp-compute-multi-hops, tramp-maybe-open-connection)
17819         (tramp-wait-for-output, tramp-send-command-and-check)
17820         (tramp-send-command-and-read, tramp-get-remote-path)
17821         (tramp-get-ls-command, tramp-get-ls-command-with-dired)
17822         (tramp-get-ls-command-with-quoting-style)
17823         (tramp-get-test-command, tramp-get-remote-ln)
17824         (tramp-get-remote-perl, tramp-get-remote-stat)
17825         (tramp-get-remote-readlink, tramp-get-remote-trash)
17826         (tramp-get-remote-touch, tramp-get-remote-gvfs-monitor-dir)
17827         (tramp-get-remote-inotifywait, tramp-get-remote-id)
17828         (tramp-get-remote-python):
17829         * lisp/net/tramp-smb.el (tramp-smb-errors)
17830         (tramp-smb-handle-add-name-to-file, tramp-smb-handle-copy-file)
17831         (tramp-smb-handle-delete-directory)
17832         (tramp-smb-handle-delete-file)
17833         (tramp-smb-handle-file-local-copy)
17834         (tramp-smb-handle-make-directory)
17835         (tramp-smb-handle-make-directory-internal)
17836         (tramp-smb-handle-make-symbolic-link)
17837         (tramp-smb-handle-rename-file, tramp-smb-handle-set-file-acl)
17838         (tramp-smb-handle-set-file-modes)
17839         (tramp-smb-handle-write-region, tramp-smb-get-file-entries):
17840         * lisp/net/tramp.el (tramp-debug-message, tramp-error)
17841         (tramp-process-actions):
17842         Generate diagnostics according to ‘text-quoting-style’, by
17843         using curved quotes in format strings and ‘format-message’
17844         when appropriate.
17845         * lisp/net/tramp-compat.el (format-message):
17846         Define a replacement, if it’s an older version of Emacs
17847         that doesn’t have it already.
17849         * etc/NEWS: Clarify text-quoting-style and electric-quote-mode.
17851 2015-08-24  Xue Fuqiao  <xfq.free@gmail.com>
17853         Fix documentation for `save-excursion'
17854         * doc/lispref/positions.texi (Excursions):
17855         * doc/lispintro/emacs-lisp-intro.texi (save-excursion)
17856         (Template for save-excursion, Point and mark): `save-excursion'
17857         does not save&restore the mark any more.
17859 2015-08-24  Michael Albinus  <michael.albinus@gmx.de>
17861         * lisp/net/tramp-sh.el (tramp-stat-marker, tramp-stat-quoted-marker):
17862         New defconsts.
17863         (tramp-do-file-attributes-with-stat)
17864         (tramp-do-directory-files-and-attributes-with-stat): Use them.
17865         (tramp-convert-file-attributes): Remove double slashes in symlinks.
17866         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
17867         Handle symlinks with "//" in the file name.
17869         Revert fbb5531fa11d13854b274d28ccd329c9b6652cfc for tramp.el.
17871 2015-08-24  Nicolas Petton  <nicolas@petton.fr>
17873         Fix cl-subseq and cl-concatenate
17874         * lisp/emacs-lisp/cl-extra.el (cl-subseq, cl-concatenate): Do not use
17875         seq functions.
17876         * lisp/emacs-lisp/seq.el (seq-concatenate): Call cl-concatenate in
17877         seq-concatenate.
17879 2015-08-24  Pip Cet  <pipcet@gmail.com>  (tiny change)
17881         Fix full-screen code when there is no window manager (Bug#21317)
17882         * src/xterm.h (x_wm_supports): Declare external.
17883         * src/xterm.c (wm_suppports): Rename to `x_wm_supports', export.
17884         (do_ewmh_fullscreen, x_ewmh_activate_frame): Adjust for rename.
17885         (x_check_fullscreen): Call `x_wm_set_size_hint', restore
17886         `fullscreen' frame parameter.
17887         * src/gtkutil.c (x_wm_set_size_hint): Set size hints when running
17888         without a window manager.
17890 2015-08-24  Glenn Morris  <rgm@gnu.org>
17892         * lisp/version.el (emacs-version): No longer include build host.
17893         * doc/lispref/intro.texi (Version Info): Update example.
17895 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
17897         * doc/lispref/elisp.texi: Fix typo in previous change.
17899         More-conservative ‘format’ quote restyling
17900         Instead of restyling curved quotes for every call to ‘format’,
17901         create a new function ‘format-message’ that does the restyling,
17902         and using the new function instead of ‘format’ only in contexts
17903         where this seems appropriate.
17904         Problem reported by Dmitry Gutov and Andreas Schwab in:
17905         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00826.html
17906         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00827.html
17907         * doc/lispref/commands.texi (Using Interactive):
17908         * doc/lispref/control.texi (Signaling Errors, Signaling Errors):
17909         * doc/lispref/display.texi (Displaying Messages, Progress):
17910         * doc/lispref/elisp.texi:
17911         * doc/lispref/help.texi (Keys in Documentation):
17912         * doc/lispref/minibuf.texi (Minibuffer Misc):
17913         * doc/lispref/strings.texi (Formatting Strings):
17914         * etc/NEWS:
17915         Document the changes.
17916         * lisp/abbrev.el (expand-region-abbrevs):
17917         * lisp/apropos.el (apropos-library):
17918         * lisp/calc/calc-ext.el (calc-record-message)
17919         (calc-user-function-list):
17920         * lisp/calc/calc-help.el (calc-describe-key, calc-full-help):
17921         * lisp/calc/calc-lang.el (math-read-big-balance):
17922         * lisp/calc/calc-store.el (calc-edit-variable):
17923         * lisp/calc/calc-units.el (math-build-units-table-buffer):
17924         * lisp/calc/calc-yank.el (calc-edit-mode):
17925         * lisp/calendar/icalendar.el (icalendar-export-region)
17926         (icalendar--add-diary-entry):
17927         * lisp/cedet/mode-local.el (mode-local-print-binding)
17928         (mode-local-describe-bindings-2):
17929         * lisp/cedet/semantic/complete.el (semantic-completion-message):
17930         * lisp/cedet/semantic/edit.el (semantic-parse-changes-failed):
17931         * lisp/cedet/semantic/wisent/comp.el (wisent-log):
17932         * lisp/cedet/srecode/insert.el (srecode-insert-show-error-report):
17933         * lisp/descr-text.el (describe-text-properties-1, describe-char):
17934         * lisp/dframe.el (dframe-message):
17935         * lisp/dired-aux.el (dired-query):
17936         * lisp/emacs-lisp/byte-opt.el (byte-compile-log-lap-1):
17937         * lisp/emacs-lisp/bytecomp.el (byte-compile-log)
17938         (byte-compile-log-file, byte-compile-warn, byte-compile-form):
17939         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
17940         (cconv-analyze-form):
17941         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
17942         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
17943         * lisp/emacs-lisp/cl-macs.el (cl-symbol-macrolet):
17944         * lisp/emacs-lisp/edebug.el (edebug-format):
17945         * lisp/emacs-lisp/eieio-core.el (eieio-oref):
17946         * lisp/emacs-lisp/eldoc.el (eldoc-minibuffer-message)
17947         (eldoc-message):
17948         * lisp/emacs-lisp/elint.el (elint-file, elint-log):
17949         * lisp/emacs-lisp/find-func.el (find-function-library):
17950         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
17951         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
17952         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
17953         * lisp/emacs-lisp/package.el (package-compute-transaction)
17954         (package-install-button-action, package-delete-button-action)
17955         (package-menu--list-to-prompt):
17956         * lisp/emacs-lisp/timer.el (timer-event-handler):
17957         * lisp/emacs-lisp/warnings.el (lwarn, warn):
17958         * lisp/emulation/viper-cmd.el:
17959         (viper-toggle-parse-sexp-ignore-comments)
17960         (viper-kill-buffer, viper-brac-function):
17961         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
17962         * lisp/facemenu.el (facemenu-add-new-face):
17963         * lisp/faces.el (face-documentation, read-face-name)
17964         (face-read-string, read-face-font, describe-face):
17965         * lisp/files.el (find-alternate-file, hack-local-variables)
17966         (hack-one-local-variable--obsolete, write-file)
17967         (basic-save-buffer, delete-directory):
17968         * lisp/format.el (format-write-file, format-find-file)
17969         (format-insert-file):
17970         * lisp/help-fns.el (help-fns--key-bindings)
17971         (help-fns--compiler-macro, help-fns--obsolete)
17972         (help-fns--interactive-only, describe-function-1)
17973         (describe-variable):
17974         * lisp/help.el (describe-mode):
17975         * lisp/info-xref.el (info-xref-output):
17976         * lisp/info.el (Info-virtual-index-find-node)
17977         (Info-virtual-index, info-apropos):
17978         * lisp/international/kkc.el (kkc-error):
17979         * lisp/international/mule-cmds.el:
17980         (select-safe-coding-system-interactively)
17981         (select-safe-coding-system, describe-input-method):
17982         * lisp/international/mule-conf.el (code-offset):
17983         * lisp/international/mule-diag.el (describe-character-set)
17984         (list-input-methods-1):
17985         * lisp/international/quail.el (quail-error):
17986         * lisp/minibuffer.el (minibuffer-message):
17987         * lisp/mpc.el (mpc--debug):
17988         * lisp/msb.el (msb--choose-menu):
17989         * lisp/net/ange-ftp.el (ange-ftp-message):
17990         * lisp/net/gnutls.el (gnutls-message-maybe):
17991         * lisp/net/newst-backend.el (newsticker--sentinel-work):
17992         * lisp/net/newst-treeview.el (newsticker--treeview-load):
17993         * lisp/net/nsm.el (nsm-query-user):
17994         * lisp/net/rlogin.el (rlogin):
17995         * lisp/net/soap-client.el (soap-warning):
17996         * lisp/net/tramp.el (tramp-debug-message):
17997         * lisp/nxml/nxml-outln.el (nxml-report-outline-error):
17998         * lisp/nxml/nxml-parse.el (nxml-parse-error):
17999         * lisp/nxml/rng-cmpct.el (rng-c-error):
18000         * lisp/nxml/rng-match.el (rng-compile-error):
18001         * lisp/nxml/rng-uri.el (rng-uri-error):
18002         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
18003         * lisp/org/org-ctags.el:
18004         (org-ctags-ask-rebuild-tags-file-then-find-tag):
18005         * lisp/proced.el (proced-log):
18006         * lisp/progmodes/ebnf2ps.el (ebnf-log):
18007         * lisp/progmodes/flymake.el (flymake-log):
18008         * lisp/progmodes/vhdl-mode.el (vhdl-warning-when-idle):
18009         * lisp/replace.el (occur-1):
18010         * lisp/simple.el (execute-extended-command)
18011         (undo-outer-limit-truncate, define-alternatives):
18012         * lisp/startup.el (command-line):
18013         * lisp/subr.el (error, user-error, add-to-list):
18014         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
18015         (tutorial--find-changed-keys):
18016         * src/callint.c (Fcall_interactively):
18017         * src/editfns.c (Fmessage, Fmessage_box):
18018         Restyle the quotes of format strings intended for use as a
18019         diagnostic, when restyling seems appropriate.
18020         * lisp/subr.el (format-message): New function.
18021         * src/doc.c (Finternal__text_restyle): New function.
18022         (syms_of_doc): Define it.
18024 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
18026         * etc/NEWS: The new ‘q’ flag is not an incompatible change.
18028 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
18030         python.el: Fix python-shell-buffer-substring on indented code
18031         (Bug#21086)
18032         * lisp/progmodes/python.el (python-shell-buffer-substring):
18033         Respect current line indentation when calculating string.
18034         * test/automated/python-tests.el
18035         (python-shell-buffer-substring-10)
18036         (python-shell-buffer-substring-11)
18037         (python-shell-buffer-substring-12): New tests.
18039 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
18041         Fix minor glitches from ‘format’ reversion
18042         * doc/lispref/strings.texi (Formatting Strings):
18043         After reversion, ‘text-quoting-style’ is documented in ‘Keys in
18044         Documentation’, not below.
18045         * src/syntax.c (Finternal_describe_syntax_value):
18046         Prefer AUTO_STRING to build_string where either will do, as
18047         AUTO_STRING is a bit faster.
18049 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
18051         python.el: Defer shell setup code until first interactive prompt
18052         * lisp/progmodes/python.el
18053         (python-shell-comint-watch-for-first-prompt-output-filter):
18054         New function.
18055         (inferior-python-mode): Use it.
18056         (python-shell-first-prompt-hook): New hook.
18057         (python-shell-send-setup-code)
18058         (python-shell-completion-native-turn-on-maybe-with-msg): Attach to
18059         this hook instead of inferior-python-hook.
18061 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
18063         Remove the calls to `seq-into` from `seq-concatenate`
18064         Since most new types of seq would have to be defined as sequences (cons
18065         cells or CL structs, mostly), there is no need to convert the seqs to
18066         sequences (which can be a fairly expensive operation).
18067         * lisp/emacs-lisp/seq.el (seq-concatenate): Do not ensure that seqs are
18068         sequences.
18070 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
18072         python.el: Fix completion for pdb interactions
18073         * lisp/progmodes/python.el (python-shell-completion-setup-code):
18074         Simplify.  Toggle print_mode for native wrapped completer.
18075         (python-shell-completion-native-setup): Ensure process buffer.
18076         Add print_mode attribute to completer wrapper to toggle returning
18077         or printing candidates.
18078         (python-shell-completion-native-get-completions): Cleanup.
18079         (python-shell-completion-get-completions): Cleanup.
18080         (python-shell-completion-at-point): Perform prompt checks.
18081         Force fallback completion in pdb interactions.
18083 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
18085         Make seq.el more extensible by using cl-defmethod
18086         * lisp/emacs-lisp/seq.el: Define seq.el functions using cl-defmethod to
18087         make it easier to extend seq.el with new "seq types".
18088         * test/automated/seq-tests.el (test-setf-seq-elt): New test.
18089         * lisp/emacs-lisp/cl-extra.el (cl-subseq): Move back the definition of
18090         subseq in cl-extra.el, and use it in seq.el.
18092 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
18094         python.el: Fix prompt detection with user overridden interpreter
18095         * lisp/progmodes/python.el (python-shell-prompt-detect):
18096         Honor buffer local python-shell-interpreter and
18097         python-shell-interpreter-interactive-arg.
18099 2015-08-23  Eli Zaretskii  <eliz@gnu.org>
18101         Support exec-directory with non-ASCII characters on Windows
18102         * src/w32proc.c (sys_spawnve): Make sure exec-directory is encoded
18103         in the system's ANSI codepage, when it is used for invoking
18104         cmdproxy.
18106 2015-08-23  Andreas Schwab  <schwab@linux-m68k.org>
18108         Revert "Extend ‘format’ to translate curved quotes"
18109         This reverts commit 244c801689d2f7a80480d83cd7d092d4762ebe08.
18111         Revert "Prefer ‘format’ to ‘substitute-command-keys’"
18112         This reverts commit 6af5aad26411ffe21c3fe4bc5438347110910111.
18114 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
18116         * doc/lispintro/emacs-lisp-intro.texi (Switching Buffers):
18117         Clarify "invisible window".
18119 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
18121         * doc/emacs/modes.texi (Choosing Modes): Minor doc fix for
18122         magic-fallback-mode-alist.
18124 2015-08-22  Fabián Ezequiel Gallina  <fgallina@gnu.org>
18126         python.el: fallback completion, ffap and eldoc setup enhancements
18127         Setup codes are now sent continuously so that the current frame is
18128         always taken into account.  This allows working within debuggers
18129         and always keeping a fresh version of setup codes that will return
18130         proper results.
18131         * lisp/progmodes/python.el (python-shell-setup-codes): Cleanup.
18132         (python-shell-send-setup-code): Send code only when
18133         python-shell-setup-codes is non-nil.
18134         (python-shell-completion-string-code): Cleanup trailing newline.
18135         (python-shell-completion-get-completions): Always use
18136         python-shell-completion-setup-code.
18137         (python-ffap-setup-code): Work with any object, not only modules.
18138         (python-ffap-string-code): Cleanup trailing newline.
18139         (python-ffap-module-path): Always use python-ffap-setup-code.
18140         (python-eldoc-string-code): Cleanup trailing newline.
18141         (python-eldoc--get-doc-at-point): Always use
18142         python-eldoc-setup-code.  Return non-nil only if docstring is
18143         found.
18145         python.el: Increase native completion robustness
18146         * lisp/progmodes/python.el (python-shell-completion-native-setup):
18147         Make completer print real candidates and just return dummy ones to
18148         avoid input modification.
18149         (python-shell-completion-native-get-completions): Set
18150         comint-redirect-insert-matching-regexp to non-nil and make
18151         comint-redirect-finished-regexp match the last dummy candidate.
18152         Use python-shell-accept-process-output to wait for the full list
18153         of candidates.
18155 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
18157         Fix invocation of programs via cmdproxy.exe
18158         * src/w32proc.c (sys_spawnve): Use exec-directory, not
18159         invocation-directory, for finding cmdproxy.exe.  When Emacs is
18160         run from the source tree, look for cmdproxy.exe in the same source
18161         tree.  (Bug#21323)
18163 2015-08-22  Simen Heggestøyl  <simenheg@gmail.com>
18165         Handle comments inside unquoted URIs in css-mode
18166         * lisp/textmodes/css-mode.el (css--uri-re): New defconst.
18167         (css-syntax-propertize-function): New defconst.
18168         (css--font-lock-keywords): Handle parens around unquoted URIs.
18169         (css-mode): Set `syntax-propertize-function'.
18171 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
18173         Support invocation of Hunspell with multiple dictionaries
18174         * lisp/textmodes/ispell.el (ispell-parse-hunspell-affix-file):
18175         Support lists of dictionaries of the form "DICT1,DICT2,...".
18176         (ispell-hunspell-add-multi-dic): New command.  (Bug#20495)
18178         Minor formatting changes in ispell.el
18179         * lisp/textmodes/ispell.el (ispell-create-debug-buffer)
18180         (ispell-print-if-debug, ispell-aspell-find-dictionary)
18181         (ispell-aspell-add-aliases, ispell-hunspell-dict-paths-alist)
18182         (ispell-hunspell-dictionary-alist)
18183         (ispell-hunspell-fill-dictionary-entry)
18184         (ispell-find-hunspell-dictionaries, ispell-send-replacement)
18185         (ispell-buffer-with-debug, ispell-complete-word)
18186         (ispell-current-dictionary, ispell-current-personal-dictionary)
18187         (ispell-accept-output, ispell-minor-mode)
18188         (ispell-personal-dictionary, ispell-dictionary-alist)
18189         (ispell-really-aspell, ispell-really-hunspell)
18190         (ispell-encoding8-command, ispell-aspell-supports-utf8)
18191         (ispell-aspell-dictionary-alist, ispell-set-spellchecker-params):
18192         Fix whitespace, inconsistent capitalization, and arguments in doc
18193         strings.
18195 2015-08-22  Martin Rudalics  <rudalics@gmx.at>
18197         * lisp/window.el (adjust-window-trailing-edge): Fix bug where this
18198         function refused to resize a size-preserved window.
18200 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
18202         * doc/lispref/windows.texi (Selecting Windows): Improve
18203         documentation and indexing of 'window-use-time'.
18205 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
18207         * lisp/progmodes/cc-vars.el, lisp/progmodes/cc-styles.el:
18208         * lisp/progmodes/cc-mode.el, lisp/progmodes/cc-menus.el:
18209         * lisp/progmodes/cc-langs.el, lisp/progmodes/cc-guess.el:
18210         * lisp/progmodes/cc-fonts.el, lisp/progmodes/cc-engine.el:
18211         * lisp/progmodes/cc-defs.el, lisp/progmodes/cc-cmds.el:
18212         * lisp/progmodes/cc-bytecomp.el, lisp/progmodes/cc-awk.el:
18213         * lisp/progmodes/cc-align.el, lisp/net/soap-client.el:
18214         Fix up commenting style.
18216 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
18218         text-quoting-style in emacs-lisp diagnostics
18219         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
18220         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
18221         (ad-disable-advice, ad-remove-advice, ad-set-argument)
18222         (ad-set-arguments):
18223         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
18224         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
18225         (byte-optimize-while, byte-optimize-apply):
18226         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
18227         (byte-compile-log-file, byte-compile-format-warn)
18228         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
18229         (byte-compile-cl-warn)
18230         (byte-compile-warn-about-unresolved-functions)
18231         (byte-compile-file, byte-compile-fix-header)
18232         (byte-compile--declare-var, byte-compile-file-form-defmumble)
18233         (byte-compile-form, byte-compile-normal-call)
18234         (byte-compile-variable-ref, byte-compile-variable-set)
18235         (byte-compile-subr-wrong-args, byte-compile-setq-default)
18236         (byte-compile-negation-optimizer)
18237         (byte-compile-condition-case--old)
18238         (byte-compile-condition-case--new, byte-compile-save-excursion)
18239         (byte-compile-defvar, byte-compile-autoload)
18240         (byte-compile-lambda-form)
18241         (byte-compile-make-variable-buffer-local, display-call-tree)
18242         (batch-byte-compile):
18243         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
18244         (cconv-analyze-form):
18245         * lisp/emacs-lisp/chart.el (chart-space-usage):
18246         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
18247         (check-declare-warn, check-declare-file)
18248         (check-declare-directory):
18249         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
18250         (checkdoc-message-text-engine):
18251         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer):
18252         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
18253         (cl-symbol-macrolet):
18254         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
18255         * lisp/emacs-lisp/copyright.el (copyright)
18256         (copyright-update-directory):
18257         * lisp/emacs-lisp/edebug.el (edebug-read-list):
18258         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
18259         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
18260         (eieio-oref, eieio-oset-default):
18261         * lisp/emacs-lisp/eieio-speedbar.el:
18262         (eieio-speedbar-child-make-tag-lines)
18263         (eieio-speedbar-child-description):
18264         * lisp/emacs-lisp/eieio.el (defclass, change-class):
18265         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
18266         (elint-init-form, elint-check-defalias-form)
18267         (elint-check-let-form):
18268         * lisp/emacs-lisp/ert.el (ert-get-test):
18269         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
18270         (find-function-library):
18271         * lisp/emacs-lisp/generator.el (iter-yield):
18272         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
18273         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
18274         * lisp/emacs-lisp/package-x.el (package-upload-file):
18275         * lisp/emacs-lisp/package.el (package-version-join)
18276         (package-disabled-p, package-activate-1, package-activate)
18277         (package--download-one-archive)
18278         (package--download-and-read-archives)
18279         (package-compute-transaction, package-install-from-archive)
18280         (package-install, package-install-selected-packages)
18281         (package-delete, package-autoremove)
18282         (package-install-button-action, package-delete-button-action)
18283         (package-menu-hide-package, package-menu--list-to-prompt)
18284         (package-menu--perform-transaction)
18285         (package-menu--find-and-notify-upgrades):
18286         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
18287         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
18288         * lisp/emacs-lisp/ring.el (ring-next, ring-previous):
18289         * lisp/emacs-lisp/rx.el (rx-check, rx-anything):
18290         * lisp/emacs-lisp/smie.el (smie-config-save):
18291         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
18292         * lisp/emacs-lisp/testcover.el (testcover-1value):
18293         Use curved quotes in diagnostic format strings.
18295 2015-08-21  Fabián Ezequiel Gallina  <fgallina@gnu.org>
18297         python.el: Ensure remote process-environment on non-interactive processes
18298         * lisp/progmodes/python.el
18299         (python-shell-tramp-refresh-process-environment): New function.
18300         (python-shell-with-environment): Use it.
18301         * test/automated/python-tests.el (python-shell-with-environment-2):
18302         Update.
18304         python.el: Enhancements to process environment setup.
18305         * lisp/progmodes/python.el (python-shell-process-environment)
18306         (python-shell-extra-pythonpaths, python-shell-exec-path)
18307         (python-shell-virtualenv-root): Update docstring.  Remove :safe.
18308         (python-shell-setup-codes): Remove :safe.
18309         (python-shell-remote-exec-path): New defcustom.
18310         (python-shell--add-to-path-with-priority): New macro.
18311         (python-shell-calculate-pythonpath): Give priority to
18312         python-shell-extra-pythonpaths.  Update docstring.
18313         (python-shell-calculate-process-environment): Give priority to
18314         python-shell-process-environment.  Update docstring.
18315         (python-shell-calculate-exec-path): Give priority to
18316         python-shell-exec-path and calculated virtualenv bin directory.
18317         Update docstring.
18318         (python-shell-tramp-refresh-remote-path): New function.
18319         (python-shell-with-environment): Use it when working remotely and
18320         do not modify tramp-remote-path.  Allow nesting.
18321         (python-shell-calculate-command): Remove useless
18322         python-shell-with-environment call.
18323         * test/automated/python-tests.el (python-shell-calculate-pythonpath-1)
18324         (python-shell-calculate-pythonpath-2)
18325         (python-shell-calculate-process-environment-6)
18326         (python-shell-calculate-process-environment-7)
18327         (python-shell-calculate-process-environment-8)
18328         (python-shell-calculate-exec-path-3)
18329         (python-shell-calculate-exec-path-4)
18330         (python-shell-calculate-exec-path-5)
18331         (python-shell-calculate-exec-path-6)
18332         (python-shell-with-environment-3): New tests.
18333         (python-shell-calculate-process-environment-2)
18334         (python-shell-calculate-process-environment-3)
18335         (python-shell-calculate-process-environment-4)
18336         (python-shell-calculate-process-environment-5)
18337         (python-shell-calculate-exec-path-1)
18338         (python-shell-calculate-exec-path-2)
18339         (python-shell-with-environment-1)
18340         (python-shell-with-environment-2): Update and simplify.
18342 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
18344         Avoid hard-coding "M-x command" in docstrings
18345         * lisp/calendar/todo-mode.el (todo-mode):
18346         * lisp/desktop.el (desktop-save-mode):
18347         * lisp/edmacro.el (edit-kbd-macro):
18348         * lisp/emacs-lisp/package.el (package-menu-execute):
18349         * lisp/emulation/viper-cmd.el (viper-ask-level):
18350         * lisp/emulation/viper-init.el (viper-expert-level):
18351         * lisp/filesets.el (filesets-add-buffer):
18352         * lisp/follow.el (follow-mode):
18353         * lisp/gnus/auth-source.el (auth-sources):
18354         * lisp/international/ogonek.el (ogonek-informacja)
18355         (ogonek-information):
18356         * lisp/net/tramp.el (tramp-process-actions):
18357         * lisp/org/org-gnus.el (org-gnus-no-new-news):
18358         * lisp/org/org.el (org-ellipsis):
18359         * lisp/progmodes/python.el (python-shell-get-process-or-error):
18360         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
18361         * lisp/server.el (server-start):
18362         * lisp/type-break.el (type-break-noninteractive-query):
18363         * lisp/userlock.el (ask-user-about-supersession-help):
18364         * lisp/whitespace.el (whitespace-report-region):
18365         Prefer (substitute-command-keys "`\\[foo-command]'")
18366         to "`M-x foo-command'" in docstrings and the like.
18368 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
18370         Use add-function for prettify-symbols-compose-predicate
18371         * lisp/textmodes/tex-mode.el (tex-common-initialization): Set
18372         prettify-symbols-compose-predicate in terms of add-function.
18373         * etc/NEWS: Mention prettify-symbols-compose-predicate and
18374         prettify-symbols-mode support in tex-mode.
18376 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
18378         * lisp/emacs-lisp/smie.el (smie-indent-current-column): New fun.
18379         (smie-indent-exps, smie-indent-keyword): Use it.
18380         * test/indent/css-mode.css: Test alignment with leading comment.
18382 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
18384         Respect text-quoting-style in (*Finder*) menus
18385         * lisp/info.el (info--prettify-description):
18386         Treat description as a docstring, so that it's requoted as
18387         per text-quoting-style.
18389 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
18391         Document `window-use-time' in Elisp manual
18392         * doc/lispref/windows.texi (Selecting Windows): Document
18393         `window-use-time'.
18395 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
18397         * src/w32uniscribe.c (_WIN32_WINNT): Define to 0x0600.
18398         This is a cleaner fix for Bug#21260 than the previous change.
18400 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
18402         Respect text-quoting-style in calc
18403         In calc, tespect text-quoting-style preference in diagnostic
18404         formats and fix a few similar problems in docstrings.
18405         * lisp/calc/calc-aent.el (math-read-factor):
18406         * lisp/calc/calc-embed.el (calc-do-embedded):
18407         * lisp/calc/calc-ext.el (calc-user-function-list)
18408         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
18409         * lisp/calc/calc-help.el (calc-describe-key)
18410         (calc-describe-thing):
18411         * lisp/calc/calc-lang.el (calc-c-language)
18412         (math-parse-fortran-vector-end, math-parse-tex-sum)
18413         (math-parse-eqn-matrix, math-parse-eqn-prime)
18414         (calc-yacas-language, calc-maxima-language, calc-giac-language)
18415         (math-read-big-rec, math-read-big-balance):
18416         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
18417         (calc-auto-recompute):
18418         * lisp/calc/calc-prog.el (calc-user-define-invocation)
18419         (math-do-arg-check):
18420         * lisp/calc/calc-store.el (calc-edit-variable):
18421         * lisp/calc/calc-units.el (math-build-units-table-buffer):
18422         * lisp/calc/calc-vec.el (math-read-brackets):
18423         * lisp/calc/calc-yank.el (calc-edit-mode):
18424         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
18425         Use curved quotes in diagnostic format strings.
18426         * lisp/calc/calc-help.el (calc-describe-thing):
18427         Format docstrings with substitute-command-keys.
18428         * lisp/calc/calc-help.el (calc-j-prefix-help):
18429         * lisp/calc/calc-misc.el (calc-help):
18430         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
18431         Escape a docstring "`".
18433 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
18435         Fix documentation of 'menu-set-font' and 'set-frame-font'
18436         * lisp/menu-bar.el (menu-set-font): Doc fix.  (Bug#21303)
18437         * doc/lispref/frames.texi (Frame Font): Document that
18438         set-frame-font with the last argument 't' will also make the font
18439         the default for the future GUI frames.
18441         Document '--create-frame' option to emacsclient
18442         * doc/emacs/misc.texi (emacsclient Options): Document the
18443         '--create-frame' option.  (Bug#21308)
18445 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
18447         * lisp/progmodes/js.el (js-mode): Don't eagerly syntax propertize.
18449 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
18451         Document 'get-mru-window' in the ELisp manual
18452         * doc/lispref/windows.texi (Cyclic Window Ordering): Document
18453         'get-mru-window'.  (Bug#21306)
18455         Clarify documentation of 'get-buffer-window-list'
18456         * doc/lispref/windows.texi (Buffers and Windows): Mention that the
18457         current window, if relevant, will be the first in the list
18458         returned by 'get-buffer-window-list'.
18459         * lisp/window.el (get-buffer-window-list): Doc fix.  (Bug#21305)
18461 2015-08-21  Vasilij Schneidermann  <v.schneidermann@gmail.com>
18463         In `ielm' use `pop-to-buffer-same-window' (Bug#20848)
18464         * lisp/ielm.el (ielm): Use `pop-to-buffer-same-window' instead of
18465         `switch-to-buffer'.
18467 2015-08-21  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
18469         In woman.el use `display-buffer' instead of `switch-to-buffer' (Bug#21047)
18470         * lisp/woman.el (woman-really-find-file, WoMan-find-buffer): Use
18471         `display-buffer' instead of `switch-to-buffer'.
18473 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
18475         Follow user preference in calendar diagnostics
18476         Respect text-quoting-style preference in diagnostic formats by
18477         using curved quotes (which are translated as per text-quoting-style)
18478         instead of grave accent and apostrophe (which are not).
18479         * lisp/calendar/appt.el (appt-display-message):
18480         * lisp/calendar/diary-lib.el (diary-check-diary-file)
18481         (diary-mail-entries, diary-from-outlook):
18482         * lisp/calendar/icalendar.el (icalendar-export-region)
18483         (icalendar--convert-float-to-ical)
18484         (icalendar--convert-date-to-ical)
18485         (icalendar--convert-ical-to-diary)
18486         (icalendar--convert-recurring-to-diary)
18487         (icalendar--add-diary-entry):
18488         * lisp/calendar/time-date.el (format-seconds):
18489         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
18490         (timeclock-make-hours-explicit):
18491         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
18492         (todo-item-mark, todo-check-format)
18493         (todo-insert-item--next-param, todo-edit-item--next-key)
18494         (todo-mode):
18495         Use curved quotes in diagnostic format strings.
18496         * lisp/calendar/icalendar.el (icalendar-import-format-sample):
18497         * test/automated/icalendar-tests.el (icalendar--import-format-sample):
18498         Just use straight quoting for simple test case.
18500 2015-08-21  Michael Albinus  <michael.albinus@gmx.de>
18502         * src/gfilenotify.c (Fgfile_add_watch):
18503         Handle errors from g_file_monitor.
18505 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
18507         In frames.texi use "minibuffer-less frame" instead of "non-minibuffer frame"
18508         * doc/lispref/frames.texi (Frame Layout): Use "minibuffer-less
18509         frame" instead of "non-minibuffer frame".
18511         Fix frame geometry related text
18512         * doc/lispref/frames.texi (Frame Layout):
18513         Rename `x-frame-geometry' to `frame-geometry'.
18514         * doc/lispref/frames.texi (Mouse Position):
18515         * doc/lispref/windows.texi (Coordinates and Windows):
18516         Use `set-mouse-absolute-pixel-position' instead of
18517         `x-set-mouse-absolute-pixel-position'.
18519         Sanitize frame geometry related functions
18520         * src/nsfns.m (Fx_frame_geometry): Rename to Fns_frame_geometry.
18521         (Fx_frame_edges): Rename to Fns_frame_edges.
18522         * src/w32fns.c (Fx_frame_geometry): Rename to Fw32_frame_geometry.
18523         (Fx_frame_edges): Rename to Fw32_frame_edges.
18524         (Fx_mouse_absolute_pixel_position): Rename to
18525         Fw32_mouse_absolute_pixel_position.
18526         (Fx_set_mouse_absolute_pixel_position): Rename to
18527         Fw32_set_mouse_absolute_pixel_position.
18528         * lisp/frame.el (x-frame-geometry, w32-frame-geometry)
18529         (ns-frame-geometry, x-frame-edges, w32-frame-edges)
18530         (ns-frame-edges, w32-mouse-absolute-pixel-position)
18531         (x-mouse-absolute-pixel-position)
18532         (w32-set-mouse-absolute-pixel-position)
18533         (x-set-mouse-absolute-pixel-position): Declare.
18534         (frame-geometry, mouse-absolute-pixel-position)
18535         (set-mouse-absolute-pixel-position): New functions.
18536         (frame-edges): Rewrite in terms of x-/w32-/ns-frame-edges.
18538 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
18540         Fix MinGW64 build broken by latest w32uniscribe.c changes
18541         * src/w32uniscribe.c (UNISCRIBE_OPENTYPE): Define to 0x0100, for
18542         MinGW64.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
18543         (Bug#21260)
18545 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
18547         Add TeX defaults for prettify-symbol-mode
18548         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
18549         Rename from tex-prettify-symbols-alist.
18550         (tex--prettify-symbols-compose-p): New function.
18551         (tex-common-initialization): Use them as prettify-symbols-alist
18552         and prettify-symbols-compose-predicate.
18554         Generalize prettify-symbols to arbitrary modes
18555         * lisp/progmodes/prog-mode.el
18556         (prettify-symbols-default-compose-p): New function.
18557         (prettify-symbols-compose-predicate): New variable.
18558         (prettify-symbols--compose-symbol): Use it.
18560 2015-08-20  Paul Eggert  <eggert@cs.ucla.edu>
18562         Don't quote symbols 'like-this' in docstrings etc.
18563         * admin/unidata/uvs.el (uvs-insert-fields-as-bytes):
18564         * lisp/allout-widgets.el (allout-widgets-count-buttons-in-region):
18565         * lisp/allout.el (allout-add-resumptions, allout-mode):
18566         * lisp/calculator.el (calculator-operators):
18567         * lisp/cedet/data-debug.el (dd-propertize):
18568         * lisp/cedet/ede/proj-prog.el (ede-proj-target-makefile-program):
18569         * lisp/cedet/semantic/analyze/debug.el:
18570         (semantic-analyzer-debug-global-miss-text):
18571         * lisp/cedet/semantic/lex-spp.el:
18572         (semantic-lex-spp-replace-or-symbol-or-keyword):
18573         * lisp/cedet/semantic/symref.el:
18574         (semantic-symref-cleanup-recent-buffers-fcn):
18575         * lisp/cedet/semantic/tag.el (semantic-tag-class):
18576         * lisp/cedet/srecode/el.el (srecode-semantic-handle-:el-custom):
18577         * lisp/gnus/nnmairix.el (nnmairix-propagate-marks-upon-close):
18578         * lisp/gnus/pop3.el (pop3-authentication-scheme):
18579         * lisp/help-fns.el (describe-function-orig-buffer):
18580         * lisp/imenu.el (imenu--history-list):
18581         * lisp/mail/feedmail.el (feedmail-confirm-outgoing)
18582         (feedmail-display-full-frame, feedmail-deduce-bcc-where)
18583         (feedmail-queue-default-file-slug)
18584         (feedmail-queue-buffer-file-name):
18585         * lisp/net/mairix.el (mairix-searches-mode-map):
18586         * lisp/net/newst-backend.el (newsticker-retrieval-method)
18587         (newsticker-auto-mark-filter-list):
18588         * lisp/obsolete/vi.el (vi-mode):
18589         * lisp/progmodes/cc-engine.el (c-literal-type):
18590         * lisp/progmodes/cpp.el (cpp-face):
18591         * lisp/progmodes/ebrowse.el (ebrowse-electric-list-looper):
18592         * lisp/progmodes/elisp-mode.el (elisp--xref-make-xref):
18593         * lisp/progmodes/pascal.el (pascal-auto-lineup):
18594         * lisp/progmodes/prog-mode.el (prog-widen):
18595         * lisp/progmodes/verilog-mode.el (verilog-regexp-words)
18596         (verilog-auto-lineup, verilog-auto-reset-widths)
18597         (verilog-auto-arg-format, verilog-auto-inst-template-numbers):
18598         * lisp/textmodes/flyspell.el (flyspell-maybe-correct-transposition)
18599         (flyspell-maybe-correct-doubling):
18600         * lisp/textmodes/table.el (table-justify, table-justify-cell)
18601         (table-justify-row, table-justify-column, table-insert-sequence)
18602         (table--justify-cell-contents):
18603         * lisp/url/url-auth.el (url-get-authentication):
18604         * lisp/window.el (display-buffer-record-window):
18605         * lisp/xml.el (xml-parse-file, xml-parse-region):
18606         * src/gfilenotify.c (Fgfile_add_watch):
18607         Don't quote symbols with apostrophes in doc strings.
18608         Use asymmetric quotes instead.
18609         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
18610         Likewise for symbol in diagnostic.
18611         * lisp/image.el (image-extension-data):
18612         * lisp/register.el (frame-configuration-to-register):
18613         * src/buffer.c (syms_of_buffer):
18614         Remove bogus apostrophes after symbols.
18615         * lisp/thumbs.el (thumbs-conversion-program):
18616         Quote Lisp string values using double-quotes, not apostrophes.
18618 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
18620         Describe frame geometry and related functions in Elisp manual
18621         * doc/lispref/display.texi (Size of Displayed Text, Line Height)
18622         (Showing Images): Update references.
18623         * doc/lispref/elisp.texi (Top): Update node listing.
18624         * doc/lispref/frames.texi (Frame Geometry): New node.
18625         Move `Size and Position' section here.
18626         (Size Parameters): Update references.
18627         (Mouse Position): Update references and nomenclature.
18628         Describe new functions `x-mouse-absolute-pixel-position' and
18629         `x-set-mouse-absolute-pixel-position'.
18630         * doc/lispref/windows.texi (Window Sizes): Update references.
18631         (Resizing Windows): Update references.  Move description of
18632         `fit-frame-to-buffer' here.
18633         (Coordinates and Windows): Update nomenclature and references.
18634         Describe new arguments of `window-edges'.  Comment out
18635         descriptions of `window-left-column', `window-top-line',
18636         `window-pixel-left' and `window-pixel-top'.  Describe
18637         `window-absolute-pixel-position'.
18639 2015-08-20  Alan Mackenzie  <acm@muc.de>
18641         Handling of `c-parse-state'.  Fix low level bug.
18642         * lisp/progmodes/cc-engine.el (c-remove-stale-state-cache-backwards):
18643         Add "CASE 3.5" to handle `cache-pos' being only slightly before `here'.
18645 2015-08-20  Andreas Politz  <politza@hochschule-trier.de>
18647         * lisp/wid-edit.el (widget-color--choose-action): Quit *Color*
18648         window instead of deleting it.
18650 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
18652         In w32fns.c's Fx_frame_geometry rewrite check whether frame has a titlebar
18653         * src/w32fns.c (Fx_frame_geometry): Use title_bar.rgstate[0] to
18654         determine whether frame has a titlebar.
18655         Suggested by Eli Zaretskii <eliz@gnu.org>
18657 2015-08-20  Tassilo Horn  <tsdh@gnu.org>
18659         Add a prettify-symbols-alist for (La)TeX
18660         * lisp/textmodes/tex-mode.el (tex-prettify-symbols-alist):
18661         New variable holding an alist suitable as prettify-symbols-alist in
18662         (La)TeX modes.
18664 2015-08-19  Alan Mackenzie  <acm@muc.de>
18666         Make electric-pair-mode, delete-selection-mode and CC Mode cooperate.
18667         Fixes debbugs#21275.
18668         In Emacs >= 25, let electric-pair-mode take precedence over
18669         delete-selection-mode.
18670         * lisp/delsel.el (delete-selection-uses-region-p): New function,
18671         previously a lambda expression in a property value for
18672         `self-insert-command'.
18673         (top-level): Set the `delete-selection' property of
18674         `self-insert-command' to `delete-selection-uses-region-p'.
18675         * lisp/progmodes/cc-cmds.el (top-level): Give the `delete-selection'
18676         property for c-electric-\(brace\|paren\) the value
18677         `delete-selection-uses-region-p' when the latter function exists.
18679 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
18681         Fix key binding quoting in tutorial *Help*
18682         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
18683         When generating help for custom key bindings, use the user-preferred
18684         quoting style rather than hardcoding the grave style.
18686 2015-08-19  Eli Zaretskii  <eliz@gnu.org>
18688         Improve and future-proof OTF fonts support in w32uniscribe.c
18689         * src/w32uniscribe.c (uniscribe_otf_capability): Add commentary
18690         about the expected results and why the new Uniscribe APIs are not
18691         used in this function.
18692         (ScriptGetFontScriptTags_Proc, ScriptGetFontLanguageTags_Proc)
18693         (ScriptGetFontFeatureTags_Proc): New function typedefs.
18694         (uniscribe_new_apis): New static variable.
18695         (uniscribe_check_features): New function, implements OTF features
18696         verification while correctly accounting for features in the list
18697         after the nil member, if any.
18698         (uniscribe_check_otf_1): New function, retrieves the features
18699         supported by the font for the requested script and language using
18700         the Uniscribe APIs available from Windows Vista onwards.
18701         (uniscribe_check_otf): If the new Uniscribe APIs are available,
18702         use them in preference to reading the font data directly.  Call
18703         uniscribe_check_features to verify that the requested features are
18704         supported, replacing the original incomplete code.
18705         (syms_of_w32uniscribe): Initialize function pointers for the new
18706         Uniscribe APIs.  (Bug#21260)
18707         (otf_features): Scan the script, langsys, and feature arrays back
18708         to front, so that the result we return has them in alphabetical
18709         order, like ftfont.c does.
18710         * src/w32fns.c (syms_of_w32fns) <w32-disable-new-uniscribe-apis>:
18711         New variable for debugging w32uniscribe.c code.
18713 2015-08-19  Artur Malabarba  <bruce.connor.am@gmail.com>
18715         * lisp/isearch.el (isearch-search-fun-default): Revert a5bdb87
18716         Remove usage of `isearch-lax-whitespace' inside the `iearch-word'
18717         clause of `isearch-search-fun-default'.  That lax variable does not
18718         refer to lax-whitespacing.  Related to (bug#21777).
18719         This reverts commit a5bdb872edb9f031fe041faf9a8c0be432e5f64c.
18720         * lisp/character-fold.el (character-fold-search): Set to nil.
18721         Default to nil for now, until someone implements proper
18722         lax-whitespacing with char-fold searching.
18724 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
18726         Fix doc-string of `help-mode-finish'.
18727         * lisp/help-mode.el (help-mode-finish): Fix doc-string.
18729         In nsimage.m include coding.h (Bug#21292)
18730         * src/nsimage.m (top-level): Include coding.h (Bug#21292).
18732         Move window edge functions to Elisp.
18733         * src/window.c (Fwindow_edges, Fwindow_pixel_edges)
18734         (Fwindow_absolute_pixel_edges, Fwindow_inside_edges)
18735         (Fwindow_inside_pixel_edges, Fwindow_inside_absolute_pixel_edges):
18736         Move to window.el.
18737         (calc_absolute_offset): Remove.
18738         * lisp/frame.el (frame-edges): New function.
18739         * lisp/window.el (window-edges, window-pixel-edges)
18740         (window-absolute-pixel-edges): Move here from window.c.
18741         (window-body-edges, window-body-pixel-edges)
18742         (window-absolute-body-pixel-edges): Move here from window.c and
18743         rename "inside" to "body".  Keep old names as aliases.
18744         (window-absolute-pixel-position): New function.
18746 2015-08-19  Katsumi Yamaoka  <yamaoka@jpl.org>
18748         [Gnus]: Use overlay functions directly
18749         * lisp/gnus/gnus-art.el (gnus-mime-inline-part, gnus-mm-display-part)
18750         (gnus-insert-mime-button, gnus-mime-buttonize-attachments-in-header)
18751         (gnus-article-highlight-signature, gnus-article-extend-url-button)
18752         (gnus-article-add-button, gnus-insert-prev-page-button)
18753         (gnus-insert-next-page-button, gnus-insert-mime-security-button):
18754         * lisp/gnus/gnus-cite.el (gnus-cite-delete-overlays)
18755         (gnus-cite-add-face):
18756         * lisp/gnus/gnus-html.el (gnus-html-wash-tags):
18757         * lisp/gnus/gnus-salt.el (gnus-tree-read-summary-keys)
18758         (gnus-tree-recenter, gnus-highlight-selected-tree):
18759         * lisp/gnus/gnus-sum.el (gnus-summary-show-all-threads)
18760         (gnus-summary-show-thread, gnus-summary-hide-thread)
18761         (gnus-highlight-selected-summary):
18762         * lisp/gnus/gnus-util.el (gnus-put-overlay-excluding-newlines):
18763         * lisp/gnus/message.el (message-fix-before-sending)
18764         (message-toggle-image-thumbnails):
18765         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
18766         * lisp/gnus/sieve.el (sieve-highlight, sieve-insert-scripts):
18767         Use overlay functions directly instead of using gnus-overlay-*,
18768         message-overlay-*, and sieve-overlay-*.
18769         * lisp/gnus/gnus-sum.el (gnus-remove-overlays):
18770         * lisp/gnus/gnus.el (gnus-make-overlay, gnus-copy-overlay)
18771         (gnus-delete-overlay, gnus-overlay-get, gnus-overlay-put)
18772         (gnus-move-overlay, gnus-overlay-buffer, gnus-overlay-start)
18773         (gnus-overlay-end, gnus-overlays-at, gnus-overlays-in):
18774         * lisp/gnus/message.el (message-delete-overlay, message-make-overlay)
18775         (message-overlay-get, message-overlay-put, message-overlays-in):
18776         * lisp/gnus/sieve.el (sieve-make-overlay, sieve-overlay-put)
18777         (sieve-overlays-at): Remove.
18779 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
18781         In w32fns.c condition TITLEBAR_INFO declaration on WINDOWS version
18782         * src/w32fns.c (TITLEBAR_INFO): Make it a typedef so MinGW64
18783         builds can use the declaration from the system headers.
18784         (GetTitleBarInfo_Proc, Fx_frame_geometry): Adapt to new
18785         definition of TITLEBAR_INFO.
18786         Suggested by Eli Zaretskii  <eliz@gnu.org>
18788 2015-08-19  Glenn Morris  <rgm@gnu.org>
18790         * lisp/gnus/nnmaildir.el (nnmaildir-flag-mark-mapping): Add "P".
18792 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
18794         Use new q ‘format’ flag when fixing quotes in C
18795         * src/image.c (image_size_error): New function.  All uses of
18796         image_error with "Invalid image size ..."  changed to use it.
18797         * src/image.c (image_size_error, xbm_load_image, xbm_load)
18798         (xpm_load, xpm_load_image, xpm_load, pbm_load, png_load_body)
18799         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
18800         (imagemagick_load, svg_load, svg_load_image, gs_load)
18801         (x_kill_gs_process):
18802         * src/lread.c (load_warn_old_style_backquotes):
18803         * src/xfaces.c (load_pixmap):
18804         * src/xselect.c (x_clipboard_manager_error_1):
18805         Use %qs, not uLSQM and uRSQM.
18806         * src/syntax.c (Finternal_describe_syntax_value):
18807         Prefer Fsubstitute_command_keys to Fformat, as this lets
18808         us use AUTO_STRING.
18809         * src/xdisp.c (vadd_to_log): Use AUTO_STRING on the format argument,
18810         as it's now guaranteed to be ASCII.
18811         * src/xselect.c (x_clipboard_manager_error_2):
18812         Avoid grave accent in low-level stderr diagnostic.
18814 2015-08-19  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
18816         New q flag for ‘format’
18817         * doc/lispref/processes.texi (Sentinels):
18818         Don't hardwire grave quoting style in example.
18819         * doc/lispref/strings.texi (Formatting Strings):
18820         * etc/NEWS:
18821         Document new q flag.
18822         * src/editfns.c (Fformat): Implement it.
18824 2015-08-18  Daiki Ueno  <ueno@gnu.org>
18826         pinentry.el: Add debugging support
18827         * lisp/net/pinentry.el (pinentry-debug): New variable.
18828         (pinentry-debug-buffer): New variable.
18829         (pinentry--process-filter): Send input to the debug buffer, if
18830         `pinentry-debug' is set.
18832         pinentry.el: Improve multiline prompt
18833         * lisp/net/pinentry.el (pinentry--prompt): Simplify the interface.
18834         (pinentry--process-filter): Use `pinentry--prompt' for CONFIRM
18835         command.
18837 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
18839         Fix multibyte confusion in diagnostics
18840         * src/print.c (print_error_message):
18841         Don't assume that the caller's name is unibyte.
18842         * src/xdisp.c (vadd_to_log):
18843         Don't assume that the formatted diagnostic is unibyte.
18845         Fix file name encodings in diagnostics
18846         Also, close some minor races when opening image files, by opening
18847         them once instead of multiple times.
18848         * src/gtkutil.c (xg_get_image_for_pixmap):
18849         * src/image.c (xpm_load, tiff_load, gif_load, imagemagick_load)
18850         (svg_load):
18851         * src/nsimage.m (allocInitFromFile:):
18852         * src/xfns.c (xg_set_icon):
18853         Encode file name, since x_find_image_file no longer does that.
18854         * src/image.c (x_find_image_fd): New function.
18855         (x_find_image_file): Use it.  Do not encode resulting file name,
18856         since callers sometimes need it decoded.
18857         (slurp_file): File arg is now a fd, not a file name.
18858         All callers changed.  This saves us having to open the file twice.
18859         (xbm_load, xpm_load, pbm_load, png_load_body, jpeg_load_body)
18860         (svg_load):
18861         Use x_find_image_fd and fdopen to save a file-open.
18862         Report file name that failed.
18863         * src/lread.c (openp): If PREDICATE is t, open the file in binary mode.
18865 2015-08-18  Dmitry Gutov  <dgutov@yandex.ru>
18867         Allow blink-matching-paren to jump off screen
18868         * doc/emacs/programs.texi (Matching): Mention the
18869         `blink-matching-paren' value `jump-offscreen'.
18870         * lisp/simple.el (blink-matching-paren): New possible value.
18871         (blink-matching-paren-on-screen): Clarify the docstring.
18872         (blink-matching-open): Handle `jump-offscreen' (bug#21286).
18874         Refine the previous change
18875         * lisp/simple.el (blink-matching-open): Use minibuffer-message
18876         outside of save-excursion (bug#21286).
18878 2015-08-18  Martin Rudalics  <rudalics@gmx.at>
18880         Rewrite and add frame geometry related functions.
18881         * src/frame.c (Fframe_position): New function.
18882         (Fset_frame_position): Rename parameters and rewrite doc-string.
18883         (syms_of_frame): Remove Qframe_position, Qframe_outer_size,
18884         Qtitle_height and Qframe_inner_size.  Add Qouter_edges,
18885         Qouter_position, Qouter_size, Qnative_edges, Qinner_edges,
18886         Qtitle_bar_size.
18887         * src/nsfns.m (frame_geometry): New function.
18888         (Fx_frame_geometry): Call frame_geometry.
18889         (Fx_frame_edges): New function.
18890         * src/w32fns.c (C_CHILDREN_TITLEBAR, TITLEBAR_INFO)
18891         (GetTitleBarInfo_Proc): Define these so we can use the
18892         GetTitleBarInfo API.
18893         (Fw32_frame_menu_bar_size, Fw32_frame_rect): Remove.
18894         (Fx_frame_geometry): Rewrite.
18895         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
18896         (Fx_set_mouse_absolute_pixel_position): New functions.
18897         * src/xfns.c (frame_geometry): New function.
18898         (Fx_frame_geometry): Call frame_geometry.
18899         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
18900         (Fx_set_mouse_absolute_pixel_position): New functions.
18902 2015-08-18  Michael Albinus  <michael.albinus@gmx.de>
18904         Improve Tramp's compatibility
18905         * lisp/net/tramp.el (tramp-get-method-parameter):
18906         * lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
18907         (tramp-adb-get-device):
18908         * lisp/net/trampver.el (tramp-repository-get-version):
18909         Use `tramp-compat-replace-regexp-in-string'.
18911 2015-08-18  Pierre Téchoueyres  <pierre.techoueyres@free.fr>  (tiny change)
18913         * lisp/net/tramp-cmds.el (tramp-reporter-dump-variable):
18914         Encode/decode string.
18916 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
18918         Clarify what happens to match data on failure
18919         Problem reported by Ernesto Alfonso (Bug#21279).
18920         * doc/lispref/searching.texi (Regexp Search, Simple Match Data):
18921         Document more carefully what happens to match data after a failed
18922         search.
18923         * src/search.c (Fmatch_beginning, Fmatch_end): Document that
18924         the return value is undefined if the last search failed.
18925         (Fmatch_data): Simplify doc string line 1.
18927 2015-08-18  Daiki Ueno  <ueno@gnu.org>
18929         Revert "pinentry.el: Support external passphrase cache"
18930         This reverts commit e086e55a664ec27fbca7b3231c4b32cb78a89337.
18931         pinentry.el shouldn't directly interact with the secrets service,
18932         but ask the caller to cache the passphrase.
18934 2015-08-17  Xue Fuqiao  <xfq.free@gmail.com>
18936         * doc/emacs/sending.texi (Mail Misc): Fix two index entries for
18937         Message mode hooks.
18939 2015-08-17  Daiki Ueno  <ueno@gnu.org>
18941         epg.el: Make gpgconf output parsing future proof
18942         * lisp/epg.el (epg--start): Count the number of fields in "gpgconf
18943         --list-options" output.
18945         pinentry.el: Support external passphrase cache
18946         * lisp/net/pinentry.el (pinentry-use-secrets): New user option.
18947         (pinentry--allow-external-password-cache): New local variable.
18948         (pinentry--key-info): New local variable.
18949         (secrets-enabled, secrets-search-items, secrets-get-secret):
18950         Declare.
18951         (pinentry--send-passphrase): New function, split from
18952         `pinentry--process-filter'.
18953         (pinentry--process-filter): Use secrets.el to retrieve passphrase
18954         from login keyring.
18956         pinentry.el: Popup window for multiline prompt
18957         * lisp/net/pinentry.el (pinentry): New custom group.
18958         (pinentry-popup-prompt-window): New user option.
18959         (pinentry-prompt-window-height): New user option.
18960         (pinentry--prompt-buffer): New variable.
18961         (pinentry-prompt-mode-map): New variable.
18962         (pinentry-prompt-mode): New function.
18963         (pinentry--prompt): New function.
18964         (pinentry--process-filter): Use `pinentry--prompt' instead of
18965         `read-passwd' and `y-or-n-p'.
18967 2015-08-17  Katsumi Yamaoka  <yamaoka@jpl.org>
18969         message.el: Silent the byte compiler
18970         * lisp/gnus/message.el (message-overlay-put, message-make-overlay)
18971         (message-kill-all-overlays, message-overlays-in, message-overlay-get)
18972         (message-delete-overlay, message-window-inside-pixel-edges):
18973         Declare before using.
18975         * lisp/gnus/message.el (message-overlay-get, message-overlays-in)
18976         (message-window-inside-pixel-edges): XEmacs compatible functions.
18978 2015-08-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
18980         * lisp/gnus/message.el (message-toggle-image-thumbnails): New command.
18982 2015-08-17  Noah Friedman  <friedman@splode.com>
18984         * lisp/simple.el (blink-matching-open): Restore point before
18985         calling minibuffer-message.
18987 2015-08-17  Ronnie Schnell  <ronnie@driver-aces.com>
18989         * lisp/play/dunnet.el: Update version number in header (now
18990         matches help).
18992 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
18994         Curved quotes in --batch diagnostics in non-UTF-8
18995         When run with --batch, check that curved quotes are compatible with
18996         the system locale before outputting them in diagnostics.
18997         Problem reported by Eli Zaretskii in:
18998         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00594.html
18999         * lisp/startup.el (command-line): Set internal--text-quoting-flag
19000         after the standard display table is initialized.
19001         * src/doc.c (default_to_grave_quoting_style): New function.
19002         (text_quoting_style): Use it.
19003         (text_quoting_flag): New static var, visible to Lisp as
19004         internal--text-quoting-flag.
19005         * src/emacs.c: Include <wchar.h> if available.
19006         (using_utf8): New function.
19007         (main): Use it to initialize text_quoting_flag.
19008         * src/regex.h (btowc) [WIDE_CHAR_SUPPORT && emacs]:
19009         Don't define, as it's not needed and it clashes with wchar.h.
19011 2015-08-17  Glenn Morris  <rgm@gnu.org>
19013         * doc/misc/tramp.texi (Configuration): Reword to avoid warning
19014         from makeinfo about spurious "Note:" cross-reference, and for grammar.
19016 2015-08-17  Ilya Zakharevich  <ilya@math.berkeley.edu>
19018         Minor change in variable initialization on MS-Windows
19019         * src/w32fns.c <after_dead_key>: Initialize to -1.
19020         (deliver_wm_chars): If after_deadkey is zero, don't set after_dead
19021         non-zero.
19023         Fix a bug with LWindow key remapping on MS-Windows
19024         * src/w32fns.c (deliver_wm_chars): Fix a typo.  (Bug#21276)
19026 2015-08-17  Eli Zaretskii  <eliz@gnu.org>
19028         Improve fontset support for latest OTF script tags
19029         * lisp/international/fontset.el (otf-script-alist): Add some
19030         missing script tags.
19031         (setup-default-fontset): Include settings for v2 versions of the
19032         script tags used by some modern OTF/TTF fonts.
19034 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
19036         Spelling fixes
19038 2015-08-16  Paul Eggert  <eggert@cs.ucla.edu>
19040         Use curved quotes in core elisp diagnostics
19041         In the core elisp files, use curved quotes in diagnostic formats,
19042         so that they follow user preference as per ‘text-quoting-style’
19043         rather than being hard-coded to quote `like this'.
19044         * lisp/abbrev.el (expand-region-abbrevs):
19045         * lisp/button.el (button-category-symbol, button-put)
19046         (make-text-button):
19047         * lisp/cus-start.el:
19048         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
19049         (custom--sort-vars-1, load-theme):
19050         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
19051         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
19052         (cl-generic-generalizers):
19053         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
19054         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
19055         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
19056         (advice--make, define-advice):
19057         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
19058         * lisp/emacs-lisp/timer.el (timer-event-handler):
19059         * lisp/env.el (setenv):
19060         * lisp/facemenu.el (facemenu-add-new-face)
19061         (facemenu-add-new-color):
19062         * lisp/faces.el (face-documentation, read-face-name)
19063         (face-read-string, read-face-font, face-spec-set-match-display)
19064         (read-color, x-resolve-font-name):
19065         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
19066         (set-auto-mode, hack-local-variables)
19067         (hack-one-local-variable--obsolete)
19068         (dir-locals-set-directory-class, write-file)
19069         (basic-save-buffer, delete-directory, copy-directory)
19070         (recover-session, recover-session-finish, insert-directory)
19071         (file-modes-char-to-who, file-modes-symbolic-to-number)
19072         (move-file-to-trash):
19073         * lisp/font-lock.el (font-lock-fontify-buffer):
19074         * lisp/format.el (format-write-file, format-find-file)
19075         (format-insert-file):
19076         * lisp/frame.el (get-device-terminal, select-frame-by-name):
19077         * lisp/fringe.el (fringe--check-style):
19078         * lisp/help.el (describe-minor-mode-from-indicator):
19079         * lisp/image.el (image-type):
19080         * lisp/international/fontset.el (x-must-resolve-font-name):
19081         * lisp/international/mule-cmds.el (prefer-coding-system)
19082         (select-safe-coding-system-interactively)
19083         (select-safe-coding-system, activate-input-method)
19084         (toggle-input-method, describe-current-input-method):
19085         * lisp/international/mule-conf.el (code-offset):
19086         * lisp/mouse.el (minor-mode-menu-from-indicator):
19087         * lisp/replace.el (query-replace-read-from)
19088         (occur-after-change-function, occur-1):
19089         * lisp/scroll-bar.el (scroll-bar-columns):
19090         * lisp/simple.el (execute-extended-command)
19091         (undo-outer-limit-truncate, compose-mail, set-variable)
19092         (choose-completion-string, define-alternatives):
19093         * lisp/startup.el (site-run-file, tty-handle-args)
19094         (command-line, command-line-1):
19095         * lisp/subr.el (noreturn, define-error, add-to-list)
19096         (read-char-choice):
19097         * lisp/term/common-win.el (x-handle-xrm-switch)
19098         (x-handle-name-switch, x-handle-args):
19099         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
19100         Use curved quotes in diagnostics.
19101         * lisp/international/mule.el (find-auto-coding):
19102         Use " to quote in a diagnostic, to be consistent with the rest of
19103         this file.
19105         Convert lisp/term/x-win.el to UTF-8
19106         * lisp/term/x-win.el: Convert to UTF-8.  This doesn't affect
19107         runtime behavior, and the file is multilingual so compile-time
19108         appearance shouldn't be an issue.
19109         * admin/notes/unicode: Document this.
19111 2015-08-16  Wilson Snyder  <wsnyder@wsnyder.org>
19113         Update verilog-mode.el to 2015-05-14-6232468-vpo-GNU.
19114         * lisp/progmodes/verilog-mode.el: Fix some non-automated indent
19115         issues and comments, bug#943.
19116         (verilog-type-font-keywords): Cycle delay operators like ##1 and
19117         ##[0:$] are now highlighted in their entirety similarly to the #
19118         delay-control operator.  Likewise, the followed-by operators #-#
19119         and #=# are no longer partially highlighed.
19120         (verilog-backward-syntactic-ws-quick)
19121         (verilog-skip-backward-comments): Minor performance improvements
19122         to buffer traversal functions for reduced latency.
19123         (verilog-calc-1, verilog-in-deferred-immediate-final-p): When the
19124         keyword 'final' follows 'assert/assume/cover', then it is part of
19125         a deferred immediate assertion item and should not be treated as a
19126         final construct for indentation.  Reported by Yuri Sugihara.
19127         (verilog-do-indent): Virtual task/function/class definition lines
19128         should not be considered as declarations.  Reported by Enzo Chi.
19129         (verilog-do-indent): Do not falsely indent to '=' of
19130         property/sequence operators on subsequent lines of a multi-line
19131         statement.
19132         (verilog-assignment-operator-re): Fix '!==' operator and add
19133         support for '<->', ':/', '#-#', and '#=#' operators.
19134         (verilog-calculate-indent, verilog-label-be): Enable
19135         case-sensitive regular expression parsing when looking for
19136         keywords.
19137         (verilog-calc-1): Detect 'pure virtual method' declarations which
19138         exist in abstract classes.  Reported by Enzo Chi and Kaushal Modi.
19139         (verilog-backward-ws&directives): When moving back to the start of
19140         a line and the preceeding line ended with an escaped-newline, then
19141         jump up one line.  This properly consumes a multi-line
19142         pre-processor directive.  Reported by Kaushal Modi.
19143         (verilog-dpi-import-export-re, verilog-extended-complete-re)
19144         (verilog-calc-1): Teach verilog-mode to properly indent after a
19145         DPI import/export statement that resides outside of a module.
19146         Reported by Kaushal Modi.
19147         (verilog-extended-complete-re): Update regexp to match both
19148         "DPI-C" and "DPI".  Reported by Kaushal Modi.
19150 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
19152         substitute-command-keys a few more doc strings
19153         * lisp/allout.el (outlineify-sticky):
19154         * lisp/files.el (hack-one-local-variable--obsolete):
19155         * lisp/help-fns.el (help-fns--obsolete, describe-variable):
19156         Use substitute-command-keys on some doc strings so that
19157         they don't use hard-coded key bindings or quoting styles.
19159         Fix quoting in Fformat calls
19160         * src/image.c (xbm_read_bitmap_data, xbm_load_image, xbm_load)
19161         (xpm_load, xpm_load_image, pbm_load, png_load_body)
19162         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
19163         (imagemagick_load, svg_load, svg_load_image, gs_load)
19164         (x_kill_gs_process):
19165         * src/lread.c (load_warn_old_style_backquotes):
19166         * src/xfaces.c (load_pixmap):
19167         * src/xselect.c (x_clipboard_manager_error_1):
19168         Quote diagnostics according to user preference when calling
19169         Fformat or its derivatives.
19171 2015-08-15  Glenn Morris  <rgm@gnu.org>
19173         * admin/admin.el (set-version, set-copyright): Remove deleted files.
19175 2015-08-15  Stephen Leake  <stephen_leake@stephe-leake.org>
19177         Allow describe-function helpers to access buffer-local values
19178         This will be used by cedet/mode-local.el `describe-mode-local-override'
19179         on `help-fns-describe-function-functions' in upstream CEDET.
19180         * lisp/help-fns.el (describe-function-orig-buffer): New, let-bound in
19181         `describe-function'.
19182         (describe-function): Bind it, save it on the help xref stack.
19184         Handle pulse-background being nil
19185         * lisp/cedet/pulse.el (pulse-lighten-highlight): Inherit
19186         pulse-background, handle it being nil.
19188 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
19190         Fix "\`" confusion in Lisp strings
19191         * admin/authors.el (authors-canonical-author-name):
19192         Fix typo by using "\\`" not "\`" in string RE.
19193         * lisp/obsolete/complete.el (PC-complete-as-file-name):
19194         * lisp/obsolete/vi.el (vi-backward-blank-delimited-word):
19195         * lisp/progmodes/verilog-mode.el (verilog-mode-map):
19196         Use plain "`", not the equivalent-but-confusing "\`", in strings.
19197         * lisp/textmodes/texinfmt.el: Fix comment likewise.
19199 2015-08-15  Dani Moncayo  <dmoncayo@gmail.com>
19201         * nt/zipdist.bat: Remove -- no longer used.
19203 2015-08-15  Jürgen Hötzel  <juergen@archlinux.org>
19205         * lisp/net/tramp-sh.el (tramp-remote-selinux-p): Use "selinuxenabled"
19206         rather than "getenforce".
19207         (tramp-sh-handle-set-file-selinux-context): Do not
19208         cache SELinux context if not all context components are given.
19210 2015-08-15  Eli Zaretskii  <eliz@gnu.org>
19212         Add doc strings to 2 help-mode.el functions
19213         * lisp/help-mode.el (help-mode-setup, help-mode-finish): Add doc
19214         strings.  (Bug#21263)
19216         Remove files used by the old MS-Windows specific build procedure
19217         * admin/unidata/makefile.w32-in:
19218         * doc/emacs/makefile.w32-in:
19219         * doc/lispintro/makefile.w32-in:
19220         * doc/lispref/makefile.w32-in:
19221         * doc/misc/makefile.w32-in:
19222         * leim/makefile.w32-in:
19223         * lib-src/makefile.w32-in:
19224         * lib/makefile.w32-in:
19225         * lisp/makefile.w32-in:
19226         * nt/INSTALL.OLD:
19227         * nt/config.nt:
19228         * nt/emacs-src.tags:
19229         * nt/envadd.bat:
19230         * nt/gmake.defs:
19231         * nt/makefile.w32-in:
19232         * nt/multi-install-info.bat:
19233         * nt/nmake.defs:
19234         * nt/paths.h:
19235         * src/makefile.w32-in: Files deleted.
19236         * nt/configure.bat: Remove everything except the blurb about the
19237         new build procedure.
19238         * make-dist: Remove references to makefile.w32-in in various
19239         directories, and to files in nt/ that were deleted.
19240         * etc/NEWS: Mention the fact that the files were dropped.
19242 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
19244         * doc/emacs/mule.texi (Charsets): Give fuller title for ISO-IR.
19245         (Bug#21248)
19247 2015-08-14  Paul Eggert  <eggert@cs.ucla.edu>
19249         Default to inotify instead of gfile
19250         * configure.ac (with_file_notification): Fix typo that
19251         prevented suppression of file notification if HAVE_NS.
19252         (NOTIFY_OBJ): Prefer inotify to gfile if both exist and
19253         with_file_notification is 'yes' (Bug#21241).
19254         * etc/NEWS: Mention this.
19256         Fix broken URLs for ISO-IR
19257         * doc/emacs/mule.texi (Charsets):
19258         * lisp/international/mule-conf.el:
19259         Fix broken URL (Bug#21248).
19261         Low-level diagnostics now use ‘text-quoting-style’
19262         * src/doprnt.c (doprnt):
19263         Format ` and ' as per ‘text-quoting-style’.
19264         * src/xdisp.c (vmessage, message): Mention that the format should
19265         not contain ` or '.
19267         Prefer ‘format’ to ‘substitute-command-keys’
19268         * src/character.h (uLSQM, uRSQM): Move here ...
19269         * src/doc.c (uLSQM, uRSQM): ... from here.
19270         * src/doc.c (Fsubstitute_command_keys):
19271         * src/syntax.c (Finternal_describe_syntax_value):
19272         * lisp/cedet/mode-local.el (mode-local-print-binding)
19273         (mode-local-describe-bindings-2):
19274         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
19275         * lisp/cus-theme.el (describe-theme-1):
19276         * lisp/descr-text.el (describe-text-properties-1, describe-char):
19277         * lisp/emacs-lisp/cl-extra.el (cl--describe-class):
19278         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
19279         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
19280         * lisp/emacs-lisp/package.el (describe-package-1):
19281         * lisp/faces.el (describe-face):
19282         * lisp/help-fns.el (help-fns--key-bindings)
19283         (help-fns--compiler-macro, help-fns--parent-mode)
19284         (help-fns--obsolete, help-fns--interactive-only)
19285         (describe-function-1, describe-variable):
19286         * lisp/help.el (describe-mode):
19287         Prefer ‘format’ to ‘substitute-command-keys’ when either will do
19288         to implement quoting style.  This generally makes the code simpler.
19290         Extend ‘format’ to translate curved quotes
19291         This is a followup to the recent doc string change, and deals with
19292         diagnostics and the like.  This patch is more conservative than
19293         the doc string change, in that the behavior of ‘format’ changes
19294         only if its first arg contains curved quotes and the user prefers
19295         straight or grave quotes.  (Come to think of it, perhaps we should
19296         be similarly conservative with doc strings too, but that can wait.)
19297         The upside of this conservatism is that existing usage is almost
19298         surely unaffected.  The downside is that we'll eventually have to
19299         change Emacs's format strings to use curved quotes in places where
19300         the user might want curved quotes, but that's a simple and
19301         mechanical translation that I'm willing to do later.  (Bug#21222)
19302         * doc/lispref/help.texi (Keys in Documentation):
19303         Move description of text-quoting-style from here ...
19304         * doc/lispref/strings.texi (Formatting Strings):
19305         ... to here, and describe new behavior of ‘format’.
19306         * etc/NEWS: Describe new behavior.
19307         * lisp/calc/calc-help.el (calc-describe-thing):
19308         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
19309         * lisp/info.el (Info-find-index-name):
19310         Use ‘concat’ rather than ‘format’ to avoid misinterpretation
19311         of recently-added curved quotes.
19312         * src/doc.c (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
19313         Move from here ...
19314         * src/lisp.h: ... to here.
19315         * src/doc.c (text_quoting_style): New function.
19316         (Fsubstitute_command_keys): Use it.
19317         * src/editfns.c (Fformat): Implement new behavior.
19318         * src/lisp.h (enum text_quoting_style): New enum.
19320 2015-08-14  Stefan Monnier  <monnier@iro.umontreal.ca>
19322         * src/keyboard.c: Use false/true instead of 0/1 for booleans.
19323         * src/keyboard.h (struct kboard): Mark kbd_queue_has_data as boolean.
19325 2015-08-14  Michael Albinus  <michael.albinus@gmx.de>
19327         * lisp/net/tramp-sh.el (tramp-sh-handle-file-acl): Do not redirect
19328         stderr to /dev/null, this is done in `tramp-send-command-and-check'.
19330 2015-08-14  Jürgen Hötzel  <juergen@archlinux.org>
19332         Flush file properties in Tramp
19333         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-modes)
19334         (tramp-sh-handle-set-file-times):
19335         * lisp/net/tramp-adb.el (tramp-adb-handle-set-file-modes)
19336         (tramp-adb-handle-set-file-times): Flush the file properties of
19337         the directory.
19339 2015-08-14  Ronnie Schnell  <ronnie@driver-aces.com>
19341         * doc/emacs/misc.texi (Amusements): Fixed typo.
19343 2015-08-14  Eli Zaretskii  <eliz@gnu.org>
19345         Don't miss warnings about removing string text properties while dumping
19346         * src/alloc.c (purecopy): Warn about removing a string's text
19347         properties even when the same string was already pure-copied
19348         earlier.
19349         * lisp/progmodes/elisp-mode.el (elisp--xref-format)
19350         (elisp--xref-format-extra): Fix the commentary.
19352 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
19354         * lisp/progmodes/sh-script.el (sh-mode): Handle .cshrc (bug#21049).
19356 2015-08-13  Magnus Henoch  <magnus.henoch@gmail.com>
19358         * lisp/progmodes/compile.el: Use lexical-binding.
19359         (compilation-move-to-column): Assume 8-wide TABs (bug#21038).
19361 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
19363         (uniquify-ask-about-buffer-names-p): Remove, unused (bug#21037)
19364         * lisp/uniquify.el: Remove redundant `:group's.
19366 2015-08-13  Jürgen Hötzel  <juergen@archlinux.org>
19368         * lisp/net/tramp-adb.el
19369         (tramp-adb-handle-directory-files-and-attributes): Make a copy of
19370         result to prevent modification of the tramp-cache by side effects.
19371         Use the correct cache key.
19373 2015-08-13  Paul Eggert  <eggert@cs.ucla.edu>
19375         Make add_to_log varargs
19376         * src/alloc.c (run_finalizer_handler):
19377         * src/charset.c (load_charset_map_from_vector):
19378         * src/nsimage.m (ns_load_image):
19379         * src/xfaces.c (load_pixmap, load_color2):
19380         Simplify, now that add_to_log has a variable number of args.
19381         * src/image.c (image_error): Take a variable number of args.
19382         Callers simplified.
19383         * src/lisp.h (add_to_log, vadd_to_log): Adjust to new APIs.
19384         * src/xdisp.c (format_nargs, vadd_to_log): New functions.
19385         (add_to_log): Make varargs, and reimplement in terms of vadd_to_log.
19386         * src/xfaces.c (merge_face_ref): Fix typo that omitted color name.
19388         Optional args for holiday-greek-orthodox-easter
19389         * etc/NEWS: Document this.
19390         * lisp/calendar/holidays.el (holiday-greek-orthodox-easter):
19391         Add optional args N and STRING, mimicking the API and code of
19392         ‘holiday-easter-etc’.  From suggestion by Foivos S. Zakkak (Bug#21256).
19394 2015-08-13  Stephen Leake  <stephen_leake@stephe-leake.org>
19396         xref-find-definitions: Exclude more generic function items.
19397         * lisp/emacs-lisp/cl-generic.el (cl--generic-search-method):
19398         Add doc string.
19399         (cl--generic-find-defgeneric-regexp): New.
19400         (find-function-regexp-alist): Add it.
19401         * lisp/emacs-lisp/find-func.el (find-feature-regexp): Move here from
19402         elisp-mode.el, change to search for ";;; Code:"
19403         (find-alias-regexp): Move here from elisp-mode.el, cleaned up.
19404         (find-function-regexp-alist): Add them.
19405         * lisp/progmodes/elisp-mode.el:
19406         (elisp--xref-format, elisp--xref-format-extra): Change back to
19407         defvar due to bug#21237.
19408         (elisp--xref-find-definitions): Exclude co-located default methods for
19409         generic functions.  Also exclude implicitly declared defgeneric.
19410         (elisp--xref-find-definitions): Handle C source properly.  Exclude minor
19411         mode variables defined by 'define-minor-mode'.
19412         * test/automated/elisp-mode-tests.el: Declare generic functions, add
19413         tests for them.
19414         (xref-elisp-test-run): Fix bug.
19415         (emacs-test-dir): Improve initial value.
19416         (find-defs-defun-defvar-el): Don't expect defvar.
19417         (find-defs-feature-el): Match change to find-feature-regexp.
19419 2015-08-13  Eli Zaretskii  <eliz@gnu.org>
19421         Improve warning about purecopy of strings with properties
19422         * src/alloc.c (purecopy): Show the offending string with the
19423         warning about removing its text properties.
19425 2015-08-12  Alan Mackenzie  <acm@muc.de>
19427         Introduce new macros to cover Emacs's new names in cl-lib.el
19428         This also eliminates `mapcan' warnings in XEmacs.
19429         * lisp/progmodes/cc-defs.el (c--mapcan-status): New variable to
19430         characterise [X]Emacs versions.
19431         (top-level): Require either 'cl or 'cl-lib, depending on
19432         c--mapcan-status.
19433         Change this back to cc-external-require from an eval-when-compile
19434         require.
19435         (c--mapcan, c--set-difference, c--intersection, c--macroexpand-all)
19436         (c--delete-duplicates): New macros which expand into either old or new
19437         names.
19438         (c-make-keywords-re, c-lang-defconst, c-lang-const): Use the new macros
19439         rather than the old names.
19440         * lisp/progmodes/cc-engine.el (c-declare-lang-variables): Use c--mapcan
19441         rather than mapcan.
19442         * lisp/progmodes/cc-fonts.el (c-compose-keywords-list): Use c--mapcan.
19443         * lisp/progmodes/cc-langs.el (top-level): Require either 'cl or 'cl-lib,
19444         depending on c--mapcan-status.
19445         (c-filter-ops, c-all-op-syntax-tokens, c-assignment-op-regexp)
19446         (c-type-start-kwds, c-prefix-spec-kwds, c-specifier-key)
19447         (c-not-decl-init-keywords, c-not-primitive-type-keywords)
19448         (c-paren-any-kwds, c-<>-sexp-kwds, c-block-stmt-kwds, c-expr-kwds)
19449         (c-decl-block-key, c-keywords, c-keywords-obarray)
19450         (c-regular-keywords-regexp, c-primary-expr-regexp)
19451         (c-primary-expr-regexp, c-block-prefix-disallowed-chars)
19452         (c-known-type-key, c-nonlabel-token-key)
19453         (c-make-init-lang-vars-fun): Use the new macros rather than the old
19454         names.
19456 2015-08-12  Oleh Krehel  <ohwoeowho@gmail.com>
19458         loadhist.el (read-feature): Conform to completing-read
19459         * lisp/loadhist.el (read-feature): According to `completing-read'
19460         documentation, if collection is a list, then it must be a list of
19461         strings, not a list of symbols like before.
19463 2015-08-12  David Kastrup  <dak@gnu.org>
19465         Deal gracefully with up-events (Bug#19746)
19466         * src/keyboard.c (apply_modifiers_uncached, parse_solitary_modifier)
19467         (parse_modifiers_uncached): React gracefully to "up-" modifiers:
19468         those may easily be injected by user-level Lisp code.
19469         (read_key_sequence): Discard unbound up-events like unbound
19470         down-events: they are even more likely only relevant for special
19471         purposes.
19472         While Emacs will not produce up-events on its own currently (those are
19473         converted to drag or click events before being converted to
19474         Lisp-readable structures), the input queue can be made to contain them
19475         by synthesizing events to `unread-command-events'.  Emacs should deal
19476         consistently with such events.
19478 2015-08-12  Eli Zaretskii  <eliz@gnu.org>
19480         Fix display of thin lines whose newline has line-height property of t
19481         * src/xdisp.c (append_space_for_newline): Don't try to fix ascent
19482         and descent values of non-empty glyph rows, since they could have
19483         forced low values deliberately.  (Bug#21243)
19485 2015-08-12  Richard Stallman  <rms@gnu.org>
19487         Offer to combine multiple To or CC fields.
19488         * lisp/mail/sendmail.el (mail-combine-fields): New function.
19489         (mail-send): Call 'mail-combine-fields'.
19491         Don't decrypt encrypted files.
19492         * lisp/mail/mail-utils.el (mail-file-babyl-p): Bind epa-inhibit to t.
19494         Handle encrypted mbox files.
19495         * lisp/mail/rmailout.el (rmail-output-as-mbox): Decrypt and reencrypt
19496         the mbox file if necessary.
19498         Re-enable mime processing after decryption.  Add 'decrypt' keyword.
19499         * lisp/mail/rmail.el (rmail-epa-decrypt-1): New subroutine.
19500         (rmail-epa-decrypt): rmail-epa-decrypt-1 broken out.
19501         In a mime message, reenable Mime and show the parts that
19502         were shown before.
19503         Add keyword "decrypt" if anything decrypted.
19505         epa-inhibit inhibits auto-recognition of .gpg files
19506         * lisp/epa-file.el (epa-inhibit): New variable.
19507         (epa-file-handler): Check epa-inhibit.
19509 2015-08-12  Artur Malabarba  <bruce.connor.am@gmail.com>
19511         * lisp/emacs-lisp/lisp-mnt.el (lm-header): Add save-excursion.
19513 2015-08-11  Fabián Ezequiel Gallina  <fgallina@gnu.org>
19515         Respect python.el imenu when semantic-mode is off
19516         Fixes bug#21220
19517         * lisp/cedet/semantic/wisent/python.el: Do not force
19518         wisent-python-default-setup on python-mode-hook.
19520 2015-08-11  Paul Eggert  <eggert@cs.ucla.edu>
19522         Give names to Unicode code points in C code
19523         * src/character.h (NO_BREAK_SPACE, SOFT_HYPHEN)
19524         (ZERO_WIDTH_NON_JOINER, ZERO_WIDTH_JOINER, HYPHEN)
19525         (NON_BREAKING_HYPHEN, LEFT_SINGLE_QUOTATION_MARK)
19526         (RIGHT_SINGLE_QUOTATION_MARK, PARAGRAPH_SEPARATOR)
19527         (LEFT_POINTING_ANGLE_BRACKET, RIGHT_POINTING_ANGLE_BRACKET)
19528         (LEFT_ANGLE_BRACKET, RIGHT_ANGLE_BRACKET)
19529         (OBJECT_REPLACEMENT_CHARACTER):
19530         New named constants for Unicode code points.
19531         * src/bidi.c (bidi_fetch_char, CANONICAL_EQU):
19532         * src/composite.c (char_composable_p):
19533         * src/lread.c (readevalloop, read1):
19534         * src/xdisp.c (get_next_display_element):
19535         Use them.
19536         * src/doc.c (LEFT_SINGLE_QUOTATION_POINT):
19537         Remove; now in character.h.
19539 2015-08-11  Stephen Leake  <stephen_leake@stephe-leake.org>
19541         elisp--xref-find-definitions handle cl-defstuct default constructor
19542         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Add FIXME.
19543         (elisp--xref-format-extra): Rename from elisp--xref-format-cl-defmethod.
19544         (elisp--xref-find-definitions): Handle cl-defstuct default constructor.
19545         * test/automated/elisp-mode-tests.el (xref-elisp-test-run): Split out
19546         from xref-elisp-test for ease of debugging.
19547         (xref-elisp-deftest): Rename from xref-elisp-test.
19548         (find-defs-constructor): New test.
19549         (find-defs-defgeneric-el): Match batch test config.
19550         (compile): Required for find-defs compilation-minor-mode test.
19551         (find-defs-defvar-el): Match code change.
19552         (find-defs-face-el): Match code change.
19553         * lisp/progmodes/xref.el (xref-find-function, xref-find-definitions):
19554         Improve doc string.
19556 2015-08-11  Stefan Monnier  <monnier@iro.umontreal.ca>
19558         * lisp/replace.el (perform-replace): Document `replacements'.
19559         (perform-replace): Move the description of the format of `replacements'
19560         from the body's comment to the doc string.
19562 2015-08-11  Jürgen Hötzel  <juergen@archlinux.org>
19564         * lisp/net/tramp-adb.el (tramp-adb-prompt): Match leading escape
19565         sequence.  Recent adb version send initial escape sequences, even
19566         when terminal type is set to TERM=dumb.
19568 2015-08-10  Stephen Leake  <stephen_leake@stephe-leake.org>
19570         Rewrite elisp--xref-find-definitions to handle many more cases; add tests
19571         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
19572         Function deleted.
19573         (elisp--xref-format-cl-defmethod): New defconst.
19574         (find-feature-regexp, find-alias-regexp): New defcustoms.
19575         (elisp--xref-make-xref): New function.
19576         (elisp--xref-find-definitions): Rewrite using the above, handle many
19577         more cases.  Always output all available definitions.
19578         (xref-location-marker): No need for special cases.
19579         * test/automated/elisp-mode-tests.el: Add more tests of
19580         elisp--xref-find-definitions, improve current tests.
19582 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
19584         Fix recording of events pushed onto unread-command-events
19585         * src/keyboard.c (read_char): Make sure events read from
19586         unread-command-events and unread-post-input-method-events are
19587         always recorded by record_char.  Reported by David Kastrup
19588         <dak@gnu.org>, see
19589         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00193.html.
19591 2015-08-10  Samer Masterson  <samer@samertm.com>
19593         Set file buffer as current for "--file"
19594         * lisp/startup.el (command-line-1): Set file buffer as current before
19595         it is displayed so it can be used with options like "--eval".
19596         (Bug#21095)
19598 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
19600         Avoid setting LC_NUMERIC on MS-Windows to anything but "C"
19601         * src/emacs.c (synchronize_locale) [WINDOWSNT]: Call fixup_locale
19602         after setting LC_ALL to the desired locale, to avoid affecting how
19603         numbers are read and printed.  (Bug#21223)
19605 2015-08-10  Alan Mackenzie  <acm@muc.de>
19607         Fix "Invalid search bound (wrong side of point)" in fontification
19608         * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): After skipping
19609         an initialization expression, check point is not beyond the
19610         fontification limit.
19612 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
19614         Fix DPI calculation when Xft/DPI is default
19615         * src/xsettings.c (parse_settings): Don't use Xft/DPI default
19616         value of -1, which evaluates to 2**32 - 1 (Bug#21152).
19617         Remove unnecessary cast while we're in the neighborhood.
19619 2015-08-09  Dmitry Gutov  <dgutov@yandex.ru>
19621         Add project-vc-search-path and project-vc-ignores
19622         * lisp/progmodes/project.el (project-vc): New group.
19623         (project-vc-search-path, project-vc-ignores): New variables.
19624         (project--value-in-dir): Utility function.
19625         (project-search-path, project-ignores): Use them.
19626         * lisp/progmodes/xref.el (xref--rgrep-command): Only replace `./'
19627         at bos.  Don't add extra `/'.  Don't prepend with `*' if replaced.
19629 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
19631         Fix some minor quoting issues with grave accent
19632         * src/dispnew.c (add_window_display_history) [GLYPH_DEBUG]:
19633         Remove redundant quotes.
19634         * src/doc.c (uLSQM, uRSQM): New macros.
19635         * src/doc.c (Fsubstitute_command_keys):
19636         * src/syntax.c (Finternal_describe_syntax_value): Follow the user
19637         preference for quotes rather than hardcoding the ‘grave’ style.
19638         * src/regex.c (PUSH_FAILURE_POINT, POP_FAILURE_POINT)
19639         (re_match_2_internal) [DEBUG]: In debugging output, quote C
19640         strings with "...", not `...'.
19642         ChangeLog.2 ignores remote-tracking merges
19643         * build-aux/gitlog-to-emacslog: Ignore commit logs matching
19644         "Merge remote-tracking branch '.*'" too.  See Eli Zaretskii in:
19645         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00384.html
19647 2015-08-09  Nicolas Richard  <youngfrog@members.fsf.org>
19649         Use kpsewhich in ffap-latex-mode, if available
19650         * lisp/ffap.el (ffap-latex-guess-rules): New variable.
19651         (ffap-latex-mode): Use kpsewhich if available.
19653         ffap: disallow braces in filenames for tex modes
19654         * lisp/ffap.el (ffap-string-at-point-mode-alist): Don't allow
19655         braces in tex-related modes.
19657         Remove useless backslashes from ffap-string-at-point-mode-alist
19658         * lisp/ffap.el (ffap-string-at-point-mode-alist): Remove useless and
19659         misleading backslashes from default value.
19661         Augment docstring of ffap-string-at-point-mode-alist
19662         * lisp/ffap.el (ffap-string-at-point-mode-alist): Describe how BEG
19663         and END are handled.
19665 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
19667         * lisp/org/org-src.el (org-edit-src-code)
19668         (org-edit-fixed-width-region):
19669         * lisp/simple.el (completion-setup-function):
19670         Remove calls to substitute-command-keys that always just return
19671         their argument.
19673 2015-08-09  Daiki Ueno  <ueno@gnu.org>
19675         * lisp/epa.el (epa-exit-buffer-function): Set to `quit-window'.
19676         (Bug#21210)
19678 2015-08-09  Ivan Kanis  <ivan@kanis.fr>
19680         Fix link to source code in help window
19681         * lisp/help-fns.el (find-lisp-object-file-name): Remove code that
19682         will never work due to Glenn Morris change a6d63d9 on Apr 20 2013
19683         'No longer include timestamp in header of .elc files'.  Add code
19684         that will return .el source file in load-path.
19686 2015-08-09  Artur Malabarba  <bruce.connor.am@gmail.com>
19688         * lisp/isearch.el (isearch-search-fun-default): (Bug#21164)
19689         Respect `isearch-lax-whitespace' when searching through
19690         `isearch-word'.
19692 2015-08-08  Stefan Monnier  <monnier@iro.umontreal.ca>
19694         * test/automated/ert-tests.el (ert-test-deftest): Add FIXME.
19696         * lisp/org/org.el: Fix up some lexical scoping warnings, and use dolist
19697         * lisp/org/org.el (org-set-regexps-and-options-for-tags, org-goto-map)
19698         (org-set-regexps-and-options, org-assign-fast-keys)
19699         (org-contextualize-keys, org-contextualize-validate-key)
19700         (org-notes-order-reversed-p, org-local-logging, org-map-entries)
19701         (org-find-olp, org-find-exact-heading-in-directory)
19702         (org-cycle-agenda-files, org-release-buffers, org-fill-template)
19703         (org-agenda-prepare-buffers, org-occur-in-agenda-files)
19704         (org-replace-escapes): Use dolist.
19705         (org-mode): Optimize away XEmacs-only code.
19706         (org-refile-get-targets): Remove unused var `f'.
19707         (org-fast-todo-selection): Remove unused var `e'.
19708         (org-make-tags-matcher): Use dolist.  Remove unused var `term'.
19709         (org-fast-tag-selection): Use dolist.  Remove unused var `e'.
19710         (org-format-latex): Use dolist.  Remove unused var `e'.
19711         (org-toggle-heading): Access vars lexically rather than dynamically.
19712         (org-backward-sentence, org-forward-sentence, org-meta-return)
19713         (org-kill-line): Mark arg as unused.
19714         (org-submit-bug-report): Silence compiler warning.
19715         (org-occur-in-agenda-files): Don't use add-to-list on local vars.
19716         (org-get-cursor-date): Remove unused var `tm'.
19717         (org-comment-or-uncomment-region): Use standard name `_'.
19718         (reftex-docstruct-symbol, reftex-cite-format): Declare to
19719         silence byte-compiler.
19720         (org-reftex-citation): Add `org--' prefix to dynamically scoped
19721         `rds' var.
19723 2015-08-08  Paul Eggert  <eggert@cs.ucla.edu>
19725         Electric quote if coding is undecided or no conv
19726         * lisp/electric.el (electric--insertable-p): Also say that a
19727         string is insertable if the buffer file coding system is undecided
19728         or uses no conversion, as curved quotes will work in either case.
19730         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Simplify configuration.
19732 2015-08-08  Eli Zaretskii  <eliz@gnu.org>
19734         Fix overlay string display regressions introduced in Emacs 24.5
19735         * src/xdisp.c (pop_it): Reset the flag to ignore overlays at this
19736         buffer position, if we move the iterator to a new position as
19737         result of jumping over text covered by a "replacing" display
19738         property.
19739         * test/redisplay-testsuite.el (test-redisplay-4): Add 2 new tests.
19741         Support recovery from C stack overflow on MS-Windows
19742         * src/w32fns.c (w32_reset_stack_overflow_guard)
19743         (stack_overflow_handler): New functions for handling C stack
19744         overflow exceptions.
19745         (my_exception_handler): Handle EXCEPTION_STACK_OVERFLOW exceptions
19746         specially, and zero out except_addr if we do.
19747         (globals_of_w32fns): Initialize dwMainThreadId in non-interactive
19748         mode.
19749         * src/sysdep.c [HAVE_STACK_OVERFLOW_HANDLING]: Add !WINDOWSNT to
19750         the condition, as HAVE_STACK_OVERFLOW_HANDLING is now defined for
19751         the MinGW build, but the code guarded by that is for Posix hosts.
19752         * src/keyboard.c (command_loop) [WINDOWSNT]:
19753         Call w32_reset_stack_overflow_guard.
19754         * nt/inc/ms-w32.h (sigjmp_buf): New typedef.
19755         (sigsetjmp): New macro.
19756         (w32_reset_stack_overflow_guard): Declare the prototype.
19757         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Set to 1 for MinGW.
19759 2015-08-07  Phillip Lord  <phillip.lord@newcastle.ac.uk>
19761         Improve error signalling for seq-subseq
19762         * lisp/emacs-lisp/seq.el (seq-subseq): The existing behavior is to error
19763         when indexes are too large, but to silently ignore numbers which
19764         are too negative for lists.  String and vector handling errors in
19765         both cases.  This has been regularized.  Error signaling behavior
19766         has been explicitly added to the doc string.
19768         * lisp/cl-extra.el (cl-subseq): Defers to (seq-subseq) and is
19769         therefore also impacted by this change.  Update the doc string
19770         to reflect this.
19772         * test/automated/seq-tests.el (test-seq-subseq): Tests have been
19773         added for these exceptional cases, as well as one non exceptional
19774         base case.
19776 2015-08-07  Jürgen Hötzel  <juergen@archlinux.org>
19778         Improve error checking in tramp-adb.el
19779         * lisp/net/tramp-adb.el (tramp-adb-ls-output-name-less-p):
19780         Improve error checking.  "ls -l" on Android in Enforcing mode can
19781         print "lstat './FILENAME failed: Permission denied".
19783 2015-08-07  Stefan Monnier  <monnier@iro.umontreal.ca>
19785         * lisp/emacs-lisp/cl-generic.el (cl--generic-struct-tag): Don't burp on
19786         non-struct vectors.
19788 2015-08-07  Stephen Leake  <stephen_leake@stephe-leake.org>
19790         Fix typo in lisp/window.el, more `display-buffer-use-some-frame'
19791         * lisp/window.el: Fix typo that broke build.
19792         (display-buffer--action-function-custom-type):
19793         Add `display-buffer-use-some-frame'.
19794         (display-buffer): Add `display-buffer-use-some-frame' to doc string.
19796         Add support for 'inhibit-same-window in 'display-buffer-use-some-frame'
19797         * lisp/window.el (display-buffer-use-some-frame): Add support for
19798         'inhibit-same-window in alist.
19799         * doc/lispref/windows.texi (display-buffer-use-some-frame):
19800         Doc support for 'inhibit-same-window in alist.
19802 2015-08-07  Eli Zaretskii  <eliz@gnu.org>
19804         Avoid infinite loop in display of invisible text in strings
19805         * src/xdisp.c (handle_invisible_prop): If the next change of
19806         invisibility spec does not mean the beginning of a visible text,
19807         update the string position from which to start the search for the
19808         next invisibility change.  This avoids an infinite loop when we
19809         have more than one invisibility spec that are made inactive by
19810         buffer-invisibility-spec.  Simplify code.  (Bug#21200)
19811         * test/redisplay-testsuite.el (test-redisplay-4): Add a test case
19812         for the situation that caused bug #21200.
19814 2015-08-06  Artur Malabarba  <bruce.connor.am@gmail.com>
19816         * lisp/emacs-lisp/package.el: Simplify describe-package-1
19817         (package-help-section-name-face): New face.
19818         (package--print-help-section): New function.
19819         (describe-package-1): Refactor section printing.
19820         (package-make-button): Use face instead of font-lock-face, which
19821         doesn't work on buttons.
19823         * lisp/emacs-lisp/package.el: Define custom faces
19824         (package-name-face, package-description-face)
19825         (package-status-built-in-face, package-status-external-face)
19826         (package-status-available-face, package-status-new-face)
19827         (package-status-held-face, package-status-disabled-face)
19828         (package-status-installed-face, package-status-dependency-face)
19829         (package-status-unsigned-face, package-status-incompat-face)
19830         (package-status-avail-obso-face): New faces.
19831         (package-menu--print-info-simple): Use them.
19833 2015-08-05  Paul Eggert  <eggert@cs.ucla.edu>
19835         Fix some confusion with ‘format’
19836         * lisp/allout-widgets.el (allout-widgets-before-change-handler)
19837         (allout-graphics-modification-handler):
19838         Protect arbitrary string in a format context with "%s" format.
19839         * lisp/avoid.el:
19840         * lisp/cedet/semantic/bovine/scm.el: Fix comment.
19841         * lisp/calendar/icalendar.el (icalendar--convert-sexp-to-ical):
19842         * lisp/erc/erc-button.el (erc-button-beats-to-time):
19843         * lisp/gnus/message.el (message-send-form-letter):
19844         * lisp/org/ob-core.el (org-babel-check-evaluate)
19845         (org-babel-confirm-evaluate):
19846         * lisp/org/ob-fortran.el (org-babel-fortran-var-to-fortran):
19847         * lisp/org/ox-latex.el (org-latex-compile):
19848         * lisp/org/ox-man.el (org-man-compile):
19849         * lisp/org/ox-odt.el (org-odt-template):
19850         * lisp/org/ox-texinfo.el (org-texinfo-compile):
19851         * lisp/progmodes/prolog.el (prolog-help-info)
19852         (prolog-view-predspec):
19853         * lisp/progmodes/ruby-mode.el (ruby-parse-partial):
19854         * lisp/progmodes/verilog-mode.el (verilog-showscopes):
19855         * lisp/textmodes/rst.el (rst-replace-lines):
19856         Change (message (format ...)) to (message ...), and likewise
19857         for ‘error’.  This lessens the probability of confusion when the
19858         output of ‘format’ contains ‘%’.
19860 2015-08-05  Artur Malabarba  <bruce.connor.am@gmail.com>
19862         * lisp/replace.el (replace-character-fold): Default to nil.
19864         * lisp/character-fold.el: Fix lax whitespace.
19865         (character-fold-table): Don't make space match other whitespace chars.
19866         (character-fold-to-regexp): Simplify lax behavior.
19868 2015-08-05  Dmitry Gutov  <dgutov@yandex.ru>
19870         Preserve window point in xref-find-definitions-other-window
19871         Fix the problem reported by Ingo Logmar in
19872         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00152.html
19873         * lisp/progmodes/xref.el (xref--goto-char): Extract from
19874         xref--goto-location.
19875         (xref--pop-to-location): Use it.  Replace xref--goto-location with
19876         a direct xref-location-marker call.
19877         (xref--show-location): Likewise.
19878         (xref--display-position): Use xref--goto-char.
19880         * lisp/progmodes/project.el: Add a paragraph to the front matter.
19882 2015-08-04  David Kastrup  <dak@gnu.org>
19884         * lisp/vc/emerge.el (emerge-show-file-name):
19885         * lisp/progmodes/vhdl-mode.el (vhdl-electric-dash)
19886         (vhdl-comment-insert, vhdl-hooked-abbrev):
19887         * lisp/progmodes/octave.el (inferior-octave-dynamic-list-input-ring):
19888         * lisp/progmodes/fortran.el (fortran-window-create-momentarily):
19889         * lisp/progmodes/ebrowse.el (ebrowse-hack-electric-buffer-menu):
19890         * lisp/progmodes/cperl-mode.el (cperl-putback-char):
19891         * lisp/obsolete/vip.el (vip-escape-to-emacs)
19892         (vip-prefix-arg-value, vip-prefix-arg-com):
19893         * lisp/obsolete/terminal.el (te-escape-extended-command-unread):
19894         * lisp/leim/quail/tibetan.el (quail-tibetan-update-translation)
19895         (quail-tibkey-update-translation):
19896         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
19897         * lisp/leim/quail/lao.el (quail-lao-update-translation):
19898         * lisp/leim/quail/japanese.el (quail-japanese-update-translation)
19899         (quail-japanese-self-insert-and-switch-to-alpha):
19900         * lisp/leim/quail/hangul.el (hangul2-input-method)
19901         (hangul3-input-method, hangul390-input-method):
19902         * lisp/language/hanja-util.el (hangul-to-hanja-char):
19903         * lisp/international/robin.el (robin-input-method):
19904         * lisp/international/quail.el (quail-start-translation)
19905         (quail-start-conversion):
19906         * lisp/gnus/gnus-art.el (gnus-article-describe-key)
19907         (gnus-article-describe-key-briefly):
19908         * lisp/eshell/em-hist.el (eshell-list-history):
19909         * lisp/term.el (term-dynamic-list-input-ring)
19910         (term-dynamic-list-completions):
19911         * lisp/subr.el (momentary-string-display):
19912         * lisp/simple.el (read-quoted-char):
19913         * lisp/pcomplete.el (pcomplete-show-completions):
19914         * lisp/kmacro.el (kmacro-repeat-on-last-key):
19915         * lisp/info.el (Info-summary):
19916         * lisp/ehelp.el (electric-help-command-loop):
19917         * lisp/ebuff-menu.el (electric-buffer-list)
19918         (Electric-buffer-menu-exit):
19919         * lisp/double.el (double-translate-key):
19920         * lisp/comint.el (comint-dynamic-list-input-ring)
19921         (comint-dynamic-list-completions): Do not overwrite preexisting
19922         contents of `unread-command-events' when putting new events into it.
19924 2015-08-04  Daniel Colascione  <dancol@dancol.org>
19926         Improve ansi-color filtering of unrecognized escape sequences
19927         * lisp/ansi-color.el (ansi-color-drop-regexp): Recognize mode-setting
19928         escape sequences.
19929         (ansi-color-filter-apply, ansi-color-apply): Filter out
19930         unrecognized escape sequences.
19932 2015-08-04  Artur Malabarba  <bruce.connor.am@gmail.com>
19934         * lisp/emacs-lisp/package.el (package-menu-mode-map): Convert menu
19935         definitions to `easy-menu-define', improve a couple to account for
19936         async, and add a couple of new commands.
19938 2015-08-03  Jürgen Hötzel  <juergen@archlinux.org>
19940         * lisp/net/tramp-cache.el (tramp-set-file-property): Fix code typo.
19942 2015-08-03  Ingo Lohmar  <i.lohmar@gmail.com>
19944         Add new 'calendar-weekend-days' option
19945         Make the days receiving the 'calendar-weekend-header' face freely
19946         customizable, as they differ by region/culture.
19947         * doc/emacs/calendar.texi (Move to Beginning or End): Document the
19948         new variable.
19949         * lisp/calendar/calendar.el (calendar-generate-month): New variable
19950         calendar-weekend-days to customize day header fontification.
19952 2015-08-03  Paul Eggert  <eggert@cs.ucla.edu>
19954         Redo text-quoting-style variable
19955         Rename help-quote-translation to text-quoting-style,
19956         and use symbols rather than characters as values.
19957         This follows suggestions along these lines by Alan Mackenzie in:
19958         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00343.html
19959         and by Drew Adams in:
19960         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00048.html
19961         * doc/lispref/help.texi (Keys in Documentation)
19962         * etc/NEWS:
19963         * lisp/cus-start.el (standard):
19964         * src/doc.c (Fsubstitute_command_keys, syms_of_doc):
19965         Document and/or implement the new behavior instead of the old.
19966         (syms_of_doc): New symbols 'grave' and 'straight'.
19968 2015-08-03  Nikolaus Rath  <Nikolaus@rath.org>
19970         nnimap.el: Use IMAP MOVE extension if available
19971         * lisp/gnus/nnimap.el (nnimap-request-move-article)
19972         (nnimap-process-expiry-targets, nnimap-split-incoming-mail):
19973         Use MOVE extension if available.
19975         nnimap.el: Explicitly ask for server capabilities
19976         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Don't assume full
19977         capabilities will be returned in the login-result.
19979 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
19981         Treat help strings like other doc strings
19982         * doc/lispref/text.texi (Special Properties), etc/NEWS: Document this.
19983         * lisp/epa.el (epa--select-keys): Remove no-longer-needed calls to
19984         substitute-command-keys.
19985         * src/keyboard.c (show_help_echo, parse_menu_item): Call
19986         substitute-command-keys on the help string before displaying it.
19988         Also mention "curly quotes"
19989         See Drew Adams's email in:
19990         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00040.html
19991         * doc/lispref/help.texi (Keys in Documentation):
19992         Add index entry "curly quotes".
19993         * etc/NEWS: Use the phrase "curly quotes" too.
19995         ede-proj-target-makefile docstring tweaks
19996         * lisp/cedet/ede/proj.el (ede-proj-target-makefile):
19997         Consistently use "all:" to describe the all: target,
19998         replacing three different and confusingly-quoted usages.
20000 2015-08-02  Evgeny Fraimovitch  <johnlen7@gmail.com>  (tiny change)
20002         Don't abort emacsclientw when -a was specified
20003         * lib-src/emacsclient.c (set_tcp_socket) [WINDOWSNT]: Don't error
20004         out if we are in emacsclientw and -a was specified.
20006 2015-08-02  Eli Zaretskii  <eliz@gnu.org>
20008         Fix handling of 1st keystroke on MS-Windows
20009         * src/w32fns.c (globals_of_w32fns): Initialize after_deadkey to -1.
20010         This is needed to correctly handle the session's first keystroke,
20011         if it has any modifiers.  (Bug#19994)
20013 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
20015         Substitute some customization etc. doc strings
20016         These changes apply substitute-command-keys to some
20017         doc strings that were going through untranslated
20018         when creating customization or other widgets.
20019         * lisp/cus-edit.el (custom-group-value-create):
20020         * lisp/wid-edit.el (widget-default-create):
20021         (widget-push-button-value-create):
20022         Treat the widget tag as a doc string.
20023         * lisp/emacs-lisp/cl-extra.el (cl--describe-class-slot):
20024         Treat the :documentation value as a doc string.
20025         * lisp/wid-edit.el (widget-choose):
20026         Treat the choice names as doc strings.
20027         (widget-default-create): Treat the :doc value as a doc string.
20028         (widget-toggle-value-create): Treat the :on and :off values
20029         as doc strings.
20030         (widget-documentation-string-value-create):
20031         Substitute the doc string.
20033 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
20035         Add a second argument to project-ignores
20036         * lisp/progmodes/project.el (project-ignores): Add a second
20037         argument DIR.
20038         * lisp/progmodes/project.el (project-ignores): Only include the VC
20039         ignores if DIR is the VC root.
20040         * lisp/progmodes/xref.el (xref-find-regexp): Update accordingly.
20042 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
20044         Prevent incorrect display when 'line-spacing' variable is set
20045         * src/xdisp.c (try_window_id): Give up this optimization if the
20046         buffer has its 'line-spacing' variable set non-nil.
20048 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
20050         Don't pass NOVISIT to find-file
20051         * lisp/progmodes/etags.el (next-file):
20052         Don't pass NOVISIT to find-file (bug#21175).
20054         Ignore buffer restriction for tags-loop-eval
20055         * lisp/progmodes/etags.el (tags-loop-continue): Ignore buffer
20056         restriction (bug#21167).
20058 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
20060         Fix a thinko in 'ffap-gopher-at-point'
20061         * lisp/ffap.el (ffap-gopher-at-point): Fix last change.  (Bug#21168)
20063         Honor 'line-spacing' for empty lines
20064         * src/xdisp.c (append_space_for_newline): Honor 'line-height'
20065         property and 'line-spacing' frame parameter or variable or
20066         property for empty lines, by doing the same processing as in
20067         x_produce_glyph for newline characters.  (Bug#21165)
20069 2015-08-01  Paul Eggert  <eggert@cs.ucla.edu>
20071         Simplify by assuming C99 integer division
20072         * src/floatfns.c (ceiling2, floor2, truncate2):
20073         Assume C99 (i.e., Fortran) semantics for integer division.
20074         This simplifies the code.
20076 2015-07-31  Paul Eggert  <eggert@cs.ucla.edu>
20078         Don't overflow if computing approximate percentage
20079         * lisp/align.el (align-region):
20080         * lisp/cedet/semantic.el (semantic-repeat-parse-whole-stream):
20081         * lisp/cedet/semantic/wisent.el (wisent-parse-region):
20082         * lisp/cus-edit.el (custom-buffer-create-internal):
20083         * lisp/emacs-lisp/checkdoc.el (checkdoc-interactive-ispell-loop)
20084         (checkdoc-message-interactive-ispell-loop, checkdoc-next-error)
20085         (checkdoc-next-message-error):
20086         * lisp/emacs-lisp/eieio-opt.el (eieio-display-method-list):
20087         * lisp/epa.el (epa-progress-callback-function):
20088         * lisp/erc/erc-dcc.el (erc-dcc-do-LIST-command):
20089         * lisp/ffap.el (ffap-menu-rescan):
20090         * lisp/gnus/nnbabyl.el (nnbabyl-retrieve-headers):
20091         * lisp/gnus/nndiary.el (nndiary-retrieve-headers):
20092         * lisp/gnus/nneething.el (nneething-retrieve-headers):
20093         * lisp/gnus/nnmbox.el (nnmbox-retrieve-headers):
20094         * lisp/gnus/nnmh.el (nnmh-retrieve-headers):
20095         * lisp/gnus/nnml.el (nnml-retrieve-headers):
20096         * lisp/gnus/nnspool.el (nnspool-retrieve-headers):
20097         * lisp/gnus/nntp.el (nntp-retrieve-headers)
20098         (nntp-retrieve-articles):
20099         * lisp/imenu.el (imenu--relative-position):
20100         * lisp/international/ja-dic-cnv.el (skkdic-collect-okuri-nasi)
20101         (skkdic-convert-okuri-nasi):
20102         * lisp/net/ange-ftp.el (ange-ftp-process-handle-hash):
20103         * lisp/nxml/rng-valid.el (rng-compute-mode-line-string):
20104         * lisp/org/org-list.el (org-update-checkbox-count):
20105         * lisp/org/org.el (org-table-map-tables)
20106         (org-update-parent-todo-statistics):
20107         * lisp/play/decipher.el (decipher-insert-frequency-counts)
20108         (decipher-analyze-buffer):
20109         * lisp/profiler.el (profiler-format-percent):
20110         * lisp/progmodes/cc-cmds.el (c-progress-update):
20111         * lisp/progmodes/cpp.el (cpp-highlight-buffer):
20112         * lisp/progmodes/idlwave.el (idlwave-convert-xml-system-routine-info)
20113         (idlwave-list-load-path-shadows):
20114         * lisp/progmodes/opascal.el (opascal-step-progress):
20115         * lisp/progmodes/vhdl-mode.el (vhdl-update-progress-info)
20116         (vhdl-scan-directory-contents):
20117         * lisp/textmodes/bibtex.el (bibtex-progress-message):
20118         * lisp/textmodes/flyspell.el (flyspell-small-region)
20119         (flyspell-external-point-words):
20120         * lisp/textmodes/table.el (table-recognize):
20121         Prefer (floor (* 100.0 NUMERATOR) DENOMINATOR) when calculating
20122         progress-report percentages and the like.  This avoids problems
20123         if (* 100 NUMERATOR) would overflow.
20124         * lisp/gnus/gnus-registry.el (gnus-registry-import-eld):
20125         * lisp/gnus/registry.el (registry-reindex):
20126         Use (* 100.0 ...) rather than (* 100 ...) to avoid int overflow issues.
20127         * lisp/descr-text.el (describe-char):
20128         * lisp/org/org-colview.el (org-nofm-to-completion):
20129         * lisp/ps-print.el (ps-plot):
20130         * lisp/simple.el (what-cursor-position):
20131         Prefer (round (* 100.0 NUMERATOR) DENOMINATOR) to a
20132         more-complicated and less-accurate approximation.
20134         Fix some int overflows in profiler.c
20135         * src/profiler.c (make_log): Make args EMACS_INT, not int,
20136         to avoid unwanted behavior on 'int' overflow.
20137         (make_log, evict_lower_half, record_backtrace):
20138         Use ptrdiff_t, not int, for object indexes.
20140         Port to pedantic memcpy
20141         * src/keyboard.c (menu_bar_items, tool_bar_items):
20142         * src/xrdb.c (magic_db):
20143         Port to pedantic memcpy implementations that reject memcpy (0, 0, 0).
20145         Merge from gnulib
20146         This incorporates:
20147         2015-07-29 time_rz: port to pedantic memcpy
20148         * lib/time_rz.c: Copy from gnulib.
20150 2015-07-31  Artur Malabarba  <bruce.connor.am@gmail.com>
20152         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
20153         When updating the very last entry, tabulated-list-print would
20154         erase it and then try to look at the next one (which obviously
20155         isn't there).
20157 2015-07-31  Eli Zaretskii  <eliz@gnu.org>
20159         Allow to use the old key processing code on MS-Windows
20160         * src/w32fns.c (syms_of_w32fns) <w32-use-fallback-wm-chars-method>:
20161         New variable.
20162         (w32_wnd_proc): Use it to invoke the old code that processed
20163         character keys, as fallback, when this variable is non-nil.
20164         Fix typos in comments.  (Bug#19994)
20166 2015-07-31  Ilya Zakharevich  <ilya@math.berkeley.edu>
20168         Improve handling of Unicode keyboard input on MS-Windows
20169         * src/w32fns.c (get_wm_chars, deliver_wm_chars): New functions.
20170         (FPRINTF_WM_CHARS) [DEBUG_WM_CHARS]: New macro for debugging.
20171         (w32_wnd_proc): Call deliver_wm_chars to process non-special keys
20172         upon receiving WM_KEYDOWN or WM_SYSKEYDOWN messages.  If that is
20173         successful, don't call TranslateMessage.  (Bug#19994)
20175 2015-07-30  Dmitry Gutov  <dgutov@yandex.ru>
20177         Fix default-directory in changeset diffs after vc-print-log
20178         * lisp/vc/log-view.el (log-view-diff-common): Move the
20179         revision-granularity check back into log-view-diff-changeset.
20180         (log-view-diff-changeset): Bind default-directory to the current
20181         VC root.
20183         Rename project-directories to project-roots
20184         * lisp/progmodes/project.el (project-search-path-function)
20185         (project-search-path): Update the docstring.
20186         (project-directories): Rename to `project-roots', update all
20187         callers and implementations accordingly.
20188         (project-root): Remove.
20189         * lisp/progmodes/xref.el (xref-find-regexp): Use * instead of *.*
20190         as the default file mask.
20192 2015-07-30  Eli Zaretskii  <eliz@gnu.org>
20194         Support long URLs in w32-shell-execute
20195         * src/w32fns.c (Fw32_shell_execute): Don't use filename_to_utf16
20196         and filename_to_ansi to convert the DOCUMENT argument, as it could
20197         be a URL that is not limited to MAX_PATH characters.  Instead, use
20198         MultiByteToWideChar directly, and allocate heap storage as
20199         required to accommodate the converted string.  Likewise with
20200         non-Unicode operation.  Ensure OPERATION is null-terminated, even
20201         if it is longer than 32K bytes.  (Bug#21158)
20203 2015-07-30  Stephen Leake  <stephen_leake@stephe-leake.org>
20205         * lisp/vc/vc-mtn.el (vc-mtn-find-revision): Handle null rev.
20207 2015-07-29  Stephen Leake  <stephen_leake@stephe-leake.org>
20209         Add docs for display-buffer action display-buffer-use-some-frame
20210         * lisp/window.el (display-buffer-use-some-frame): Improve doc string.
20211         * doc/lispref/windows.texi (Display Action Functions):
20212         Add display-buffer-use-some-frame.
20213         * etc/NEWS: Mention display-buffer-use-some-frame.
20215         Add display-buffer action display-buffer-use-some-frame
20216         * lisp/window.el (display-buffer-use-some-frame): New.
20218         Handle vc-mtn error more gently
20219         * lisp/vc/vc-mtn.el (vc-mtn-mode-line-string): Return "" when
20220         branch is nil.
20222 2015-07-29  Michael Albinus  <michael.albinus@gmx.de>
20224         Fix Tramp problems with multihops, and nc
20225         * lisp/net/tramp-cache.el (tramp-get-file-property)
20226         (tramp-set-file-property, tramp-flush-file-property)
20227         (tramp-get-connection-property, tramp-set-connection-property)
20228         (tramp-flush-connection-property): Remove hop from vector.
20229         * lisp/net/tramp-gw.el (tramp-gw-process-filter): Ignore errors.
20230         * lisp/net/tramp-sh.el (tramp-methods) <nc>: Separate STDERR.
20231         (tramp-do-copy-or-rename-file-out-of-band): Increase timeout of
20232         netstat to 60".
20233         (tramp-sh-handle-start-file-process): Do not show hops in prompt.
20234         * lisp/net/tramp.el (tramp-handle-file-name-as-directory)
20235         (tramp-handle-file-name-directory, tramp-handle-file-remote-p):
20236         Keep hop in result.
20237         * test/automated/tramp-tests.el (tramp-test02-file-name-dissect):
20238         Add hop tests.
20240 2015-07-29  Eli Zaretskii  <eliz@gnu.org>
20242         Resurrect highlighting of repeated words by Flyspell Mode
20243         * lisp/textmodes/flyspell.el (flyspell-word): Leave some non-word
20244         characters between point and the doublon candidate, so that
20245         flyspell-word-search-backward finds it.  (Bug#21157)
20247         Fix redisplay of large images on expose events
20248         * src/xdisp.c (expose_window, expose_area): Avoid comparisons
20249         between signed negative values and unsigned values.  This
20250         prevented redisplay on expose events when the window showed a very
20251         large image.
20253 2015-07-29  Paul Eggert  <eggert@cs.ucla.edu>
20255         Remove unnecessary stack overflow dependency
20256         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING):
20257         Don't worry about $ac_cv_header_sys_resource_h and
20258         $ac_cv_func_getrlimit, as they're no longer needed for this.
20259         Problem reported by Eli Zaretskii in:
20260         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00443.html
20262 2015-07-28  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
20264         Pacify compilation -Wincompatible-pointer-types warnings
20265         * src/w32proc.c (Fw32_get_codepage_charset): Avoid compilation
20266         warning.
20267         (CompareStringW_Proc): New typedef.
20268         (w32_compare_strings): Use it, to pacify compiler warnings under
20269         "-Wincompatible-pointer-types".
20270         * src/w32fns.c (GetDiskFreeSpaceExW_Proc)
20271         (GetDiskFreeSpaceExA_Proc): New typedefs.
20272         (Ffile_system_info): Use them, to pacify compiler warnings under
20273         "-Wincompatible-pointer-types".
20275 2015-07-28  Paul Eggert  <eggert@cs.ucla.edu>
20277         Fix subscript error in calculate_direct_scrolling
20278         Use slightly-longer cost vectors.  Without this change,
20279         calculate_direct_scrolling can have a subscript violation when
20280         FRAME_LINES (frame) <= delta.
20281         * src/scroll.c (calculate_scrolling, calculate_direct_scrolling)
20282         (line_ins_del, do_line_insertion_deletion_costs):
20283         Allocate and use slightly-larger cost vectors, ones based on
20284         FRAME_TOTAL_LINES instead of FRAME_LINES.
20286         Fix uninitalized value in encode_coding_object
20287         * src/coding.c (encode_coding_object): Also initialize
20288         coding->src_pos and coding->src_pos_byte when NILP (src_object).
20289         This avoids later use of uninitialized storage.
20291 2015-07-27  Xue Fuqiao  <xfq.free@gmail.com>
20293         * doc/lispref/variables.texi (Variable Aliases): Typo fix.
20294         (Bug#21141)
20296 2015-07-27  Paul Eggert  <eggert@cs.ucla.edu>
20298         Merge from gnulib
20299         This incorporates:
20300         2015-07-27 time_rz: port better to MinGW
20301         2015-07-27 time: port __need_time_t to MinGW
20302         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
20303         * lib/strftime.c, lib/time.in.h, lib/time_rz.c: Copy from gnulib.
20304         * lib/time-internal.h: New file, from gnulib.
20306 2015-07-27  Eli Zaretskii  <eliz@gnu.org>
20308         Handle NULL pointers in w32heap.c allocation routines
20309         * src/w32heap.c (FREEABLE_P): Consider a NULL pointer "not
20310         freeable".
20311         (realloc_after_dump, realloc_before_dump, free_before_dump):
20312         Handle NULL pointers gracefully, as Emacs now seems to expect that.
20314         Fix Cairo build without PNG
20315         * src/image.c: Define PNG function when USE_CAIRO is defined, even
20316         if HAVE_PNG is not.  (Bug#21133)
20318         MS-Windows follow-up for recent TZ-related changes
20319         * nt/mingw-cfg.site (ac_cv_header_pthread_h)
20320         (gl_cv_sys_struct_timespec_in_pthread_h): Force to "no", to avoid
20321         picking up 'struct timespec' from pthread.h, if it is installed on
20322         the user's system.  We want either the definitions from MinGW
20323         system headers, if available, or the Gnulib replacements if not.
20324         * nt/inc/ms-w32.h <struct timespec>: Don't define, as we now use
20325         lib/time.h.
20326         * lib/time.in.h: Don't let __need_* symbols affect what happens on
20327         MinGW.  These symbols are defined by MinGW system headers, but we
20328         don't want that to affect whether Gnulib portions of the header
20329         are or aren't used.
20331 2015-07-26  Paul Eggert  <eggert@cs.ucla.edu>
20333         * src/ftfont.c (ftfont_close): Add comment re Bug#20890.
20335         New optional ZONE arg for format-time-string etc.
20336         This simplifies time conversions in other time zones.
20337         It also prevents display-time-world tampering with TZ (Bug#21020).
20338         * admin/admin.el (add-release-logs):
20339         Use improved add-log-time-format API.
20340         * admin/merge-gnulib (GNULIB_MODULES): Add time_rz, timegm.
20341         (GNULIB_TOOL_FLAGS): Avoid flexmember, setenv, unsetenv.
20342         * configure.ac (tzalloc): Remove test for this, since
20343         Emacs no longer uses HAVE_TZALLOC directly.
20344         * doc/lispref/os.texi (Time of Day, Time Conversion)
20345         (Time Parsing):
20346         * etc/NEWS: Document the new behavior.
20347         Merge from gnulib, incorporating:
20348         2015-07-25 strftime: fix newly-introduced bug on Solaris
20349         2015-07-23 fprintftime, strftime: use timezone_t args
20350         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
20351         * lib/strftime.c, lib/strftime.h, lib/time.in.h, m4/sys_time_h.m4:
20352         * m4/time_h.m4:
20353         Update from gnulib.
20354         * lib/time_rz.c, lib/timegm.c, m4/time_rz.m4, m4/timegm.m4:
20355         New files from gnulib.
20356         * lisp/time-stamp.el (time-stamp-string):
20357         * lisp/time.el (display-time-world-list)
20358         (display-time-world-display):
20359         Use new API, with time zone arg.
20360         * lisp/time.el (display-time-world-display):
20361         Fix race when current-time advances while we're running.
20362         * lisp/vc/add-log.el (add-log-iso8601-time-zone)
20363         (add-log-iso8601-time-string): Accept optional time zone arg.
20364         * lisp/vc/add-log.el (add-change-log-entry):
20365         * lisp/vc/log-edit.el (log-edit-changelog-ours-p): Use new arg.
20366         * nt/gnulib.mk: Propagate lib/gnulib.mk changes here.
20367         Add rules for the time module, since they're now needed
20368         for tzalloc etc.
20369         * src/conf_post.h (getenv_TZ, setenv_TZ): New macros.
20370         (emacs_getenv_TZ, emacs_setenv_TZ): New decls.
20371         * src/editfns.c: Include errno.h.
20372         (set_time_zone_rule): Omit unnecessary forward decl.
20373         (initial_tz): Remove, replacing with ...
20374         (local_tz, wall_clock_tz, utc_tz): New static vars and constants.
20375         (tzeqlen): New constant; prefer it to (sizeof "TZ=" - 1).
20376         (emacs_localtime_rz, emacs_mktime_z, xtzalloc, xtzfree)
20377         (tzlookup): New static functions.
20378         (init_editfns): New arg DUMPING.  All uses changed.
20379         (init_editfns): Omit most initialization if dumping, not if
20380         !initialized.  Initialize wall_clock_tz and local_tz.
20381         (emacs_nmemftime, format_time_string): Time zone argument can now
20382         be any time zone, not just a boolean for UTC or local time.  All
20383         callers changed.
20384         (Fformat_time_string, Fencode_time, Fcurrent_time_string)
20385         (Fcurrent_time_zone): New optional arg ZONE.
20386         (Fdecode_time, Fset_time_zone_rule): ZONE arg can now also take
20387         the same form as with the other new additions.
20388         (decode_time_zone): Remove; no longer needed.
20389         (tzvalbuf): Now file-scope.
20390         (emacs_getenv_TZ, emacs_setenv_TZ): New functions.
20391         (syms_of_editfns): Define Qwall.
20392         * src/editfns.c (mktime_z) [!HAVE_TZALLOC]:
20393         * src/systime.h (mktime_z, timezone_t, tzalloc, tzfree)
20394         [!HAVE_TZALLOC]:
20395         Remove; now supplied by gnulib.
20396         * src/emacs.c (main):
20397         * src/lisp.h (init_editfns): Adjust to init_editfns API change.
20399 2015-07-26  Shigeru Fukaya  <shigeru.fukaya@gmail.com>
20401         Fix infinite loop in delete-consecutive-dups
20402         * lisp/subr.el (delete-consecutive-dups): Work even if the last
20403         element is nil (Bug#20588).  Avoid rescan of a circular list in
20404         deletion of last element.
20406 2015-07-26  Martin Rudalics  <rudalics@gmx.at>
20408         Have `x-frame-geometry' return nil for terminal and initial
20409         frames (Bug#21132)
20410         * src/nsfns.m (Fx_frame_geometry):
20411         * src/xfns.c (Fx_frame_geometry): Return nil for initial and
20412         terminal frames.
20413         * src/w32fns.c (Fw32_frame_menu_bar_size, Fw32_frame_rect)
20414         (Fx_frame_geometry): Return nil for terminal frames
20416 2015-07-26  HOSOYA Kei  <hosoyakei.free@gmail.com>  (tiny change)
20418         * etc/tutorials/TUTORIAL.ja: Improve translation.
20420 2015-07-25  Eli Zaretskii  <eliz@gnu.org>
20422         Avoid crashes when w32 GUI functions are called in -batch
20423         * src/w32fns.c (Fx_frame_geometry, Fw32_frame_rect)
20424         (Fw32_frame_menu_bar_size, Fw32_send_sys_command): Don't call
20425         FRAME_W32_WINDOW for initial frame.  (Bug#21132)
20427         Fix flyspell-check-previous-highlighted-word
20428         * lisp/textmodes/flyspell.el
20429         (flyspell-check-previous-highlighted-word): Really accept a
20430         numeric argument, as the doc string describes.  Fix an off-by-one
20431         error in looking up overlays, so invocation with point immediately
20432         after a word would check that word.  Clarify the doc string as
20433         Suggested by N. Jackson <nljlistbox2@gmail.com>.  (Bug#21129)
20435 2015-07-24  Michael Albinus  <michael.albinus@gmx.de>
20437         Minor cleanup in tramp-tests.el
20438         * test/automated/tramp-tests.el (tramp-test31-*, tramp-test32-*):
20439         Implement using the documented interface
20440         `tramp-connection-properties', rather than with internal functions.
20442 2015-07-24  Harald Hanche-Olsen  <hanche@math.ntnu.no>  (tiny change)
20444         Pass lambdas to `skeleton-read'
20445         * lisp/skeleton.el (skeleton-read): Allow PROMPT to be a function.
20446         * lisp/textmodes/sgml-mode.el (sgml-attributes, sgml-value): Pass
20447         lambdas to `skeleton-read' (bug#20386).
20449 2015-07-24  Eli Zaretskii  <eliz@gnu.org>
20451         * INSTALL (DETAILED BUILDING AND INSTALLATION):
20452         Mention --without-imagemagick.
20454         Don't require GUI frames and mouse for Flyspell menus
20455         * lisp/textmodes/flyspell.el (flyspell-correct-word-before-point)
20456         (flyspell-emacs-popup): Require neither a GUI frame nor mouse
20457         support, since pop-up menus work with text terminals and can be
20458         controlled via the keyboard.
20460         Improve documentation of Flyspell commands
20461         * doc/emacs/fixit.texi (Spelling): Mention Flyspell commands that
20462         can be invoked via the keyboard.  Mention those commands by name
20463         and add them to the fn index.  (Bug#21125)
20465 2015-07-23  Michael Albinus  <michael.albinus@gmx.de>
20467         Fix some Tramp problems with HP-UX
20468         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
20469         Add "tab0" to stty call.
20470         * test/automated/tramp-tests.el (tramp-persistency-file-name):
20471         Set to nil.
20472         (tramp--test-hpux-p): New defun.
20473         (tramp--test-utf8): Use it.
20475 2015-07-22  Glenn Morris  <rgm@gnu.org>
20477         * build-aux/update-subdirs: Put "no-update-autoloads: t" in output.
20479 2015-07-22  Eli Zaretskii  <eliz@gnu.org>
20481         Fix point positioning in ffap-next-guess
20482         * lisp/ffap.el (ffap-url-at-point): Set ffap-string-at-point-region,
20483         as our callers expect.  This was clobbered as part of fixing
20484         bug#5673.  (Bug#21107)
20485         (ffap-gopher-at-point): Set ffap-string-at-point-region.
20487 2015-07-22  Martin Rudalics  <rudalics@gmx.at>
20489         * lisp/window.el (even-window-sizes): Fix customization type.
20491         Optionally even widths of `display-buffer' windows.  (Bug#21100)
20492         * lisp/window.el (quit-restore-window): Restore width if
20493         requested.
20494         (display-buffer-record-window): Record width when window is
20495         reused and horizontally combined.
20496         (even-window-sizes): New option to allow evening window widths.
20497         (even-window-heights): Defalias to `even-window-sizes'.
20498         (window--even-window-heights): Rename to
20499         `window--even-window-sizes'.  Handle side-by-side windows.
20500         (display-buffer-use-some-window): Call `window--even-window-sizes'
20501         instead of `window--even-window-heights'.
20502         * lisp/help.el (resize-temp-buffer-window): Fix indentation.
20503         * doc/lispref/windows.texi (Choosing Window Options): Describe
20504         `even-window-sizes'.
20505         (Coordinates and Windows): Fix typo.
20507 2015-07-22  Stephen Leake  <stephen_leake@stephe-leake.org>
20509         Add file name to autoload error messages
20510         * lisp/emacs-lisp/autoload.el (autoload-save-buffers):
20511         Add condition-case to add file name to error message.
20513 2015-07-22  Michael Albinus  <michael.albinus@gmx.de>
20515         * lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options):
20516         Use 0.0.0.1 as test host.
20518 2015-07-21  Stefan Monnier  <monnier@iro.umontreal.ca>
20520         (advice--called-interactively-skip): Fix inf-loop (bug#21083)
20521         * lisp/emacs-lisp/nadvice.el (advice--called-interactively-skip):
20522         Fix inf-loop (bug#21083).
20524 2015-07-21  Glenn Morris  <rgm@gnu.org>
20526         * test/automated/package-test.el (package-test-signed):
20527         Update for recent changes.
20529         * test/automated/elisp-mode-tests.el
20530         (elisp-xref-finds-both-function-and-variable)
20531         (elisp-xref-finds-only-function-for-minor-mode):
20532         Update for recent xref name changes.
20534 2015-07-21  Dmitry Gutov  <dgutov@yandex.ru>
20536         Make eldoc timer non-repeatable
20537         * lisp/emacs-lisp/eldoc.el (eldoc-schedule-timer): Make the timer
20538         non-repeatable.  Since it's on post-command hook, that just wasted
20539         CPU cycles.
20541 2015-07-21  Michael Albinus  <michael.albinus@gmx.de>
20543         Mention `tramp-connection-properties' in NEWS
20545         Sync with Tramp repository
20546         * doc/misc/tramp.texi (Configuration): Note, that Tramp must be
20547         required prior changing its configuration.
20548         (Connection caching, Predefined connection information)
20549         (Remote shell setup): Fix typos.
20550         (Predefined connection information): Describe, how to overwrite
20551         parameters of `tramp-methods'.
20552         (Remote programs, Remote processes, Traces and Profiles):
20553         Simplify example.
20554         (Remote programs): Remove superfluous comment.
20555         * doc/misc/trampver.texi: Update release number.
20556         * lisp/net/tramp-cache.el (tramp-connection-properties):
20557         Adapt docstring.
20558         * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file): New defun.
20559         (tramp-gvfs-handle-copy-file, tramp-gvfs-handle-rename-file): Use it.
20560         (tramp-gvfs-handle-make-directory): Reimplement PARENTS handling,
20561         "gvfs-mkdir -p ..." does not work robust.
20562         (tramp-gvfs-maybe-open-connection):
20563         Adapt `tramp-get-method-parameter' call.
20564         * lisp/net/tramp-sh.el (tramp-methods):
20565         Add `tramp-remote-shell-login' parameter where it fits.
20566         (tramp-get-remote-path): Use it.
20567         (tramp-make-copy-program-file-name): Fix quoting for "psftp" method.
20568         (all): Adapt `tramp-get-method-parameter' calls.
20569         * lisp/net/tramp.el (tramp-methods): Adapt docstring.
20570         (tramp-get-method-parameter): Replace argument METHOD by VEC.
20571         Check also for hits in `tramp-connection-properties'.  Adapt docstring.
20572         (tramp-get-remote-tmpdir): Cache only the local name of tmpdir.
20573         (all): Adapt `tramp-get-method-parameter' calls.
20574         * lisp/net/trampver.el: Update release number.
20575         * test/automated/tramp-tests.el (tramp--instrument-test-case):
20576         Add "^make-symbolic-link not supported$" to `debug-ignored-errors'.
20577         (tramp-test13-make-directory, tramp--test-adb-p)
20578         (tramp--test-smb-or-windows-nt-p): Simplify.
20579         (tramp--test-ftp-p, tramp--test-gvfs-p): New defuns.
20580         (tramp--test-special-characters): Fix docstring.  Add gvfs and
20581         ftp tests.
20582         (tramp--test-utf8): Fix docstring.
20584 2015-07-20  Dmitry Gutov  <dgutov@yandex.ru>
20586         Add new xref-query-replace command
20587         * lisp/progmodes/xref.el (xref--match-buffer-bounds):
20588         New function, extracted from xref-pulse-momentarily.
20589         (xref-query-replace): New command.
20590         (xref--query-replace-1): New helper function.
20591         (xref--xref-buffer-mode-map): Add `r' binding.
20593 2015-07-20  Paul Eggert  <eggert@cs.ucla.edu>
20595         Simplify icalendar decoding of Z dates
20596         * lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
20597         Simplify calculation of time strings with trailing "Z".
20599 2015-07-19  Dmitry Gutov  <dgutov@yandex.ru>
20601         Do not corrupt grep-find-ignored-files
20602         * lisp/progmodes/project.el (project-ignores): Change the order of
20603         the arguments to nconc, in order not to corrupt grep-find-ignored-files.
20605         Add xref-match-item, and use it
20606         * lisp/progmodes/xref.el (xref-match-bounds): New generic function.
20607         (xref-file-location): Add reader for the column slot.
20608         (xref-match-item): New class.
20609         (xref-match-bounds): A method implementation for it.
20610         (xref-make-match): New constructor function.
20611         (xref--current-item): New private variable.
20612         (xref-pulse-momentarily): Use it.
20613         (xref--pop-to-location): Change the first argument to an xref
20614         item, instead of location, bind xref--current-item.
20615         Update all callers.
20616         (xref-next-line, xref-prev-line, xref--next-error-function)
20617         (xref--mouse-2): Look for the property `xref-item',
20618         instead of `xref-location'.
20619         (xref--item-at-point): Likewise.  This function replaces
20620         `xref-location-at-point'.  Update all callers.
20621         (xref--insert-xrefs): Add the `xref-item' text property, instead
20622         of `xref-location'.
20623         (xref--collect-match): Use xref-make-match.
20625         * lisp/progmodes/xref.el (xref-item): Rename from `xref--xref'.
20626         Update all references.
20628         * lisp/progmodes/xref.el (xref--xref): Rename the `description'
20629         slot to `summary'.
20631         vc-hg: Perform the print-log call asynchronously
20632         * lisp/vc/vc-hg.el (vc-hg-print-log): Perform the call
20633         asynchronously (bug#21067).
20635         Add xref-after-jump-hook and xref-after-return-hook
20636         * lisp/progmodes/xref.el (xref-after-jump-hook)
20637         (xref-after-return-hook): New hooks.
20638         (xref-pulse-on-jump): Remove, in favor of the above.
20639         (xref-pulse-momentarily): Rename from xref--maybe-pulse.
20640         (xref--pop-to-location, xref--display-position)
20641         (xref-pop-marker-stack): Use the new hooks, as requested in
20642         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00213.html
20644 2015-07-19  Bozhidar Batsov  <bozhidar@batsov.com>
20646         * lisp/progmodes/js.el (js-mode): Correct the lighter.
20648 2015-07-19  Leo Liu  <sdl.web@gmail.com>
20650         Fix a bug in cfengine3-mode
20651         * lisp/progmodes/cfengine.el (cfengine3-mode): Handle nil
20652         eldoc-documentation-function.
20654 2015-07-18  Julien Danjou  <julien@danjou.info>
20656         sieve-mode: support "body" test command
20657         * lisp/gnus/sieve-mode.el (sieve-font-lock-keywords):
20658         Add missing "body" test command.
20660 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
20662         Fix info-apropos when the default encoding is Latin-N
20663         * lisp/info.el (Info-find-node-2): Reset the buffer's encoding to
20664         'undecided', so that it is set to the encoding of the Info file we
20665         are about to insert.  Otherwise, 'info-apropos' will fail to find
20666         some index nodes in some UTF-8 encoded files, if the buffer's
20667         previous encoding is Latin-N or some such.
20669 2015-07-18  Ivan Andrus  <darthandrus@gmail.com>
20671         * lisp/epg.el (epg--start): Check that gpgconf can be found
20672         before calling it.
20674         Expose more file types to OS X that Emacs understands
20675         * nextstep/Cocoa/Emacs.base/Contents/Info.plist: Add editor role for
20676         sty, dtx, json, and org files.  Export UTIs for el, elc, and org files.
20678 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
20680         Fix visual-order cursor movement when lines are truncated
20681         * src/xdisp.c (Fmove_point_visually): When lines are truncated,
20682         simulate display in a window of infinite width, to allow move_it_*
20683         functions reach positions outside of normal window dimensions.
20684         Remove code that tried to handle a subset of these situations by
20685         manual iteration of buffer text.  (Bug#17777)
20687         Fix following Info cross-references to anchors
20688         * lisp/info.el (Info-read-subfile): Add to the returned value the
20689         length of subfile preamble, after converting it to file's byte
20690         offset, as expected by the caller.  Use bufferpos-to-filepos.
20691         (Info-find-node-2): If searching for a node with a
20692         1000-character slop fails, try again with a 10000-character slop,
20693         to account for known bugs in Texinfo 5.0 and 5.1.  (Bug#21055)
20694         * lisp/international/mule-util.el (bufferpos-to-filepos): New
20695         function.
20696         * etc/NEWS: Mention bufferpos-to-filepos.
20698         Fix scrolling backwards on TTY frames under scroll-conservatively
20699         * src/xdisp.c (move_it_vertically_backward): Fix off-by-one error
20700         in moving backwards on TTY frames.  (Bug#21080)
20702 2015-07-17  Dmitry Gutov  <dgutov@yandex.ru>
20704         Consider a jsdoc tag to be a beginning of a paragraph as well
20705         * lisp/progmodes/js.el (js-mode): Change c-paragraph-start to
20706         consider a jsdoc tag to be a beginning of a paragraph as well.
20708 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
20710         * lisp/emacs-lisp/package.el: Fix warnings.
20712         * lisp/emacs-lisp/package.el (package-buffer-info):
20713         Add author and maintainers to `package-buffer-info'.
20715         * lisp/emacs-lisp/package.el: Many small changes.
20716         Replace all instances of 'face with 'font-lock-face.
20717         (describe-package-1): Improve some strings and move the summary
20718         up the list.
20719         (package-install-file): Update docstring.
20720         (package-menu-hide-package): Bind to `H'.
20722         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
20723         Fix error handling.
20725 2015-07-17  Paul Eggert  <eggert@cs.ucla.edu>
20727         Fix hang with large yanks This should fix the bug fixed by Mike
20728         Crowe's patch in:
20729         https://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00106.html
20730         A problem in this area has been reported by several users; see
20731         Bug#16737, Bug#17101, Bug#17026, Bug#17172, Bug#19320, Bug#20283.
20732         This fix differs from Mike Crowe's patch in that it should avoid a
20733         race condition that could lose SIGIO signals.  ignore_sigio dates
20734         back to the 1980s when some platforms couldn't block signals, and
20735         could only ignore them, which led to races when signals arrived
20736         while being ignored.  We shouldn't have to worry about those old
20737         platforms now.
20738         * src/dispextern.h, src/sysdep.c (ignore_sigio): Remove.
20739         * src/emacs.c (shut_down_emacs):
20740         Don't call ignore_sigio; unrequest_sigio should suffice.
20741         * src/keyboard.c (kbd_buffer_store_buffered_event):
20742         Use unrequest_sigio, not ignore_sigio.
20743         (kbd_buffer_get_event):
20744         Call request_sigio when getting the ball rolling again.
20746 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
20748         * lisp/obsolete/longlines.el (longlines-search-function):
20749         Fallback on `isearch-search-fun-default'.
20751 2015-07-17  Tassilo Horn  <tsdh@gnu.org>
20753         Support @-mentions
20754         * lisp/net/rcirc.el (rcirc-completion-at-point): Support completion
20755         of mentions/messages with @nick instead of just nick.
20757 2015-07-16  Michael Albinus  <michael.albinus@gmx.de>
20759         Fix bug#20943
20760         * lisp/autorevert.el (auto-revert-handler): Do not check for
20761         `buffer-modified-p'.
20762         * lisp/files.el (buffer-stale--default-function): Check for
20763         `buffer-modified-p'.
20764         * test/automated/auto-revert-tests.el
20765         (auto-revert-test02-auto-revert-mode-dired): Adapt test.
20767 2015-07-16  Ari Roponen  <ari.roponen@gmail.com>
20769         Fix delete-dups bug on long lists
20770         * lisp/subr.el (delete-dups):
20771         Don't mistakenly keep some dups when applied to long lists.
20773 2015-07-16  Paul Eggert  <eggert@cs.ucla.edu>
20775         Better heuristic for C stack overflow
20776         Improve the heuristic for distinguishing stack overflows from
20777         other SIGSEGV causes (Bug#21004).  Corinna Vinschen explained that
20778         the getrlimit method wasn't portable to Cygwin; see:
20779         https://www.cygwin.com/ml/cygwin/2015-07/msg00092.html
20780         Corinna suggested pthread_getattr_np but this also has problems.
20781         Instead, replace the low-level system stuff with a simple
20782         heuristic based on known good stack addresses.
20783         * src/eval.c, src/lisp.h (near_C_stack_top): New function.
20784         * src/sysdep.c: Don't include <sys/resource.h>.
20785         (stack_direction): Remove.  All uses removed.
20786         (stack_overflow): New function.
20787         (handle_sigsegv): Use it instead of incorrect getrlimit heuristic.
20788         Make SEGV fatal in non-main threads.
20790 2015-07-16  Daiki Ueno  <ueno@gnu.org>
20792         epg: Automatically start pinentry server
20793         * lisp/epg-config.el (epg-gpgconf-program): New variable.
20794         * lisp/epg.el (epg--start): Call `pinentry-start' if
20795         allow-emacs-pinentry is set in ~/.gnupg/gpg-agent.conf.
20797 2015-07-15  Katsumi Yamaoka  <yamaoka@jpl.org>
20799         * lisp/gnus/nnimap.el: Fix my last bogus change.
20800         Reinstall Stefan Monnier's change that was made in
20801         <83d824bc4041332f338ad7e5e830f443535aa300>.
20803 2015-07-15  Paul Eggert  <eggert@cs.ucla.edu>
20805         Merge from gnulib
20806         This incorporates:
20807         2015-07-05 acl-permissions: Document FreeBSD ACL_TYPE_NFS4 acls
20808         2015-07-05 acl-permissions: Fix on FreeBSD
20809         2015-07-05 file-has-acl, acl-permissions: fix some more HP-UX typos
20810         * lib/acl-internal.c, lib/acl-internal.h, lib/get-permissions.c:
20811         * lib/set-permissions.c: Copy from gnulib.
20813         Port to stricter C99
20814         * src/keyboard.h (kbd_buffer_store_event_hold):
20815         Don't return a void expression.
20817 2015-07-15  Xue Fuqiao  <xfq.free@gmail.com>
20819         * doc/emacs/frames.texi (Creating Frames):
20820         Fix the command `C-x 5 m' runs.
20822 2015-07-14  Michael Albinus  <michael.albinus@gmx.de>
20824         New autorevert tests
20825         * test/automated/auto-revert-tests.el: New file.
20827 2015-07-14  Paul Eggert  <eggert@cs.ucla.edu>
20829         Clear gcprolist etc. after stack overflow
20830         After stack overflow, command_loop calls init_eval, and this needs to
20831         clear gcprolist and byte_stack_list (Bug#20996).
20832         * src/alloc.c (init_alloc):
20833         Move gcprolist and byte_stack_list initialization from here ...
20834         * src/eval.c (init_eval): ... to here.
20836 2015-07-13  Xue Fuqiao  <xfq.free@gmail.com>
20838         * doc/emacs/windows.texi (Pop Up Window): Fix the description
20839         of `C-x 4 m'.
20841 2015-07-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
20843         Avoid deprecated enums in mac-ct font backend driver
20844         * src/macfont.m (mac_font_copy_default_descriptors_for_language)
20845         (mac_ctfont_get_advance_width_for_glyph)
20846         (mac_ctfont_get_bounding_rect_for_glyph): Avoid deprecated enums.
20848         Cache font family in mac-ct font backend driver
20849         * src/macfont.m (macfont_family_cache): New variable.
20850         (syms_of_macfont): Initialize it.
20851         (macfont_available_families_cache): New variable.
20852         (macfont_invalidate_family_cache, macfont_get_family_cache_if_present)
20853         (macfont_set_family_cache, macfont_invalidate_available_families_cache)
20854         (macfont_handle_font_change_notification)
20855         (macfont_init_font_change_handler)
20856         (macfont_copy_available_families_cache): New functions.
20857         (macfont_create_family_with_symbol): Use font family caches.
20858         (macfont_list, macfont_list_family):
20859         Use macfont_copy_available_families_cache instead of
20860         mac_font_create_available_families.
20862 2015-07-12  Dmitry Gutov  <dgutov@yandex.ru>
20864         Show the default value in the prompt
20865         * lisp/progmodes/xref.el: Add `M-?' binding for
20866         xref-find-references.  Declare functions `grep-read-files' and
20867         `grep-expand-template'.
20868         (xref--read-identifier): Show the default value in the prompt.
20870         * lisp/progmodes/xref.el (xref-find-regexp): When called with
20871         prefix argument, ask for file patterns to search as well.  When
20872         prompting for the directory, require an existing one.
20873         (xref-collect-matches): Add a new argument, FILES.  Use it in the
20874         above function.
20876         Add `project-ignores'
20877         * lisp/progmodes/project.el (project-ignores): New generic
20878         function, and an implementation for the VC project type.
20879         * lisp/progmodes/xref.el (xref--rgrep-command): Split, as a
20880         variant of rgrep-default-command that handles a generic list of
20881         ignores.
20882         (xref-collect-matches): Use it, and pass through to it the value
20883         of the newly added argument.
20884         (xref-find-regexp): Handle ignored paths within the project.
20885         Remove outdated comment.
20886         * lisp/vc/vc.el (vc-default-ignore-completion-table):
20887         Skip the comments and the empty lines.
20889 2015-07-12  Xue Fuqiao  <xfq.free@gmail.com>
20891         * doc/emacs/buffers.texi (Misc Buffer): Add a cross reference.
20893 2015-07-11  Eric Abrahamsen  <eric@ericabrahamsen.net>
20895         gnus-registry.el: Correct function argument order
20896         * lisp/gnus/gnus-registry.el (gnus-registry--set/remove-mark):
20897         Reverse the order of function arguments.
20899 2015-07-11  Dmitry Gutov  <dgutov@yandex.ru>
20901         Bind grep-highlight-matches to nil
20902         * lisp/progmodes/xref.el (xref-collect-matches):
20903         Bind grep-highlight-matches to nil (bug#20728).
20905 2015-07-11  Nikolaus Rath  <Nikolaus@rath.org>
20907         nnimap.el: Fix IMAP message size parsing
20908         * lisp/gnus/nnimap.el (nnimap-transform-headers):
20909         Don't assume that UID comes before RFC822.SIZE.
20911 2015-07-10  Stefan Monnier  <monnier@iro.umontreal.ca>
20913         * lisp/gnus/nnimap.el: Clean up "unused var" warnings
20914         (auth-source-creation-prompts): Declare.
20915         (nnimap-retrieve-headers, nnimap-status-message)
20916         (nnimap-request-create-group, nnimap-request-delete-group)
20917         (nnimap-close-group, nnimap-request-move-article)
20918         (nnimap-request-accept-article, nnimap-request-newgroups)
20919         (nnimap-request-post, nnimap-dummy-active-number)
20920         (nnimap-save-mail-spec, nnimap-get-groups): Add _ to unused vars.
20921         (nnimap-parse-flags): Remove unused var `p'.
20922         (nnimap-retrieve-group-data-early): Remove unused var `groups'.
20923         (nnimap-flags-to-marks): Remove unused var `totalp'.
20925 2015-07-10  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
20927         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 20MB.
20929 2015-07-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
20931         * src/macfont.m (macfont_list): Ignore font families lacking
20932         font descriptors.
20934 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
20936         Don't check the exit status, it can be misleading
20937         * lisp/progmodes/xref.el (xref-collect-matches): Don't check the
20938         exit status, it can be misleading.
20940         Introduce a Project API
20941         * lisp/progmodes/project.el: New file.
20942         * lisp/cedet/ede.el (project-try-ede): New function.
20943         (project-root): New implementation.
20944         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
20945         Set project-search-path-function.
20946         (elisp--xref-find-references): Delegate some logic to
20947         project-search-path.
20948         (elisp-search-path): New function.
20949         (elisp-xref-find): Don't implement `matches' anymore.
20950         * lisp/progmodes/etags.el: Don't implement `matches'.
20951         Delegate some logic to project-search-path.
20952         (etags-search-path): New function.
20953         * lisp/progmodes/xref.el (xref-find-function):
20954         Remove `matches' from the API.
20955         (xref-find-regexp): Move whatever common logic was in elisp and
20956         etags implementations, and search the directories returned by
20957         project-directories and project-search-path.
20959 2015-07-09  Nicolas Petton  <nicolas@petton.fr>
20961         * test/automated/map-tests.el (test-map-delete-return-value):
20962         Uncomment test.
20964         Add support for gv.el in map.el
20965         * lisp/emacs-lisp/map.el (map-elt, map-delete): Declare a gv-expander.
20966         * lisp/emacs-lisp/map.el (map-put): Refactor using `setf' and `map-elt'.
20967         * test/automated/map-tests.el: Update tests to work with the new
20968         implementations of map-elt and map-put.
20970 2015-07-09  Glenn Morris  <rgm@gnu.org>
20972         * lisp/emacs-lisp/debug.el (debug-help-follow): Use describe-symbol.
20974 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
20976         Syntax-propertize until the end of the line first
20977         * lisp/progmodes/xref.el (xref--collect-match): Syntax-propertize
20978         until the end of the line first.
20980 2015-07-09  Xue Fuqiao  <xfq.free@gmail.com>
20982         * doc/emacs/files.texi (File Archives): Add a cross reference.
20984 2015-07-08  Nikolaus Rath  <Nikolaus@rath.org>
20986         nnimap.el: Handle plain value for nnimap-stream
20987         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Always query
20988         capabilities, so that a 'plain value for the `nnimap-stream' server
20989         variable is handled correctly.
20990         * doc/misc/gnus.texi (Customizing the IMAP Connection):
20991         Document the 'plain option.
20993 2015-07-08  Leo Liu  <sdl.web@gmail.com>
20995         Fix bug in thing-at-point--bounds-of-well-formed-url
20996         * lisp/thingatpt.el (thing-at-point--bounds-of-well-formed-url): Make
20997         sure boundary contains current point.
20999 2015-07-08  Dmitry Gutov  <dgutov@yandex.ru>
21001         * lisp/progmodes/xref.el (xref-collect-matches): Use `nreverse'
21002         in the end.
21004         Declare whitespace-line-column a safe file-local
21005         * lisp/whitespace.el (whitespace-line-column): Declare to be a
21006         safe file-local when the value is an integer.
21008 2015-07-08  Eric Abrahamsen  <eric@ericabrahamsen.net>
21010         gnus-group.el: Check if group names are already strings
21011         * lisp/gnus/gnus-group.el (gnus-group-group-name):
21012         The group name may already be a string.
21013         Specifically, in the group list reached from the *Server* buffer,
21014         the 'gnus-group text property returns a string.  Everywhere else
21015         it returns a symbol.
21017         nnimap.el: Remove unused let variables
21018         * lisp/gnus/nnimap.el (nnimap-request-group): Variables are not used.
21020 2015-07-08  Eli Zaretskii  <eliz@gnu.org>
21022         Support "maximized" property of runemacs's shortcut
21023         * nt/runemacs.c (WinMain): If runemacs is invoked "maximized", pass
21024         the '--maximized' switch to Emacs.
21026         Support "minimized" property of runemacs's shortcut
21027         * nt/runemacs.c (WinMain): If runemacs is invoked "minimized",
21028         pass the '--iconic' switch to Emacs.  (Bug#20991)
21030 2015-07-08  Xue Fuqiao  <xfq.free@gmail.com>
21032         Doc fixes
21033         * doc/emacs/files.texi (Diff Mode): Fix the description of `C-c
21034         C-w' in Diff mode.
21035         * doc/emacs/arevert-xtra.texi (Auto Reverting the Buffer Menu):
21036         Add a cross reference.
21038 2015-07-08  Nicolas Richard  <youngfrog@members.fsf.org>
21040         * lisp/obsolete/landmark.el: Add Obsolete-since header.
21042 2015-07-07  Glenn Morris  <rgm@gnu.org>
21044         * test/automated/ert-tests.el (ert-test-deftest):
21045         Update for recent changes.
21047 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
21049         (gv-setter, gv-synthetic-place, gv-delay-error): New funs/macros
21050         * lisp/emacs-lisp/gv.el (gv-setter): New function.
21051         (gv-invalid-place): New error.
21052         (gv-get): Use them.
21053         (gv-synthetic-place, gv-delay-error): New places.
21054         * lisp/emacs-lisp/cl-generic.el (cl--generic-setf-rewrite): Remove.
21055         (cl-defgeneric, cl-defmethod): Use gv-setter.
21057 2015-07-07  Fabrice Popineau  <fabrice.popineau@gmail.com>
21059         Make vc-tests work with MSYS svn program
21060         * lisp/vc/vc-svn.el (vc-svn-create-repo): Fix the file:// URL when
21061         svn is an MSYS program.
21063 2015-07-07  Ken Brown  <kbrown@cornell.edu>
21065         Improve recent change to emacsclient on Cygwin
21066         * lisp/server.el (server-process-filter): Remove redundant check
21067         that 'cygwin-convert-file-name-from-windows' is defined as a
21068         function on Cygwin.  Don't call that function unless its argument
21069         starts with a drive letter.
21071 2015-07-07  Artur Malabarba  <bruce.connor.am@gmail.com>
21073         * lisp/emacs-lisp/package.el (package-compute-transaction):
21074         Fix void variable due to `found-something' being in the wrong `let'.
21076 2015-07-07  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
21078         * lisp/play/landmark.el: Move to lisp/obsolete/.
21080 2015-07-07  Martin Rudalics  <rudalics@gmx.at>
21082         Have `x-show-tip' handle `right' and `bottom' frame parameters
21083         * src/nsfns.m (compute_tip_xy, Fx_show_tip)
21084         * src/w32fns.c (compute_tip_xy, Fx_show_tip)
21085         * src/xfns.c (compute_tip_xy, Fx_show_tip): Allow aligning
21086         tooltips also via `right' and `bottom' frame parameters.
21088 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
21090         Add online-help support to describe types
21091         * lisp/help-fns.el (describe-symbol-backends): Move to help-mode.el.
21092         (describe-symbol): Improve the selection of default.
21093         * lisp/help-mode.el: Require cl-lib.
21094         (describe-symbol-backends): Move from help-fns.el.
21095         (help-make-xrefs): Use it.
21096         * lisp/emacs-lisp/cl-extra.el (describe-symbol-backends): Add entry
21097         for types.
21098         (cl--typedef-regexp): New const.
21099         (find-function-regexp-alist): Add entry for types.
21100         (cl-help-type, cl-type-definition): New buttons.
21101         (cl-find-class): New function.
21102         (cl-describe-type): New command.
21103         (cl--describe-class, cl--describe-class-slot)
21104         (cl--describe-class-slots): New functions, moved from eieio-opt.el.
21105         * lisp/emacs-lisp/cl-generic.el (cl--generic-method-documentation)
21106         (cl--generic-all-functions, cl--generic-specializers-apply-to-type-p):
21107         New functions.  Moved from eieio-opt.el.
21108         (cl--generic-class-parents): New function, extracted from
21109         cl--generic-struct-specializers.
21110         (cl--generic-struct-specializers): Use it.
21111         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Use pcase-dolist.
21112         Improve constructor's docstrings.
21113         (cl-struct-unknown-slot): New error.
21114         (cl-struct-slot-offset): Use it.
21115         * lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Record the type
21116         definition in current-load-list.
21117         * lisp/emacs-lisp/eieio-core.el (eieio--known-slot-names): New var.
21118         (eieio--add-new-slot): Set it.
21119         (eieio-defclass-internal): Use new name for current-load-list.
21120         (eieio-oref): Add compiler-macro to warn about unknown slots.
21121         * lisp/emacs-lisp/eieio.el (defclass): Update eieio--known-slot-names
21122         as compile-time as well.  Improve constructor docstrings.
21123         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
21124         (eieio--help-print-slot, eieio-help-class-slots): Move to cl-extra.el.
21125         (eieio-class-def): Remove button.
21126         (eieio-help-constructor): Use new name for load-history element.
21127         (eieio--specializers-apply-to-class-p, eieio-all-generic-functions)
21128         (eieio-method-documentation): Move to cl-generic.el.
21129         (eieio-display-method-list): Use new names.
21130         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression):
21131         Add "define-linline".
21132         (lisp-fdefs): Remove "defsubst".
21133         (el-fdefs): Add "defsubst", "cl-defsubst", and "define-linline".
21134         * lisp/emacs-lisp/macroexp.el (macroexp--warned): New var.
21135         (macroexp--warn-and-return): Use it to avoid inf-loops.
21136         Add `compile-only' argument.
21138 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
21140         python.el: Fix local/remote shell environment setup
21141         * lisp/progmodes/python.el (python-shell-with-environment):
21142         Fix remote/local environment setup.
21143         * test/automated/python-tests.el (python-shell-with-environment-1)
21144         (python-shell-with-environment-2): New tests.
21146 2015-07-06  Glenn Morris  <rgm@gnu.org>
21148         * lisp/simple.el (set-variable): Tweak recent doc fix.
21150 2015-07-06  Ken Brown  <kbrown@cornell.edu>
21152         * src/sysdep.c (handle_sigsegv) [CYGWIN]: Increase STACK_DANGER_ZONE.
21154 2015-07-06  Glenn Morris  <rgm@gnu.org>
21156         * lisp/simple.el (set-variable): Use user-error for type mismatch.
21158 2015-07-06  Ken Brown  <kbrown@cornell.edu>
21160         * src/emacs.c (main): Don't increase the stack size on Cygwin.
21162 2015-07-06  Stefan Monnier  <monnier@iro.umontreal.ca>
21164         (describe-symbol): Rewrite describe-function-or-variable
21165         * lisp/help-fns.el (describe-symbol-backends): New var.
21166         (help-xref-stack-item): Declare.
21167         (describe-symbol): Rename from describe-function-or-variable.
21168         Rewrite using describe-symbol-backends instead of help-xref-interned.
21169         * lisp/help.el (help-map): Use it.
21170         * lisp/help-mode.el (help-symbol, help-follow-symbol): Use it.
21171         (help-xref-interned): Make it into an obsolete alias.
21173         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-save): Don't ignore
21174         `file' arg (bug#20972).  Always use utf-8-emacs.  Use with-temp-buffer
21175         and cl-letf.
21177 2015-07-06  Wolfgang Jenkner  <wjenkner@inode.at>
21179         Fix parsing glitches in dired-mark-sexp (bug#13575)
21180         * lisp/dired-x.el (dired-x--string-to-number): New function.
21181         (dired-mark-sexp): Use it.  Tweak dired-re-inode-size.  Fix usage
21182         of directory-listing-before-filename-regexp.  Consider
21183         forward-word harmful and replace it.  Add more verbiage in
21184         comments and doc string.
21186 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
21188         python.el: Respect process environment for remote shells
21189         * lisp/progmodes/python.el
21190         (python-shell-calculate-process-environment): Calculate
21191         process-environment or tramp-remote-process-environment depending
21192         whether current file is remote.
21193         (python-shell-calculate-exec-path): Calculate exec-path or
21194         tramp-remote-path depending whether current file is remote.
21195         (python-shell-with-environment): New macro.
21196         (python-shell-prompt-detect, python-shell-calculate-command)
21197         (python-shell-make-comint, python-check): Use it.
21199         python.el: Avoid making let-bound defvars buffer local  (Bug#18244)
21200         * lisp/progmodes/python.el (python-shell--interpreter)
21201         (python-shell--interpreter-args): New vars.
21202         (inferior-python-mode, python-shell-make-comint): Use them.
21204         python.el: Fixes for IPython 3.x  (Bug#20580)
21205         * lisp/progmodes/python.el:
21206         (python-shell-completion-native-setup): Fix IPython 3.x setup.
21207         (python-shell-completion-native-get-completions): Fix timeout
21208         logic.
21210         python.el: Fix mark-defun behavior  (Bug#19665)
21211         * lisp/progmodes/python.el (python-mark-defun): New function.
21212         * test/automated/python-tests.el (python-mark-defun-1)
21213         (python-mark-defun-2, python-mark-defun-3): New tests.
21215 2015-07-05  Glenn Morris  <rgm@gnu.org>
21217         * lisp/progmodes/f90.el (f90-type-def-re): Handle attribute lists
21218         such as "extends(parent), private".  (Bug#20969)
21219         * test/automated/f90.el (f90-test-bug20969, f90-test-bug20969b):
21220         New tests.
21222 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
21224         Avoid duplicate calls to current_timespec
21225         * src/process.c (wait_reading_process_output):
21226         Cache current_timespec results as long as we're not waiting.
21228 2015-07-05  Ian Kelling  <ian@iankelling.org>
21230         Avoid returning early reading process output due to SIGIO
21231         * src/process.c (wait_reading_process_output): Extend the behavior of
21232         not breaking due to not finding output when a timer has lowered the
21233         timeout to include when SIGIO lowers the timeout.
21235         Don't return as fast reading any process output
21236         * src/process.c (wait_reading_process_output):
21237         The patch for Bug#17647 returns too fast sometimes when reading
21238         from any processes.  Revert part of it, and limit the timeout more
21239         sensibly (Bug#20978).
21241         Refactor timeouts in wait_reading_process_output
21242         * src/process.c (wait_reading_process_output):
21243         Simplify timeouts with an enum.  Remove a redundant condition.
21244         (Bug#20978)
21246         Remove ADAPTIVE_READ_BUFFERING ifdef
21247         * src/process.c (make-process, make-pipe-process, deactivate_process)
21248         (wait_reading_process_output, read_process_output, send_process)
21249         (init_process_emacs): ifdef ADAPTIVE_READ_BUFFERING was originally
21250         added in case there was an operating system in which it was not
21251         useful.  That was 11 years ago and it hasn't happened.  Make
21252         development easier by not considering the effect of changes on a
21253         theoretical OS where this is disabled (Bug#20978).
21255 2015-07-05  Glenn Morris  <rgm@gnu.org>
21257         * lisp/simple.el (set-variable): Doc fix.
21259         * lisp/progmodes/fortran.el (fortran-line-length): Doc fix.
21261 2015-07-05  Ian Kelling  <ian@iankelling.org>
21263         accept-process-output fix
21264         This is a followon to the fix for bug#17647 (Bug#20976).
21265         * src/process.c (status_notify): Fix too high return in some cases.
21267 2015-07-05  Artur Malabarba  <bruce.connor.am@gmail.com>
21269         * lisp/character-fold.el (character-fold-table):
21270         Only fold decompositions if at least one character is non-spacing.
21271         (Bug#20975)
21273 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
21275         Merge from gnulib
21276         This incorporates:
21277         2015-07-04 file-has-acl, acl-permissions: fix HP-UX typos
21278         2015-07-03 set-permissions.c: adjust acl_from_mode's cpp guard
21279         2015-07-02 update-copyright: fix test failure with perl >= 5.22
21280         2015-07-01 gnulib-common.m4: change the ARFLAGS default to 'cr'
21281         2015-07-01 acl: fix definition of acl_from_mode on FreeBSD
21282         * build-aux/update-copyright, doc/misc/texinfo.tex, lib/acl-internal.h:
21283         * lib/set-permissions.c, m4/gnulib-common.m4: Copy from gnulib.
21285 2015-07-05  Christoph Wedler  <christoph.wedler@sap.com>
21287         Respect `prog-indentation-context' in python.el
21288         * lisp/progmodes/python.el (python-indent-guess-indent-offset)
21289         (python-indent-context, python-indent--calculate-indentation)
21290         (python-info-current-defun)
21291         (python-info-dedenter-opening-block-message)
21292         (python-info-line-ends-backslash-p)
21293         (python-info-beginning-of-backslash)
21294         (python-info-continuation-line-p): Use `prog-widen'.
21295         (python-indent--calculate-indentation)
21296         (python-indent--calculate-levels)
21297         (python-indent-calculate-indentation): Use `prog-first-column'.
21298         (python-indent--calculate-levels): Simplify.
21299         Ignore also initial empty lines for syntax calculation.
21300         * lisp/progmodes/python.el (python-indent-context): Return
21301         :no-indent for first non-empty line, not just in line 1.
21302         * test/automated/python-tests.el (python-indent-base-case)
21303         (python-indent-inside-paren-1, python-indent-inside-paren-2)
21304         (python-indent-inside-paren-3, python-indent-inside-paren-4)
21305         (python-indent-inside-paren-5, python-indent-inside-paren-6)
21306         (python-indent-after-backslash-1)
21307         (python-indent-after-backslash-2)
21308         (python-indent-after-backslash-3)
21309         (python-indent-after-backslash-4, python-indent-inside-string-1):
21310         Expect :no-indent for first non-empty line.
21312 2015-07-04  Daniel Colascione  <dancol@dancol.org>
21314         Factor isearch word description into new function
21315         * lisp/isearch.el (isearch--describe-word-mode): New function.
21316         (isearch-message-prefix, isearch-query-replace): Use it.
21318 2015-07-04  Eli Zaretskii  <eliz@gnu.org>
21320         Fix mouse pointer on w32 when a menu is active
21321         * src/w32fns.c (w32_wnd_proc): Don't change the mouse pointer
21322         shape while a menu is in use.  This started happening since we now
21323         send WM_EMACS_SHOWCURSOR messages when the mouse moves.
21325 2015-07-04  Martin Rudalics  <rudalics@gmx.at>
21327         Fix processing of alpha parameter for Windows tip frames  (Bug#17344)
21328         * src/w32fns.c (x_create_tip_frame): Fix processing alpha
21329         parameter.  (Bug#17344)
21331         Have `compilation-set-window' use right window for getting fringes
21332         (Bug#20829)
21333         * lisp/progmodes/compile.el (compilation-set-window):
21334         Take `window-fringes' from argument window.
21336 2015-07-03  Glenn Morris  <rgm@gnu.org>
21338         Update eieio tests for recent eieio-core change.
21339         * test/automated/eieio-test-persist.el (persist-test-save-and-compare):
21340         * test/automated/eieio-tests.el
21341         (eieio-test-32-slot-attribute-override-2):
21342         Replace the deleted eieio--class-v with cl--find-class.
21344 2015-07-03  Martin Rudalics  <rudalics@gmx.at>
21346         Fix some issues with `window-divider-mode'
21347         * lisp/frame.el (window-divider-default-places): New option.
21348         (window-divider-mode): Remove option.
21349         (window-divider-mode): Make it a "regular" minor mode.
21350         (window-divider-width-valid-p): Drop frame- prefix.
21351         (window-divider-mode-apply): New argument ENABLE.  Drop frame-
21352         prefix.  Handle `window-divider-default-places'.
21353         (frame--window-divider-mode-set-and-apply): Remove.
21354         (window-divider-default-bottom-width)
21355         (window-divider-default-right-width): Drop :group entries.
21356         * lisp/menu-bar.el (menu-bar-bottom-and-right-window-divider)
21357         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
21358         (menu-bar-no-window-divider): Set `window-divider-default-places'
21359         and call `window-divider-mode'.
21360         * doc/emacs/frames.texi (Window Dividers): Document
21361         `window-divider-default-places'.
21363 2015-07-02  Xue Fuqiao  <xfq.free@gmail.com>
21365         * doc/emacs/display.texi (Displaying Boundaries):
21366         * doc/emacs/search.texi (Word Search): Add cross references.
21368 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
21370         -batch should not affect ‘’ -> `' display
21371         * lisp/startup.el (command-line): Do the ‘’ -> `' check even if
21372         -batch (Bug#20926).
21374 2015-07-02  Stefan Monnier  <monnier@iro.umontreal.ca>
21376         * lisp/emacs-lisp/eieio-core.el (eieio--class-v): Remove
21377         * lisp/emacs-lisp/eieio-core.el, lisp/emacs-lisp/eieio.el:
21378         * lisp/emacs-lisp/eieio-opt.el, lisp/emacs-lisp/eieio-compat.el:
21379         Use cl--find-class instead.
21381         * lisp/term/xterm.el (xterm--query): Fix paren typo (bug#20951).
21383 2015-07-02  Martin Rudalics  <rudalics@gmx.at>
21385         Some further fixes in Change Window node (Bug#20183)
21386         * doc/emacs/windows.texi (Change Window): Replace "rearranging"
21387         by "resizing" in section title.  Add some concept indices.
21388         Suggested by N. Jackson (Bug#20183).
21390         * doc/emacs/windows.texi (Change Window): Reference window
21391         dividers.
21393         Document new `window-divider-mode'.
21394         * lisp/frame.el (window-divider-mode): Fix doc-string.
21395         * doc/emacs/frames.texi (Window Dividers): New section.
21397         Improve accessibility of window dividers (Bug#20183)
21398         * lisp/faces.el (window-divider)
21399         (window-divider-first-pixel, window-divider-last-pixel): Change
21400         membership from `frames' to `window-divider' customization group.
21401         * lisp/frame.el (window-divider): New customization group.
21402         (window-divider-mode): New minor mode.
21403         (window-divider-default-bottom-width)
21404         (window-divider-default-right-width): New options.
21405         (frame--window-divider-previous-mode): New variable.
21406         (frame-window-divider-width-valid-p)
21407         (frame--window-divider-mode-apply)
21408         (frame--window-divider-mode-set-and-apply): New functions.
21409         * lisp/menu-bar.el (menu-bar-options-save): Save
21410         window-divider-mode settings.
21411         (menu-bar-window-divider-customize)
21412         (menu-bar-bottom-and-right-window-divider)
21413         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
21414         (menu-bar-no-window-divider): New functions.
21415         (menu-bar-showhide-window-divider-menu): New variable.
21416         (menu-bar-showhide-menu): Show/hide window divider menu.
21417         * lisp/mouse.el (mouse-split-window-vertically)
21418         (mouse-split-window-horizontally): Replace `error' by
21419         `user-error'.  Bind `window-combination-resize' to nil.
21420         (top-level): Add/reorder mouse key bindings on mode- and
21421         vertical-line.
21423 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
21425         Don't display ‘’ as `' under X in en_GB
21426         The curved quote setup code invokes (char-displayable-p ?‘),
21427         but this isn’t reliable until after the X frame replaces the
21428         terminal frame (Bug#20926).
21429         * lisp/international/mule-cmds.el (set-locale-environment):
21430         Move curved quote setup code from here ...
21431         * lisp/startup.el (command-line): ... to here, after creating
21432         the X frame.
21434 2015-07-01  Nicolas Richard  <youngfrog@members.fsf.org>
21436         * lisp/emacs-lisp/seq.el (seq-difference): Fix typo in docstring.
21438         * lisp/ido.el (ido-restrict-to-matches): Add an optional argument
21439         to reverse the meaning (Bug#15631).
21441 2015-07-01  Eli Zaretskii  <eliz@gnu.org>
21443         Be more tolerant to fonts named "Foobar-12"
21444         * src/frame.c (x_set_font): If font_spec_from_name returns nil,
21445         don't barf; instead, request a new fontset to be generated.  This
21446         avoids unnecessarily rejecting fonts named against XLFD rules.  See
21447         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html,
21448         for the description of the original problem.
21449         * lisp/faces.el (set-face-attribute): Don't be fooled too easily
21450         by a hyphen in a font's name.
21452         Fix value of posn-at-pont in R2L lines
21453         * src/keyboard.c (Fposn_at_x_y, Fposn_at_point): Allow X pixel
21454         coordinate of -1, for a newline in a right-to-left line that
21455         overflowed into the left fringe.
21457 2015-07-01  Stefan Monnier  <monnier@iro.umontreal.ca>
21459         (cl--copy-slot-descriptor): Copy the `props' alist as well
21460         * lisp/emacs-lisp/cl-preloaded.el (cl--copy-slot-descriptor-1):
21461         Rename from cl--copy-slot-descriptor.
21462         (cl--copy-slot-descriptor): New function.  Copy the alist (bug#20914).
21464 2015-06-30  Stefan Monnier  <monnier@iro.umontreal.ca>
21466         * lisp/term/xterm.el (xterm--query): Avoid generating garbage
21467         (xterm-query-timeout): New var.
21468         (xterm--query): Use it.  Fallback on async method if we timeout before
21469         getting the first byte of the reply (bug#12354).
21471 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
21473         Spelling fixes
21474         * lisp/character-fold.el (character-fold-search):
21475         * lisp/emacs-lisp/package.el (package-hidden-regexps):
21476         Fix typos.
21478 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
21480         * doc/emacs/frames.texi (Frame Commands): Typo fix.  (Bug#20946)
21482 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
21484         In strings, prefer plain ` and ' to \` and \'
21485         * lisp/allout.el (allout-insert-listified):
21486         * lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
21487         * lisp/ls-lisp.el (ls-lisp-UCA-like-collation)
21488         (ls-lisp-string-lessp):
21489         * lisp/menu-bar.el (menu-bar-open):
21490         * lisp/obsolete/otodo-mode.el (todo-top-priorities):
21491         * lisp/progmodes/compile.el (compile):
21492         * lisp/progmodes/etags.el (tags-loop-scan):
21493         * lisp/progmodes/make-mode.el (makefile-browser-insert-continuation):
21494         * lisp/subr.el (posn-actual-col-row):
21495         * lisp/term/pc-win.el (x-list-fonts):
21496         * lisp/textmodes/texinfmt.el (texinfmt-version):
21497         * lisp/textmodes/texnfo-upd.el (texinfo-master-menu):
21498         * lisp/time.el (display-time-world-list):
21499         * lisp/tmm.el (tmm-menubar):
21500         * src/buffer.c (syms_of_buffer):
21501         * src/fileio.c (syms_of_fileio):
21502         Omit unnecessary and confusing backslash before quote.
21503         * lisp/erc/erc.el (erc-cmd-LASTLOG):
21504         * lisp/progmodes/flymake.el (flymake-fix-file-name):
21505         * lisp/progmodes/vhdl-mode.el (vhdl-in-extended-identifier-p):
21506         Fix string that was intended to escape a backslash and not a quote.
21508 2015-06-30  Glenn Morris  <rgm@gnu.org>
21510         * leim/Makefile.in, lisp/Makefile.in: Add missing EXEEXT definition.
21512         * lisp/Makefile.in (MH_E_SRC, TRAMP_SRC, CAL_SRC):
21513         Replace hard-coded lists with wildcard + filter-out.
21515         * configure.ac (system-configuration-features): Add X11, NS.
21517         Improve reproducibility of generated loaddefs file
21518         * lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
21519         Make the return value the modtime of the input file (if no autoloads).
21520         (update-directory-autoloads): In the "no autoloads" section,
21521         use "most recent modtime" rather than "current time".
21523 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
21525         * lisp/emacs-lisp/package.el (package--remove-hidden): Fix logic.
21526         (Bug#20930)
21528 2015-06-30  Nicolas Petton  <nicolas@petton.fr>
21530         * doc/lispref/sequences.texi: Add documentation for seq-min and seq-max.
21532         Add seq-min and seq-max
21533         Bump version number.
21534         * lisp/emacs-lisp/seq.el (seq-min, seq-max): New functions.
21535         * test/automated/seq-tests.el: Add tests for seq-min and seq-max.
21537 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
21539         Make sure sleep-for always delays for as long as it's told
21540         * src/dispnew.c (Fsleep_for): Call wait_reading_process_output in
21541         a loop, to ensure we always wait exactly the required amount of
21542         time.  (Bug#15990)
21544 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
21546         Fix pointer signedness glitch
21547         * src/font.c (font_load_for_lface): Use SSDATA, not SDATA.
21549 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
21551         Don't block changes in mouse pointer inside 'track-mouse'
21552         * etc/NEWS:
21553         * doc/lispref/frames.texi (Mouse Tracking): Document the special
21554         effect of setting 'track-mouse' to 'dragging'.
21555         * lisp/textmodes/artist.el (artist-mouse-draw-continously):
21556         * lisp/ruler-mode.el (ruler-mode-mouse-drag-any-column-iteration):
21557         * lisp/mouse-drag.el (mouse-drag-throw):
21558         * lisp/mouse.el (mouse-drag-line): Set 'track-mouse' to 'dragging'
21559         to avoid changes in the shape of the mouse pointer.
21560         * src/xdisp.c (define_frame_cursor1): Don't change the mouse
21561         pointer shape when do_mouse_tracking has the value of 'dragging',
21562         not just any non-nil value.  (Bug#20934)
21563         (syms_of_xdisp): DEFSYM 'dragging'.
21565 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
21567         * lisp/isearch.el (isearch-toggle-word): Fix toggle.
21569         * lisp/emacs-lisp/package.el (package-compute-transaction):
21570         Don't assume version sorting.
21572         * lisp/emacs-lisp/package.el (package--save-selected-packages):
21573         Don't save before init time, to avoid overwriting configurations.
21574         (Bug#20855)
21576 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
21578         * doc/emacs/display.texi (Standard Faces, Fringes): Add cross
21579         references.
21581 2015-06-29  Ted Zlatanov  <tzz@lifelogs.com>
21583         Update for the upcoming CFEngine 3.7 release: support macros and
21584         quoted context strings; reformat JSON; indent promise attributes 2
21585         units by default; give function parameter descriptions in the eldoc
21586         glue.
21587         * lisp/progmodes/cfengine.el: Update version and docs and fix name.
21588         Autoload `json-pretty-print'.  Support new features in 3.7.
21589         (cfengine-parameters-indent): Set default promise attribute indent to
21590         2 more than the promise itself.
21591         (cfengine3-macro-regex): New variable to match the new macro syntax.
21592         (cfengine3-font-lock-keywords): Use it to highlight macros.
21593         (cfengine3-indent-line): Use it to indent macros to column 0.
21594         (cfengine3-class-selector-regex): Update for the new quoted strings
21595         format.
21596         (cfengine3-reformat-json-string): New function to reformat a JSON
21597         string using `json-pretty-print'.
21598         (cfengine3-format-function-docstring): Use function parameter
21599         description if it's provided by the cf-promises syntax dump.
21601 2015-06-29  Michael R. Mauger  <michael@mauger.com>
21603         Cygwin emacsclient handles w32 file names
21604         * lisp/server.el (server-process-filter): Allow Cygwin's
21605         emacsclient to be used as a file handler on MS-Windows.
21607 2015-06-29  Katsumi Yamaoka  <yamaoka@jpl.org>
21609         * lisp/isearch.el (isearch-exit): Don't call isearch-done twice
21610         (bug#20925).
21612 2015-06-29  Eli Zaretskii  <eliz@gnu.org>
21614         * doc/lispref/text.texi (Sticky Properties): Improve wording.
21615         (Bug#20924)
21617         Allow font names that end in "-NN", where NN is a number
21618         * src/font.c (font_load_for_lface): If the font-spec didn't match
21619         any available fonts, try again without interpreting trailing "-NN"
21620         as the font size.  For the description of the original problem, see
21621         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html
21623         .gdbinit followup to changes in !USE_LSB_TAG
21624         * src/.gdbinit (xgetsym): Don't left-shift $ptr even under
21625         !USE_LSB_TAG, as Emacs no longer does.
21627 2015-06-29  Wolfgang Jenkner  <wjenkner@inode.at>
21629         * lisp/calc-store.el (calc-insert-permanent-variable): Heed case.
21630         Otherwise `s p' of f and F will stomp on each other's value.
21631         (Bug#20916)
21633 2015-06-29  Artur Malabarba  <bruce.connor.am@gmail.com>
21635         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
21636         Don't block remember-pos if buffer isn't displayed.  (Bug#20921)
21638 2015-06-29  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
21640         * lisp/emacs-lisp/package.el (describe-package): Use symbol-at-point
21641         as additional guess.
21643         * lisp/emacs-lisp/package.el (describe-package): Convert the guess
21644         to a string.
21646 2015-06-28  Paul Eggert  <eggert@cs.ucla.edu>
21648         apropos-library quoting fix
21649         * lisp/apropos.el (apropos-library): Quote library consistently
21650         with the rest of the quoting used by apropos.
21652         Clarify interpreter-mode-alist doc
21653         * lisp/files.el (interpreter-mode-alist):
21654         Reword to avoid confusing quoting that wasn't working anyway.
21656 2015-06-28  Michael Albinus  <michael.albinus@gmx.de>
21658         Sync with Tramp 2.2.12
21659         * doc/misc/trampver.texi:
21660         * lisp/net/trampver.el: Update release number.
21661         * test/automated/tramp-tests.el (tramp-test13-make-directory):
21662         Fix cleanup.
21664 2015-06-28  Artur Malabarba  <bruce.connor.am@gmail.com>
21666         * lisp/isearch.el (isearch-mode): Don't char-fold regexps (bug#20913).
21668 2015-06-27  Dmitry Gutov  <dgutov@yandex.ru>
21670         Bind grep-highlight-matches around the rgrep call
21671         * lisp/progmodes/grep.el (zrgrep): Bind grep-highlight-matches
21672         around the rgrep call (bug#20728).
21674         Put "--color" before the other options in grep-command
21675         * lisp/progmodes/grep.el (grep-compute-defaults): Put "--color"
21676         before the other options in grep-command (bug#20912).
21678         Add --color Grep option to the command dynamically
21679         * lisp/progmodes/grep.el (grep-template, grep-find-template):
21680         Update the description for <C>.  (Bug#20728)
21681         (grep-compute-defaults): Don't add the --color option to
21682         grep-options.  Only add it to grep-command.
21683         (grep-expand-keywords): Expand the env value opts into <C>.
21684         (grep-expand-template): Replace cf in the env with the opts list,
21685         that can include -i and --color.
21686         * lisp/progmodes/xref.el (xref-collect-matches): Do not remove
21687         "--color=always" from the template, because we don't have to.
21689 2015-06-27  Paul Eggert  <eggert@cs.ucla.edu>
21691         cl-extra fixes for most-negative-fixnum
21692         * lisp/emacs-lisp/cl-extra.el (cl-gcd, cl-lcm, cl-random):
21693         Don't mishandle an argument equal to most-negative-fixnum,
21694         whose absolute value equals itself.
21695         (cl-gcd, cl-lcm): Use dolist rather than doing it by hand.
21697         Initialize cl--gensym-counter to 0
21698         Previously it was initialized to a random value, which made it
21699         harder to reproduce earlier Emacs runs.  The need for a random
21700         value went away when Emacs introduced and used the #: syntax for
21701         uninterned symbols (Bug#20862).
21702         * doc/misc/cl.texi (Creating Symbols, Common Lisp Compatibility):
21703         Document that cl--gensym-counter now starts with 0.
21704         * lisp/emacs-lisp/cl-lib.el (cl--gensym-counter): Remove.
21705         (cl--random-time): Move to near only remaining use.
21706         * lisp/emacs-lisp/cl-macs.el (cl--gensym-counter): Initialize to 0.
21708         Improve docstring for macroexp-let2
21709         * lisp/emacs-lisp/macroexp.el (macroexp-let2):
21710         Improve as per suggestion by RMS in:
21711         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00621.html
21712         Also, rename args to match new doc string.
21714 2015-06-27  Eli Zaretskii  <eliz@gnu.org>
21716         Fix VC test suite on MS-Windows
21717         * lisp/vc/vc-svn.el (vc-svn-create-repo): Make sure the file: URL
21718         always starts with 3 slashes after the colon.
21719         * test/automated/vc-tests.el (vc-test--create-repo-function): Use
21720         'w32-application-type' to invoke CVS on MS-Windows with properly
21721         formatted CVSROOT directory name.
21723         Add a new function w32-application-type
21724         * src/w32proc.c (Fw32_application_type): New function.
21726         Avoid error in TLS connections due to incorrect format
21727         * src/gnutls.c (Fgnutls_boot): Use the %x conversion specifier in
21728         the call to 'error', instead of the unsupported %u.  Reported by
21729         lo2net <fangtao0901@gmail.com>.  (Bug#20908)
21731 2015-06-26  Artur Malabarba  <bruce.connor.am@gmail.com>
21733         * lisp/replace.el (replace-search): Fix regexp case (bug#20901).
21735 2015-06-26  Leo Liu  <sdl.web@gmail.com>
21737         * lisp/emacs-lisp/cl-indent.el: Fix indentation for
21738         `with-output-to-string' in elisp.
21740         Revert "lisp/emacs-lisp/cl-indent.el: Fix indent of
21741         with-output-to-string".
21742         This reverts commit 659199f2ca5f283fb246faa78a244e5ca25f53dd.
21744 2015-06-26  Eli Zaretskii  <eliz@gnu.org>
21746         Minor corrections in ELisp manual
21747         * doc/lispref/nonascii.texi (Character Properties): Correct
21748         inaccuracies in description of values of the Unicode properties.
21750         Fix invisible mouse pointers on Windows.
21751         * src/w32fns.c: Include windowsx.h.
21752         (w32_wnd_proc): If the mouse moved and the mouse pointer is
21753         invisible, make it visible again even when the main (Lisp)
21754         thread is busy.
21755         * src/w32term.c (w32_toggle_invisible_pointer): Rather then
21756         garbaging the frame have the input thread call SetCursor.
21758 2015-06-26  Martin Rudalics  <rudalics@gmx.at>
21760         Provide invisible mouse pointers on Windows (Bug#6105) (Bug#12922)
21761         * src/w32fns.c (w32_wnd_proc): Handle f->pointer_invisible
21762         for WM_SETCURSOR and WM_EMACS_SETCURSOR cases.
21763         * src/w32term.c (w32_hide_hourglass): Handle f->pointer_invisible.
21764         (w32_toggle_invisible_pointer): New function.
21765         (w32_create_terminal): Add w32_toggle_invisible_pointer as
21766         toggle_invisible_pointer_hook for this terminal.
21768 2015-06-25  Xue Fuqiao  <xfq.free@gmail.com>
21770         Doc fix for deletion commands
21771         'delete-char' does not respect the value of 'delete-active-region'.
21772         * doc/emacs/killing.texi (Deletion):
21773         Fix documentation for some single-char deletion commands.
21775         * doc/emacs/help.texi (Apropos):
21776         Improve documentation of 'apropos-do-all'.
21778         * doc/emacs/help.texi (Help Summary):
21779         Improve documentation of 'describe-mode'.
21781 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
21783         Fix submake dependency bug with .h files
21784         * src/Makefile.in ($(libsrc)/make-docfile$(EXEEXT)):
21785         Depend on $(lib)/libgnu.a, so that we build $(lib)/*/*.h
21786         before the submake in $(libsrc) would spin off a subsubmake
21787         for $(lib) in parallel with our submake for $(lib) (Bug#20894).
21789 2015-06-25  Artur Malabarba  <bruce.connor.am@gmail.com>
21791         * lisp/character-fold.el (character-fold-table): Reuse `table'.
21793 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
21795         Translate undisplayable ‘ to `
21796         * doc/lispref/help.texi (Keys in Documentation):
21797         * lisp/international/mule-cmds.el (set-locale-environment):
21798         * lisp/term/w32console.el (terminal-init-w32console):
21799         * src/doc.c (Fsubstitute_command_keys, Vhelp_quote_translation):
21800         If ‘ is not displayable, transliterate it to `, not to '.  See:
21801         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00542.html
21803         Fix C99 incompatibilities in Cairo code
21804         * src/image.c (xpm_load) [USE_CAIRO]:
21805         * src/xterm.c (x_cr_accumulate_data) [USE_CAIRO]:
21806         Fix pointer signedness problem.
21808 2015-06-25  Oleh Krehel  <ohwoeowho@gmail.com>
21810         lisp/emacs-lisp/cl-indent.el: Fix indent of with-output-to-string
21811         * lisp/emacs-lisp/cl-indent.el (common-lisp-indent-function):
21812         `with-output-to-string' should have the same indent as `progn'.
21813         This is in line with the declaration of `with-output-to-string'.
21815 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
21817         Get ‘./configure; make -C src emacs’ to work
21818         Without this fix, lib/fcntl.h isn't built in time (Bug#20894).
21819         * lib-src/Makefile.in (../lib/libgnu.a):
21820         * src/Makefile.in ($(lib)/libgnu.a): Build all, not libgnu.a.
21822 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
21824         Fix GC bugs --with-wide-int and Qnil == 0
21825         Use the same alignment for the !USE_LSB_TAG case as for the
21826         more-typical USE_LSB_TAG case.  The attempt to support arbitrary
21827         alignments with !USE_LSB_TAG had subtle bugs in garbage collection
21828         once we changed the representation of symbols so that Qnil == 0.
21829         Problem reported by Eli Zaretskii (Bug#20862).
21830         * src/alloc.c (XMALLOC_HEADER_ALIGNMENT) [XMALLOC_OVERRUN_CHECK]:
21831         * src/alloc.c (vector_alignment, union aligned_Lisp_Symbol)
21832         (union aligned_Lisp_Misc, maybe_lisp_pointer, pure_alloc):
21833         Use same alignment for !USE_LSB_TAG as for USE_LSB_TAG.
21834         * src/alloc.c (POINTERS_MIGHT_HIDE_IN_OBJECTS): Remove.
21835         This optimization in the !USE_LSB_TAG case is no longer valid when
21836         symbols are represented via offsets.  Change the only use to
21837         assume that pointers might hide in objects.
21838         * src/lisp.h (alignas) [!USE_LSB_TAG]:
21839         Require support in this case, too.
21840         (TAG_SYMOFFSET, XSYMBOL) [!USE_LSB_TAG]: Do not shift the offset.
21841         This is OK, because the !USE_LSB_TAG case now applies only when
21842         Lisp_Object is wider than void *, so there's no longer any need
21843         to shift the offset.  Not shifting the offset means that
21844         symbol representations have the same alignment as pointers,
21845         which the GC assumes.
21847 2015-06-24  Xue Fuqiao  <xfq.free@gmail.com>
21849         * doc/lispintro/emacs-lisp-intro.texi (Data types):
21850         Improve documentation of 'substring'.
21852 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
21854         * lisp/character-fold.el (character-fold-table): Fix table generation.
21856 2015-06-24  Glenn Morris  <rgm@gnu.org>
21858         * nextstep/Makefile.in (all): Make it the first target.
21859         (../src/emacs${EXEEXT}): Add rule for making it.
21861 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
21863         * etc/NEWS: Fix mention to old function name.
21865         * lisp/character-fold.el: New file (Bug#20887)
21866         (character-fold-to-regexp): New function.
21867         * lisp/replace.el (replace-search): Check value of
21868         `character-fold-search'.
21869         * lisp/isearch.el: Move character-folding code to
21870         character-fold.el
21871         (isearch-toggle-character-fold): New command.
21872         (isearch-mode-map): Bind it to "\M-sf".
21873         (isearch-mode): Check value of `character-fold-search'.
21875 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
21877         lisp/subr.el (remove-from-invisibility-spec): Handle the t case
21878         * lisp/subr.el (remove-from-invisibility-spec): Make sure `element'
21879         is visible even if it's not yet in buffer-invisibility-spec (bug#20468).
21881         * lisp/progmodes/xref.el (xref-location-group, xref-location-marker)
21882         (xref--insert-xrefs, xref-collect-references): Avoid init-args in oref.
21884 2015-06-24  Glenn Morris  <rgm@gnu.org>
21886         * Makefile.in (install-arch-dep): Don't set sticky bit on the binary.
21888 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
21890         lisp/gnus/nnmaildir.el: Silence lexical warnings
21891         * lisp/gnus/nnmaildir.el (nnmaildir--prepare): Use a more
21892         functional style.
21893         (nnmaildir--update-nov): Remove unused var `numdir'.
21894         (nnmaildir-request-type, nnmaildir--scan, nnmaildir-request-newgroups)
21895         (nnmaildir-request-group, nnmaildir-request-create-group)
21896         (nnmaildir-request-post, nnmaildir-request-move-article)
21897         (nnmaildir-request-accept-article, nnmaildir-active-number):
21898         Mark unused args.
21899         (nnmaildir-get-new-mail, nnmaildir-group-alist)
21900         (nnmaildir-active-file): Declare.
21901         (nnmaildir-request-scan): Remove unused vars `group' and `grp-dir'.
21902         (nnmaildir-request-update-info): Remove unused vars `dotfile', `num',
21903         `mark', `end', `new-mark', and `mark-sym'.
21904         (nnmaildir-retrieve-headers): Remove unused args `srv-dir', `dir',
21905         `nlist2'.
21906         (nnmaildir-request-expire-articles):
21907         Remove unused vars `article', `stop' and `nlist2'.
21908         (nnmaildir-request-set-mark): Remove unused vars `begin', `article' and
21909         `end'.  Use nnmaildir--article when dyn-binding is needed.
21910         Give the value directly in the `let' for `del-mark', `del-action',
21911         `add-action', and `set-action'.  Don't use `add-to-list' on a local var.
21912         (nnmaildir-close-server): Declare those local vars that need to be
21913         dyn-bound.
21915 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
21917         * src/keyboard.h (kbd_buffer_store_event_hold): Remove unused local.
21919         Port selection info fix to clang
21920         * src/keyboard.h (kbd_buffer_store_event_hold):
21921         Don't assume C11 semantics for alignof (Bug#20756).
21923         Fix bug that munged selection info
21924         On some optimizing C compilers, copying a structure did not
21925         copy the padding bytes between elements, and the type punning
21926         between struct input_data and struct selection_input_data did
21927         not work.  Change the C code to use a proper union type instead.
21928         Problem reported by YAMAMOTO Mitsuharu (Bug#20756).
21929         * src/keyboard.c (kbd_buffer, kbd_fetch_ptr, kbd_store_ptr)
21930         (readable_events, discard_mouse_events, kbd_buffer_events_waiting)
21931         (kbd_buffer_get_event, process_special_events, stuff_buffered_input)
21932         (mark_kboards):
21933         Use union buffered_input_event, not struct input_event.
21934         (clear_event, deliver_input_available_signal, process_special_events):
21935         Remove unnecessary forward decls.
21936         (kbd_buffer_store_buffered_event): New function, mostly just the
21937         old kbd_buffer_store_event_hold, except its argument is of type
21938         union buffered_input_event, not struct input_event.
21939         (kbd_buffer_unget_event): Define only if HAVE_X11, since it's
21940         not needed otherwise.  Argument is now of type
21941         struct selection_input_event *, not struct input_event *.
21942         All callers changed.
21943         (clear_event): Arg is now of type union buffered_input_event *,
21944         not struct input_event *.  All callers changed.
21945         * src/keyboard.h [HAVE_X11]: Include "xterm.h".
21946         (union buffered_input_event): New type.
21947         (kbd_buffer_store_event_hold): Now an inline function,
21948         defined here.
21949         * src/termhooks.h (EVENT_KIND_WIDTH): New constant.
21950         (struct input_event): Use it.
21951         * src/xselect.c (struct selection_event_queue):
21952         Make elements be of type struct selection_input_event,
21953         not struct input_event.
21954         (selection_input_event_equal): New static function.
21955         (x_queue_event): Use it.
21956         (x_queue_event, x_decline_selection_request)
21957         (x_selection_current_request, x_reply_selection_request)
21958         (x_handle_selection_request, x_handle_selection_clear)
21959         (x_handle_selection_event): Use struct selection_input_event,
21960         not struct input_event.  All callers changed.
21961         (x_convert_selection): Omit unused first arg.  All callers changed.
21962         (Fx_disown_selection_internal): Omit unnecessary union.
21963         * src/xterm.c (handle_one_xevent): Use new union buffered_input_event
21964         rather than rolling our own equivalent.  Prefer sie.kind when
21965         setting up that kind of structure.
21966         Call kbd_buffer_store_buffered_event, not kbd_buffer_store_event_hold.
21967         * src/xterm.h (struct selection_input_event: Use EVENT_KIND_WIDTH.
21968         (SELECTION_EVENT_DISPLAY, SELECTION_EVENT_DPYINFO)
21969         (SELECTION_EVENT_REQUESTOR, SELECTION_EVENT_SELECTION)
21970         (SELECTION_EVENT_TARGET, SELECTION_EVENT_PROPERTY)
21971         (SELECTION_EVENT_TIME, x_handle_selection_event):
21972         Arg is now of type struct selection_input_event *)
21973         not struct input_event *.  All callers changed.
21975 2015-06-23  Glenn Morris  <rgm@gnu.org>
21977         * Makefile.in (install-arch-dep): Simplify with Make conditionals.
21979 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
21981         * lisp/isearch.el: Fold many unicode characters to ASCII.
21982         (isearch-character-fold-search, isearch--character-fold-extras)
21983         (isearch--character-fold-table): New variable.
21984         (isearch--character-folded-regexp): New function.
21985         (isearch-search-fun-default): Use them.
21986         * lisp/replace.el (replace-character-fold): New variable.
21987         (replace-search): Use it.
21988         * etc/NEWS: Document it.
21990 2015-06-23  Glenn Morris  <rgm@gnu.org>
21992         Check for an input event before showing a dialog box.  (Bug#20813)
21993         * lisp/subr.el (y-or-n-p):
21994         * src/fns.c (Fyes_or_no_p): Check last-input-event as well
21995         as last-nonmenu-event.
21997 2015-06-23  Jürgen Hartmann  <juergen_hartman_@hotmail.com>  (tiny change)
21999         Respect ‘switch-to-visible-buffer’ more rigidly.  (Bug#20861)
22000         * lisp/window.el (switch-to-visible-buffer): Doc adjustment.
22001         (switch-to-prev-buffer, switch-to-next-buffer): Respect
22002         switch-to-visible-buffer independent of the windows history.
22004 2015-06-23  Paul Eggert  <eggert@cs.ucla.edu>
22006         * src/keyboard.c (last_timer_event): Remove unused var.
22008 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
22010         * test/automated/package-test.el (package-test-update-listing):
22011         Fix test.
22013 2015-06-23  Glenn Morris  <rgm@gnu.org>
22015         Revert 2014-06-25 nextstep/Makefile change.
22016         * nextstep/Makefile.in (${ns_appbindir}): Remove rule.
22017         (${ns_appbindir}/Emacs, links): Create ns_appbindir in the rule,
22018         not as an order-only prerequisite.
22020         * configure.ac (--with-ns): Enable by default on OS X.
22022 2015-06-23  Leo Liu  <sdl.web@gmail.com>
22024         Fix shell-for/backward-command to exclude spaces
22025         * lisp/shell.el (shell-forward-command, shell-backward-command):
22026           Handle the 'move case from re-search-forward/backward.
22027           fixes debbugs:20873
22029 2015-06-22  Juri Linkov  <juri@linkov.net>
22031         * lisp/replace.el (query-replace-read-from): Add separator to
22032         the local binding of text-property-default-nonsticky.  (Bug#20690)
22034         * lisp/simple.el (shell-command-on-region): Replace 'error' with 'user-error'.
22035         (Bug#20785)
22037 2015-06-22  Ken Brown  <kbrown@cornell.edu>
22039         Enable CPU profiling on Cygwin
22040         * src/syssignal.h [CYGWIN] (PROFILER_CPU_SUPPORT): Revert previous
22041         change that undefined this.
22042         (SIGEV_SIGNAL): Ensure that this is defined as a macro.
22043         * src/profiler.c [CYGWIN] (timer_getoverrun): Define as a macro on
22044           Cygwin.
22046         Improve diagnostics of profiler-cpu-start
22047         * src/profiler.c (setup_cpu_timer): Change return type to 'int';
22048         return -1 if the sampling interval is invalid.
22049         (Fprofiler_cpu_start): Improve error message if 'setup_cpu_timer'
22050         fails.  (Bug#20843)
22052 2015-06-22  Artur Malabarba  <bruce.connor.am@gmail.com>
22054         * lisp/emacs-lisp/package.el: Exclude packages by name.
22055         (package-hidden-regexps): New variable.
22056         (package-menu--refresh): Use it.
22057         (package-menu-hide-package): New command.
22059         * lisp/emacs-lisp/package.el: Rename hide-obsolete to toggle-hiding.
22061 2015-06-22  Eli Zaretskii  <eliz@gnu.org>
22063         Fix debug-timer-check on systems without HAVE_TIMERFD
22064         * src/atimer.c (Fdebug_timer_check) [!HAVE_TIMERFD]: Actively run
22065         the expired timers, since wait_reading_process_output doesn't.
22066         (debug_timer_callback): Enlarge the tolerance to 20 msec.
22068         Fix RCS crashes in vc-test
22069         * lisp/vc/vc-rcs.el (vc-rcs-register): Avoid crashes with some old
22070         ports of 'ci' on MS-Windows by always passing the -t- switch.
22072 2015-06-22  Glenn Morris  <rgm@gnu.org>
22074         * doc/emacs/package.texi (Packages):
22075         * doc/emacs/trouble.texi (Known Problems): Remove faq cross-references.
22077         * doc/misc/efaq-w32.texi (Downloading): Copyedits.  (Bug#20851)
22079 2015-06-22  Paul Eggert  <eggert@cs.ucla.edu>
22081         Port tests to help-quote-translation
22082         * test/automated/ert-x-tests.el (ert-test-describe-test):
22083         * test/automated/package-test.el (package-test-describe-package)
22084         (package-test-signed): Allow straight quotes, too.
22086 2015-06-22  Dmitry Gutov  <dgutov@yandex.ru>
22088         Make find-function-on-key use the current window
22089         * lisp/emacs-lisp/find-func.el (find-function-on-key-do-it):
22090         Extract from `find-function-on-key', add a second argument.
22091         (find-function-on-key): Use it (bug#19679).
22092         (find-function-on-key-other-window)
22093         (find-function-on-key-other-frame): New commands.
22095 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
22097         Revert "Define `map-elt' as a generalized variable"
22098         This reverts commit 8b6d82d3ca86f76ed964063b3941a7c6ab0bf1c6.
22100 2015-06-21  Ken Brown  <kbrown@cornell.edu>
22102         Drop support for CPU profiling on Cygwin
22103         * src/syssignal.h (PROFILER_CPU_SUPPORT): Don't define on Cygwin.
22104         (Bug#20843)
22106 2015-06-21  Paul Eggert  <eggert@cs.ucla.edu>
22108         Fix some “nested” quoting confusion in doc strings
22109         * lisp/emacs-lisp/advice.el (ad-map-arglists):
22110         * lisp/kermit.el (kermit-clean-on):
22111         * lisp/mh-e/mh-comp.el (mh-repl-group-formfile):
22112         * src/keyboard.c (Frecursive_edit):
22113         Use curved quotes when quoting text containing apostrophe,
22114         so that the apostrophe isn't curved in the output.
22116 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
22118         Define `map-elt' as a generalized variable
22119         * lisp/emacs-lisp/map.el (map-elt): Define a gv-expander.
22120         * lisp/emacs-lisp/map.el (map--dispatch): Tighten the code.
22121         * lisp/emacs-lisp/map.el (map-put): Redefine it as a function using a
22122         `setf' with `map-elt'.
22123         * test/automated/map-tests.el: Comment out `test-map-put-literal'.
22125 2015-06-21  Michael Albinus  <michael.albinus@gmx.de>
22127         Improve error handling in tramp-adb.el
22128         * lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy):
22129         Improve error handling.
22131 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
22133         Reuse `alist-get' in map.el
22134         * lisp/emacs-lisp/map.el (map-elt): Use `alist-get' to retrieve alist
22135         elements.
22137 2015-06-21  Eli Zaretskii  <eliz@gnu.org>
22139         Fix bytecomp-tests--warnings when $TMPDIR has a long name
22140         * test/automated/bytecomp-tests.el (bytecomp-tests--warnings):
22141         Allow the warning to begin on the 3rd, not only 2nd line, which
22142         happens if temporary-file-directory has a very long name.
22144         Expect 2 icalendar tests to fail on MS-Windows
22145         * test/automated/icalendar-tests.el (icalendar-import-with-timezone)
22146         (icalendar-real-world): Make them expected failures on MS-Windows.
22148 2015-06-20  Paul Eggert  <eggert@cs.ucla.edu>
22150         Improve port of settings UI to older displays
22151         * lisp/cus-start.el (standard): Don't assume curved quotes are
22152         easily distinguishable when users are tinkering with a setting
22153         that affects how curved quotes are generated.
22155         Fix quoting in electric-quote-mode doc string
22156         * lisp/electric.el (electric-quote-mode): Fix quoting.
22157         This is a fallout from the recent change introducing
22158         ‘help-quote-translation’.
22160         Spelling fix
22162         * doc/misc/texinfo.tex, lib/set-permissions.c: Merge from gnulib.
22164         * src/doc.c (syms_of_doc): Remove unused symbols.
22166 2015-06-20  Martin Rudalics  <rudalics@gmx.at>
22168         * lisp/window.el (window-state-put): Undedicate target window
22169         before putting STATE into it.  (Bug#20848)
22171 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
22173         Merge from origin/emacs-24
22174         a5e6f33 Fixes: debbugs:20832
22175         b9f02cf Fixes: debbugs:20832
22177 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
22179         Fix file-in-directory-p when the directory is UNC
22180         * lisp/files.el (file-in-directory-p): Support files and
22181         directories that begin with "//".  (Bug#20844)
22183 2015-06-19  Stephen Berman  <stephen.berman@gmx.net>
22185         * lisp/calendar/todo-mode.el (todo-show): Don't visit todo file
22186         in the minibuffer.  (Bug#20832)
22188 2015-06-19  Nicolas Richard  <youngfrog@members.fsf.org>
22190         * lisp/calendar/todo-mode.el (todo-show): Signal an error if buffer
22191         for adding new todo file is empty but modified.  (Bug#20832)
22193 2015-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
22195         (filepos-to-bufferpos): Further tweaks to the utf-16 code
22196         * lisp/international/mule-util.el (filepos-to-bufferpos):
22197         Fix typo.  Move non-exact check to the utf-16 branch (the only one
22198         affected).  Don't use byte-to-position for the utf-16 case.
22200 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
22202         Minor fixes in filepos-to-bufferpos
22203         * lisp/international/mule-util.el (filepos-to-bufferpos): Remove
22204         test for utf-8-emacs.  Exempt single-byte encodings from the
22205         'use-exact' path when QUALITY is 'exact'.  Test UTF-16 encodings
22206         for BOM before subtracting 2 bytes.  Use 'identity' when adjusting
22207         UTF-16 encoded files for CR-LF EOLs.
22209 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
22211         Improve the optional translation of quotes
22212         Fix several problems with the recently-added custom variable
22213         help-quote-translation where the code would quote inconsistently
22214         in help buffers.  Add support for quoting 'like this', which
22215         is common in other GNU programs in ASCII environments.  Change
22216         help-quote-translation to use more mnemonic values: values are now the
22217         initial quoting char, e.g., (setq help-quote-translation ?`) gets the
22218         traditional Emacs help-buffer quoting style `like this'.  Change the
22219         default behavior of substitute-command-keys to match what's done in
22220         set-locale-environment, i.e., quote ‘like this’ if displayable,
22221         'like this' otherwise.
22222         * doc/lispref/help.texi (Keys in Documentation): Document
22223         new behavior of substitute-command-keys, and document
22224         help-quote-translation.
22225         * doc/lispref/tips.texi (Documentation Tips):
22226         Mention the effect of help-quote-translation.
22227         * etc/NEWS: Mention new behavior of substitute-command-keys,
22228         and merge help-quote-translation news into it.
22229         When talking about doc strings, mention new ways to type quotes.
22230         * lisp/cedet/mode-local.el (overload-docstring-extension):
22231         Revert my recent change to this function, which shouldn't be
22232         needed as the result is a doc string.
22233         * lisp/cedet/mode-local.el (mode-local-print-binding)
22234         (mode-local-describe-bindings-2):
22235         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
22236         * lisp/cus-theme.el (describe-theme-1):
22237         * lisp/descr-text.el (describe-text-properties-1, describe-char):
22238         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
22239         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
22240         (eieio-help-constructor):
22241         * lisp/emacs-lisp/package.el (describe-package-1):
22242         * lisp/faces.el (describe-face):
22243         * lisp/help-fns.el (help-fns--key-bindings)
22244         (help-fns--compiler-macro, help-fns--parent-mode)
22245         (help-fns--obsolete, help-fns--interactive-only)
22246         (describe-function-1, describe-variable):
22247         * lisp/help.el (describe-mode):
22248         Use substitute-command-keys to ensure a more-consistent quoting
22249         style in help buffers.
22250         * lisp/cus-start.el (standard):
22251         Document new help-quote-translation behavior.
22252         * lisp/emacs-lisp/lisp-mode.el (lisp-fdefs):
22253         * lisp/help-mode.el (help-xref-symbol-regexp, help-xref-info-regexp)
22254         (help-xref-url-regexp):
22255         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
22256         * lisp/wid-edit.el (widget-documentation-link-regexp):
22257         Also match 'foo', in case we're in a help buffer generated when
22258         help-quote-translation is ?'.
22259         * src/doc.c: Include disptab.h, for DISP_CHAR_VECTOR.
22260         (LEFT_SINGLE_QUOTATION_MARK, uLSQM0, uLSQM1, uLSQM2, uRSQM0)
22261         (uRSQM1, uRSQM2, LSQM, RSQM): New constants.
22262         (Fsubstitute_command_keys): Document and implement new behavior.
22263         (Vhelp_quote_translation): Document new behavior.
22265 2015-06-18  Glenn Morris  <rgm@gnu.org>
22267         * lisp/cus-start.el (help-quote-translation): Add :version.
22269         * src/doc.c (Fsubstitute_command_keys): Make previous change compile.
22271 2015-06-18  Alan Mackenzie  <acm@muc.de>
22273         Make translation of quotes to curly in doc strings optional.
22274         * src/doc.c (traditional, prefer-unicode): New symbols.
22275         (help-quote-translation): New variable.
22276         (Fsubstitute_command_keys): Make translation of quotes dependent on
22277         `help-quote-translation'; also translate curly quotes back to ASCII
22278         ones.
22279         * lisp/cus-start.el (top-level): Add a customization entry for
22280         `help-quote-translation'.
22282 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
22284         * lisp/emacs-lisp/package.el: Don't always propagate async errors
22285         (package--with-work-buffer-async): Only propagate the error if the
22286         callback returns non-nil.
22287         (package--download-one-archive): Return nil on the signature
22288         checking callback if we accept unsigned.
22289         (package--download-and-read-archives): Return non-nil on the
22290         archive download callback.
22292 2015-06-18  Martin Rudalics  <rudalics@gmx.at>
22294         Set image_cache_refcount before x_default_parameter calls.  (Bug#20802)
22295         * src/nsfns.m (Fx_create_frame):
22296         * src/xfns.c (Fx_create_frame, x_create_tip_frame): Move setting
22297         image_cache_refcount before first x_default_parameter call.
22299 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
22301         Improve and extend filepos-to-bufferpos
22302         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
22303         Don't barf if F returns nil for some argument.
22304         (filepos-to-bufferpos): Expand to support UTF-16 and not assume
22305         that every encoding of type 'charset' is single-byte.
22307 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
22309         * lisp/emacs-lisp/package.el (package-menu--perform-transaction):
22310         Properly delete packages.  (Bug#20836)
22312 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
22314         Update data files from just-released Unicode 8.0
22315         * etc/NEWS: Update wording since Unicode 8.0 is no longer in draft
22316         status.
22317         * test/BidiCharacterTest.txt: Update from Unicode 8.0.
22318         * admin/unidata/BidiMirroring.txt:
22319         * admin/unidata/BidiBrackets.txt:
22320         * admin/unidata/UnicodeData.txt: Update from Unicode 8.0.
22322 2015-06-18  Paul Eggert  <eggert@cs.ucla.edu>
22324         Document curved quotes a bit better
22325         * doc/emacs/basic.texi (Inserting Text):
22326         Mention C-x 8.  Change example to use curved quote rather
22327         than infinity, as this lets us give more ways to do it.
22328         * doc/emacs/mule.texi (International Chars): Mention C-x 8 shortcuts
22329         and quotation marks.
22330         * doc/emacs/text.texi (Quotation Marks):
22331         * doc/lispref/tips.texi (Documentation Tips):
22332         Add "curly quotes" and "curved quotes" to the index.
22333         * doc/emacs/text.texi (Quotation Marks):
22334         Give the C-x 8 shorthands for curved quotes.
22335         Cross-reference to "Quotation Marks".
22337 2015-06-17  Daiki Ueno  <ueno@gnu.org>
22339         Add pinentry.el for better GnuPG integration
22340         * lisp/pinentry.el: New file.
22341         * etc/NEWS: Add entry about pinentry.el.
22342         * lisp/epg.el (epg--start): Set INSIDE_EMACS envvar.
22343         (Bug#20550)
22345 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
22347         * lisp/emacs-lisp/package.el: Slightly better error reporting.
22349 2015-06-17  Stefan Monnier  <monnier@iro.umontreal.ca>
22351         (define-minor-mode): Use setq-default for :global minor modes
22352         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
22353         Use setq-default for :global minor modes (bug#20712).
22355 2015-06-17  Eli Zaretskii  <eliz@gnu.org>
22357         Avoid infloop in redisplay with tall images
22358         * src/xdisp.c (try_scrolling): Prevent an infloop when scrolling
22359         down near ZV.  (Bug#20808)
22360         Call bidi_unshelve_cache to avoid memory leaks.  Use IT_CHARPOS
22361         instead of CHARPOS.
22363 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
22365         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
22366         Fix error reporting.
22368         * lisp/emacs-lisp/let-alist.el: Move to lisp/emacs-lisp/let-alist.el
22370         * lisp/emacs-lisp/package.el: Revert buffer after any operation
22371         Call `package-menu--post-refresh' after any operation that changes
22372         the package database (`package-install' and `package-delete').  To
22373         avoid performance issues in large transactions, these functions
22374         add `post-refresh' to `post-command-hook' instead of calling it
22375         immediately.
22376         (package-menu--mark-or-notify-upgrades): New function.
22377         (list-packages): Add it to `package--post-download-archives-hook'.
22378         (package-menu--post-refresh): Lose the upgrade-checking code, add
22379         code to remove itself from `post-command-hook'.
22380         (package-install, package-delete): Add it to `post-command-hook'.
22381         (package-menu-execute): Don't call `package-menu--post-refresh'.
22383 2015-06-17  Stephen Leake  <stephen_leake@stephe-leake.org>
22385         Add missing function xref-location-group for elisp-mode.
22386         * lisp/progmodes/elisp-mode.el: Add missing function xref-location-group.
22388 2015-06-17  Wolfgang Jenkner  <wjenkner@inode.at>
22390         * src/editfns.c (Fbyte_to_position): Fix bytepos not at char boundary.
22391         The behavior now matches the description in the manual.  (Bug#20783)
22393 2015-06-17  Xue Fuqiao  <xfq.free@gmail.com>
22395         * etc/tutorials/TUTORIAL.cn: Update; synchronize with TUTORIAL.
22397 2015-06-17  Glenn Morris  <rgm@gnu.org>
22399         Generate char-script-table from Unicode source.  (Bug#20789)
22400         * admin/unidata/Makefile.in (AWK): New, set by configure.
22401         (all): Add charscript.el.
22402         (blocks): New variable.
22403         (charscript.el, ${unidir}/charscript.el): New targets.
22404         (extraclean): Also remove generated charscript.el.
22405         * admin/unidata/blocks.awk: New script.
22406         * admin/unidata/Blocks.txt: New data file, from unicode.org.
22407         * lisp/international/characters.el: Load charscript.
22408         * src/Makefile.in (charscript): New variable.
22409         (${charscript}): New target.
22410         (${lispintdir}/characters.elc): Depend on charscript.elc.
22411         (temacs$(EXEEXT)): Depend on charscript.
22413         * lisp/international/characters.el (char-script-table): Tweak
22414         some ranges to better match the source.  (Bug#20789#17)
22416         Remove "no-byte-compile: t" from a few files.
22417         * lisp/obsolete/bruce.el, lisp/obsolete/keyswap.el:
22418         * lisp/obsolete/patcomp.el: No reason not to compile these.
22420 2015-06-16  Glenn Morris  <rgm@gnu.org>
22422         Fix some typos in copied Unicode data.  (Bug#20789)
22423         * lisp/international/characters.el (char-script-table):
22424         * lisp/international/fontset.el (script-representative-chars)
22425         (setup-default-fontset): Fix typos.
22427         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
22428         Don't print filename twice (it's in the prefix now).
22430         * lisp/emacs-lisp/pcase.el (pcase--u1): Revert earlier workaround.
22431         No longer needed.
22433         Address a compilation warning.
22434         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defalias):
22435         Replace 't' with '_' in pcase.
22437         Address some check-declare warnings.
22438         * lisp/simple.el (tabulated-list-print):
22439         * lisp/progmodes/elisp-mode.el (xref-collect-matches):
22440         * lisp/term/ns-win.el (ns-selection-owner-p, ns-selection-exists-p)
22441         (ns-get-selection): Update declarations.
22443         Address some compilation warnings.
22444         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
22445         * lisp/vc/vc-git.el (vc-git-file-type-as-string):
22446         Replace 't' with '_' in pcase.
22448         Address some compilation warnings.
22449         * lisp/face-remap.el (text-scale-adjust):
22450         * lisp/menu-bar.el (popup-menu-normalize-position):
22451         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand):
22452         * lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-warn):
22453         * lisp/emacs-lisp/generator.el (cps--transform-1):
22454         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all):
22455         * lisp/obsolete/vc-arch.el (vc-arch-mode-line-string):
22456         * lisp/progmodes/octave.el (octave-goto-function-definition)
22457         (octave-find-definition-default-filename):
22458         Replace 't' with '_' in pcase.
22460         * lisp/emacs-lisp/pcase.el (pcase--u1):
22461         Paper-over today's bootstrap failure.
22463 2015-06-16  Nicolas Petton  <nicolas@petton.fr>
22465         * lisp/emacs-lisp/seq.el: Fix a byte-compiler warnings related to pcase.
22467         * lisp/emacs-lisp/map.el (map-into): Fix a byte-compiler warning.
22469         Better confirmation message in `find-alternate-file' (Bug#20830)
22470         * lisp/files.el (find-alternate-file'): Improve the confirmation
22471         message to show the buffer name.
22473         Better docstring for null.  (Bug#20815)
22474         * src/data.c (null): Improves the docstring, saying what null returns
22475         when OBJECT is non-nil.
22477 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
22479         * lisp/net/newst-treeview.el: Use lexical-binding.
22481         (filepos-to-bufferpos): Add missing cases.  Make sure it terminates.
22482         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
22483         New auxiliary function, extracted from filepos-to-bufferpos.
22484         Make sure it terminates.
22485         (filepos-to-bufferpos): Use it to fix the latin-1-dos case.
22486         Add support for the `exact' quality.
22488 2015-06-16  Cédric Chépied  <cedric.chepied@gmail.com>
22490         Identify feeds in newsticker treeview with :nt-feed property
22491         * lisp/net/newst-treeview.el:
22492         (newsticker--treeview-nodes-eq): Use property :nt-feed instead of :tag.
22494 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
22496         * lisp/emacs-lisp/pcase.el: Improve docs and error handling.
22497         (pcase--self-quoting-p): Floats aren't self-quoting.
22498         (pcase): Tweak docstring.
22499         (pcase--u1): Deprecate the t pattern.  Improve error detection for
22500         the nil pattern.
22501         (\`): Tweak docstring.  Signal an error for unrecognized cases.
22502         (bug#20784)
22504 2015-06-16  Eli Zaretskii  <eliz@gnu.org>
22506         Fix infloop in filepos-to-bufferpos
22507         * lisp/international/mule-util.el (filepos-to-bufferpos): Fix EOL
22508         offset calculation, and make it conditional on the eol-type of the
22509         file's encoding.  (Bug#20825)
22511 2015-06-16  Martin Rudalics  <rudalics@gmx.at>
22513         Fix handling of image cache refcounts.  (Bug#20802)
22514         This backports Eli Zaretskii's solution of this problem for W32
22515         to X and NS.
22516         * src/nsfns.m (image_cache_refcount): Define unconditionally.
22517         (unwind_create_frame): If the image cache's reference count
22518         hasn't been updated yet, do that now.
22519         (Fx_create_frame): Set image_cache_refcount unconditionally.
22520         * src/xfns.c (image_cache_refcount): Define unconditionally.
22521         (unwind_create_frame): If the image cache's reference count
22522         hasn't been updated yet, do that now.
22523         (Fx_create_frame, x_create_tip_frame): Set image_cache_refcount
22524         unconditionally.
22525         * src/w32fns.c (image_cache_refcount): Make it a ptrdiff_t as on
22526         X and NS.
22528 2015-06-16  Nils Ackermann  <nils@ackermath.info>
22530         Improve reftex-label-regexps default value
22531         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Make
22532         keyvals label regexp more strict to better cope with unbalanced
22533         brackets common in math documents.
22535 2015-06-16  Glenn Morris  <rgm@gnu.org>
22537         * doc/emacs/calendar.texi (Format of Diary File):
22538         Move "nonmarking" from here...
22539         (Displaying the Diary): ... to here.
22541         * doc/emacs/calendar.texi (Format of Diary File, Displaying the Diary):
22542         Swap the order of these nodes.
22543         * doc/emacs/emacs.texi: Update detailed menu for the above change.
22545         * doc/emacs/calendar.texi (Specified Dates, Special Diary Entries):
22546         Update date of examples.
22547         (Diary, Format of Diary File): Move example from former to latter.
22548         Reduce duplication.
22550         No need for cp51932.el, eucjp-ms.el to not be compiled any more.
22551         * admin/charsets/cp51932.awk, admin/charsets/eucjp-ms.awk:
22552         Don't set no-byte-compile in the outputs.
22553         * lisp/loadup.el: Don't specify uncompiled cp51932, eucjp-ms.
22555 2015-06-15  Glenn Morris  <rgm@gnu.org>
22557         * lisp/calendar/calendar.el (diary-file): Use locate-user-emacs-file.
22558         * doc/emacs/calendar.texi (Diary, Format of Diary File):
22559         Update for above diary-file change.
22561         * lisp/macros.el (name-last-kbd-macro, kbd-macro-query)
22562         (apply-macro-to-region-lines): Use user-error.
22564         * lisp/textmodes/page-ext.el (add-new-page, pages-directory)
22565         (pages-directory-for-addresses): Doc fixes.
22567 2015-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
22569         * lisp/info.el: Cleanup bytepos/charpos issues
22570         * lisp/international/mule-util.el: Use lexical-binding.
22571         (filepos-to-bufferpos): New function.
22572         * lisp/info.el (Info-find-in-tag-table-1): Use 0-based file positions.
22573         (Info-find-node-2): Use filepos-to-bufferpos (bug#20704).
22574         (Info-read-subfile, Info-search): Use 0-based file positions.
22576         * lisp/progmodes/perl-mode.el: Refine handling of /re/ and y/abc/def/
22577         (perl--syntax-exp-intro-keywords): New var.
22578         (perl--syntax-exp-intro-regexp, perl-syntax-propertize-function): Use it.
22579         (bug#20800).
22581 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
22583         Fix quoting when making derived mode docstring
22584         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
22585         Nest regexp-quote inside format, not the reverse.
22586         Problem reported by Artur Malabarba in:
22587         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00206.html
22589 2015-06-15  Eli Zaretskii  <eliz@gnu.org>
22591         Fix current-iso639-language on MS-Windows
22592         * lisp/international/mule-cmds.el (set-locale-environment):
22593         Downcase the locale name before interning it.  This is so the
22594         'current-iso639-language' on MS-Windows matches the ':lang'
22595         property of font-spec objects.
22597         Limit Symbola usage some more
22598         * lisp/international/fontset.el (setup-default-fontset): Limit
22599         Symbol coverage of Currency Symbols to u+20B6..u+20CF.
22600         (Bug#20727)
22602 2015-06-15  Nicolas Petton  <nicolas@petton.fr>
22604         * lisp/emacs-lisp/map.el (map-let): Better docstring.
22606 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
22608         * test/automated/help-fns.el (abc\\\[universal-argument\]b\`c\'d\\e\"f):
22609         (help-fns-test-funny-names): Spelling fixes.
22611 2015-06-14  Glenn Morris  <rgm@gnu.org>
22613         * lisp/version.el (emacs-repository-version-git): Demote errors.
22614         Check result is a hash.
22616 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
22618         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
22619         Catch errors that happen before going async.  (Bug#20809)
22621 2015-06-14  Eli Zaretskii  <eliz@gnu.org>
22623         Another improvement of documentation of set-fontset-font
22624         * doc/lispref/display.texi (Fontsets): Say explicitly that
22625         CHARACTER can be a single codepoint.
22626         * src/fontset.c (Fset_fontset_font): Doc fix.
22628         Another improvement for symbol and punctuation characters
22629         * lisp/international/fontset.el (setup-default-fontset): Exclude
22630         from Symbola character ranges for symbols and punctuation covered
22631         well by popular Unicode fonts.  Prefer fixed-misc Unicode font, if
22632         installed and where its coverage of symbols and punctuation is
22633         known to be good.  (Bug#20727)
22635 2015-06-14  Christoph Wedler  <christoph.wedler@sap.com>
22637         Some generic support for multi-mode indentation.
22638         * lisp/progmodes/prog-mode.el (prog-indentation-context):
22639         New variable.
22640         (prog-first-column, prog-widen): New convenience functions.
22642 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
22644         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
22645         Don't assume that `tabulated-list-printer' will leave point at the
22646         end of the buffer.  (Bug#20810)
22648 2015-06-13  Glenn Morris  <rgm@gnu.org>
22650         Tweaks for getting repository version; a bit more like it was for bzr
22651         * lisp/version.el (emacs-repository-version-git)
22652         (emacs-repository--version-git-1): New functions,
22653         split from emacs-repository-get-version.
22654         (emacs-repository-get-version): Make the second argument meaningful.
22656         * lisp/startup.el (command-line-1): Inform if skipping relative
22657         file names due to deleted PWD.
22659         * src/xsmfns.c (x_session_initialize): Avoid libSM crash
22660         when starup directory is missing.  (Bug#18851)
22661         (errno.h): Include it.
22663 2015-06-13  Paul Eggert  <eggert@cs.ucla.edu>
22665         Better fix for documenting `X as "`X"
22666         Fix suggested by Stefan Monnier.
22667         * lisp/help-fns.el (help-fns--signature):
22668         Insert "`X", not "(\` X)", when documenting `X (Bug#20759).
22669         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
22670         Don't treat `X specially, as help-fns--signature now handles this.
22672 2015-06-13  Eli Zaretskii  <eliz@gnu.org>
22674         Improve the default fontset when Symbola is not installed
22675         * lisp/international/fontset.el (setup-default-fontset): Only
22676         prepend Symbola and FreeMono font specs for symbols and
22677         punctuation; do not replace the default spec for them.  This
22678         should have better results when Symbola/FreeMono are not
22679         installed.  (Bug#20727)
22681         Improve documentation of ':lang' in font specs
22682         * src/font.c (Ffont_spec): Doc fix: elaborate on the values and
22683         use of the ':lang' property of the font spec.
22684         * doc/emacs/frames.texi (Fonts): Document the language names that
22685         can be in the STYLE part of XLFD.
22686         * doc/lispref/display.texi (Low-Level Font): Document the ':lang'
22687         property.
22689         * nt/README: Don't advertise the (obsolescent) w32 FAQ.
22691         * nt/README.W32: Don't advertise the (obsolescent) w32 FAQ.
22693         Revert last change in fontset.el
22694         * lisp/international/fontset.el (setup-default-fontset): Revert
22695         the change "Configure Symbola font only if installed", since font
22696         search is evidently not yet set up when this function is called.
22697         (Bug#20727)
22699 2015-06-12  Glenn Morris  <rgm@gnu.org>
22701         Ensure early startup warnings are visible at the end.  (Bug#20792)
22702         * lisp/emacs-lisp/warnings.el (display-warning):
22703         If startup isn't complete, delay the warning.
22704         * lisp/startup.el (normal-top-level, command-line):
22705         Let display-warning automatically handle the needed delays.
22706         Run delayed-warnings-hook.
22708         * lisp/version.el (emacs-repository-get-version):
22709         Avoid calling external executable if possible.  (Bug#20799)
22711 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
22713         Document `X as "`X", not as "(` X)"
22714         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
22715         Document (backquote FOO) as "`FOO", not as "(` FOO)" (Bug#20759).
22717         * src/print.c (print_object): Minor simplification.
22719 2015-06-12  Glenn Morris  <rgm@gnu.org>
22721         * src/buffer.c (init_buffer): Add final newline to message.
22723 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
22725         Configure Symbola font only if installed
22726         * lisp/international/fontset.el (setup-default-fontset):
22727         Don't specify the Symbola font if it's not installed.
22728         Likewise for FreeMono.  (Bug#20727)
22730 2015-06-12  Eli Zaretskii  <eliz@gnu.org>
22732         Configure Symbola font only for symbols and punctuation
22733         * lisp/international/fontset.el (setup-default-fontset): Leave
22734         only symbols and punctuation in the fontset setup for Symbola
22735         font; remove "Greek and Coptic" and "Cyrillic Supplement".
22736         (Bug#20798)
22738 2015-06-12  Andreas Schwab  <schwab@linux-m68k.org>
22740         Fix crash in fontset-info
22741         * src/fontset.c (Ffontset_info): Check that the RFONT-DEF elt is
22742         non-nil.
22744 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
22746         Port to Solaris 10 sparc + Sun C 5.13
22747         * configure.ac (SETUP_SLAVE_PTY) [sol2* | unixware]:
22748         Adjust to process.c change.
22749         * src/process.c (create_process): Declare volatile variables at
22750         top level of this function, so that they're less likely to be
22751         reused later in the function in the code executed by the vforked
22752         child.  Do not declare locals used only in the vforked child, as
22753         they might share memory with locals still live in the parent.
22754         Instead, use the same variables in the child as in the parent.
22755         This works around a subtle bug that causes a garbage collector
22756         crash when Emacs is built with Sun C 5.13 sparc on Solaris 10.
22758 2015-06-12  Glenn Morris  <rgm@gnu.org>
22760         * lisp/startup.el (normal-top-level): Don't let *Messages* get
22761         a nil default-directory.
22763 2015-06-11  Glenn Morris  <rgm@gnu.org>
22765         * lisp/startup.el (normal-top-level): Use delay-warning.  (Bug#20792)
22767         Some progress towards starting with PWD deleted.  (Bug#18851)
22768         * src/buffer.c (init_buffer): Handle get_current_dir_name failures.
22769         * lisp/startup.el (normal-top-level, command-line-1):
22770         * lisp/minibuffer.el (read-file-name-default):
22771         Handle default-directory being nil.
22773 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
22775         Fix "not a tty" bug on Solaris 10
22776         * configure.ac (PTY_OPEN): Define to plain 'open'
22777         on SVR4-derived hosts, so that the O_CLOEXEC flag isn't set.
22778         * src/process.c (allocate_pty): Set the O_CLOEXEC flag after
22779         calling PTY_TTY_NAME_SPRINTF, for the benefit of SVR4-derived
22780         hosts that call grantpt which does its work via a setuid subcommand
22781         (Bug#19191, Bug#19927, Bug#20555, Bug#20686).
22782         Also, set O_CLOEXEC even if PTY_OPEN is not defined, since it
22783         seems relevant in that case too.
22785 2015-06-11  Juri Linkov  <juri@linkov.net>
22787         * lisp/bindings.el (debug-ignored-errors): Add mark-inactive.
22788         * lisp/simple.el (kill-region): Replace 'error' with 'user-error'.
22789         (Bug#20785)
22791 2015-06-11  Glenn Morris  <rgm@gnu.org>
22793         * lisp/international/characters.el (char-script-table): Fix typo.
22795 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
22797         Fix quoting of help for functions with odd names
22798         While investigating Bug#20759, I discovered other quoting problems:
22799         C-h f mishandled characters like backslash and quote in function names.
22800         This fix changes the behavior so that 'C-h f pcase RET' now
22801         generates "... (\` QPAT) ..." instead of "... (` QPAT) ...",
22802         because '(format "%S" '(` FOO))' returns "(\\` FOO)".  A comment
22803         in src/lread.c's read1 function says that the backslash will be
22804         needed starting in Emacs 25, which implies that 'format' is
22805         correct and the old pcase documention was wrong to omit the backslash.
22806         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
22807         * lisp/help-fns.el (help-fns--signature):
22808         * lisp/help.el (help-add-fundoc-usage):
22809         * lisp/progmodes/elisp-mode.el (elisp-function-argstring):
22810         Use help--make-usage-docstring rather than formatting
22811         help-make-usage.
22812         * lisp/emacs-lisp/pcase.el (pcase--make-docstring):
22813         Return raw docstring.
22814         * lisp/help-fns.el (help-fns--signature): New arg RAW, to return
22815         raw docstring.  Take more care to distinguish raw from cooked dstrings.
22816         (describe-function-1): Let help-fns--signature substitute
22817         command keys.
22818         * lisp/help.el (help--docstring-quote): New function.
22819         (help-split-fundoc): Use it, to quote funny characters more
22820         systematically.
22821         (help--make-usage): Rename from help-make-usage, since this
22822         should be private.  Leave an obsolete alias for the old name.
22823         (help--make-usage-docstring): New function.
22824         * test/automated/help-fns.el (help-fns-test-funny-names): New test.
22826 2015-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
22828         * lisp/thingatpt.el (in-string-p): Revert last change,
22829         since in-string-p is not used in thingatpt.el but only from outside.
22830         Also, use lexical binding.
22832 2015-06-11  Artur Malabarba  <bruce.connor.am@gmail.com>
22834         * lisp/emacs-lisp/let-alist.el (let-alist--deep-dot-search): Fix cons.
22835         * test/automated/let-alist.el (let-alist-cons): Test it.
22837 2015-06-11  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
22839         * src/syntax.c (Fbackward_prefix_chars): Reword docstring.
22841 2015-06-10  Glenn Morris  <rgm@gnu.org>
22843         * build-aux/gitlog-to-emacslog: Also ignore pointless merge commits.
22845         Improve generated ChangeLog for gitmerge.el commits.  (Bug#20717)
22846         * build-aux/gitlog-to-changelog: Handle gitmerge.el skipped commits.
22847         * admin/gitmerge.el (gitmerge-commit-message):
22848         Exclude "skipped" messages from ChangeLog once again.
22850         Slight namespace cleanup for thingatpt.el.
22851         * lisp/thingatpt.el (thing-at-point--in-string-p)
22852         (thing-at-point--end-of-sexp, thing-at-point--beginning-of-sexp)
22853         (thing-at-point--read-from-whole-string): Rename from
22854         old versions without "thing-at-point--" prefix.
22855         Keep old versions as obsolete aliases.  Update all uses.
22857         * lisp/emacs-lisp/checkdoc.el (checkdoc-get-keywords):
22858         Move requiring of finder from here...
22859         (checkdoc-package-keywords): ... to here.
22861         Use 'user-error' in a few calendar files.
22862         * lisp/calendar/appt.el (appt-add):
22863         * lisp/calendar/calendar.el (calendar-absolute-from-gregorian)
22864         (calendar-generate):
22865         * lisp/calendar/diary-lib.el (diary-mail-entries, diary-cyclic):
22866         Replace 'error' with 'user-error'.
22868         * lisp/progmodes/f90.el (f90-backslash-not-special): Use user-error.
22870         * lisp/files-x.el (add-file-local-variable):
22871         Special-case 'lexical-binding'.  (Bug#20641)
22873         * lisp/progmodes/executable.el (executable-self-display): Obsolete.
22874         No longer autoload.
22875         * doc/misc/autotype.texi (Executables):
22876         Undocument executable-self-display.
22878         * lisp/progmodes/executable.el (executable-self-display):
22879         Use non-obsolete tail syntax.  (Bug#20779)
22880         (executable-self-display): Doc update.
22882 2015-06-10  Stefan Monnier  <monnier@iro.umontreal.ca>
22884         * lisp/emacs-lisp/checkdoc.el: Use lexical-binding
22885         (finder-known-keywords): Silence byte-compiler.
22887 2015-06-09  Stefan Monnier  <monnier@iro.umontreal.ca>
22889         * lisp/simple.el (eval-expression): Macroexpand before evaluating
22890         (bug#20730).
22892         * lisp/progmodes/sh-script.el: Better handle nested quotes.
22893         (sh-here-doc-open-re): Don't mis-match the <<< operator (bug#20683).
22894         (sh-font-lock-quoted-subshell): Make sure double quotes within single
22895         quotes don't mistakenly end prematurely the surrounding string.
22897         * lisp/progmodes/elisp-mode.el: Require cl-lib for cl-defstruct.
22899 2015-06-09  Glenn Morris  <rgm@gnu.org>
22901         * test/automated/Makefile.in (ELFILES): Sort.
22903         * Makefile.in (SUBDIR_MAKEFILES):
22904         * lwlib/Makefile.in (WARN_CFLAGS):
22905         Use built-in Make functions rather than echo+sed.
22907 2015-06-09  Eli Zaretskii  <eliz@gnu.org>
22909         Update char-script-table
22910         * lisp/international/characters.el (char-script-table): Update
22911         from Unicode 8.0 Draft.
22913         Improve font selection for punctuation and other symbols
22914         * src/fontset.c (face_for_char): If the character's script is
22915         'symbol', and the font used for ASCII face has a glyph for it, use
22916         the font for the ASCII face instead of searching the fontsets.
22917         This comes instead of NS-specific code that used the current
22918         face's font instead, which is now disabled due to undesirable
22919         consequences.  (Bug#20727)
22921 2015-06-08  Dmitry Gutov  <dgutov@yandex.ru>
22923         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
22924         Skip past `#' to find BEG (bug#20771).
22925         * test/automated/elisp-mode-tests.el
22926         (elisp-completes-functions-after-hash-quote): New test.
22928 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
22930         Fix compilation warning/error in --without-x builds
22931         * src/xdisp.c (append_space_for_newline): Condition GUI-specific
22932         code on HAVE_WINDOW_SYSTEM.
22934         Improve the default fontset wrt symbols
22935         * lisp/international/fontset.el (setup-default-fontset): Better
22936         setup of fontset-default for symbols: use Symbola and FreeMono.
22937         (Bug#20727)
22939 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
22941         Add new command checkdoc-package-keywords
22942         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
22943         New defcustom.
22944         (checkdoc-list-of-strings-p): Add doc.
22945         (checkdoc-current-buffer): When `checkdoc-package-keywords-flag' is
22946         non-nil, call `checkdoc-package-keywords'.
22947         (checkdoc-get-keywords): New defun.
22948         (checkdoc-package-keywords): New command.  Warns if the current file
22949         has package.el-style keywords that aren't in `finder-known-keywords'.
22950         * etc/NEWS: Add entry.
22952 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
22954         Avoid crashes when key-binding is called from a timer
22955         * src/keymap.c (Fkey_binding): Don't segfault if called with an
22956         empty vector as KEY.  (Bug#20705)
22958         Fix a thinko in arc-mode.el
22959         * lisp/arc-mode.el (archive-zip-summarize): Fix last change in the
22960         non-Zip64 case.  (Bug#20769)
22962 2015-06-08  Artur Malabarba  <bruce.connor.am@gmail.com>
22964         * lisp/emacs-lisp/package.el (package-delete): Make interactive.
22966 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
22968         * lisp/emacs-lisp/checkdoc.el (checkdoc-file): New function.
22969         (checkdoc-error): When `checkdoc-diagnostic-buffer' is set to
22970         "*warn*", print the warning to the standard output.  (bug#20754)
22972 2015-06-07  Glenn Morris  <rgm@gnu.org>
22974         * admin/update_autogen (changelog_files): Remove gitlog-to-emacslog.
22976         * src/font.c (syms_of_font) <font-log>: Doc fix.
22978         Remove the obsolete leading "*" from some C doc strings.
22979         * src/coding.c (syms_of_coding):
22980         * src/font.c (syms_of_font): Remove leading "*" from docs.
22981         * lisp/cus-start.el (enable-character-translation): Add it.
22983 2015-06-07  Paul Eggert  <eggert@cs.ucla.edu>
22985         Move gen_origin from program to data
22986         That way, 'make change-history' needs to change only ChangeLog.2,
22987         instead of having to change two files.
22988         * ChangeLog.2: Add commit info for range that this file covers.
22989         * Makefile.in (new_commit_regexp): New macro.
22990         (change-history-nocommit): Simplify, by putting what used to be
22991         the gen_origin value into the data (ChangeLog.2) rather than
22992         into the program (gitlog-to-emacslog).
22993         * build-aux/gitlog-to-emacslog (gen_origin): Calculate from
22994         the input file (e.g., ChangeLog.2) rather than by having a
22995         constant in the program.  Substitute it into the output.
22997 2015-06-07  Dmitry Gutov  <dgutov@yandex.ru>
22999         * lisp/help-fns.el (help-fns--signature): Quote any quotes in the
23000         function name (bug#20759).
23002 2015-06-07  Eli Zaretskii  <eliz@gnu.org>
23004         Adapt 'struct timespec' to next release of MinGW runtime
23005         * nt/inc/ms-w32.h (struct timespec): Don't declare if
23006         __struct_timespec_defined is defined.
23008 2015-06-06  Paul Eggert  <eggert@cs.ucla.edu>
23010         Merge from gnulib
23011         This incorporates:
23012         2015-06-06 acl-permissions: pacify -Wsuggest-attribute=const
23013         2015-06-05 stdio: Don't redefine gets when using C++
23014         2015-06-05 acl-permissions: port to AIX, C89 HP-UX
23015         2015-06-02 file-has-acl: fix build on Mac OS X 10
23016         2015-06-01 gnulib-tool: concatenate lib_SOURCES to a single line
23017         2015-06-01 pthread_sigmask: discount system version if a simple macro
23018         2015-05-31 readlinkat: avoid OS X 10.10 trailing slash bug
23019         * doc/misc/texinfo.tex, lib/acl-internal.h, lib/get-permissions.c:
23020         * lib/readlinkat.c, lib/set-permissions.c, lib/stdio.in.h:
23021         * m4/acl.m4, m4/pthread_sigmask.m4, m4/readlinkat.m4: Copy from gnulib.
23022         * lib/gnulib.mk: Regenerate.
23024 2015-06-06  Juri Linkov  <juri@linkov.net>
23026         * lisp/progmodes/grep.el (zrgrep): Let-bind grep-highlight-matches
23027         before calling grep-compute-defaults because now it affects the
23028         command lines computed in grep-compute-defaults.  (Bug#20728)
23030 2015-06-06  Glenn Morris  <rgm@gnu.org>
23032         Address some compilation warnings.
23033         * lisp/international/mule-cmds.el (w32-get-console-codepage)
23034         (w32-get-console-output-codepage):
23035         * lisp/progmodes/elisp-mode.el (xref-collect-references):
23036         * lisp/version.el (cairo-version-string): Declare.
23037         * lisp/erc/erc.el (erc-nickname-in-use): Fix typo.
23039 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
23041         Fix display when a font claims large values of ascent and descent
23042         This fixes bug#20628.
23043         * src/xdisp.c (get_phys_cursor_geometry): Correct the Y
23044         coordinate of a hollow cursor glyph when the original glyph's
23045         ascent is too small.
23046         (get_font_ascent_descent, normal_char_ascent_descent)
23047         (normal_char_height): New functions.
23048         (handle_single_display_spec, append_space_for_newline)
23049         (calc_pixel_width_or_height, produce_stretch_glyph)
23050         (calc_line_height_property): Use normal_char_ascent_descent and
23051         normal_char_height.
23052         (x_produce_glyphs): When font-global values of ascent and descent
23053         are too large, use per-character glyph metrics instead, if
23054         possible.  But don't allow the glyph row's ascent and descent
23055         values become smaller than the values from the metrics of the
23056         font's "normal" character.
23057         * src/xftfont.c (xftfont_draw):
23058         * src/w32font.c (w32font_draw): Correct the values of ascent and
23059         descent used to draw glyphless characters' hex code in a box.
23060         * src/xterm.c (x_draw_glyph_string_background):
23061         * src/xdisp.c (x_produce_glyphs):
23062         * src/w32term.c (x_draw_glyph_string_background):
23063         * src/nsterm.m (ns_maybe_dumpglyphs_background): Use FONT_TOO_HIGH
23064         to detect fonts whose global ascent and descent values are too
23065         large to be used in layout decision, and redraw the background
23066         when that happens.
23067         * src/dispextern.h (FONT_TOO_HIGH): New macro.
23068         (get_font_ascent_descent): Add prototype.
23069         * src/xterm.c (x_new_font):
23070         * src/w32term.c (x_new_font):
23071         * src/nsterm.m (x_new_font):
23072         * src/font.c (font_open_entity):
23073         * src/composite.c (composition_gstring_width):
23074         Use get_font_ascent_descent to obtain reasonable values for ascent
23075         and descent of a font.
23077 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
23079         Add assertion in adjust_point_for_property
23080         * src/keyboard.c (adjust_point_for_property): Add eassert for
23081         current buffer being shown in selected window.
23083 2015-06-06  Dmitry Gutov  <dgutov@yandex.ru>
23085         Replace uses of in-string-p; make it obsolete
23086         * lisp/thingatpt.el (in-string-p): Declare obsolete (bug#20732).
23087         (end-of-sexp, beginning-of-sexp): Use syntax-ppss instead.
23089 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
23091         Fix Dired display of an explicit list of files by ls-lisp.el
23092         * lisp/ls-lisp.el (ls-lisp-uid-d-fmt, ls-lisp-uid-s-fmt)
23093         (ls-lisp-gid-d-fmt, ls-lisp-gid-s-fmt): Make the initial values be
23094         correct for when displaying individual files separately, not as
23095         part of listing a directory, in which case these values are not
23096         recomputed by 'ls-lisp-insert-directory', but used verbatim.
23098         * lisp/dired.el (dired): Doc fix.  (Bug#20739)
23100 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
23102         Do not adjust point in a non-selected window
23103         * src/keyboard.c (command_loop_1): Do not adjust point when
23104         current buffer is not shown in selected window (Bug#20590).
23106         * etc/DEBUG: Mention 'maybe_call_debugger'
23108 2015-06-05  Nicolas Petton  <nicolas@petton.fr>
23110         Fix a unit test for map.el
23111         * test/automated/map-tests.el (test-map-let): Fix the test to work
23112         with the new syntax of `map-let'.
23114         * lisp/emacs-lisp/map.el (map-let): Better docstring.
23116         Better syntax for the map pcase pattern
23117         * lisp/emacs-lisp/map.el: Improves the map pcase pattern to take
23118         bindings of the form (KEY PAT) or SYMBOL.  KEY is not quoted.
23120         * lisp/emacs-lisp/map.el (map--dispatch): Better docstring.
23122         Fix a byte-compiler error in map-put and map-delete
23123         * lisp/emacs-lisp/map.el (map-put, map-delete): Ensure that `setq' is
23124         called with a symbol.
23126 2015-06-05  Glenn Morris  <rgm@gnu.org>
23128         * admin/gitmerge.el (gitmerge-commit-message):
23129         Revert to including "skipped" messages in ChangeLog once again.
23131 2015-06-05  Tassilo Horn  <tsdh@gnu.org>
23133         Use string> instead of equiv lambda with string<
23134         * lisp/help.el (view-emacs-news): Use string> instead of equivalent
23135         lambda with string<.
23137 2015-06-05  Glenn Morris  <rgm@gnu.org>
23139         * lisp/emacs-lisp/map.el (map--dispatch): Move before use.
23140         (map--delete-array): Fix typo.
23142         * test/automated/map-tests.el: Replace "assert" with "should".
23144         * lisp/Makefile.in (SUBDIRS): Rename from SUBDIRS_ABS.
23145         (SUBDIRS_REL): Derive from SUBDIRS.
23147         Tweak some build messages.
23148         * lisp/Makefile.in ($(lisp)/loaddefs.el):
23149         * lisp/cus-dep.el (custom-make-dependencies):
23150         * lisp/finder.el (finder-compile-keywords): Say what we are doing.
23151         * lisp/international/titdic-cnv.el (batch-titdic-convert):
23152         Don't say how to compile.
23154 2015-06-05  Paul Eggert  <eggert@cs.ucla.edu>
23156         Omit U+0332 COMBINING LOW LINE in previous change
23157         It turns out that it does not work on Ubuntu 15.04.
23159         Fix transliteration of Bahá'í months
23160         * lisp/calendar/cal-bahai.el (calendar-bahai-month-name-array):
23161         Improve quality of Latin transliteration of Bahá'í month names.
23163         Fix curved quotes in a few places
23164         * lisp/calc/calc-misc.el (calc-help): Fix quoting.
23165         The strings in question are not doc strings, so this partially
23166         undoes the recent change that assumed they were doc strings.
23167         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
23168         * lisp/info.el (Info-finder-find-node):
23169         Use curved quotes.
23170         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
23171         Also allow curved quotes in doc strings.
23173 2015-06-04  Glenn Morris  <rgm@gnu.org>
23175         * lisp/Makefile.in (AM_V_at): Add missing definition.
23177         * lisp/Makefile.in: Quieten output a bit.
23178         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el):
23179         Don't echo directories, since the commands we invoke print them.
23181         * lisp/Makefile.in: Replace shell fragments in variables with $(shell).
23182         (SUBDIRS_REL, SUBDIRS_ABS, SUBDIRS_ALMOST, SUBDIRS_FINDER)
23183         (SUBDIRS_SUBDIRS): New variables.
23184         (setwins, setwins_almost, setwins_finder, setwins_for_subdirs):
23185         Remove.
23186         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el, $(lisp)/loaddefs.el)
23187         (update-subdirs, compile-main, compile-clean):
23188         Replace "setwins" usage with new "SUBDIRS" variables.
23190         * lisp/vc/compare-w.el (compare-windows-get-window-function):
23191         Fix :version tag.
23193 2015-06-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
23195         * src/ftfont.c (ftfont_open2): Round divisions by upEM.
23197         Undo removal of x_clear_area call on expose for GTK3 or cairo
23198         * src/xterm.c (handle_one_xevent) [HAVE_GTK3 || USE_CAIRO]:
23199         Clear exposed area.  (Bug#20677)
23201 2015-06-04  Glenn Morris  <rgm@gnu.org>
23203         * doc/lispref/hash.texi (Creating Hash): Remove obsolete makehash.
23205         * lisp/Makefile.in (check-defun-dups): Also skip ldefs-boot.
23207         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
23208         Rename from quail-lao-update-translation, since lao.el defines that.
23210 2015-06-04  Dmitry Gutov  <dgutov@yandex.ru>
23212         Handle new-style advice in find-funct
23213         * lisp/emacs-lisp/find-func.el (find-function-advised-original):
23214         Handle new-style advice.  Return the symbol's function definition.
23215         (Bug#20718)
23216         (find-function-library): Update accordingly.
23218 2015-06-04  Nicolas Petton  <nicolas@petton.fr>
23220         Merge branch 'map'
23222         * lisp/emacs-lisp/map.el: Better docstring for the map pcase macro.
23224         Add new function string-greaterp
23225         * lisp/subr.el (string-greaterp): New function.  Also aliased to
23226         `string>'.
23227         * test/automated/subr-tests.el (string-comparison-test): Add unit
23228         tests for `string>'and `string<'.
23229         * src/fns.c (string-lessp): Better docstring.
23231 2015-06-04  Eli Zaretskii  <eliz@gnu.org>
23233         Fix timezone-related functions on MS-Windows
23234         * src/editfns.c (set_time_zone_rule) [WINDOWSNT]: Always call
23235         'xputenv', even if no reallocation of tzvalbuf was necessary.
23236         This fixes a bug in timezone-related functions on MS-Windows.
23237         Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
23239 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
23241         Don't pass raw directory name to 'error'
23242         * lisp/files.el (basic-save-buffer-2): Avoid format error if
23243         a directory name contains a string like "%s".
23245 2015-06-03  Dmitry Gutov  <dgutov@yandex.ru>
23247         Override 'grep --color=always'
23248         * lisp/progmodes/xref.el (xref-collect-matches):
23249         Override --color=always in grep-find-template.
23251 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
23253         Fix error introduced recently in file-notify-tests.el
23254         * test/automated/file-notify-tests.el
23255         (file-notify--test-remote-enabled): Do not use `file-notify--test-desc'.
23256         (file-notify--deftest-remote): Revert previous patch, not
23257         necessary anymore.
23259 2015-06-03  Wolfgang Jenkner  <wjenkner@inode.at>
23261         * src/indent.c (Fvertical_motion): Amend motion by 0 lines.
23262         Starting from a display string after a newline, point went to the
23263         previous line.  Also, fix an inadvertent use of a buffer position
23264         with FETCH_BYTE.  (Bug#20701)
23266 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
23268         Instrument file-notify-test.el in order to catch hydra error
23269         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
23270         Wrap body by `ignore-case', in order to trap non-local errors.
23272 2015-06-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
23274         Undo previous changes in non-toolkit scroll bar drawing
23275         * src/xterm.c (x_scroll_bar_set_handle, x_scroll_bar_expose)
23276         [!USE_TOOLKIT_SCROLL_BARS]: Draw into scroll bar window.  (Bug#20668)
23278 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
23280         * .gitignore: Also ignore doc/*/*/*.html and .ps.
23282         Support quotes 'like this' in info files
23283         This is possible when 'makeinfo --disable-encoding' is used
23284         in Texinfo 5.
23285         * lisp/calc/calc-help.el (calc-describe-thing):
23286         * lisp/gnus/gnus-art.el (gnus-button-alist):
23287         * lisp/info.el (Info-find-index-name):
23288         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
23289         Also support quotes 'like this'.
23290         * lisp/calc/calc-help.el (calc-describe-thing): Simplify.
23291         * lisp/finder.el (finder-font-lock-keywords): Remove var that
23292         hasn't been used in years, instead of bothering to fix its quoting.
23294 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
23296         * .gitignore: Remove !test/etags/html-src/*.html.
23297         It's no longer needed, since *.html was removed.  Sort.
23299 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
23301         Restore <D> instead of '.' in grep-find-template
23302         * lisp/cedet/semantic/symref/grep.el
23303         (semantic-symref-grep-use-template): Update a comment.
23304         * lisp/progmodes/grep.el (grep-compute-defaults): Restore <D>
23305         instead of '.' in grep-find-template (bug#20719).
23306         (rgrep): Pass nil as the directory to rgrep-default-command.
23307         * lisp/progmodes/grep.el (grep-expand-keywords): Use '.' as the
23308         default value for DIR.
23309         * lisp/progmodes/xref.el (xref-collect-matches): Drop the
23310         workaround.
23312 2015-06-02  Glenn Morris  <rgm@gnu.org>
23314         * configure.ac (emacs_config_features): Add X toolkit and scroll-bars.
23316         * configure.ac (emacs_config_features): Add Cairo.
23318         * configure.ac [HAVE_GTK3]: Remove USE_CAIRO that gets reset later.
23320 2015-06-02  Michael Albinus  <michael.albinus@gmx.de>
23322         Ensure that autorevert works for remote files in file-notify-tests.el
23323         * test/automated/file-notify-tests.el (file-notify--test-desc):
23324         New defvar.
23325         (file-notify--test-remote-enabled)
23326         (file-notify-test00-availability, file-notify-test01-add-watch)
23327         (file-notify-test02-events): Use it.
23328         (file-notify--test-event-test): Check proper descriptor.
23329         (file-notify-test03-autorevert): Ensure that
23330         `visited-file-modtime' has changed.  (Bug#20392)
23332 2015-06-02  Nicolas Petton  <nicolas@petton.fr>
23334         Add a pcase pattern for maps and `map-let' based on it
23335         * lisp/emacs-lisp/map.el (map-let): New macro.
23336         (map--make-pcase-bindings, map--make-pcase-patterns): New functions.
23337         * test/automated/map-tests.el: New test for `map-let'.
23339 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
23341         Reuse rgrep mechanics in xref-find-regexp
23342         * lisp/progmodes/grep.el (rgrep-default-command):
23343         Extract from `rgrep'.
23344         * lisp/progmodes/xref.el (xref-collect-references): Split from
23345         `xref-collect-matches'.  Only handle the case of symbol search.
23346         (xref-collect-matches): Instead of Semantic Symref, use
23347         `rgrep-default-command', to take advantage of its directory and
23348         file ignore settings.
23349         (xref--collect-match): Remove the last argument, leaving the
23350         regexp construction up to the caller.
23351         * lisp/progmodes/elisp-mode.el (elisp--xref-find-matches):
23352         Change to take the xref-collect- function to use as an argument.
23353         (elisp-xref-find): Update accordingly.
23354         * lisp/progmodes/etags.el (etags--xref-find-matches)
23355         (etags-xref-find): Same.
23357         Move xref-elisp-location to elisp-mode.el
23358         * lisp/progmodes/xref.el (xref-elisp-location)
23359         (xref-make-elisp-location, xref-location-marker): Remove here.
23360         (xref--xref): Don't limit the type of the location slot.
23361         * lisp/progmodes/elisp-mode.el (xref-elisp-location):
23362         Define as a cl-struct here.
23363         (xref-location-marker): Move here.
23365 2015-06-02  Eli Zaretskii  <eliz@gnu.org>
23367         Minor tweaks for .gitignore
23368         * .gitignore: Don't ignore versioned *.html and *.ps files.
23369         Don't ignore admin/notes/tags that might be ignored as TAGS
23370         on case-insensitive filesystems.  (Bug#20710)
23372 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
23374         Generate curved quotes in ert doc
23375         * lisp/emacs-lisp/ert.el (ert--print-test-for-ewoc)
23376         (ert-results-mode-menu)
23377         (ert-results-pop-to-backtrace-for-test-at-point)
23378         (ert-results-pop-to-messages-for-test-at-point)
23379         (ert-results-pop-to-should-forms-for-test-at-point)
23380         (ert-describe-test):
23381         Quote ‘like this’, not `like this', when generating doc strings
23382         and the like.
23383         * test/automated/ert-x-tests.el (ert-test-describe-test):
23384         Allow quoting ‘like this’.
23386 2015-06-02  Nicolas Richard  <youngfrog@members.fsf.org>
23388         Add test for previous commit
23389         * test/automated/replace-tests.el: New file.
23390         (query-replace--split-string-tests): Add test for previous commit.
23392         Avoid confusion in query-replace history when replacing NUL chars
23393         * lisp/replace.el (query-replace--split-string): New function.
23394         (query-replace-read-from): Rely on the 'separator' property
23395         instead of searching for the NUL character (Bug#20690).
23397 2015-06-02  Glenn Morris  <rgm@gnu.org>
23399         Merge from origin/emacs-24
23400         8b5f2f4 * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
23402         * admin/gitmerge.el (gitmerge-commit-message):
23403         Exclude "skipped" messages from ChangeLog.
23405 2015-06-01  Michael Albinus  <michael.albinus@gmx.de>
23407         Sync with Tramp repository
23408         * lisp/net/tramp.el (tramp-message): Dump connection buffer error
23409         messages.
23410         (tramp-handle-make-auto-save-file-name): When calling
23411         `make-auto-save-file-name' internally, make sure it uses Unix-like
23412         behavior, not Windows-like behavior.
23413         * lisp/net/tramp-sh.el (tramp-set-file-uid-gid): Add a timeout for
23414         the local case, because "chown" might fail on w32.
23415         * lisp/net/trampver.el (tramp-repository-get-version): Don't run
23416         for XEmacs.
23418 2015-06-01  Eli Zaretskii  <eliz@gnu.org>
23420         MS-Windows followup for batch stdout/stderr output changes
23421         * lisp/international/mule-cmds.el (set-locale-environment):
23422         In batch mode, use console codepages for keyboard and terminal
23423         encoding.  (Bug#20545)
23425         Update .gitattributes for DOS EOL files
23426         * .gitattributes: Use "whitespace=cr-at-eol" for files with DOS
23427         CRLF end-of-line format.
23429         NS equivalents of xterm.c and w32term.c changes
23430         * src/nsterm.m (ns_maybe_dumpglyphs_background): Force redraw of
23431         glyph string background also when the font in use claims
23432         preposterously large global height value.  Helps to remove
23433         artifacts left from previous displays when glyphless characters
23434         are displayed as hex code in a box.
23435         (x_new_font): Call get_font_ascent_descent to obtain a reasonable
23436         value for FRAME_LINE_HEIGHT, even when a font claims very large
23437         value for its height.
23439 2015-06-01  Paul Eggert  <eggert@cs.ucla.edu>
23441         Avoid grave accent quoting in stderr diagnostics
23442         A few Emacs diagnostics go directly to stderr, and so can't easily
23443         contain curved quotes (as non-UTF-8 locales might mishandle them).
23444         Instead of bothering to add support for this rarity, reword the
23445         diagnostics so that they don't use grave accent to quote.
23446         * src/alloc.c (mark_memory): Fix comment.
23447         * src/buffer.c (init_buffer):
23448         * src/dispnew.c (init_display):
23449         * src/emacs.c (main, sort_args):
23450         * src/lread.c (dir_warning):
23451         * src/term.c (init_tty):
23452         * src/unexmacosx.c (unexec):
23453         * src/xfns.c (select_visual):
23454         * src/xterm.c (cvt_string_to_pixel, x_io_error_quitter):
23455         Reword stderr diagnostics to avoid quoting `like this'.
23456         * src/unexmacosx.c: Include errno.h.
23457         * src/xfns.c (select_visual): Encode value for locale.
23459 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
23461         Treat batch stdout/stderr like standard display
23462         Calls like (print FOO) could generate improperly encoded or
23463         hard-to-read output if FOO contains characters outside the system
23464         locale.  Fix this by treating batch stdout and stderr like
23465         interactive standard display, when it comes to transliterating and
23466         encoding characters (Bug#20545).
23467         * doc/emacs/mule.texi (Communication Coding):
23468         * doc/lispref/display.texi (Active Display Table):
23469         * doc/lispref/nonascii.texi (Locales):
23470         * etc/NEWS:
23471         * src/coding.c (syms_of_coding):
23472         * src/dispnew.c (syms_of_display):
23473         Document this.
23474         * src/print.c: Include disptab.h.
23475         (printchar_to_stream): New function, with much of the guts of the
23476         old Fexternal_debugging_output, except this one also uses the
23477         standard display table.
23478         (printchar, strout, Fexternal_debugging_output): Use it.
23480 2015-05-31  Glenn Morris  <rgm@gnu.org>
23482         * src/emacs.c (syms_of_emacs) <system-configuration-features>: Doc fix.
23484 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
23486         Remove DEFSYMs that aren't used at the C level.  Also:
23487         * src/decompress.c (Qzlib_dll):
23488         * src/font.c (Qunicode_sip):
23489         * src/frame.c (Qtip_frame):
23490         * src/ftfont.c (Qserif):
23491         * src/gnutls.c (Qgnutls_dll):
23492         * src/xml.c (Qlibxml2_dll):
23493         Move from here ...
23494         * src/w32fns.c (syms_of_w32fns): ... to here,
23495         as these are used only on MS-Windows.
23497 2015-05-31  Michael Albinus  <michael.albinus@gmx.de>
23499         Use another default value for tramp-histfile-override
23500         * lisp/net/tramp-sh.el (tramp-histfile-override):
23501         Use ".tramp_history" as default.
23502         Fixes bug#20446
23504 2015-05-29  Nicolas Petton  <nicolas@petton.fr>
23506         * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
23508 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
23510         * etc/NEWS: Add an entry about map.el.
23512         Improve the docstring of functions in map.el
23513         Since a map is not a data structure but a concept, adding information
23514         about the possible types of maps can be useful information.
23515         * lisp/emacs-lisp/map.el: Add documentation about the type of MAP to
23516         each public function.
23518 2015-04-29  Nicolas Petton  <nicolas@petton.fr>
23520         * lisp/emacs-lisp/map.el (map-empty-p): Faster implementation using
23521         specific tests depending on the type of the map.
23523         * lisp/emacs-lisp/map.el: Better docstrings.
23525 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
23527         * lisp/emacs-lisp/map.el (map-pairs): Dump redundant lambda.
23529 2015-04-25  Nicolas Petton  <nicolas@petton.fr>
23531         * lisp/emacs-lisp/map.el (map--elt-list): Better docstring.
23533         * lisp/emacs-lisp/map.el (map--elt-list): Minor refactoring.
23535         Fix a false negative in `map-elt' with alists and values being nil
23536         * lisp/emacs-lisp/map.el (map-elt): If map is an alist and key is
23537         found but its associated value is nil, do not return the default
23538         value.
23539         * test/automated/map-tests.el: Add a regression test.
23541 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
23543         * lisp/emacs-lisp/map.el (map--dispatch): Improve the docstring.
23545         Do not signal an error when trying to delete a key from an array
23546         * lisp/emacs-lisp/map.el (map-delete): When map is an array, check if
23547         the key is present to avoid signaling an error.
23548         * test/automated/map-tests.el: Add a test for deleting non-existing
23549         keys from maps.
23551         * lisp/emacs-lisp/map.el: Better docstring.
23553         Minor improvement in map-elt
23554         * lisp/emacs-lisp/map.el (map-elt): Do not use `ignore-errors' when
23555         doing a lookup in arrays, but check the boundaries of the array
23556         instead.
23557         * test/automated/map-tests.el: Adds a test for `map-elt' with arrays
23558         and a negative integer as key.
23560 2015-04-21  Nicolas Petton  <nicolas@petton.fr>
23562         * test/automated/map-tests.el: Refactoring of test methods.
23564         * test/automated/map-tests.el: Renamed from map-test.el.
23566 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
23568         * lisp/emacs-lisp/map.el (map-into): Better error message.
23570         * lisp/emacs-lisp/map.el: Remove byte-compilation warnings.
23572         Throw an error when converting a map into an unknown map type
23573         * lisp/emacs-lisp/map.el (map-into): Throw an error if type is
23574         not valid.
23575         * test/automated/map-tests.el: Add a regression test.
23577         New library map.el similar to seq.el but for mapping data structures.
23578         * test/automated/map-tests.el: New file.
23579         * lisp/emacs-lisp/map.el: New file.
23581 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
23583         * lisp/progmodes/etags.el (tag-implicit-name-match-p): Make sure
23584         there's no explicit tag name (bug#20629).
23586 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
23588         Remove format2
23589         * src/editfns.c, src/lisp.h (format2): Remove.
23590         It is more trouble than it's worth, now that we have CALLN.
23591         This is just a minor refactoring.
23592         * src/buffer.c (Fkill_buffer):
23593         * src/dbusbind.c (XD_OBJECT_TO_STRING):
23594         * src/fileio.c (barf_or_query_if_file_exists):
23595         Adjust to format2 going away.
23597         Don't misencode C-generated messages
23598         Also, be more consistent about calls to 'Fmessage' vs 'message'.
23599         * src/alloc.c (Fgc_status):
23600         Prefer AUTO_STRING to build_string for Fmessage call.
23601         * src/data.c (Fmake_variable_buffer_local)
23602         (Fmake_local_variable, Fmake_variable_frame_local):
23603         * src/doc.c (store_function_docstring):
23604         Use Fmessage, not message, since the argument can contain
23605         non-ASCII characters, and this can cause the resulting message
23606         to be incorrectly encoded for the current environment.
23607         * src/fns.c (maybe_resize_hash_table):
23608         * src/xselect.c (x_clipboard_manager_save_all):
23609         Use message, not Fmessage, since Fmessage's power isn't needed here.
23610         * src/process.c (Fmake_network_process): Reword message to avoid %s.
23611         * src/xdisp.c (vmessage): Document restrictions on message contents.
23612         (message_nolog) [false]: Remove unused code.
23614         Use \r rather than ^M in string literals
23615         This is less likely to cause problems on platforms that
23616         use CRLF (or CR!) termination for lines.
23618         Update .gitattributes to match current sources
23619         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00879.html
23620         * .gitattributes: Accommodate tests that insist on DOS format.
23621         Remove test/automated/data/decompress/foo-gzipped.
23622         Add etc/e/eterm-color.
23624 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
23626         * doc/emacs/mule.texi (Modifying Fontsets):
23627         Document face-ignored-fonts.  (Bug#20628)
23629         Add etags test for the new -Q option
23630         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
23631         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
23632         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
23633         test-case changes below.
23634         * test/etags/ETAGS.good_6: New file.
23635         * test/etags/cp-src/x.cc: New file.
23636         * test/etags/Makefile (CPSRC): Add x.cc.
23637         (check): Add one more test, for -Q.
23639 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
23641         Use list for the tags completion table, not obarray
23642         * lisp/progmodes/etags.el (etags-tags-completion-table): Return a
23643         list instead of an obarray
23644         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00876.html).
23645         (tags-completion-table): Combine those lists.
23646         (tags-completion-table): Update the docstring.
23648 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
23650         Restore EOL format testing in etags
23651         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
23652         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
23653         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
23654         test-case changes below.
23655         * test/etags/html-src/algrthms.html: Convert back to DOS EOL format.
23656         * test/etags/cp-src/c.C (B): Add back stray CR character.
23657         * test/etags/c-src/dostorture.c: Add back.
23658         * test/etags/Makefile (CSRC): Add back c-src/dostorture.c.
23660 2015-05-30  Vitaly Takmazov  <vitalyster@gmail.com>  (tiny change)
23662         Declare Emacs on MS-Windows to be DPI-aware
23663         * nt/emacs-x86.manifest (asmv3:windowsSettings): Add dpiAware.
23664         * nt/emacs-x64.manifest (asmv3:windowsSettings): Add dpiAware.
23665         This avoids Windows entering compatibility mode for Emacs,
23666         which causes fonts to look less nice.
23668 2015-05-30  Michael Albinus  <michael.albinus@gmx.de>
23670         Improve Tramp traces
23671         * lisp/net/trampver.el (tramp-repository-get-version): New defun.
23672         * lisp/net/tramp.el (tramp-debug-message): Use it.
23674 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
23676         backup-buffer minor reworking of internals
23677         * lisp/files.el (backup-buffer): Rework to avoid a couple of
23678         unused locals inadvertently introduced in the previous change.
23680         backup-buffer now reports .emacs.d/%backup% ills
23681         * lisp/files.el (backup-buffer): If the write to .emacs.d/%backup%
23682         fails due to disk space exhaustion or whatever, do not pretend
23683         that it succeeded.  More generally, do a better job of checking
23684         for I/O failures, and limit the scope of the condition-case to
23685         just the operations where file errors should be caught and ignored
23686         (Bug#20595).  Also, don't bother trying to delete later backups if
23687         an earlier deletion fails, as this is a sign of trouble and it's
23688         better to stop when there's trouble.
23690         copy-file now truncates output after writing
23691         * src/fileio.c (Fcopy_file): Truncate output after writing rather
23692         than before.  This is more likely to work than truncation before
23693         writing, if the file system is out of space or the user is over
23694         disk quota (Bug#20595).  Also, check for read errors.
23696 2015-05-29  Artur Malabarba  <bruce.connor.am@gmail.com>
23698         * lisp/emacs-lisp/package.el (package-load-all-descriptors):
23699         Don't load descriptors from directories above the package directories.
23701 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
23703         Merge from gnulib
23704         This incorporates the following (Bug#20681):
23705         2015-05-29 acl-permissions: Fix build on Mac OS X and older AIX
23706         2015-05-29 acl-permissions: Fix build on Solaris and Cygwin
23707         * lib/set-permissions.c: Copy from gnulib.
23709 2015-05-29  Michael Albinus  <michael.albinus@gmx.de>
23711         Improve Tramp traces
23712         * lisp/net/tramp.el (tramp-call-process-region): New defun.
23713         * lisp/net/tramp-sh.el (tramp-get-inline-coding): Use it.
23715 2015-05-29  Glenn Morris  <rgm@gnu.org>
23717         * test/automated/vc-tests.el: Try enabling tests on hydra.nixos.org.
23719 2015-05-29  Wolfgang Jenkner  <wjenkner@inode.at>
23721         * src/xfns.c (x_set_menu_bar_lines): Fix calls to x_clear_area.
23722         The signature was changed in the cairo branch, merged on 2015-05-23.
23723         This oversight broke compiling only the non-toolkit X version.
23725 2015-05-29  Samer Masterson  <samer@samertm.com>
23727         * doc/lispref/os.texi: Update initial-buffer-choice docs.
23729 2015-05-29  Glenn Morris  <rgm@gnu.org>
23731         * test/automated/vc-tests.el (vc-test-rcs04-checkout-model):
23732         Mark as an expected failure.
23734 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
23736         Change package test to look for curved quotes
23737         * test/automated/package-test.el (package-test-describe-package)
23738         (package-test-signed): Search for curved single quotes as well as
23739         for grave accent and apostrophe.
23741 2015-05-28  Katsumi Yamaoka  <yamaoka@jpl.org>
23743         * lisp/gnus/gnus-art.el (gnus-button-alist): Re-revert last change.
23744         cf. <http://news.gmane.org/group/gmane.emacs.devel/thread=186896>
23746 2015-05-28  Samer Masterson  <samer@samertm.com>
23748         Show files when `initial-buffer-choice' is non-nil
23749         * lisp/startup.el (command-line-1): When Emacs is given a file as an
23750         argument and `initial-buffer-choice' is non-nil, display both the file
23751         and `initial-buffer-choice'.  For more than one file, show
23752         `initial-buffer-choice' and *Buffer List*.  Refactor display-changing
23753         commands out of the command line arg parser.
23754         (initial-buffer-choice): Clarify docstring.
23756 2015-05-28  Eli Zaretskii  <eliz@gnu.org>
23758         Fix last commit
23759         * nt/gnulib.mk (libgnu_a_SOURCES): Add get-permissions.c back.
23760         (gnulib module qcopy-acl): Add back, as it is harmless.  This
23761         minimizes differences wrt lib/gnulib.mk.
23763         Fix the MS-Windows build as followup to gnulib update
23764         * nt/gnulib.mk (libgnu_a_SOURCES): Remove get-permissions.c and
23765         set-permissions.c, as they don't compile on MinGW.
23766         (gnulib module qcopy-acl): Remove, as it needs set-permissions.c.
23768 2015-05-28  Paul Eggert  <eggert@cs.ucla.edu>
23770         Revert my change to gnus-art.el
23771         * lisp/gnus/gnus-art.el (gnus-button-alist): Revert last change.
23772         It wasn't that important, and it caused a Gnus build to fail.  See:
23773         http://www.randomsample.de:4456/builders/emacs-devel/builds/734
23775         New minor mode Electric Quote
23776         This lets you easily insert quotes ‘like this’ by typing
23777         quotes `like this', and similarly you can easily insert
23778         quotes “like this” by typing quotes ``like this'' (Bug#20545).
23779         * doc/emacs/basic.texi (Inserting Text):
23780         * doc/emacs/modes.texi (Minor Modes):
23781         * etc/NEWS: Document it.
23782         * doc/emacs/text.texi (Quotation Marks): New section.
23783         * lisp/electric.el (electric-quote-comment)
23784         (electric-quote-string, electric-quote-paragraph):
23785         New custom vars.
23786         (electric--insertable-p)
23787         (electric-quote-post-self-insert-function): New functions.
23788         (electric-quote-mode, electric-quote-local-mode): New minor modes.
23789         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
23790         Add curved single quotes to electric-pair-text-pairs.
23791         Set electric-quote-string in this buffer.
23793         A few more doc string fixes (Bug#20385)
23795         Accept curved quotes in doc strings
23796         * lisp/info-look.el (info-lookup-guess-custom-symbol):
23797         (info-lookup-alist): Treat ‘’ like `' when parsing help buffers etc.
23799         Generate curved quotes in pseudo-info nodes
23800         * lisp/info.el (Info-virtual-index-find-node)
23801         (Info-virtual-index, Info-apropos-find-node, info-apropos):
23802         Quote ‘like this’, not `like this', when generating pseudo-info nodes.
23804         Fix minor quoting problems in doc strings
23805         Most of these fixes involve escaping grave accents that are
23806         actually intended to be grave accents, not left quotes.
23807         (Bug#20385)
23809         Support curved quotes in doc strings
23810         Emacs's traditional doc string style has been to quote symbols
23811         `like this'.  This worked well on now-obsolete terminals where
23812         ` and ' were symmetric quotes, but nowadays curved quotes
23813         ‘like this’ look better.  Support quoting the new way too.
23814         (Bug#20385)
23815         * doc/lispref/tips.texi (Documentation Tips): Symbols can be quoted
23816         ‘like-this’ as well as `like-this'.
23817         * etc/NEWS: Mention this.
23818         * lisp/cedet/mode-local.el (overload-docstring-extension)
23819         (mode-local-print-binding, mode-local-describe-bindings-2):
23820         * lisp/cus-theme.el (describe-theme-1):
23821         * lisp/descr-text.el (describe-text-properties-1, describe-char):
23822         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
23823         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
23824         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
23825         (eieio-help-constructor):
23826         * lisp/emacs-lisp/package.el (describe-package-1):
23827         * lisp/faces.el (describe-face):
23828         * lisp/help-fns.el (help-fns--key-bindings)
23829         (help-fns--compiler-macro, help-fns--parent-mode, help-fns--obsolete):
23830         (help-fns--interactive-only, describe-function-1):
23831         (describe-variable):
23832         * lisp/help.el (describe-mode):
23833         * lisp/international/mule-cmds.el (describe-input-method)
23834         (describe-language-environment):
23835         * lisp/international/mule-diag.el (describe-character-set)
23836         (print-coding-system-briefly, list-input-methods)
23837         (list-input-methods-1):
23838         Insert curved quotes rather than grave accent and apostrophe.
23839         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
23840         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
23841         (checkdoc-proper-noun-region-engine):
23842         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
23843         (lisp-cl-font-lock-keywords-2):
23844         * lisp/finder.el (finder-font-lock-keywords):
23845         * lisp/gnus/gnus-art.el (gnus-button-alist):
23846         * lisp/help-fns.el (help-do-arg-highlight)
23847         (describe-function-1, describe-variable):
23848         * lisp/help-mode.el (help-xref-symbol-regexp)
23849         (help-xref-info-regexp, help-xref-url-regexp):
23850         * lisp/help.el (describe-mode):
23851         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
23852         * lisp/wid-edit.el (widget-documentation-link-regexp):
23853         Parse symbols quoted ‘like-this’ as well as `like-this'.
23854         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
23855         Add "‘" and "’" to electric-pair-text-pairs.
23856         (elisp--form-quoted-p): Also allow "‘" as a quoting char.
23857         (elisp-completion-at-point, elisp--preceding-sexp):
23858         Also treat "‘" and "’" as quoting chars.
23860         substitute-command-keys now curves quotes
23861         So, for example, it turns "`abc'" into "‘abc’" (Bug#20385).
23862         * doc/lispref/help.texi (Keys in Documentation):
23863         * etc/NEWS: Document this.
23864         * src/doc.c (Fsubstitute_command_keys): Implement it.
23866 2015-05-28  Glenn Morris  <rgm@gnu.org>
23868         * lisp/mail/rmailsum.el (rmail-summary-by-recipients)
23869         (rmail-summary-by-topic, rmail-summary-by-senders):
23870         No longer strip leading/trailing whitespace.
23872         * lisp/progmodes/f90.el (f90-type-def-re): Add "type, extends".
23873         (f90-no-block-limit): Add "enum".  (Bug#20680)
23874         * test/automated/f90.el (f90-test-bug20680, f90-test-bug20680b):
23875         New tests.
23877 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
23879         * lisp/isearch.el (isearch--current-buffer): Give a default value.
23880         Un-revert changes mistakenly dropped by f9fabb2b.
23882 2015-05-27  Paul Eggert  <eggert@cs.ucla.edu>
23884         Merge from gnulib
23885         This incorporates:
23886         2015-05-27 qacl: Reimplement qset_acl and qcopy_acl (Bug#20666)
23887         2015-05-27 file-has-acl: Split feature tests again (Bug#20667)
23888         2015-05-27 string: fix build failure on BSD/OSX with FORTIFY_SOURCE
23889         2015-05-26 stdio: limit __gnu_printf__ witness to gcc 4.4+
23890         2015-05-26 inttypes: force correct mingw PRIdMAX even without <stdio.h>
23891         2015-05-26 stdio: fix probe on mingw under gcc 5.1
23892         * admin/merge-gnulib (GNULIB_MODULES):
23893         Replace qacl with qcopy-acl, since we don't need the rest of qacl.
23894         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
23895         * lib/inttypes.in.h, lib/qcopy-acl.c, lib/qset-acl.c:
23896         * lib/string.in.h, m4/acl.m4, m4/stdio_h.m4:
23897         Get latest versions from gnulib.
23898         * lib/get-permissions.c, lib/set-permissions.c: New files.
23899         * lib/gnulib.mk, m4/gnulib-comp.m4:
23900         Regenerate.
23901         * nt/gnulib.mk: Merge lib/gnulib.mk changes by hand.
23903 2015-05-27  Dmitry Gutov  <dgutov@yandex.ru>
23905         * lisp/vc/vc-dispatcher.el (vc-setup-buffer): Delete the old
23906         process here.
23907         (vc-do-command): Rather than here (bug#20608).
23909 2015-05-27  Ivan Shmakov  <ivan@siamics.net>
23911         Avoid gratuitous delete-dups in face-at-point
23912         * lisp/faces.el (face-at-point): Do not compute the properly
23913         ordered, duplicate-free list if only a single value is
23914         requested anyway.  (Bug#20519)
23916         Show the exact C-x 8 RET invocation in describe-char
23917         * lisp/descr-text.el (describe-char): Show the exact C-x 8 RET
23918         invocation instead of a template.  (Bug#20522)
23920 2015-05-27  Artur Malabarba  <bruce.connor.am@gmail.com>
23922         * lisp/emacs-lisp/package.el: Don't erase tags on refresh.
23923         (package-menu--post-refresh): Call `tabulated-list-print' with the
23924         UPDATE argument.  This only affects the refresh action, the revert
23925         action still erases tags.
23926         (package-menu-get-status): Change `assq' to `assoc'.
23927         (package-menu--mark-upgrades-1): New function.
23928         (package-menu--mark-upgrades-pending): New variable.
23929         (package-menu-mark-upgrades): Use them to delay marking until
23930         after refresh is done.
23931         (package-menu--post-refresh): Call mark-upgrades-1 if
23932         mark-upgrades-pending is non-nil.
23934 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
23936         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
23937         Fix typo in "Improve tramp-handle-make-auto-save-file-name"
23938         (commit 3953c4be2816537be95520605d45b866dc731f4b).
23940 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
23942         * lisp/isearch.el (isearch--current-buffer): New var.
23943         (isearch-update): Set cursor-sensor-inhibit here.
23944         (isearch-done): Unset cursor-sensor-inhibit in the right buffer
23945         (bug#20532).
23947         Change inhibit-point-motion-hooks to t
23948         * src/textprop.c (syms_of_textprop): Default Vinhibit_point_motion_hooks
23949         to t and document it as obsolete.
23951 2015-05-27  Eli Zaretskii  <eliz@gnu.org>
23953         Support ZIP files that use Zip64 extensions
23954         * lisp/arc-mode.el (archive-zip-summarize): Handle the new ZIP
23955         format of central directory offsets used by Zip64 extensions.
23956         (Bug#20665)
23958 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
23960         New test tramp-test30-make-auto-save-file-name
23961         * test/automated/tramp-tests.el
23962         (tramp-test30-make-auto-save-file-name): New test.
23963         (tramp-test31-special-characters)
23964         (tramp-test31-special-characters-with-stat)
23965         (tramp-test31-special-characters-with-perl)
23966         (tramp-test31-special-characters-with-ls, tramp-test32-utf8)
23967         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
23968         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
23969         (tramp-test34-recursive-load, tramp-test35-unload): Rename.
23971         Improve tramp-handle-make-auto-save-file-name
23972         * lisp/net/tramp.el (tramp-auto-save-directory): Add :tags.
23973         (tramp-handle-make-auto-save-file-name): Let native
23974         `make-auto-save-file-name' use `auto-save-file-name-transforms',
23975         if `tramp-auto-save-directory' is not set.
23977 2015-05-27  Glenn Morris  <rgm@gnu.org>
23979         No longer set dired-directory in eshell.  (Bug#16477)
23980         * lisp/eshell/esh-mode.el (eshell-mode):
23981         * lisp/eshell/em-dirs.el (eshell/cd): No longer set dired-directory.
23983         * lisp/mail/sendmail.el (mail-position-on-field): Doc fix.
23985         Make c-submit-bug-report file reports at debbugs.gnu.org.  (Bug#15784)
23986         * lisp/progmodes/cc-mode.el (c-mode-help-address):
23987         Change to submit@debbugs.
23988         (c-mode-bug-package): New constant.
23989         (mail-position-on-field): Declare.
23990         (c-submit-bug-report): Insert X-Debbugs-Package header.
23991         * doc/misc/cc-mode.texi (Mailing Lists and Bug Reports):
23992         Mention debbugs.gnu.org.
23994 2015-05-26  Glenn Morris  <rgm@gnu.org>
23996         * lisp/mail/rmailsum.el: Commas no longer separate regexps.  (Bug#19026)
23997         (rmail-summary-by-recipients, rmail-summary-by-topic)
23998         (rmail-summary-by-senders): No longer use mail-comma-list-regexp.
23999         * doc/emacs/rmail.texi (Rmail Make Summary): Update for this change.
24001 2015-05-26  Paul Eggert  <eggert@cs.ucla.edu>
24003         Handle curved quotes in info files
24004         * lisp/calc/calc-help.el (calc-describe-thing):
24005         * lisp/info.el (Info-find-index-name)
24006         (Info-try-follow-nearest-node, Info-fontify-node):
24007         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
24008         In info files, process quotes ‘like this’ the same way we process
24009         quotes `like this'.  This catches a few places we missed earlier.
24011 2015-05-26  Dmitry Gutov  <dgutov@yandex.ru>
24013         xref-prompt-for-identifier: Use a list value
24014         * lisp/progmodes/xref.el (xref-prompt-for-identifier): Allow list
24015         value, to be interpreted as a list of commands.
24016         (xref--prompt-p): New function.
24017         (xref--read-identifier): Use it.
24019 2015-05-26  Eli Zaretskii  <eliz@gnu.org>
24021         Teach MS-Windows font back-end return per-glyph ascent/descent
24022         * src/w32font.h (struct w32_metric_cache): Add ascent and descent
24023         values.
24024         * src/w32font.c (w32font_text_extents): Compute, cache, and
24025         accumulate per-glyph ascent and descent values, instead of copying
24026         global values from the font.  If the values are not available from
24027         the font data, i.e., non-TTF fonts, fall back on font-global values.
24028         (compute_metrics): Compute and return per-glyph ascent and descent
24029         values, if returned by GetGlyphOutlineW, falling back on
24030         font-global values.  (Bug#20628)
24031         * src/w32term.c (w32_draw_rectangle): Add 1 pixel to width and
24032         height of rectangle to be drawn, to be compatible with
24033         XDrawRectangle.  Fixes glyphless-char display as hex codes in a
24034         box, when per-glyph ascent/descent values are used.
24036 2015-05-26  Artur Malabarba  <bruce.connor.am@gmail.com>
24038         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
24039         Don't sort if sorter is nil.
24041 2015-05-26  Michael Albinus  <michael.albinus@gmx.de>
24043         Fix Bug#20621
24044         * lisp/net/tramp-sh.el (tramp-set-auto-save): Remove it.  There
24045         are major modes which set `auto-save-mode' on their own rules;
24046         Tramp shall not overwrite such settings.
24048 2015-05-26  Glenn Morris  <rgm@gnu.org>
24050         * lisp/desktop.el: If modes aren't autoloaded, try simple guesswork.
24051         (desktop-load-file): Guess that "foobar" defines "foobar-mode".
24052         (desktop-buffer-mode-handlers, desktop-minor-mode-handlers):
24053         Doc updates.
24054         (vc-dir-mode): Remove unnecessary autoload.
24056 2015-05-25  Philipp Stephani  <phst@google.com>
24058         * lisp/term/xterm.el: Add gui-get-selection support via OSC-52.
24059         (xterm--extra-capabilities-type): Add `getSelection'.
24060         (xterm--query): Add `no-async' argument.
24061         (xterm--init-activate-get-selection): New function.
24062         (terminal-init-xterm): Use it.
24063         (xterm--init-modify-other-keys): Rename from
24064         terminal-init-xterm-modify-other-keys.
24065         (xterm--init-bracketed-paste-mode): Rename from
24066         terminal-init-xterm-bracketed-paste-mode.
24067         (xterm--init-activate-set-selection): Rename from
24068         terminal-init-xterm-activate-set-selection.
24069         (xterm--selection-char): New function.
24070         (gui-backend-set-selection): Use it.  Use the &context to only apply
24071         this method in terminals where we enabled the feature.
24072         (gui-backend-get-selection): New method.
24074 2015-05-25  Daniel Colascione  <dancol@dancol.org>
24076         * lisp/progmodes/cc-langs.el (c-constant-kwds): Add C-language
24077         keyword constants to C++.
24079 2015-05-25  Paul Eggert  <eggert@cs.ucla.edu>
24081         Make TAGS files more portable to MS-Windows
24082         * etc/NEWS: Document this.
24083         * lib-src/etags.c (readline_internal) [DOS_NT]:
24084         Don't treat CRs differently from GNUish hosts.
24085         * lisp/progmodes/etags.el (etags-goto-tag-location):
24086         Adjust STARTPOS to account for the skipped CRs in dos-style files.
24088 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
24090         Improve fix of bug#20634 in tramp-sh.el
24092 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
24094         Fix a typo in last commit
24095         * lib-src/etags.c (C_entries): Fix a typo.
24096         * test/etags/ETAGS.good_1:
24097         * test/etags/ETAGS.good_2:
24098         * test/etags/ETAGS.good_3:
24099         * test/etags/ETAGS.good_4:
24100         * test/etags/ETAGS.good_5:
24101         * test/etags/CTAGS.good: Update due to the change in etags.c.
24103         Fix tagging of class members in C-like OO languages
24104         * lib-src/etags.c (longopts): Add new option --class-qualify and
24105         its shorthand -Q.
24106         (print_help): Add help text for --class-qualify.
24107         (main): Add handling of -Q.
24108         (consider_token, C_entries) <omethodparm>: Append argument types
24109         to Objective C methods only if --class-qualify was specified.
24110         Qualify C++, Objective C, and Java class members with their class
24111         names only if --class-qualify was specified.
24112         (C_entries): If --class-qualify was not specified, remove the
24113         namespace and class qualifiers from tag names of C++ methods.
24114         This allows to use etags.el as xref back-end without the
24115         tag-symbol-match-p method, which greatly increases the number of
24116         potentially false positives.  (Bug#20629)
24117         * doc/man/etags.1: Update to document the new --class-qualify
24118         option.
24119         * test/etags/ETAGS.good_1:
24120         * test/etags/ETAGS.good_2:
24121         * test/etags/ETAGS.good_3:
24122         * test/etags/ETAGS.good_4:
24123         * test/etags/ETAGS.good_5:
24124         * test/etags/CTAGS.good: Update due to changes in etags.c.
24126 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
24128         (cl-generic-define-method): Side effects are evil (bug#20644)
24129         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method): Don't reuse
24130         cons-cells that might be used as keys in an `equal' hash-table.
24132 2015-05-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
24134         Make erc timestamps visible again
24135         * lisp/erc/erc-stamp.el (erc-munge-invisibility-spec):
24136         Make timestamps visible again (if requested).
24138 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
24140         Fix last change in etags.c that broke tagging compresed files
24141         * lib-src/etags.c (process_file_name) [MSDOS || DOS_NT]: Fix
24142         quoting of decompression shell command for MS-Windows/MS-DOS.
24144 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
24146         * lisp/emacs-lisp/cl-macs.el (cl-tagbody): Scope cl--tagbody-alist.
24147         (Bug#20639)
24149 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
24151         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer):
24152         Fix typo in "Inhibit `epa-file-handler' in Tramp"
24153         (commit 89035e247591c8d688fce922b7079881aa110f33).
24155 2015-05-25  Orivej Desh  <orivej@gmx.fr>  (tiny change)
24157         Fix IPv6 addresses in Tramp
24158         * lisp/net/tramp-sh.el (tramp-make-copy-program-file-name):
24159         Add square brackets around host name.
24161 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
24163         Inhibit `epa-file-handler' in Tramp (Bug#20634)
24164         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer)
24165         (tramp-sh-handle-insert-file-contents-literally): Inhibit also
24166         `epa-file-handler'.
24168 2015-05-24  Stefan Monnier  <monnier@iro.umontreal.ca>
24170         * lisp/emacs-lisp/pcase.el: Use PAT rather than UPAT in docstring.
24171         (pcase-let): Document the behavior in case the pattern doesn't match.
24173 2015-05-24  Artur Malabarba  <bruce.connor.am@gmail.com>
24175         * lisp/emacs-lisp/tabulated-list.el: New optional print method.
24176         (tabulated-list-print): New optional argument, UPDATE.  If
24177         non-nil, the list is printed by only adding and deleting the
24178         changed entries, instead of erasing the whole buffer.  This method
24179         is much faster when few or no entries have changed.
24180         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
24181         * etc/NEWS: Document it.
24183         * lisp/emacs-lisp/tabulated-list.el: Improve printing.
24184         (tabulated-list--get-sorter): New function.
24185         (tabulated-list-print): Restore window-line when remember-pos is
24186         passed and optimize away the `nreverse'.
24188 2015-05-24  Paul Eggert  <eggert@cs.ucla.edu>
24190         Simpilify etags TEX mode scanning
24191         * lib-src/etags.c (TEX_mode, TEX_esc, TEX_opgrp, TEX_clgrp):
24192         Remove static vars.
24193         (TeX_commands): Deduce escapes here instead.
24194         (TEX_LESC, TEX_SESC, TEX_mode): Remove; all uses removed.
24195         This removes the need for a reset_input call.
24197         Improve etags I/O error reporting
24198         * lib-src/etags.c:
24199         Don't include sys/types.h and sys/stat.h; no longer needed.
24200         (infilename): New static var.
24201         (process_file_name): Don't call 'stat'.  Instead, just open the
24202         file for reading and report any errors.  Don't bother making
24203         a copy of the file argument; it's not needed.  Be more careful to
24204         use the failing errno when reporting an error.
24205         Quote the real name better (though no perfectly)
24206         when passing it to the shell.
24207         (reset_input): New function, which reports I/O errors.
24208         All uses of 'rewind' changed to use this function.
24209         (perhaps_more_input): New function, which also checks for
24210         I/O errors.  All uses of 'feof' changed to use this function.
24211         (analyze_regex): Report an error if fclose fails.
24212         (readline_internal): Report an error if getc fails.
24213         (etags_mktmp): Return an error if close fails.
24215         etags.c: avoid side effects in 'if'
24216         * lib-src/etags.c (process_file_name, Perl_functions)
24217         (TEX_decode_env): Hoist side effects into previous statement.
24219         .gitignore tweaks
24220         * .gitignore: Ignore all *.stamp files.  Sort.
24221         Ignore [0-9]*.txt (commonly used name for git patches)
24222         and /vc-dwim-log-* (vc-dwim temporary).
24224 2015-05-24  Eli Zaretskii  <eliz@gnu.org>
24226         Fix last change in etags.c, which failed the test suite
24227         * lib-src/etags.c (intoken): Add '$' to the set, as it was there
24228         before the last change.
24230 2015-05-23  Glenn Morris  <rgm@gnu.org>
24232         Remove charset map files from repository, generate in first bootstrap
24233         * admin/charsets/Makefile.in (${srcdir}/charsets.stamp): New.
24234         (all): Create the stamp file.
24235         (extraclean): Delete the stamp file.
24236         * src/Makefile.in (lispintdir, charsets): New variables.
24237         (${lispintdir}/cp51932.el, ${lispintdir}/eucjp-ms.el, ${charsets}):
24238         New rules.
24239         (emacs$(EXEEXT), temacs$(EXEEXT)): Depend on $charsets.
24240         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
24241         * etc/charsets/*.map: Remove from repository.
24243 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
24245         Cleanup etags.c to use locale-independent code
24246         Although this doesn't alter behavior (as etags doesn't use
24247         setlocale), the new version is more clearly locale-independent and
24248         the executable is a bit smaller on my platform.
24249         * lib-src/etags.c: Include <limits.h>, for UCHAR_MAX.
24250         Include <c-ctype.h> instead of <ctype.h>.
24251         (CHARS, CHAR, init, _wht, _nin, _itk, _btk, _etk, white, nonam, endtk)
24252         (begtk, midtk):
24253         Remove; no longer needed.
24254         (iswhite, ISALNUM, ISALPHA, ISDIGIT, ISLOWER, lowcase): Remove.
24255         All callers changed to use c_isspace, c_isalnum, c_isalpha, c_isdigit,
24256         c_islower, c_tolower, respectively.
24257         (notinname, begtoken, intoken, endtoken): Rewrite as functions
24258         instead of macros, and initialize the tables at compile-time
24259         rather than at run-time.
24261         Put default action first in src/Makefile
24262         * src/Makefile.in (all): Put this rule before lisp.mk.
24263         That way, plain 'make' works in the src directory again.
24265 2015-05-23  Glenn Morris  <rgm@gnu.org>
24267         * Makefile.in: Fix extraclean rule.
24268         (extraclean_dirs): New.
24269         (extraclean): Use it.
24271 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
24273         Avoid compiler warning in image.c on MS-Windows
24274         * src/w32term.h (x_query_color): Add prototype, to avoid compiler
24275         warning in image.c.
24277 2015-05-23  Glenn Morris  <rgm@gnu.org>
24279         Fix --without-toolkit-scroll-bars builds.
24280         * src/xterm.c (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]:
24281         Add new argument to x_clear_area1.
24282         (XTset_horizontal_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
24283         Update x_clear_area arguments.
24285         * admin/charsets/glibc/: New directory, imported from glibc 2.21.
24286         * admin/charsets/Makefile.in (GLIBC_CHARMAPS):
24287         Change to included version.
24288         (LOCAL, local, totalclean): Remove.
24289         (extraclean): Delete all generated files.
24291 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
24293         * lisp/pcmpl-cvs.el (pcmpl-cvs-entries): Don't assume
24294         CVS/Entries exists.
24296         * lisp/progmodes/xref.el (xref-find-apropos): Use read-string.
24298         * lisp/progmodes/etags.el (tags-completion-at-point-function):
24299         Don't trust the find-tag function.
24301 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
24303         Pacify --enable-gcc-warnings
24304         * src/frame.h (x_query_color): Remove redundant extern decl.
24305         * src/ftcrfont.c (ftcrfont_glyph_extents, ftcrfont_list)
24306         (ftcrfont_match, ftcrfont_open, ftcrfont_close)
24307         (ftcrfont_text_extents, ftcrfont_draw):
24308         * src/xterm.c (x_set_window_size_1, *x_color_cells, x_update_end)
24309         (XTframe_up_to_date, x_clear_area1, x_clear_frame)
24310         (x_ins_del_lines, frame_highlight, frame_unhighlight)
24311         (x_new_focus_frame, x_focus_changed, XTframe_rehighlight)
24312         (x_draw_hollow_cursor, x_draw_bar_cursor, x_flush, x_update_begin)
24313         (x_update_window_begin, x_connection_closed)
24314         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
24315         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
24316         (*x_gc_get_ext_data, x_extension_initialize)
24317         (x_cr_accumulate_data):
24318         Remove redundant static decl.  Many of these GCC doesn't complain
24319         about, but we might as well clean out the duplication while we're
24320         in the neighborhood.
24321         * src/xterm.c (x_fill_trapezoid_for_relief):
24322         Remove decl of nonexistent function.
24324 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
24326         Replace gui-method macros with cl-generic with &context
24327         * lisp/frame.el (gui-method--name, gui-method, gui-method-define)
24328         (gui-method-declare, gui-call): Remove.
24329         (frame-creation-function): Use cl-defgeneric.
24330         (make-frame): Adjust callers.
24331         * lisp/menu-bar.el (menu-bar-edit-menu):
24332         Use gui-backend-selection-exists-p.
24333         * lisp/select.el (x-get-clipboard): Use gui-backend-get-selection.
24334         (gui-backend-get-selection): New cl-generic to replace
24335         gui-get-selection method.
24336         (gui-backend-set-selection): New cl-generic to replace
24337         gui-set-selection method.
24338         (gui-selection-owner-p): New cl-generic to replace
24339         gui-selection-owner-p method.
24340         (gui-backend-selection-exists-p): New cl-generic to replace
24341         gui-selection-exists-p method.  Adjust all callers.
24342         * lisp/server.el (server-create-window-system-frame): Don't ignore
24343         window-system spec even when unsupported.
24344         * lisp/simple.el (deactivate-mark): Use new gui-backend-* functions.
24345         * lisp/startup.el (handle-args-function, window-system-initialization):
24346         Use cl-defgeneric.
24347         (command-line): Adjust calls accordingly.
24348         * lisp/term/ns-win.el (ns-window-system-initialization): Turn into
24349         a window-system-initialization method.
24350         (handle-args-function, frame-creation-function): Use cl-defmethod.
24351         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
24352         (gui-get-selection): Use cl-defmethod on the new functions instead.
24353         * lisp/term/pc-win.el (w16-get-selection-value): Turn into
24354         a gui-backend-get-selection method.
24355         (gui-selection-exists-p, gui-selection-owner-p, gui-set-selection):
24356         Use cl-defmethod on the new functions instead.
24357         (msdos-window-system-initialization): Turn into
24358         a window-system-initialization method.
24359         (frame-creation-function, handle-args-function): Use cl-defmethod.
24360         * lisp/term/w32-win.el (w32-window-system-initialization): Turn into
24361         a window-system-initialization method.
24362         (handle-args-function, frame-creation-function): Use cl-defmethod.
24363         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
24364         (gui-get-selection): Use cl-defmethod on the new functions instead.
24365         * lisp/term/x-win.el (x-window-system-initialization): Turn into
24366         a window-system-initialization method.
24367         (handle-args-function, frame-creation-function): Use cl-defmethod.
24368         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
24369         (gui-get-selection): Use cl-defmethod on the new functions instead.
24370         * lisp/term/xterm.el (xterm--set-selection): Turn into
24371         a gui-backend-set-selection method.
24372         * src/nsselect.m (Fns_selection_exists_p): Remove unused arg `terminal'.
24373         (Fns_selection_owner_p): Remove unused arg `terminal'.
24374         (Fns_get_selection): Remove unused args `time_stamp' and `terminal'.
24376 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
24378         Revert "Fix etags Bug#20629 that broke C++ support"
24379         This reverts commit 13dd9d4f7e75d2c78aa5537cef09de03663e9748.
24381 2015-05-23  Jan D  <jan.h.d@swipnet.se>
24383         Fix etags Bug#20629 that broke C++ support
24384         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
24385         Revert commit from Sun May 10 (Bug#20629).
24387         Merge branch 'cairo'.
24388         Main work done by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
24389         Small fixes and image work by Jan D. <jan.h.d@swipnet.se>.
24391         Merge branch 'master' into cairo
24393         Fixes to compile cairo branch without cairo
24394         * src/gtkutil.c (xg_update_scrollbar_pos): x_clear_area takes frame as
24395         first argument.
24396         * src/xterm.c (handle_one_xevent): Surround x_cr_destroy_surface with
24397         USE_CAIRO.
24399 2015-05-23  Artur Malabarba  <bruce.connor.am@gmail.com>
24401         * lisp/emacs-lisp/package.el: Always update selected-packages.
24402         (package--update-selected-packages): New function.
24403         (package-menu-execute): Use it before starting the transaction,
24404         this way the list of selected packages is updated even when the
24405         transaction fails.
24406         (package-menu--perform-transaction): Don't edit selected-packages.
24408 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
24410         Fix etags reading of compressed files
24411         * lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]: Define.
24412         Include fcntl.h, for O_CLOEXEC.
24413         (process_file_name): Don't use 'popen', whose streams cannot be
24414         rewound.  Instead, uncompress the file to a temporary file,
24415         created by 'etags_mktmp', and read from that as usual.
24416         (etags_mktmp): New function.
24417         * test/etags/ETAGS.good_1:
24418         * test/etags/ETAGS.good_2:
24419         * test/etags/ETAGS.good_3:
24420         * test/etags/ETAGS.good_4:
24421         * test/etags/ETAGS.good_5: Update to be consistent with latest
24422         changes in etags.c regarding reading compressed files.
24424         Improve documentation of 'set-fontset-font'
24425         * doc/lispref/display.texi (Fontsets): Document the value of nil
24426         for the 3rd argument of 'set-fontset-font'.
24428         Fix documentation of forward-line
24429         * src/cmds.c (Fforward_line): Clarify the return value if the line
24430         at end of accessible portion of the buffer has no newline.
24431         * doc/lispref/positions.texi (Text Lines): Document what happens
24432         if the line at end of accessible portion of buffer has no newline.
24433         (Bug#20587)
24435 2015-05-22  Glenn Morris  <rgm@gnu.org>
24437         * admin/charsets/Makefile.in (TRANS_TABLE): Add short aliases.
24439         * admin/charsets/mapconv (LC_ALL): Set to C.
24441         * Makefile.in: Add admin/charsets into top-level clean rules.
24442         (clean): Add admin/charsets.
24443         (maybeclean_dirs): New variable.
24444         (distclean, bootstrap-clean, maintainer-clean): Use $maybeclean_dirs.
24446         * admin/charsets/Makefile.in (LOCAL, local): Fix members.
24448 2015-05-22  Artur Malabarba  <bruce.connor.am@gmail.com>
24450         * lisp/emacs-lisp/package.el (package-selected-packages): Fix doc.
24452 2015-05-22  Glenn Morris  <rgm@gnu.org>
24454         Generate admin/charsets Makefile via configure, and make more portable
24455         * configure.ac (SUBDIR_MAKEFILES): Add admin/charsets/Makefile.
24456         (admin/charsets/Makefile): Generate it.
24457         * admin/charsets/Makefile.in: Rename from Makefile.
24458         (AWK, srcdir, top_srcdir, AM_DEFAULT_VERBOSITY):
24459         New variables, set by configure.
24460         (charsetdir, lispintdir, mapfiledir, AM_V_GEN, am__v_GEN_)
24461         (am__v_GEN_0, am__v_GEN_1, AM_V_at, am__v_at_, am__v_at_0)
24462         (am__v_at_1, LOCAL, mapconv, run_mapconv, big5, compact, cp51932)
24463         (cp932, eucjp_ms, gb180302, gb180304, kuten): New variables.
24464         (TRANS_TABLE, CHARSETS): Add directory prefix to value.
24465         (all): Declare PHONY.
24466         (local): New PHONY target.
24467         (map_template): New template.  Use to define short PHONY aliases.
24468         (*.map): Add directory prefixes to targets and prerequisites.
24469         Respect make verbosity.
24470         (JISC6226.map): Replace non-portable sed append without newline.
24471         (install): Remove rule.
24472         (clean): Only delete temporary sedscript.
24473         (bootstrap-clean, distclean, maintainer-clean, extraclean)
24474         (totalclean): New PHONY rules.
24475         * admin/charsets/mapconv (BASE): Replace basename with expr.
24476         (FILE): Add "mapfiles" subdirectory.
24477         (AWK): New variable.  Use throughout in place of "awk".
24478         (main): Use "gunzip -c" in place of "zcat".
24479         Don't leave whitespace before "p", for older sed.
24480         * admin/charsets/mapfiles/PTCP154: Add final newline,
24481         to make older sed versions happy.
24483 2015-05-22  Stefan Monnier  <monnier@iro.umontreal.ca>
24485         * lisp/autorevert.el: Use lexical-binding.  Fix hook usage.
24486         (global-auto-revert-ignore-buffer, auto-revert-notify-modified-p)
24487         (auto-revert-notify-watch-descriptor): Use defvar-local.
24488         (find-file-hook, auto-revert-tail-mode)
24489         (auto-revert-notify-add-watch): Use setq-local.
24490         (auto-revert-notify-add-watch): Don't call make-local-variable on
24491         kill-buffer-hook (bug#20601).
24493 2015-05-21  Stefan Monnier  <monnier@iro.umontreal.ca>
24495         Change defgeneric so it doesn't completely redefine the function
24496         * lisp/emacs-lisp/cl-generic.el (cl-generic-define): Don't throw away
24497         previously defined methods.
24498         (cl-generic-define-method): Let-bind purify-flag instead of
24499         using `fset'.
24500         (cl--generic-prefill-dispatchers): Only define during compilation.
24501         (cl-method-qualifiers): Remove redundant alias.
24502         (help-fns-short-filename): Silence byte-compiler.
24503         * test/automated/cl-generic-tests.el:
24504         Adjust to new defgeneric semantics.
24506 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
24508         * lisp/emacs-lisp/package.el (package-menu-execute):
24509         Remove reference to remove-dups.
24511 2015-05-21  kwhite  <kwhite@gnu.org>
24513         * lisp/erc/erc.el: Hide network/channel messages.
24514         (erc-network-hide-list, erc-channel-hide-list): New lists to define
24515         message types per network/channel.
24516         (erc-add-targets): New function to parse list of targets.
24517         (erc-hide-current-message-p): Modify to check for new targets.
24519 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
24521         Don't quote nil and t in doc strings
24522         This is as per "Tips for Documentation Strings" in the elisp manual.
24523         For consistency, do the same in diagnostics and comments.
24525 2015-05-21  Eli Zaretskii  <eliz@gnu.org>
24527         Fix a minor problem with mouse-face on mode line
24528         * src/xdisp.c (note_mode_line_or_margin_highlight): Reset the
24529         mouse face also if the mouse pointer hovers above mode-line glyphs
24530         that don't come from any Lisp string.  (Bug#20620)
24532 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
24534         * lisp/emacs-lisp/package.el: Fix selected-package logic.
24535         (package-menu-execute): Mark as selected all non-upgrade packages
24536         being installed.
24537         (package-menu--perform-transaction): Don't mark anything.
24539         * lisp/emacs-lisp/package.el: Mode-line progress report.
24540         (package-menu--transaction-status): New variable.
24541         (package-menu-mode, package-menu--perform-transaction): Use it.
24543         * lisp/emacs-lisp/package.el: Better transaction messages.
24544         (package-menu--partition-transaction): New function.
24545         (package-menu--prompt-transaction-p, package-menu-execute):
24546         Use it.
24547         (package-menu--perform-transaction): Don't do any messaging.
24549         * lisp/emacs-lisp/package.el: Revert async package transactions.
24550         (package-menu-async): Update doc.
24551         (package-install-from-archive, package-download-transaction)
24552         (package-install, package-menu--perform-transaction)
24553         (package-menu-execute): Remove asynchronous functionality.
24555 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
24557         Revert doc string changes to f90.el
24558         Problem reported by Glenn Morris in:
24559         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00596.html
24560         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
24561         Revert recent changes to doc strings, as it's intended that they
24562         use grave accent, not quote.
24564 2015-05-20  Bozhidar Batsov  <bozhidar@batsov.com>
24566         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p):
24567         Improve parameter name.
24569         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p): New inline function.
24571 2015-05-20  Paul Eggert  <eggert@cs.ucla.edu>
24573         Don't require help-fns when not needed
24574         * lisp/emacs-lisp/autoload.el, lisp/emacs-lisp/advice.el:
24575         * lisp/emacs-lisp/elint.el:
24576         Don't require help-fns at the top level
24577         * lisp/emacs-lisp/advice.el (ad-arglist):
24578         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
24579         Don't require help-fns.  (Bug#17001)
24581 2015-05-20  Eli Zaretskii  <eliz@gnu.org>
24583         Fix slash collapsing in etags on MS-Windows
24584         * lib-src/etags.c (canonicalize_filename) [DOS_NT]: Separate the
24585         MS-Windows code from the Posix code, and support collapsing both
24586         forward- and back-slashes on MS-Windows.  Fixes a regression found
24587         by the test suite.
24589         Improve documentation of glyphless-char-display
24590         * doc/lispref/display.texi (Glyphless Chars): Improve
24591         documentation of glyphless character display.
24593         Fix "acronym" display of glyphless characters on w32
24594         * src/w32term.c (x_draw_glyphless_glyph_string_foreground): Don't
24595         ignore "acronym" substitutes of 1 character for glyphless characters.
24597 2015-05-20  Oleh Krehel  <ohwoeowho@gmail.com>
24599         Add an automated test for let-when-compile
24600         * test/automated/subr-tests.el (let-when-compile): New test.
24602         Add let-when-compile macro instead of using pcase-let
24603         * lisp/subr.el (let-when-compile): New let-like macro that makes its
24604         bindings known to macros like `eval-when-compile' in the body.
24605         * lisp/emacs-lisp/lisp-mode.el: Change the top-level `pcase-let' to
24606         a `let-when-compile'.  Also comment out the unused lexical var
24607         `el-kws-re'.
24608         The change greatly improves readability, while providing almost the
24609         same (even shorter) byte code: instead of pre-evaluating 10 variables,
24610         tossing them into a list, and destructuring that list a full screen
24611         page later, the variables are simply bound as they are evaluated,
24612         wrapped individually in `eval-when-compile'.
24614 2015-05-20  Artur Malabarba  <bruce.connor.am@gmail.com>
24616         * lisp/emacs-lisp/package.el: "Delete" button in Help buffer.
24617         (package-delete-button-action): New function.
24618         (describe-package-1): Add Delete button.
24620         * lisp/emacs-lisp/package.el: Better dependency description.
24621         (package--used-elsewhere-p): New optional arg, ALL, and return
24622         package-desc objects instead of names.
24623         (package-delete): Update accordingly.
24624         (describe-package-1): Describe which packages require the package.
24626 2015-05-20  Martin Rudalics  <rudalics@gmx.at>
24628         Fix handling and doc-string of FRAME arg of `other-buffer' (Bug#20533)
24629         * src/buffer.c (Fother_buffer): Argument FRAME must denote a live frame.
24630         Fix doc-string.
24632         Improve `switch-to-buffer' in strongly dedicated windows (Bug#20472)
24633         * lisp/window.el (switch-to-buffer-in-dedicated-window): New option.
24634         (switch-to-buffer): If the selected window is strongly dedicated
24635         to its buffer, signal error before prompting for buffer name.
24636         Handle `switch-to-buffer-in-dedicated-window'.
24637         * doc/lispref/windows.texi (Switching Buffers):
24638         Document `switch-to-buffer-in-dedicated-window'.
24640 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
24642         Prefer "this" to “this” in doc strings
24643         This mostly just straightens quotes introduced in my previous patch.
24644         Suggested by Dmitry Gutov in:
24645         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00565.html
24646         * lisp/faces.el, lisp/gnus/gnus-group.el, lisp/ldefs-boot.el:
24647         * lisp/mail/supercite.el, lisp/net/tramp.el, lisp/recentf.el:
24648         * lisp/textmodes/artist.el, lisp/textmodes/rst.el:
24649         * lisp/textmodes/tildify.el, lisp/vc/ediff-util.el:
24650         * lisp/vc/log-edit.el, lisp/xt-mouse.el:
24651         Prefer straight double quotes to curved double quotes in doc strings.
24653         Fix minor quoting problems in doc strings
24654         These were glitches regardless of how or whether we tackle the
24655         problem of grave accent in doc strings.
24656         * lisp/calc/calc-aent.el (math-restore-placeholders):
24657         * lisp/ido.el (ido-ignore-buffers, ido-ignore-files):
24658         * lisp/leim/quail/cyrillic.el ("bulgarian-alt-phonetic"):
24659         * lisp/leim/quail/hebrew.el ("hebrew-new")
24660         ("hebrew-biblical-sil"):
24661         * lisp/leim/quail/thai.el ("thai-kesmanee"):
24662         * lisp/progmodes/idlw-shell.el (idlwave-shell-file-name-chars):
24663         Used curved quotes to avoid ambiguities like ‘`''’ in doc strings.
24664         * lisp/calendar/calendar.el (calendar-month-abbrev-array):
24665         * lisp/cedet/semantic/mru-bookmark.el (semantic-mrub-cache-flush-fcn):
24666         * lisp/cedet/semantic/symref.el (semantic-symref-tool-baseclass):
24667         * lisp/cedet/semantic/tag.el (semantic-tag-copy)
24668         (semantic-tag-components):
24669         * lisp/cedet/srecode/cpp.el (srecode-semantic-handle-:cpp):
24670         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
24671         * lisp/emacs-lisp/byte-opt.el (byte-optimize-all-constp):
24672         * lisp/emacs-lisp/checkdoc.el (checkdoc-message-text-engine):
24673         * lisp/emacs-lisp/generator.el (iter-next):
24674         * lisp/gnus/gnus-art.el (gnus-treat-strip-list-identifiers)
24675         (gnus-article-mode-syntax-table):
24676         * lisp/net/rlogin.el (rlogin-directory-tracking-mode):
24677         * lisp/net/soap-client.el (soap-wsdl-get):
24678         * lisp/net/telnet.el (telnet-mode):
24679         * lisp/org/org-compat.el (org-number-sequence):
24680         * lisp/org/org.el (org-remove-highlights-with-change)
24681         (org-structure-template-alist):
24682         * lisp/org/ox-html.el (org-html-link-org-files-as-html):
24683         * lisp/play/handwrite.el (handwrite-10pt, handwrite-11pt)
24684         (handwrite-12pt, handwrite-13pt):
24685         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
24686         * lisp/progmodes/idlwave.el (idlwave-mode, idlwave-check-abbrev):
24687         * lisp/progmodes/verilog-mode.el (verilog-tool)
24688         (verilog-string-replace-matches, verilog-preprocess)
24689         (verilog-auto-insert-lisp, verilog-auto-insert-last):
24690         * lisp/textmodes/makeinfo.el (makeinfo-options):
24691         * src/font.c (Ffont_spec):
24692         Fix minor quoting problems in doc strings, e.g., missing quote,
24693         ``x'' where `x' was meant, etc.
24694         * lisp/erc/erc-backend.el (erc-process-sentinel-2):
24695         Fix minor quoting problem in other string.
24696         * lisp/leim/quail/ethiopic.el ("ethiopic"):
24697         * lisp/term/tvi970.el (tvi970-set-keypad-mode):
24698         Omit unnecessary quotes.
24699         * lisp/faces.el (set-face-attribute, set-face-underline)
24700         (set-face-inverse-video, x-create-frame-with-faces):
24701         * lisp/gnus/gnus-group.el (gnus-group-nnimap-edit-acl):
24702         * lisp/mail/supercite.el (sc-attribs-%@-addresses)
24703         (sc-attribs-!-addresses, sc-attribs-<>-addresses):
24704         * lisp/net/tramp.el (tramp-methods):
24705         * lisp/recentf.el (recentf-show-file-shortcuts-flag):
24706         * lisp/textmodes/artist.el (artist-ellipse-right-char)
24707         (artist-ellipse-left-char, artist-vaporize-fuzziness)
24708         (artist-spray-chars, artist-mode, artist-replace-string)
24709         (artist-put-pixel, artist-text-see-thru):
24710         * lisp/vc/ediff-util.el (ediff-submit-report):
24711         * lisp/vc/log-edit.el (log-edit-changelog-full-paragraphs):
24712         Use double-quotes rather than TeX markup in doc strings.
24713         * lisp/skeleton.el (skeleton-pair-insert-maybe):
24714         Reword to avoid the need for grave accent and apostrophe.
24715         * lisp/xt-mouse.el (xterm-mouse-tracking-enable-sequence):
24716         Don't use grave and acute accents to quote.
24718 2015-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
24720         * lisp/emacs-lisp/generator.el (cps--gensym, cps--transform-1):
24721         Silence compiler.
24723 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
24725         Try to port new etags tests to MS-Windows
24726         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
24727         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
24728         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
24729         Adjust to test-case changes below.
24730         * test/etags/Makefile (CSRC): Remove dostorture.c.
24731         Whatever it was trying to test, wasn't working portably.
24732         (LC_ALL): Remove.  Apparently there wasn't an encoding problem,
24733         just a line-ending problem.
24734         * test/etags/c-src/dostorture.c: Remove.
24735         * test/etags/cp-src/c.C: Remove stray CR.
24736         * test/etags/html-src/algrthms.html: Remove trailing CRs.
24737         State UTF-8 as the encoding.  The file is ASCII so it doesn't matter,
24738         but if someone edits it later it should stay UTF-8-compatible.
24740 2015-05-19  Eli Zaretskii  <eliz@gnu.org>
24742         Fix display of overlapping window-specific overlays
24743         * src/keyboard.c (adjust_point_for_property): When adjusting point
24744         due to display strings, ignore overlays that are specific to
24745         windows other than the currently selected one.
24746         * src/xdisp.c (handle_single_display_spec): If the display
24747         property comes from an overlay, arrange for buffer iteration to
24748         resume only after the end of that overlay.  (Bug#20607)
24750 2015-05-19  Dmitry Gutov  <dgutov@yandex.ru>
24752         New command icomplete-force-complete-and-exit
24753         * lisp/icomplete.el (icomplete-force-complete-and-exit):
24754         New command
24755         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00461.html)
24756         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00516.html).
24757         (icomplete-minibuffer-map): Bind C-j to it.
24758         (icomplete-forward-completions, icomplete-backward-completions):
24759         Mention the new command in the docstring.
24760         * lisp/minibuffer.el (minibuffer-force-complete-and-exit):
24761         Revert the previous fix for bug#17545.
24763 2015-05-19  Martin Rudalics  <rudalics@gmx.at>
24765         Fix last commit
24767         In Elisp manual explain how to override window manager positioning
24768         (Bug#20552)
24769         * doc/lispref/frames.texi (Position Parameters): Give example of
24770         how to override a window manager positioning decision.
24772         Clarify concept of "surrogate minibuffer frames" (Bug#20538)
24773         * src/frame.c (Fdelete_frame): In doc-string mention that frame
24774         can't be deleted if it has a surrogate minibuffer.
24775         * doc/lispref/frames.texi (Minibuffers and Frames)
24776         (Deleting Frames): Explain "surrogate minibuffer frames".
24778         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 19/12 MB.
24780 2015-05-18  Glenn Morris  <rgm@gnu.org>
24782         Add option to ignore commit lines matching a pattern in ChangeLog
24783         * build-aux/gitlog-to-changelog: Add --ignore-line option.
24784         * build-aux/gitlog-to-emacslog: Ignore lines matching '^; '.
24786 2015-05-18  Paul Eggert  <eggert@cs.ucla.edu>
24788         Don't skip new etags tests on non-UTF-8 hosts
24789         Problem reported by Eli Zaretskii for MS-Windows.
24790         * test/etags/Makefile (UTF8_LOCALE, UTF8_ENCODING): Remove.
24791         (LC_ALL): Set to C if the current locale isn't UTF-8.
24792         (.PHONY): Remove ediff_1 thru ediff_5.
24793         (check): Always run.
24795 2015-05-18  Glenn Morris  <rgm@gnu.org>
24797         * lisp/calculator.el (calculator-funcall):
24798         * lisp/textmodes/artist.el (artist-spray-random-points):
24799         Use standard degree/radian conversion utilities.
24801         Further lisp-complete-symbol related cleanup.
24802         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol):
24803         Unadvertise non-functional argument.  Replace obsolete alias.
24805 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
24807         Add a test case for Maven warning ouput
24808         * test/automated/compile-tests.el
24809         (compile-tests--test-regexps-data): Add a case for Maven warning
24810         ouput.
24811         (compile--test-error-line): Check the compilation message type, if
24812         it's specified in the test data.
24814 2015-05-18  Paul Pogonyshev  <pogonyshev@gmail.com>
24816         Update Maven compilation-mode entry to distinguish warnings
24817         * lisp/progmodes/compile.el
24818         (compilation-error-regexp-alist-alist): Update Maven entry to
24819         distinguish warnings (bug#20556).
24821 2015-05-18  Przemysław Wojnowski  <esperanto@cumego.com>
24823         * test/automated/sgml-mode-tests.el: New file.
24825 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
24827         Improve handling of the first Git revision
24828         * lisp/vc/log-view.el (log-view-toggle-entry-display): When
24829         there's no next entry, delete until the end of the buffer.
24830         (log-view-end-of-defun-1): Stop at eob.
24831         * lisp/vc/vc-annotate.el
24832         (vc-annotate-show-diff-revision-at-line-internal): Don't give up
24833         when previous-revision is nil.
24834         * lisp/vc/vc-git.el (vc-git-expanded-log-entry): End the arguments
24835         with `--' to avoid ambiguity.
24836         (vc-git-annotate-extract-revision-at-line): Exclude `^' from the
24837         returned revision string.
24838         (vc-git-annotate-time): Expect `^' before the first revision.
24839         * lisp/vc/vc-git.el (vc-git-diff): Diff against an empty tree if
24840         REV1 is nil, and REV2 is not.
24841         * lisp/vc/vc.el: Update the description of the `diff' function.
24843 2015-05-18  Oleh Krehel  <ohwoeowho@gmail.com>
24845         Allow checkdoc to be called in batch
24846         * lisp/emacs-lisp/checkdoc.el (checkdoc-error): When `noninteractive'
24847         is non-nil, echo the error with `warn'.
24848         How it can be used in -batch:
24849         (with-current-buffer (find-file "checkdoc.el")
24850           (checkdoc-current-buffer t))
24852 2015-05-18  Glenn Morris  <rgm@gnu.org>
24854         * lisp/calendar/solar.el (solar-ecliptic-coordinates): Use float-pi.
24856 2015-05-17  Paul Eggert  <eggert@cs.ucla.edu>
24858         * admin/notes/unicode: New section "binary files".
24860         Change new etags test to use UTF-8 encoding
24861         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
24862         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
24863         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
24864         * test/etags/html-src/index.shtml, test/etags/html-src/software.html:
24865         * test/etags/html-src/softwarelibero.html:
24866         Switch to UTF-8 encoding.
24867         * test/etags/Makefile (SRCS): Adjust to switch to UTF-8.
24868         Remove Makefile, as it's too incestuous to have the test input
24869         include the build procedure.
24870         (UTF8_LOCALE, UTF_ENCODING): New macros.
24871         (LC_ALL): If possible, set to a UTF-8 encoding if not already UTF-8.
24872         (check): Skip if not UTF-8.
24873         (.PHONY): New rule.
24874         (FRC): Remove, as superseded by .PHONY.  All uses removed.
24875         (regexfile): Prefer printf to echo when outputting oddball chars.
24876         (.PRECIOUS): Remove, as these files are not built.
24878         Rename 'foo-gzipped' to 'foo.gz'
24879         * test/automated/data/decompress/foo.gz:
24880         Rename from test/automated/data/decompress/foo-gzipped,
24881         to make it easier for other tools to tell that it's compressed.
24882         * test/automated/zlib-tests.el (zlib--decompress):
24883         Adjust to renamed file.
24885 2015-05-17  Dmitry Gutov  <dgutov@yandex.ru>
24887         Set up default-directory
24888         * lisp/vc/vc-annotate.el (vc-annotate-mode-map): Remove duplicate
24889         binding for `v'.
24890         (vc-annotate-show-changeset-diff-revision-at-line): Set up an
24891         appropriate value for default-directory.
24893 2015-05-17  Samer Masterson  <samer@samertm.com>
24895         * lisp/eshell/em-term.el (eshell-term-sentinel):
24896         No-op by default, only kills term buffer if
24897         `eshell-destroy-buffer-when-process-dies' is non-nil.  (Bug#18108)
24898         (eshell-destroy-buffer-when-process-dies): New custom to preserve
24899         previous behavior.
24901         eshell: Introduce new buffer syntax
24902         The new buffer syntax '#<buffer-name>' is equivalent to '#<buffer
24903         buffer-name>'.  Remove `eshell-buffer-shorthand', as it is no longer
24904         needed (Bug#19319).
24905         * lisp/eshell/esh-io.el (eshell-buffer-shorthand): Remove.
24906         (eshell-get-target): Remove shorthand-specific code.
24907         * lisp/eshell/esh-arg.el (eshell-parse-special-reference): Parse
24908         '#<buffer-name>'.
24910 2015-05-17  Jan D  <jan.h.d@swipnet.se>
24912         Merge branch 'master' into cairo
24914 2015-04-26  Jan D  <jan.h.d@swipnet.se>
24916         Merge branch 'master' into cairo
24918         Add PBM support for cairo
24919         * src/image.c (xcolor_to_argb32): New function.
24920         (get_spec_bg_or_alpha_as_argb): Call xcolor_to_argb32.
24921         (pbm_load, png_load_body, jpeg_load_body, gif_load): Only use
24922         XImagePtr if ! USE_CAIRO.
24923         (pbm_load): Add cairo support.
24925 2015-04-12  Jan D  <jan.h.d@swipnet.se>
24927         * src/xterm.c (x_free_cr_resources): Rename from x_prepare_for_xlibdraw.
24928         (x_cr_draw_frame, x_cr_export_frames, x_shift_glyphs_for_insert)
24929         (x_free_frame_resources): Rename x_prepare_for_xlibdraw to
24930         x_free_cr_resources.
24932         Handle specified bg in images.  Use generic libpng code for PNGs.
24933         * src/image.c (get_spec_bg_or_alpha_as_argb)
24934         (create_cairo_image_surface): New functions when USE_CAIRO.
24935         (xpm_load): Call the above functions.  Handle XPM without mask
24936         when USE_CAIRO.
24937         (png_load_body): Handle USE_CAIRO case.
24938         (png_load): Remove USE_CAIRO specific fuction, modify png_load_body
24939         instead.
24940         (jpeg_load_body): Call create_cairo_image_surface.
24941         (gif_load, svg_load_image): Handle specified background, call
24942         create_cairo_image_surface.
24943         * src/xterm.c (x_draw_image_glyph_string): Add missing USE_CAIRO.
24945 2015-04-11  Jan D  <jan.h.d@swipnet.se>
24947         Support GIF and TIFF with cairo
24948         * configure.ac: Allow jpeg with cairo.
24949         Allow tiff and gif with cairo.
24950         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
24951         (tiff_load): Create cairo image surface if USE_CAIRO.
24952         (gif_load): Ditto.
24954         Support JPEG with USE_CAIRO
24955         * configure.ac: Allow jpeg with cairo.
24956         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
24958 2015-04-05  Jan D  <jan.h.d@swipnet.se>
24960         Support RSVG and cairo
24961         * configure.ac: Allow rsvg with cairo.  Move back HAVE_RSVG.
24962         * src/dispextern.h (struct image): Add cr_data2 if cairo.
24963         * src/image.c: #undef COLOR_TABLE_SUPPORT when USE_CAIRO.
24964         (x_clear_image): Free cr_data and cr_data2 if set.
24965         (xpm_load): Assign data to cr_data2.
24966         (svg_load_image): Convert from GdkPixbuf to CAIRO_FORMAT_ARGB32.
24968 2015-04-03  Jan D  <jan.h.d@swipnet.se>
24970         Introduce limited Xpm support (32 bit ZPixmap) for Cairo
24971         * configure.ac (HAVE_RSVG): Move after cairo.
24972         (USE_CAIRO): Disable rsvg, don't disable Xpm.
24973         * src/image.c (prepare_image_for_display): Don't load if USE_CAIRO.
24974         (x_clear_image): If USE_CAIRO, also free possible img->ximg->obdata and
24975         don't return early.
24976         (ALLOC_XPM_COLORS): Don't define when USE_CAIRO.
24977         (xpm_load): Convert simple Xpms (32 bit ZPixmap) to CAIRO_FORMAT_ARGB32
24978         and create a surface.
24980         Tool tips for menus did not show any text.
24981         * src/xterm.c (x_update_begin): Don't create any surface for non-visible
24982         tip frames, the geometry may be wrong.
24984         Merge branch 'master' into cairo, fixes tooltips not shown.
24986         Merge branch 'master' into cairo
24988         Add CAIRO_CFLAGS to lwlib/Makefile.in
24989         * Makefile.in (CAIRO_CFLAGS): Add.
24991 2015-02-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
24993         * src/ftcrfont.c (ftcrfont_draw): Don't flush when drawing to screen.
24995 2015-02-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
24997         Draw outermost line using black relief and erase corners also for cairo.
24998         * src/xterm.c [USE_CAIRO]: Include math.h.
24999         (enum corners) [USE_CAIRO]: New enum.
25000         (x_erase_corners_for_relief) [USE_CAIRO]: New function.
25001         (x_draw_relief_rect) [USE_CAIRO]: Use it.  If box width is larger
25002         than 1, draw the outermost line using the black relief.
25004         * src/xterm.c (x_fill_trapezoid_for_relief):
25005         Remove unnecessary cairo_close_path.
25007 2015-02-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
25009         * src/xterm.c (x_draw_relief_rect) [USE_CAIRO]: Reset clipping.
25011         * src/xterm.c (x_draw_stretch_glyph_string):
25012         Call x_reset_clip_rectangles instead of XSetClipMask.
25014         Use int instead of unsigned int for width and height args.
25015         * src/xterm.c (x_cr_draw_image, x_fill_rectangle, x_draw_rectangle)
25016         (x_fill_trapezoid_for_relief): Use int instead of unsigned int for
25017         width and height args.
25019         Modernize k&r cairo-related function declarations.
25020         * src/gtkutil.c (xg_page_setup_dialog, xg_get_page_setup, draw_page)
25021         (xg_print_frames_dialog): Modernize k&r declarations.
25022         * src/xfns.c (Fx_export_frames, Fx_page_setup_dialog, Fx_get_page_setup)
25023         (Fx_print_frames_dialog): Modernize k&r declarations.
25024         * src/xterm.c (x_gc_get_ext_data, x_extension_initialize)
25025         (x_begin_cr_clip, x_end_cr_clip, x_set_cr_source_with_gc_foreground)
25026         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
25027         (x_cr_destroy_fringe_bitmap, x_cr_draw_frame, x_cr_accumulate_data)
25028         (x_cr_destroy, x_cr_export_frames, x_prepare_for_xlibdraw)
25029         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
25030         (x_draw_rectangle, x_clear_window, x_fill_trapezoid_for_relief)
25031         (x_clear_area): Modernize k&r declarations.
25033         Implement wave-style variant of underlining for cairo.
25034         * src/xterm.c (x_draw_horizontal_wave) [USE_CAIRO]: New function.
25035         (x_draw_underwave) [USE_CAIRO]: Use it.
25037         * src/xterm.c (x_draw_window_divider): Use x_fill_rectangle
25038         instead of XFillRectangle.
25040 2015-02-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
25042         Fix fringe bitmap initialization for cairo
25043         * src/fringe.c (init_fringe_bitmap) [USE_CAIRO]: Adjust bitmap
25044         data for cairo image surface.
25045         * src/xterm.c (x_cr_define_fringe_bitmap):
25046         Call cairo_surface_mark_dirty.
25048 2015-02-11  Jan D  <jan.h.d@swipnet.se>
25050         Add cairo drawing
25051         * configure.ac (with-cairo): New option.
25052         (USE_CAIRO): Default to yes for Gtk+ 3.  Add code to test for cairo,
25053         set CAIRO_CFLAGS, CAIRO_LIBS.  Add ftcrfonto to FONT_OBJ if cairo.
25054         Output "Does Emacs use cairo?".
25055         * lisp/version.el (emacs-version): Add cairo version.
25056         * src/Makefile.in (CAIRO_CFLAGS, CAIRO_LIBS): New variables.
25057         (FONT_OBJ): Add comment about ftcrfont.
25058         (ALL_CFLAGS): Add CAIRO_CFLAGS.
25059         (LIBES): Add CAIRO_LIBS.
25060         * src/dispextern.h (struct image): Add cr_data for cairo.
25061         (x_cr_init_fringe): Declare.
25062         * src/font.c (syms_of_font): Call syms_of_ftcrfont for cairo.
25063         * src/font.h (ftcrfont_driver, syms_of_ftcrfont): Declare
25064         * src/fringe.c (x_cr_init_fringe): New function name that shares code
25065         with w32_init_fringe.
25066         * src/ftcrfont.c: New font driver for cairo, based on the ftfont driver.
25067         * src/ftfont.c (ftfont_info_size); New global variable.
25068         (ftfont_open2): New extern function almost the same as old ftfont_open,
25069         but takes the font_object as argument.
25070         (ftfont_open): Build font object and call ftfont_open2.
25071         * src/ftfont.h (ftfont_open2, ftfont_info_size): Declare.
25072         * src/gtkutil.c (xg_clear_under_internal_border)
25073         (xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos):
25074         Only queue_draw if not cairo.  Change args to x_clear_area.
25075         (xg_get_font): Use Qftcr when using cairo, Qxft otherwise.
25076         (xg_page_setup_dialog, xg_get_page_setup, draw_page)
25077         (xg_print_frames_dialog): New functions for printing.
25078         * src/gtkutil.h (xg_page_setup_dialog, xg_get_page_setup)
25079         (xg_print_frames_dialog): Declare.
25080         * src/image.c: Add defined (USE_CAIRO) for PNG.
25081         Add !defined USE_CAIRO for W32 PNG code.
25082         (x_clear_image): If cairo, destroy the surface in cr_data.
25083         (png_load): Add new cairo compatible implementation.
25084         (lookup_image_type): Add defined (USE_CAIRO) for define png_type.
25085         * src/xfns.c: New section Printing.
25086         (x-export-frames, x-page-setup-dialog, x-get-page-setup)
25087         (x-print-frames-dialog): New printing functions.
25088         (Fx_create_frame, x_create_tip_frame): Register ftcrfont if cairo.
25089         (syms_of_xfns): Defsym Qorientation, Qtop_margin, Qbottom_margin,
25090         Qportrait, Qlandscape, Qreverse_portrait, Qreverse_landscape).
25091         (syms_of_xfns): Provide cairo and defvar cairo-version-string.
25092         defsubr Sx_page_setup_dialog, Sx_get_page_setup, Sx_print_frames_dialog.
25093         * src/xterm.c (x_clear_area1, x_prepare_for_xlibdraw)
25094         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
25095         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
25096         (x_gc_get_ext_data, x_extension_initialize, x_cr_accumulate_data):
25097         Declare.
25098         (FRAME_CR_CONTEXT, FRAME_CR_SURFACE): New macros.
25099         (max_fringe_bmp, fringe_bmp): New variables.
25100         (x_gc_get_ext_data, x_extension_initialize)
25101         (x_cr_destroy_surface, x_begin_cr_clip, x_end_cr_clip)
25102         (x_set_cr_source_with_gc_foreground)
25103         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
25104         (x_cr_destroy_fringe_bitmap, x_cr_draw_image, x_cr_draw_frame)
25105         (x_cr_accumulate_data, x_cr_destroy, x_cr_export_frames)
25106         (x_prepare_for_xlibdraw, x_set_clip_rectangles)
25107         (x_reset_clip_rectangles, x_fill_rectangle, x_draw_rectangle)
25108         (x_clear_window, x_fill_trapezoid_for_relief): New functions.
25109         (x_update_begin): Create cairo surface if needed.
25110         (x_draw_vertical_window_border): Call x_fill_rectangle for cairo.
25111         (x_update_end): Paint cairo drawing surface to xlib surface.
25112         (x_clear_under_internal_border, x_after_update_window_line): Adjust
25113         arguments to x_clear_area.
25114         (x_draw_fringe_bitmap): Call x_fill_rectangle.  Get GC values and
25115         call x_cr_draw_image for cairo.  Call x_reset_clip_rectangles instead
25116         of XSetClipMask.
25117         (x_set_glyph_string_clipping)
25118         (x_set_glyph_string_clipping_exactly): Use x_set_clip_rectangles
25119         instead of XSetClipRectangles.
25120         (x_clear_glyph_string_rect, x_draw_glyph_string_background):
25121         Use x_fill_rectangle instead of XFillRectangle.
25122         (x_draw_glyph_string_foreground)
25123         (x_draw_composite_glyph_string_foreground)
25124         (x_draw_glyphless_glyph_string_foreground): Use x_draw_rectangle
25125         instead of XDrawRectangle.
25126         (x_draw_relief_rect): Add code for USE_CAIRO.
25127         Call x_reset_clip_rectangles instead of XSetClipMask.
25128         (x_draw_box_rect): x_set_clip_rectangles instead of XSetClipRectangles,
25129         x_fill_rectangle instead of XFillRectangle, x_reset_clip_rectangles
25130         instead of XSetClipMask.
25131         (x_draw_image_foreground, x_draw_image_foreground_1):
25132         x_draw_rectangle instead of XDrawRectangle.
25133         (x_draw_glyph_string_bg_rect): x_fill_rectangle instead of
25134         XFillRectangle.
25135         (x_draw_image_glyph_string): If img has cr_data, use it as
25136         a cairo surface.
25137         (x_draw_stretch_glyph_string): x_set_clip_rectangles instead of
25138         XSetClipRectangles, x_fill_rectangle instead of XFillRectangle.
25139         (x_draw_glyph_string): x_fill_rectangle instead of XFillRectangle.,
25140         x_reset_clip_rectangles instead of XSetClipMask.
25141         (x_shift_glyphs_for_insert): Call x_prepare_for_xlibdraw.
25142         (x_clear_area1): New function that calls XClearArea.
25143         (x_clear_area): Takes frame as parameter, calls x_clear_area1 for
25144         non-cairo.
25145         (x_clear_frame): x_clear_window instead of XClearWindow.
25146         (x_scroll_run): Set frame garbaged if cairo.
25147         (XTmouse_position): Initialize *part to 0.
25148         (x_scroll_bar_create): Adjust arguments to x_clear_area.
25149         (x_scroll_bar_set_handle): x_clear_area1 instead of x_clear_area,
25150         x_fill_rectangle instead of XFillRectangle.
25151         (XTset_vertical_scroll_bar, XTset_horizontal_scroll_bar): Adjust
25152         arguments to x_clear_area.
25153         (x_scroll_bar_expose): x_draw_rectangle instead of XDrawRectangle.
25154         (handle_one_xevent): Adjust arguments to x_clear_area.
25155         Destroy cairo surface for frame if ConfigureNotify.
25156         (x_clip_to_row): x_set_clip_rectangles instead of XSetClipRectangles.
25157         (x_draw_hollow_cursor): x_draw_rectangle instead of XDrawRectangle,
25158         x_reset_clip_rectangles instead of XSetClipMask.
25159         (x_draw_bar_cursor): x_fill_rectangle instead of XFillRectangle,
25160         x_reset_clip_rectangles instead of XSetClipMask.
25161         (x_clear_frame_area): Adjust arguments to x_clear_area.
25162         (x_free_frame_resources): Call x_prepare_for_xlibdraw.
25163         (x_term_init): Call x_extension_initialize if cairo.
25164         (x_redisplay_interface): Add x_cr_define_fringe_bitmap,
25165         x_cr_destroy_fringe_bitmap for cairo.
25166         (x_initialize): Call x_cr_init_fringe for cairo.
25167         * src/xterm.h: Add include of cairo header files.
25168         (x_bitmap_record): Add img if cairo.
25169         (x_gc_ext_data): New struct for cairo.
25170         (x_display_info): Add ext_codes for cairo.
25171         (x_output): Add cr_context and cr_surface for cairo.
25172         (x_clear_area): Change arguments from Display*/Window to frame pointer.
25173         (x_query_color, x_begin_cr_clip, x_end_cr_clip)
25174         (x_set_cr_source_with_gc_foreground, x_set_cr_source_with_gc_background)
25175         (x_cr_draw_frame, x_cr_export_frames): Declare.
25177 2015-05-17  Johan Bockgård  <bojohan@gnu.org>
25179         Fix integer-valued `mouse-highlight' (Bug#20590)
25180         * src/xterm.c (handle_one_xevent) [USE_GTK]: Fix ifdef scope.
25182 2015-05-17  Eli Zaretskii  <eliz@gnu.org>
25184         MS-Windows followup for ASCIIfication of curved quotes
25185         * lisp/term/w32console.el (terminal-init-w32console): Repeat the
25186         test for curved quotes being displayable, after switching the
25187         terminal encoding.  (Bug#20545)
25189 2015-05-17  Jan D  <jan.h.d@swipnet.se>
25191         Add comment that x_shift_glyphs_for_insert is never called
25192         * src/xterm.c (x_shift_glyphs_for_insert, x_redisplay_interface):
25193         Add comment that this function is never called.
25195 2015-05-16  Glenn Morris  <rgm@gnu.org>
25197         * src/lisp.mk: Remove from repository and generate at build-time.
25198         * src/Makefile.in (lisp.mk): New rule to generate from loadup.el.
25199         (shortlisp_filter): New variable.
25200         (emacs$(EXEEXT), $(etc)/DOC): Depend on lisp.mk.
25201         (distclean): Remove lisp.mk.
25202         * Makefile.in ($(MAKEFILE_NAME)): No longer depend on src/lisp.mk.
25203         * lisp/loadup.el: Tweak layout to make it easier to parse.
25204         * make-dist: Do not distribute src/lisp.mk.
25206 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
25208         Display shorter dates in Git annotate output
25209         * lisp/vc/vc-git.el (vc-git-annotate-command): Use the short date
25210         format (when not overridden with vc-git-annotate-switches).
25211         (vc-git-annotate-time): Support the short format, as well as ISO
25212         8601 that has been used until now (bug#5428).
25214 2015-05-16  Paul Eggert  <eggert@cs.ucla.edu>
25216         ASCIIfy curved quotes on displays lacking them
25217         * lisp/international/mule-cmds.el (set-locale-environment):
25218         If curved quotes don't work, display straight ASCII approximations
25219         (Bug#20545).
25221 2015-05-16  Glenn Morris  <rgm@gnu.org>
25223         Small src/Makefile simplification
25224         * src/lisp.mk (shortlisp): Rename from lisp, remove $lispsource prefix.
25225         * src/Makefile.in (lisp): Derive from shortlisp.
25226         ($(etc)/DOC): Use $shortlisp rather than parsing lisp.mk.
25228 2015-05-16  Eli Zaretskii  <eliz@gnu.org>
25230         * lisp/help-mode.el (help-go-forward): Doc fix.
25231         (Bug#20577)
25233         * doc/lispref/debugging.texi (Profiling): Improve indexing.
25234         (Bug#20576)
25236 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
25238         * lisp/vc/vc-git.el (vc-git-resolve-when-done): Use `unless' to
25239         have one fewer `not'.
25241         * lisp/vc/vc-git.el (vc-git-diff-switches)
25242         (vc-git-annotate-switches, vc-git-resolve-conflicts)
25243         (vc-git-program, vc-git-root-log-format): Remove the redundant
25244         :group declarations.
25246 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
25248         Removes the predicate from lisp-complete-symbol (Bug#20456)
25249         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol): Do not use predicate
25250         and remove it from the docstring.
25252 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
25254         Add new option vc-git-resolve-conflicts
25255         * lisp/vc/vc-git.el (vc-git-resolve-conflicts): New variable.
25256         (vc-git-find-file-hook): Add to after-save-hook only when the
25257         above is non-nil.
25258         (vc-git-resolve-when-done): Update to honor the new variable.
25259         (Bug#20292)
25261 2015-05-16  Artur Malabarba  <bruce.connor.am@gmail.com>
25263         * lisp/emacs-lisp/tabulated-list.el: Don't error on null header-string.
25264         (tabulated-list-init-header): Document new behavior.
25265         (tabulated-list-print-fake-header): Do nothing if
25266         `tabulated-list--header-string' is nil.
25267         (tabulated-list--header-string): Add a docstring.
25268         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
25269         * etc/NEWS: Document it.
25271 2015-05-15  Leo Liu  <sdl.web@gmail.com>
25273         Revert "Fix cps--gensym"
25274         * lisp/emacs-lisp/generator.el (cps--gensym): Revert commit
25275         fbda511ab8069d0115eafca411a43353b85431b1 on 2015-05-14.
25277 2015-05-15  Glenn Morris  <rgm@gnu.org>
25279         Replace AC_SUBST_FILE in configure with include in Makefiles
25280         * configure.ac (DEPDIR, MKDEPDIR, deps_frag, lwlib_deps_frag)
25281         (oldxmenu_deps_frag, lisp_frag): Remove output variables/files.
25282         (AUTO_DEPEND): New output variable.
25283         * lwlib/Makefile.in (AUTO_DEPEND): New, set by configure.
25284         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
25285         (lwlib_deps_frag): Replace by conditional include.
25286         * lwlib/autodeps.mk: Remove file.
25287         * oldXMenu/Makefile.in (AUTO_DEPEND): New, set by configure.
25288         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
25289         (oldxmenu_deps_frag): Replace by conditional include.
25290         * oldXMenu/autodeps.mk: Remove file.
25291         * src/Makefile.in (AUTO_DEPEND): New, set by configure.
25292         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
25293         (lisp_frag): Replace by an include.
25294         (deps_frag): Replace by conditional include.
25295         * src/autodeps.mk: Remove file.
25297         Tweak japanese.el's loading of dependencies
25298         * lisp/loadup.el: Explicitly load cp51932 and eucjp-ms.
25299         * lisp/language/japanese.el: Use require rather than load.
25300         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
25301         Provide a feature.
25302         * admin/charsets/eucjp-ms.awk, admin/charsets/cp51932.awk:
25303         Provide a feature in the generated file.
25305 2015-05-15  Jan D  <jan.h.d@swipnet.se>
25307         Fix NS warnings
25308         * src/nsmenu.m (ns_popup_dialog)
25309         * src/nsimage.m (initFromXBM:width:height:fg:bg:)
25310         * src/nsfns.m (Fx_create_frame): Remove unused variables.
25311         (Fns_read_file_name): Initialize fname, remove ret.
25312         * src/nsterm.m (ns_draw_window_cursor): Handle DEFAULT_CURSOR in switch.
25313         (ns_get_color, ns_set_horizontal_scroll_bar, keyDown):
25314         Remove unused variable.
25315         (init): Add parantesis in if.
25316         (ns_create_terminal): Assign set_horizontal_scroll_bar_hook.
25318 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
25320         Fix a enum conversion warning in macfont.m
25321         * src/macfont.h (CharacterCollection): Typedef to NSCharacterCollection.
25322         (MAC_CHARACTER_COLLECTION_*): Use the NS variants.
25324 2015-05-15  Eli Zaretskii  <eliz@gnu.org>
25326         * lisp/textmodes/ispell.el (ispell-aspell-find-dictionary):
25327         Support Aspell dictionaries with names like "de-alt".  (Bug#20581)
25329 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
25331         * lisp/cus-start.el: Add ns-confirm-quit.
25333         Fix warnings on OSX 10.10
25334         * src/nsfns.m (MODAL_OK_RESPONSE): New define for different
25335         OSX versions.
25336         (Fns_read_file_name): Check against MODAL_OK_RESPONSE.
25337         (compute_tip_xy): Use convertRectToScreen for OSX >= 10.7
25338         * src/nsmenu.m (initWithContentRect:styleMask:backing:defer:)
25339         * src/nsimage.m (allocInitFromFile, setPixmapData): Only call
25340         setScalesWhenResized for OSX < 10.6.
25341         * src/nsterm.h (EmacsScroller): Declare scrollerWidth.
25342         * src/nsterm.m (ns_copy_bits): New function that does not use
25343         deprecated NSCopyBits.
25344         (ns_scroll_run, ns_shift_glyphs_for_insert): Call ns_copy_bits.
25345         (runAlertPanel): New function.
25346         (applicationShouldTerminate:): Call runAlertPanel.
25347         (initFrameFromEmacs, toggleFullScreen:): Only call
25348         useOptimizedDrawing for OSX < 10.10.
25349         (initFrameFromEmacs:): Only call allocateGState for OSX < 10.10.
25350         (windowWillUseStandardFrame:defaultFrame:): Cast arg to abs to int.
25351         (draggingEntered:): Returns NSDragOperation.
25352         (scrollerWidth): Use scrollerWidthForControlSize for OSX >= 10.7.
25354 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
25356         * lisp/emacs-lisp/package.el: Don't ensure-init during startup.
25357         (package--init-file-ensured): New variable.
25358         (package-initialize, package--ensure-init-file): Use it.
25360 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
25362         Honor :fore/background for XBM on NS (Bug#14969)
25363         * src/nsterm.h (EmacsImage): Add xbm_fg, remove initFromSkipXBM,
25364         initFromXBM takes bg, fg args, remove flip arg.
25365         (ns_image_from_XBM): Add bg, fg args.
25366         * src/image.c (x_create_bitmap_from_data)
25367         (Create_Pixmap_From_Bitmap_Data): ns_image_from_XBM takes bg, fg args.
25368         * src/nsimage.m (ns_image_from_XBM): Add fg, bg args, pass to
25369         initFromXBM.  Remove flip arg.
25370         (initFromSkipXBM): Move code to initFromXBM.
25371         (initFromXBM): Actually set fg and bg, instead of playing alpha games.
25372         Use fg, bg from args (Bug#14969).  Remove if (length) section, was
25373         always false.
25374         Remove bit flipping (bitPat, swt), generated incorrect images when
25375         width/height wasn't a multiple of 8.
25376         (setXBMColor:): Modify planes by comparing to saved xbm_fg.
25377         * src/nsterm.m (ns_draw_fringe_bitmap): initFromXBM takes fg, bg args,
25378         remove flip arg.
25380 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
25382         * lisp/emacs-lisp/package.el: Be more careful with the init file.
25383         (package--ensure-init-file): Check that user-init-file is set,
25384         exists, is readable, and is writable.  (Bug#20584)
25385         Also expand the docstring.
25387 2015-05-14  Wilson Snyder  <wsnyder@wsnyder.org>
25389         Sync with upstream verilog-mode revision 6232468
25390         * lisp/progmodes/verilog-mode.el
25391         (verilog-font-lock-grouping-keywords-face)
25392         (verilog-highlight-grouping-keywords): Fix use of face when
25393         `verilog-highlight-grouping-keywords' set.  Reported by Jeff Pompa.
25394         (verilog-auto-reset): Fix AUTORESET to ignore member resets if
25395         parent is reset, bug906.  Reported by Ken Schmidt.
25396         (verilog-auto-inout-module): Add fourth regexp argument to
25397         AUTOINOUTMODULE and AUTOINOUTCOMP for signals to not match, bug856.
25398         Reported by John Tillema.
25399         (verilog-auto-inst-port): Fix AUTOINST interfaces to not show
25400         modport if signal attachment is itself a modport.  Reported by
25401         Matthew Lovell.
25402         (verilog-auto-reset, verilog-auto-sense-sigs): Fix AUTORESET with
25403         always_comb and always_latch, bug844.  Reported by Greg Hilton.
25404         (verilog-at-constraint-p, verilog-beg-of-statement-1): Fix hanging
25405         with many curly-bracket pairs, bug663.
25406         (verilog-set-auto-endcomments): Fix end comments for functions of
25407         type void, etc.  Reported by Alex Reed.
25408         (verilog-do-indent): Fix electric tab deleting form-feeds.  Note
25409         caused by indent-line-to deleting tabls pre 24.5.
25410         (verilog-nameable-item-re): Fix nameable items that can have an
25411         end-identifier to include endchecker, endgroup, endprogram,
25412         endproperty, and endsequence.  Reported by Alex Reed.
25413         (verilog-label-be): When auto-commenting a buffer, consider
25414         auto-comments on all known keywords (not just a subset thereof).
25415         Reported by Alex Reed.
25416         (verilog-auto-end-comment-lines-re)
25417         (verilog-end-block-ordered-re, verilog-set-auto-endcomments):
25418         Automatically comment property/endproperty blocks to match other
25419         similar blocks like sequence/endsequence, function/endfunction, etc.
25420         Reported by Alex Reed.
25421         (verilog-set-auto-endcomments): Detect the function- or task-name
25422         when auto-commenting blocks that lack an explicit portlist.
25423         Reported by Alex Reed.
25424         (verilog-auto, verilog-auto-insert-last): Add AUTOINSERTLAST to
25425         allow post-AUTO user fixups, bug826.  Reported by Dennis Muhlestein.
25426         (verilog-no-indent-begin-re): When `verilog-indent-begin-after-if'
25427         is nil, fix indenting initial/final to match always statements,
25428         bug825.  Reported by Tim Clapp.
25429         (verilog-extended-complete-re): Fix indentation of DPI-C imports
25430         with c_identifiers, and DPI-C imports, bug557.  Reported by ZeDong
25431         Mao and Jason Forkey.
25432         (verilog-read-decls): Fix parsing typed interfaces.  Fix
25433         AUTOINOUTMODPORT missing types.  Reported by Stephan Bourduas.
25434         Fix localparam not being ignored in AUTOINSTPARAM,
25435         bug889.  Reported by Shannon Hill.
25436         (verilog-auto-output-every): Add regexp to AUTOOUTPUTEVERY,
25437         bug793.  Reported by Pierre-David Pfister.
25438         (verilog-auto-arg-format, verilog-auto-arg-ports):
25439         Add verilog-auto-arg-format to support newlines in AUTOARG.
25440         Reported by Jie Xiao.
25441         (verilog-batch-execute-func): Do not batch re-auto files loaded by
25442         Local Variables.  Fix printing "no changes to be saved" with
25443         verilog-batch.  Reported by Dan Dever.
25444         (verilog-auto-inout-module): Fix AUTOINOUTMODULE not inserting
25445         interface-only modules, bug721.  Reported by Dean Hoyt.
25446         Author: Alex Reed <acreed4@gmail.com>
25447         * lisp/progmodes/verilog-mode.el (verilog-beg-of-statement):
25448         Don't treat '<keyword>:<identifier>' as the start of a labeled
25449         statement, bug905.  Reported by Enzo Chi.
25450         (verilog-directive-re, verilog-compiler-directives)
25451         (verilog-keywords): Match full set of IEEE 2012-1800 compiler
25452         directives (plus some extras) when determining indentation, bug
25453         901.  Reported by Bernd Beuster.
25454         (verilog-at-constraint-p): Fix indentation of coverpoint bins if
25455         iff expression doesn't start with word-character, bug900.
25456         (verilog-optional-signed-range-re, verilog-optional-signed-re):
25457         Fix incorrect indentation/alignment of unsigned declarations,
25458         bug897.
25459         (verilog-looking-back, verilog-in-attribute-p): Fix labeling of
25460         always constructs, bug895.
25461         (verilog-calc-1): Fix verilog-mode constraint indentation, bug324.
25462         Reported by Eric Mastromarchi.
25463         (verilog-beg-of-statement): Fix indenting for some forms of
25464         constraintsm bug433.  Reported by Brad Parker.  Fix indentation of
25465         continued assignment incorrect if first line ends with ']', bug437.
25466         Reported by Dan Dever.  Fix indention of cover inside an
25467         ifdef, bug 862.  Reported by Bernd Beuster.  Fix labeling do-while
25468         blocks, bug842.
25469         (verilog-preprocessor-re): Fix fork/end UNMATCHED warning, bug859.
25470         Reported by Kaushal Modi.
25471         (verilog-set-auto-endcomments): Fix endlabel end comments, bug888.
25472         (verilog-backward-token): Fix indenting sensitivity lists with
25473         named events, bug840.  Reed.
25474         (verilog-no-indent-begin-re): Fix `verilog-indent-begin-after-if'
25475         nil not honoring 'forever', 'foreach', and 'do' keywords.
25477 2015-05-14  Paul Eggert  <eggert@cs.ucla.edu>
25479         Check for invalid GTK+ monitor scales
25480         * src/gtkutil.c (xg_get_gdk_scale): Return 1 for invalid scales,
25481         INT_MAX for too-large scales.  All callers changed to assume the
25482         result is valid (Bug#20432).
25483         (xg_frame_set_char_size, xg_update_scrollbar_pos):
25484         Calculate scale only if needed.
25485         Show ASCII approximations instead.
25487 2015-05-14  Eli Zaretskii  <eliz@gnu.org>
25489         Fix daemon crashes when linum-mode is turned on early on
25490         * src/window.c (Fwindow_end): Don't try calling display engine
25491         functions on initial-frame frame.  (Bug#20565)
25493         Fix selective diff browsing in Ediff
25494         * lisp/vc/ediff-util.el (ediff-focus-on-regexp-matches):
25495         Go to the beginning of the region before searching for the
25496         ediff-regexp-focus-* regexps.  (Bug#20568)
25498 2015-05-14  Jan D  <jan.h.d@swipnet.se>
25500         Fixes bug#20142
25501         * src/gtkutil.c (delete_cb): Don't send delete event here, it does
25502         arrive in the main loop, even for Gtk 3 (Bug#20142).
25504         Don't access display after i/o error (Bug#19147).
25505         * src/xterm.c (x_connection_closed): Add third arg ioerror.
25506         If ioerror, set display to 0 (Bug#19147).
25507         (x_error_quitter): Call x_connection_closed with third arg false.
25508         (x_io_error_quitter): Call x_connection_closed with third arg true.
25510         Handle GTK_SCALE, fixes Bug#20432.
25511         * src/gtkutil.c (xg_get_gdk_scale): New function.
25512         (xg_frame_set_char_size)
25513         (x_wm_set_size_hint, xg_get_default_scrollbar_width)
25514         (xg_get_default_scrollbar_height)
25515         (xg_update_horizontal_scrollbar_pos): Take GTK_SCALE in to account
25516         when setting sizes (Bug#20432).
25518 2015-05-13  Leo Liu  <sdl.web@gmail.com>
25520         * lisp/emacs-lisp/generator.el (cps--gensym): Fix.
25522 2015-05-13  Glenn Morris  <rgm@gnu.org>
25524         Fix bootstrap (void function cl-member).
25525         * lisp/emacs-lisp/cl-lib.el: Load cl-seq if no cl-loaddefs file.
25526         * lisp/emacs-lisp/cl-seq.el: Provide a feature.
25528 2015-05-13  Stefan Monnier  <monnier@iro.umontreal.ca>
25530         * lisp/loadup.el ("emacs-lisp/cl-generic"): Preload
25531         * src/lisp.mk (lisp): Add emacs-lisp/cl-generic.elc.
25532         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method):
25533         Avoid defalias for closures which are not immutable.
25534         (cl--generic-prefill-dispatchers): New macro.  Use it to prefill
25535         the dispatchers table with various entries.
25536         * lisp/emacs-lisp/ert.el (emacs-lisp-mode-hook):
25537         * lisp/emacs-lisp/seq.el (emacs-lisp-mode-hook): Use add-hook.
25539 2015-05-13  Eli Zaretskii  <eliz@gnu.org>
25541         Improve tagging of C bindings in DEFVAR_*
25542         * src/Makefile.in (TAGS): Add --regex options to tag the C binding
25543         from DEFVAR_*.
25545 2015-05-13  Paul Eggert  <eggert@cs.ucla.edu>
25547         * src/editfns.c (Fformat): Fix use-after-free bug (Bug#20548).
25549 2015-05-12  Glenn Morris  <rgm@gnu.org>
25551         * lisp/progmodes/tcl.el (tcl-filter):
25552         Handle comint-prompt-read-only like gud.el does.  (Bug#20549)
25554         Add basic VC push support
25555         * lisp/vc/vc.el (vc-push): New autoloaded command.
25556         * lisp/vc/vc-hooks.el (vc-prefix-map, vc-menu-map): Add vc-push.
25557         * lisp/vc/vc-bzr.el (vc-bzr--pushpull): New, factored from vc-bzr-pull.
25558         (vc-bzr-pull): Reimplement using vc-bzr--pushpull.
25559         (vc-bzr-push): New.
25560         * lisp/vc/vc-git.el (vc-git--pushpull): New, factored from vc-git-pull.
25561         (vc-git-pull): Reimplement using vc-git--pushpull.
25562         (vc-git-push): New.
25563         * lisp/vc/vc-hg.el (vc-hg--pushpull): New, factored from vc-hg-pull.
25564         (vc-hg-pull, vc-hg-push): Reimplement using vc-hg--pushpull.
25565         * doc/emacs/maintaining.texi (Pulling / Pushing):
25566         Rename from "VC Pull".  Mention pushing.
25567         (VC With A Merging VCS, VC Change Log): Update xrefs.
25568         (Branches): Update menu.
25569         * doc/emacs/emacs.texi: Update menu.
25570         * etc/NEWS: Mention this.
25572 2015-05-12  Nicolas Petton  <nicolas@petton.fr>
25574         Improve the seq pcase pattern and the `seq-let' macro
25575         * lisp/emacs-lisp/seq.el: The pcase pattern now matches only if the
25576         object is a sequence, and binds each element of ARGS to the
25577         corresponding element of the sequence.
25579 2015-05-12  Eli Zaretskii  <eliz@gnu.org>
25581         Fix tags created from DEFVAR_* declarations in C
25582         * src/Makefile.in (TAGS): Improve the --regex argument to etags,
25583         to make tags extracted from DEFVAR_* declarations more accurate.
25585         Add a test suite for etags
25586         * test/etags/: New test suite, adapted from
25587         http://fly.isti.cnr.it/pub/software/unix/etags-regression-test.tar.bz2,
25588         whose original author is Francesco Potortì <pot@gnu.org>.
25590         Fix tagging of symbols in C enumerations
25591         * lib-src/etags.c (consider_token): Don't tag symbols in
25592         expressions that assign values to enum constants.  See
25593         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00291.html
25594         for details.
25595         (C_entries): Reset fvdef to fvnone after processing a preprocessor
25596         conditional and after a comma outside of parentheses.
25598 2015-05-12  Glenn Morris  <rgm@gnu.org>
25600         * lisp/url/url-handlers.el (url-file-name-completion)
25601         (url-file-name-all-completions): Silence compiler.
25603         * lisp/emacs-lisp/chart.el (chart-axis-draw): Replace obsolete alias.
25605         * lisp/play/dunnet.el (dun-dos-boot-msg): Fix time.  (Bug#20554)
25607 2015-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
25609         * lisp/emacs-lisp/cl-generic.el: Add dispatch on &context arguments
25610         (cl--generic-mandatory-args): Remove.
25611         (cl--generic-split-args): New function.
25612         (cl-generic-define, cl--generic-lambda): Use it.
25613         (cl-generic-define-method): Use it as well, and add support for
25614         context args.
25615         (cl--generic-get-dispatcher): Handle &context dispatch.
25616         (cl--generic-cache-miss): `dispatch-arg' can now be a
25617         context expression.
25618         (cl--generic-dispatchers): Pre-fill.
25619         * test/automated/cl-generic-tests.el (sm-generic-test-12-context):
25620         New test.
25622 2015-05-11  Glenn Morris  <rgm@gnu.org>
25624         * make-dist: Abort if "make ChangeLog" fails.  Add "--no-changelog".
25626 2015-05-11  Stefan Monnier  <monnier@iro.umontreal.ca>
25628         * lisp/term/xterm.el: Fix xterm-paste handling for rxvt
25629         * lisp/term/rxvt.el: Require term/xterm.
25630         (rxvt-function-map): Use xterm-rxvt-function-map.
25631         (rxvt-standard-colors): Move before first use.
25632         (terminal-init-rxvt): Use xterm--push-map and
25633         xterm-register-default-colors.
25634         (rxvt-rgb-convert-to-16bit, rxvt-register-default-colors): Remove.
25635         * lisp/term/xterm.el (xterm-rxvt-function-map): New var.
25636         Move shared bindings between rxvt and xterm to it.
25637         (xterm-function-map): Use it.  Move the xterm-paste binding to
25638         xterm-rxvt-function-map (bug#20444).
25639         (xterm-standard-colors): Move before first use.
25640         (xterm--push-map): New function.
25641         (xterm-register-default-colors): Take standard colors as argument.
25642         (terminal-init-xterm): Use it.  Adjust call to
25643         xterm-register-default-colors.
25645 2015-05-11  Glenn Morris  <rgm@gnu.org>
25647         * lisp/term/x-win.el: Quieten --without-x compilation.
25648         (x-own-selection-internal, x-disown-selection-internal)
25649         (x-selection-owner-p, x-selection-exists-p, x-get-selection-internal):
25650         Declare.
25652         * Makefile.in (emacslog): Remove srcdir.
25653         (ChangeLog): Update for the above.
25655 2015-05-10  Fabián Ezequiel Gallina  <fgallina@gnu.org>
25657         python.el: better limit for looking-back calls
25658         * lisp/progmodes/python.el (python-shell-accept-process-output):
25659         Use last comint prompt start as limit for looking-back.
25661 2015-05-10  Stefan Monnier  <monnier@iro.umontreal.ca>
25663         CEDET (srecode-insert-fcn): Fix use of oref on a class
25664         * lisp/cedet/srecode/insert.el (srecode-insert-fcn): Fix use of oref
25665         on a class.  Reported by Pierre Lorenzon.
25666         (srecode-template-inserter-point): Remove declaration.
25668         CEDET (srecode-create-dictionary): Avoid obsolete object name
25669         * lisp/cedet/srecode/dictionary.el (srecode-create-dictionary):
25670         Don't use a symbol as an object name.  Reported by Pierre Lorenzon.
25672 2015-05-10  Paul Eggert  <eggert@cs.ucla.edu>
25674         C-x 8 shorthands for curved quotes, Euro, etc.
25675         Although C-x 8 lets you insert arbitrary Unicode characters,
25676         it's awkward to use this to insert commonly used symbols such as curved
25677         quotes, the Euro symbol, etc.  This patch adds simpler sequences for
25678         characters commonly found in English text and in basic math.
25679         For example, assuming the Alt key works on your keyboard and iso-transl
25680         is loaded, one can now type "A-[" instead of "A-RET LEFT SIN TAB RET"
25681         to get the character "‘" (U+2018 LEFT SINGLE QUOTATION MARK).
25682         (Bug#20499)
25683         * doc/emacs/mule.texi (Unibyte Mode):
25684         A few other printing characters now work too.
25685         * etc/NEWS: Document this.
25686         * lisp/international/iso-transl.el (iso-transl-char-map):
25687         Also support the following characters:
25688         ‐ ‑ ‒ – — ― ‘ ’ “ ” † ‡ • ′ ″ € № ← → ↔ − ≈ ≠ ≤ ≥
25690 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
25692         Add xref-find-regexp
25693         * lisp/progmodes/xref.el (xref-find-function): Describe the
25694         `matches' action.
25695         (xref-find-regexp): New command, using it.
25696         (xref-collect-references): Rename to xref-collect-matches.
25697         (xref--collect-reference): Rename to xref--collect-match.
25698         (xref-collect-matches, xref--collect-match): Accept new argument,
25699         KIND.  Update accordingly.
25700         (xref--regexp-to-extended): New function.
25701         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Support the
25702         `matches' action.
25703         (elisp--xref-find-matches): Accept new argument.  Resolve a FIXME.
25704         * lisp/progmodes/etags.el (etags-xref-find):
25705         Support the `matches' action.
25706         (etags--xref-find-matches): New function.
25708 2015-05-10  Glenn Morris  <rgm@gnu.org>
25710         * Makefile.in: Fixes for recent change-history changes.
25711         (change-history-nocommit): Update footer regexp.
25712         Ensure output script stays executable.
25714 2015-05-10  Nicolas Petton  <nicolas@petton.fr>
25716         New version of `seq-let' based on a pcase pattern
25717         * lisp/emacs-lisp/seq.el (seq-let): Define the macro in terms of a
25718         pcase pattern if `pcase-defmacro' is defined (Emacs>=25.1).
25720 2015-05-10  Przemysław Wojnowski  <esperanto@cumego.com>
25722         Add basic HTML5 tags and a template
25723         * lisp/textmodes/sgml-mode.el: Basic HTML5 support.
25724         (html-tag-alist): Add HTML5 tags.
25725         (html-tag-help): Add new tags descriptions.
25726         (html-navigational-links): Template for nav links.
25727         (html-html5-template): Template for a HTML5 page.
25729 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
25731         semantic/symref/grep: Don't use word boundaries
25732         * lisp/cedet/semantic/symref/grep.el
25733         (semantic-symref-perform-search): Instead of wrapping input in
25734         word boundaries, check that the characters before and after are
25735         not word constituents.
25737         semantic/symref/grep: Support regexp search
25738         * lisp/cedet/semantic/symref.el
25739         (semantic-symref-hit-to-tag-via-buffer): Don't regexp-quote when
25740         the search type is regexp.
25741         * lisp/cedet/semantic/symref/grep.el
25742         (semantic-symref-perform-search): Support the regexp search type.
25743         Pass -E to Grep when it's used.
25745         semantic-symref-regexp: Allow to input an arbitrary string
25746         * lisp/cedet/semantic/symref/list.el (semantic-symref-regexp):
25747         Allow to input an arbitrary string interactively.
25749         Remove tag-symbol-match-p from etags-xref-find-definitions-tag-order
25750         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
25751         Remove tag-symbol-match-p from the default value
25752         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00292.html).
25754         Declare find-tag obsolete
25755         * lisp/progmodes/etags.el (find-tag): Declare obsolete in favor of
25756         xref-find-definitions.
25758 2015-05-10  Jan D  <jan.h.d@swipnet.se>
25760         Draw composite string correctly (Bug#20537)
25761         * src/nsterm.m (ns_draw_composite_glyph_string_foreground):
25762         New function.
25763         (ns_draw_glyph_string): Call it.
25765 2015-05-09  Eli Zaretskii  <eliz@gnu.org>
25767         Avoid infloop in ERC
25768         * lisp/simple.el (line-move-to-column): Ignore field boundaries
25769         while computing line beginning position.  (Bug#20498)
25771 2015-05-08  Glenn Morris  <rgm@gnu.org>
25773         * Makefile.in (ChangeLog): No longer pass "srcprefix"; cd instead.
25774         * build-aux/gitlog-to-emacslog: Check called from right directory.
25775         (srcprefix): Remove.
25777         * build-aux/gitlog-to-emacslog: Get rid of "distprefix".
25778         * Makefile.in (ChangeLog): No longer pass "distprefix".
25779         * make-dist: Update "make ChangeLog" syntax for the above change.
25781         * build-aux/gitlog-to-emacslog: Don't hard-code "ChangeLog.2".
25782         * Makefile.in (ChangeLog): Pass -n to gitlog-to-emacslog.
25784         * build-aux/gitlog-to-emacslog: Add "for earlier changes" to footer.
25786         Add command-line option-parsing to gitlog-to-emacslog
25787         * build-aux/gitlog-to-emacslog: Add command-line options.
25788         By default, refuse to remove an existing output file.
25789         * Makefile.in (CHANGELOG): Update default.
25790         (ChangeLog): Do not test for existing file.
25791         (change-history-nocommit): Ensure temp file does not exist.
25793         Quieten --without-x compilation
25794         * lisp/term/common-win.el: Provide a feature.
25795         * lisp/term/x-win.el (term/common-win): Require it.
25797         * lisp/dired-aux.el (dired-do-print): Require lpr.
25799         Quieten compilation, eg in --without-x builds
25800         * lisp/dired-aux.el (lpr-printer-switch):
25801         * lisp/frame.el (tool-bar-height):
25802         * lisp/linum.el (font-info):
25803         * lisp/window.el (font-info, overflow-newline-into-fringe)
25804         (tool-bar-height):
25805         * lisp/emacs-lisp/package-x.el (tar-data-buffer):
25806         * lisp/gnus/gnus-util.el (iswitchb-mode):
25807         * lisp/mail/rmailmm.el (libxml-parse-html-region):
25808         * lisp/net/nsm.el (gnutls-peer-status)
25809         (gnutls-peer-status-warning-describe):
25810         * lisp/net/shr.el (libxml-parse-xml-region):
25811         * lisp/url/url-http.el (gnutls-peer-status): Declare.
25813 2015-05-08  Stefan Monnier  <monnier@iro.umontreal.ca>
25815         CEDET (srecode-pop, srecode-peek): Don't use `subclass'
25816         * lisp/cedet/srecode/insert.el (srecode-pop, srecode-peek): Don't use
25817         `subclass' since they're never called with a class.
25818         (srecode-insert-method, srecode-insert-subtemplate): Avoid obsolete
25819         srecode-dictionary-child-p.
25821 2015-05-08  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
25823         * lisp/help.el (help--binding-locus): Document argument POSITION.
25824         (Bug#20530)
25826 2015-05-08  Paul Eggert  <eggert@cs.ucla.edu>
25828         Merge from gnulib
25829         * doc/misc/texinfo.tex: Get latest version.
25831 2015-05-08  Oleh Krehel  <ohwoeowho@gmail.com>
25833         ffap.el (ffap-read-file-or-url): Fix completing-read call
25834         * lisp/ffap.el (ffap-read-file-or-url): The HIST argument of
25835         `completing-read' should be a symbol.
25837 2015-05-08  Eli Zaretskii  <eliz@gnu.org>
25839         Verify file modifications by other programs
25840         * src/filelock.c (lock_file): Check whether the file was modified
25841         since it was visited even if 'create-lockfiles' is nil.  (Bug#18828)
25843         Fix keyboard macros that include function keys
25844         * src/keyboard.c (read_char_minibuf_menu_prompt): Record function
25845         keys in the macro before returning.  (Bug#20454)
25847 2015-05-08  Glenn Morris  <rgm@gnu.org>
25849         * build-aux/gitlog-to-changelog: Treat "Tiny-change" like
25850         "Copyright-paperwork-exempt".  (Bug#20324)
25852         * lisp/vc/log-edit.el: Handle "(tiny change)".  (Bug#20324)
25853         (log-edit-rewrite-tiny-change): New variable.
25854         (log-edit-insert-changelog): Maybe add "Copyright-paperwork-exempt".
25855         (log-edit-changelog-ours-p): Set log-edit-author to a cons.
25856         * etc/NEWS: Mention this.
25858         * lisp/calc/calc.el (math-zerop): Declare.
25860         * lisp/emacs-lisp/eieio-opt.el (help-fns-short-filename): Declare.
25862 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
25864         * lisp/emacs-lisp/subr-x.el (if-let): Fix debug spec.
25865         Support the case when BINDINGS is a single tuple.  (Bug#20525)
25867         * etc/NEWS: Fix typo in previous commit
25868         (14bb519f1034ddb38ce375cbad7095d9b07f8b26).
25870 2015-05-07  Jan D  <jan.h.d@swipnet.se>
25872         * configure.ac: Warn for multiple display crash for all Gtk+ versions.
25873         Output URL to Gtk+ bug (Bug#20452).
25875         * lisp/term/ns-win.el (ns-paste-secondary): Use gui-get-selection.
25877 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
25879         * lisp/emacs-lisp/package.el: New "external" package status.
25880         An external package is any installed package that's not built-in
25881         and not from `package-user-dir', which usually means it's from an
25882         entry in `package-directory-list'.  They are treated much like
25883         built-in packages, in that they cannot be through the Package Menu
25884         deleted and are not considered for upgrades.
25885         (package-desc-status): Identify if a package is installed outside
25886         `package-user-dir'.
25887         (package-menu--print-info-simple)
25888         (package-menu--status-predicate): Add support for it.
25889         * etc/NEWS: Document it.
25891 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
25893         * lisp/mail/rmail.el: Use lexical-binding.
25894         (rmail-bury): Remove unused var `buffer-to-bury'.
25895         (rmail-get-new-mail): Remove unused vars `opoint' and `success'.
25896         (rmail-parse-url): Remove unused var `proto', `user', and `host'.
25897         (rmail-unrmail-new-mail-maybe): Remove unused var `new-file'.
25898         (rmail-insert-inbox-text): Remove unused var `movemail'.
25899         (rmail-add-mbox-headers): Remove unused var `limit'.
25900         (rmail-undelete-previous-message): Remove unused var `value'.
25901         (rmail-reply): Remove unused vars `resent-to', `resent-cc',
25902         `resent-reply-to'.
25903         (rmail-mime-mbox-buffer, rmail-mime-view-buffer): Declare.
25904         (rmail-restore-desktop-buffer): Rename arguments.
25906 2015-05-06  Glenn Morris  <rgm@gnu.org>
25908         * Makefile.in (change-history-commit): Add missing piece of previous.
25910         Avoid unnecessary bumping of Makefile.in's timestamp
25911         * Makefile.in (gen_origin): Move to gitlog-to-emacslog.
25912         (emacslog): New variable.
25913         (ChangeLog): Use $emacslog.  Don't pass $gen_origin.
25914         (unchanged-history-files): Use $emacslog rather than Makefile.in.
25915         (change-history-nocommit): Store hash in $emacslog.
25916         * build-aux/gitlog-to-emacslog (gen_origin): Move default here.
25917         * admin/update_autogen (changelog_files): Update for the above.
25919         * Makefile.in: Don't always insist on removing existing "ChangeLog".
25920         (CHANGELOG): New variable.
25921         (no-ChangeLog): Remove.
25922         (ChangeLog): Replace "no-ChangeLog"; pass output file to script.
25923         (change-history-nocommit): Use a temp file rather than insisting
25924         on deletion of any existing "ChangeLog".
25926         * build-aux/gitlog-to-emacslog: Allow specification of output.
25928         * admin/update_autogen: Add option to update ChangeLog.
25929         (usage): Mention -H.
25930         (changelog_flag, changelog_n, changelog_files): New variables.
25931         (main): Check for -H, and maybe run change-history-nocommit.
25933 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
25935         * lisp/subr.el (delete-dups): Pre-size the hashtable.
25937         * lisp/emacs-lisp/cl.el (define-modify-macro): Make sure
25938         cl--arglist-args is defined (bug#20517).
25940 2015-05-06  Glenn Morris  <rgm@gnu.org>
25942         * Makefile.in (change-history-nocommit): New.
25944 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
25946         * lisp/cedet/pulse.el (pulse-momentary-unhighlight): Only cancel
25947         timer when it is non-nil
25948         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00223.html).
25950 2015-05-06  Glenn Morris  <rgm@gnu.org>
25952         Quieten CEDET compilation
25953         * lisp/cedet/semantic/db-el.el (semanticdb-elisp-sym->tag):
25954         Invert fboundp test to quieten on current Emacs.
25955         * lisp/cedet/ede/config.el (ede-shell-run-something)
25956         (semanticdb-file-table-object, semanticdb-needs-refresh-p)
25957         (semanticdb-refresh-table): Declare.
25958         (ede-preprocessor-map): Require semantic/db.
25960         Quieten cc-mode compilation
25961         * lisp/progmodes/cc-awk.el (c-forward-sws):
25962         * lisp/progmodes/cc-cmds.el (c-forward-subword, c-backward-subword):
25963         Declare.
25965 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
25967         * lisp/subr.el (delete-dups): Avoid nreverse.
25969 2015-05-06  Artur Malabarba  <bruce.connor.am@gmail.com>
25971         * lisp/subr.el (delete-dups): Make it destructive again.
25973 2015-05-06  Paul Eggert  <eggert@cs.ucla.edu>
25975         * doc/lispref/sequences.texi (Sequence Functions): Fix quoting.
25977 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
25979         * lisp/emacs-lisp/testcover.el: Don't use edebug--read (bug#20487).
25980         * lisp/emacs-lisp/testcover.el: Use lexical-binding.
25981         (testcover--read): Rename from testcover-read.  Change calling
25982         convention.  Use edebug-read-and-maybe-wrap-form now that edebug-read
25983         is gone.
25984         (testcover-start): Use add-function.  Move edebug-all-defs binding to
25985         testcover--read.
25986         (testcover-this-defun): Tighten scope of edebug-all-defs binding.
25987         (testcover-mark): Remove unused var `item'.
25988         * src/lread.c (syms_of_lread): Default load-read-function to `read'.
25990 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
25992         * lisp/subr.el (delete-dups): When there are more than 100 candidates,
25993           use a hash table.  This can result in ~500 times speed-up for typical
25994           collections of size 5000, like that of `load-library'.
25996 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
25998         CEDET: Avoid `oref' on classes in a few more cases
25999         * lisp/cedet/ede/generic.el (ede-find-target):
26000         * lisp/cedet/ede.el (ede-project-forms-menu): Avoid `oref' on classes.
26001         * lisp/cedet/semantic/bovine/gcc.el (semantic-gcc-setup): Remove unused
26002         var `prefix'.
26004         * lisp/cedet/semantic/symref/grep.el: Fix unused var warnings.
26005         (grepflags, greppattern): Declare.
26006         (semantic-symref-perform-search): Remove unused var `pat'.
26008         CEDET (srecode-compile-inserter): Avoid `oref' on classes
26009         * lisp/cedet/srecode/compile.el (srecode-compile-inserter):
26010         Avoid `oref' on classes (bug#20491).
26011         (srecode-compile-split-code): Remove unused var `key'.
26013 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
26015         Clean up pulse.el a little
26016         * lisp/cedet/pulse.el (pulse): Remove.
26017         (pulse-momentary-timer): Save instead of the stop time.
26018         (pulse-momentary-highlight-overlay):
26019         Call pulse-momentary-unhighlight first thing.
26020         Treat pulse-momentary-overlay as a single value, not a list.
26021         Save the created timer.  Only pass the stop time to the timer.
26022         (pulse-tick): Update accordingly.
26023         (pulse-momentary-unhighlight): Treat pulse-momentary-overlay as a
26024         single value.  Cancel the timer.
26026 2015-05-06  Tassilo Horn  <tsdh@gnu.org>
26028         * lisp/textmodes/reftex-cite.el (reftex-format-bib-entry):
26029         Support the biblatex journaltitle field.
26031 2015-05-05  Glenn Morris  <rgm@gnu.org>
26033         Minor declare-function improvement
26034         * lisp/emacs-lisp/bytecomp.el
26035         (byte-compile-macroexpand-declare-function):
26036         Handle declarations after calls.  (Bug#20509)
26038         * lisp/progmodes/js.el (js--optimize-arglist): Remove declaration.
26040         * lisp/w32-fns.el (w32-shell-name): Silence compiler.
26042 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
26044         Pulse using a timer
26045         * lisp/cedet/pulse.el (pulse-momentary-stop-time): New variable.
26046         (pulse-momentary-highlight-overlay): Set up the timer instead of
26047         calling `pulse'
26048         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/).
26049         (pulse-tick): New function.
26050         (pulse-momentary-unhighlight): Cut off the stop time.
26051         (pulse-delay): Update the docstring WRT to not using sit-for.
26053         Add semantic/symref/grep file patterns for ruby-mode
26054         * lisp/cedet/semantic/symref/grep.el
26055         (semantic-symref-filepattern-alist): Add patterns for ruby-mode.
26056         Clarify the docstring.
26058         Don't require match
26059         * lisp/progmodes/xref.el (xref--read-identifier): Don't require
26060         match.  That doesn't work for every command, and some identifier
26061         completion tables are bound to be imperfect anyway.
26063 2015-05-05  Stefan Monnier  <monnier@iro.umontreal.ca>
26065         * lisp/cedet/semantic/grammar.el: Fix compiler warnings (bug#20505).
26066         (semantic-grammar--template-expand): New function.
26067         (semantic-grammar-header, semantic-grammar-footer): Use it.
26068         (semantic-grammar--lex-block-specs): Remove unused var `block-spec'.
26069         (semantic-grammar-file-regexp): Refine regexp.
26070         (semantic-grammar-eldoc-get-macro-docstring):
26071         Use elisp-get-fnsym-args-string when available.
26072         (semantic-idle-summary-current-symbol-info): Use new elisp-* names
26073         instead of the old eldoc-* names.
26074         * lisp/emacs-lisp/eldoc.el (eldoc-docstring-format-sym-doc): Move back
26075         from elisp-mode.el.  Tweak calling convention.
26076         * lisp/progmodes/elisp-mode.el (package-user-dir): Declare.
26077         (elisp-get-fnsym-args-string): Add `prefix' argument.  Rename from
26078         elisp--get-fnsym-args-string.
26079         (elisp--highlight-function-argument): Add `prefix' arg.
26080         (elisp-get-var-docstring): Rename from elisp--get-var-docstring.
26081         (elisp--docstring-format-sym-doc): Move back to eldoc.el.
26083 2015-05-05  Glenn Morris  <rgm@gnu.org>
26085         * lisp/help-fns.el (describe-function-1):
26086         Handle builtins with advertised calling conventions.  (Bug#20479)
26088 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
26090         Merge branch 'seq-let'
26092         Update `seq-let' documentation
26093         * doc/lispref/sequences.texi: Update the documentation of `seq-let'
26094         with the support of  `&rest'.
26096         Add support for &rest in `seq-let'
26097         * lisp/emacs-lisp/seq.el (seq--make-bindings): Add support for `&rest'
26098         in the argument list.
26099         * test/automated/seq-tests.el: Add a test for parsing and binding
26100         `&rest' in `seq-let'.
26102 2015-05-05  Pierre Lorenzon  <devel@pollock-nageoire.net>  (tiny change)
26104         * lisp/emacs-lisp/eieio-custom.el (eieio-object-value-get):
26105         Add missing increment (Bug#20467).
26106         (eieio-object-value-create): Adjust to new slots representation
26107         (Bug#20467).
26108         (eieio-object-value-create): Fix missed adjustment to new
26109         representation of slots metadata.
26111 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
26113         * lisp/emacs-lisp/seq.el (seq--make-bindings): Improve the docstring.
26115 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
26117         Work around "Attempt to modify read-only object"
26118         * lisp/progmodes/elisp-mode.el (elisp--xref-format): Extract from
26119         elisp--xref-find-definitions, to work around "Attempt to modify
26120         read-only object" error.
26122         Only skip some variables that have function counterparts
26123         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
26124         Only skip minor-mode-named variable if it's defined in a Lisp
26125         file, and it's in minor-mode-list (bug#20506).
26126         * test/automated/elisp-mode-tests.el
26127         (elisp-xref-finds-both-function-and-variable)
26128         (elisp-xref-finds-only-function-for-minor-mode): New tests.
26130 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
26132         * lisp/progmodes/xref.el (xref--location-at-point): Revert the
26133         previous change.
26134         (xref--insert-xrefs): Buttonize the whole line, including the
26135         number at the beginning.
26137         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
26138         Make sure we're inside the let bindings.
26139         * test/automated/elisp-mode-tests.el
26140         (elisp-completes-functions-after-let-bindings): New test.
26142 2015-05-04  Glenn Morris  <rgm@gnu.org>
26144         * lisp/cedet/semantic/grammar.el (eldoc-function-argstring)
26145         (eldoc-docstring-format-sym-doc, eldoc-last-data-store)
26146         (eldoc-get-fnsym-args-string, eldoc-get-var-docstring):
26147         Remove outdated declarations.
26149         Replace instances of "(eval-when-compile (autoload ...))"
26150         * lisp/gnus/gnus-art.el (nneething-get-file-name):
26151         Declare rather than autoload.
26152         * lisp/gnus/gnus-async.el (gnus-html-prefetch-images):
26153         Remove pointless autoload.
26154         * lisp/gnus/gnus-sync.el (gnus-group-topic): Autoload at run-time.
26155         (gnus-topic-create-topic, gnus-topic-enter-dribble):
26156         Declare rather than autoload.
26157         * lisp/gnus/mm-archive.el (gnus-recursive-directory-files)
26158         (mailcap-extension-to-mime): Autoload at run-time.
26159         * lisp/gnus/mm-util.el (latin-unity-massage-name)
26160         (latin-unity-maybe-remap, latin-unity-representations-feasible-region)
26161         (latin-unity-representations-present-region):
26162         Declare rather than autoload.
26163         * lisp/gnus/mml-smime.el (epg-make-context)
26164         (epg-passphrase-callback-function): Autoload at run-time.
26165         (epg-context-set-signers, epg-context-result-for)
26166         (epg-new-signature-digest-algorithm)
26167         (epg-verify-result-to-string, epg-list-keys, epg-verify-string)
26168         (epg-sign-string, epg-encrypt-string)
26169         (epg-context-set-passphrase-callback, epg-sub-key-fingerprint)
26170         (epg-configuration, epg-expand-group, epa-select-keys):
26171         Declare rather than autoload.
26172         * lisp/gnus/nnir.el (nnimap-change-group, nnimap-make-thread-query):
26173         Autoload at run-time.
26174         (gnus-group-topic-name, nnimap-buffer, nnimap-command)
26175         (gnus-registry-get-id-key, gnus-registry-action):
26176         Declare rather than autoload.
26177         * lisp/gnus/nnmail.el (mail-send-and-exit): Autoload at run-time.
26178         * lisp/gnus/spam.el (spam-stat-buffer-change-to-non-spam)
26179         (spam-stat-buffer-change-to-spam, spam-stat-buffer-is-non-spam)
26180         (spam-stat-buffer-is-spam, spam-stat-load, spam-stat-save)
26181         (spam-stat-split-fancy): Remove pointless autoloads.
26182         * lisp/net/mairix.el: Load gnus-util when compiling.
26183         (gnus-group-read-ephemeral-group, gnus-summary-toggle-header)
26184         (message-field-value): Declare rather than autoload.
26185         (mairix-gnus-ephemeral-nndoc, mairix-gnus-fetch-field):
26186         Check gnus-alive-p is fbound.
26187         (vm-quit, vm-visit-folder, vm-select-folder-buffer)
26188         (vm-check-for-killed-summary, vm-error-if-folder-empty)
26189         (vm-get-header-contents, vm-select-marked-or-prefixed-messages):
26190         Declare rather than autoload.
26192         * lisp/gnus/mm-view.el (epg-decrypt-string): Autoload.
26194         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
26195         (epg-sub-key-capability, epg-sub-key-validity): Fix declarations.
26197         * lisp/progmodes/elisp-mode.el (xref-collect-references): Declare.
26199         * lisp/emacs-lisp/debug.el (help-xref-interned): Update declaration.
26201         * lisp/allout.el (epg-user-id-string, epg-key-user-id-list):
26202         * lisp/emacs-lisp/package.el (epg-signature-status):
26203         Fix declarations.
26205         * lisp/play/gametree.el (gametree-show-children-and-entry)
26206         (gametree-apply-layout, gametree-mouse-show-subtree)
26207         (gametree-mouse-hide-subtree): Replace obsolete outline aliases.
26209         * lisp/emacs-lisp/check-declare.el (check-declare-verify):
26210         Handle cl-defgeneric, cl-defmethod.
26212 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
26214         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions):
26215         Highlight both type and symbol name.
26217         Insert, highlight and align line numbers in xref output
26218         * lisp/progmodes/etags.el (xref-location-line): Specialize for
26219         xref-etags-location.
26220         * lisp/progmodes/xref.el (xref-location-line): New generic method.
26221         (xref-file-location): Add reader for the line slot.
26222         (xref--location-at-point): Skip to the `xref-location' property.
26223         (xref--collect-reference): Drop the line number from description.
26224         (xref--insert-xrefs): Insert, highlight and align line numbers.
26226 2015-05-04  Daniel Colascione  <dancol@dancol.org>
26228         * lisp/simple.el (save-mark-and-excursion--save)
26229         (save-mark-and-excursion--restore): Fix previous commit
26230         (255a011f0ecf004b31c59945b10154b10fac3af1).
26232 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
26234         Don't pulse the indentation, or the newline
26235         * lisp/cedet/pulse.el (pulse-lighten-highlight)
26236         (pulse-reset-face): Fall back to the inherited background
26237         attribute in FACE.
26238         (pulse-momentary-highlight-region): Add autoload cookie.
26239         * lisp/progmodes/xref.el (xref--maybe-pulse): Don't highlight the
26240         indentation, or the newline, if the line's non-empty
26241         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00118.html).
26243 2015-05-04  Daniel Colascione  <dancol@dancol.org>
26245         Add `save-mark-and-excursion', which has the old
26246         `save-excursion' behavior
26247         * doc/lispref/positions.texi (Excursions):
26248         Document `save-mark-and-excursion'.
26249         * lisp/font-lock.el (font-lock-fontify-block):
26250         Use `save-mark-and-excursion' instead of `save-excursion',
26251         restoring Emacs 24 behavior.
26252         * lisp/simple.el (save-mark-and-excursion--save)
26253         (save-mark-and-excursion--restore): New functions.
26254         (save-mark-and-excursion): New user macro.
26255         * src/editfns.c (Fsave_excursion): Mention `save-mark-and-excursion'
26256         in `save-excursion' documentation.
26258 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
26260         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
26261         Classify lone symbol inside let varlist as variable.
26262         * test/automated/elisp-mode-tests.el
26263         (completest-variables-in-let-bindings): New test.
26265         Add xref-pulse-on-jump
26266         * lisp/cedet/pulse.el (pulse-momentary-highlight-one-line):
26267         Add autoload cookie.
26268         * lisp/progmodes/xref.el (xref-pulse-on-jump): New option.
26269         (xref--maybe-pulse): New function.
26270         (xref-pop-marker-stack, xref--pop-to-location)
26271         (xref--display-position): Use it.
26272         (xref--location-at-point): Use back-to-indentation.
26274 2015-05-04  Stefan Monnier  <monnier@iro.umontreal.ca>
26276         lisp/org/org-{macs,list}.el: Fix lexical warnings
26277         * lisp/org/org-list.el (org-list-struct): Remove unused var `ind'.
26278         (org-list-get-next-item, org-list-get-prev-item)
26279         (org-list-get-children): Mark unused arg `struct'.
26280         (org-list-use-alpha-bul-p): Remove unused var `bul'.
26281         (org-toggle-checkbox): Mark unused var.
26282         (org-update-checkbox-count): Remove unused var `box-num'.
26283         (org-adapt-indentation): Declare.
26284         (org-list-parse-list): Declare var instead of adding a dummy duplicate.
26285         (org-list-send-list): Remove unused var `txt'.
26286         (org-list-to-latex, org-list-to-texinfo): Mark unused arg `params'.
26287         (org-list-to-subtree): Add prefix to dyn-bind var, and declare them.
26288         * lisp/org/org-macs.el: Use `declare'.
26289         (org-with-limited-levels): Declare dyn-bound vars.
26291 2015-05-04  Eli Zaretskii  <eliz@gnu.org>
26293         Fix minor issues with CEDET on MS-Windows
26294         * lisp/cedet/semantic/symref/idutils.el
26295         (semantic-symref-parse-tool-output-one-line): Fix the search
26296         regexp to match MS-Windows file names with drive letters.
26297         (Bug#19468)
26298         * lisp/cedet/semantic/symref/grep.el
26299         (semantic-symref-grep-use-template): Remove "--color=always" from
26300         Grep switches on MS-Windows.
26301         (semantic-symref-grep-shell): Use shell-file-name as the default
26302         value, so this works not only on Posix platforms.
26303         (semantic-symref-perform-search): Use shell-quote-argument instead
26304         of literal '..' for portable quoting of Grep command-line
26305         argument.  Use shell-command-switch instead of a literal "-c".
26306         * lisp/cedet/semantic/bovine/gcc.el
26307         (semantic-gcc-get-include-paths): Use file-name-absolute-p to test
26308         for an absolute file name in a portable way.
26310 2015-05-04  Artur Malabarba  <bruce.connor.am@gmail.com>
26312         * lisp/emacs-lisp/package.el: Remove `package--silence' variable.
26313         (package-import-keyring, package-refresh-contents)
26314         (package-compute-transaction, package--save-selected-packages)
26315         (package-install-from-archive, package-delete)
26316         (package-menu--perform-transaction): Use `inhibit-message' instead.
26317         (package--compile): Set `warning-minimum-level' to :error.
26319 2015-05-03  Stefan Monnier  <monnier@iro.umontreal.ca>
26321         * lisp/term/screen.el (xterm-screen-extra-capabilities): New custom.
26322         (terminal-init-screen): Use it (bug#20356).
26323         * lisp/term/xterm.el: Provide `term/xterm' instead of `xterm'.
26324         (xterm--extra-capabilities-type): New const.
26325         (xterm-extra-capabilities): Use it.
26326         (xterm--version-handler): Lower the pseudo-version for `screen'.
26328 2015-05-03  Dmitry Gutov  <dgutov@yandex.ru>
26330         * lisp/progmodes/xref.el (xref--insert-xrefs): Tweak the faces.
26331         Always insert a newline at the end (to avoid mouse-face background
26332         tail at the last line).
26334         elisp-completion-at-point: Prioritize being quoted over funpos
26335         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
26336         Only consider function position when not inside quoted form
26337         (bug#20425).
26338         * test/automated/elisp-mode-tests.el: New file.
26340         Stop vc-print-log from jumping to the top
26341         * lisp/vc/vc.el (vc-print-log-internal): Pass nil
26342         GOTO-LOCATION-FUNC to vc-log-internal-common when WORKING-REVISION
26343         is not specified.
26344         (vc-incoming-outgoing-internal): Always pass nil.
26345         (vc-log-internal-common): When GOTO-LOCATION-FUNC is nil, don't
26346         call it, and don't set vc-sentinel-movepoint (bug#15322).
26347         (vc-print-root-log): Don't fetch the root working revision, nor
26348         pass it to vc-print-log-internal.
26350 2015-05-02  Michael Vehrs  <Michael.Burschik@gmx.de>
26352         Fix display of keyboard layouts for right-to-left scripts
26353         * lisp/international/quail.el (quail-insert-kbd-layout):
26354         Force left-to-right paragraph direction.
26356 2015-05-02  K. Handa  <handa@gnu.org>
26358         * src/cmds.c (internal_self_insert): When we insert spaces for
26359         padding, set point before the padding spaces, not after them.
26361 2015-05-02  Nicolas Petton  <nicolas@petton.fr>
26363         * lisp/emacs-lisp/seq.el (seq-p): New alias to `sequencep'.
26365 2015-05-02  Dmitry Gutov  <dgutov@yandex.ru>
26367         Fix etags-xref-find for references
26368         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
26369         Use `cl-mapcan'.
26370         * lisp/progmodes/etags.el (etags-xref-find): Ditto.  Prompt for
26371         directory if no tags tables are loaded (bug#19468).
26373 2015-05-02  Philipp Stephani  <phst@google.com>
26375         Update the options in whitespace-style defcustom
26376         * lisp/whitespace.el (whitespace-style): Use `set' instead of a
26377         `repeat' because the option is really set-like.  Add missing
26378         options.  Reorder options to match the order in the
26379         documentation.  (Bug#20346)
26381 2015-05-02  Eli Zaretskii  <eliz@gnu.org>
26383         Fix error diagnostics of c-macro-expand
26384         * lisp/progmodes/cmacexp.el (c-macro-expansion): Don't bail out
26385         too early if no start-marker string was found -- that generally
26386         means cpp exited abnormally, and we still want to show its error
26387         messages to the user.
26389         Don't require Texinfo 5.0 for Emacs documentation
26390         * doc/emacs/docstyle.texi: Use "@set txicodequoteundirected" and
26391         "@set txicodequotebacktick" instead of "@codequotebacktick on" and
26392         "@codequoteundirected on", respectively, to avoid requiring
26393         Texinfo 5.x for Emacs documentation.
26395 2015-05-01  Simen Heggestøyl  <simenheg@gmail.com>
26397         * lisp/files.el (pwd):
26398         When called with a prefix argument, insert the current default
26399         directory at point.
26401 2015-05-01  Stefan Monnier  <monnier@iro.umontreal.ca>
26403         * lisp/isearch.el (isearch-mode-map): Allow backspace remapping
26404         * lisp/isearch.el (isearch-mode-map): Don't inhibit
26405         function-key-map remapping for backspace (bug#20466).
26407 2015-05-01  Dmitry Gutov  <dgutov@yandex.ru>
26409         Implement xref-find-references in etags and elisp-mode
26410         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references): New function.
26411         (elisp-xref-find): Use it.
26412         * lisp/progmodes/etags.el (etags-xref-find): Use `xref-collect-references'.
26413         * lisp/progmodes/xref.el (xref-collect-references):
26414         (xref--collect-reference): New functions.
26416 2015-05-01  Paul Eggert  <eggert@cs.ucla.edu>
26418         Prefer plain characters to Texinfo circumlocutions
26419         For example, prefer 'François' to 'Fran\c{c}ois', 'Fran\c cois',
26420         'Fran@,{c}ois' or 'Francois' (all of which were used!) in Texinfo sources.
26422         Fix single-quoting style in PDF manuals
26423         The PDF versions of the GNU manuals used curved single quotes to
26424         represent grave accent and apostrophe, which made it a pain to cut
26425         and paste code examples from them.  Fix the PDF versions to use
26426         grave accent and apostrophe for Lisp source code, keystrokes, etc.
26427         This change does not affect the info files, nor does it affect
26428         ordinary uses of curved single quotes in PDF.
26429         * doc/emacs/docstyle.texi: New file, which specifies treatment for
26430         grave accent and apostrophe, as well as the document encoding.
26431         * doc/emacs/emacs-xtra.texi, doc/emacs/emacs.texi:
26432         * doc/lispintro/emacs-lisp-intro.texi:
26433         * doc/lispref/back.texi, doc/lispref/book-spine.texi:
26434         * doc/lispref/elisp.texi, doc/lispref/lay-flat.texi:
26435         * doc/misc/ada-mode.texi, doc/misc/auth.texi:
26436         * doc/misc/autotype.texi, doc/misc/bovine.texi, doc/misc/calc.texi:
26437         * doc/misc/cc-mode.texi, doc/misc/cl.texi, doc/misc/dbus.texi:
26438         * doc/misc/dired-x.texi, doc/misc/ebrowse.texi, doc/misc/ede.texi:
26439         * doc/misc/ediff.texi, doc/misc/edt.texi, doc/misc/efaq-w32.texi:
26440         * doc/misc/efaq.texi, doc/misc/eieio.texi, doc/misc/emacs-gnutls.texi:
26441         * doc/misc/emacs-mime.texi, doc/misc/epa.texi, doc/misc/erc.texi:
26442         * doc/misc/ert.texi, doc/misc/eshell.texi, doc/misc/eudc.texi:
26443         * doc/misc/eww.texi, doc/misc/flymake.texi, doc/misc/forms.texi:
26444         * doc/misc/gnus-coding.texi, doc/misc/gnus-faq.texi:
26445         * doc/misc/gnus.texi, doc/misc/htmlfontify.texi:
26446         * doc/misc/idlwave.texi, doc/misc/ido.texi, doc/misc/info.texi:
26447         * doc/misc/mairix-el.texi, doc/misc/message.texi, doc/misc/mh-e.texi:
26448         * doc/misc/newsticker.texi, doc/misc/nxml-mode.texi:
26449         * doc/misc/octave-mode.texi, doc/misc/org.texi, doc/misc/pcl-cvs.texi:
26450         * doc/misc/pgg.texi, doc/misc/rcirc.texi, doc/misc/reftex.texi:
26451         * doc/misc/remember.texi, doc/misc/sasl.texi, doc/misc/sc.texi:
26452         * doc/misc/semantic.texi, doc/misc/ses.texi, doc/misc/sieve.texi:
26453         * doc/misc/smtpmail.texi, doc/misc/speedbar.texi:
26454         * doc/misc/srecode.texi, doc/misc/todo-mode.texi, doc/misc/tramp.texi:
26455         * doc/misc/url.texi, doc/misc/vhdl-mode.texi, doc/misc/vip.texi:
26456         * doc/misc/viper.texi, doc/misc/widget.texi, doc/misc/wisent.texi:
26457         * doc/misc/woman.texi:
26458         Use it instead of '@documentencoding UTF-8', to lessen the need for
26459         global changes like this in the future.
26460         * doc/emacs/Makefile.in (EMACS_XTRA):
26461         * doc/lispintro/Makefile.in (srcs):
26462         * doc/lispref/Makefile.in (srcs):
26463         Add dependency on docstyle.texi.
26464         * doc/misc/Makefile.in (style): New macro.
26465         (${buildinfodir}/%.info, %.dvi, %.pdf, %.html)
26466         (${buildinfodir}/ccmode.info, ${buildinfodir}/efaq%.info, gnus_deps):
26467         Use it.
26469 2015-05-01  Glenn Morris  <rgm@gnu.org>
26471         * test/automated/cl-lib-tests.el (cl-lib-adjoin-test): Fix it.
26473         * lisp/emacs-lisp/pcase.el (get-edebug-spec, edebug-match)
26474         (help-fns--signature): Declare.
26476         * lisp/emacs-lisp/pcase.el (pcase--make-docstring): Require help-fns.
26478 2015-05-01  Nicolas Petton  <nicolas@petton.fr>
26480         New macro seq-let, providing destructuring support to seq.el
26481         * lisp/emacs-lisp/seq.el (seq-let): New macro.  `seq-let' is similar
26482         to `cl-destructuring-bind' but works on all sequence types supported
26483         by `seq.el'.  Bump version number to 1.6.
26484         * test/automated/seq-tests.el: Add tests for seq-let.
26485         * doc/lispref/sequences.texi: Add documentation for seq-let.
26487 2015-05-01  Pontus Michael  <m.pontus@gmail.com>
26489         * lisp/simple.el (blink-matching-open): Better behavior in minibuffer.
26491 2015-05-01  Glenn Morris  <rgm@gnu.org>
26493         * lisp/emacs-lisp/ert.el (ert--special-operator-p): Fix previous.
26495 2015-05-01  Artur Malabarba  <bruce.connor.am@gmail.com>
26497         * lisp/emacs-lisp/bytecomp.el: Revert "Silence noninteractive compilations"
26498         This reverts commit 9a7ddde977378cb5276a81476ae458889c403267.
26499         This reverts commit 3c0ea587daf8b17960b90603a70e3ac4057d883d.
26500         With message: "* lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'".
26501         (Bug#20445).
26503 2015-05-01  K. Handa  <handa@gnu.org>
26505         * lisp/international/mule-cmds.el (input-method-use-echo-area):
26506         Change :type to 'boolean.
26508 2015-05-01  Lars Magne Ingebrigtsen  <larsi@gnus.org>
26510         Start using proportional fonts in eww by default
26511         * lisp/net/shr.el (shr-use-fonts): Switch the default to t, since
26512         it seems to work well.
26514         Fix links in tables in shr
26515         * lisp/net/shr.el: Remove `shr-inhibit-decoration', because that
26516         makes (some) links in tables not work.
26518 2015-05-01  Jan D  <jan.h.d@swipnet.se>
26520         * lisp/term/ns-win.el (ns-get-cut-buffer-internal): Remove this alias.
26522 2015-04-30  Glenn Morris  <rgm@gnu.org>
26524         * lisp/emacs-lisp/ert.el (ert--special-operator-p):
26525         Update for 2015-02-08 change to indirect-function.
26527         * lisp/term/ns-win.el (ns-get-selection-internal):
26528         Remove declaration for function deleted 2014-10-21.
26530         * lisp/dom.el: Load subr-x when compiling, for when-let.
26532         Silence some compilation warnings
26533         * lisp/emacs-lisp/check-declare.el (compilation-forget-errors):
26534         * lisp/emulation/cua-base.el (delete-active-region):
26535         * lisp/net/net-utils.el (w32-get-console-output-codepage):
26536         * lisp/term/ns-win.el (ns-own-selection-internal)
26537         (ns-disown-selection-internal, ns-selection-owner-p)
26538         (ns-selection-exists-p, ns-get-selection):
26539         Declare for compiler.
26541         Function declaration updates prompted by 'make check-declare'
26542         * lisp/emacs-lisp/package.el (lm-homepage):
26543         * lisp/gnus/gnus-util.el (iswitchb-read-buffer):
26544         * lisp/gnus/mm-decode.el (libxml-parse-html-region):
26545         * lisp/gnus/mml.el (libxml-parse-html-region):
26546         * lisp/gnus/nnrss.el (libxml-parse-html-region):
26547         * lisp/net/eww.el (libxml-parse-html-region):
26548         * lisp/net/shr.el (libxml-parse-html-region):
26549         * lisp/vc/vc-bzr.el (vc-annotate-convert-time):
26550         * lisp/vc/vc-cvs.el (vc-annotate-convert-time):
26551         * lisp/vc/vc-git.el (vc-annotate-convert-time):
26552         * lisp/vc/vc-hg.el (vc-annotate-convert-time):
26553         * lisp/vc/vc-mtn.el (vc-annotate-convert-time):
26554         * lisp/vc/vc-rcs.el (vc-annotate-convert-time):
26555         Update declaration.
26557         Remove compatibility code for 20-year old function renaming
26558         * lisp/progmodes/idlw-shell.el (idlwave-shell-comint-filter):
26559         Make it an obsolete alias.
26560         (idlwave-shell-filter): Change all uses to comint-output-filter.
26562 2015-04-30  Tassilo Horn  <tsdh@gnu.org>
26564         Add ace-window face config
26565         * etc/themes/tsdh-light-theme.el (tsdh-light): Add ace-window face
26566         configuration.
26568 2015-04-30  Paul Eggert  <eggert@cs.ucla.edu>
26570         Unclutter 'make doc' output a bit
26571         * Makefile.in ($(DOCS), $(INSTALL_DOC), $(UNINSTALL_DOC)):
26572         Use make subst rather than sh IFS to split target string apart.
26573         This makes 'make' output easier to follow.
26575         Merge from gnulib
26576         * doc/misc/texinfo.tex: Update from gnulib.
26578 2015-04-30  Artur Malabarba  <bruce.connor.am@gmail.com>
26580         * lisp/emacs-lisp/package.el: Some speed optimizations on menu refresh.
26581         (package-menu--print-info): Obsolete.
26582         (package-menu--print-info-simple): New function.
26583         (package-menu--refresh): Use it, simplify code, and improve
26584         performance.
26585         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-entry):
26586         Tiny performance improvement.
26588         * lisp/emacs-lisp/package.el (package--message): inhibit-message.
26590 2015-04-29  Paul Eggert  <eggert@cs.ucla.edu>
26592         Omit -Wstrict-overflow workaround in GCC 5
26593         * src/process.c: Remove workaround for GCC -Wstrict-overflow bug
26594         if it's GCC 5 or later, as the bug appears to be fixed in GCC 5.1.
26596         Merge from gnulib
26597         This incorporates:
26598         2015-04-29 extern-inline: no need for workaround in GCC 5.1
26599         2015-04-26 file-has-acl: port to CentOS 6
26600         * m4/acl.m4, m4/extern-inline.m4: Update from gnulib.
26602 2015-04-29  Helmut Eller  <eller.helmut@gmail.com>
26604         Set next-error-* in xref--xref-buffer-mode
26605         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
26606         Set `next-error-function' and `next-error-last-buffer'.
26607         (xref--next-error-function): New function.
26608         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01311.html)
26610 2015-04-29  Fabián Ezequiel Gallina  <fgallina@gnu.org>
26612         python.el: Fix warnings on looking-back calls missing LIMIT
26613         * lisp/progmodes/python.el (python-shell-accept-process-output):
26614         Pass LIMIT arg to looking-back.
26616 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
26618         * lisp/emacs-lisp/package.el: Use pushnew for downloads in progress.
26619         (package--download-and-read-archives): Use pushnew instead of
26620         append.  If something terrible happened during a previous
26621         download, simply refreshing should now make things work again.
26623 2015-04-29  Dmitry Gutov  <dgutov@yandex.ru>
26625         Introduce etags-xref-find-definitions-tag-order
26626         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
26627         New variable.
26628         (etags--xref-find-definitions): Use it (bug#19468).
26630 2015-04-29  Eli Zaretskii  <eliz@gnu.org>
26632         PATH- and completion-related fixes in Eshell on MS-Windows
26633         * lisp/eshell/esh-ext.el (eshell-search-path): When running on
26634         MS-Windows, prepend "." to list of directories produced from PATH,
26635         as Windows always implicitly searches the current directory first.
26636         (eshell-force-execution): Make it have a non-nil default value on
26637         MS-Windows and MS-DOS.
26638         * lisp/eshell/em-cmpl.el (eshell-complete-commands-list): If
26639         eshell-force-execution is non-nil, complete on readable files and
26640         directories, not only executables.  When running on MS-Windows,
26641         prepend "." to list of directories produced from PATH, as Windows
26642         always implicitly searches the current directory first.
26644 2015-04-29  Sam Steingold  <sds@gnu.org>
26646         Bury RCIRC buffers when there is no activity
26647         * lisp/net/rcirc.el (rcirc-non-irc-buffer): Remove.
26648         (rcirc-bury-buffers): New function.
26649         (rcirc-next-active-buffer): When there is no new activity, use
26650         `rcirc-bury-buffers' to hide all RCIRC buffers.
26652 2015-04-29  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
26654         Fix DBUS query result parsing for secrets-search-items
26655         * lisp/net/secrets.el (secrets-search-items): Fix DBUS query result
26656         parsing.  The function assumed that return value of the
26657         SearchItems method called on a collection is a list of two lists,
26658         however this is true only when no collection is specified.  GNOME
26659         had used to incorrectly return a list of two lists in both cases,
26660         but this was already fixed:
26661         https://bugzilla.gnome.org/show_bug.cgi?id=695115 .  Also fix an
26662         incorrect information in the secrets-search-items’ docstring.
26663         (Bug#20449)
26665 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
26667         * lisp/emacs-lisp/bytecomp.el (byte-compile--message):
26668         Use `inhibit-message' instead of hiding the previous message
26669         with (message nil).
26671 2015-04-29  Oleh Krehel  <ohwoeowho@gmail.com>
26673         Remove the deprecated INTERNAL_FIELD macro by expanding it
26674         * src/lisp.h (INTERNAL_FIELD): Remove.
26675         (DEFVAR_KBOARD): Modify accordingly.
26676         * src/alloc.c, src/buffer.c, src/buffer.h, src/category.c:
26677         * src/keyboard.c, src/keyboard.h, src/syntax.c: Adjust users.
26678         * src/buffer.c (compact_buffer): Use BVAR.
26680 2015-04-29  Glenn Morris  <rgm@gnu.org>
26682         Replace an obsolete function alias
26683         * lisp/isearch.el (isearch-yank-x-selection):
26684         * lisp/mouse-copy.el (mouse-drag-secondary-pasting)
26685         (mouse-drag-secondary-moving):
26686         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
26687         Replace obsolete alias x-get-selection with gui-get-selection.
26689 2015-04-29  Stefan Monnier  <monnier@iro.umontreal.ca>
26691         * lisp/mail/rmailsum.el: Use lexical-binding.
26693 2015-04-29  Glenn Morris  <rgm@gnu.org>
26695         * test/automated/package-test.el (package-test-update-archives-async):
26696         Skip test on hydra.nixos.org.
26698 2015-04-28  Glenn Morris  <rgm@gnu.org>
26700         * lisp/foldout.el: Update for 2015-01-30 outline.el changes.
26701         (foldout-zoom-subtree, foldout-exit-fold, foldout-mouse-show)
26702         (foldout-mouse-hide-or-exit): Use new names for outline functions.
26704         * lisp/cedet/semantic/bovine/c.el (semantic-c-do-lex-if):
26705         Update for 2014-06-26 hideif.el change.
26707         * lisp/mail/rmailsum.el: Fix search for encoded subjects.  (Bug#19088)
26708         (rmail--decode-and-apply): New function.
26709         (rmail-message-regexp-p-1, rmail-message-subject-p): Use it.
26711         * lisp/mail/rmail.el (rmail-highlighted-headers): Fix :type.
26713 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
26715         * lisp/emacs-lisp/package.el: Fix priority-hiding corner case
26716         (package-menu--refresh): Delegate obsolete-hiding to
26717         `package--remove-hidden'.
26718         (package--remove-hidden): Disregard high-priority package if it is
26719         older than the installed one.
26721 2015-04-28  Paul Eggert  <eggert@cs.ucla.edu>
26723         Update source file encoding list
26724         Update admin/notes/unicode, along with coding system cookies in
26725         other files, so that the two match each other better.
26726         * admin/notes/unicode: lisp/language/ethio-util.el and
26727         lisp/language/ethiopic.el also use utf-8-emacs.
26728         * admin/notes/hydra, doc/misc/dbus.texi, doc/misc/org.texi:
26729         * doc/misc/remember.texi, etc/refcards/cs-dired-ref.tex:
26730         * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
26731         * etc/refcards/sk-dired-ref.tex, etc/refcards/sk-refcard.tex:
26732         * etc/refcards/sk-survival.tex:
26733         Add "coding: utf-8" so that this file is not mishandled in a
26734         Latin-1 or Big-5 locale.
26735         * lisp/international/robin.el, lisp/org/ox-ascii.el:
26736         Specify utf-8, not utf-8-emacs, as these are plain UTF-8 files.
26737         * lisp/language/ethio-util.el: Fix trailer.
26739 2015-04-28  Eli Zaretskii  <eliz@gnu.org>
26741         Fix synchronous invocation of Ispell
26742         * lisp/textmodes/ispell.el (ispell-init-process): Assign a non-nil
26743         value to ispell-process-directory before calling ispell-init-process.
26744         Don't call set-process-coding-system if ispell-async-processp is nil.
26745         (Bug#20448)
26747 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
26749         * lisp/emacs-lisp/package.el: Skip space and comments in init file
26750         (package--ensure-init-file): Insert snippet at first
26751         non-whitespace non-comments line.  Respects local-vars at the top
26752         of the file.
26754 2015-04-28  Glenn Morris  <rgm@gnu.org>
26756         * lisp/mail/rmail.el (rmail-copy-headers):
26757         Handle rmail-nonignored-headers being nil.  (Bug#18878)
26759         * lisp/subr.el (delay-mode-hooks): Fix doc typo.
26761         * lisp/vc/vc-bzr.el (vc-bzr-after-dir-status):
26762         Don't get confused by a bzrlib version mismatch warning.
26764 2015-04-27  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
26766         Change default location of EUDC options file
26767         * etc/NEWS: Document change to EUDC options file's default location.
26768         * lisp/net/eudc-vars.el (eudc-options-file): Use
26769         `locate-user-emacs-file' to change default options file location.
26771 2015-04-27  Glenn Morris  <rgm@gnu.org>
26773         * test/automated/package-test.el (package-test-update-archives-async):
26774         Try to handle the test server script dying.
26776 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
26778         * lisp/saveplace.el (save-place-mode): New minor mode.
26779         (save-place): Redefine as an obsolete alias.
26781         * lisp/midnight.el: Make it a minor mode.  Allow predicates.
26782         * lisp/midnight.el: Use lexical-binding.
26783         (midnight-mode): Make it a proper minor mode.
26784         (midnight-buffer-display-time): Make arg non-optional.
26785         (midnight-find): Remove.
26786         (clean-buffer-list-kill-never-regexps)
26787         (clean-buffer-list-kill-regexps): Tweak type for new function choice.
26788         (clean-buffer-list-delay): Allow clean-buffer-list-kill-regexps to
26789         contain functions.
26790         (clean-buffer-list): Use cl-find.
26791         Allow clean-buffer-list-kill-never-regexps to contain functions.
26793 2015-04-27  Nicolas Petton  <nicolas@petton.fr>
26795         Bump version of seq.el to 1.5
26796         * lisp/emacs-lisp/seq.el (seq-doseq): Remove undocumented return value
26797         from seq-doseq.  Bump version number of seq.el.
26799 2015-04-27  Glenn Morris  <rgm@gnu.org>
26801         * lisp/mail/rmail.el (rmail-reply):
26802         Decode subject before matching "Re:" prefix.  (Bug#20396)
26804 2015-04-27  Artur Malabarba  <bruce.connor.am@gmail.com>
26806         * lisp/emacs-lisp/package.el: Small improvements
26807         (package--with-work-buffer-async): More informative error.
26808         (package-install-user-selected-packages): Rename to
26809         `package-install-selected-packages'.
26811 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
26813         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last
26814         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last change.
26815         (eieio--class-make): Remove leftover `tag'.
26817 2015-04-27  Glenn Morris  <rgm@gnu.org>
26819         * lisp/gnus/message.el (gnus-extract-address-components):
26820         Remove bogus declaration that was masking previous problem.
26822 2015-04-27  Nicolas Graner  <nicolas.graner@u-psud.fr>  (tiny change)
26824         * lisp/gnus/message.el (message-insert-formatted-citation-line):
26825         Fix typo.  (Bug#20318)
26827 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
26829         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Reuse oldc.
26831         * lisp/textmodes/reftex-toc.el: Improve multi-frame behavior
26832         * lisp/textmodes/reftex-toc.el (reftex-toc-revert): Avoid displaying
26833         the buffer in yet another frame.
26834         (reftex-toc-visit-location): Make sure toc-window has focus at the end
26835         when `final' is nil.
26836         (reftex--rebuilding-toc): Defvar to avoid `boundp' and
26837         silence warnings.  Use `--' to clarify that it's internal.
26838         (reftex-toc-next, reftex-toc-previous, reftex-toc-demote)
26839         (reftex-toc-promote): Clarify unused argument.
26840         (reftex--pro-or-de, reftex--start-line, reftex--mark-line):
26841         Add `reftex--' prefix.  Fix all users.
26842         (reftex-toc-promote-prepare): Use _ for dummy variable.
26843         (reftex-toc-restore-region): Rename `m.
26845 2015-04-27  Eli Zaretskii  <eliz@gnu.org>
26847         Fix a typo in bibtex.el
26848         * lisp/textmodes/bibtex.el (bibtex-insert-kill): Fix a typo from
26849         last change.  (Bug#20429)
26851         Fix redisplay of frame after loading new fonts
26852         * src/xdisp.c (redisplay_internal): When retrying redisplay of
26853         a frame because new fonts were loaded, disable all redisplay
26854         optimizations on that frame by calling SET_FRAME_GARBAGED.
26855         (Bug#20410)
26857 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
26859         * lisp/info.el (Info-menu): Properly provide the `default'
26860         (Bug#20391)
26862         * lisp/progmodes/elisp-mode.el (elisp--get-fnsym-args-string):
26863         Catch errors from documentation (bug#20418).
26864         (emacs-lisp-mode-abbrev-table): Remove redundant defvar.
26866 2015-04-26  Stefan Monnier  <monnier@iro.umontreal.ca>
26868         * lisp/emacs-lisp/package.el: Move variables to silence byte-compiler.
26869         Remove redundant ":group 'package".
26871 2015-04-26  Eli Zaretskii  <eliz@gnu.org>
26873         Fix a typo in rmail.el
26874         * lisp/mail/rmail.el (rmail-ensure-blank-line): Fix a typo in the
26875         last commit.  (Bug#20429)
26877 2015-04-26  Dmitry Gutov  <dgutov@yandex.ru>
26879         Introduce xref-prompt-for-identifier
26880         * lisp/progmodes/xref.el (xref-prompt-for-identifier): New option.
26881         (xref--read-identifier): Use it
26882         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01205.html).
26884 2015-04-26  João Távora  <joaotavora@gmail.com>
26886         `tex-insert-quote' after single `'' opens quotes instead of closing
26887         Without this, it's very hard to precede double quotes with the
26888         apostrophe character, i.e. insert the sequence '``
26889         (quote-backquote-backquote), commonly useful in portuguese, for
26890         instance.
26891         * lisp/textmodes/tex-mode.el (tex-insert-quote): Add ?' to the list of
26892         preceding chars making `tex-insert-quote' be in the "opening" context.
26894 2015-04-25  Dmitry Gutov  <dgutov@yandex.ru>
26896         Pass `id' to `completing-read' as def instead of initial input
26897         * lisp/progmodes/xref.el (xref--read-identifier): Pass `id' to
26898         `completing-read' as the default value instead of initial input
26899         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01182.html).
26901 2015-04-25  Paul Eggert  <eggert@cs.ucla.edu>
26903         Don't freeze with unreadable processes
26904         Don't freeze if an exiting process can't be read from.  (Bug#19860).
26905         This fixes a bug I introduced in
26906         2014-07-08T07:24:07Z@eggert@cs.ucla.edu
26907         "* process.c: Add sanity checks for file descriptors."
26908         Dmitry Gutov did most of the legwork in finding the problem.
26909         * src/process.c (wait_reading_process_output):
26910         Treat non-running processes that can't be read from
26911         the same as other non-running processes.
26913 2015-04-25  Alan Mackenzie  <acm@muc.de>
26915         Fix change from 2015-04-22 "On C-y, stop some text property entries ..."
26916         * lisp/subr.el (remove-yank-excluded-properties): Put
26917         `with-silent-modifications' around only the last three lines of code.
26919 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
26921         * lisp/emacs-lisp/package.el (package-all-keywords): Don't cache
26922         (package--all-keywords): Deleted variable.
26924         * etc/NEWS: Document package-hiding functionality.
26926 2015-04-25  Eli Zaretskii  <eliz@gnu.org>
26928         * lisp/window.el (recenter-last-op): Doc fix.  (Bug#20419)
26930         Clarify the doc string of 'replace-regexp-in-string'
26931         * lisp/subr.el (replace-regexp-in-string): Doc fix.  (Bug#20395)
26933         Improve doc string of 'insert-buffer-substring'
26934         * src/editfns.c (Finsert_buffer_substring): Doc fix.  (Bug#20421)
26936         MS-Windows followup for the recent gnulib update
26937         * nt/gnulib.mk (libgnu_a_SOURCES): Replace file-has-acl.c with
26938         acl-internal.c.
26940 2015-04-24  Paul Eggert  <eggert@cs.ucla.edu>
26942         Spelling fixes
26944         Merge from gnulib
26945         This incorporates:
26946         2015-04-24 file-has-acl: new module, split from acl
26947         2015-04-24 manywarnings: add GCC 5.1 warnings
26948         2015-04-21 lstat: fix cross-compilation 'ln -s' problem
26949         2015-04-15 qacl: Simplify HP-UX acl_nontrivial check
26950         2015-04-15 acl: On Linux, check for acls without libacl
26951         2015-04-14 tempname: avoid unused parameter warnings (trivial)
26952         * lib/acl-internal.c: New file, from gnulib.
26953         * lib/file-has-acl.c: Remove; no longer imported from gnulib.
26954         * lib/acl-internal.h, lib/gnulib.mk, lib/qcopy-acl.c, lib/tempname.c:
26955         * m4/acl.m4, m4/gnulib-comp.m4, m4/lstat.m4, m4/manywarnings.m4:
26956         Update from gnulib.
26958         Port --enable-gcc-warnings to GCC 5.1 x86-64
26959         * lib-src/ebrowse.c (dump_sym):
26960         * lib-src/hexl.c (main):
26961         * src/ccl.c (ccl_driver):
26962         * src/character.c (string_escape_byte8):
26963         * src/dbusbind.c (xd_retrieve_arg, xd_add_watch):
26964         * src/gnutls.c (Fgnutls_boot):
26965         * src/gtkutil.c (xg_check_special_colors):
26966         * src/image.c (x_build_heuristic_mask):
26967         * src/print.c (safe_debug_print, print_object):
26968         * src/term.c (produce_glyphless_glyph):
26969         * src/xdisp.c (get_next_display_element)
26970         (produce_glyphless_glyph):
26971         * src/xterm.c (x_draw_glyphless_glyph_string_foreground):
26972         Don't use a signed format to print an unsigned integer, or vice
26973         versa.  GCC 5.1's new -Wformat-signedness option warns about this.
26974         * src/image.c (png_load_body, jpeg_load_body):
26975         Silence a bogus setjump diagnostic from GCC 5.1 (GCC bug 54561).
26977 2015-04-24  Tassilo Horn  <tsdh@gnu.org>
26979         Add new faces to tsdh-light-theme
26980         * etc/themes/tsdh-light-theme.el (tsdh-light): New face
26981         definitions for Info-quoted, ace-jump-face-foreground,
26982         hl-paren-face, show-paren-match, and show-paren-mismatch.
26984 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
26986         * lisp/emacs-lisp/seq.el (seq-doseq): Fix the macro.
26988 2015-04-24  Glenn Morris  <rgm@gnu.org>
26990         * build-aux/gitlog-to-emacslog:
26991         Use raw log format rather than wrapped one.
26993 2015-04-24  Stefan Monnier  <monnier@iro.umontreal.ca>
26995         * lisp/emacs-lisp/seq.el (seq-doseq): Tighten the code.
26996         (seq-doseq): Fix out-of-scope binding.
26997         Don't call `seq-length at every iteration.
26998         Reduce `if's from 3 to 2 per iteration.
26999         (emacs-lisp-mode-hook): Don't tweak in Emacs≥25.
27001 2015-04-24  Glenn Morris  <rgm@gnu.org>
27003         * lisp/textmodes/text-mode.el (text-mode-hook):
27004         Move text-mode-hook-identify to default.
27006         * lisp/mouse.el (minor-mode-menu-from-indicator):
27007         Handle non-function members of minor-mode-map-alist.  (Bug#20201)
27009         * lisp/help-fns.el (describe-function): More type checking.
27010         (describe-function-1): Handle changed symbol-function.  (Bug#20201)
27012         * build-aux/gitlog-to-emacslog: Convert "Fixes:" to "(Bug#)".
27013         (Bug#20325)
27015 2015-04-24  Andreas Schwab  <schwab@linux-m68k.org>
27017         shr: strip leading whitespace when expanding URLs
27018         * lisp/net/shr.el (shr-expand-url): Strip leading whitespace from URL.
27020 2015-04-24  Eli Zaretskii  <eliz@gnu.org>
27022         Clarify "co-authored" some more
27024         * CONTRIBUTE: Clarify "co-authored-by".  (Bug#20400)
27026         Clarify doc strings of functions that search for properties
27027         * src/textprop.c (Fnext_char_property_change)
27028         (Fprevious_char_property_change)
27029         (Fnext_single_char_property_change)
27030         (Fprevious_single_char_property_change, Fnext_property_change)
27031         (Fnext_single_property_change, Fprevious_property_change)
27032         (Fprevious_single_property_change): Clarify doc strings wrt return
27033         value and the optional LIMIT argument.  (Bug#20411)
27035 2015-04-24  Glenn Morris  <rgm@gnu.org>
27037         * test/automated/message-mode-tests.el (message-mode-propertize):
27038         Handle non-writable HOME; eg on hydra.nixos.org.
27040 2015-04-23  Eli Zaretskii  <eliz@gnu.org>
27042         Avoid starting threads by w32-shell-execute
27043         * src/w32fns.c (Fw32_shell_execute): Convert "file:///" URLs into
27044         local file names, before invoking ShellExecute.  (Bug#20220)
27046 2015-04-23  Martin Rudalics  <rudalics@gmx.at>
27048         Fix following doc-links in `widget-documentation-link-action'
27049         * lisp/wid-edit.el (widget-documentation-link-action): Make
27050         following doc-links less simplistic (Bug#20398).
27052 2015-04-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
27054         Improve EUDC manual
27055         * doc/misc/eudc.texi (Troubleshooting):
27056         New LDAP troubleshooting subsection.
27058 2015-04-22  Paul Eggert  <eggert@cs.ucla.edu>
27060         Omit needless "\ " after multibyte then newline
27061         * src/print.c: Include <c-ctype.h>, for c_isxdigit.
27062         (print_object): When print-escape-multibyte is non-nil and a
27063         multibyte character is followed by a newline or formfeed, followed
27064         by a hex digit, don't output a needless "\ " before the hex digit.
27065         * test/automated/print-tests.el (print-hex-backslash): New test.
27067 2015-04-22  Oleh Krehel  <ohwoeowho@gmail.com>
27069         Add a new `inhibit-message' variable
27070         * src/xdisp.c (syms_of_xdisp): Define a boolean `inhibit_message'.
27071         (message3): Don't call `message3_nolog' (i.e. use the Echo Area) when
27072         `inhibit_message' is non-zero.
27073         * etc/NEWS: Add an entry.
27074         * doc/lispref/display.texi: Add an entry for `inhibit-message',
27075         mention it in `message'.
27077 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
27079         Fix last fix in `display-buffer-record-window'.
27080         * lisp/window.el (display-buffer-record-window): Fix last fix.
27082 2015-04-22  Eli Zaretskii  <eliz@gnu.org>
27084         Minor edits in CONTRIBUTE
27085         * CONTRIBUTE: Rearrange instructions about log messages.
27086         Use "Git" capitalized all over.
27087         Use 2 spaces between sentences.
27089 2015-04-22  Artur Malabarba  <bruce.connor.am@gmail.com>
27091         * lisp/files.el (basic-save-buffer): Fix argument.
27093         * lisp/cus-edit.el (custom-file): Consider init-file-had-error.
27094         In case `(and (null custom-file) init-file-had-error)' do the same
27095         thing we'd do if `(null user-init-file)', which is to either error out
27096         or return nil.  This is in line with `custom-save-all' which would
27097         throw an error in that situation.  (Bug#20355)
27099         * lisp/emacs-lisp/package.el: Hide lower-priority packages in menu.
27100         (package-menu-hide-low-priority): New variable, see its doc.
27101         (package-archive-priorities): Update doc.
27102         (package-desc-priority): New function.
27103         (package-desc-priority-version): Use it.
27104         (package--remove-hidden): New function.
27105         (package-menu--refresh): Use it.
27107         * lisp/emacs-lisp/package.el: Implement displaying obsolete packages.
27108         (package-menu--hide-obsolete): New variable.
27109         (package--remove-hidden): Use it.
27110         (package-menu-hide-obsolete): New interactive function to toggle
27111         the variable.
27112         (package--quick-help-keys): Document it.
27113         (package-menu-async): Add :version tag.
27114         (package-menu-mode-map): Bind package-menu-hide-obsolete.
27115         (package-desc-status): Indicate non-installed obsolete packages as
27116         avail-obso.
27117         (package-menu-mark-install): Allow installation of avail-obso.
27118         (package-menu--status-predicate): Sort avail-obso with available.
27120 2015-04-22  Alan Mackenzie  <acm@muc.de>
27122         On C-y, stop some text property entries being written into buffer-undo-list
27123         * lisp/subr.el (remove-yank-excluded-properties): Enclose the code in
27124         `with-silent-modifications'.
27126 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
27128         In display-buffer-record-window record selected window if necessary
27129         * lisp/window.el (display-buffer-record-window): Store selected window
27130         if it differs from 3rd element of 'quit-restore' parameter (Bug#20353).
27132 2015-04-22  Tassilo Horn  <tsdh@gnu.org>
27134         Fix reftex-citation bug
27135         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
27136         Fix `wrong-type-argument stringp nil' error that occurs when AUCTeX
27137         integration is enabled and there are no citations in the document
27138         so far.
27140 2015-04-21  Dmitry Gutov  <dgutov@yandex.ru>
27142         Add or reset based on the presence of MERGE_HEAD
27143         * lisp/vc/vc-git.el (vc-git-find-file-hook): Add
27144         `vc-git-resolve-when-done' to `after-save-hook' in either case.
27145         (vc-git-conflicted-files): Add a TODO.
27146         (vc-git-resolve-when-done): Depending on the presence of
27147         MERGE_HEAD, either update the resolved file in the index, or
27148         remove it from there.  (Bug#20292)
27150 2015-04-21  Glenn Morris  <rgm@gnu.org>
27152         * lisp/custom.el (custom-declare-group): No need to purecopy
27153         custom-current-group-alist members following recent change to set
27154         it to nil before dumping.
27156         * build-aux/gitlog-to-emacslog: Get footer from ChangeLog.2.
27157         (Bug#20399)
27159 2015-04-21  Daniel Colascione  <dancol@dancol.org>
27161         Unbreak no-op buffer save message
27162         * lisp/files.el (basic-save-buffer): Accept called-interactively as
27163         an argument instead of directly invoking called-interactively-p,
27164         which will always yield nil in that context.
27166 2015-04-21  Alan Mackenzie  <acm@muc.de>
27168         CC Mode: Do nothing in before/after-change-functions for text
27169         property changes
27170         Fixes bug#20266.
27171         * lisp/progmodes/cc-mode.el (c-basic-common-init): Make
27172         yank-handled-properties buffer local, and remove 'category from it.
27173         (c-called-from-text-property-change-p): New function.
27174         (c-before-change): Don't do anything if a call of the new function
27175         returns non-nil.
27176         (c-after-change): Don't do much if a call of the new function returns
27177         non-nil.
27178         (c-extend-after-change-region): Put changes to text property 'fontified
27179         inside c-save-buffer-state.
27181 2015-04-20  Stefan Monnier  <monnier@iro.umontreal.ca>
27183         Fix byte-compiler warnings about looking-back
27184         * lisp/vc/log-view.el (log-view-end-of-defun-1):
27185         * lisp/textmodes/tex-mode.el (latex-forward-sexp-1):
27186         * lisp/textmodes/reftex-ref.el (reftex-goto-label):
27187         * lisp/textmodes/bibtex.el (bibtex-insert-kill):
27188         * lisp/progmodes/sh-script.el (sh--maybe-here-document):
27189         * lisp/progmodes/ruby-mode.el (ruby-end-of-defun):
27190         * lisp/progmodes/ada-mode.el (ada-in-numeric-literal-p):
27191         * lisp/org/org.el (org-insert-heading, org-sort-entries):
27192         * lisp/org/org-mouse.el (org-mouse-end-headline)
27193         (org-mouse-context-menu):
27194         * lisp/org/org-clock.el (org-clock-cancel):
27195         * lisp/man.el (Man-default-man-entry):
27196         * lisp/mail/rmail.el (rmail-get-new-mail, rmail-insert-inbox-text)
27197         (rmail-ensure-blank-line):
27198         * lisp/mail/footnote.el (Footnote-delete-footnote):
27199         * lisp/mail/emacsbug.el (report-emacs-bug):
27200         * lisp/info.el (Info-follow-reference, Info-fontify-node):
27201         * lisp/info-look.el (info-lookup-guess-custom-symbol):
27202         * lisp/help-fns.el (help-fns--key-bindings):
27203         * lisp/files.el (hack-local-variables):
27204         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-cmd-complete)
27205         (viper-get-ex-pat, ex-expand-filsyms, viper-get-ex-file)
27206         (viper-complete-filename-or-exit):
27207         * lisp/emulation/viper-cmd.el (viper-backward-indent):
27208         * lisp/emacs-lisp/lisp-mode.el (calculate-lisp-indent):
27209         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
27210         * lisp/cus-edit.el (custom-face-edit-value-create):
27211         * lisp/calendar/todo-mode.el (todo-set-item-priority)
27212         (todo-filter-items-1, todo-convert-legacy-files)
27213         (todo-prefix-overlays): Add explicit second arg to looking-back.
27215 2015-04-20  Glenn Morris  <rgm@gnu.org>
27217         Avoid non-nil current-load-list at startup
27218         * src/process.c (init_process_emacs): Move Fprovide statement...
27219         (syms_of_process): ... to here.
27221         * lisp/loadup.el (custom-current-group-alist): Reset before dumping.
27223         * lisp/startup.el (command-line) <site-run-file>: Avoid rogue value
27224         in emacs -Q.
27226 2015-04-20  Ludovic Courtès  <ludo@gnu.org>
27228         * lisp/loadup.el (exec-path): Avoid storing build-time PATH in binary.
27229         (Bug#20330)
27231 2015-04-20  Glenn Morris  <rgm@gnu.org>
27233         * lisp/cus-start.el (exec-path): Set standard value, to avoid rogue.
27235         Tweak exec-path in uninstalled case
27236         * src/callproc.c (init_callproc): If running uninstalled, do not
27237         include eventual installation libexec directory in exec-path.
27239 2015-04-20  Artur Malabarba  <bruce.connor.am@gmail.com>
27241         * lisp/emacs-lisp/package.el: Filter by multiple keywords and
27242         cache keywords.
27243         (package-menu-filter): Accept a list of keywords.
27244         (package--all-keywords): New variable to cache known keywords.
27245         (package-all-keywords): Populate it if necessary.
27246         (package-refresh-contents): Reset it.
27248         * lisp/emacs-lisp/package.el: Make archive and status pseudo-keywords
27249         (package--has-keyword-p): Understand "arc:xxxx" and "status:xxxx"
27250         as special keywords which match agains package archive and status
27251         respectively.
27252         * etc/NEWS: Document it.
27254 2015-04-20  Eli Zaretskii  <eliz@gnu.org>
27256         Describe and index "empty overlays".
27257         * doc/lispref/display.texi (Overlays): Improve indexing.
27258         (Managing Overlays): Describe "empty" overlays.
27259         (Overlay Properties, Finding Overlays): Add cross-reference to
27260         where empty overlays are described.
27262 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
27264         Spelling fixes
27266         Quote 'like this' in top-level files
27267         * CONTRIBUTE, INSTALL, Makefile.in, README, configure.ac, make-dist:
27268         Prefer to single-quote 'like this' (instead of the older style
27269         `like this').
27270         * configure.ac: Fix some space-before-tab problems that 'git commit'
27271         complained about.
27273         Use bool for boolean in textprop.c, undo.c
27274         * src/textprop.c (soft, hard): Now constants instead of macros.
27275         (validate_plist): Rewrite to avoid need for boolean local.
27276         (interval_has_all_properties, interval_has_some_properties)
27277         (interval_has_some_properties_list, add_properties)
27278         (remove_properties, get_char_property_and_overlay)
27279         (Fnext_single_char_property_change)
27280         (Fprevious_single_char_property_change, add_text_properties_1)
27281         (Fremove_text_properties, Fremove_list_of_text_properties)
27282         (copy_text_properties):
27283         * src/tparam.c (tparam1):
27284         * src/undo.c (record_change, record_property_change)
27285         (syms_of_undo):
27286         Use 'true' and 'false' for booleans.
27288 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
27290         * lisp/vc/vc-git.el (vc-git-find-file-hook):
27291         Call `smerge-start-session' even when dealing with a stash
27292         conflict (bug#20292).
27294 2015-04-19  Vibhav Pant  <vibhavp@gmail.com>
27296         Add option to eshell/clear to clear scrollback.
27297         * lisp/eshell/esh-mode.el (eshell/clear-scrollback): New function.
27298         (eshell/clear): Add an optional SCROLLBACK argument.  If non-nil,
27299         scrollback contents are cleared.
27300         * etc/NEWS: Describe change.
27301         * doc/misc/eshell.texi: Add entry for `clear'.
27303 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
27305         * src/widget.c (set_frame_size): Prefer 'int' to 'unsigned'
27306         where either will do.
27308 2015-04-19  Steve Purcell  <steve@sanityinc.com>
27310         Assume package archive-contents are UTF8-encoded
27311         * lisp/emacs-lisp/package.el (package--read-archive-file):
27312         Set `coding-system-for-read' explicitly to 'utf-8 when reading the
27313         downloaded and cached archive-contents files, so that non-ASCII
27314         characters in package descriptions are displayed correctly in the
27315         `list-packages' menu.  (Bug#20231)
27317 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
27319         Abort when looking at stashed changes
27320         * lisp/vc/vc-git.el (vc-git-find-file-hook): Abort when looking at
27321         stashed changes (bug#20292).
27323 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
27325         Refactor low-level printing for simplicity
27326         * src/print.c (PRINTDECLARE): Remove.  Move its contents into
27327         PRINTPREPARE; doable now that we assume C99.  All callers changed.
27328         (PRINTCHAR): Remove, as it adds more mystery than clarity.
27329         All callers changed.
27330         (strout): Assume that caller computes length.  All callers changed.
27331         (print_c_string): New function.
27332         (write_string, write_string_1): Compute length instead of asking
27333         the caller to compute it.  All callers changed.
27334         (write_string): Simplify by using write_string_1.
27335         (write_string_1): Simplify by using print_c_string.
27336         (Fterpri): Compute default val more clearly.
27337         (Fprin1_to_string, print_object):
27338         Assume C99 to avoid unnecessary nesting.
27339         (print_object): Prefer print_c_string to multiple printchar, or
27340         to calling strout with -1 length.  Coalesce into sprintf when
27341         this is easy.
27343 2015-04-18  Paul Eggert  <eggert@cs.ucla.edu>
27345         Prefer "Bug#1234" in commit messages (Bug#20325)
27346         * .dir-locals.el (log-edit-mode): Don't rewrite Bug#,
27347         as this isn't useful for Git.
27348         * CONTRIBUTE: Suggest "Bug#1234" instead of "Fixes: debbugs:1234".
27350 2015-04-18  Glenn Morris  <rgm@gnu.org>
27352         * lisp/files.el (auto-mode-alist): Use conf mode for gitconfig, hgrc.
27353         (Bug#19506)
27355 2015-04-18  Tom Willemse  <tom@ryuslash.org>  (tiny change)
27357         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
27358         Do not use `chomp' as a function.  (Bug#19505)
27360 2015-04-18  Glenn Morris  <rgm@gnu.org>
27362         * lisp/net/browse-url.el (browse-url, browse-url-at-point): Doc fixes.
27364         * doc/emacs/misc.texi (Sorting): Small edit.
27365         (Bug#19896)
27367         * admin/admin.el (make-manuals): Add emacs-xtra in pdf and ps.
27369 2015-04-18  Simen Heggestøyl  <simenheg@gmail.com>
27371         css-mode.el: Support multi-line comment filling
27372         (Bug#20256)
27373         * lisp/textmodes/css-mode.el (css-fill-paragraph): Support multi-line
27374         comment filling.
27375         (css-adaptive-fill): New function.
27376         (css-mode): Set `adaptive-fill-function'.
27377         (scss-mode): Set `comment-continue'.
27379 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
27381         * lisp/emacs-lisp/seq.el (seq-concatenate, seq-into):
27382         Better error messages.
27384 2015-04-18  Ivan Radanov Ivanov  <ivanradanov@yahoo.co.uk>  (tiny change)
27386         Minor improvements in Bulgarian input methods
27387         * lisp/leim/quail/cyrillic.el (bulgarian-phonetic, bulgarian-bds):
27388         Replace U+042C with U+045D, as the former character is not used in
27389         the modern Bulgarian language.
27390         (Bug#20350)
27392 2015-04-17  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
27394         Improve EUDC manual
27395         * doc/misc/eudc.texi (LDAP Configuration): Mention simple and SASL
27396         authentication schemes.  Add index items.  Shorten example server
27397         name.
27399 2015-04-17  Dmitry Gutov  <dgutov@yandex.ru>
27401         Don't show both feature and function with the same name
27402         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
27403         Don't show both feature and function with the same name.
27405         (elisp--xref-identifier-location): Skip variable, if it's also
27406         a function
27407         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
27408         Avoid returning both the variable and the function for the same
27409         minor mode.
27411 2015-04-17  Wolfgang Jenkner  <wjenkner@inode.at>
27413         Fix fontification of keywords clobbered by the prompt
27414         * lisp/comint.el (comint-output-filter): Remove the uses of
27415         with-silent-modifications I introduced as part of the last change.
27416         This fixes, e.g., erratically missing highlighting when running
27417         ./configure --help; ./configure in a shell-mode buffer with
27418         compilation-shell-minor-mode turned on.
27420 2015-04-17  Glenn Morris  <rgm@gnu.org>
27422         * admin/authors.el (authors-valid-file-names)
27423         (authors-renamed-files-alist): Additions.
27425 2015-04-17  Stefan Monnier  <monnier@iro.umontreal.ca>
27427         * lisp/indent.el (indent-region): Don't deactivate the mark.
27428         (Bug#20357)
27430 2015-04-17  Sam Steingold  <sds@gnu.org>
27432         * lisp/net/rcirc.el (defun-rcirc-command): Mark `target' as ignorable.
27434 2015-04-16  Leo Liu  <sdl.web@gmail.com>
27436         * lisp/progmodes/xref.el (xref-push-marker-stack): Add optional arg.
27438 2015-04-16  Stefan Monnier  <monnier@iro.umontreal.ca>
27440         * lisp/erc/erc-pcomplete.el (erc-pcomplete):
27441         Don't use `pcomplete' any more.
27443 2015-04-16  Glenn Morris  <rgm@gnu.org>
27445         * admin/authors.el (authors-lax-changelogs): Update for erc changes.
27447 2015-04-16  Eli Zaretskii  <eliz@gnu.org>
27449         Don't link with -ljpeg on MS-Windows, to avoid dependency on DLL
27450         * configure.ac (LIBJPEG): Leave it empty for MinGW.
27452 2015-04-16  Glenn Morris  <rgm@gnu.org>
27454         * lisp/replace.el (query-replace-from-to-separator):
27455         Delay initialization to avoid rogue setting after startup.
27457 2015-04-16  Paul Eggert  <eggert@cs.ucla.edu>
27459         Pre-4.6 GCC succeeds with unknown option
27460         * configure.ac (emacs_cv_prog_cc_nopie): Port to pre-4.6 GCC.
27461         (Bug#20338)
27463 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
27465         '[:graph:]' now excludes whitespace, not just ' '
27466         * doc/lispref/searching.texi (Char Classes):
27467         * lisp/emacs-lisp/rx.el (rx): Document [:graph:] to be [:print:]
27468         sans whitespace (not sans space).
27469         * src/character.c (graphicp): Exclude all Unicode whitespace chars,
27470         not just space.
27471         * src/regex.c (ISGRAPH): Exclude U+00A0 (NO-BREAK SPACE).
27473 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
27475         * lisp/subr.el (substitute-key-definition-key, special-form-p)
27476         (macrop): Drop deprecated second arg to indirect-function.
27477         (looking-back): Make the second arg non-optional.
27479         * lisp/org/org-clock.el (org-x11idle-exists-p): Be honest about which
27480         command is actually sent to the shell.
27482 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
27484         Port jpeg configuration to Solaris 10 with Sun C
27485         * configure.ac: Check for jpeglib 6b by trying to link it, instead
27486         of relying on cpp magic that has problems in practice.  Check for
27487         both jpeglib.h and jerror.h features.  Remove special case for
27488         mingw32, which should no longer be needed (and if it were needed,
27489         should now be addressable by hotwiring emacs_cv_jpeglib).
27490         (Bug#20332)
27492 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
27494         Move some Elisp-specific code from lisp-mode.el to elisp-mode.el
27495         * lisp/emacs-lisp/lisp-mode.el (lisp--el-font-lock-flush-elisp-buffers):
27496         Move to elisp-mode.el.
27497         (lisp-mode-variables): (Re)move elisp-specific settings.
27498         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Add settings removed
27499         from lisp-mode-variables.
27500         (elisp--font-lock-flush-elisp-buffers): New function, moved from
27501         lisp-mode.el.
27503         * lisp/emacs-lisp/lisp-mode.el (lisp--el-non-funcall-position-p):
27504         Avoid pathological slowdown at top-level in large file.
27506 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
27508         Standardize names of ChangeLog history files
27509         Suggested by Glenn Morris in:
27510         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
27511         * Makefile.in (install-man): Don't treat ChangeLog.1 as a man page.
27512         * doc/man/ChangeLog.1: Rename back from doc/man/ChangeLog.01.
27513         * lisp/erc/ChangeLog.1: New file, containing the old contents of ...
27514         * lisp/erc/ChangeLog.01, lisp/erc/ChangeLog.02, lisp/erc/ChangeLog.03:
27515         * lisp/erc/ChangeLog.04, lisp/erc/ChangeLog.05, lisp/erc/ChangeLog.06:
27516         * lisp/erc/ChangeLog.07, lisp/erc/ChangeLog.08, lisp/erc/ChangeLog.09:
27517         Remove.
27519         Split top-level entries into pre- and post-April 7
27520         This more clearly distingiushes pre-April-7 ChangeLog entries (which
27521         are for top-level files only) from post-April-7 entries (which are
27522         about files at all levels.  Problem reported by Glenn Morris in:
27523         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
27524         * ChangeLog.1: Move post-April-7 entries from here ...
27525         * ChangeLog.2: ... to this new file.
27526         * Makefile.in (CHANGELOG_HISTORY_INDEX_MAX): Bump to 2.
27528 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
27530         Fix recent cus-start changes that added customize-rogues
27531         * lisp/cus-start.el (custom-delayed-init-variables): Initialize the
27532         vars early.
27533         * lisp/loadup.el ("cus-start"): Move to the end to reduce
27534         customize-rogue.
27536 2015-04-15  Nicolas Petton  <nicolas@petton.fr>
27538         Define cl-concatenate as an alias to seq-concatenate
27539         * lisp/emacs-lisp/cl-extra.el (cl-concatenate): Removes duplicated
27540           code by making cl-concatenate an alias to seq-concatenate.
27542 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
27544         * src/lread.c (intern_1): Make sure we'd find the symbol we add
27545         (Bug#20334)
27546         * src/xfaces.c (resolve_face_name): Don't use `intern' with
27547         Lisp_Strings.
27549 2015-04-15  Glenn Morris  <rgm@gnu.org>
27551         * doc/lispref/sequences.texi (Sequence Functions): Fix typo in previous.
27553 2015-04-15  Lars Magne Ingebrigtsen  <larsi@gnus.org>
27555         Clean up gnus-uu saving code slightly
27556         * lisp/gnus/gnus-uu.el (gnus-uu-save-article): Make the
27557         save-restriction/widen calls make more sense.
27559 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
27561         Make [:graph:] act like [:print:] sans space
27562         In POSIX [[:print:]] is equivalent to [ [:graph:]], so change
27563         [:graph:] so that it matches everything that [:print:] does,
27564         except for space.
27565         * doc/lispref/searching.texi (Char Classes):
27566         * etc/NEWS:
27567         * lisp/emacs-lisp/rx.el (rx):
27568         Document [:graph:] to be [:print:] sans ' '.
27569         * src/character.c, src/character.h (graphicp): New function.
27570         * src/regex.c (ISGRAPH) [emacs]: Use it.
27571         (BIT_GRAPH): New macro.
27572         (BIT_PRINT): Increase to 0x200, to make room for BIT_GRAPH.
27573         (re_wctype_to_bit) [! WIDE_CHAR_SUPPORT]:
27574         Return BIT_GRAPH for RECC_GRAPH.
27575         (re_match_2_internal) [emacs]: Use ISGRAPH if BIT_GRAPH,
27576         and ISPRINT if BIT_PRINT.
27578 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
27580         automated/eieio-test-methodinvoke.el (make-instance) <(subclass C)>:
27581         Don't use call-next-method in a cl-defmethod.
27583         * lisp/emacs-lisp/eieio-core.el (eieio--class): Derive from cl--class
27584         (eieio--class-p): Remove, provided by cl-defstruct.
27586 2015-04-14  Nicolas Petton  <nicolas@petton.fr>
27588         Add seq-intersection and seq-difference to the seq library
27589         * lisp/emacs-lisp/seq.el (seq-intersection, seq-difference):
27590         New functions.
27591         * test/automated/seq-tests.el: Add tests for seq-intersection and
27592         seq-difference.
27593         * doc/lispref/sequences.texi: Add documentation for seq-intersection
27594         and seq-difference.
27596 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
27598         * lisp/emacs-lisp/eieio-core.el (class-abstract-p): Don't inline,
27599         to avoid leaking internals.
27601 2015-04-14  Sam Steingold  <sds@gnu.org>
27603         package--ensure-init-file: widen requires save-restriction
27605 2015-04-14  Eli Zaretskii  <eliz@gnu.org>
27607         Improve the commit-msg Git hook for unibyte environments
27608         * build-aux/git-hooks/commit-msg: Set LC_ALL=C, before running Awk
27609         in unibyte environments.  (Suggested by Paul Eggert
27610         <eggert@cs.ucla.edu>.)  Use a more accurate approximation to
27611         [:print:], based on UTF-8 sequences of the unprintable characters.
27613         Describe problems with cursor caused by Windows Magnifier
27614         * etc/PROBLEMS: Describe the problem with cursor shape on
27615         MS-Windows due to Windows Magnifier.
27616         (Bug#20271)
27618         Make [:print:] support non-ASCII characters correctly
27619         * src/regex.c (ISPRINT): Call 'printablep' for multibyte characters.
27620         (BIT_PRINT): New bit mask.
27621         (re_wctype_to_bit): Return BIT_PRINT for RECC_PRINT.
27622         * src/character.c (printablep): New function.
27623         * src/character.h (printablep): Add prototype.
27624         * lisp/emacs-lisp/rx.el (rx): Doc fix: document the new behavior
27625         of 'print', 'alnum', and 'alphabetic'.
27626         * doc/lispref/searching.texi (Char Classes): Document the new
27627         behavior of [:print:].
27628         * etc/NEWS: Mention the new behavior of [:print:].
27630         Assign correct general-category and names to surrogates
27631         * admin/unidata/unidata-gen.el (unidata-setup-list): Don't ignore
27632         surrogates.  This avoids assigning them the default
27633         general-category of 'Cn', i.e. unassigned codepoints.
27634         (unidata-get-name): Give surrogates synthetic names.
27636 2015-04-14  Paul Eggert  <eggert@cs.ucla.edu>
27638         Assume C89 offsetof in xterm.c, xlwmenu.c
27639         * lwlib/xlwmenu.c (offset):
27640         * src/xterm.c (cvt_string_to_pixel_args):
27641         Use offsetof, not XtOffset.
27643 2015-04-14  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
27645         Assume C89 offsetof in widget.c
27646         * src/widget.c (XtOffset): Remove; no longer needed.
27647         (offset): Implement via offsetof instead of via pre-C89 XtOffset hack.
27649         Fix think-o in previous patch
27650         * src/window.c (count_windows, get_leaf_windows):
27651         Don't optimize count_windows incorrectly.
27653 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
27655         Avoid some int overflows in window.c
27656         * src/print.c (print_object):
27657         * src/window.c (sequence_number):
27658         * src/window.h (struct window.sequence_number):
27659         Don't assume window sequence number fits in int.
27660         * src/window.c (window_select_count):
27661         * src/window.h (struct window.use_time, window_select_count):
27662         Don't assume window use time fits in int.
27663         * src/window.c (Fsplit_window_internal):
27664         Don't assume user-supplied integer, or sum, fits in int.
27665         (Fset_window_configuration, count_windows, get_leaf_windows)
27666         (save_window_save, Fcurrent_window_configuration):
27667         Use ptrdiff_t for object counts.
27668         (Fset_window_configuration): Omit unused local 'n'.
27669         (count_windows): Simplify by writing in terms of get_leaf_windows.
27670         (get_leaf_windows): Don't store through FLAT if it's null.
27671         (extract_dimension): New static function.
27672         (set_window_margins, set_window_fringes, set_window_scroll_bars):
27673         Use it to avoid undefined behavior when converting user-supplied
27674         integer to 'int'.
27676 2015-04-13  Glenn Morris  <rgm@gnu.org>
27678         Minor doc copyedits
27679         * doc/emacs/custom.texi (Init Examples): Tweak example, replace typo.
27680         * doc/lispintro/emacs-lisp-intro.texi (condition-case): Typo fix.
27682 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
27684         [Gnus] Catch the invalid-operation that idna.el will issue
27685         * lisp/gnus/gnus-art.el (gnus-use-idna):
27686         * lisp/gnus/gnus-sum.el (gnus-summary-idna-message):
27687         * lisp/gnus/message.el (message-use-idna):
27688         Catch the invalid-operation that idna.el will issue.
27690 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
27692         * doc/lispref/processes.texi (Shell Arguments): Prefer diff -u.
27694 2015-04-13  Sam Steingold  <sds@gnu.org>
27696         package--ensure-init-file: widen before looking for
27697         "(package-initialize)"
27699 2015-04-13  Dmitry Gutov  <dgutov@yandex.ru>
27701         Change diff-switches default to `-u' (Bug#20290)
27702         * doc/emacs/files.texi (Comparing Files): Document the new default
27703         value of `diff-switches'.
27704         * doc/emacs/trouble.texi (Sending Patches): Document the preference
27705         for unified diff format.  Escape the plus in the suggested `-F' regexp
27706         value.
27707         * lisp/vc/diff.el (diff-switches): Change the default to `-u'.
27709 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
27711         (gnus-group--setup-tool-bar-update): Fix last change
27712         * lisp/gnus/gnus-group.el (gnus-group--setup-tool-bar-update):
27713         cursor-sensor-functions should be a list of functions.
27715 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
27717         * lisp/gnus/gnus-topic.el (gnus-topic-mode):
27718         Use gmm-called-interactively-p.
27720 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
27722         * lisp/loadup.el ("cus-start"): Load it after loaddefs.el
27723         (Bug#20321)
27724         * lisp/cus-start.el (read-buffer-function): Don't advertise
27725         iswitchb-read-buffer any more.
27726         (iswitchb): Don't tweak this obsolete group any more.
27728 2015-04-13  Artur Malabarba  <bruce.connor.am@gmail.com>
27730         * lisp/emacs-lisp/package.el: Fix package--ensure-init-file.
27732         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Implement docstrings.
27733         Adding a string after a constructor's argument list will use
27734         that string as the constructor function docstring.  If this string
27735         is absent but the struct itself was given a docstring, use that as
27736         the constructor's docstring.
27737         Fixes bug#17284.
27739 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
27741         Deprecate `intangible' and `point-entered' properties
27742         * lisp/emacs-lisp/cursor-sensor.el: New file.
27743         * lisp/simple.el (pre-redisplay-functions): New hook.
27744         (redisplay--pre-redisplay-functions): New function.
27745         (pre-redisplay-function): Use it.
27746         (minibuffer-avoid-prompt): Mark obsolete.
27747         (redisplay--update-region-highlight): Adapt it to work as a function on
27748         pre-redisplay-functions.
27749         * lisp/cus-start.el (minibuffer-prompt-properties--setter): New fun.
27750         (minibuffer-prompt-properties): Use it.  Use cursor-intangible rather
27751         than point-entered to make the prompt intangible.
27752         * lisp/forms.el: Move `provide' calls to the end.
27753         (forms-mode): Don't use `run-hooks' on a local var.
27754         (forms--make-format, forms--make-format-elt-using-text-properties):
27755         Use cursor-intangible rather than `intangible'.
27756         (forms-mode): Enable cursor-intangible-mode.
27757         * lisp/isearch.el (isearch-mode): Use defvar-local.
27758         (cursor-sensor-inhibit): Declare.
27759         (isearch-mode): Set cursor-sensor-inhibit.
27760         (isearch-done): Set it back.
27761         (isearch-open-overlay-temporary, isearch-open-necessary-overlays)
27762         (isearch-close-unnecessary-overlays): Don't bother with `intangible'
27763         any more.
27764         * lisp/ses.el (ses-localvars): Remove `mode-line-process'.
27765         (ses-sym-rowcol, ses-cell-value, ses-col-width, ses-col-printer):
27766         Add Edebug spec.
27767         (ses-goto-print, ses-print-cell, ses-adjust-print-width)
27768         (ses-goto-data, ses-setup, ses-copy-region): Don't let-bind
27769         inhibit-point-motion-hooks any more.
27770         (ses--cell-at-pos, ses--curcell): New functions, extracted from
27771         ses-set-curcell.
27772         (ses-set-curcell): Use them.
27773         (ses-print-cell, ses-setup): Use cursor-intangible instead of
27774         `intangible'.  Make sure cursor-intangible isn't sticky at BOB.
27775         (ses-print-cell-new-width, ses-reprint-all, ses-recalculate-all):
27776         Use ses--cell-at-pos.
27777         (ses--mode-line-process, ses--cursor-sensor-highlight): New functions,
27778         extracted from ses-command-hook.  Make them work with multiple windows
27779         displaying the same buffer.
27780         (ses-mode): Use them via mode-line-process and pre-redisplay-functions.
27781         Enable cursor-intangible-mode.
27782         (ses-command-hook): Remove cell highlight and mode-line update code.
27783         (ses-forward-or-insert, ses-copy-region-helper, ses-sort-column):
27784         Update for new name of text-property holding the cell name.
27785         (ses-rename-cell): Don't mess with mode-line-process.
27786         * lisp/erc/erc-stamp.el (erc-add-timestamp): Use the new
27787         cursor-sensor-functions property instead of point-entered.
27788         (erc-insert-timestamp-right, erc-format-timestamp):
27789         Use cursor-intangible rather than `intangible'.
27790         (erc-munge-invisibility-spec): Use add-to-invisibility-spec and
27791         remove-from-invisibility-spec.  Enable cursor-intangible-mode and
27792         cursor-sensor-mode if needed.
27793         (erc-echo-timestamp): Adapt to calling convention of
27794         cursor-sensor-functions.
27795         (erc-insert-timestamp-right): Remove unused vars `current-window' and
27796         `indent'.
27797         * lisp/gnus/gnus-group.el (gnus-tmp-*): Declare.
27798         (gnus-update-group-mark-positions): Remove unused `topic' var.
27799         (gnus-group-insert-group-line): Remove unused var `header'.
27800         (gnus-group--setup-tool-bar-update): New function.
27801         (gnus-group-insert-group-line): Use it.
27802         (gnus-group-update-eval-form): Declare local
27803         dynamically-bound variables.
27804         (gnus-group-unsubscribe-group): Use \` and \' to match string bounds.
27805         * lisp/gnus/gnus-topic.el (gnus-topic-jump-to-topic)
27806         (gnus-group-prepare-topics, gnus-topic-update-topic)
27807         (gnus-topic-change-level, gnus-topic-catchup-articles)
27808         (gnus-topic-remove-group, gnus-topic-delete, gnus-topic-indent):
27809         Use inhibit-read-only.
27810         (gnus-topic-prepare-topic): Use gnus-group--setup-tool-bar-update.
27811         (gnus-topic-mode): Use define-minor-mode and derived-mode-p.
27812         * lisp/textmodes/reftex-index.el (reftex-display-index):
27813         Use cursor-intangible-mode if available.
27814         (reftex-index-post-command-hook): Check cursor-intangible.
27815         * lisp/textmodes/reftex-toc.el (reftex-toc):
27816         Use cursor-intangible-mode if available.
27817         (reftex-toc-recenter, reftex-toc-post-command-hook):
27818         Check cursor-intangible.
27819         * lisp/textmodes/sgml-mode.el: Use lexical-binding.
27820         (sgml-tag): Use cursor-sensor-functions instead of point-entered.
27821         (sgml-tags-invisible): Use with-silent-modifications and
27822         inhibit-read-only.  Enable cursor-sensor-mode.
27823         (sgml-cursor-sensor): Rename from sgml-point-entered and adjust to
27824         calling convention of cursor-sensor-functions.
27825         * lisp/textmodes/table.el (table-cell-map-hook, table-load-hook)
27826         (table-point-entered-cell-hook, table-point-left-cell-hook):
27827         Don't autoload.
27828         (table-cell-entered-state): Remove var.
27829         (table--put-cell-point-entered/left-property)
27830         (table--remove-cell-properties):
27831         Use cursor-sensor-functions rather than point-entered/left.
27832         (table--point-entered/left-cell-function): Merge
27833         table--point-entered-cell-function and table--point-left-cell-function
27834         and adjust to calling convention of cursor-sensor-functions.
27836         Update ldef-boots.el
27838         * lisp/emacs-lisp/pcase.el (pcase-dolist): Autoload as well.
27840         * doc/misc/eieio.texi: Don't advertise now obsolete constructs
27842         Collapse successive char deletions in the undo log
27843         * src/cmds.c (remove_excessive_undo_boundaries): New function,
27844         extracted from Fself_insert_command.
27845         (Fdelete_char, Fself_insert_command): Use it.
27846         * src/fileio.c (Fmake_symbolic_link): Rename arg to `target'.
27847         * src/keyboard.c (syms_of_keyboard): `top-level' shouldn't be special.
27849         xterm and OSC 52: Add NEWS entry, and tweak the code
27850         * lisp/term/xterm.el (gui-set-selection) <nil>: Move method definition
27851         to top-level.
27852         (terminal-init-xterm-activate-set-selection): Set a terminal property.
27853         (xterm--set-selection): Use it instead of checking the value of
27854         `terminal-initted'.  Don't use string-bytes.
27856 2015-04-13  Philipp Stephani  <p.stephani2@gmail.com>
27858         xterm.el: Implement OSC-52 functionality for setting the X selection
27859         * lisp/term/xterm.el (xterm-max-cut-length): New var.
27860         (xterm--set-selection, terminal-init-xterm-activate-set-selection):
27861         New funs.
27862         (terminal-init-xterm, xterm--version-handler): Use them.
27864 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
27866         Remove left over code from when we used an obsolete/loaddefs.el file
27867         * lisp/subr.el (do-after-load-evaluation): Remove left over code from
27868         when we used an obsolete/loaddefs.el file.
27870         * lisp/cedet/semantic/fw.el (semantic-exit-on-input)
27871         (semanticdb-without-unloaded-file-searches): Use declare.
27872         (semantic-fw-add-edebug-spec): Remove.
27874         * lisp/completion.el (completion-lisp-mode-hook):
27875         Use completion-separator-chars rather than local key binding.
27877         * src/*.c: Set deactivate_mark buffer-locally
27878         (Bug#20260)
27879         * src/insdel.c (prepare_to_modify_buffer_1):
27880         * src/fileio.c (Finsert_file_contents): Set deactivate_mark
27881         buffer-locally.
27883 2015-04-12  Fabián Ezequiel Gallina  <fgallina@gnu.org>
27885         python.el: Keep symmetry on sexp navigation with parens
27886         (Bug#19954)
27887         * lisp/progmodes/python.el
27888         (python-nav--forward-sexp): Add argument skip-parens-p.
27889         (python-nav-forward-sexp, python-nav-backward-sexp)
27890         (python-nav-forward-sexp-safe)
27891         (python-nav-backward-sexp-safe): Use it.
27892         * test/automated/python-tests.el
27893         (python-nav-forward-sexp-1): Fix test.
27895 2015-04-12  João Távora  <joaotavora@gmail.com>
27897         Don't use `setq-local' in Gnus code
27898         This might break upstream builds with older Emacsen
27899         * lisp/gnus/message.el (message-mode): Use `set' and
27900         `make-local-variable' instead of `setq-local'.
27902 2015-04-12  Paul Eggert  <eggert@cs.ucla.edu>
27904         Update Makefile.in's .PHONY dependencies
27905         * Makefile.in (change-history-commit, master-branch-is-current)
27906         (no-ChangeLog): Now phony.
27908         Remove configure's --with-mmdf option
27909         * configure.ac (MAIL_USE_MMDF): Remove.
27910         * etc/NEWS: Document this.
27911         * lib-src/movemail.c: Assume MAIL_USE_MMDF is not defined.
27912         (Bug#20308)
27914         * doc/man/ChangeLog.01: Rename from doc/man/ChangeLog.1.
27915         That way, 'make install' won't think it's a man page.
27916         Reported by Ashish SHUKLA in:
27917         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00656.html
27919         Improve 'make change-history' prereq tests
27920         * Makefile.in (gen_origin): Fix to match what's in the master branch.
27921         (no-ChangeLog, master-branch-is-current): New rules.
27922         (change-history): Depend on them, to avoid similar future problems.
27923         Escape the local-variables string to pacify Emacs when editing
27924         Makefile.in.
27926 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
27928         * test/automated/package-test.el (with-package-test):
27929         Kill Packages buffer.
27931         * lisp/emacs-lisp/package.el: Improve transaction y-or-n prompt.
27932         (package-menu--prompt-transaction-p): Prompt for "Delete" first,
27933         "Upgrade" last, and use capitalized instead of all-caps.
27935         * lisp/emacs-lisp/package.el: Completely silence async operations.
27936         (package--make-autoloads-and-stuff): Silence autoloads.
27937         (package--save-selected-packages): New function, silences
27938         `customize-save-variable'.
27939         (package--user-selected-p, package-install-from-buffer)
27940         (package-delete, package-install): Use it.
27941         (package-install-from-archive)
27942         (package-menu--perform-transaction): Silence.
27943         (package-menu-execute): Feedback when operation starts.
27945         Use delay-mode-hooks when visiting the init-file
27946         * lisp/emacs-lisp/package.el (package--ensure-init-file):
27947         delay-mode-hooks.
27948         * lisp/cus-edit.el (custom-save-all): delay-mode-hooks.
27950         * lisp/files.el: Only message when saving if save-silently is nil.
27951         (save-silently): New variable.
27952         (files--message): New function.
27953         (find-file-noselect, save-buffer, basic-save-buffer)
27954         (basic-save-buffer-2, save-some-buffers, not-modified)
27955         (append-to-file): Use them.
27957 2015-04-12  Johan Bockgård  <bojohan@gnu.org>
27959         Support debug declarations in pcase macros
27960         * lisp/emacs-lisp/pcase.el (pcase-MACRO): New edebug spec.
27961         (pcase-UPAT): Use it.  Remove "`".
27962         (pcase--edebug-match-macro): New function.
27963         (pcase-defmacro): Support debug declarations.
27964         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
27965         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>:
27966         * lisp/emacs-lisp/pcase.el (\`): <pcase-defmacro>:
27967         Add debug declaration.
27969         pcase.el: Edebug support for `app' and vector patterns
27970         * lisp/emacs-lisp/pcase.el (pcase-FUN): New edebug spec.
27971         (pcase-UPAT): Use it.  Support `app' patterns.
27972         (pcase-QPAT): Support vector patterns.
27974         edebug.el: Disambiguate vector specifications
27975         * lisp/emacs-lisp/edebug.el (edebug-match-list): Always treat
27976         `(vector ...)' as a vector specification, not as a sublist.
27978         (gnus-summary-refer-thread): Don't clobber unread articles
27979         This fixes a bug where `A T' causes "random" articles to become marked
27980         as read.
27981         * lisp/gnus/gnus-sum.el (gnus-summary-refer-thread): Make sure
27982         gnus-newsgroup-unreads remains sorted.
27984         mouse-sel.el: Fix mouse-sel-get-selection-function
27985         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
27986         Use gui--last-selected-text-primary instead of no longer existing
27987         gui-last-selected-text.
27989         * lisp/rect.el (delete-whitespace-rectangle-line): Don't cross EOL.
27991         * lisp/net/nsm.el (nsm-query-user): Use cursor-in-echo-area.
27993 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
27995         * lisp/emacs-lisp/package.el (list-packages): Avoid redundant generate.
27997         * lisp/emacs-lisp/package.el (list-packages): Call refresh in
27998         right buffer.
28000         * lisp/emacs-lisp/bytecomp.el: Silence noninteractive compilations.
28001         (byte-compile--interactive): New var.
28002         (byte-compile--message): New function.
28003         (byte-compile-log-1, byte-force-recompile)
28004         (byte-recompile-directory, byte-recompile-file)
28005         (byte-compile-file, compile-defun)
28006         (byte-compile-file-form-defmumble, byte-compile)
28007         (byte-compile-file-form-defalias, display-call-tree): Use it.
28009         * lisp/files.el: Don't message when nothing happened.
28010         (save-some-buffers, basic-save-buffer): Before messaging to say
28011         "nothing was saved" check if (called-interactively-p 'any).
28013 2015-04-12  João Távora  <joaotavora@gmail.com>
28015         Summary: Improve sexp-based movement in message-mode
28016         Works by giving citations and smileys a different syntax.  This helps
28017         modes like `show-paren-mode', `electric-pair-mode', and C-M-*
28018         sexp-based movement.
28019         * lisp/gnus/message.el (message--syntax-propertize): New function.
28020         (message-mode): Set syntax-related vars.
28021         (message-smileys): New variable.
28022         * test/automated/message-mode-tests.el: New file
28024 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
28026         Use bool for boolean in window.c
28027         * src/window.c: Omit unnecessary static function decls.
28028         (adjust_window_count, select_window, Fselect_window)
28029         (window_body_width, Fwindow_body_height, Fwindow_body_width)
28030         (set_window_hscroll, check_window_containing, Fwindow_at)
28031         (Fwindow_end, Fset_window_start, Fpos_visible_in_window_p)
28032         (unshow_buffer, replace_window, recombine_windows)
28033         (add_window_to_list, candidate_window_p, next_window)
28034         (Fnext_window, Fprevious_window, window_loop, check_all_windows)
28035         (Fget_buffer_window, Fdelete_other_windows_internal)
28036         (replace_buffer_in_windows_safely, set_window_buffer)
28037         (Fset_window_buffer, Fforce_window_update)
28038         (temp_output_buffer_show, make_parent_window)
28039         (window_resize_check, window_resize_apply, Fwindow_resize_apply)
28040         (resize_frame_windows, Fsplit_window_internal)
28041         (Fdelete_window_internal, grow_mini_window, shrink_mini_window)
28042         (Fresize_mini_window_internal, mark_window_cursors_off)
28043         (window_scroll, window_scroll_pixel_based)
28044         (window_scroll_line_based, scroll_command, Fscroll_other_window)
28045         (Fscroll_left, Fscroll_right, displayed_window_lines, Frecenter)
28046         (Fmove_to_window_line, Fset_window_configuration)
28047         (delete_all_child_windows, apply_window_adjustment)
28048         (set_window_fringes, set_window_scroll_bars)
28049         (Fset_window_vscroll, foreach_window, foreach_window_1)
28050         (compare_window_configurations, Fcompare_window_configurations):
28051         Prefer 'bool', 'true', and 'false' for booleans.
28052         * src/window.h (WINDOW_MODE_LINE_LINES)
28053         (WINDOW_HEADER_LINE_LINES): Omit unnecessary "!!" on bool value.
28055 2015-04-11  Artur Malabarba  <bruce.connor.am@gmail.com>
28057         Speed up byte-compilation and autoload generation by avoiding mode-hooks
28058         This prevents emacs-lisp-mode-hook from being run everytime an
28059         autoload file is generated, which can account for a fraction of
28060         package installation time depending on the hooks the user has
28061         configured.
28062         * lisp/emacs-lisp/bytecomp.el (byte-compile-file): Use delay-mode-hooks.
28063         * lisp/emacs-lisp/autoload.el (autoload-find-file)
28064         (autoload-find-generated-file): Use delay-mode-hooks.
28066         * lisp/emacs-lisp/package.el: Improve `package-menu-refresh'.
28067         (package-menu-refresh): Respect async and do new package checking.
28068         (list-packages): Use `package-menu-refresh' instead of repeating code.
28070         * lisp/emacs-lisp/package.el: Improve package-menu-quick-help.
28071         (package--quick-help-keys): New variable.
28072         (package--prettify-quick-help-key): New function.
28073         (package-menu-quick-help): Use it.
28075         * lisp/emacs-lisp/package.el: Fix initially wrong compat table.
28076         (package--build-compatibility-table): Require finder.
28078         * test/automated/package-test.el: Fix new test.
28080         * lisp/emacs-lisp/package.el: Silence async operations.
28081         (package--silence): New variable.
28082         (package--message): New function.
28083         (package-import-keyring, package-refresh-contents)
28084         (package-compute-transaction, package-install, package-delete)
28085         (package-menu--perform-transaction, package-menu-execute): Use it.
28087         * test/automated/package-test.el: Test async functionality.
28088         (package-test-update-archives-async): New test.
28090 2015-04-11  Daiki Ueno  <ueno@gnu.org>
28092         Utilize `make-process' in epg.el
28093         * lisp/epg.el (epg-error-output): Abolish.
28094         (epg-context): New slot `error-buffer'.
28095         (epg--start): Use `make-process' and `make-pipe-process'.
28096         (epg--process-filter): Remove code separating stderr from stdout.
28097         (epg-wait-for-completion): Simplify `error-output' handling.
28098         (epg-reset): Dispose error buffer.
28100 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
28102         * .gitignore: Ignore doc temps and outputs.
28104         Port commit-msg to MSYS Bash+Gawk
28105         See Eli Zaretskii in:
28106         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00610.html
28107         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format)
28108         (cent_sign, print_at_sign, at_sign): Revert previous change.
28109         (print_at_sign): Prepend "BEGIN".
28110         (at_sign): Redirect from /dev/null to be safer with pre-POSIX awk.
28112         Port commit-msg to broken MS-Windows shell
28113         * build-aux/git-hooks/commit-msg (cent_sign):
28114         Just use UTF-8 here rather than ASCII + printf, as the latter fails
28115         on a broken MS-Windows shell.  Reported by Eli Zaretskii in:
28116         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00592.html
28118 2015-04-11  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
28120         Support GnuTLS v3.4 and later on MS-Windows
28121         * src/gnutls.c (syms_of_gnutls) <libgnutls-version>: New DEFSYM.
28122         * lisp/term/w32-win.el (dynamic-library-alist): Determine which
28123         GnuTLS DLL to load according to value of libgnutls-version.
28124         (Bug#20294)
28126 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
28128         Minor quoting etc. fixes to misc manuals
28129         Fix some minor quoting and spacing issues.  Distinguish more
28130         clearly among grave accent and apostrophe (which are ASCII) and
28131         single quote (which is not).  Prefer the standard terms
28132         "apostrophe" and "grave accent" to alternative names that can be
28133         confusing.  Use apostrophes to single-quote ASCII text.
28134         * doc/misc/remember.texi: Spell the mystic's pseudonym in UTF-8
28135         rather than approximating it in ASCII with grave accent.
28137 2015-04-11  Daiki Ueno  <ueno@gnu.org>
28139         Respect more keyword args in `make-process'
28140         * src/process.c (Fmake_process): Respect `:sentinel' and `:filter'
28141         keywords as documented.
28143 2015-04-10  Dmitry Gutov  <dgutov@yandex.ru>
28145         Extract ChangeLog entries when committing a directory
28146         * lisp/vc/vc-dispatcher.el (vc-log-edit): Update FIXME comment.
28147         * lisp/vc/log-edit.el (log-edit-changelog-insert-entries):
28148         Add a FIXME comment.
28149         (log-edit-changelog-entries): Extract from
28150         `log-edit-changelog-entries', handle FILE being a directory
28151         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00555.html).
28153 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
28155         Fix problems found by --enable-gcc-warnings
28156         * src/process.c (create_process, Fmake_pipe_process)
28157         (Fmake_network_process): Omit unused locals.
28159         Fix commit-msg to handle scissors lines
28160         * build-aux/git-hooks/commit-msg:
28161         Ignore every line after a scissors line, such as a line generated
28162         by 'git commit -v'.  Problem reported by Johan Bockgård in:
28163         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00580.html
28165         port commit-msg to Gawk 3.0.4 (1999)
28166         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format, cent_sign)
28167         (print_at_sign, at_sign): New vars.  Use them to avoid problems
28168         Eli Zaretskii encountered with Gawk 3.0.4 (1999) on MSYS.  See:
28169         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
28171         Have commit-msg report commit failure
28172         * build-aux/git-hooks/commit-msg: If the commit is aborted,
28173         say so.  Simplify by doing this at the end.  Problem reported
28174         by Eli Zaretskii in:
28175         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
28177 2015-04-10  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
28179         Clean up LDAP Configuration section of EUDC manual
28180         * doc/misc/eudc.texi: Combine indices.
28181         (LDAP Configuration): Use command markup.  Add index entries.
28182         Change formatting.  Wrap long lines.  Add noindent markup.
28184 2015-04-10  Daiki Ueno  <ueno@gnu.org>
28186         Add facility to collect stderr of async subprocess
28187         * src/w32.h (register_aux_fd): New function declaration.
28188         * src/w32.c (register_aux_fd): New function.
28189         * src/process.h (struct Lisp_Process): New member stderrproc.
28190         * src/process.c (PIPECONN_P): New macro.
28191         (PIPECONN1_P): New macro.
28192         (Fdelete_process, Fprocess_status, Fset_process_buffer)
28193         (Fset_process_filter, Fset_process_sentinel, Fstop_process)
28194         (Fcontinue_process): Handle pipe process specially.
28195         (create_process): Respect p->stderrproc.
28196         (Fmake_pipe_process): New function.
28197         (Fmake_process): Add new keyword argument :stderr.
28198         (wait_reading_process_output): Specially handle a pipe process when
28199         it gets an EOF.
28200         (syms_of_process): Register Qpipe and Smake_pipe_process.
28201         * doc/lispref/processes.texi (Asynchronous Processes): Document
28202         `make-pipe-process' and `:stderr' keyword of `make-process'.
28203         * lisp/subr.el (start-process): Suggest to use `make-process' handle
28204         standard error separately.
28205         * test/automated/process-tests.el (process-test-stderr-buffer)
28206         (process-test-stderr-filter): New tests.
28207         * etc/NEWS: Mention new process type `pipe' and its usage with the
28208         `:stderr' keyword of `make-process'.
28210 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
28212         Minor quoting etc. fixes to lispref manual
28213         * doc/lispref/tips.texi (Documentation Tips):
28214         Distinguish more clearly among grave accent, apostrophe,
28215         and single quote.
28216         * doc/lispref/README, doc/lispref/buffers.texi:
28217         * doc/lispref/commands.texi, doc/lispref/control.texi:
28218         * doc/lispref/customize.texi, doc/lispref/display.texi:
28219         * doc/lispref/elisp.texi, doc/lispref/files.texi:
28220         * doc/lispref/frames.texi, doc/lispref/hash.texi:
28221         * doc/lispref/help.texi, doc/lispref/internals.texi:
28222         * doc/lispref/loading.texi, doc/lispref/makefile.w32-in:
28223         * doc/lispref/markers.texi, doc/lispref/modes.texi:
28224         * doc/lispref/nonascii.texi, doc/lispref/objects.texi:
28225         * doc/lispref/os.texi, doc/lispref/positions.texi:
28226         * doc/lispref/strings.texi, doc/lispref/syntax.texi:
28227         * doc/lispref/text.texi, doc/lispref/tips.texi:
28228         * doc/lispref/two-volume-cross-refs.txt, doc/lispref/windows.texi:
28229         Use American-style double quoting in ordinary text,
28230         and quote 'like this' when single-quoting in ASCII text.
28231         Also, fix some minor spacing issues.
28233 2015-04-10  Michael Albinus  <michael.albinus@gmx.de>
28235         Handle symlinked test directory in tramp-tests.el
28236         * test/automated/tramp-tests.el (tramp-test18-file-attributes)
28237         (tramp--test-check-files): Use `file-truename' for directories.
28239 2015-04-10  Eli Zaretskii  <eliz@gnu.org>
28241         Fix 'recenter' when visual-line-mode is turned on
28242         * src/window.c (Frecenter): Use the same code for GUI and TTY
28243         frames alike; use vmotion only for "initial" frames.  This is
28244         because vmotion doesn't support visual-line-mode.  Rewrite the
28245         'iarg >= 0' case to use move_it_* functions instead of using
28246         vmotion, for the same reason.  Fix the clipping of the argument
28247         value to support scroll-margin in all cases and avoid unwarranted
28248         recentering.  Reported by Milan Stanojević <milanst@gmail.com> in
28249         http://lists.gnu.org/archive/html/help-gnu-emacs/2015-04/msg00092.html,
28250         which see.
28252 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
28254         * lisp/abbrev.el (define-abbrev-table): Refine last change.
28256         * lisp/emacs-lisp/cl-lib.el: Partial revert of "2015-04-05 Rationalize
28257         use of c[ad]+r", so as to keep the "cl-" prefix on all
28258         cl-lib definitions.
28260         * lisp/progmodes/vhdl-mode.el (vhdl-prepare-search-2):
28261         Use inhibit-point-motion-hooks.
28263         * lisp/cedet/semantic: Remove some dead code.
28264         * lisp/cedet/semantic/util-modes.el
28265         (semantic-stickyfunc-header-line-format): Emacs<22 is not supported
28266         any more.
28267         * lisp/cedet/semantic/fw.el (semantic-buffer-local-value): Emacs<21 is
28268         not supported any more.
28269         (semantic-safe): Use `declare'.
28270         * lisp/cedet/semantic/decorate.el (semantic-set-tag-intangible)
28271         (semantic-tag-intangible-p): Remove unused functions.
28272         * lisp/cedet/semantic/complete.el (semantic-displayor-window-edges):
28273         Remove unused function.
28275         * lisp/gnus/gnus-art.el (gnus-hidden-properties): Simplify.
28276         (gnus-article-hide-text, gnus-article-unhide-text)
28277         (gnus-article-unhide-text-type): Remove special handling of
28278         `intangible' since that property is not used any more.
28279         (gnus-article-treat-body-boundary): Use gnus-hidden-properties.
28281 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
28283         Use the VC root in `log-edit-listfun'
28284         * lisp/vc/vc-dispatcher.el (vc-log-edit): Use the VC root in
28285         `log-edit-listfun'.
28287 2015-04-09  Jay Belanger  <jay.p.belanger@gmail.com>
28289         Fix description of Unix time, mention new function.
28290         * lisp/calc/calc-forms.el (calcFunc-unixtime): Fix adjustment for
28291         Unix time.
28292         * doc/misc/calc.texi (Date Forms): Fix description of Unix time.
28293         (Basic Operations on Units): Mention `calc-convert-exact-units'.
28295 2015-04-09  Artur Malabarba  <bruce.connor.am@gmail.com>
28297         * lisp/emacs-lisp/package.el: Use mode-line-process for notification.
28299 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
28301         * lisp/vc/log-edit.el (log-edit-insert-changelog-entries):
28302         Don't add newline after the last entry.
28304 2015-04-09  Simen Heggestøyl  <simenheg@gmail.com>
28306         css-mode.el: Add "not" pseudo-class
28307         (Bug#20267)
28308         * lisp/textmodes/css-mode.el (css-pseudo-class-ids): Add "not" to
28309         list of CSS pseudo-classes.
28311 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
28313         * etc/NEWS: Add missing entry for "Stop messing with the EMACS env var".
28315 2015-04-09  Michael Albinus  <michael.albinus@gmx.de>
28317         Stop messing with the EMACS env var
28318         * doc/emacs/misc.texi (Interactive Shell): Remove description of
28319         EMACS env var.
28321 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
28323         Adapt 'make change-history' to coding cookie
28324         * Makefile.in (change-history): Adjust to change of format of
28325         ChangeLog file, which now has a coding cookie before an indented
28326         copyright notice.
28328 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
28330         Adapt 'make change-history' to coding cookie
28331         * Makefile.in (change-history): Adjust to change of format of
28332         ChangeLog file, which now has a coding cookie before an indented
28333         copyright notice.
28335         gitlog-to-changelog coding cookie and mv -i
28336         * build-aux/gitlog-to-emacslog: Use ChangeLog.1, not Makefile.in,
28337         for copyright notice prototype, so that we get a proper "coding:"
28338         cookie.  Use 'mv -i' to avoid unconditionally overwriting an
28339         existing ChangeLog.  Problems reported by Eli Zaretskii in:
28340         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00504.html
28342         Merge from gnulib
28343         * build-aux/gitlog-to-changelog: Update from gnulib, incorporating:
28344         2015-04-09 gitlog-to-changelog: port to MS-Windows
28346 2015-04-09  Boruch Baum  <boruch_baum@gmx.com>  (tiny change)
28348         * lisp/bookmark.el (bookmark-bmenu-goto-bookmark): Don't inf-loop.
28349         (Bug#20212)
28351 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
28353         Stop messing with the EMACS env var
28354         (Bug#20202)
28355         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
28356         * lisp/comint.el (comint-exec-1):
28357         * lisp/term.el (term-exec-1): Don't set EMACS envvar.
28358         * lisp/progmodes/compile.el (compilation-start): Same and bring
28359         INSIDE_EMACS's format in line with other users.
28361         css-mode.el (css-smie-rules): Fix indentation after complex selectors
28362         (Bug#20282)
28363         * lisp/textmodes/css-mode.el (css-smie-rules): Don't get confused by
28364         inner structure of selectors.
28366 2015-04-08  Fabián Ezequiel Gallina  <fgallina@gnu.org>
28368         python.el: Indent docstring lines to base-indent
28369         (Bug#19595)
28370         Thanks to immerrr <immerrr@gmail.com> for reporting and providing
28371         an initial patch.
28372         * lisp/progmodes/python.el
28373         (python-indent-context): Add :inside-docstring context.
28374         (python-indent--calculate-indentation): Handle :inside-docstring.
28375         (python-indent-region): Re-indent docstrings.
28376         * test/automated/python-tests.el (python-indent-region-5)
28377         (python-indent-inside-string-2): Fix tests.
28379         python.el: Increase native completion robustness
28380         (Bug#19755)
28381         Thanks to Carlos Pita <carlosjosepita@gmail.com> for reporting
28382         this and providing useful ideas.
28383         * lisp/progmodes/python.el
28384         (python-shell-completion-native-output-timeout): Increase value.
28385         (python-shell-completion-native-try-output-timeout): New var.
28386         (python-shell-completion-native-try): Use it.
28387         (python-shell-completion-native-setup): New readline setup avoids
28388         polluting current context, ensures output when no-completions are
28389         available and includes output end marker.
28390         (python-shell-completion-native-get-completions): Trigger with one
28391         tab only.  Call accept-process-output until output end is found or
28392         python-shell-completion-native-output-timeout is exceeded.
28394 2015-04-08  Samer Masterson  <samer@samertm.com>
28396         * lisp/eshell: Make backslash a no-op in front of normal chars
28397         (Bug#8531)
28398         * lisp/eshell/esh-arg.el (eshell-parse-argument-hook): Update comment.
28399         (eshell-parse-backslash): Return escaped character after backslash
28400         if it is special.  Otherwise, if the backslash is not in a quoted
28401         string, ignore the backslash and return the character after; if
28402         the backslash is in a quoted string, return the backslash and the
28403         character after.
28404         * test/automated/eshell.el (eshell-test/escape-nonspecial)
28405         (eshell-test/escape-nonspecial-unicode)
28406         (eshell-test/escape-nonspecial-quoted)
28407         (eshell-test/escape-special-quoted): Add tests for new
28408         `eshell-parse-backslash' behavior.
28410 2015-04-08  Gustav Hållberg  <gustav@gmail.com>  (tiny change)
28412         * lisp/vc/diff-mode.el (diff-hunk-file-names): Don't require a TAB
28413         after the file name.
28414         (Bug#20276)
28416 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
28418         Minor quoting etc. fixes to Emacs manual
28419         * doc/emacs/Makefile.in, doc/emacs/ack.texi, doc/emacs/building.texi:
28420         * doc/emacs/calendar.texi, doc/emacs/cmdargs.texi:
28421         * doc/emacs/custom.texi, doc/emacs/dired.texi, doc/emacs/emacs.texi:
28422         * doc/emacs/files.texi, doc/emacs/glossary.texi, doc/emacs/gnu.texi:
28423         * doc/emacs/indent.texi, doc/emacs/macos.texi:
28424         * doc/emacs/maintaining.texi, doc/emacs/makefile.w32-in:
28425         * doc/emacs/programs.texi, doc/emacs/rmail.texi:
28426         * doc/emacs/search.texi, doc/emacs/trouble.texi:
28427         * doc/emacs/vc1-xtra.texi:
28428         Use American-style double quoting in ordinary text,
28429         and quote 'like this' when single-quoting in ASCII text.
28430         Also, fix some minor spacing issues.
28432         Minor quoting etc. fixes to elisp intro
28433         * doc/lispintro/emacs-lisp-intro.texi: Consistently use
28434         American-style double quoting in ordinary text.  In ASCII text,
28435         consistently quote 'like this' instead of `like this', unless
28436         Emacs requires the latter.
28438 2015-04-08  Dmitry Gutov  <dgutov@yandex.ru>
28440         * CONTRIBUTE: Mention log-edit-insert-changelog.
28442         * CONTRIBUTE: Emphasize creating the top-level ChangeLog file manually.
28444 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
28446         * doc/misc/calc.texi (Summary): Avoid '@:' when usurped.
28448 2015-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
28450         * lisp/emacs-lisp/eieio-core.el (eieio-copy-parents-into-subclass):
28451         Fix inheritance of initargs.  (Bug#20270)
28453 2015-04-08  Artur Malabarba  <bruce.connor.am@gmail.com>
28455         * lisp/emacs-lisp/package.el (package-menu-mode): Mode-line notification
28456         while dowloading information.
28458         * lisp/emacs-lisp/package.el: More conservative `ensure-init-file'
28459         (package--ensure-init-file): Check file contents before visiting.
28460         (package-initialize): Call it.
28461         (package-install-from-buffer, package-install): Don't call it.
28463 2015-04-08  Eli Zaretskii  <eliz@gnu.org>
28465         * src/eval.c (init_eval_once): Bump max_lisp_eval_depth to 800.
28466         (Bug#17517)
28468 2015-04-08  Michael Albinus  <michael.albinus@gmx.de>
28470         * lisp/net/tramp-cache.el (tramp-flush-file-property):
28471         Fix nasty scoping bug.
28473 2015-04-08  Tassilo Horn  <tsdh@gnu.org>
28475         Add notice to visual commands section
28476         * doc/misc/eshell.texi (Input/Output): Add notice that some tools
28477         such as git call less with its -F option which omits pagination if
28478         the contents is less than one page long.  This interferes with
28479         eshell's visual (sub-)commands.
28481 2015-04-07  Dmitry Gutov  <dgutov@yandex.ru>
28483         * lisp/ffap.el (ffap-string-at-point-mode-alist): Support
28484         environment variable expansion in file names.  (Bug#19839)
28486 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
28488         Prefer double-quote to accent-grave in man pages
28490 2015-04-07  Stefan Monnier  <monnier@iro.umontreal.ca>
28492         (Bug#20257)
28493         * lisp/files.el (set-visited-file-name): Clear auto-save if nil.
28495 2015-04-07  Ivan Shmakov  <ivan@siamics.net>
28497         Update etc/PROBLEMS.
28498         * etc/PROBLEMS: Mention visible-cursor; a few more mentions of
28499         ~/.Xresources and xrdb(1); refer to 'GNU Coreutils' and
28500         'X Window System' or 'X' (were: 'GNU Fileutils' and 'X Windows',
28501         respectively); other minor updates and tweaks.  (Bug#20011)
28503 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
28505         Add doc strings for some Isearch state vars
28506         * lisp/misearch.el (multi-isearch-buffer-list)
28507         (multi-isearch-file-list): Add doc strings.
28508         (Bug#20232)
28510 2015-04-07  Alan Mackenzie  <acm@muc.de>
28512         Always mark "<" and ">" in #include directives with text properties.
28513         * lisp/progmodes/cc-fonts.el (c-cpp-matchers): Replace a font-lock
28514         "anchored matcher" with an invocation of
28515         c-make-font-lock-search-function to allow fontification when there's
28516         no trailing space on an "#include <..>" line.
28518 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
28520         Generate a ChangeLog file from commit logs
28521         * .gitignore: Add 'ChangeLog'.
28522         * build-aux/gitlog-to-changelog: New file, from Gnulib.
28523         * build-aux/gitlog-to-emacslog: New file.
28524         * CONTRIBUTE: Document the revised workflow.
28525         * Makefile.in (clean): Remove *.tmp and etc/*.tmp*
28526         instead of just special cases.
28527         (CHANGELOG_HISTORY_INDEX_MAX, CHANGELOG_N, gen_origin): New vars.
28528         (ChangeLog, unchanged-history-files, change-history)
28529         (change-history-commit): New rules.
28530         * admin/admin.el (make-manuals-dist--1):
28531         Don't worry about doc/ChangeLog.
28532         * admin/authors.el: Add a FIXME.
28533         * admin/make-tarball.txt:
28534         * lisp/calendar/icalendar.el:
28535         * lisp/gnus/deuglify.el:
28536         * lisp/obsolete/gulp.el:
28537         * lwlib/README:
28538         Adjust to renamed ChangeLog history files.
28539         * admin/merge-gnulib (GNULIB_MODULES): Add gitlog-to-changelog.
28540         * admin/notes/repo: Call it 'master' a la Git, not 'trunk' a la Bzr.
28541         Remove obsolete discussion of merging ChangeLog files.
28542         New section "Maintaining ChangeLog history".
28543         * build-aux/git-hooks/pre-commit:
28544         Reject attempts to commit files named 'ChangeLog'.
28545         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
28546         * make-dist: Make and distribute top-level ChangeLog if there's a
28547         .git directory.  Distribute the new ChangeLog history files
28548         instead of scattered ChangeLog files.  Distribute the new files
28549         gitlog-to-changelog and gitlog-to-emacslog.
28550         (Bug#19113)
28552         Rename ChangeLogs for gitlog-to-changelog
28553         This patch was implemented via the following shell commands:
28554         find * -name ChangeLog |
28555         sed 's,.*,git mv & &.1,
28556         s, lisp/ChangeLog\.1$, lisp/ChangeLog.17,
28557         s, lisp/erc/ChangeLog\.1$, lisp/erc/ChangeLog.09,
28558         s, lisp/gnus/ChangeLog\.1$, lisp/gnus/ChangeLog.3,
28559         s, lisp/mh-e/ChangeLog\.1$, lisp/mh-e/ChangeLog.2,
28560         s, src/ChangeLog\.1$, src/ChangeLog.13,' |
28561         sh
28562         git commit -am"[this commit message]"
28564 This file records repository revisions from
28565 commit 9d56a21e6a696ad19ac65c4b405aeca44785884a (exclusive) to
28566 2016-02-04b6d89ff9288a49099f041752908b5eb9613e (inclusive).
28567 commit ffbf163ab5ced1bc464a0034e6abc9a41f5e09c4 (inclusive).
28568 See ChangeLog.1 for earlier changes.
28570 ;; Local Variables:
28571 ;; coding: utf-8
28572 ;; End:
28574   Copyright (C) 2015-2016 Free Software Foundation, Inc.
28576   This file is part of GNU Emacs.
28578   GNU Emacs is free software: you can redistribute it and/or modify
28579   it under the terms of the GNU General Public License as published by
28580   the Free Software Foundation, either version 3 of the License, or
28581   (at your option) any later version.
28583   GNU Emacs is distributed in the hope that it will be useful,
28584   but WITHOUT ANY WARRANTY; without even the implied warranty of
28585   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
28586   GNU General Public License for more details.
28588   You should have received a copy of the GNU General Public License
28589   along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.