Make icomplete respect `completion-ignored-extensions'
[emacs.git] / ChangeLog.2
blob04ecc82901e8673bbdcd2ddeeb11a49d029c3e16
1 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
3         Fix Bug#22859
5         * lisp/filenotify.el (file-notify-callback): Return a `deleted'
6         event in case of kqueue and file1 is nil.  (Bug#22859)
8 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
10         Fix reordering of bidi text in an isolate inside an override
12         * src/bidi.c (bidi_resolve_explicit): Override the orig_type value
13         of FSI with either LRI or RLI, as determined by the first strong
14         directional character in the isolate.  This prevents failure to
15         isolate when the FSI...PDI text is inside a directional override.
16         (Bug#22786)
18 2016-03-04  Alan Mackenzie  <acm@muc.de>
20         Document c-guess-basic-syntax in the CC Mode manual.
22         * doc/misc/cc-mode.texi (Syntactic Analysis): Document the function, adding
23         pxrefs to Custom Line-Up and Other Indentation.
24         (Custom Line-Up): Add a note on using c-guess-basic-syntax with a pxref to
25         Syntactic Analysis.
27 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
29         Fix targets in test/automated/Makefile.in
31         * test/automated/Makefile.in: Use $(SELECTOR_DEFAULT) also for
32         empty target and target all.
34 2016-03-04  Leo Liu  <sdl.web@gmail.com>
36         Comment on last change to define-derived-mode
38         * lisp/emacs-lisp/derived.el (define-derived-mode): Add comment.
40 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
42         Allow binding `url-mime-accept-string'
44         * lisp/url/url-http.el (url-http): Allow binding
45         `url-mime-accept-string' (bug#22855).
47         Backport:
49         (cherry picked from commit 144bb0cf322b9756d29def3e27a42303e2edce43)
51 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
53         Also allow setting the paragraph direction to nil
55         * lisp/net/eww.el (eww-toggle-paragraph-direction): Also allow
56         setting the paragraph direction to nil ("auto").
58 2016-03-04  Anders Lindgren  <andlind@gmail.com>
60         Made the new OS X visible bell more visible.
62         * src/nsterm.m: (EmacsBell:init:) Scaled up the visible bell
63           "caution" image five times, as the image in its original size
64           was hard to see.
66 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
68         Use the correct background color when filling nested <divs>
70         * lisp/net/shr.el (shr-face-background): Return the first
71         background, because that's the one that's visible (bug#22680).
73         Backport:
75         (cherry picked from commit cad0bc70558f9c28c808711c5295dec9fc5ad6e5)
77 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
79         Make <div> in <li> not insert extra newlines
81         * lisp/net/shr.el (shr-tag-div): Make <div> in <li> not insert
82         extra newlines (bug#19587).
84         Backport:
86         (cherry picked from commit 379a846b8548dc32a9019ef0a37c02f62cd9bad1)
88 2016-03-04  Dmitry Gutov  <dgutov@yandex.ru>
90         Uncomment the next-error-function integration in xref
92         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
93         Uncomment the next-error-function integration
94         (http://debbugs.gnu.org/cgi/bugreport.cgi?bug=20489#110).
96 2016-03-04  Dmitry Gutov  <dgutov@yandex.ru>
98         Remove the word "valid", to avoid ambiguity
100         * doc/emacs/maintaining.texi (Identifier Search)
101         (Looking Up Identifiers): Remove the word "valid" (bug#22692).
103 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
105         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
107 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
109         Set auto-revert-use-notify to nil in global-auto-revert-mode.  (Bug#22814)
111         * etc/NEWS:
112         * etc/PROBLEMS: Mention this.
114         * lisp/autorevert.el (global-auto-revert-mode): Set
115         `auto-revert-use-notify' to nil.  (Bug#22814)
117 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
119         * etc/TODO: Minor quoting and grammar fixes.
121 2016-03-04  Friedrich Beckmann  <friedrich.beckmann@gmx.de>  (tiny change)
123         Fix ModelSim error parsing
125         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist): Fix
126         ModelSim error parsing (bug#5768).
128 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
130         Make parse-time-string-chars faster
132         * lisp/calendar/parse-time.el (parse-time-string-chars): Clean
133         up the code (backport:).
135 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
137         Add a eww command to toggle paragraph direction
139         * lisp/net/eww.el (eww-toggle-paragraph-direction): New
140         command and keystroke.
142         * doc/misc/eww.texi (Advanced): Mention the `D' command.
144 2016-03-04  Glenn Morris  <rgm@gnu.org>
146         * nextstep/WISHLIST: Merge into etc/TODO and remove.
148         * etc/TODO: Merge in items from nextstep/WISHLIST.
149         * nextstep/README: Update for this change.
151 2016-03-04  Andreas Schwab  <schwab@linux-m68k.org>
153         Fix char signedness issue in bidi code
155         * src/dispextern.h (struct bidi_t): Change type of resolved_level
156         and isolate_level to signed char.  (Bug#22830)
158 2016-03-04  Andreas Schwab  <schwab@linux-m68k.org>
160         * lib-src/pop.c (socket_connection): Fix format string.
162 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
164         Avoid inflooping in thing-at-point-looking-at
166         * lisp/thingatpt.el (thing-at-point-looking-at): Avoid inflooping
167         with regular expressions whose matching doesn't move point.
168         (Bug#22756)
169         Describe the argument DISTANCE in the doc string.
171 2016-03-04  Leo Liu  <sdl.web@gmail.com>
173         * lisp/emacs-lisp/derived.el (define-derived-mode): Revert indent change.
175 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
177         etc/PROBLEMS: Mention problems with using file descriptors
179         * etc/PROBLEMS: Mention problems with using file descriptors
180         of kqueue file notification library.
182 2016-03-04  Kaushal Modi  <kaushal.modi@gmail.com>
184         * lisp/apropos.el (apropos-variable): Doc fix.  (Bug#22813).
186 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
188         Remove unneeded workaround in xftfont.c
190         * src/xftfont.c (xftfont_open): Remove "dirty workaround" for
191         XftTextExtents8 behavior, as it is no longer needed.  Suggested by
192         Fangwen Yu <yynyygy@gmail.com>.  (Bug#22383)
194 2016-03-04  Stefan Monnier  <monnier@iro.umontreal.ca>
196         * lisp/saveplace.el (save-place-local-mode): New minor mode
198         (toggle-save-place): Define as obsolete alias.
199         (save-place--setup-hooks): New function.
200         (save-place-mode): Use it.
202 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
204         Fix redisplay on a TTY after 'make-frame'
206         * src/xdisp.c (clear_garbaged_frames): Don't clear/redraw a
207         garbaged TTY frame if it is not the selected frame.  (Bug#22794)
209 2016-03-04  Alan Mackenzie  <acm@muc.de>
211         Make double-click-1 work with unbalanced parens in CC Mode.  Fixes bug#5560.
213         * lisp/mouse.el (mouse-start-end): check the syntax of alleged parens with
214         `syntax-after' to ensure syntax-table text properties are respected.
216 2016-03-04  Magnus Henoch  <magnus.henoch@gmail.com>
218         Input method polish-slash should not use keyboard translation
220         * lisp/leim/quail/latin-pre.el ("polish-slash"): Input method
221         polish-slash should not use keyboard translation (bug#19081).
223 2016-03-04  Chris Feng  <chris.w.feng@gmail.com>
225         Fix an assertion
227         * src/dispnew.c (clear_glyph_matrix_rows): Test matrix->nrows == 0 (which
228         implies start == 0) separately.
230 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
232         Fix 'toggle-save-place'
234         * lisp/saveplace.el (toggle-save-place): Set up hooks necessary to
235         support save-place in the buffer.  Autoload the command.
237 2016-03-04  Stefan Monnier  <monnier@iro.umontreal.ca>
239         * src/keyboard.c: Don't inadvertently set immediate_echo (bug#22581)
241         * src/keyboard.c (read_key_sequence): Don't inadvertently set
242         immediate_echo when we don't want any echo-keystrokes.
243         (echo_keystrokes_p): Move earlier.
245 2016-03-04  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
247         Minor fixes in calculator.el
249         * lisp/calculator.el (calculator-mode-map): Bind `E' for
250         `calculator-exp'.
251         (calculator-last-input): Fix a bug with pressing F1.
252         (Bug#20764)
254 2016-03-04  Anders Lindgren  <andlind@gmail.com>
256         Update HISTORY section in readme for the NextStep interface.
258         * nextstep/README: Update HISTORY after suggestion
259         from former maintainer Adrian Robert.
261 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
263         Improve documentation of 'save-place-mode'
265         * lisp/saveplace.el (toggle-save-place): Update the doc string wrt
266         turning on 'save-place-mode' globally.
268         * etc/NEWS: Mention the need to call 'save-place-mode' for turning
269         on the mode in all buffers.
271 2016-03-04  Chris Feng  <chris.w.feng@gmail.com>  (tiny change)
273         Allocate glyph matrices for the initial frame
275         * src/frame.c (make_initial_frame): Allocate glyph matrices (Bug#22787).
277         * src/dispnew.c (clear_glyph_matrix_rows): matrix->nrows can be 0.
279 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
281         Fix white space in last checkin
283 2016-03-04  Dima Kogan  <gnuplot@dima.secretsauce.net>
285         Make `insert-pair' always leave the cursor where documented
287         * lisp/emacs-lisp/lisp.el (insert-pair): The docstring of
288         insert-pair states that after insertion, the point ends up
289         after the opening character. This was not true if the pair was
290         inserted to surround a region (bug#16949).
292 2016-03-04  Kaushal Modi  <kaushal.modi@gmail.com>
294         etc/NEWS: Mention the new second parameter to `package-install'
296         * etc/NEWS: Mention the new second parameter to
297         `package-install' (bug#22784).
299 2016-03-04  John F. Trudeau  <JFTrudeau@aetna.com>  (tiny change)
301         Highlight assignments in Makefiles more correctly
303         * lisp/progmodes/make-mode.el (makefile-macroassign-regex):
304         Highlight assignments preceded by a TAB character correctly
305         (bug#20787).
308         Backport:
310         (cherry picked from commit bbd86c5642bd62c43d72391669f28eaa14459fd5)
312 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
314         Improve documentation of focus-related hooks
316         * doc/lispref/commands.texi (Focus Events): Mention focus-related
317         hooks.  (Bug#21728)
319 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
321         Further improve doc string of 'disable-point-adjustment'
323         * src/keyboard.c (syms_of_keyboard): <disable-point-adjustment>
324         <global-disable-point-adjustment>: Clarify doc strings.  (Bug#22771)
326 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
328         Further adaptions in file-notify-tests.el for w32notify
330         * test/automated/file-notify-tests.el
331         (file-notify--test-read-event-timeout, file-notify--test-timeout):
332         Decrease values.
333         (file-notify-test03-autorevert)
334         (file-notify-test04-file-validity)
335         (file-notify-test05-dir-validity): Run tests also for w32notify.
336         (file-notify-test08-watched-file-in-watched-dir):
337         Adapt expected events for w32notify.
339 2016-03-04  Jan Tatarik  <jan.tatarik@gmail.com>
341         Don't bug out on localised dates in gnus-icalendar
343         * lisp/gnus/gnus-icalendar.el
344         (gnus-icalendar-event:org-timestamp): Don't bug out on
345         localised dates.
347 2016-03-04  Drew Adams  <drew.adams@oracle.com>
349         (ls-lisp-insert-directory): Make -B work
351         * lisp/ls-lisp.el (ls-lisp-insert-directory): Make -B work
352         (bug#20776).
354         Backport:
356         (cherry picked from commit ef52e66efd78aac4c4e5bd5e11870e5ba3b37a1e)
358 2016-03-04  Vaidheeswaran C  <vaidheeswaran.chinnaraju@gmail.com>
360         Make buttons in header lines work
362         * lisp/help-mode.el (help-button-action): `help-xref-button' in
363         header line doesn't work (bug#21024).
365         Backport:
367         (cherry picked from commit c11e565a6b6d09fa39d4c3ef65bef08190eaecc1)
369 2016-03-04  Christopher Wellons  <wellons@nullprogram.com>
371         Make setf for frame-height/width work again
373         * lisp/emacs-lisp/cl-lib.el (frame-height): Make setf for
374         frame-height/width work again (bug#21979).
376 2016-03-04  Łukasz Stelmach  <stlman@poczta.fm>
378         Encode header strings before printing
380         * lisp/ps-print.el (ps-generate-header-line): Encode the
381         header strings to avoid problems with non-ASCII headers
382         (bug#22611).
384         Backport:
386         (cherry picked from commit 3cedbdcc71ebefc12bd20ec84f74251fe99ee7d0)
388 2016-03-04  Nicolas Richard  <youngfrog@members.fsf.org>
390         (cl-union): Do not ignore :test argument when lists are equal.
392         * lisp/emacs-lisp/cl-seq.el (cl-union): Do not ignore :test argument when lists are equal.
394         * test/automated/cl-seq-tests.el: New file (bug#22729).
396 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
398         Add `isearch' to `basic-faces'
400         * doc/lispref/display.texi (Basic Faces): Mention the isearch
401         and lazy-highlight faces.
403         * lisp/replace.el (match): Add `isearch' to the `basic-faces'
404         group, too (bug#22760).
406 2016-03-04  Dmitry Gutov  <dgutov@yandex.ru>
408         Make $, : and @ "prefix characters" in ruby-mode
410         * lisp/progmodes/ruby-mode.el (ruby-mode-syntax-table): Change the
411         syntax classes of $, : and @ to "prefix character"
412         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00272.html).
413         (ruby-syntax-propertize): Undo that specifically for colons
414         followed by an opening paren or bracket.
415         (ruby-font-lock-keyword-beg-re): Include colon character.
416         (ruby-font-lock-keywords): Adjust the constants matcher for `:'
417         not being a symbol constituent anymore.
419 2016-03-04  Dmitry Gutov  <dgutov@yandex.ru>
421         Make find-tag-default-bounds more strict
423         * lisp/subr.el (find-tag-default-bounds): Delegate to
424         bounds-of-thing-at-point (bug#22692).
426 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
428         Minor fixes in filenotify.el
430         * lisp/filenotify.el (top): Require 'cl-lib.
431         (file-notify--rm-descriptor)
432         (file-notify--event-watched-file): Use cl-caadr.
433         (file-notify-callback): Handle also `ignore' events from inotify.
435 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
437         Additional fixes for file notification
439         * lisp/filenotify.el (top): Require 'cl when compiling.
440         (file-notify--event-watched-file): New defun.
441         (file-notify--rm-descriptor, file-notify-callback):
442         Handle case of several monitors running in parallel.
444         * test/automated/file-notify-tests.el
445         (file-notify--test-event-test): Simplify test.
446         (file-notify--test-with-events): Get rid of outer definition.
447         Check also results of tests performed in callbacks.
448         (file-notify-test02-events): No wrapping when calling
449         `file-notify-rm-watch'.  No special checking for callback tests.
450         (file-notify-test07-backup): Adapt expected events for gfilenotify.
451         (file-notify-test08-watched-file-in-watched-dir): Improve.
453 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
455         Fix documentation of 'global-disable-point-adjustment'
457         * src/keyboard.c (syms_of_keyboard) <disable-point-adjustment>
458         <global-disable-point-adjustment>: Doc fixes.  (Bug#22771)
460 2016-03-04  Daiki Ueno  <ueno@gnu.org>
462         Set file modes of pinentry socket for extra safety
464         * lisp/net/pinentry.el: Require 'cl-lib for `cl-letf'.
465         (pinentry-start): Change the file modes of the socket file to 0700.
466         This is just for extra safety since the parent directory is already
467         protected with `server-ensure-safe-dir'.
469 2016-03-04  Daiki Ueno  <ueno@gnu.org>
471         Clarify GnuPG version compatibility chapter
473         * doc/misc/epa.texi (GnuPG version compatibility): Make the gpg-agent
474         description a bit clearer.
476 2016-03-04  Daiki Ueno  <ueno@gnu.org>
478         Revert "Change the default socket location for pinentry"
480         This reverts commit e34fbdee8aca84b98393b06b2450837d175999ca.
481         It turned out that the address is fixed in Pinentry itself.
483 2016-03-04  Dmitry Gutov  <dgutov@yandex.ru>
485         Kill off xref--display-history
487         Now that the core workflow keeps the xref window visible, there's
488         less value in storing this history.  And it never was
489         comprehensive enough to undo scrolling changes.
490         * lisp/progmodes/xref.el (xref--display-history)
491         (xref--save-to-history, xref-quit): Remove.
492         (xref--show-pos-in-buf): Update accordingly.
493         (xref--xref-buffer-mode-map): Remove xref-quit binding.
495 2016-03-04  Dmitry Gutov  <dgutov@yandex.ru>
497         Keep the xref buffer visible until the user quits it explicitly
499         * lisp/progmodes/xref.el (xref--pop-to-location):
500         Rename WINDOW argument to ACTION.
501         (xref--with-dedicated-window): New macro.
502         (xref--show-pos-in-buf): Rename from `xref--display-position'.
503         Add and handle new argument, SELECTED.  Use the above macro.
504         (xref--show-location): Add SELECTED argument.
505         (xref-show-location-at-point): Make an effort to avoid the
506         original window when showing the location.
507         (xref-goto-xref): Don't quit the xref window (bug#20487 and
508         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01133.html).
509         (xref--query-replace-1): Use xref--with-dedicated-window as well.
510         (xref--next-error-function): Call xref--show-location instead of
511         xref--pop-to-location.
512         (xref--show-xrefs): Rename WINDOW argument to DISPLAY-ACTION.
513         Only pass that value to xref--pop-to-location.  Pass the current
514         selected window to xref-show-xrefs-function as the `window'
515         property.
516         (xref--find-xrefs, xref--find-definitions): Rename WINDOW argument
517         to DISPLAY-ACTION as well.
519 2016-03-04  Daiki Ueno  <ueno@gnu.org>
521         Change the default socket location for pinentry
523         * lisp/net/pinentry.el: Require 'cl-lib for `cl-letf'.
524         (pinentry--socket-dir): Change the default from /tmp/emacsXXX to
525         ~/.emacs.d/pinentry.
526         (pinentry-start): Change the file modes of the socket file to 0700.
527         This is just for extra safety since the parent directory is already
528         protected with `server-ensure-safe-dir'.
530 2016-03-04  Daiki Ueno  <ueno@gnu.org>
532         Mention how to enable pinentry feature
534         * etc/NEWS: Mention "gpgconf --reload gpg-agent".
535         * lisp/net/pinentry.el: Likewise.
537 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
539         Sync with gnulib
541         This incorporates:
542         2016-02-10 stdalign: port to older HP and IBM cc
543         * doc/misc/texinfo.tex, lib/stdalign.in.h: Copy from gnulib.
545 2016-03-04  David Engster  <deng@randomsample.de>
547         Remove `semanticdb-save-all-db-idle' from `auto-save-hook'
549         * lisp/cedet/semantic/db-mode.el (semanticdb-hooks): Do not put
550           `semanticdb-save-all-db-idle' into `auto-save-hook'. The latter is
551           not an idle hook, so it's not appropriate to call it there. It will
552           already be called in the `semantic-idle-work-core-handler', which
553           runs when Emacs is actually idle.
555 2016-03-04  David Engster  <deng@randomsample.de>
557         Restore point when writing semantic table to disk
559         * lisp/cedet/semantic/db-file.el (object-write): Wrap call to
560           `semantic-fetch-tags' in `save-excursion', since it might move point
561           in current buffer. (Bug #22287)
563 2016-03-04  Daiki Ueno  <ueno@gnu.org>
565         Mention pinentry.el in epa manual
567         * doc/misc/epa.texi (GnuPG version compatibility): New chapter,
568         describing the differences between three GnuPG branches, and how
569         to enable pinentry.el.
570         (Caching Passphrases): Add xref to the compatibility chapter.
572 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
574         Fix Bug#22736
576         * lisp/filenotify.el (file-notify-callback): Use the proper
577         descriptor when calling the callback.  (Bug#22736)
579         * test/automated/file-notify-tests.el
580         (file-notify--test-event-handler): Deactivate trace.
581         (file-notify-test08-watched-file-in-watched-dir): Bind
582         `file-notify--test-tmpfile' temporarily in `dir-callback'.
584 2016-03-04  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
586         Grammar fix in doc string
588         * lisp/custom.el (defgroup): Grammar fix in doc string.
590 2016-03-04  Daiki Ueno  <ueno@gnu.org>
592         Naming fix for consistency
594         * lisp/epg-config.el (epg-find-configuration): Rename from
595         `epg-configuration-find' to be consistent with other epg-* functions.
596         Change all callers.
598 2016-03-04  Daiki Ueno  <ueno@gnu.org>
600         Prefer customized value for GnuPG executable
602         * lisp/epg-config.el (epg-configuration-find): Don't check GPG
603         configuration if it is already set with custom.  (Bug#22747)
605 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
607         Fix memory reservation on MS-Windows
609         * src/w32heap.c (mmap_alloc): Reserve memory in 64KB granular
610         units.  This avoids leaving gaps in reserved memory regions that
611         no one can use, since memory reservation must produce 64KB-aligned
612         addresses.  (Bug#22526)
614 2016-03-04  Anders Lindgren  <andlind@gmail.com>
616         Update NextStep readme and add wish list.
618         * nextstep/README: Rewritten from scratch. New sections on
619         "History", "Overview of Cocoa and Objective-C", "Guidelines",
620         "Tracing Support", and "GNUStep". Expanded the "See Also" section.
621         * nextstep/WISHLIST: New file containing list of issues and ideas
622         associated with the NS port of Emacs.
624 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
626         Report also result in `file-notify--test-event-handler'
628 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
630         Improve file-notify-test08-watched-file-in-watched-dir
632         * test/automated/file-notify-tests.el (file-notify--test-desc2):
633         New variable.
634         (file-notify--test-cleanup): Use it.
635         (file-notify--test-event-handler): Enable trace.
636         (file-notify-test08-watched-file-in-watched-dir): Tag it as
637         :expensive-test.  Rewrite callbacks to use
638         `file-notify--test-event-handler'.  Read events in loop.  Check
639         `file-notify--test-results'.
640         (file-notify-test08-watched-file-in-watched-dir): Fix docstring.
642 2016-03-04  Stephen Berman  <stephen.berman@gmx.net>
644         Fix todo-mode item date editing bugs
646         * lisp/calendar/todo-mode.el (todo-edit-item--header): Prevent out of
647         range error by making sure the value of the numerical month date
648         component cannot be nil.  Prevent wrong type error on trying to edit
649         day number in February by making sure numerical instead of string
650         value of the year component is passed to todo-read-date.
651         (todo-read-date): When using the numerical month date component make
652         sure to use `*' for an arbitrary month instead of its numerical value.
654 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
656         Fix "[:upper:]" for non-ASCII characters
658         * src/regex.c (re_match_2_internal): Support [:upper:] and
659         [:lower:] for non-ASCII characters.  (Bug#18150)
661 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
663         Allow customising the article mode cursor behavior
665         * doc/misc/gnus.texi (HTML): Mention gnus-article-show-cursor.
667         * lisp/gnus/gnus-art.el (gnus-article-show-cursor): New variable.
668         (gnus-article-mode): Use it.
670 2016-03-04  Ari Roponen  <ari.roponen@gmail.com>
672         Use pop-to-buffer-same-window in woman.el
674         * lisp/woman.el (woman-really-find-file): Work around going to
675         the wrong buffer by using `pop-to-buffer-same-window' (bug#22332).
676         (WoMan-find-buffer): Ditto.
678 2016-03-04  Tassilo Horn  <tsdh@gnu.org>
680         New filenotify test for bug#22736
682         * test/automated/file-notify-tests.el
683         (file-notify-test08-watched-file-in-watched-dir):
684         (file-notify--test-desc1): New filenotify test for bug#22736
686 2016-03-04  Marcin Borkowski  <mbork@mbork.pl>
688         Report critical battery errors
690         * lisp/battery.el (battery-pmset): Report critical battery
691         errors (bug#18157).
693 2016-03-04  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
695         Make eww message toggling message clearer
697         * lisp/net/eww.el (eww-toggle-fonts): Make the message
698         clearer.
700 2016-03-04  Mark Oteiza  <mvoteiza@udel.edu>
702         * lisp/calc/calc-units.el (math-standard-units): Update to 2014 CODATA adjustment.
704 2016-03-04  Martin Rudalics  <rudalics@gmx.at>
706         Fix bugs in window resizing code
708         * lisp/window.el (adjust-window-trailing-edge): Fix mismatched
709         parenthesis.
710         (shrink-window, enlarge-window): Fix bug#22723 where windows
711         with preserved size would not get resized.  Also now signal an
712         error when the window cannot be shrunk or enlarged as requested.
714 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
716         Fix decoding DOS EOL in a unibyte buffer
718         * src/coding.c (decode_eol): Loop over bytes, not characters.
719         (Bug#5251)
721 2016-03-04  Alan Mackenzie  <acm@muc.de>
723         Correct c-parse-state cache manipulation error.
725         * lisp/progmodes/cc-engine.el (c-invalidate-state-cache-1): Correct a
726         comparison bound.  Amend comments.
728 2016-03-04  Daiki Ueno  <ueno@gnu.org>
730         Take advantage of new GnuPG version check function
732         * lisp/emacs-lisp/package.el (epg-configuration-find): Declare.
733         (package-refresh-contents): Use `epg-configuration-find' to check if EPG
734         is usable.
736 2016-03-04  Daiki Ueno  <ueno@gnu.org>
738         Make GnuPG version check robuster
740         We changed the default gpg program to "gpg2" from "gpg" in the commit
741         f93d669a16bd3cb3f43f0c8cfd22fe18b627a6a1.  However, there are two
742         maintained branches (2.0 and 2.1) and Emacs doesn't work well with 2.0
743         series.  Check the actual version of "gpg2" at run time, and properly
744         divert to "gpg" if necessary.
745         * lisp/epg-config.el: Require 'cl-lib for `cl-destructuring-bind'.
746         (epg-config--program-alist): New variable.
747         (epg--configurations): New variable.
748         (epg-configuration-find): New function.
749         (epg-config--make-gpg-configuration): New function.
750         (epg-config--make-gpgsm-configuration): New function.
751         (epg-configuration): Mark as obsolete.
752         * lisp/epg.el (epg-context): Use `epg-configuration-find'.
754 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
756         Fix x-load-color-file pointer signedness
758         * src/xfaces.c (Fx_load_color_file) [!HAVE_X_WINDOWS]:
759         For sscanf and int *, use %d, not %u.
760         Problem found on Ubuntu 15.10 x32, which lacks X support.
762 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
764         * lisp/time-stamp.el (time-stamp-time-zone): Fix doc string punct.
766 2016-03-04  Mark Oteiza  <mvoteiza@udel.edu>
768         Follow convention for greek letter constants.
770         * lisp/calc/calc-units.el (math-standard-units):
771         Add "sigma" and alias σ to it.
773 2016-03-04  Mark Oteiza  <mvoteiza@udel.edu>
775         Add Stefan-Boltzmann constant to calc units table.
777         * lisp/calc/calc-units.el (math-standard-units):
778         Add Stefan-Boltzmann constant.
780 2016-03-04  Mark Oteiza  <mvoteiza@udel.edu>
782         * lisp/calc/calc-units.el (math-build-units-table-buffer): Use special-mode.
784 2016-03-04  Glenn Morris  <rgm@gnu.org>
786         Avoid loading cl-lib for term/xterm.elc, eg in -Q -nw.  (Bug#22669)
788         * lisp/emacs-lisp/cl-generic.el (cl--generic-dispatchers):
789         Prefill with relevant elements for term/xterm.
791 2016-03-04  Tassilo Horn  <tsdh@gnu.org>
793         Fix soffice UserInstallation-URL for Windows
795         * lisp/doc-view.el (doc-view-odf->pdf-converter-soffice): Fix
796         UserInstallation-URL when calling soffice on Windows.
798 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
800         Fix display of <pre> elements
802         * lisp/net/eww.el (eww-display-html): Remove CRLF before
803         parsing so that <pre> elements don't render with ^M at the end
804         of the lines.
806 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
808         Minor fixes in global-auto-composition-mode
810         * lisp/emacs-lisp/easy-mmode.el (easy-mmode-pretty-mode-name):
811         Produce prettier names of globalized minor modes.
812         * lisp/composite.el (global-auto-composition-mode): Make it a
813         globalized mode.  (Bug#22682)
815 2016-03-04  Alan Mackenzie  <acm@muc.de>
817         Allow arithmetic operators inside C++ template constructs.
819         Fixes debbugs #22486.  This corrects the previous patch with this message
820         which was empty.
822         * lisp/progmodes/cc-langs.el (c-multichar->-op-not->>-regexp): New language
823         variable.
824         (c-<>-notable-chars-re): New language variable.
826         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): User
827         c-<>-notable-chars-re in place of the former fixed string in searching for
828         places to stop and examine.
829         Use c-multichar->-op-not->>-regexp to check that a found ">" is not part of a
830         multichar operator in place of the former c->-op-without->-cont-regexp.
831         Add code to skip forwards over a balanced parenthesized expression.
833 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
835         Avoid crashes in semi-malformed 'condition-case'
837         * src/eval.c (internal_lisp_condition_case): Treat a handler
838         '(nil)' as if it were '(nil nil)'.  (Bug#22675)
840 2016-03-04  Alan Mackenzie  <acm@muc.de>
842         Allow arithmetic operators inside C++ template constructs.
844         Fixes debbugs #22486.
846         * lisp/progmodes/cc-langs.el (c-multichar->-op-not->>-regexp): New language
847         variable.
848         (c-<>-notable-chars-re): New language variable.
850         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): User
851         c-<>-notable-chars-re in place of the former fixed string in searching for
852         places to stop and examine.
853         Use c-multichar->-op-not->>-regexp to check that a found ">" is not part of a
854         multichar operator in place of the former c->-op-without->-cont-regexp.
855         Add code to skip forwards over a balanced parenthesized expression.
857 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
859         Fix regression with 'recent-keys' and keyboard macros
861         * src/keyboard.c (record_char): Don't record in 'recent_keys'
862         events that come from executing keyboard macros.  (Bug#22674)
864 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
866         Fix wording in a doc-view.el comment
868         * lisp/doc-view.el (doc-view--current-cache-dir): Don't use
869         "illegal" for something that is not against the law.
871 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
873         CONTRIBUTE cleanups and updates
875         * CONTRIBUTE: Mention URLs and info nodes more consistently,
876         avoiding possibly-confusing punctuation adjacent to a URL, and
877         giving full shell commands for 'info'.  Start with a brief but
878         complete how-to, for people who want to get started right away.
879         Then briefly discuss how to join the development process in the
880         typical order.  Omit needless words.  Update some of the
881         now-obsolete file names, info node names, and quoting styles.
882         Better document emacs-NN branches and how they are merged.
883         * admin/notes/git-workflow: Change emacs-24 to emacs-25,
884         and trunk to master.  This file still needs work.
886 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
888         Port USE_STACK_LISP_OBJECTS fix to Clang
890         * src/lisp.h (USE_STACK_LISP_OBJECTS): Default to false for Clang.
891         Recent versions of Clang claim to be GCC 4.2.1 but do not have
892         the GCC bug.
894 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
896         Port to x86 GCC 4.3.1 and earlier
898         This tries to port to x86 FreeBSD 9, where Emacs dumps core (Bug#22065).
899         * src/lisp.h (USE_STACK_LISP_OBJECTS): Default to false
900         for GCC 4.3.1 and earlier.
902 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
904         Fix point movement under 'scroll-conservatively'
906         * src/xdisp.c (redisplay_window): Correct a typo in computing the
907         effective number of text lines in a window.  (Bug#22637)
909 2016-03-04  Thomas Plass  <thomas.plass@arcor.de>
911         Replace colon in file name (not legal on Windows)
913         * lisp/doc-view.el (doc-view--current-cache-dir): Replace colon in file
914         name (not legal on Windows). [tiny change]
916 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
918         Fix a typo in edt.texi
920         * doc/misc/edt.texi: Fix a typo in an email address.  Reported by
921         "Herbert J. Skuhra" <herbert@mailbox.org>.
923 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
925         Make 'mmap_realloc' on MS-Windows more reliable
927         * src/w32heap.c (mmap_alloc): If reserving memory succeeds, but
928         committing fails, return NULL.  Don't call GetLastError twice for
929         the same API error.
930         (mmap_realloc): Zero out MEMORY_BASIC_INFORMATION structures
931         before calling VirtualQuery, to avoid using garbled values if the
932         call fails.  If committing more pages from the same block fails,
933         fall back on mmap_alloc + CopyMemory.  Enhance debugging printouts
934         if the call to VirtualAlloc to commit more pages fails.
935         (Bug#22526)
937 2016-03-04  Oscar Fuentes  <ofv@wanadoo.es>
939         Grep alias `all' shall not match parent directory
941         * lisp/progmodes/grep.el (grep-files-aliases): Don't match parent
942           directory for `all'. Fixes bug#22577
944 2016-03-04  Nicolas Petton  <nicolas@petton.fr>
946         Bump version to 25.0.91
948         * README:
949         * configure.ac:
950         * msdos/sed2v2.inp: Bump version to 25.0.91.
952 2016-03-04  Nicolas Petton  <nicolas@petton.fr>
954         * etc/AUTHORS: Update the AUTHORS file
956 2016-03-04  Glenn Morris  <rgm@gnu.org>
957 2016-02-15  Glenn Morris  <rgm@gnu.org>
959         * lisp/dired-aux.el: Require cl-lib.  (Bug#22613)
961 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
963         Index tilde characters in names of backup files
965         * doc/emacs/files.texi (Backup Names): Improve indexing.
966         (Bug#22625)
968 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
970         Document deprecation of hi-lock-mode's 'C-x w' bindings
972         * doc/emacs/display.texi (Highlight Interactively): Deprecate the
973         "C-x w" bindings of hi-lock-mode.
975         * etc/NEWS: Mark the deprecation entry as documented.
977 2016-02-15  Stefan Monnier  <monnier@iro.umontreal.ca>
979         Announce that the `C-x w' bindings are deprecated
981 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
983         Suppress GNUstep hardening
985         Fedora 23 normally hardens GNUstep applications, which causes
986         ‘./configure --with-ns’ to break Emacs’s funky way of undumping.
987         Fix this by eliding the hardening options (Bug#22518).
988         * src/Makefile.in (LIBS_GNUSTEP): Omit options like
989         ‘-specs=/usr/lib/rpm/redhat/redhat-hardened-ld’.
990         (GNU_OBJC_CFLAGS): Omit options like
991         ‘-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1’.
993 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
995         Fix redisplay after a large insertion
997         * src/xdisp.c (redisplay_internal): Don't accept the results of
998         "optimization 3" if the cursor ends up in a partially visible
999         glyph row.  (Bug22637)
1001 2016-02-15  Andreas Schwab  <schwab@linux-m68k.org>
1003         Revert "Fix gnus-group-get-new-news-this-group on group with closed server"
1005         This reverts commit 9dc77e37aa84c6df9b3ddb4609f3c09201b0580e.
1007                 * lisp/gnus/nnimap.el (nnimap-change-group): Revert last
1008                 change.  (Bug#22634)
1010 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
1012         * lib-src/make-docfile.c: Include stdarg.h.
1014 2016-02-15  Alan Mackenzie  <acm@muc.de>
1016         Extend gpm-mouse-mode's doc string and doc to point out limitations.
1018         * lisp/t-mouse.el (gpm-mouse-mode): Extend doc string to indicate the
1019         inability to transfer text between Emacs and other programs which use GPM.
1021         * doc/emacs/frames.texi (Text-Only Mouse): Note the inability to transfer text
1022         between Emacs and other progrmas which use GPM.
1024 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
1026         Revert "Backport: * lisp/isearch.el: Turn char-folding off by default"
1028         * lisp/isearch.el: Turn char-folding back oon by default.
1030         This reverts commit 12c50e82c9b432b2fc31f8fb2215f43ceea80822.
1032 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
1034         Revert "Support integer image rotation and respect EXIF rotations"
1036         This reverts commit 0f600496050bf435f55dc81056e06fcd45992dc8.
1038         This change does not work on Fedora.
1040 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
1042         Revert "Document EXIF image rotation"
1044         This reverts commit 10b8ed27ec91ff52f93eb0297dcc3abb214931aa.
1046         This change does not work on Fedora, for instance.
1048 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
1050         Document OS X LANG default
1052         * doc/emacs/cmdargs.texi (General Variables):
1053         Document OS X Language and Region system preference.
1054         Suggested by Alan Third.
1056 2016-02-15  Alan Third  <alan@idiocy.org>
1058         Set locale when run from OS X GUI
1060         * src/emacs.c (main): Call ns_init_locale.
1061         * src/nsterm.m (ns_init_locale): Get locale from OS and set LANG.
1062         * src/nsterm.h: Include ns_init_locale.
1064 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
1066         make-docfile cleanup for I/O, etc.
1068         * lib-src/make-docfile.c (progname, generate_globals, num_globals)
1069         (num_globals_allocated, globals): Now static.
1070         (generate_globals, struct rcsoc_state, read_c_string_or_comment):
1071         (write_c_args, scan_c_stream, search_lisp_doc_at_eol, scan_lisp_file):
1072         Use bool for boolean.
1073         (verror): New function.
1074         (fatal, error): Use it.  API is now like printf.  All callers changed.
1075         (main): Remove err_count local that was always 0.
1076         (main, scan_c_stream, scan_lisp_file): Check for I/O error.
1077         (scan_file, scan_c_file, scan_c_stream, scan_lisp_file):
1078         Return void, not 0.
1079         (put_char, scan_keyword_or_put_char, scan_c_file): Use char for byte.
1080         (scan_keyword_or_put_char): Check for missing ( and unexpected EOF.
1081         (close_emacs_globals): Use ptrdiff_t for index, not int.
1082         (scan_c_file, scan_lisp_file): Exit with failure if file cannot be
1083         opened, rather than diagnosing but exiting with status 0.
1084         (search_lisp_doc_at_eol): Don't worry about ungetc of EOF; it's
1085         portable now.
1087 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
1089         Memory-management cleanup in make-docfile
1091         I compiled it with -fsanitize=address and fixed the leaks it detected.
1092         Also, I changed it to prefer signed to unsigned integer types,
1093         and to check for integer overflow.
1094         * lib-src/make-docfile.c:
1095         Include <stddef.h>, <stdint.h>, <intprops.h>, <min-max.h>.
1096         (memory_exhausted): New function.
1097         (xmalloc, xrealloc): Use it.
1098         (xmalloc, xrealloc, scan_file, struct rcsoc_state, write_c_args)
1099         (uncompiled, scan_lisp_file):
1100         Prefer signed integer types to unsigned.
1101         (xstrdup): Remove.  All uses removed.
1102         (num_globals, num_globals_allocated, write_globals, scan_c_stream):
1103         Use ptrdiff_t, not int, for indexes that in theory could exceed INT_MAX.
1104         (add_global): Use const to pacify --enable-gcc-warnings.
1105         Make a copy here, rather than relying on strdup calls later.
1106         (add_global, write_globals, scan_c_stream):
1107         Avoid integer overflow when calculating sizes.
1108         (write_globals, scan_c_stream, scan_lisp_file): Avoid memory leak.
1109         (scan_c_stream): Check for add_global failure.
1111 2016-02-15  Kevin Gallagher  <Kevin.Gallagher@boeing.com>
1113         Kevin Gallagher has new email address
1115         * lisp/emulation/edt.el:
1116         * lisp/emulation/edt-lk201.el:
1117         * lisp/emulation/edt-mapper.el:
1118         * lisp/emulation/edt-pc.el:
1119         * lisp/emulation/edt-vt100.el:
1120         * etc/edt-user.el:
1121         * doc/misc/edt.texi: Update Kevin Gallagher's email address.
1123 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
1125         Improve doc strings of 'forward/backward-word-strictly'
1127         * lisp/simple.el (backward-word): Refer to 'backward-word-strictly'
1128         in the doc string.  Suggested by Glenn Morris <rgm@gnu.org>.
1129         * lisp/subr.el (forward-word-strictly, backward-word-strictly):
1130         Mention 'subword-mode' in the doc strings.
1132         * src/syntax.c (Fforward_word): Refer to 'forward-word-strictly'
1133         in the doc string.  (Bug#22560)
1135 2016-02-15  Michael Albinus  <michael.albinus@gmx.de>
1137         Describe Makefile test targets in test/README
1139         * CONTRIBUTE: Move Makefile test targets to test/README.
1141         * Makefile.in:
1142         * test/README: Describe Makefile test targets.
1144 2016-02-15  Artur Malabarba  <bruce.connor.am@gmail.com>
1146         Backport: * lisp/isearch.el: Turn char-folding off by default
1148         (search-default-mode): Set default value to nil.
1150 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
1152         Document EXIF image rotation
1154         * doc/lispref/display.texi (ImageMagick Images): Mention EXIF rotation.
1156 2016-02-15  Dima Kogan  <dima@secretsauce.net>
1158         Support integer image rotation and respect EXIF rotations
1160         * src/image.c (imagemagick_load_image): Allow integer rotations in
1161         addition to floating point rotations (bug#22591).
1162         * src/image.c (imagemagick_load_image): Images that have an
1163         orientation given in EXIF and have no explicit :rotation tag are now
1164         pre-rotated.  All information such as width/height is reported for the
1165         rotated image.
1167 2016-02-15  Matthew Carter  <m@ahungry.com>
1169         Quote table names for postgres listings (sql-mode)
1171         * lisp/progmodes/sql.el (sql-postgres-completion-object): Avoid passing
1172           unquoted table names to the completion list.
1174 2016-02-15  Juri Linkov  <juri@linkov.net>
1176         * lisp/replace.el (replace-match-maybe-edit): Make arg `backward' optional.
1178         Doc fix.
1179         (replace-search, replace-highlight): Make arg `backward' optional.
1180         (Bug#18388)
1182 2016-02-15  Juri Linkov  <juri@linkov.net>
1184         * lisp/simple.el (next-line-or-history-element): Reset temporary-goal-column.
1186         (previous-line-or-history-element): Reset temporary-goal-column.
1187         Use end-of-visual-line instead of line-end-position.  (Bug#22544)
1189 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
1191         Suppress ACL ops if configured with --disable-acl
1193         Without this patch, some ACL operations were suppressed, but not all.
1194         * src/fileio.c [!USE_ACL]: Do not include sys/acl.h.
1195         (Ffile_acl, Fset_file_acl) [!USE_ACL]: Return nil in this case.
1197 2016-02-15  Katsumi Yamaoka  <yamaoka@jpl.org>
1199         Mention web bugs
1201         * doc/misc/emacs-mime.texi (Display Customization):
1202         Mention web bugs in the mm-html-blocked-images section.
1204 2016-02-15  Katsumi Yamaoka  <yamaoka@jpl.org>
1206         Make mm-html-blocked-images default to "" again
1208         * lisp/gnus/mm-decode.el (mm-html-blocked-images):
1209         Default to "" that blocks all external images.
1211         * doc/misc/emacs-mime.texi (Display Customization):
1212         Mention that mm-html-blocked-images defaults to "".
1214 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
1216         Minor alignas cleanup
1218         * src/lisp.h (alignas): Remove now-redundant #ifdef that was left
1219         over from the old way of doing things, before Bug#20862 was fixed.
1221 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
1223         Add lmalloc commentary and tweak laligned
1225         * src/alloc.c (laligned): Help compiler in a tiny way by putting
1226         the more-commonly-failing disjunct first.
1228 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
1230         Clarify documentation of key binding conventions
1232         * doc/lispref/tips.texi (Key Binding Conventions): Clarify which
1233         "punctuation characters" are reserved after "C-c".  (Bug#22604)
1235 2016-02-15  Oscar Fuentes  <ofv@wanadoo.es>
1237         * etc/NEWS: mention the `vc-faces' customization group
1239 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
1241         Sync with gnulib
1243         This incorporates:
1244         2016-02-09 stdalign: port to clang 3.7.0
1245         2016-02-06 misc: port better to gcc -fsanitize=address
1246         * doc/misc/texinfo.tex, lib/stdalign.in.h, m4/acl.m4, m4/getgroups.m4:
1247         Copy from gnulib.
1249 2016-02-15  Michael Albinus  <michael.albinus@gmx.de>
1251         * CONTRIBUTE: Add more examples for $(SELECTOR) make variable.
1253 2016-02-15  Katsumi Yamaoka  <yamaoka@jpl.org>
1255         Make mm-html-inhibit-images and mm-html-blocked-images default to nil
1257         * lisp/gnus/mm-decode.el (mm-html-inhibit-images)
1258         (mm-html-blocked-images): Default to nil.
1260         * doc/misc/emacs-mime.texi (Display Customization): Mention that
1261         mm-html-inhibit-images and mm-html-blocked-images default to nil.
1263         * etc/NEWS (Gnus): Document mm-html-inhibit-images and
1264         mm-html-blocked-images.
1266 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
1268         Increase success rate of fallback lmalloc
1270         * src/alloc.c (lmalloc, lrealloc): Reallocate with (typically)
1271         larger and larger sizes, to increase the probability that
1272         the allocator will return a Lisp-aligned pointer.
1274 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
1276         Make backgrounds extend to the end of the lines in shr
1278         * lisp/net/shr.el (shr-face-background): Faces can also be on
1279         the form `(:background "#fff)' (bug#22547).
1281 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
1283         Make the `R' command get the correct relative <img>s
1285         * lisp/net/eww.el (eww-readable): Preserve the base URL so
1286         that image expansions are fetched from the right place (bug#22605).
1288         (cherry picked from commit 8722e849f75ceafb82a1c17105e8ab76077a8ebc)
1290         Backport:
1292 2016-02-15  Mike Kupfer  <m.kupfer@acm.org>
1294         Fix typos in emacs-mime.texi and gnus.texi
1296         * doc/misc/emacs-mime.texi (Display Customization):
1297         * doc/misc/gnus.texi (HTML): Fix typo.
1299 2016-02-15  Katsumi Yamaoka  <yamaoka@jpl.org>
1301         * doc/misc/emacs-mime.texi (Display Customization):
1302         Doc fix for mm-html-inhibit-images.
1304 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
1306         Fix message-cross-post-followup-to group names
1308         * lisp/gnus/message.el (message-cross-post-followup-to): Don't
1309         insert group names like "nntp+foo:zot", because those aren't valid.
1311 2016-02-15  David Edmondson  <dme@dme.org>
1313         Compare recipient and keys case-insensitively
1315         * lisp/gnus/mml2015.el: (mml-secure-check-user-id): When comparing a
1316         recipient address with that from a key, do so in a case insensitive
1317         manner (bug#22603).
1319 2016-02-15  Glenn Morris  <rgm@gnu.org>
1321         * lisp/gnus/mm-decode.el (mm-alist-to-plist): Doc fix.
1323 2016-02-15  Katsumi Yamaoka  <yamaoka@jpl.org>
1325         Refactor HTML images handling of Gnus and mm-* (a part of bug#21650)
1327         * doc/misc/emacs-mime.texi (Display Customization):
1328         Remove mm-inline-text-html-with-images; add documentations for
1329         mm-html-inhibit-images and mm-html-blocked-images.
1331         * lisp/gnus/gnus-art.el (gnus-article-show-images):
1332         No need to bind mm-inline-text-html-with-images.
1333         (gnus-bind-safe-url-regexp): Rename to gnus-bind-mm-vars.
1334         (gnus-bind-mm-vars): Rename from gnus-bind-safe-url-regexp;
1335         bind mm-html-inhibit-images and mm-html-blocked-images.
1336         (gnus-mime-view-all-parts, gnus-mime-view-part-internally)
1337         (gnus-mm-display-part, gnus-mime-display-single)
1338         (gnus-mime-display-alternative): Use gnus-bind-mm-vars.
1340         * lisp/gnus/mm-decode.el (mm-inline-text-html-with-images): Remove.
1341         (mm-html-inhibit-images, mm-html-blocked-images): New user options.
1342         (mm-shr): Bind shr-inhibit-images and shr-blocked-images with
1343         mm-html-inhibit-images and mm-html-blocked-images respectively
1344         instead of gnus-inhibit-images and gnus-blocked-images.
1346         * lisp/gnus/mm-view.el (mm-setup-w3m): Use mm-html-inhibit-images
1347         instead of mm-inline-text-html-with-images.
1349 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
1351         Port to FreeBSD 11-CURRENT i386
1353         Problem reported by Herbert J. Skuhra in:
1354         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00354.html
1355         Instead of trying
1356         * src/alloc.c (lmalloc, lrealloc, laligned): New functions.
1357         (xmalloc, xzalloc, xrealloc, lisp_malloc): Use them.
1358         (__alignof__) [!__GNUC__ && !__alignof__]: New macro.
1359         (MALLOC_IS_GC_ALIGNED): New macro.
1360         * src/lisp.h (NONPOINTER_BITS): Remove.  All uses removed.
1361         No longer needed now that alloc.c uses lmalloc and lrealloc.
1363 2016-02-15  Michael Albinus  <michael.albinus@gmx.de>
1365         Some fixes in file-notify-tests.el
1367         * test/automated/file-notify-tests.el
1368         (file-notify--test-with-events-check)
1369         (file-notify--test-with-events-explainer): New defuns.
1370         (file-notify--test-with-events): Use it.
1371         (file-notify-test07-backup): Fix docstring.  Some of the
1372         backends fire two `changed' events.  Backup by rename doesn't
1373         work for kqueue.
1375 2016-02-15  Michael Albinus  <michael.albinus@gmx.de>
1377         Fix Bug#22557
1379         * lisp/filenotify.el (file-notify-callback): Do not send a
1380         `stopped' event in case of backup by renaming.  (Bug#22557)
1382         * test/automated/Makefile.in: Use $(SELECTOR_EXPENSIVE) for
1383         all targets but check and check-maybe.
1385         * test/automated/file-notify-tests.el
1386         (file-notify--test-read-event-timeout): New defconst.
1387         (file-notify--deftest-remote, file-notify--wait-for-events)
1388         (file-notify-test02-events)
1389         (file-notify-test04-file-validity)
1390         (file-notify-test06-many-events): Use it.
1391         (file-notify--test-cleanup): Make it more robust.  Delete also
1392         backup file.
1393         (file-notify-test07-backup): New test.
1395 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
1397         Fix test for dladdr
1399         Problem reported by Andreas Schwab in:
1400         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00327.html
1401         * configure.ac (dladdr): Link with LIBMODULES when checking for
1402         this function.
1404 2016-02-15  Andreas Schwab  <schwab@linux-m68k.org>
1406         Fix gnus-group-get-new-news-this-group on group with closed server
1408         * lisp/gnus/nnimap.el (nnimap-change-group): Lookup server
1409         method and pass to nnimap-open-server.
1411 2016-02-15  Artur Malabarba  <bruce.connor.am@gmail.com>
1412 2016-02-14  Nicolas Petton  <nicolas@petton.fr>
1414         * doc/lispref/sequences.texi: Add documentation for seq-map-indexed
1416 2016-02-14  Nicolas Petton  <nicolas@petton.fr>
1418         New function seq-map-indexed
1420         * lisp/emacs-lisp/seq.el (seq-map-indexed): New function.
1421         * test/lisp/emacs-lisp/seq-tests.el: Add tests for seq-map-indexed.
1423 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
1425         * lisp/gnus/mm-util.el: Remove the mm-string-as-multibyte alias.
1427 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
1429         Fix problem with wrong encoding of non-ASCII message bodies
1431         * lisp/gnus/mml.el (mml-generate-mime-1): Disable
1432         multibyteness before encoding the data.
1434 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
1436         Remove codepage setup code from mm-util
1438         * lisp/gnus/mm-util.el (mm-codepage-setup): Remove.
1439         (mm-codepage-iso-8859-list): Remove.
1440         (mm-codepage-ibm-list, mm-setup-codepage-iso-8859)
1441         (mm-setup-codepage-ibm): Remove.
1442         (mm-charset-eval-alist): Remove the code pages from the
1443         default value.
1445 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
1447         Remove compat code for older Emacsen
1449         * lisp/gnus/gnus-art.el (gnus-button-url-regexp): Remove
1450         XEmacs compat code.
1452         * lisp/gnus/gnus-sync.el (gnus-sync-json-alist-p): Remove
1453         unused compat function.
1454         (gnus-sync-json-plist-p): Ditto.
1456         * lisp/gnus/message.el (message-default-charset): Make obsolete.
1457         (message-info): Remove compat code.
1458         (message-setup-fill-variables): Remove kludge needed earlier
1459         to not overwrite `normal-auto-fill-function'.
1460         (message-split-line): Remove compat code.
1462         * lisp/gnus/mm-view.el (mm-display-inline-fontify): Remove
1463         compat code.
1465 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
1467         Remove some compat functions from gmm-utils.el
1469         * lisp/gnus/gmm-utils.el (gmm-tool-bar-from-list): Remove
1470         compat code.
1471         (gmm-image-search-load-path): Remove.
1472         (gmm-image-load-path-for-library): Remove.
1474 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
1476         Remove the gmm-lazy and nnmail-lazy compat widgets
1478         * lisp/gnus/gmm-utils.el (gmm-lazy): Remove.
1480         * lisp/gnus/nnmail.el (nnmail-lazy): Remove.
1482 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
1484         Clean up nnimap-request-move-article slightly
1486         * lisp/gnus/nnheader.el (subr-x): Require.
1488         * lisp/gnus/nnimap.el (nnimap-request-move-article): Clean up
1489         the code slightly.
1491 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
1493         Use open-network-stream instead of open-protocol-stream
1495         * lisp/gnus/nnimap.el: Use open-network-stream instead of
1496         open-protocol-stream.
1498         * lisp/gnus/nntp.el: Ditto.
1500         * lisp/gnus/pop3.el: Ditto.
1502         * lisp/gnus/sieve-manage.el: Ditto.
1504         * lisp/net/network-stream.el (open-protocol-stream): Make obsolete.
1506 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
1508         Remove compat code that relies on (featurep 'mule)
1510         * lisp/gnus/gnus-group.el (gnus-group-name-decode): Remove
1511         compat code.
1513         * lisp/gnus/gnus-start.el (gnus-read-descriptions-file):
1514         Remove compat code.
1516         * lisp/gnus/mm-bodies.el (mm-decode-body, mm-decode-string):
1517         Remove compat code.
1519         * lisp/gnus/mm-view.el (mm-w3m-standalone-supports-m17n-p):
1520         Remove compat code.
1521         (mm-w3m-standalone-supports-m17n-p): Ditto.
1523 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
1525         Remove compat functions from starttls.el
1527         * lisp/gnus/starttls.el
1528         (starttls-set-process-query-on-exit-flag): Remove.
1530 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
1532         Remove compat functions from smime.el
1534         * lisp/gnus/smime.el (smime-replace-in-string): Remove.
1535         (smime-make-temp-file): Remove.
1537 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
1539         Remove compat code from smiley
1541         * lisp/gnus/smiley.el (smiley-style): Remove compat code.
1543 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
1545         Remove compat code from rfc2047
1547         * lisp/gnus/rfc2047.el (rfc2047-encode-message-header): Remove
1548         compat code.
1549         (rfc2047-decode-string): Ditto.
1551 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
1553         Remove compat function from pop3
1555         * lisp/gnus/pop3.el (pop3-set-process-query-on-exit-flag): Remove.
1557 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
1559         Remove compat code in Gnus backends
1561         * lisp/gnus/nndiary.el (nndiary-error): Remove.
1563         * lisp/gnus/nndraft.el (nndraft-request-associate-buffer): Ditto.
1565         * lisp/gnus/nnfolder.el (nnfolder-read-folder): Ditto.
1567         * lisp/gnus/nnheader.el (nnheader-find-file-noselect): Ditto.
1569         * lisp/gnus/nnimap.el (nnimap-log-buffer): Remove compat code.
1571 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
1573         Remove compat code from some mml files
1575         * lisp/gnus/mml-sec.el (mml-secure-passphrase-cache-expiry):
1576         Remove compat code.
1578         * lisp/gnus/mml-smime.el (mml-smime-openssl-sign-query):
1579         Always use `mail-extract-address-components', since this isn't
1580         time critical.
1581         (mml-smime-get-dns-cert): Ditto.
1583         * lisp/gnus/mml.el (mml-preview): Remove compat code.
1585 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
1587         Remove compat code and compat functions from mm-util.el
1589         * lisp/gnus/mm-util.el (mm-mime-mule-charset-alist): Remove
1590         compat code.
1591         (mm-coding-system-priorities)
1592         (mm-mule-charset-to-mime-charset, mm-charset-after)
1593         (mm-mime-charset, mm-iso-8859-x-to-15-region): Remove compat code.
1594         (mm-detect-coding-region): Define unconditionally.
1595         (mm-detect-mime-charset-region): Ditto.
1596         (mm-coding-system-to-mime-charset): It's 'mime-charset now.
1597         (coding-system-name)
1598         (find-file-coding-system-for-read-from-filename)
1599         (find-operation-coding-system): Remove aliases.
1601 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
1603         Remove some compat code from mm-*.el
1605         * lisp/gnus/mm-bodies.el (mm-decode-body): Ditto.
1607         * lisp/gnus/mm-decode.el (mm-tmp-directory)
1608         (mm-valid-image-format-p): Remove compat code.
1610         * lisp/gnus/mm-url.el (mm-url-insert-file-contents): Remove
1611         "Connection" "Close" workaround for older Emacsen.
1613 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
1615         Remove compat code and functions from message.el
1617         * lisp/gnus/message.el (message-send-mail-function): Remove
1618         compat code.
1619         (message-dont-reply-to-names, message-mode)
1620         (message-setup-fill-variables, message-fill-paragraph)
1621         (message-remove-blank-cited-lines, message-make-from)
1622         (message-forward-rmail-make-body, message-tool-bar-gnome)
1623         (message-tab): Remove compat code.
1624         (message-completion-in-region): Remove.
1625         (message-read-from-minibuffer): Remove compat code.
1627 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
1629         Declare rfc1843 instead of autoloading
1631         * lisp/gnus/gnus-art.el (rfc1843-decode-region): Declare
1632         instead of autoload.
1634 2016-02-13  Eli Zaretskii  <eliz@gnu.org>
1636         Avoid signaling an error in 'dired-do-find-regexp-and-replace'
1638         * lisp/dired-aux.el: Require cl-lib, so that 'cl-mapcan' is
1639         autoloaded correctly.  (Bug#22613)
1641 2016-02-13  Eli Zaretskii  <eliz@gnu.org>
1643         Fix network-stream-tests.el for MS-Windows
1645         * test/lisp/net/network-stream-tests.el
1646         (connect-to-tls-ipv6-nowait): Skip for MS-Windows builds.
1647         (connect-to-tls-ipv4-wait): Add a 0.1 sleep-for.
1649 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
1651         Remove some Message compat functions
1653         * lisp/gnus/message.el (message-kill-all-overlays): Define
1654         unconditionally.
1655         (message-window-inside-pixel-edges): Remove.
1656         (mail-dont-reply-to): Remove.
1658 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
1660         Remove some Gnus compat code
1662         * lisp/gnus/gnus-art.el (gnus-mime-inline-part): Remove compat code.
1663         (gnus-mm-display-part): Ditto.
1665         * lisp/gnus/gnus-start.el (gnus-dribble-read-file): Remove
1666         compat code.
1668 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
1670         Sort groups before inserting them into the group buffer
1672         * lisp/gnus/gnus-group.el (gnus-group-describe-all-groups):
1673         Sort groups before inserting them.
1675 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
1677         Make "unseen" tracking work again in Gnus
1679         * lisp/gnus/gnus-sum.el (gnus-update-marks): Make "unseen"
1680         tracking work again.
1682 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
1684         Remove Gnus compat functions defined in gnus.el
1686         * lisp/gnus/gnus.el (gnus-extent-detached-p): Remove.
1687         (gnus-extent-start-open, gnus-character-to-event)
1688         (gnus-assq-delete-all, gnus-add-text-properties)
1689         (gnus-put-text-property, gnus-key-press-event-p):
1691 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
1693         Remove compat code from gnus-uu and win
1695         * lisp/gnus/gnus-util.el (gnus-image-type-available-p): Remove
1696         compat code.
1698         * lisp/gnus/gnus-uu.el (gnus-uu-tmp-dir): Remove compat code.
1700         * lisp/gnus/gnus-win.el (gnus-frames-on-display-list): Remove.
1702 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
1704         Remove several gnus-util compat functions
1706         * lisp/gnus/gnus-util.el (gnus-set-process-query-on-exit-flag): Remove.
1707         (gnus-read-shell-command): Remove.
1708         (gnus-match-substitute-replacement): Remove.
1709         (gnus-string-match-p): Remove.
1710         (gnus-string-prefix-p): Remove.
1712 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
1714         Remove the gnus-merge alias
1716         * lisp/gnus/gnus-util.el (gnus-merge): Remove.
1718 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
1720         Remove the gnus-union alias
1722         * lisp/gnus/gnus-util.el (gnus-union): Remove.
1724 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
1726         Remove the gnus-delete-alist alias
1728         * lisp/gnus/gnus-util.el (gnus-run-mode-hooks): Remove compat code.
1729         (gnus-delete-alist): Remove.
1731 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
1733         Remove the gnus-float-time alias
1735         * lisp/gnus/gnus-util.el (gnus-completion-styles): Remove
1736         compat code.
1737         (gnus-float-time): Remove.
1739 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
1741         Remove compat code from gnus-srvr, start and sum
1743         * lisp/gnus/gnus-srvr.el (gnus-browse-foreign-server): Remove
1744         compat code.
1746         * lisp/gnus/gnus-start.el (gnus-check-reasonable-setup):
1747         Remove compat code.
1749         * lisp/gnus/gnus-sum.el (gnus-summary-display-arrow)
1750         (gnus-summary-make-menu-bar, gnus-summary-make-tool-bar)
1751         (gnus-recenter)
1752         (gnus-summary-limit-strange-charsets-predicate)
1753         (gnus-summary-show-thread): Remove compat code.
1755 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
1757         Remove compat code from gnus-spec.el
1759         * lisp/gnus/gnus-spec.el (gnus-lrm-string-p): Remove compat code.
1760         (gnus-balloon-face-function): Remove compat code.
1762 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
1764         Fix compat change in last check-in
1766         * lisp/gnus/gnus-group.el
1767         (gnus-group-name-charset-group-alist): `find-coding-system'
1768         doesn't exist in Emacs.
1770 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
1772         Always use url-queue
1774         * lisp/gnus/gnus-html.el (gnus-html-schedule-image-fetching):
1775         Always use url-queue.
1777 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
1779         Remove compat functions from gnus-html.el
1781         * lisp/gnus/gnus-html.el (gnus-html-encode-url-chars): Remove.
1783 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
1785         Remove compat code from gnus-group.el
1787         * lisp/gnus/gnus-group.el (gnus-group-name-charset-group-alist)
1788         (gnus-group-make-tool-bar, gnus-group-update-tool-bar): Remove compat code.
1790 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
1792         Define gnus-diary-kill-entire-line unconditionally
1794         * lisp/gnus/gnus-diary.el (gnus-diary-kill-entire-line):
1795         Define unconditionally.
1797 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
1799         Remove compat code from gnus-cache and gnus-bookmark
1801         * lisp/gnus/gnus-bookmark.el (gnus-bookmark-bmenu-mode-map): Ditto.
1803         * lisp/gnus/gnus-cache.el (gnus-cache-decoded-group-name):
1804         Remove compat code.
1806 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
1808         Remove compat code from gnus-art.el
1810         * lisp/gnus/gnus-art.el (gnus-article-prepare)
1811         (gnus-mime-copy-part, gnus-output-to-file)
1812         (gnus-article-reply-with-original)
1813         (gnus-button-handle-apropos-variable)
1814         (gnus-button-handle-apropos-documentation):
1816 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
1818         Remove compat code from gnus-agent.el
1820         * lisp/gnus/gnus-agent.el (gnus-agent-make-mode-line-string):
1821         Remove compat code.
1823 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
1825         Rewrite gmm-labels usage to use cl-labels
1827         * lisp/gnus/gmm-utils.el (gmm-tool-bar-style): Remove compat code.
1828         (gmm-labels): Remove.
1830 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
1832         Remove compat code from canlock.el
1834         * lisp/gnus/canlock.el (defmacro): Remove
1836 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
1838         Remove compat code from auth-source
1840         * lisp/gnus/auth-source.el (auth-source-read-char-choice):
1841         Remove compat code.
1843 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
1845         Fix gnus-group.el compilation warnings about unprefixed variables
1847         * lisp/gnus/gnus-group.el (gnus-group-update-eval-form): Avoid
1848         compilation warnings by passing in the dynamic variables as
1849         explicit lexical parameters to `eval'.
1851 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
1853         Fix the :tracker slot name
1855         * lisp/gnus/registry.el (registry-lookup-secondary): The
1856         `tracker' slot is called `tracker', not `:tracker'.
1858 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
1860         Fix compilation warnings in gnus-art.el
1862         * lisp/gnus/gnus-art.el (rfc1843-decode-region): Autoload.
1863         (gnus-article-hide): Avoid compilation warnings.
1865 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
1867         Fix compilation warning in gnus-score.el
1869         * lisp/gnus/gnus-score.el (gnus-art): Require to silence byte
1870         compiler.
1872 2016-02-12  Andreas Schwab  <schwab@linux-m68k.org>
1874         Revert "Fix gnus-group-get-new-news-this-group on group with closed server"
1876         This reverts commit 9dc77e37aa84c6df9b3ddb4609f3c09201b0580e.
1878         This makes nnimap groups not be activated.
1880 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
1882         Fix encoding problem introduced by previous patch series
1884         * lisp/gnus/rfc2047.el: Ditto (bug#22648).
1886         * lisp/gnus/rfc2231.el: Fix problem created by the
1887         mm-replace-in-string conversion.
1889 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
1891         Revert "Avoid defvarring prefix-less variables"
1893         This reverts commit 303390bda34f98b400798d5383cf0d722e35ba19.
1895         The defvars are needed if we're doing lexical-binding
1897 2016-02-12  Glenn Morris  <rgm@gnu.org>
1899         * test/lisp/url/url-auth-tests.el (url-auth-test-digest-auth):
1900         Make it pass.
1902         * test/lisp/url/url-auth-tests.el
1903         (url-auth-test-digest-auth-retrieve-cache): Fix obvious typo.
1905 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
1907         Finish up cl-defmethoding registry,el
1909         * lisp/gnus/registry.el (initialize-instance): Use cl-defmethod.
1911 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
1913         Revert the gnus-replace-in-string change, fix arguments, reapply
1915 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
1917         Silence more message.el compilation warnings
1919         * lisp/gnus/message.el (message-generate-headers): Don't use
1920         variable values directly to get the header values, because
1921         that breaks with lexical binding (without unprefixed defvars).
1923 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
1925         Fix various compilation warnings in message.el
1927         * lisp/gnus/message.el (message-fix-before-sending): Use
1928         read-multiple-choice instead of gnus-multiple-choice.
1929         (mm-util): Require.
1930         (rfc2047): Require.
1931         (message-remove-blank-cited-lines): Use message instead of
1932         gnus-message.
1933         (message-send): Use y-or-n-p instead of gnus-y-or-n-p.
1935 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
1937         Silence compilation warning in mm-view
1939         * lisp/gnus/mm-view.el (mm-display-inline-fontify): Silence
1940         compilation warning.
1942 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
1944         Fix epg-related compilation warnings in mml-sec
1946         * lisp/gnus/mml-sec.el: Fix compilation warnings from the epg
1947         library.
1949 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
1951         rmail-dont-reply-to-names is obsolete
1953         * lisp/gnus/nnmail.el (nnmail-fancy-expiry-target): Don't bind
1954         the obsolete `rmail-dont-reply-to-names' variable.
1956 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
1958         Partially revert the defmethod->cl-defmethod change in registry.el
1960         * lisp/gnus/registry.el (initialize-instance): Use defmethod,
1961         since cl-defmethod doesn't work with :after.
1962         (initialize-instance): Ditto, but with :before.
1964 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
1966         Avoid obsolete function in plstore
1968         * lisp/gnus/plstore.el (plstore--insert-buffer): Use setf
1969         instead of the obsolete epg-context-set-armor.
1971 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
1973         Use cl-defmethod in registry.el
1975         * lisp/gnus/registry.el: Use cl-defmethod instead of the
1976         obsolete defmethod.
1978 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
1980         Make sieve-manage require sasl
1982         * lisp/gnus/sieve-manage.el: Fix compilation warning by
1983         requiring sasl.
1985 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
1987         Avoid defvarring prefix-less variable
1989         * lisp/gnus/mm-uu.el (mm-uu-entry): Rename from `entry'.
1991 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
1993         * lisp/gnus/mailcap.el: Remove usage of mailcap-delete-duplicates.
1995 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
1997         Don't use the obsolete char-valid-p function
1999         * lisp/gnus/mm-url.el (mm-url-decode-entities): Don't use the
2000         obsolete char-valid-p function.
2002 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
2004         Fix missed translation in a previous commit
2006         * lisp/gnus/mailcap.el (mailcap-mime-types): Fix missed
2007         translation of mailcap-delete-duplicates.
2009 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
2011         Avoid using mm-make-temp-file
2013         * lisp/gnus/mail-source.el (mail-source-delete-crash-box): Ditto.
2015         * lisp/gnus/mm-decode.el (mm-display-external): Ditto.
2017         * lisp/gnus/mml-smime.el (mml-smime-openssl-encrypt): Ditto.
2019 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
2021         Fix compilation warning in gnus-start
2023         * lisp/gnus/gnus-start.el (gnus-slave-save-newsrc): Avoid
2024         mm-make-temp-file.
2026 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
2028         Avoid the obsoleted defmethod
2030         * lisp/gnus/gnus-icalendar.el: Use cl-defmethod instead of
2031         defmethod.
2033 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
2035         Avoid defvarring prefix-less variables
2037         * lisp/gnus/gnus-group.el (gnus-group-update-eval-form): We
2038         don't need to `defvar' the short variables to allow `eval' to
2039         use them.
2041 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
2043         nnweb doesn't need unibyte buffers
2045         * lisp/gnus/nnweb.el (nnweb-retrieve-headers)
2046         (nnweb-read-overview, nnweb-request-article)
2047         (nnweb-google-reference): Unibyte buffers are not needed here.
2049 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
2051         Encode before sending from nnspool
2053         * lisp/gnus/nnspool.el (nnspool-request-post): Encode data
2054         before sending it to the news server.
2056 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
2058         nnrss buffers don't have to be unibyte
2060         * lisp/gnus/nnrss.el (nnrss-insert): The buffer doesn't have
2061         to be unibyte just to receive data, I think.
2063 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
2065         Don't use mm-with-unibyte-current-buffer in mml2015
2067         * lisp/gnus/mml2015.el (mml2015-mailcrypt-encrypt): Don't use
2068         mm-with-unibyte-current-buffer.
2070 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
2072         Don't use mm-with-unibyte-current in mml1991
2074         * lisp/gnus/mml1991.el (mml1991-epg-sign): Don't use
2075         mm-with-unibyte-current.
2077 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
2079         Don't use mm-with-unibyte-current in mml1991
2081         * lisp/gnus/mml1991.el (mml1991-pgg-sign): Don't use
2082         mm-with-unibyte-current.
2084 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
2086         Don't use mm-with-unibyte-buffer in utf7
2088         * lisp/gnus/utf7.el (utf7-fragment-encode): Don't use
2089         mm-with-unibyte-buffer.
2091 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
2093         Remove XEmacs compat code from Gnus helper libraries
2095         * lisp/gnus/plstore.el (plstore-called-interactively-p): Remove.
2097         * lisp/gnus/pop3.el (pop3-make-date): Remove XEmacs compat.
2099         * lisp/gnus/sieve-mode.el: Remove XEmacs compat.
2101         * lisp/gnus/spam-stat.el (spam-stat-called-interactively-p): Remove.
2103 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
2105         Remove XEmacs compat code from Gnus backends
2107         * lisp/gnus/mm-view.el (mm-inline-image-xemacs): Remove.
2108         (mm-inline-image): Rename from mm-inline-image-emacs.
2110         * lisp/gnus/mml.el: Remove XEmacs compat code.
2112         * lisp/gnus/nnheader.el: Remove XEmacs compat code.
2114         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Remove
2115         XEmacs compat code.
2117         * lisp/gnus/nnir.el (nnir-run-gmane): Remove XEmacs compat code.
2119         * lisp/gnus/nnmail.el (nnmail-pathname-coding-system): Remove
2120         XEmacs compat code.
2122         * lisp/gnus/nnmairix.el: Remove XEmacs compat code.
2124         * lisp/gnus/nnrss.el: Remove XEmacs compat code.
2126         * lisp/gnus/nntp.el: Remove XEmacs compat code.
2128 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
2130         Remove XEmacs compat functions from mm-util.el
2132         * lisp/gnus/mm-util.el (mm-special-display-p): Remove.
2133         (mm-decode-coding-string, mm-encode-coding-string)
2134         (mm-decode-coding-region, mm-encode-coding-region): Remove.
2135         (mm-string-to-multibyte): Remove.
2136         (mm-char-or-char-int-p): Remove.
2137         (mm-ucs-to-char): Remove compat versions of the function.
2138         (mm-read-coding-system): Remove.
2139         (mm-coding-system-p): Remove compat code.
2140         (mm-enrich-utf-8-by-mule-ucs): Remove.
2141         (mm-enable-multibyte, mm-disable-multibyte): Remove compat versions.
2142         (mm-delete-duplicates): Remove.
2143         (mm-multibyte-p): Remove compat versions.
2144         (mm-xemacs-find-mime-charset-1): Remove.
2145         (mm-xemacs-find-mime-charset): Remove.
2146         (mm-make-temp-file): Made obsolete.
2147         (mm-find-buffer-file-coding-system): Remove XEmacs compat.
2149 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
2151         Remove Message and mm-decode XEmacs compat code
2153         * lisp/gnus/message.el: Remove XEmacs compat code.
2155         * lisp/gnus/mm-decode.el (mm-create-image-xemacs): Remove.
2157         * lisp/gnus/mm-util.el: Remove some XEmacs compat code.
2159 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
2161         Remove som XEmacs compat code from message.el
2163         * lisp/gnus/message.el: Remove some XEmacs compat code.
2165 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
2167         Remove XEmacs compat code from ietf-drums.el
2169         * lisp/gnus/ietf-drums.el (ietf-drums-syntax-table): Drop
2170         XEmacs compat.
2172 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
2174         Remove XEmacs compat code from gravatar.el
2176         * lisp/gnus/gravatar.el: Remove XEmacs compat code from
2177         gravatar.el.
2179 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
2181         Remove more XEmacs compat code from Gnus
2183         * lisp/gnus/gnus-util.el (gnus-bound-and-true-p): Remove.
2184         (gnus-timer--function): Remove.
2186         * lisp/gnus/gnus-uu.el (gnus-uu-save-article): Remove XEmacs
2187         19.2 compat.
2189         * lisp/gnus/gnus-win.el: Remove XEmacs compat code.
2191 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
2193         Remove more XEmacs compat functions from gnus-util.el
2195         * lisp/gnus/gnus-util.el (gnus-put-display-table): Remove.
2196         (gnus-get-display-table): Remove.
2197         (gnus-format-message): Remove.
2199 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
2201         Remove more XEmacs compat functions from Gnus
2203         * lisp/gnus/gnus-util.el (gnus-next-char-property-change): Remove.
2204         (gnus-previous-char-property-change): Remove.
2205         (gnus-graphic-display-p): Remove.
2206         (gnus-select-frame-set-input-focus): Remove.
2208 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
2210         Remove more XEmacs compat code from gnus-util
2212         * lisp/gnus/gnus-util.el (gnus-make-local-hook): Remove (and
2213         all its usages).
2214         (gnus-invisible-p): Remove.
2216 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
2218         Remove gnus-make-local-hook
2220         * lisp/gnus/gnus-util.el (gnus-make-local-hook): Remove (and
2221         all its usages).
2223 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
2225         gnus-replace-in-string -> replace-regexp-in-string
2227         * lisp/gnus/gnus-util.el (gnus-replace-in-string): Declare
2228         obsolete.  Transform all usages of it into
2229         replace-regexp-in-string.
2231         * lisp/gnus/mailcap.el (mailcap-replace-in-string): Remove.
2233 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
2235         Remove Gnus XEmacs compat
2237         * lisp/gnus/gnus-start.el (gnus-dribble-enter): Remove comment
2238         about code that doesn't work in XEmacs.
2240         * lisp/gnus/gnus-sum.el: Remove XEmacs compat.
2242         * lisp/gnus/gnus-topic.el: Remove XEmacs compat.
2244 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
2246         Remove compat functions in gnus-spec.el
2248         * lisp/gnus/gnus-spec.el (gnus-string-width-function): Remove.
2249         (gnus-substring-function): Remove.
2250         (gnus-use-correct-string-widths): Remove.
2251         (gnus-make-format-preserve-properties): Remove.
2252         (gnus-xmas-format): Remove.
2254         * lisp/gnus/gnus-srvr.el (gnus-server-mode): Remove XEmacs compat.
2256 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
2258         Remove Gnus XEmacs compat functions
2260         * lisp/gnus/gnus-registry.el: Remove XEmacs compat.
2262         * lisp/gnus/gnus-salt.el: Remove XEmacs compat.
2264         * lisp/gnus/gnus-score.el (gnus-decay-score): Remove XEmacs compat.
2266 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
2268         Remove Gnus XEmacs compatibility
2270         * lisp/gnus/gnus-demon.el (gnus-demon-idle-since): Remove
2271         XEmacs compat.
2273         * lisp/gnus/gnus-dired.el: Remove XEmacs compat.
2275         * lisp/gnus/gnus-draft.el: Remove XEmacs compat.
2277         * lisp/gnus/gnus-gravatar.el (gnus-gravatar-insert): Remove
2278         XEmacs compat.
2280         * lisp/gnus/gnus-group.el: Remove XEmacs compat.
2282         * lisp/gnus/gnus-html.el: Remove XEmacs compat.
2284         * lisp/gnus/gnus-ml.el: Remove XEmacs compat.
2286         * lisp/gnus/gnus-picon.el (gnus-picon-style): Remove XEmacs comment.
2288 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
2290         Don't use image-map if it isn't defined
2292         * lisp/net/shr.el (shr-image-map): Only use image-map as a
2293         parent if it's defined (bug#22614).
2295 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
2297         Check for MagickAutoOrientImage
2299         * configure.ac: Check for MagickAutoOrientImage.
2301         * src/image.c (imagemagick_load_image): Don't use
2302         MagickAutoOrientImage unless it's available.
2304 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
2306         Document EXIF image rotation
2308         * doc/lispref/display.texi (ImageMagick Images): Mention EXIF rotation.
2310 2016-02-10  Dima Kogan  <dima@secretsauce.net>
2312         Support integer image rotation and respect EXIF rotations
2314         * src/image.c (imagemagick_load_image): Allow integer rotations in
2315         addition to floating point rotations (bug#22591).
2316         * src/image.c (imagemagick_load_image): Images that have an
2317         orientation given in EXIF and have no explicit :rotation tag are now
2318         pre-rotated.  All information such as width/height is reported for the
2319         rotated image.
2321 2016-02-10  Wolfgang Jenkner  <wjenkner@inode.at>
2323         * lisp/net/shr.el (image-map): Defvar it.  (Bug#22614)
2325 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
2327         * lisp/gnus/gnus-cite.el: Remove XEmacs compat code.
2329 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
2331         Remove compat code from gnus-bookmark.el
2333         * lisp/gnus/gnus-bookmark.el (gnus-bookmark-mouse-available-p): Remove.
2334         (gnus-bookmark-remove-properties): Remove.
2336 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
2338         Remove XEmacs compat code from gnus-a*.el
2340         * lisp/gnus/gnus-agent.el: Remove compat code.
2342         * lisp/gnus/gnus-art.el: Remove compat code.
2344         * lisp/gnus/gnus-async.el: Remove compat code.
2346 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
2348         Remove gmm compat functions
2350         * lisp/gnus/gmm-utils.el (gmm-image-search-load-path): Remove.
2351         (gmm-write-region): Remove.
2352         (gmm-called-interactively-p): Remove.
2354 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
2356         * lisp/gnus/ecomplete.el: Remove XEmacs compat code.
2358 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
2360         Remove compat code from compface.el
2362         * lisp/gnus/compface.el: Remove XEmacs compat code throughout.
2364 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
2366         Remove the now empty gnus-ems.el and references to it
2368 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
2370         Remove Gnus compat names for mouse bindings
2372         * lisp/gnus/gnus-ems.el (gnus-widget-button-keymap): Remove.
2373         (gnus-down-mouse-2): Remove.
2374         (gnus-down-mouse-3): Remove.
2376 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
2378         Drop Gnus compat functions
2380         * lisp/gnus/gnus-ems.el (gnus-mule-max-width-function): Remove.
2382         * lisp/gnus/gnus-util.el (gnus-kill-all-overlays): Move here.
2384         * lisp/gnus/gnus.el (gnus-mode-line-modified): Remove.
2386 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
2388         Get rid of gnus-ems-redefine
2390         * lisp/gnus/gnus-ems.el (gnus-mouse-face-prop): Remove.
2392 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
2394         * lisp/gnus/gnus-spec.el: Move definition here from gnus-ems.el.
2396 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
2398         Remove Gnus compat code
2400         * lisp/gnus/gnus-ems.el (gnus-ems-redefine): Remove
2401         transitional code from ten years ago.
2403 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
2405         Allow interactively scaling past :max-width etc
2407         * lisp/image.el (image--current-scaling)
2408         (image--image-without-parameters): New functions.
2409         (image--change-size): Use them to allow changing the size of a
2410         image even if it has :width/:max-width (etc.) already set.
2412 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
2414         * lisp/gnus/mm-decode.el (shr-image-map): Compilation fix.
2416 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
2418         Allow accessing the image commands via shr
2420         * lisp/gnus/mm-decode.el (mm-convert-shr-links): Allow
2421         accessing the image commands.
2423         * lisp/net/shr.el (shr-image-map): New map used for images.
2424         (shr-urlify): Don't overwrite image maps when applying URL maps.
2426 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
2428         Use a sparse image keymap
2430         * lisp/image.el (image-map): Use a sparse keymap.
2432 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
2434         Put a keymap on images created with insert-image and friends
2436         * lisp/image.el (image-save): New command.
2437         (image-rotate): Ditto.
2438         (image-map): New keymap.
2439         (insert-image): Put the image-map on all images.
2440         (insert-sliced-image): Ditto.
2441         * doc/lispref/display.texi (Showing Images): Document the
2442         image map.
2444 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
2446         Fix some folding issues in read-multiple-choice
2448         * lisp/subr.el (read-multiple-choice): Fix folding when you
2449         have many items.
2451 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
2453         Fix typo in last checkin
2455 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
2457         Remove Gnus compat functions
2459         * lisp/gnus/gnus-ems.el (gnus-mark-active-p)
2460         (gnus-region-active-p, gnus-select-lowest-window)
2461         (gnus-summary-display-table, gnus-max-width-function): Remove
2462         compat functions.
2464 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
2466         Move non-compat Gnus functions to gnus-util.el
2468         * lisp/gnus/gnus-util.el (gnus-remove-image, gnus-put-image)
2469         (gnus-create-image, gnus-image-type-available-p): Move here
2470         from gnus-ems.el, since these aren't compat functions.
2472 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
2474         Omit valloc decl if redundant
2476         * src/gmalloc.c (valloc): Omit decl if malloc.h is included,
2477         to pacify --enable-gcc-warnings.
2479 2016-02-09  Wolfgang Jenkner  <wjenkner@inode.at>
2481         Restore the calloc family.
2483         * src/gmalloc.c (calloc, gcalloc, hybrid_calloc): Restore definitions.
2484         They were lost in a4817d8 but calloc is still (marginally) used in
2485         code statically liked with emacs, so hybrid_calloc is needed.
2486         Also, in the non-hybrid case, we can't get rid of calloc anyway as
2487         other libraries liked with emacs may need it.
2488         * src/conf_post.h: Restore redefinition of calloc to hybrid_calloc.
2490 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
2492         Remove some Gnus compat functions
2494         * lisp/gnus/gnus-ems.el (gnus-string-mark-left-to-right)
2495         (gnus-window-inside-pixel-edges, gnus-set-process-plist)
2496         (gnus-process-plist, gnus-process-get, gnus-process-put): Remove.
2498 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
2500         -
2502         -
2504 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
2506         Merge from origin/emacs-25
2508         4feb962 * lisp/comint.el (comint-prompt-read-only): Clean tabs in docstring
2509         cc419fb Don't inloop gnus-uu-mark-thread on the last thread
2510         51c77a2 Display non-ASCII group names better in prompts
2511         f93d669 Default to gpg2 instead of gpg
2513 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
2515         Merge from origin/emacs-25
2517         9ffe7dd * lisp/isearch.el (isearch-define-mode-toggle): Improve logic
2518         16140f7 * lisp/menu-bar.el (menu-bar-options-menu): New search submenu
2519         3db6adb * lisp/isearch.el (search-default-mode)
2520         4ea1ea7 * lisp/isearch.el: Rename search-default-regexp-mode to search-default-mode
2521         c77ffc8 Use monitor's resolution for positioning tooltips
2522         49e5749 Fix file-notify-test on MS-Windows
2523         be1d874 Fix issues found by auditing w32notify code
2524         87ae218 Extend etags Ruby support for accessors
2525         aa35257 Update publicsuffix.txt.
2526         6816bff Ensure that Gnus dribble handling allows removing entries
2527         691feae Be consistent when using encoded strings in nnimap data
2528         3ed423b Display the decoded Gnus group name
2529         5428b5b Use completion-ignore-case instead of defining command
2531 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
2533         Merge from origin/emacs-25
2535         1eaf68f * test/automated/file-notify-tests.el (file-notify-test06-many-events):
2536         d333716 ; * etc/NEWS: Expand news entry for scss-mode
2537         c32c16f ; Better document changes in ls-lisp default behavior
2538         dc6eed2 Fix doc string of tls-program
2540 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
2542         Merge from origin/emacs-25
2544         2c117fc * etc/NEWS: Document new mpc.el features
2545         71a0496 * lisp/custom.el (defface): Revert indentation change.  (Bug#22524)
2546         9dfece1 Correctly fontify C++ initializations which "look like" functions.
2547         4485222 Improve newsticker-treeview-selection-face
2548         4236944 Minor fix in tagging Ruby accessors by etags
2549         35fc77d Spelling fixes
2550         3dda110 Remove 'def X' from the example
2552 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
2554         Minor alignas cleanup
2556         * src/lisp.h (alignas): Remove now-redundant #ifdef that was left
2557         over from the old way of doing things, before Bug#20862 was fixed.
2559 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
2561         Add lmalloc commentary and tweak laligned
2563         * src/alloc.c (laligned): Help compiler in a tiny way by putting
2564         the more-commonly-failing disjunct first.
2566 2016-02-09  Eli Zaretskii  <eliz@gnu.org>
2568         Clarify documentation of key binding conventions
2570         * doc/lispref/tips.texi (Key Binding Conventions): Clarify which
2571         "punctuation characters" are reserved after "C-c".  (Bug#22604)
2573 2016-02-09  Oscar Fuentes  <ofv@wanadoo.es>
2575         * etc/NEWS: mention the `vc-faces' customization group
2577 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
2579         Sync with gnulib
2581         This incorporates:
2582         2016-02-09 stdalign: port to clang 3.7.0
2583         2016-02-06 misc: port better to gcc -fsanitize=address
2584         * doc/misc/texinfo.tex, lib/stdalign.in.h, m4/acl.m4, m4/getgroups.m4:
2585         Copy from gnulib.
2587 2016-02-09  Michael Albinus  <michael.albinus@gmx.de>
2589         * CONTRIBUTE: Add more examples for $(SELECTOR) make variable.
2591 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
2593         Make mm-html-inhibit-images and mm-html-blocked-images default to nil
2595         * lisp/gnus/mm-decode.el (mm-html-inhibit-images)
2596         (mm-html-blocked-images): Default to nil.
2598         * doc/misc/emacs-mime.texi (Display Customization): Mention that
2599         mm-html-inhibit-images and mm-html-blocked-images default to nil.
2601         * etc/NEWS (Gnus): Document mm-html-inhibit-images and
2602         mm-html-blocked-images.
2604 2016-02-08  Paul Eggert  <eggert@cs.ucla.edu>
2606         Increase success rate of fallback lmalloc
2608         * src/alloc.c (lmalloc, lrealloc): Reallocate with (typically)
2609         larger and larger sizes, to increase the probability that
2610         the allocator will return a Lisp-aligned pointer.
2612 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
2614         Make backgrounds extend to the end of the lines in shr
2616         * lisp/net/shr.el (shr-face-background): Faces can also be on
2617         the form `(:background "#fff)' (bug#22547).
2619 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
2621         Make the `R' command get the correct relative <img>s
2623         * lisp/net/eww.el (eww-readable): Preserve the base URL so
2624         that image expansions are fetched from the right place (bug#22605).
2626         (cherry picked from commit 8722e849f75ceafb82a1c17105e8ab76077a8ebc)
2628         Backport:
2630 2016-02-08  Mike Kupfer  <m.kupfer@acm.org>
2632         Fix typos in emacs-mime.texi and gnus.texi
2634         * doc/misc/emacs-mime.texi (Display Customization):
2635         * doc/misc/gnus.texi (HTML): Fix typo.
2637 2016-02-08  Katsumi Yamaoka  <yamaoka@jpl.org>
2639         * doc/misc/emacs-mime.texi (Display Customization):
2640         Doc fix for mm-html-inhibit-images.
2642 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
2644         Fix message-cross-post-followup-to group names
2646         * lisp/gnus/message.el (message-cross-post-followup-to): Don't
2647         insert group names like "nntp+foo:zot", because those aren't valid.
2649 2016-02-08  David Edmondson  <dme@dme.org>
2651         Compare recipient and keys case-insensitively
2653         * lisp/gnus/mml2015.el: (mml-secure-check-user-id): When comparing a
2654         recipient address with that from a key, do so in a case insensitive
2655         manner (bug#22603).
2657 2016-02-08  Glenn Morris  <rgm@gnu.org>
2659         * lisp/gnus/mm-decode.el (mm-alist-to-plist): Doc fix.
2661 2016-02-08  Katsumi Yamaoka  <yamaoka@jpl.org>
2663         Refactor HTML images handling of Gnus and mm-* (a part of bug#21650)
2665         * doc/misc/emacs-mime.texi (Display Customization):
2666         Remove mm-inline-text-html-with-images; add documentations for
2667         mm-html-inhibit-images and mm-html-blocked-images.
2669         * lisp/gnus/gnus-art.el (gnus-article-show-images):
2670         No need to bind mm-inline-text-html-with-images.
2671         (gnus-bind-safe-url-regexp): Rename to gnus-bind-mm-vars.
2672         (gnus-bind-mm-vars): Rename from gnus-bind-safe-url-regexp;
2673         bind mm-html-inhibit-images and mm-html-blocked-images.
2674         (gnus-mime-view-all-parts, gnus-mime-view-part-internally)
2675         (gnus-mm-display-part, gnus-mime-display-single)
2676         (gnus-mime-display-alternative): Use gnus-bind-mm-vars.
2678         * lisp/gnus/mm-decode.el (mm-inline-text-html-with-images): Remove.
2679         (mm-html-inhibit-images, mm-html-blocked-images): New user options.
2680         (mm-shr): Bind shr-inhibit-images and shr-blocked-images with
2681         mm-html-inhibit-images and mm-html-blocked-images respectively
2682         instead of gnus-inhibit-images and gnus-blocked-images.
2684         * lisp/gnus/mm-view.el (mm-setup-w3m): Use mm-html-inhibit-images
2685         instead of mm-inline-text-html-with-images.
2687 2016-02-08  Paul Eggert  <eggert@cs.ucla.edu>
2689         Port to FreeBSD 11-CURRENT i386
2691         Problem reported by Herbert J. Skuhra in:
2692         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00354.html
2693         Instead of trying
2694         * src/alloc.c (lmalloc, lrealloc, laligned): New functions.
2695         (xmalloc, xzalloc, xrealloc, lisp_malloc): Use them.
2696         (__alignof__) [!__GNUC__ && !__alignof__]: New macro.
2697         (MALLOC_IS_GC_ALIGNED): New macro.
2698         * src/lisp.h (NONPOINTER_BITS): Remove.  All uses removed.
2699         No longer needed now that alloc.c uses lmalloc and lrealloc.
2701 2016-02-08  Michael Albinus  <michael.albinus@gmx.de>
2703         Some fixes in file-notify-tests.el
2705         * test/automated/file-notify-tests.el
2706         (file-notify--test-with-events-check)
2707         (file-notify--test-with-events-explainer): New defuns.
2708         (file-notify--test-with-events): Use it.
2709         (file-notify-test07-backup): Fix docstring.  Some of the
2710         backends fire two `changed' events.  Backup by rename doesn't
2711         work for kqueue.
2713 2016-02-07  Michael Albinus  <michael.albinus@gmx.de>
2715         Fix Bug#22557
2717         * lisp/filenotify.el (file-notify-callback): Do not send a
2718         `stopped' event in case of backup by renaming.  (Bug#22557)
2720         * test/automated/Makefile.in: Use $(SELECTOR_EXPENSIVE) for
2721         all targets but check and check-maybe.
2723         * test/automated/file-notify-tests.el
2724         (file-notify--test-read-event-timeout): New defconst.
2725         (file-notify--deftest-remote, file-notify--wait-for-events)
2726         (file-notify-test02-events)
2727         (file-notify-test04-file-validity)
2728         (file-notify-test06-many-events): Use it.
2729         (file-notify--test-cleanup): Make it more robust.  Delete also
2730         backup file.
2731         (file-notify-test07-backup): New test.
2733 2016-02-07  Paul Eggert  <eggert@cs.ucla.edu>
2735         Fix test for dladdr
2737         Problem reported by Andreas Schwab in:
2738         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00327.html
2739         * configure.ac (dladdr): Link with LIBMODULES when checking for
2740         this function.
2742 2016-02-07  Andreas Schwab  <schwab@linux-m68k.org>
2744         Fix gnus-group-get-new-news-this-group on group with closed server
2746         * lisp/gnus/nnimap.el (nnimap-change-group): Lookup server
2747         method and pass to nnimap-open-server.
2749 2016-02-07  Artur Malabarba  <bruce.connor.am@gmail.com>
2751         * lisp/comint.el (comint-prompt-read-only): Clean tabs in docstring
2753         While tabs in code are mostly fine because the Emacs sources have a
2754         .dir-locals file specifying tab-width, the same is not true of tabs in
2755         code examples inside docstrings.  The docstring is printed on a *Help*
2756         buffer, which can be created on any directory and won't necessarily have
2757         the same tab-width set.
2759 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
2761         Don't inloop gnus-uu-mark-thread on the last thread
2763         * lisp/gnus/gnus-uu.el (gnus-uu-mark-thread): Don't infloop on the
2764         final thread in the summary buffer (bug#16666).
2766 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
2768         Display non-ASCII group names better in prompts
2770         * lisp/gnus/gnus-sum.el (gnus-articles-to-read): To decode the
2771         group name, we have to do that before we remove the prefix.
2773 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
2775         Default to gpg2 instead of gpg
2777         * lisp/epg-config.el (epg-gpg-program): Prefer gpg2 over gpg, if
2778         it exists.  This fixes many problems with using the GPG
2779         authentication agent.
2781 2016-02-06  David Edmondson  <dme@dme.org>
2783         src/process.c Correctly convert AF_INET6 addresses
2785         * src/process.c (conv_lisp_to_sockaddr): AF_INET6 addresses are
2786         converted to a list of 16 bit quantities by
2787         conv_sockaddr_to_lisp(). conv_lisp_to_sockaddr() should follow the
2788         same scheme rather than expecting a (longer) list of 8 bit
2789         quantities.
2791         Backport:
2793         (cherry picked from commit 55ce3c30d617c38eb086d5ad4ffbd881c20c559c)
2795 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
2797         * lisp/isearch.el (isearch-define-mode-toggle): Improve logic
2799 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
2801         * lisp/menu-bar.el (menu-bar-options-menu): New search submenu
2803         (menu-bar-search-options-menu): New variable
2805 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
2807         * lisp/isearch.el (search-default-mode)
2809         (isearch-regexp-function): Improve docstrings.
2811 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
2813         * lisp/isearch.el: Rename search-default-regexp-mode to search-default-mode
2815         (search-default-mode): New variable.
2816         (isearch-mode, isearch-define-mode-toggle)
2817         (isearch--describe-regexp-mode): Update accordingly.
2818         * lisp/menu-bar.el (nonincremental-search-forward): Update accordingly.
2819         * etc/NEWS: Update accordingly.
2820         * doc/emacs/search.texi: Update accordingly.
2822 2016-02-06  Oscar Fuentes  <ofv@wanadoo.es>
2824         Use monitor's resolution for positioning tooltips
2826         * src/xfns.c (compute_tip_xy): Use the resolution of the monitor where
2827           the mouse pointer is to avoid placing the tooltip over the border of
2828           the monitor on multi-head displays. Fixes bug#22549.
2830 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
2832         Fix file-notify-test on MS-Windows
2834         * test/automated/file-notify-tests.el (file-notify--test-timeout):
2835         Reduce w32notify timeout to 10 sec.
2836         (file-notify-test06-many-events): Call read-event after each
2837         rename, to keep the w32notify backend happy in batch mode.
2838         (Bug#22534)
2840 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
2842         Fix issues found by auditing w32notify code
2844         * src/w32inevt.c (handle_file_notifications): Count the number of
2845         events to be returned.
2846         * src/w32notify.c (send_notifications): Don't copy to the file
2847         notification buffer more than it can hold.  (Bug#22534)
2849 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
2851         Extend etags Ruby support for accessors
2853         * lib-src/etags.c (Ruby_functions): Support accessors defined with
2854         parentheses.  (Bug#22563)
2856         * test/etags/ruby-src/test1.ru (A::B): Add tests for accessors
2857         defined with parentheses.
2858         * test/etags/ETAGS.good_1:
2859         * test/etags/ETAGS.good_2:
2860         * test/etags/ETAGS.good_3:
2861         * test/etags/ETAGS.good_4:
2862         * test/etags/ETAGS.good_5:
2863         * test/etags/ETAGS.good_6:
2864         * test/etags/CTAGS.good: Adapt to changes in Ruby tests.
2866 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
2868         Update publicsuffix.txt.
2870         * etc/publicsuffix.txt: Updated from
2871         https://publicsuffix.org/list/public_suffix_list.dat.
2873 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
2875         Ensure that Gnus dribble handling allows removing entries
2877         * lisp/gnus/gnus-start.el (gnus-dribble-enter): Ensure that each
2878         entry is on a single line.
2880 2016-02-05  OGAWA Hirofumi  <hirofumi@mail.parknet.co.jp>  (tiny change)
2882         Be consistent when using encoded strings in nnimap data
2884         * lisp/gnus/nnimap.el (nnimap-encode-gnus-group): New function
2885         (nnimap-request-list): Use it.
2886         (nnimap-request-newgroups): Ditto.
2888 2016-02-05  OGAWA Hirofumi  <hirofumi@mail.parknet.co.jp>  (tiny change)
2890         Display the decoded Gnus group name
2892         * lisp/gnus/gnus-sum.el (gnus-summary-read-group-1): Use the
2893         decoded group name in the message.
2895 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
2897         Use completion-ignore-case instead of defining command
2899         * lisp/erc/erc.el (erc-mode): Set completion-ignore-case so
2900         that we get case-insensitive completion.
2901         (erc-completion-at-point): Remove.
2903 2016-02-05  Eli Zaretskii  <eliz@gnu.org>
2905         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
2907 2016-02-05  Michael Albinus  <michael.albinus@gmx.de>
2909         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
2911         Reduce the number of iterations to 250 in case of w32notify.
2913 2016-02-05  Eli Zaretskii  <eliz@gnu.org>
2915         Fix problems caused by new implementation of sub-word mode
2917         * lisp/subr.el (forward-word-strictly, backward-word-strictly):
2918         New functions.
2919         (word-move-empty-char-table): New variable.
2921         * etc/NEWS: Mention 'forward-word-strictly' and
2922         'backward-word-strictly'.
2924         * doc/lispref/positions.texi (Word Motion): Document
2925         'find-word-boundary-function-table', 'forward-word-strictly', and
2926         'backward-word-strictly'.  (Bug#22560)
2928         * src/syntax.c (syms_of_syntax)
2929         <find-word-boundary-function-table>: Doc fix.
2931         * lisp/wdired.el (wdired-xcase-word):
2932         * lisp/textmodes/texnfo-upd.el (texinfo-copy-node-name)
2933         (texinfo-copy-section-title, texinfo-start-menu-description)
2934         (texinfo-copy-menu-title, texinfo-specific-section-type)
2935         (texinfo-insert-node-lines, texinfo-copy-next-section-title):
2936         * lisp/textmodes/texinfo.el (texinfo-clone-environment)
2937         (texinfo-insert-@end):
2938         * lisp/textmodes/texinfmt.el (texinfo-format-scan)
2939         (texinfo-anchor, texinfo-multitable-widths)
2940         (texinfo-multitable-item):
2941         * lisp/textmodes/tex-mode.el (latex-env-before-change):
2942         * lisp/textmodes/flyspell.el (texinfo-mode-flyspell-verify):
2943         * lisp/skeleton.el (skeleton-insert):
2944         * lisp/simple.el (count-words):
2945         * lisp/progmodes/vhdl-mode.el (vhdl-beginning-of-libunit)
2946         (vhdl-beginning-of-defun, vhdl-beginning-of-statement-1)
2947         (vhdl-update-sensitivity-list, vhdl-template-block)
2948         (vhdl-template-break, vhdl-template-case, vhdl-template-default)
2949         (vhdl-template-default-indent, vhdl-template-for-loop)
2950         (vhdl-template-if-then-use, vhdl-template-bare-loop)
2951         (vhdl-template-nature, vhdl-template-procedural)
2952         (vhdl-template-process, vhdl-template-selected-signal-asst)
2953         (vhdl-template-type, vhdl-template-variable)
2954         (vhdl-template-while-loop, vhdl-beginning-of-block)
2955         (vhdl-hooked-abbrev, vhdl-port-copy, vhdl-hs-forward-sexp-func):
2956         * lisp/progmodes/verilog-mode.el (verilog-backward-sexp)
2957         (verilog-forward-sexp, verilog-beg-of-statement)
2958         (verilog-set-auto-endcomments, verilog-backward-token)
2959         (verilog-do-indent):
2960         * lisp/progmodes/vera-mode.el (vera-guess-basic-syntax)
2961         (vera-indent-block-closing):
2962         * lisp/progmodes/simula.el (simula-context)
2963         (simula-backward-up-level, simula-forward-down-level)
2964         (simula-previous-statement, simula-next-statement)
2965         (simula-skip-comment-backward, simula-calculate-indent)
2966         (simula-find-if, simula-electric-keyword):
2967         * lisp/progmodes/sh-script.el (sh-smie--rc-newline-semi-p):
2968         * lisp/progmodes/ruby-mode.el (ruby-smie--redundant-do-p)
2969         (ruby-smie--forward-token, ruby-smie--backward-token)
2970         (ruby-singleton-class-p, ruby-calculate-indent)
2971         (ruby-forward-sexp, ruby-backward-sexp):
2972         * lisp/progmodes/ps-mode.el (ps-run-goto-error):
2973         * lisp/progmodes/perl-mode.el (perl-syntax-propertize-function)
2974         (perl-syntax-propertize-special-constructs)
2975         (perl-backward-to-start-of-continued-exp):
2976         * lisp/progmodes/pascal.el (pascal-indent-declaration):
2977         * lisp/progmodes/octave.el (octave-function-file-p):
2978         * lisp/progmodes/mantemp.el (mantemp-insert-cxx-syntax):
2979         * lisp/progmodes/js.el (js--forward-function-decl):
2980         * lisp/progmodes/idlwave.el (idlwave-show-begin-check)
2981         (idlwave-beginning-of-block, idlwave-end-of-block)
2982         (idlwave-block-jump-out, idlwave-determine-class):
2983         * lisp/progmodes/icon.el (icon-is-continuation-line)
2984         (icon-backward-to-start-of-continued-exp, end-of-icon-defun):
2985         * lisp/progmodes/hideif.el (hide-ifdef-define):
2986         * lisp/progmodes/f90.el (f90-change-keywords):
2987         * lisp/progmodes/cperl-mode.el (cperl-electric-pod)
2988         (cperl-linefeed, cperl-electric-terminator)
2989         (cperl-find-pods-heres, cperl-fix-line-spacing)
2990         (cperl-invert-if-unless):
2991         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur):
2992         * lisp/progmodes/cc-align.el (c-lineup-java-inher):
2993         * lisp/progmodes/ada-mode.el (ada-compile-goto-error)
2994         (ada-adjust-case-skeleton, ada-create-case-exception)
2995         (ada-create-case-exception-substring)
2996         (ada-case-read-exceptions-from-file, ada-after-keyword-p)
2997         (ada-scan-paramlist, ada-get-current-indent, ada-get-indent-end)
2998         (ada-get-indent-if, ada-get-indent-block-start)
2999         (ada-get-indent-loop, ada-get-indent-type)
3000         (ada-search-prev-end-stmt, ada-check-defun-name)
3001         (ada-goto-decl-start, ada-goto-matching-start)
3002         (ada-goto-matching-end, ada-looking-at-semi-or)
3003         (ada-looking-at-semi-private, ada-in-paramlist-p)
3004         (ada-search-ignore-complex-boolean, ada-move-to-start)
3005         (ada-move-to-end, ada-which-function, ada-gen-treat-proc):
3006         * lisp/net/quickurl.el (quickurl-grab-url):
3007         * lisp/mail/sendmail.el (mail-do-fcc):
3008         * lisp/mail/rmail.el (rmail-resend):
3009         * lisp/mail/mailabbrev.el (mail-abbrev-complete-alias):
3010         * lisp/mail/mail-extr.el (mail-extract-address-components):
3011         * lisp/json.el (json-read-keyword):
3012         * lisp/files.el (insert-directory):
3013         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
3014         * lisp/completion.el (symbol-under-point, symbol-before-point)
3015         (symbol-before-point-for-complete, next-cdabbrev)
3016         (add-completions-from-c-buffer):
3017         * lisp/cedet/semantic/texi.el (semantic-up-context)
3018         (semantic-beginning-of-context):
3019         * lisp/cedet/semantic/bovine/el.el (semantic-get-local-variables):
3020         use 'forward-word-strictly' and 'backward-word-strictly' instead
3021         of 'forward-word' and 'backward-word'.
3023 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
3025         Fix doc string of tls-program
3027         * lisp/net/tls.el (tls-program): Document the %t parameter (bug#22559).
3029 2016-02-05  Mark Oteiza  <mvoteiza@udel.edu>
3031         * etc/NEWS: Document new mpc.el features
3033 2016-02-04  Leo Liu  <sdl.web@gmail.com>
3035         * lisp/custom.el (defface): Revert indentation change.  (Bug#22524)
3037 2016-02-04  Alan Mackenzie  <acm@muc.de>
3039         Correctly fontify C++ initializations which "look like" functions.
3041         Fixes bug#7579.
3043         lisp/progmodes/cc-engine.el (c-forward-declarator): Add extra optional
3044         parameter to enable handling of "anonymous" declarators in declarations.
3046         lisp/progmodes/cc-fonts.el (c-font-lock-declarators): Check more rigorously
3047         whether a "(" opens a parameter list of a function, or an initialization of a
3048         variable.
3050 2016-02-04  Ulf Jasper  <ulf.jasper@web.de>
3052         Improve newsticker-treeview-selection-face
3054         * newst-treeview.el (newsticker-treeview-selection-face): Improve
3055         readability for dark background.
3057 2016-02-04  Eli Zaretskii  <eliz@gnu.org>
3059         Minor fix in tagging Ruby accessors by etags
3061         * lib-src/etags.c (Ruby_functions): Don't tag accessors whose
3062         names are not literal symbols.  (Bug#22241)
3064 2016-02-04  Paul Eggert  <eggert@cs.ucla.edu>
3066         Spelling fixes
3068 2016-02-04  Dmitry Gutov  <dgutov@yandex.ru>
3070         Remove 'def X' from the example
3072         * test/etags/ruby-src/test1.ru (A::B): Remove 'def X'
3073         (http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00167.html).
3074         * test/etags/CTAGS.good:
3075         * test/etags/ETAGS.good_1:
3076         * test/etags/ETAGS.good_2:
3077         * test/etags/ETAGS.good_3:
3078         * test/etags/ETAGS.good_4:
3079         * test/etags/ETAGS.good_5:
3080         * test/etags/ETAGS.good_6: Adjust accordingly.
3082 2016-02-09  Eli Zaretskii  <eliz@gnu.org>
3084         Fix network-stream-tests on MS-Windows
3086         * test/lisp/net/network-stream-tests.el (make-local-unix-server):
3087         Skip if local sockets are not supported.
3089 2016-02-09  Michael Albinus  <michael.albinus@gmx.de>
3091         * admin/notes/bug-triage: Fix bug priorities.  Explain colors in debbugs-gnu.
3093 2016-02-09  Eli Zaretskii  <eliz@gnu.org>
3095         Disable 'timer-list'
3097         * lisp/emacs-lisp/timer-list.el: Make 'timer-list' a disabled
3098         command.
3100 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
3102         Avoid aligned_alloc static/extern collision
3104         * src/alloc.c (aligned_alloc): Define to private name when a
3105         static function, to avoid collision with lisp.h extern decl.
3106         Reported by John Yates in:
3107         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00439.html
3109 2016-02-08  Michal Nazarewicz  <mina86@mina86.com>
3111         Make `message-beginning-of-line' aware of folded headers
3113         * lisp/gnus/message.pl (message-beginning-of-header): New function which
3114         moves point to the beginning of a mail header.  The function is aware of
3115         folded headers and with non-nil argument looks for the true beginning of
3116         a header while with nil argument moves to the indented text of header's
3117         value.
3118         (message-beginning-of-line): Function is now aware of folded headers and
3119         either moves point to the indention of a header or, in visual-line-mode,
3120         searches for the beginning of the header.
3122 2016-02-08  Michal Nazarewicz  <mina86@mina86.com>
3124         Optimise ‘point in message header’ check
3126         * lisp/gnus/message.el (message-point-in-header-p): Replace two unbound
3127         regular expression matches with a single bound string match thus
3128         reducing amount of work the function is doing.
3130 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
3132         Make the `R' command get the correct relative <img>s
3134         * lisp/net/eww.el (eww-readable): Preserve the base URL so
3135         that image expansions are fetched from the right place (bug#22605).
3137 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
3139         Add a mode to list and cancel timers
3141         * doc/lispref/os.texi (Timers): Menton `timer-list'.
3143         * lisp/emacs-lisp/timer-list.el: New file.
3145 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
3147         Add new commands to allow changing the size of images
3149         * lisp/image.el (image-increase-size, image-decrease-size):
3150         New commands.
3151         (image-change-size): New function.
3153 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
3155         Allow the image scale to be a floating point number
3157         * src/image.c (compute_image_size): The scale can be a
3158         floating point number.
3160 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
3162         Add an IPv6 test
3164         * test/lisp/net/network-stream-tests.el
3165         (connect-to-tls-ipv6-nowait): Add an ipv6 test, too.
3167 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
3169         Use gnutls-serv instead of openssh
3171         * test/lisp/net/network-stream-tests.el (make-tls-server): Use
3172         gnutls-serv instead of openssh.
3174 2016-02-08  Daniel Colascione  <dancol@dancol.org>
3176         Performance improvements for vc-hg
3178         Teach vc-hg how to read some Mercurial internal data structures,
3179         allowing us to avoid the need to run hg status -A, which is very slow
3180         for large repositories.  Fall back to running hg if anything looks
3181         funny.  vc-hg now puts the _working directory_ revision in the
3182         modeline instead of the file revision, which greatly improves
3183         performance and which allows us to again skip running hg in the case
3184         that we have an active bookmark.
3186         * lisp/vc/vc-hg.el (vc-hg-state): Try calling `vc-hg-statefast'
3187         (vc-hg-symbolic-revision-styles)
3188         (vc-hg-use-file-version-for-mode-line-version)
3189         (vc-hg-parse-hg-data-structures): New user preferences
3190         (vc-hg--active-bookmark-internal, vc-hg--run-log)
3191         (vc-hg--symbolic-revision, vc-hg-mode-line-string)
3192         (vc-hg--read-u8, vc-hg--read-u32-be)
3193         (vc-hg--raw-dirstate-search, vc-hg--cached-dirstate-search)
3194         (vc-hg--parts-to-string, vc-hg--pcre-to-elisp-re)
3195         (vc-hg--glob-to-pcre, vc-hg--hgignore-add-pcre)
3196         (vc-hg--hgignore-add-glob, vc-hg--hgignore-add-path)
3197         (vc-hg--slurp-hgignore-1, vc-hg--slurp-hgignore)
3198         (vc-hg--ignore-patterns-valid-p)
3199         (vc-hg--ignore-patterns-ignored-p, vc-hg--time-to-fixnum)
3200         (vc-hg--file-ignored-p, vc-hg--read-repo-requirements)
3201         (vc-hg--requirements-understood-p, vc-hg--dirstate-scan-cache)
3202         (vc-hg-state-fast): New functions.
3203         (vc-hg--hgignore-patterns, vc-hg--hgignore-filenames)
3204         (vc-hg--cached-ignore-patterns, vc-hg--dirstate-scan-cache)
3205         (vc-hg--dirstate-scan-cache): New internal variables.
3206         * lisp/vc/vc-hooks.el (vc-refresh-state): Invoke vc find-file-hook
3207         before updating modeline.
3209 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
3211         Skip TLS tests if we don't have openssl
3213         * test/lisp/net/network-stream-tests.el (connect-to-tls): Skip
3214         TLS tests if we don't have openssl and GnuTLS.
3216 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
3218         Automatically scale images up on high-density screens
3220         * doc/lispref/display.texi (ImageMagick Images): Mention :scale.
3221         (Defining Images): Mention image-scaling-factor.
3223         * lisp/image.el (image-compute-scaling-factor): New function
3224         (bug#22172).
3225         (create-image): Use it.
3226         (image-scaling-factor): New variable.
3228         * src/image.c (compute_image_size): Take :scale into account.
3230 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
3232         Ensure progress when fetching from the queue
3234         * lisp/url/url-queue.el (url-queue-check-progress): Ensure
3235         that we have progress when fetching queued requests (bug#22576).
3237 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
3239         Make mail-extract-address-components return the user name more
3241         * lisp/mail/mail-extr.el (mail-extract-address-components):
3242         Return the name even if it's the same as the mailbox name (if
3243         `mail-extr-ignore-single-names' isn't set) (bug#22594).
3245 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
3247         Message no longer warns about unknown top level domains
3249 2016-02-07  Jarno Malmari  <jarno@malmari.fi>
3251         Add tests for url-auth
3253         * test/lisp/url/url-auth-tests.el: New file.
3255 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
3257         Add a TLS connection test
3259         * test/lisp/net/network-stream-tests.el (connect-to-tls): Add
3260         a TLS connection test.
3262 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
3264         Add more network tests
3266         * test/lisp/net/network-stream-tests.el (echo-server-nowait):
3267         New test.
3269 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
3271         Add network tests
3273         * test/lisp/net/network-stream-tests.el: New suite of network tests.
3275 2016-02-07  Foo  <rasmus@gmx.us>
3277         Allow various Gnus and Message address variables to be functions
3279         * doc/misc/gnus.texi (To From Newsgroups):
3280         gnus-ignored-from-addresses can be a function.
3282         * doc/misc/message.texi (Wide Reply):
3283         message-dont-reply-to-names can be a function.
3285         * lisp/gnus/gnus-icalendar.el (gnus-icalendar-identities):
3286         message-alternative-emails can be a function.
3288         * lisp/gnus/gnus-notifications.el (gnus-notifications):
3289         message-alternative-emails can be a function (bug#22315).
3291         * lisp/gnus/gnus-sum.el
3292         (gnus-summary-from-or-to-or-newsgroups):
3293         gnus-ignored-from-addresses can be a function (bug#22315).
3295 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
3297         Fix typo in Gnus regexp
3299         * lisp/gnus/gnus-art.el (gnus-button-valid-fqdn-regexp): Fix
3300         typo in last change to this regexp (bug#22592).
3302 2016-02-07  Paul Eggert  <eggert@cs.ucla.edu>
3304         Port to FreeBSD x86
3306         Reported by Herbert J. Skuhra in:
3307         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00336.html
3308         * src/lisp.h (NONPOINTER_BITS) [__FreeBSD__]: Zero in this case too,
3309         since malloc always returns a multiple of 8 in FreeBSD.
3311 2016-02-07  Alan Mackenzie  <acm@muc.de>
3313         On leaving CC Mode, clean up by removing character properties.
3315         * lisp/progmodes/cc-mode.el (c-leave-cc-mode-mode): Remove from the buffer
3316         all instances of the text properties/extents category, syntax-table,
3317         c-is-sws, c-in-sws, c-type, and c-awk-NL-prop.
3319 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
3321         * lisp/gnus/gnus-art.el (gnus-button-valid-fqdn-regexp): Don't use
3322         the no-longer-existing message-valid-fqdn-regexp variable.
3324 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
3326         Remove message-valid-fqdn-regexp, since it changes too much now
3327         * lisp/gnus/message.el (message-valid-fqdn-regexp): Remove.
3328         (message-bogus-recipient-p): Don't use it any more.
3329         (message-make-fqdn): Ditto.  Suggested by Lars-Johan Liman.
3331 2016-02-06  Paul van der Walt  <paul@denknerd.org>  (tiny change)
3333         * lisp/gnus/message.el (message-subject-re-regexp): Also match
3334         "Re :" as a "Re:" prefix (commonly used in France).
3336 2016-02-06  Adam Sjøgren  <asjo@koldfront.dk>
3338         * lisp/net/shr.el (shr-tag-del, shr-tag-ins): New functions.
3340 2016-02-06  David Edmondson  <dme@dme.org>
3342         src/process.c Correctly convert AF_INET6 addresses
3343         * src/process.c (conv_lisp_to_sockaddr): AF_INET6 addresses are
3344         converted to a list of 16 bit quantities by
3345         conv_sockaddr_to_lisp().  conv_lisp_to_sockaddr() should follow the
3346         same scheme rather than expecting a (longer) list of 8 bit
3347         quantities.
3349 2016-02-06  Martin Jesper Low Madsen  <martin@martinjlowm.dk>  (tiny change)
3351         * lisp/gnus/auth-source.el (auth-source-macos-keychain-search):
3352         Search for all host/port (or protocol) combinations for a match in
3353         the OS X keychain.
3355 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
3357         Remove nonsensical setting of gnus-newsgroup-unseen
3359         * lisp/gnus/gnus-sum.el (gnus-update-marks): Remove nonsensical
3360         setting of gnus-newsgroup-unseen.
3362 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
3364         Use underline on all terminals that support it
3366         * lisp/subr.el (read-multiple-choice): Use
3367         display-supports-face-attributes-p instead of
3368         display-graphic-p to determine whether we can use underlining.
3370 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
3372         Make the nsm query say what it did after the user interaction
3374         * lisp/net/nsm.el (nsm-query): Issue a message about
3375         aborting/accepting messages (suggested by N. Jackson)
3376         (bug#22531).
3378 2016-02-05  Paul Eggert  <eggert@cs.ucla.edu>
3380         Omit XLI (init) == 0 optimization in make-vector
3382         * src/alloc.c (Fmake_vector): Simplify by omitting the (XLI (init)
3383         == 0) case, as this optimization is probably not worth the hassle.
3384         Just for the record, the test for that case could have been
3385         (XLI (init) % ((EMACS_UINT) -1 / UCHAR_MAX) == 0) (!),
3386         assuming the typical platform with no padding bits and where
3387         conversion to int omits the most significant bits.
3389 2016-02-05  Paul Eggert  <eggert@cs.ucla.edu>
3391         * autogen.sh: Port to dash (Bug#22556).
3393 2016-02-05  Michael Albinus  <michael.albinus@gmx.de>
3395         Minor cleanup for Tramp "doas".
3397         * doc/misc/tramp.texi (Inline methods): Add "doas" method.
3399         * etc/NEWS: Add Tramp connection method "doas".
3401         * lisp/net/tramp-sh.el (tramp-methods) <doas>:
3402         Add `tramp-remote-shell-args'.
3404 2016-02-05  Xi Lu  <lx@shellcodes.org>
3406         * lisp/net/tramp-sh.el (tramp-methods) <doas>: Add.  (Bug#22542)
3408         (tramp-default-user-alist): Add rule for "doas".
3409         (top): Completion function for "doas" is
3410         `tramp-completion-function-alist-su'.
3412 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
3414         Restore the window configuration
3416         * lisp/net/nsm.el (nsm-query-user): Restore the window
3417         configuration (bug#22532).
3419 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
3421         Use an X popup in read-multiple-choice if running from a mouse command
3423         * lisp/subr.el (read-multiple-choice): Use an X popup if
3424         called from a mouse action (bug#19368).
3426 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
3428         Display cursor in echo area when prompting
3430         * lisp/subr.el (read-multiple-choice): Display the cursor in
3431         the echo area when prompting (bug#19368).
3433 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
3435         Make NSM prompting clearer
3437         * lisp/net/nsm.el (nsm-query-user): Use read-multiple-choice
3438         to prompt in a nicer way (bug#19368).
3440 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
3442         Underline read-multiple-choice-face
3444         * lisp/faces.el (read-multiple-choice-face): Also underline
3445         the choice.
3447 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
3449         Make the read-multiple-choice prompt a bit prettier
3451         * doc/lispref/commands.texi (Reading One Event): Mention
3452         read-multiple-choice-face.
3454         * lisp/subr.el (read-multiple-choice): Make the prompting a bit
3455         prettier.
3457 2016-02-04  Paul Eggert  <eggert@cs.ucla.edu>
3459         Prefer memcpy and memset to doing it by hand
3461         * src/alloc.c (Fmake_vector):
3462         * src/ccl.c (setup_ccl_program):
3463         Use memset to clear array.
3464         * src/alloc.c (Fvector, Fmake_byte_code):
3465         * src/charset.c (Fdefine_charset_internal):
3466         Use memcpy to copy array.
3468 2016-02-04  Nicolas Petton  <nicolas@petton.fr>
3470         Do not ignore redirections of 301, 302 and 307 status codes
3472         The current version of HTTP/1.1 (RFC 7231) no longer requires
3473         confirmation on 301, 302 or 307 status codes, therefore we do not have
3474         to ignore redirects for other requests than GET and HEAD.
3476         * lisp/url/url-http.el (url-http-parse-headers): Do not ignore 301, 302
3477         and 307 redirects for other requests than GET and HEAD.
3479 2016-02-04  Mark Oteiza  <mvoteiza@udel.edu>
3481         * lisp/net/eww.el (eww-switch-to-buffer): Use pop-to-buffer-same-window instead.
3483 2016-02-04  Paul Eggert  <eggert@cs.ucla.edu>
3485         Simplify USE_ALIGNED_ALLOC
3487         * src/alloc.c (USE_ALIGNED_ALLOC): Simplify, now that we’ve merged
3488         in the emacs-25 changes.  Omit no-longer-needed decl for aligned_alloc.
3490 2016-02-04  Eric Abrahamsen  <eric@ericabrahamsen.net>
3492         Honor docstring of gnus-group-get-new-news
3494         * lisp/gnus/gnus-start.el (gnus-get-unread-articles): If the prefix arg
3495         is t, but non-numeric, unconditionally consider all groups to need
3496         updating.
3498 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
3500         New function read-multiple-choice
3502         * doc/lispref/commands.texi (Reading One Event): Document
3503         read-multiple-choice.
3505         * lisp/faces.el (read-multiple-choice-face): New face.
3507         * lisp/subr.el (read-multiple-choice): New function.
3509 2016-02-04  John Wiegley  <johnw@newartisans.com>
3511         Merge from origin/emacs-25
3513         ee73997 Make erc work better when encountering unknown prefix chars
3514         b99141d Make erc completion case-insensitive again
3515         66c4620 Make complection in erc use consistent casing
3516         8c562b2 Make /QUIT in erc more robust
3517         d93d2c5 Make tracking faces in Emacs work more reliably
3518         af6ab7e Make shr not bug out on images on non-graphical displays
3519         3311f40 Fix bookmark display widths
3520         d90ab1e Fix typo in eww-make-unique-file-name
3521         7f81825 Make it possible to TAB to input fields
3522         a43a1dc Insert complete alt texts when images are disabled
3523         56ed4e1 Allow eww text fields to grow
3524         66b315c Make erc work when subword-mode is switched on
3525         255b68f Fix IMAP doc example
3526         91557f5 Quoting fixes in doc strings and diagnostics
3527         2c0dc9f Fix warning message in hack-local-variables
3528         504696d Etags: yet another improvement in Ruby tags
3529         8784ebf Fix x-popup-menu on TTYs without a mouse
3530         8b87ecb * lisp/emacs-lisp/map.el: Improvements to the docstring of the
3531                 pcase macro
3532         6191003 Use pop-to-buffer-same-window in eww
3533         fe321fd * autogen.sh: Revert all recent changes.
3534         74ebd4a * make-dist: Updates related to nt/.
3535         737193a * make-dist: Add modules/.
3536         3696bf2 * make-dist: Update for super-special file that can't live in etc/.
3537         a4278e2 Fix failure to compile ns-win.el in parallel builds
3538         860da4d Fix names of tags generated for Ruby accessors
3539         f6213ce Fix file-name recognition in 'etags'
3540         e42e662 Change Ruby file names and extensions recognized by 'etags'
3541         58bfb6a More improvements for Ruby support in 'etags'
3542         c04e911 Add --git-config option to autogen.sh
3543         5713466 Fix editing undo changes in eww fields
3544         51362d6 Allow the user more control of popping up the eww window
3545         ee0fbd8 Make eww-browse-url with new-window parameter work again
3546         9c3142d Clean up eww code slightly
3547         cb035f3 Don't insert nil faces in shr
3548         4c3fae3 ; * lisp/progmodes/prolog.el: Remove some obsolete commentary.
3549         93f2153 Improve the custom type of some user options.
3550         9f60d7e Mark some risky calendar variables.
3551         1d07dcd Highlight two additional SCSS keywords
3552         ee8b466 Recommend enabling integrity-checking in git
3553         e639e10 Some corrections in Elisp manual
3554         d766ca8 Chatter when autogen.sh changes Git configuration
3555         3b734e1 * org/org-compat.el (org-font-lock-ensure): Fix bogus test (bug#22399)
3556         43cb9f8 Omit unnecessary history from Lisp intro
3557         2fbd1da * etc/HISTORY: Add some more history, plus git tags.
3558         c90e1b4 Improve elisp “Security Considerations” doc
3559         cedd7ca autogen.sh now arranges for git to check hashes
3560         86ce76b ; Fix ChangeLog.2 commit ID.
3561         7b1d2b1 Fix (c & 040) typo in emergency escapes
3562         a8273da Fix display of overlay strings with 'display' and 'box' property
3563         fc48106 Fix imap-starttls-open
3564         cdecbed Fix return value of imap-starttls-open
3565         20c7e34 ; * etc/NEWS: Fix renamed command name
3566         98bdbdb Correct reference to DARWIN_OS preprocessor symbol
3567         b250d29 Spelling fix
3568         b920a0e Spelling fixes
3569         93b144b Pacify GCC on C library without glibc API
3571 2016-02-04  John Wiegley  <johnw@newartisans.com>
3573         Merge from origin/emacs-25
3575         ea26c8a * lisp/net/browse-url.el (browse-url-default-browser): Lower
3576                 priority of non-free Chrome.
3577         0fac75f Improve the custom type of some user options.
3578         2df0e04 Highlight CSS variables with variable name face
3579         3cf5e81 * lisp/gnus/gnus-kill.el (gnus-winconf-kill-file): Not
3580                 user-serviceable.
3581         2a5233c Mark some user options that can get evalled as risky.
3582         39b166f Disable DebPrint in sys_read on MS-Windows
3583         9fd0189 ;Fix ChangeLog entry
3584         4bb7233 Fix typos in Introduction to Emacs Lisp manual
3586 2016-02-04  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
3588         Allow sending empty hidden values in eww
3590         * lisp/net/eww.el (eww-tag-input): Allow sending empty hidden
3591         values (bug#22388).
3593         (cherry picked from commit 5898da8210af7953e638ddf7821c05260979c3f0)
3595         Backport:
3597 2016-02-04  David Edmondson  <dme@dme.org>
3599         Make erc work better when encountering unknown prefix chars
3601         * lisp/erc/erc.el (erc-channel-receive-names): Output a warning
3602         instead of erroring out on unknown prefix chars (bug#22380).
3604 2016-02-04  Mark Oteiza  <mvoteiza@udel.edu>
3606         Add a new command to switch between erc buffers
3608         * doc/misc/eww.texi: Document eww-switch-to-buffer and its keybinding
3609         * etc/NEWS: Mention new command
3610         * lisp/net/eww.el (eww-mode-map): Bind eww-switch-to-buffer to "s"
3611         (eww-mode-map): Add menu item
3612         (eww-switch-to-buffer): New command
3614 2016-02-04  David Edmondson  <dme@dme.org>
3616         Make erc work better when encountering unknown prefix chars
3618         * lisp/erc/erc.el (erc-channel-receive-names): Output a warning
3619         instead of erroring out on unknown prefix chars (bug#22380).
3621 2016-02-04  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
3623         Allow sending empty hidden values in eww
3625         * lisp/net/eww.el (eww-tag-input): Allow sending empty hidden
3626         values (bug#22388).
3628 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
3630         Make erc completion case-insensitive again
3632         * lisp/erc/erc.el (erc-completion-at-point): Make erc completion
3633         case-insensitive again (bug#11360).
3635 2016-02-04  Carlos Pita  <carlosjosepita@gmail.com>  (tiny change)
3637         Make complection in erc use consistent casing
3639         * lisp/erc/erc-pcomplete.el (pcomplete-erc-all-nicks): Make
3640         case in the complection consistent (bug#18509).
3642 2016-02-04  Francis Litterio  <flitterio@gmail.com>
3644         Make /QUIT in erc more robust
3646         * lisp/erc/erc.el (erc-kill-query-buffers): Don't bug out if we're
3647         issuing /QUIT to disconnected servers (bug#22099).
3649 2016-02-04  Kevin Brubeck Unhammer  <unhammer@fsfe.org>  (tiny change)
3651         Make tracking faces in Emacs work more reliably
3653         * lisp/erc/erc-track.el (erc-faces-in): Always return lists of
3654         faces to avoid later ambiguity (bug#22424).
3656 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
3658         Make shr not bug out on images on non-graphical displays
3660         * lisp/net/shr.el (shr-put-image): Don't bug out on alt-less
3661         images on non-graphical displays (bug#22327).
3663 2016-02-04  Andrew Hyatt  <ahyatt@gmail.com>
3665         Remove packages obsoleted before Emacs 24.
3667         In accordance with the policy discussed in the emacs-devel list,
3668         packages that have been obsoleted for a full major release cycle are up
3669         for deletion.
3671         This removes almost all packages that are now eligible for deletion,
3672         with the exception of "cl-compat", which seems it is likely to still be
3673         used, and "optional", which offers some functionality that doesn't have
3674         a replacement yet.
3676 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
3678         Fix bookmark display widths
3680         * lisp/net/eww.el (eww-list-bookmarks): Pop to the buffer before
3681         preparing it so that the widths are computed correctly (bug#22328).
3683 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
3685         Fix typo in eww-make-unique-file-name
3687         * lisp/net/eww.el (eww-make-unique-file-name): Make this function
3688         actually work.
3690 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
3692         Make it possible to TAB to input fields
3694         * lisp/net/eww.el (eww-tag-input): Make it possible to TAB to
3695         input fields (bug#22540).
3697 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
3699         Insert complete alt texts when images are disabled
3701         * lisp/net/shr.el (shr-tag-img): When images are disabled, insert
3702         the complete alt/title string (bug#22293).
3704 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
3706         Allow eww text fields to grow
3708         * lisp/net/eww.el (eww-process-text-input): Allow text fields to
3709         grow when typing in stuff that's longer than the original width.
3711 2016-02-03  Dima Kogan  <dima@secretsauce.net>
3713         Make erc work when subword-mode is switched on
3715         * lisp/erc/erc-backend.el (erc-forward-word, erc-word-at-arg-p)
3716         (erc-bounds-of-word-at-point): New functions to do word-based
3717         things when subword-mode is switched on.
3719         * lisp/erc/erc-button.el (erc-button-add-nickname-buttons): Use them
3720         (bug#17558).
3722 2016-02-03  Teemu Likonen  <tlikonen@iki.fi>
3724         Fix IMAP doc example
3726         * doc/misc/gnus.texi (Client-Side IMAP Splitting): Fix example.
3728 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
3730         Quoting fixes in doc strings and diagnostics
3732         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq, byte-compile-funcall):
3733         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
3734         (mml-smime-get-ldap-cert):
3735         Follow user style preference when quoting diagnostics.
3737 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
3739         Mention context when resume from emergency escape
3741         That way, if the user has been doing something else for a while,
3742         they are reminded of the situation when restarting Emacs,
3743         and are more likely to understand the two questions.
3744         * doc/emacs/trouble.texi (Emergency Escape): Document this.
3745         * src/keyboard.c (handle_interrupt): Implement this.
3747 2016-02-03  Noam Postavsky  <npostavs@gmail.com>
3749         Fix warning message in hack-local-variables
3751         * lisp/files.el (hack-local-variables): use 'thisbuf' to reference
3752         the original buffer name in the warning message.  (Bug#21681)
3754 2016-02-03  Eli Zaretskii  <eliz@gnu.org>
3756         Etags: yet another improvement in Ruby tags
3758         * lib-src/etags.c (Ruby_functions): Handle continuation lines in
3759         Ruby accessor definitions.  (Bug#22241)
3761         * test/etags/ruby-src/test1.ru (A::B#X): Add some more tests for
3762         accessors and multiline definitions.
3763         * test/etags/ETAGS.good_1:
3764         * test/etags/ETAGS.good_2:
3765         * test/etags/ETAGS.good_3:
3766         * test/etags/ETAGS.good_4:
3767         * test/etags/ETAGS.good_5:
3768         * test/etags/ETAGS.good_6:
3769         * test/etags/CTAGS.good: Adapt to changes in Ruby tags.
3771 2016-02-03  Eli Zaretskii  <eliz@gnu.org>
3773         Fix x-popup-menu on TTYs without a mouse
3775         * src/menu.c (Fx_popup_menu): Be sure to initialize 'x' and 'y'
3776         for the TTY case without a mouse.  (Bug#22538)
3778 2016-02-03  Nicolas Petton  <nicolas@petton.fr>
3780         * lisp/emacs-lisp/map.el: Improvements to the docstring of the pcase macro
3782 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
3784         Port aligned_alloc decl to Cygwin.
3786         Problem reported by Ken Brown (Bug#22522#38).
3787         * configure.ac (aligned_alloc): Check for decl too.
3788         * src/lisp.h (aligned_alloc): Declare if not already declared.
3790 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
3792         autogen.sh now configures git only on request
3794         * autogen.sh (do_autoconf, do_git): New vars.
3795         Support new arguments --help, all, autoconf, git.
3796         By default, just do autoconf-related configuration, not git.
3797         Prefer 'echo' to 'cat <<EOF ...', as this tends to avoid temp files.
3798         If GNU cp is available, use it to backup .git/config before
3799         changing it.  When configuring git, chatter about what is being
3800         done, and configure git to check hashes.  Avoid some duplicate
3801         file name specification when creating git hooks.
3803         * GNUmakefile (ALL_IF_GIT): New macro.
3804         (configure): Use it.
3805         * INSTALL.REPO: Suggest './autogen.sh all'.
3807 2016-02-02  Lars Ingebrigtsen  <larsi@gnus.org>
3809         Use pop-to-buffer-same-window in eww
3811         * lisp/net/eww.el: pop-to-buffer-same-window throughout instead of
3812         switch-to-buffer (bug#22244).
3814 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
3816         * autogen.sh: Revert all recent changes.
3818 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
3820         Build with C11 if available
3822         * admin/merge-gnulib (GNULIB_MODULES): Add std-gnu11.
3823         * m4/std-gnu11.m4: New file, from gnulib.
3824         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
3826 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
3828         Update gnulib copy
3830         * doc/misc/texinfo.tex: Copy from gnulib.
3832 2016-02-02  Glenn Morris  <rgm@gnu.org>
3834         * make-dist: Updates related to nt/.
3836         * make-dist: Add modules/.
3838         * make-dist: Update for super-special file that can't live in etc/.
3840 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
3842         Fix failure to compile ns-win.el in parallel builds
3844         * src/Makefile.in ($(lispsource)/term/ns-win.elc): Add order-only
3845         dependency on $(lispsource)/international/charprop.el.
3846         (Bug#22501)
3848 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
3850         Fix names of tags generated for Ruby accessors
3852         * lib-src/etags.c (Ruby_functions): Don't include the leading
3853         colon ':' in tags for Ruby accessors and aliases.  (Bug#22241)
3855         * test/etags/ETAGS.good_1:
3856         * test/etags/ETAGS.good_2:
3857         * test/etags/ETAGS.good_3:
3858         * test/etags/ETAGS.good_4:
3859         * test/etags/ETAGS.good_5:
3860         * test/etags/ETAGS.good_6:
3861         * test/etags/CTAGS.good: Adapt to changes in Ruby tags.
3863 2016-02-02  Glenn Morris  <rgm@gnu.org>
3865         * lisp/vc/add-log.el (change-log-directory-files, find-change-log):
3866         Doc tweaks.
3868 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
3870         Fix file-name recognition in 'etags'
3872         * lib-src/etags.c (get_language_from_filename): If FILE includes a
3873         leading directory, compare only its basename to the known file
3874         names in lang_names[].
3876         * test/etags/Makefile (RBSRC): Adapt to recent test1.ruby
3877         renaming.
3878         * test/etags/ETAGS.good_1:
3879         * test/etags/ETAGS.good_2:
3880         * test/etags/ETAGS.good_3:
3881         * test/etags/ETAGS.good_4:
3882         * test/etags/ETAGS.good_5:
3883         * test/etags/ETAGS.good_6:
3884         * test/etags/CTAGS.good: Adapt to changes in Ruby file names and
3885         to the results in Makefile due to the above etags.c fix.
3887 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
3889         Change Ruby file names and extensions recognized by 'etags'
3891         * lib-src/etags.c <Ruby_filenames>: New variable, holds names
3892         of Ruby files.
3893         <Ruby_suffixes>: Treat .rb, .ru, and .rbw as Ruby extensions.
3894         <lang_names>: Add Ruby_filenames to the Ruby entry.
3895         * test/etags/ruby-src/test1.ru: Renamed from test1.ruby.
3896         (Bug#22241)
3898 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
3900         Port better to platforms lacking aligned_alloc
3902         Problem reported by Ken Brown (Bug#22522).
3903         * src/lisp.h (hybrid_aligned_alloc)
3904         [HYBRID_MALLOC && !HAVE_ALIGNED_ALLOC]: New decl.
3906 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
3908         Port malloc.h hygiene fix to LTO
3910         * src/alloc.c (__malloc_initialize_hook):
3911         Make it externally visible (Bug#22522).
3913 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
3915         More improvements for Ruby support in 'etags'
3917         * lib-src/etags.c (Ruby_functions): Tag Ruby accessors and
3918         alias_method.  Identify constants even if the assignment is not
3919         followed by whitespace.  (Bug#22241)
3921         * test/etags/ruby-src/test1.ruby: Add tests for constants,
3922         accessors, and alias_method.
3923         * test/etags/ETAGS.good_1:
3924         * test/etags/ETAGS.good_2:
3925         * test/etags/ETAGS.good_3:
3926         * test/etags/ETAGS.good_4:
3927         * test/etags/ETAGS.good_5:
3928         * test/etags/ETAGS.good_6:
3929         * test/etags/CTAGS.good: Adapt to changes in Ruby tests.
3931 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
3933         Add --git-config option to autogen.sh
3935         * autogen.sh: New options --git-config, --help.
3936         (git_config): New shell var.  Alter function to respect this var.
3938 2016-02-02  Lars Ingebrigtsen  <larsi@gnus.org>
3940         Fix editing undo changes in eww fields
3942         * eww.el (eww-tag-form): Don't overwrite initial form data in text
3943         fields.
3944         (eww-process-text-input): Make `M-t' at the end of text fields work
3945         better (bug#19085).
3947 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
3949         Allow the user more control of popping up the eww window
3951         * eww.el (eww): Use pop-to-buffer-same-window (suggested by
3952         Michael Heerdegen) (bug#22244).
3954 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
3956         Make eww-browse-url with new-window parameter work again
3958         * eww.el (eww-browse-url): Stay in the same buffer if we're
3959         already in a eww mode buffer so that eww-browse-url with a
3960         new-window parameter works (bug#22244).
3962 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
3964         Clean up eww code slightly
3966         * eww.el (eww-browse-url): Clean up code slightly.
3968 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
3970         Don't insert nil faces in shr
3972         * shr.el (shr-insert-table): Don't add nil faces, because that
3973         will show up in *Messages* as "Invalid face reference: nil [32
3974         times]".
3976 2016-02-01  Glenn Morris  <rgm@gnu.org>
3978         Make find-change-log prefer a VCS root, if no ChangeLog exists.
3980         * lisp/vc/add-log.el (change-log-directory-files): New option.
3981         (find-change-log): Respect change-log-directory-files.
3982         * doc/emacs/maintaining.texi (Change Log Commands):
3983         Mention change-log-directory-files.
3985 2016-02-01  Glenn Morris  <rgm@gnu.org>
3987         Improve the custom type of some user options.
3989         * lisp/autoinsert.el (auto-insert-alist):
3990         * lisp/replace.el (query-replace-from-to-separator):
3991         * lisp/gnus/gnus-art.el (gnus-hidden-properties):
3992         * lisp/gnus/gnus-gravatar.el (gnus-gravatar-properties):
3993         * lisp/gnus/gnus-picon.el (gnus-picon-properties):
3994         * lisp/progmodes/prolog.el (prolog-keywords, prolog-types)
3995         (prolog-mode-specificators, prolog-determinism-specificators)
3996         (prolog-directives, prolog-program-name, prolog-program-switches)
3997         (prolog-consult-string, prolog-compile-string, prolog-eof-string)
3998         (prolog-prompt-regexp): Improve custom type.
4000 2016-02-01  Glenn Morris  <rgm@gnu.org>
4002         Mark some risky calendar variables.
4004         * lisp/calendar/cal-china.el (chinese-calendar-time-zone):
4005         Remove risky setting for deleted obsolete alias.
4006         (calendar-chinese-standard-time-zone-name)
4007         (calendar-chinese-daylight-saving-start)
4008         (calendar-chinese-daylight-saving-end):
4009         * lisp/calendar/calendar.el (calendar-iso-date-display-form)
4010         (calendar-european-date-display-form)
4011         (calendar-american-date-display-form, calendar-date-display-form):
4012         * lisp/calendar/diary-lib.el (diary-remind-message)
4013         (diary-header-line-format):
4014         * lisp/calendar/solar.el (calendar-time-display-form)
4015         (calendar-location-name): Mark as risky.
4017 2016-02-01  Simen Heggestøyl  <simenheg@gmail.com>
4019         Highlight two additional SCSS keywords
4021         * lisp/textmodes/css-mode.el (css-bang-ids): New defconst holding CSS
4022         identifiers on the form !foo.
4023         (scss-bang-ids): New defconst holding SCSS identifiers on the form
4024         !foo.
4025         (css--font-lock-keywords): Highlight the new SCSS bang identifiers in
4026         `font-lock-builtin-face'.
4028         * test/indent/css-mode.css: Add bang rule test case.
4030         * test/indent/scss-mode.css: Add test cases for the introduced bang
4031         rules.
4033 2016-02-01  Karl Fogel  <kfogel@red-bean.com>
4035         Recommend enabling integrity-checking in git
4037         * admin/notes/git-workflow:  Recommend setting transfer.fsckObjects.
4039         This is related to the autogen.sh changes made by Paul Eggert in
4040         commit d766ca8f (2016-02-01) and commit cedd7cad (2016-02-01), and to
4041         my edits today to http://www.emacswiki.org/emacs/GitForEmacsDevs and
4042         to emacswiki.org/emacs/GitQuickStartForEmacsDevs.  See also the thread
4043         "Recommend these .gitconfig settings for git integrity." at
4044         https://lists.gnu.org/archive/html/emacs-devel/2016-01/threads.html#01802.
4046 2016-02-01  Martin Rudalics  <rudalics@gmx.at>
4048         Some corrections in Elisp manual
4050         * doc/lispref/buffers.texi (Read Only Buffers): Describe optional
4051         argument POSITION.
4052         * doc/lispref/debugging.texi (Error Debugging): `debug-on-signal'
4053         is an option.
4054         * doc/lispref/display.texi (Refresh Screen): Describe optional
4055         argument FRAME of `redraw-frame'.
4056         (Attribute Functions): Describe optional argument CHARACTER of
4057         `face-font'.
4058         (Defining Images): `image-load-path' is an option.
4059         (Beeping): `ring-bell-function' is an option.
4060         * doc/lispref/frames.texi (Size and Position): The PIXELWISE
4061         argument of `set-frame-size' is optional.
4062         (Raising and Lowering): The TERMINAL argument of `tty-top-frame'
4063         is optional.
4064         * doc/lispref/keymaps.texi (Controlling Active Maps): Fix doc of
4065         `set-transient-map'.
4066         * doc/lispref/minibuf.texi (Text from Minibuffer):
4067         `read-regexp-defaults-function' is an option.
4068         (Minibuffer Contents): `delete-minibuffer-contents' is a command.
4069         * doc/lispref/modes.texi (Mode Line Variables):
4070         `mode-line-position' and `mode-line-modes' are variables, not
4071         options.
4072         * doc/lispref/strings.texi (Creating Strings): The START argument
4073         of `substring' is optional.
4074         * doc/lispref/text.texi (Buffer Contents): Describe optional
4075         argument NO-PROPERTIES of `thing-at-point'.
4076         (User-Level Deletion): Both arguments of
4077         `delete-trailing-whitespace' are optional.
4078         (Margins): Use @key{RET} instead of @kbd{RET}.
4079         * doc/lispref/windows.texi (Display Action Functions): Write
4080         non-@code{nil} instead of non-nil.
4081         (Choosing Window Options): The WINDOW arg of
4082         `split-window-sensibly' is optional.
4083         (Choosing Window Options): Write non-@code{nil} instead of
4084         non-nil.
4085         (Window Start and End): Both args of `window-group-end' are
4086         optional.
4088         * src/buffer.c (Fbarf_if_buffer_read_only): Rename argument POS
4089         to POSITION to keep consisteny with doc-string.
4091 2016-02-01  Paul Eggert  <eggert@cs.ucla.edu>
4093         Double static heap size.
4095         * src/sheap.h (STATIC_HEAP_SIZE): Double it, since it was too
4096         small on FreeBSD (Bug#22086).
4098 2016-02-01  Paul Eggert  <eggert@cs.ucla.edu>
4100         Chatter when autogen.sh changes Git configuration
4102         * autogen.sh (git_config): New function.  Use it instead of ‘git config’.
4104 2016-02-01  Kyle Meyer  <kyle@kyleam.com>
4106         * org/org-compat.el (org-font-lock-ensure): Fix bogus test (bug#22399)
4108 2016-02-01  Michael Albinus  <michael.albinus@gmx.de>
4110         Fix Bug#20821
4112         * lisp/net/tramp.el (tramp-file-name-handler):
4113         * lisp/net/tramp-sh.el (tramp-sh-handle-expand-file-name):
4114         Use `tramp-drop-volume-letter'.  (Bug#20821)
4116 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
4118         Omit unnecessary history from Lisp intro
4120         * doc/lispintro/emacs-lisp-intro.texi (Review, Digression into C)
4121         (Conclusion): Reword so as not to talk about earlier versions
4122         of Emacs in what should be an intro.
4124 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
4126         * etc/HISTORY: Add some more history, plus git tags.
4128 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
4130         Improve elisp “Security Considerations” doc
4132         * doc/lispref/os.texi (Security Considerations):
4133         Mention call-process and rename-file as opposed to shell commands.
4134         Add some more cross-references.
4136 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
4138         autogen.sh now arranges for git to check hashes
4140         Suggested by Karl Fogel in:
4141         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01802.html
4142         * autogen.sh: Do "git config transfer.fsckObjects true".
4144 2016-01-31  Dave Barker  <kzar@kzar.co.uk>
4146         Add ability to give rcirc servers an alias name
4148         * lisp/net/rcirc.el (rcirc-server-alist): Add :server-alias
4149         customization option.
4150         (rcirc, rcirc-connect): Take server alias into account.
4152 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
4154         Fix (c & 040) typo in emergency escapes
4156         * src/keyboard.c (handle_interrupt): Fix recently-introduced
4157         typo (040 should have been ~040) that silently suppressed
4158         auto-saves after emergency escapes.  Redo comparison to avoid
4159         similar problems.
4161 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
4163         Port new hybrid malloc to FreeBSD
4165         Problem reported by Wolfgang Jenkner in: http://bugs.gnu.org/22086#118
4166         * src/gmalloc.c (__malloc_initialize_hook, __after_morecore_hook)
4167         (__morecore) [HYBRID_MALLOC]: Define in this case too.
4169 2016-01-31  Wolfgang Jenkner  <wjenkner@inode.at>
4171         * configure.ac: Stop using mmap for buffers for FreeBSD.
4173 2016-01-31  Eli Zaretskii  <eliz@gnu.org>
4175         Fix display of overlay strings with 'display' and 'box' property
4177         * src/xdisp.c (get_next_display_element): Take the box face from
4178         display stack level that comes from a buffer, not an overlay
4179         string.  (Bug#22499)
4181 2016-01-31  Andreas Schwab  <schwab@linux-m68k.org>
4183         Fix imap-starttls-open
4185         * lisp/net/imap.el (imap-starttls-open): Log imap process
4186         output.  Call imap-parse-greeting.  (Bug#22500)
4188 2016-01-31  Michael Albinus  <michael.albinus@gmx.de>
4190         Merge changes from Tramp repository
4192         * doc/misc/Makefile.in (${buildinfodir}/tramp.info tramp.html):
4193         No EXTRA_OPTS needed.
4195         * doc/misc/tramp.texi: Merge changes from Emacsemacs-25
4196         branch, especially for @trampfn{}.
4197         (Top): Move @ifnottex down.
4198         (History): XEmacs support has been removed.
4199         (GVFS based methods, Remote processes): Do not use emacsgvfs flag.
4200         (Auto-save and Backup): Use both syntax versions.
4201         (File name Syntax): Remark on IPv6 adresses is valid for
4202         unified syntax only.
4204         * doc/misc/trampver.texi: Do not set emacsgvfs flag.
4206 2016-01-31  Andreas Schwab  <schwab@linux-m68k.org>
4208         Fix return value of imap-starttls-open
4210         * lisp/net/imap.el (imap-starttls-open): Fix return value.
4212 2016-01-31  John Wiegley  <johnw@newartisans.com>
4214         Correct reference to DARWIN_OS preprocessor symbol
4216         * src/alloc.c: Correct a preprocessor reference to DARWIN_OS, which may
4217           not be defined.
4219 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
4221         Spelling fixes
4223         Spelling fix
4225         Spelling fixes
4227 2016-01-30  Glenn Morris  <rgm@gnu.org>
4229         * lisp/vc/add-log.el (find-change-log): Use locate-dominating-file.
4231 2016-01-30  Matthew Carter  <m@ahungry.com>
4233         Quote table names for postgres listings (sql-mode)
4235         * lisp/progmodes/sql.el (sql-postgres-completion-object): Avoid passing
4236           unquoted table names to the completion list.
4238 2016-01-30  Glenn Morris  <rgm@gnu.org>
4240         Change Smerge "Mine" and "Other" for "Upper" and "Lower.  (Bug#20878)
4242         * lisp/vc/smerge-mode.el (smerge-diff-switches)
4243         (smerge-context-menu, smerge-match-conflict, smerge-swap): Doc fixes.
4244         (smerge-upper, smerge-upper-face, smerge-keep-upper)
4245         (smerge-diff-base-upper): Rename from smerge-mine, smerge-mine-face,
4246         smerge-keep-mine, smerge-diff-base-mine.  Update all uses.
4247         (smerge-mine-face, smerge-other-face): Remove obsolete face aliases.
4248         (smerge-lower, smerge-lower-face, smerge-lower-re, smerge-keep-lower)
4249         (smerge-diff-base-lower): Rename from smerge-other, smerge-other-face,
4250         smerge-other-re, smerge-keep-other, smerge-diff-base-lower.
4251         Update all uses.
4252         (smerge-basic-map): Add "l" and "u" bindings.
4253         (smerge-mode-menu): Update menu bindings for renaming.
4254         (smerge-font-lock-keywords): Update face names.
4255         (smerge-match-names): Update names.
4256         (smerge-diff-upper-lower): Rename from smerge-diff-mine-other.
4257         (smerge-match-conflict, smerge-ediff): Rename local variables.
4258         (smerge-makeup-conflict): Relabel markers.
4259         (smerge-parsep-re): Use renamed variables.
4261 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
4263         Port recent my_edata change to MS-Windows
4265         * src/lastfile.c (my_edata): Also define if WINDOWSNT.
4267 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
4269         Pacify GCC on C library without glibc API
4271         Without this change, with --enable-gcc-warnings GCC would complain
4272         “error: redundant redeclaration of ‘aligned_alloc’”.
4273         * configure.ac: Simplify aligned_alloc testing.
4274         * src/alloc.c (aligned_alloc): Don’t use if DARWIN_OS,
4275         since the simplified configure.ac no longer checks for that.
4276         Don’t declare if HAVE_ALIGNED_ALLOC.
4277         Correct misspelling of HAVE_ALIGNED_ALLOC in ifdef.
4279 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
4281         Tell Automake the new lib/Makefile.am is OK
4283         * lib/Makefile.am (AUTOMAKE_OPTIONS): Add -Wno-portability.
4285 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
4287         Make it easy to override preferred-branch test
4289         * Makefile.in (preferred-branch-is-current):
4290         Rename from emacs-25-branch-is-current.  All uses changed.
4291         (PREFERRED_BRANCH): New macro.
4293 2016-01-30  Glenn Morris  <rgm@gnu.org>
4295         * lisp/net/browse-url.el (browse-url-default-browser):
4296         Lower priority of non-free Chrome.
4298 2016-01-30  Glenn Morris  <rgm@gnu.org>
4300         Improve the custom type of some user options.
4302         * lisp/desktop.el (desktop-minor-mode-table):
4303         * lisp/man.el (Man-frame-parameters):
4304         * lisp/midnight.el (midnight-delay):
4305         * lisp/speedbar.el (speedbar-select-frame-method):
4306         * lisp/tooltip.el (tooltip-frame-parameters):
4307         * lisp/tree-widget.el (tree-widget-space-width):
4308         * lisp/type-break.el (type-break-keystroke-threshold):
4309         * lisp/woman.el (woman-imenu-generic-expression):
4310         * lisp/cedet/ede.el (ede-debug-program-function):
4311         * lisp/cedet/ede/project-am.el (project-am-debug-target-function):
4312         * lisp/emulation/viper-keym.el (viper-toggle-key):
4313         * lisp/erc/erc-networks.el (erc-server-alist):
4314         * lisp/gnus/message.el (message-deletable-headers, message-signature):
4315         * lisp/mail/mailalias.el (mail-directory-stream):
4316         * lisp/play/tetris.el (tetris-x-colors):
4317         * lisp/progmodes/gud.el (gud-tooltip-modes): Improve custom type.
4319 2016-01-30  Simen Heggestøyl  <simenheg@gmail.com>
4321         Highlight CSS variables with variable name face
4323         * lisp/textmodes/css-mode.el (css-nmstart-re): Don't match variables.
4324         (css--font-lock-keywords): Highlight variables in
4325         `font-lock-variable-name-face'.
4327 2016-01-30  Glenn Morris  <rgm@gnu.org>
4329         * lisp/gnus/gnus-kill.el (gnus-winconf-kill-file): Not user-serviceable.
4331 2016-01-30  Glenn Morris  <rgm@gnu.org>
4333         Mark some user options that can get evalled as risky.
4335         * lisp/allout.el (allout-title):
4336         * lisp/emacs-lisp/edebug.el (edebug-global-break-condition):
4337         * lisp/gnus/message.el (message-mailer-swallows-blank-line):
4338         * lisp/progmodes/gud.el (gud-tooltip-display):
4339         * lisp/vc/ediff-mult.el (ediff-default-filtering-regexp):
4340         Mark as risky.
4342 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
4344         Disable DebPrint in sys_read on MS-Windows
4346         * src/w32.c (sys_read): Disable a debugging print that is normal
4347         when non-blocking reads are retried.
4349 2016-01-30  Martin Rudalics  <rudalics@gmx.at>
4351         ;Fix ChangeLog entry
4353 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
4355         Fix typos in Introduction to Emacs Lisp manual
4357         * doc/lispintro/emacs-lisp-intro.texi (Emacs Initialization)
4358         (kill-new function, Digression into C)
4359         (Complete forward-sentence, Divide and Conquer, Find a File)
4360         (lengths-list-many-files, Columns of a graph, defcustom)
4361         (recursive-count-words): Fix typos.  Reported by Daniel Bastos
4362         <dbastos@toledo.com>.
4364 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
4366         Shrink static heap a bit
4368         * src/sheap.h: Include lisp.h, for Lisp_Object.
4369         (STATIC_HEAP_SIZE): Now an enum constant, not a macro.
4370         Make it 2 MiB * sizeof (Lisp_Object), which is a bit more
4371         conservative than the old value.
4372         (Bug#22086)
4374 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
4376         Fix extern symbols defined and not used
4378         * src/alloc.c: Always include <signal.h>.
4379         (malloc_warning) [!SIGDANGER && (SYSTEM_MALLOC || HYBRID_MALLOC)]:
4380         Do not define; unused.
4381         * src/emacs.c, src/lisp.h (might_dump) [!DOUG_LEA_MALLOC]: Now static.
4382         * src/gmalloc.c (gdefault_morecore): Rename from __default_morecore,
4383         to avoid collision with glibc.  Now static.  All uses changed.
4384         * src/lastfile.c (my_edata): Define only if
4385         ((!defined SYSTEM_MALLOC && !defined HYBRID_MALLOC && !defined
4386         WINDOWSNT) \ || defined CYGWIN || defined DARWIN_OS).
4387         (Bug#22086)
4389 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
4391         Build lib/e-*.o only on platforms that need it
4393         * configure.ac (hybrid malloc): Simplify configuration.
4394         (SHEAP_OBJ): Remove; no longer needed.
4395         (HYBRID_MALLOC): New var. Subst it.
4396         (HYBRID_MALLOC_LIB): New Automake conditional.
4397         * lib/Makefile.am (noinst_LIBRARIES): Add libegnu.a only if
4398         HYBRID_MALLOC_LIB.
4399         (libegnu_a_CPPFLAGS): Omit AM_CPPFLAGS; not needed.
4400         (MOSTLYCLEANFILES): Add libegnu.a.
4401         * src/Makefile.in (SHEAP_OBJ): Remove.
4402         (HYBRID_MALLOC): New macro.
4403         (base_obj): Use it to conditionally add sheap.o.
4404         (LIBEGNU_ARCHIVE): New macro.
4405         ($(LIBEGNU_ARCHIVE)): New rule, replacing $(lib)/libegnu.a.
4406         All uses of the latter replaced by the former.
4407         * src/alloc.c (USE_ALIGNED_ALLOC): Simplify configuration.
4408         Correct misspelling ALIGNED_ALLOC to HAVE_ALIGNED_ALLOC.
4409         * src/gmalloc.c: Update comment.
4410         * src/lisp.h (aligned_alloc)
4411         [!DOUG_LEA_MALLOC && !HYBRID_MALLOC && !SYSTEM_MALLOC]:
4412         New decl.
4413         (Bug#22086)
4415 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
4417         Include <malloc.h> when advisable
4419         This should help insulate us better from future glibc changes.
4420         It is good hygiene to include .h files for APIs that Emacs uses.
4421         Fix type clashes between Emacs and GNU <malloc.h> (Bug#22086).
4422         * configure.ac: Check for malloc.h.
4423         * src/alloc.c: Include <malloc.h> depending on HAVE_MALLOC_H,
4424         not on DOUG_LEA_MALLOC.
4425         * src/emacs.c, src/gmalloc.c (malloc_enable_thread):
4426         Remove decl (now in lisp.h).
4427         * src/gmalloc.c: Include stddef.h earlier, for ptrdiff_t.
4428         [emacs]: Include lisp.h.
4429         [HAVE_MALLOC_H]: Include <malloc.h>.
4430         (__MALLOC_HOOK_VOLATILE): New macro, if not already defined.
4431         (__after_morecore_hook, __malloc_initialize_hook, __morecore)
4432         (__default_morecore):
4433         [!HAVE_MALLOC_H]: New decls near non-inclusion of <malloc.h>.
4434         (calloc): Make it clear that the macro should not be used.
4435         Remove unused decl.
4436         (malloc_info): New macro, to avoid clash with glibc <malloc.h>.
4437         (__morecore, __default_morecore, __after_morecore_hook)
4438         (__malloc_extra_blocks, __malloc_initialize_hook, __free_hook)
4439         (__malloc_hook, __realloc_hook, __memalign_hook, memory_warnings):
4440         Remove later decls.
4441         (gmalloc_hook, gfree_hook, grealloc_hook):
4442         Rename from __malloc_hook, __free_hook, __realloc_hook to
4443         avoid type collision with glibc <malloc.h>.  All uses changed.
4444         (gmalloc_hook):
4445         (__malloc_extra_blocks) [DOUG_LEA_MALLOC||HYBRID_MALLOC||SYSTEM_MALLOC]:
4446         Now static.
4447         (gmalloc_hook, __malloc_extra_blocks): Define even if [!HYBRID_MALLOC].
4448         (__malloc_initialize_hook, __after_morecore_hook):
4449         Declare with types compatible with glibc.
4450         (__memalign_hook, hybrid_calloc) [HYBRID_MALLOC]:
4451         Remove.  All uses removed.
4452         * src/lisp.h (__malloc_extra_blocks, malloc_enable_thread): New decls.
4453         * src/ralloc.c, src/vm-limit.c:
4454         Simplify includes and include <malloc.h> if available.
4456 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
4458         * src/alloc.c: Include "sheap.h".
4460         (alloc_unexec_pre, alloc_unexec_post) [HYBRID_MALLOC]:
4461         Set and clear bss_sbrk_did_unexec, on all platforms not just Cygwin.
4462         * src/lisp.h (alloc_unexec_pre, alloc_unexec_post) [!DOUG_LEA_MALLOC]:
4463         Declare unconditionally.
4464         * src/unexcw.c, src/unexelf.c (bss_sbrk_did_unexec): Remove decl.
4465         (unexec): Don’t set or clear bss_sbrk_did_unexec;
4466         the caller now does this.
4467         (Bug#22086)
4469 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
4471         Pacify --enable-gcc-warnings when HYBRID_MALLOC
4473         * src/buffer.c (init_buffer):
4474         * src/emacs.c (main):
4475         * src/xsmfns.c (smc_save_yourself_CB, x_session_initialize):
4476         Use emacs_get_current_dir_name, not get_current_dir_name.
4477         * src/conf_post.h (aligned_alloc) [HYBRID_MALLOC && emacs]: New macro.
4478         (HYBRID_GET_CURRENT_DIR_NAME, get_current_dir_name): Remove.
4479         * src/emacs.c: Include "sheap.h".
4480         (report_sheap_usage): Remove decl.
4481         (Fdump_emacs) [HYBRID_MALLOC]: Report usage directly.
4482         Don't assume ptrdiff_t can be printed as int.
4483         * src/gmalloc.c [HYBRID_MALLOC]:
4484         Include "sheap.h" rather than declaring its contents by hand.
4485         (get_current_dir_name, gget_current_dir_name)
4486         (hybrid_get_current_dir_name): Remove.
4487         (emacs_abort): Remove duplicate decl.
4488         (aligned_alloc): Undef, like malloc etc.
4489         (ALLOCATED_BEFORE_DUMPING): Now a static function, not a macro.
4490         Make it a bit more efficient.
4491         (malloc_find_object_address): Remove unused decl.
4492         (enum mcheck_status, mcheck, mprobe, mtrace, muntrace, struct mstats)
4493         (mstats, memory_warnings): Declare only if GC_MCHECK.
4494         * src/lisp.h (emacs_get_current_dir_name):
4495         New decl, replacing get_current_dir_name.
4496         * src/sheap.c: Include sheap.h first.
4497         (STATIC_HEAP_SIZE): Remove; now in sheap.h.
4498         (debug_sheap): Now static.
4499         (bss_sbrk_buffer_end): Remove; no longer used.
4500         (bss_sbrk_ptr): Now static and private.
4501         (bss_sbrk_did_unexec): Now bool.
4502         (BLOCKSIZE): Remove, to avoid GCC warning about its not being used.
4503         (bss_sbrk): Don't treat request_size 0 as special, since the code
4504         works without this being a special case.
4505         Avoid overflow if request size exceeds INT_MAX.
4506         (report_sheap_usage): Remove; now done in emacs.c.
4507         * src/sheap.h: New file.
4508         * src/sysdep.c (get_current_dir_name): Remove macro.
4509         Include "sheap.h".
4510         (emacs_get_current_dir_name): Rename function from
4511         get_current_dir_name.  Handle HYBRID_MALLOC here;
4512         this is simpler.
4513         (Bug#22086)
4515 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
4517         Report static heap usage on non-Cygwin, too
4519         * src/emacs.c (Fdump_emacs) [HYBRID_MALLOC]: Report sheap usage here ...
4520         * src/unexcw.c (unexec): ... instead of here, since sheap can be used
4521         on platforms other than Cygwin (Bug#22086).
4523 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
4525         Pacify GCC on extern decls
4527         * src/unexelf.c (bss_sbrk_did_unexec): Move decl to top level
4528         to pacify recent GCC (Bug#22086).
4530 2016-01-30  Wolfgang Jenkner  <wjenkner@inode.at>
4532         Add musl patch to support HYBRID_MALLOC on elf systems
4534         * src/gmalloc.c: Adjust for HYBRID_MALLOC in the non CYGWIN case.
4535         (__default_morecore): Here, in particular.
4536         * configure.ac: Define HYBRID_MALLOC when unexelf.o is used.
4537         New variable SHEAP_OBJ.
4538         * src/Makefile.in: Use it.
4539         (Bug#22086)
4541 2016-01-30  Rich Felker  <dalias@libc.org>  (tiny change)
4543         unexelf.c hook to support HYBRID_MALLOC on ELF
4545         * src/unexelf.c (unexec) [HYBRID_MALLOC]:
4546         Define bss_sbrk_did_unexec (Bug#22086).
4548 2016-01-30  Wolfgang Jenkner  <wjenkner@inode.at>
4550         Link temacs with gnulib compiled with -Demacs
4552         This is done to support HYBRID_MALLOC, since some static variables
4553         (e.g., last_environ in putenv.c) hold pointers to memory malloced
4554         before dumping (Bug#22086).
4555         * lib/Makefile.am: Add incantation to install libegnu.a.
4556         * src/Makefile.in ($(lib)/libgnu.a): Replace with libegnu.a
4557         (temacs$(EXEEXT)): Use it.
4559 2016-01-30  Wolfgang Jenkner  <wjenkner@inode.at>
4561         Internal linkage for gmalloc etc. if HYBRID_MALLOC
4563         This avoids clashes with symbols if the after-dump malloc is
4564         derived from Doug Lea's implementation (Bug#22086).
4566         * src/gmalloc.c (emacs_abort, __morecore, __default_morecore):
4567         Move declarations up.  For HYBRID_MALLOC, turn all `extern'
4568         declarations below to `static' ones.
4569         (aligned_alloc): Declare for !MSDOS as well.
4570         (heapsize, _fraghead): Move resp. copy declaration downwards.
4571         For HYBRID_MALLOC, conditionalize out the other definitions,
4572         since the previous `static' declarations double as tentative
4573         definitions, anyway.
4574         (_malloc, _free, _realloc, __free_hook, _aligned_blocks)
4575         (__realloc_hook, __memalign_hook): Conditionalize out.
4576         (cfree, memalign, valloc): Ditto.
4578 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
4580         Merge from origin/emacs-25
4582         3f481ad Rename xref-query-replace to xref-query-replace-in-results
4583         62f4ed4 Update cl-defgeneric and cl-defmethod docstrings
4584         2111e0e Comment out next-error-function integration in xref
4585         4e11ad3 Correct a use of "which" in intro.texi
4586         a1865bc Distinguish the two meanings of Java's keyword "default".  Fixes bug #22358.
4587         76045f7 Don't operate on menu bar of nonexistent frame
4588         c32f3bc Unbreak the GNUstep build.
4590 2016-01-30  Andreas Schwab  <schwab@linux-m68k.org>
4592         Re-enable checks in member, memql, delete to complain about non-lists
4594         * src/fns.c (Fmember, Fmemql, Fdelete): Revert 2007-10-16 change.
4596 2016-02-04  Martin Rudalics  <rudalics@gmx.at>
4598         Minor doc(-string) tweaks
4600         * lisp/window.el (window-in-direction): Fix doc-string typo.
4601         * doc/lispref/frames.texi (Frame Font): Mention canonical
4602         character width/height.
4603         * doc/lispref/windows.texi (Windows and Frames): Clarify
4604         handling of minibuffer window for `window-in-direction'.
4605         (Window Sizes): Minor tweaks in descriptions of
4606         `window-max-chars-per-line', `window-min-width' and
4607         `window-min-size'.
4608         (Deleting Windows): Minor tweak in `delete-window' description.
4609         (Selecting Windows): Clarify window use time description.
4610         (Cyclic Window Ordering): Minor tweak.
4611         (Switching Buffers): Clarify description of
4612         `switch-to-buffer-in-dedicated-window'.
4614 2016-02-04  Eli Zaretskii  <eliz@gnu.org>
4616         Remove some useless-use-of eval.
4618         * lisp/gnus/gnus.el (gnus-load-hook): Don't use eval.
4619         * lisp/gnus/nnrss.el (xml): Simply require it.
4620         (xml-rpc-method-call): Use declare-function.
4622 2016-01-28  Glenn Morris  <rgm@gnu.org>
4624         Don't use eval to quieten prolog.el compilation.
4626         * lisp/progmodes/prolog.el (pltrace-on, pltrace-off): Declare.
4627         (prolog-enable-sicstus-sd, prolog-disable-sicstus-sd): Don't use eval.
4629 2016-01-28  Glenn Morris  <rgm@gnu.org>
4631         Mark some risky prolog variables.
4633         * lisp/progmodes/prolog.el (prolog-system-version)
4634         (prolog-keywords, prolog-types, prolog-mode-specificators)
4635         (prolog-determinism-specificators, prolog-directives)
4636         (prolog-program-name, prolog-program-switches)
4637         (prolog-consult-string, prolog-compile-string)
4638         (prolog-eof-string, prolog-prompt-regexp, prolog-help-function):
4639         Mark anything processed by prolog-find-value-by-system as risky.
4641 2016-01-28  Glenn Morris  <rgm@gnu.org>
4643         * lisp/custom.el (defcustom): Doc fix.
4645         * doc/lispref/customize.texi (Variable Definitions):
4646         Defcustom should always have a type.
4648 2016-01-28  Glenn Morris  <rgm@gnu.org>
4650         * lisp/emacs-lisp/bytecomp.el (byte-compile-nogroup-warn):
4651         Warn if defcustom has no type.  (Bug#16276)
4653         * lisp/cedet/semantic/db-file.el (semanticdb-persistent-path):
4654         Fix :type.
4656         * lisp/emacs-lisp/package.el (package-load-list): Improve :type.
4658 2016-01-28  Michael Albinus  <michael.albinus@gmx.de>
4660         Fix Bug#22452
4662         * lisp/net/tramp-adb.el (tramp-adb-maybe-open-connection):
4663         * lisp/net/tramp-gvfs.el (tramp-gvfs-maybe-open-connection):
4664         * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
4665         * lisp/net/tramp-smb.el (tramp-smb-maybe-open-connection):
4666         Mark it as connected.
4668         * lisp/net/tramp.el (tramp-handle-file-remote-p): Check also, if
4669         connection property "connected" is set.  (Bug#22452)
4671 2016-01-27  Glenn Morris  <rgm@gnu.org>
4673         * test/lisp/vc/vc-hg.el: Move from test/automated/.
4675         * lisp/xwidget.el (xwidget-query-on-exit-flag): Declare.
4677         * lisp/xwidget.el (xwidget-webkit-browse-url): Give explicit error
4678         if not compiled with xwidgets.
4680 2016-01-26  Paul Eggert  <eggert@cs.ucla.edu>
4682         C-u C-x = example doc fix
4684         * doc/emacs/mule.texi (International Chars):
4685         Adjust example to match current behavior of C-u C-x =.
4687 2016-01-26  Paul Eggert  <eggert@cs.ucla.edu>
4689         malloc.h hygiene
4691         This attempts to future-proof Emacs a bit against possible glibc
4692         changes, by having Emacs use <malloc.h> declarations rather than
4693         coding them up by hand.  Problem noted by Florian Weimer in:
4694         https://sourceware.org/ml/libc-alpha/2016-01/msg00777.html
4695         Implement this mainly by moving malloc.h-related functions from
4696         emacs.c (which does not include <malloc.h>) to alloc.c (which does).
4697         * src/alloc.c (my_heap_start) [DOUG_LEA_MALLOC || GNU_LINUX]:
4698         New function.
4699         The remaining changes to this file apply only if DOUG_LEA_MALLOC.
4700         (alloc_unexec_pre, alloc_unexec_post): New functions.
4701         (malloc_initialize_hook): Use my_heap_start and alloc_unexec_post.
4702         (__MALLOC_HOOK_VOLATILE): New macro, if not already defined.
4703         (__malloc_initialize_hook): Use it.
4704         (malloc_state_ptr, malloc_initialize_hook, __malloc_initialize_hook):
4705         Move here from ...
4706         * src/emacs.c: ... here.
4707         (malloc_get_state, malloc_set_state): Remove extern decls.
4708         (my_heap_start) [DOUG_LEA_MALLOC || GNU_LINUX]: Remove static var.
4709         All uses changed to similarly-named new function.
4710         (Fdump_emacs): Use new functions alloc_unexec_pre, alloc_unexec_post.
4711         * src/lisp.h (my_heap_start, alloc_unexec_pre, alloc_unexec_post):
4712         New decls.
4714 2016-01-26  Eli Zaretskii  <eliz@gnu.org>
4716         * doc/emacs/mark.texi (Using Region): Clarify wording.  (Bug#22467)
4718 2016-01-26  Paul Eggert  <eggert@cs.ucla.edu>
4720         Remove never-set var handle_user_signal_hook
4722         * src/keyboard.c, src/keyboard.h (handle_user_signal_hook):
4723         Remove never-set var.  All uses removed.
4725 2016-01-26  Anders Lindgren  <andlind@gmail.com>
4727         Fixed NextStep fullscreen issue (bug#22468)
4729         When in fullscreen mode, `[screen visibleFrame]' sometimes
4730         includes, sometimes excludes the menu bar. This could cause
4731         a frame to be placed too low when in fullscreen mode.
4733         * src/nsterm.m (ns_menu_bar_should_be_hidden): Trace.
4734         (constrain_frame_rect): New parameter, isFullscreen, when true don't
4735         query the height of the menu bar.
4736         (ns_constrain_all_frames): Pass `false' (isFullscreen) to
4737         `constrain_frame_rect'.
4738         ([EmacsView initFrameFromEmacs:]): Trace.
4739         ([EmacsView isFullscreen]): Trace.
4740         ([EmacsWindow constrainFrameRect:toScreen:]): Pass fullscreen
4741         state to `constrain_frame_rect'.
4743 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
4745         * lisp/files.el: Use a fixed file name for the second dir-locals file
4747         (dir-locals-file): Revert to its original fixed value.
4748         (dir-locals-file-2): New const.
4749         (dir-locals--all-files): Don't use `file-name-all-completions'.
4750         Instead, just check for the 2 dir-locals files and return a list
4751         of the ones that exit (if any).
4753         * etc/NEWS: Document the change.
4755         * doc/emacs/custom.texi (Directory Variables): Document the change.
4757         * doc/lispref/variables.texi (Directory Local Variables): Update
4758         accordingly.
4760 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
4762         * lisp/files-x.el (modify-dir-local-variable): Small rewrite
4764         Change a variable name to be more meaningful, and reorder some of
4765         the code with no change in behaviour.
4767 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
4769         * lisp/files.el (dir-locals-find-file): Refactor return values
4771         Returning a cache remains unchanged, but the case of returning a
4772         file (or pattern) is now changed to return the contaning
4773         directory.
4775         (dir-locals-read-from-file): Rename to `dir-locals-read-from-dir'
4776         and make obsolete.
4777         (dir-locals-read-from-dir): Simplify accordingly.
4778         (hack-dir-local-variables): Simplify accordingly and rename a
4779         variable.
4781 2016-01-25  Glenn Morris  <rgm@gnu.org>
4783         * lisp/textmodes/flyspell.el (flyspell--prev-meta-tab-binding):
4784         Declare.
4786         * configure.ac (USE_CAIRO): Rename to more standard HAVE_CAIRO.
4788         * configure.ac (--with-cairo): Say it's experimental.
4790         * lisp/xwidget.el (xwidget-webkit-scroll-behavior):
4791         Rename using American spelling.  Update all uses.
4793 2016-01-25  Glenn Morris  <rgm@gnu.org>
4795         Yet more xwidget doc fixes.
4797         * lisp/xwidget.el (xwidget-webkit-scroll-behaviour)
4798         (xwidget-insert, xwidget-webkit-browse-url)
4799         (xwidget-webkit-scroll-up, xwidget-webkit-scroll-down)
4800         (xwidget-webkit-scroll-forward, xwidget-webkit-scroll-backward)
4801         (xwidget-webkit-insert-string, xwidget-webkit-show-named-element)
4802         (xwidget-webkit-show-id-element)
4803         (xwidget-webkit-show-id-or-named-element)
4804         (xwidget-webkit-adjust-size, xwidget-webkit-current-url)
4805         (xwidget-webkit-execute-script-rv)
4806         (xwidget-webkit-copy-selection-as-kill, xwidget-get)
4807         (xwidget-put):  Doc fixes.
4808         (xwidget-webkit-insert-string, xwidget-webkit-show-named-element)
4809         (xwidget-webkit-show-id-element)
4810         (xwidget-webkit-show-id-or-named-element): Prompt fixes.
4812 2016-01-25  Ted Zlatanov  <tzz@lifelogs.com>
4814         * lisp/gnus/gnus-art.el (gnus-blocked-images):
4815         Add explicit nil choice and tags.
4817 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
4819         Spelling fixes
4821 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
4823         (rng-c-fix-escaped-newlines): Use subst-char-in-string
4825         * lisp/nxml/rng-cmpct.el (rng-c-fix-escaped-newlines):
4826         Use subst-char-in-string.
4828 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
4830         * lisp/textmodes/sgml-mode.el (sgml-forward-sexp): New function
4832         (sgml-cursor-sensor, sgml-pretty-print, sgml-parse-tag-backward)
4833         (sgml-calculate-indent): Use it.
4835 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
4837         * lisp/org: Fix some compiler warnings
4839         * lisp/org/ob-core.el (org-babel-check-confirm-evaluate)
4840         (org-babel-map-src-blocks): Don't emit warnings if added vars are not used.
4841         (*this*): Declare as dyn-bound.
4842         (org-babel-expand-src-block, org-babel-load-in-session)
4843         (org-babel-switch-to-session-with-code, org-babel-get-rownames):
4844         Mark unused args.
4845         (org-babel-combine-header-arg-lists): Remove unused var `args'.
4846         (org-babel-find-named-block): Remove unused var `msg'.
4848         * lisp/org/org-src.el (org-inhibit-startup, org-src-fontify-natively):
4849         Declare as dyn-bound.
4850         (org-edit-src-code): Remove unused var `lfmt'.
4851         (org-edit-fixed-width-region): Remove unused var `preserve-indentation'.
4853 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
4855         * lisp/font-lock.el: Use #' to quote function symbols
4857 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
4859         (font-lock-ensure-function): Fix bug#22399
4861         * lisp/font-lock.el (font-lock-ensure-function): Fix handling when
4862         font-lock-mode is not enabled (bug#22399).
4864 2016-01-25  Alan Mackenzie  <acm@muc.de>
4866         Expunge "allow" + infinitive from source and doc, part 2.
4868         Do the same for "permit", "enable", "prevent", and (where appropriate)
4869         "require".
4871         doc/misc/reftex.texi:
4872         doc/misc/url.texi:
4873         lib/get-permissions.c:
4874         lib/strftime.c:
4875         lisp/org/org-element.el:
4876         lisp/org/org-mobile.el:
4877         lisp/textmodes/reftex-vars.el:
4878         src/bidi.c:
4879         src/emacs.c:
4880         src/xdisp.c:
4881         test/etags/c-src/emacs/src/lisp.h:
4883         Expunge the likes of "This allows to do something" from the above files.
4885 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
4887         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-mode): Redundant line
4889         `special-mode' is already read-only.
4891 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
4893         * lisp/emacs-lisp/ert.el (ert--results-move): Change error to user-error
4895 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
4897         Port "$@" to OpenIndiana ksh93
4899         In http://lists.gnu.org/archive/html/bug-autoconf/2015-12/msg00000.html
4900         Pavel Raiskup reports that ${1+"$@"} runs afoul of a bug in /bin/sh
4901         (derived from ksh 93t+ 2010-03-05).  ${1+"$@"} works around an ancient
4902         bug in long-dead shells, so remove the workaround.
4903         * admin/check-doc-strings, configure.ac, lib-src/rcs2log:
4904         Use plain "$@" rather than ${1+"$@"}.
4906 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
4908         * src/xwidget.c (Fxwidget_set_adjustment): Fix doc string quoting typo.
4910 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
4912         Improve wording for SMB support
4914         * doc/misc/tramp.texi (External methods): Improve and modernize
4915         wording for discussion of smbclient.  There is no longer any
4916         need to mention the laundry list of old MS Windows implementations
4917         of SMB and CIFS, nor to mention CIFS.  Also, give a URL for Samba.
4919 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
4921         Merge from gnulib
4923         This incorporates:
4924         2016-01-24 openat_proc_name: fix last '/' overwritten on OS/2 kLIBC
4925         2016-01-24 closedir, dirfd, opendir: port to OpenSolaris 5.10
4926         2016-01-15 detect utimes() correctly on OS/2 kLIBC
4927         2016-01-15 openat_proc_name: port to OS/2 kLIBC
4928         2016-01-14 stdint: check _INTPTR_T_DECLARED for intptr_t etc.
4929         2016-01-14 opendir, closedir, dirfd, fdopendir: port to OS/2 kLIBC
4930         2016-01-14 dup, dup2, fcntl: support a directory fd on OS/2 kLIBC
4931         2016-01-14 binary-io: don't put fd in binary mode if a console on EMX
4932         2016-01-14 sig2str: list all signals on FreeBSD >= 7
4933         2016-01-13 acl-permissions: port to USE_ACL==0 platforms
4934         2016-01-12 mktime: rename macro to avoid glibc clash
4935         2016-01-12 Port "$@" to OpenIndiana ksh93
4936         2016-01-12 Port Universal Time settings to strict POSIX
4937         * build-aux/gitlog-to-changelog, build-aux/update-copyright:
4938         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
4939         * lib/binary-io.h, lib/dirent.in.h, lib/dirfd.c, lib/dup2.c:
4940         * lib/fcntl.c, lib/fdopendir.c, lib/mktime.c, lib/openat-proc.c:
4941         * lib/sig2str.h, lib/stdint.in.h, m4/dirfd.m4, m4/dup2.m4:
4942         * m4/fcntl.m4, m4/utimes.m4:
4943         Copy from gnulib.
4944         * m4/gnulib-comp.m4: Regenerate.
4946 2016-01-24  Alan Mackenzie  <acm@muc.de>
4948         Expunge "allow" + infinitive without direct object from source and doc.
4950         Do the same for "permit", "enable", and "prevent".
4952         * doc/emacs/mule.texi:
4953         * doc/lispref/control.texi:
4954         * doc/lispref/display.texi:
4955         * doc/lispref/frames.texi:
4956         * doc/lispref/functions.texi:
4957         * doc/lispref/nonascii.texi:
4958         * doc/lispref/streams.texi:
4959         * doc/lispref/windows.texi:
4960         * doc/misc/dbus.texi:
4961         * doc/misc/eww.texi:
4962         * doc/misc/flymake.texi:
4963         * doc/misc/octave-mode.texi:
4964         * doc/misc/org.texi:
4965         * doc/misc/reftex.texi:
4966         * doc/misc/tramp.texi:
4967         * doc/misc/wisent.texi:
4968         * etc/NEWS:
4969         * lisp/autorevert.el:
4970         * lisp/cedet/mode-local.el:
4971         * lisp/cedet/semantic/senator.el:
4972         * lisp/cedet/semantic/wisent.el:
4973         * lisp/dos-fns.el:
4974         * lisp/frameset.el:
4975         * lisp/gnus/gnus-agent.el:
4976         * lisp/gnus/mm-util.el:
4977         * lisp/international/characters.el:
4978         * lisp/ldefs-boot.el:
4979         * lisp/mail/mailclient.el:
4980         * lisp/man.el:
4981         * lisp/mh-e/mh-search.el:
4982         * lisp/net/tramp-cmds.el:
4983         * lisp/net/tramp-gvfs.el:
4984         * lisp/org/org-crypt.el:
4985         * lisp/org/org-element.el:
4986         * lisp/org/org-feed.el:
4987         * lisp/org/org.el:
4988         * lisp/org/ox-ascii.el:
4989         * lisp/org/ox-icalendar.el:
4990         * lisp/org/ox-publish.el:
4991         * lisp/org/ox.el:
4992         * lisp/play/gamegrid.el:
4993         * lisp/play/gomoku.el:
4994         * lisp/progmodes/antlr-mode.el:
4995         * lisp/progmodes/python.el:
4996         * lisp/progmodes/vhdl-mode.el:
4997         * lisp/strokes.el:
4998         * lisp/textmodes/ispell.el:
4999         * lisp/tree-widget.el:
5000         * lisp/vc/pcvs.el:
5001         * lisp/window.el:
5002         * src/lisp.h:
5003         * src/w32.c:
5004         * src/w32heap.c:
5005         * src/w32term.c:
5006         * src/window.c:
5007         * src/xfaces.c:
5009         Replace solecisms like "This allow to do something" with a correct
5010         alternative, such as "This allow you to do something", "This allows
5011         something to be done" or "This allows the doing of something".
5013 2016-01-24  l3thal  <kwhite@gnu.org>
5015         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
5017 2016-01-24  Kelvin White  <kwhite@gnu.org>
5019         Add NEWS entry for asynchronous reconnect in ERC
5021 2016-01-24  l3thal  <kwhite@gnu.org>
5023         Add NEWS entry for asynchronous reconnect in ERC
5025 2016-01-24  Kelvin White  <kwhite@gnu.org>
5027         browse-url.el: Add 'google-chrome' to supported browsers.
5029 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
5031         Port Tramp manual to latest Texinfo
5033         Otherwise, 'make pdf' did not work (Bug#22416).
5034         * doc/misc/tramp.texi (xxx, yyy): Remove macros.
5035         (trampfn): Specialize to the case where METHOD is nonempty.
5036         The 2nd argument is now user@host, not 2nd user and 3rd host args.
5037         All uses changed.
5038         (trampf): New macro.
5040 2016-01-24  Lars Ingebrigtsen  <larsi@gnus.org>
5042         * eww.el (eww-render): Protect against empty content-types.
5044 2016-01-24  Nicolas Petton  <nicolas@petton.fr>
5046         authors.el updates
5048         * admin/authors.el (authors-ignored-files, authors-renamed-files-alist):
5049           Additions.
5051 2016-01-23  Dmitry Gutov  <dgutov@yandex.ru>
5053         Rename xref-query-replace to xref-query-replace-in-results
5055         * lisp/progmodes/xref.el(xref-query-replace):
5056         Rename to xref-query-replace-in-results.
5057         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01240.html)
5059         * lisp/progmodes/xref.el (xref--xref-buffer-mode-map):
5060         * lisp/dired-aux.el (dired-do-find-regexp-and-replace):
5061         * doc/emacs/dired.texi (Operating on Files):
5062         * doc/emacs/maintaining.texi (Xref Commands)
5063         (Identifier Search, Identifier Search): Update accordingly.
5065 2016-01-23  Dmitry Gutov  <dgutov@yandex.ru>
5067         Update cl-defgeneric and cl-defmethod docstrings
5069         * lisp/emacs-lisp/cl-generic.el: Remove outdated TODO item.
5070         (cl-defgeneric): Rename BODY to DEFAULT-BODY.
5071         (cl-defmethod): Mention that multiple dispatch arguments are
5072         allowed.  Document supported types.  (Bug#22336)
5074 2016-01-23  Dmitry Gutov  <dgutov@yandex.ru>
5076         Comment out next-error-function integration in xref
5078         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
5079         Comment out next-error-function integration
5080         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01286.html).
5082 2016-01-23  John Wiegley  <johnw@newartisans.com>
5084         Correct a use of "which" in intro.texi
5086 2016-01-23  Alan Mackenzie  <acm@muc.de>
5088         Distinguish the two meanings of Java's keyword "default".  Fixes bug #22358.
5090         * lisp/progmodes/cc-engine.el (c-guess-basic-syntax CASE 14): Check the
5091         context of case labels (including "default") more rigorously.
5092         (c-guess-basic-syntax CASE 15): Consequential amendment.
5094         * lisp/progmodes/cc-langs.el (c-modifier-kwds): Add "default" to Java's value.
5096 2016-01-23  Oscar Fuentes  <ofv@wanadoo.es>
5098         Don't operate on menu bar of nonexistent frame
5100         * src/xfns.c (Fx_hide_tip) [USE_LUCID]: Check that the current frame
5101         is valid before redisplaying its menu. Fixes bug#22438.
5103 2016-01-23  Anders Lindgren  <andlind@gmail.com>
5105         Unbreak the GNUstep build.
5107         * src/nsterm.m ([EmacsBell init]): In GNUstep, don't use the
5108         predefined "caution" image. Add trace.
5109         (x_set_window_size): Remove unused variables `cols' and `rows'.
5110         (ns_draw_fringe_bitmap): Exclude assignment of `fromRect' when
5111         GNUstep is used.
5112         ([EmacsView updateFrameSize:]): Remove unused variable `win'.
5113         ([EmacsWindow zoom:]): Remove unused variable `f'.
5115 2016-01-23  Eli Zaretskii  <eliz@gnu.org>
5116             John Wiegley  <johnw@gnu.org>
5117             Michael Heerdegen  <michael_heerdegen@web.de>
5119         Improve documentation of 'pcase'
5121         * doc/lispref/control.texi (Pattern matching case statement):
5122         Reorganize, expand, and improve wording.
5124         * etc/NEWS: Mention that 'pcase' changes are documented.
5126 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
5128         * etc/NEWS: Say that Cairo is experimental.
5130 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
5132         Report error for PNG under Cairo
5134         * src/image.c (lookup_rgb_color): Signal a file error instead
5135         of dumping core when mishandling an image.
5137 2016-01-23  Arash Esbati  <esbati@gmx.de>
5139         Delete a spurious backquote (tiny change)
5141         * lisp/textmodes/reftex-ref.el (reftex-label): Delete a
5142         spurious backquote which raises an error with emacs 25.
5144 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
5146         Pacify --enable-gcc-warnings --with-cairo
5148         Problem reported by Alexander Kuleshov in:
5149         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01289.html
5150         * src/gtkutil.c (xg_get_page_setup):
5151         Use switch rather than if-then-else.
5152         * src/image.c (COLOR_TABLE_SUPPORT):
5153         Define directly rather than via #define and optional later #undef.
5154         (lookup_rgb_color) [USE_CAIRO && ENABLE_CHECKING]:
5155         Crash when the pixel is undefined, as there is a genuine bug
5156         here (Bug#22442).
5157         * src/image.c (tiff_load, gif_load, svg_load_image)
5158         (x_kill_gs_process) [USE_CAIRO]:
5159         * src/xterm.c (x_draw_fringe_bitmap) [USE_CAIRO]:
5160         Omit unused locals, or move them to where they’re needed.
5161         (x_clear_area1): Now ATTRIBUTE_UNUSED.
5163 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
5165         Update documentation for Dired search and replace
5167         * doc/emacs/dired.texi (Operating on Files): Update descriptions
5168         of 'A' and 'Q' now bound to 'dired-do-find-regexp' and
5169         'dired-do-find-regexp-and-replace'.
5171         * etc/NEWS: Mention xref-related changes in Dired.
5173 2016-01-22  Paul Eggert  <eggert@cs.ucla.edu>
5175         Port recent xdisp.c fix to picky C compilers
5177         * src/xdisp.c (dump_glyph): Redo the call to fprintf to avoid
5178         putting #if inside the arguments to a standard function, which
5179         the C standard says has undefined behavior.
5181 2016-01-22  Alan Mackenzie  <acm@muc.de>
5183         Prevent spurious recognition of K&R argument declarations.  Fixes bug #2203
5185         * cc-engine.el (c-forward-declarator): New function.
5186         (c-in-knr-argdecl): Before recognizing a K&R argument declaration, check it is
5187         contained in the preceding arg list.
5189         * cc-fonts.el (c-font-lock-declarators): Use the new function
5190         `c-forward-declarator' in place of inline code.
5192 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
5194         Fix the build with --enable-checking=glyphs
5196         * src/xdisp.c (dump_glyph): Don't refer to glyph->u.xwidget in a
5197         build without xwidget support.
5199 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
5201         Document cl-generic.el
5203         * doc/lispref/functions.texi (Generic Functions): New section.
5204         (Bug#22336)
5205         (Functions): Update the chapter menu.
5206         * doc/lispref/elisp.texi: Update the master menu.
5208 2016-01-22  Paul Eggert  <eggert@cs.ucla.edu>
5210         xwidgets style cleanup
5212         Adjust the newly-added Xwidgets code so that it uses a more-typical
5213         Emacs style.  This should not affect behavior, except that in
5214         a few places it adds runtime checks that Lisp arguments are of
5215         the proper type, and in one place it uses more-precise arithmetic.
5216         * src/buffer.c, src/dispnew.c, src/emacs.c, src/emacsgtkfixed.c:
5217         * src/emacs.c, src/print.c, src/window.c, src/xdisp.c, src/xterm.c:
5218         Include xwidget.h unconditionally.
5219         * src/buffer.c (Fkill_buffer):
5220         * src/dispnew.c (update_window):
5221         * src/emacs.c (main):
5222         * src/print.c (print_object):
5223         * src/window.c (Fdelete_window_internal):
5224         * src/xdisp.c (handle_single_display_spec, push_it, pop_it)
5225         (get_next_element, set_iterator_to_next, next_element_from_xwidget)
5226         (dump_glyph, calc_pixel_width_or_height, BUILD_GLYPH_STRINGS_XW)
5227         (BUILD_GLYPH_STRINGS, x_produce_glyphs, get_window_cursor_type):
5228         * src/xterm.c (x_draw_glyph_string, x_draw_bar_cursor):
5229         Call xwidget functions and macros without worrying about
5230         HAVE_XWIDGETS when the code is a no-op on non-xwidget
5231         platforms.
5232         * src/dispextern.h (XWIDGET_GLYPH, struct glyph_string.xwidget)
5233         (IT_XWIDGET, GET_FROM_XWIDGET, struct it.u.xwidget)
5234         (struct it.xwidget):
5235         * src/lisp.h (PVEC_XWIDGET, PVEC_XWIDGET_VIEW):
5236         Always define.
5237         * src/emacsgtkfixed.h: Omit unnecessary comment.
5238         * src/keyboard.c: Fix spacing.
5239         * src/xdisp.c (BUILD_XWIDGET_GLYPH_STRING, produce_xwidget_glyph):
5240         Define to be a no-op if not HAVE_XWIDGETS.
5241         * src/xwidget.c: Include xwidget.h first (after config.h)
5242         to make sure that it can stand by itself.
5243         (Fmake_xwidget, Fxwidget_webkit_execute_script):
5244         Fix typo in doc string.
5245         (Fmake_xwidget): Check type of args.
5246         (Fmake_xwidget, offscreen_damage_event)
5247         (webkit_document_load_finished_cb, webkit_download_cb)
5248         (webkit_new_window_policy_decision_requested_cb)
5249         (webkit_navigation_policy_decision_requested_cb)
5250         (xwidget_osr_draw_cb, xwidget_osr_event_forward)
5251         (xwidget_osr_event_set_embedder, xwidget_init_view):
5252         Omit unnecessary casts.
5253         * src/xwidget.c (Fmake_xwidget, xwidget_hidden)
5254         (xwidget_show_view, xwidget_hide_view)
5255         (x_draw_xwidget_glyph_string, xwidget_start_redisplay, xwidget_touch)
5256         (xwidget_touched):
5257         * src/xwidget.h (struct xwidget.kill_without_query)
5258         (struct xwidget_view.redisplayed, struct xwidget_view.hidden):
5259         Use bool for boolean.
5260         * src/xwidget.c (store_xwidget_event_string, Fxwidget_size_request):
5261         Simplify by using list functions.
5262         (WEBKIT_FN_INIT): Omit unnecessary test for nil.
5263         (Fxwidget_resize): Check type of integer args
5264         before doing any work.  Check that they are nonnegative.
5265         (Fxwidget_set_adjustment): Check type of integer arg.
5266         Avoid redundant call to gtk_scrolled_window_get_vadjustment.
5267         Simplify.  Use double, not float.
5268         (Fxwidget_info, Fxwidget_view_info): Simplify by using CALLN.
5269         (valid_xwidget_spec_p): Simplify.
5270         (xwidget_spec_value): Omit unused arg FOUND.  All callers changed.
5271         * src/xwidget.h: Include lisp.h first, so that includers do
5272         not need to worry about doing that before including this file.
5273         Make this .h file safe to include even on non-HAVE_XWIDGETS
5274         configurations, to simplify the includers.
5275         (x_draw_xwidget_glyph_string, syms_of_xwidget, valid_xwidget_spec_p)
5276         (xwidget_end_redisplay, lookup_xwidget)
5277         (xwidget_view_delete_all_in_window, kill_buffer_xwidgets):
5278         Now a no-op if !HAVE_XWIDGETS, to simplify callers.
5279         (struct glyph_matrix, struct glyph_string, struct xwidget)
5280         (struct xwidget_view, struct window):
5281         New forward or incomplete decls, so that includers need not
5282         assume the corresponding .h files are already included, or that
5283         HAVE_XWIDGETS is defined.
5284         (struct xwidget_type, xwidget_from_id): Remove; unused.
5286 2016-01-22  John Wiegley  <johnw@newartisans.com>
5288         Further corrections to the pcase docstring
5290 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
5292         * doc/emacs/anti.texi (Antinews): Rewrite for Emacs 25.
5294 2016-01-21  Stephen Leake  <stephen_leake@stephe-leake.org>
5296         In xref-collect-references, force backends to respect the 'dir' arg
5298         * lisp/progmodes/xref.el (xref-collect-references): Force symref backends
5299         to use `default-directory'.
5301 2016-01-21  John Wiegley  <johnw@newartisans.com>
5303         Minor correction to pcase docstring
5305 2016-01-21  John Wiegley  <johnw@newartisans.com>
5307         Write a new docstring for the pcase macro
5309         * lisp/emacs-lisp/pcase.el (pcase): Write a new docstring.
5311 2016-01-21  Stephen Berman  <stephen.berman@gmx.net>
5313         Avoid byte-compiler warning in todo-mode (bug#21953)
5315         * todo-mode.el (todo-convert-legacy-files): Add limit argument
5316         to looking-back to comply with advertised-calling-convention.
5318 2016-01-21  Stephen Berman  <stephen.berman@gmx.net>
5320         Fix desktop support in todo-mode and doc-view (bug#22377)
5322         * lisp/calendar/todo-mode.el (todo-restore-desktop-buffer):
5323         * lisp/doc-view.el (doc-view-restore-desktop-buffer): Return current buffer.
5325         * lisp/calendar/todo-mode.el (todo-modes-set-2):
5326         * lisp/doc-view.el (doc-view-mode): Set desktop-save-buffer unconditionally.
5328 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
5330         No need to configure gobject-introspection
5332         It wasn’t needed for the recently-installed xwidget_mvp code; see:
5333         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01154.html
5334         * configure.ac (DOES_XWIDGETS_USE_GIR, GIR_REQUIRED, GIR_MODULES):
5335         (HAVE_GIR):
5336         * src/Makefile.in (GIR_LIBS, GIR_CFLAGS):
5337         Remove.  All uses removed.
5338         * configure.ac (emacs_config_features): Don’t worry about GIR.
5340 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
5342         Don’t export C symbols not used elsewhere
5344         These were recently added, mostly as part of xwidget code.
5345         * src/emacsgtkfixed.c (emacs_fixed_get_type): Now static.
5346         (EMACS_FIXED, EMACS_FIXED_GET_CLASS):
5347         Now static functions here, not macros in emacsgtkfixed.h.
5348         * src/emacsgtkfixed.h (EMACS_TYPE_FIXED):
5349         Remove.  All uses replaced by definiens.
5350         (EMACS_FIXED, EMACS_FIXED_GET_CLASS):
5351         Remove; these are now static functions in emacsgtkfixed.c.
5352         (EMACS_FIXED_CLASS, EMACS_IS_FIXED, EMACS_IS_FIXED_CLASS):
5353         Remove; unused.
5354         (emacs_fixed_get_type): Remove decl; no longer extern.
5355         * src/xwidget.c (offscreen_damage_event)
5356         (webkit_mime_type_policy_typedecision_requested_cb)
5357         (webkit_new_window_policy_decision_requested_cb)
5358         (webkit_navigation_policy_decision_requested_cb)
5359         (xwidget_spec_value, xwidget_view_lookup)
5360         (xwidget_start_redisplay, xwidget_touch):
5361         Now static.
5362         * src/xwidget.h (xwidget_start_redisplay, xwidget_touch):
5363         Remove decls.
5365 2016-01-20  Dmitry Gutov  <dgutov@yandex.ru>
5367         Support squiggly heredocs in ruby-mode
5369         * lisp/progmodes/ruby-mode.el (ruby-here-doc-beg-re):
5370         Support squiggly heredocs added in Ruby 2.3.
5372         * test/indent/ruby.rb: Add squiggly example.
5374 2016-01-20  Glenn Morris  <rgm@gnu.org>
5376         * configure.ac (emacs_config_features): Remove WEBKIT.
5378 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
5380         Port to platforms with gtk3 but not webkitgtk3
5382         I ran into this problem on my Fedora 23 installation;
5383         Emacs configured but did not build when --with-xwidgets was specified.
5384         * configure.ac (HAVE_WEBKIT, HAVE_GIR): Omit unnecessary initializations.
5385         (DOES_XWIDGETS_USE_GIR): New var.
5386         If --with-xwidgets is specified, report an error if not
5387         doable, to be consistent with the other --with options.
5388         Require webkitgtk3 to use Xwidgets, as the Xwidgets code does
5389         not work at all without webkitgtk3.  Simplify use of
5390         EMACS_CHECK_MODULES.  Output message about gobject
5391         introspection only if xwidgets are used.
5392         * etc/NEWS: Users need webkitgtk3, not merely webkit.
5393         * src/xwidget.c (syms_of_xwidget): Don’t worry about HAVE_WEBKIT_OSR,
5394         since this file is no longer compiled if webkitgtk3 is not available.
5396 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
5398         Fix doc string of 'isearch-search-fun-function'
5400         * lisp/isearch.el (isearch-search-fun-function)
5401         (isearch-search-string): Doc fixes.  (Bug#22411)
5403 2016-01-19  Stefan Monnier  <monnier@iro.umontreal.ca>
5405         * lisp/xwidget.el: Nitpicks
5407         * lisp/xwidget.el (xwidget-log, xwidget-webkit-callback):
5408         Use with-current-buffer rather than save-excursion + set-buffer.
5410 2016-01-19  Glenn Morris  <rgm@gnu.org>
5412         Don't hard-code 1 as point-min.
5414         * lisp/image-mode.el (image-display-size):
5415         * lisp/xwidget.el (xwidget-webkit-last-session)
5416         (xwidget-webkit-current-session): Don't hard-code 1 as point-min.
5418 2016-01-19  Glenn Morris  <rgm@gnu.org>
5420         * lisp/xwidget.el: Add declarations to silence non-xwidget compilation.
5422 2016-01-19  Glenn Morris  <rgm@gnu.org>
5424         Trivial doc copyedits.
5426         * src/xwidget.c (Fmake_xwidget, Fget_buffer_xwidgets)
5427         (Fxwidget_webkit_get_title, Fxwidget_resize)
5428         (Fxwidget_set_adjustment, Fxwidgetp, Fxwidget_view_p)
5429         (Fxwidget_info, Fxwidget_view_lookup)
5430         (Fset_xwidget_query_on_exit_flag): Trivial doc copyedits.
5432 2016-01-19  Glenn Morris  <rgm@gnu.org>
5434         Avoid advising image-display-size for xwidgets.
5436         * lisp/xwidget.el (xwidget-image-display-size): Remove.
5437         (image-display-size): Remove advice.
5438         * lisp/image-mode.el (xwidget-info, xwidget-at): Declare.
5439         (image-display-size): Incorporate xwidget code directly.
5441 2016-01-19  Glenn Morris  <rgm@gnu.org>
5443         Avoid breaking non-xwidget Emacs that happen to load xwidget.el.
5445         * lisp/xwidget.el (window-configuration-change-hook)
5446         (kill-buffer-query-functions): Only modify these hooks if
5447         compiled with xwidget support.
5449 2016-01-19  Glenn Morris  <rgm@gnu.org>
5451         * lisp/xwidget.el (xwidget-webkit-scroll-behaviour): Fix custom spec.
5453         * configure.ac (WEBKIT, GIR, CAIRO): Use EMACS_CHECK_MODULES, not PKG_.
5455         * configure.ac (emacs_config_features): Add XWIDGETS, WEBKIT, GIR.
5457         * configure.ac (HAVE_WEBKIT_OSR): Remove broken, duplicated gtk3 test.
5459 2016-01-19  Katsumi Yamaoka  <yamaoka@jpl.org>
5461         * lisp/gnus/nnir.el (nnir-request-update-mark):
5462         Default to the original mark.
5463         cf. <http://thread.gmane.org/gmane.emacs.gnus.general/86583>
5464         and <http://thread.gmane.org/gmane.emacs.gnus.general/86640>
5466 2016-01-19  Glenn Morris  <rgm@gnu.org>
5468         * lisp/xwidget.el (report-xwidget-bug): Remove.
5470         (top-level): No longer require reporter.
5472 2016-01-19  Joakim Verona  <joakim@verona.se>
5473             Grégoire Jadi  <daimrod@gmail.com>
5475         Support for the new Xwidget feature.
5477         * configure.ac:
5478         (HAVE_XWIDGETS, WIDGET_OBJ, EMACS_CONFIG_FEATURES):
5479         * xterm.c (x_draw_glyph_string, x_draw_bar_cursor):
5480         * xdisp.c:
5481         (handle_display_spec, handle_single_display_spec, push_it)
5482         (pop_it, set_iterator_to_next, dump_glyph)
5483         (calc_pixel_width_or_height, fill_xwidget_glyph_string)
5484         (BUILD_XWIDGET_GLYPH_STRING, BUILD_GLYPH_STRINGS)
5485         (produce_xwidget_glyph, x_produce_glyphs)
5486         (get_window_cursor_type):
5487         * window.c (Fdelete_window_internal):
5488         * termhooks.h (e):
5489         * print.c (print_object):
5490         * lisp.h (ptrdiff_t):
5491         * keyboard.c (kbd_buffer_get_event, make_lispy_event)
5492         (syms_of_keyboard):
5493         * emacs.c (main):
5494         * dispnew.c (update_window, scrolling_window):
5495         * dispextern.h (g, i):
5496         * Makefile.in (XWIDGETS_OBJ, WEBKIT_CFLAGS, WEBKIT_LIBS)
5497         (GIR_LIBS, ALL_CFLAGS, base_obj, LIBES):
5498         * keyboard.c (kbd_buffer_get_event):
5499         * emacsgtkfixed.c (emacs_fixed_gtk_widget_size_allocate)
5500         (emacs_fixed_class_init): Add case for an xwidget view.
5502         * xwidget.c, xwidget.h, xwidget.el: New files for xwidgets
5505         Various improvements to the Xwidget feature.
5506         * xwidgets.c:
5507         * emacsgtkfixed.c:
5508         * xwidget.el:
5510 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
5512         Improve documentation of 'alist-get'
5514         * doc/lispref/variables.texi (Setting Generalized Variables): Add
5515         'alist-get' to the list of functions that can appear in PLACE
5516         argument of 'setf'.
5518 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
5520         Minor copyedits of doc/emacs/maintaining.texi
5522         * doc/emacs/maintaining.texi (List Identifiers): More accurate
5523         description of "C-M-i" wrt tags tables.
5524         (Tags Tables): Move the definition of "tag" to a footnote.
5526 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
5528         Unbreak the Cygwin-w32 build
5530         * src/w32fns.c (globals_of_w32fns): Move the initialization of
5531         resetstkoflw into a part that isn't compiled on Cygwin.
5532         (Bug#22403)
5534 2016-01-19  Lars Magne Ingebrigtsen  <larsi@gnus.org>
5536         * shr.el (shr-table-body): Allow tables to have text children.
5538 2016-01-19  Phillip Lord  <phillip.lord@russet.org.uk>
5540         Cope with multiple overlapping faces.
5542         * lisp/htmlfontify.el (hfy-face-to-style-i): Treat inheritance right to
5543           left.
5544           (hfy-face-resolve-face): Handle font specification as well as font
5545           name. Documentation update. (Bug#21990)
5547 2016-01-18  Paul Eggert  <eggert@cs.ucla.edu>
5549         Fix spurious escapes in describe-input-method
5551         Problem reported by Vincent Belaïche (Bug#22309).
5552         * lisp/international/mule-cmds.el (describe-language-environment):
5553         * lisp/international/quail.el (quail-help):
5554         Apply substitute-command-keys to doc strings before displaying them.
5556 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
5558         Bump version to 25.0.90
5560         * README:
5561         * configure.ac:
5562         * msdos/sed2v2.inp: Bump version to 25.0.90.
5564 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
5566         * etc/AUTHORS: Update the AUTHORS file
5568 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
5570         authors.el updates
5572         * admin/authors.el (authors-renamed-files-alist): Additions.
5574 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
5576         Make it possible to run make change-history on emacs-25
5578         * Makefile.in: Check if the current branch is emacs-25 instead of
5579           master.
5581 2016-01-30  lu4nx  <lx@shellcodes.org>
5583         Support Go language in 'etags'
5585         * lib-src/etags.c <Ruby_help>: Fix documentation of Ruby tags.
5586         <Go_help>: New help.
5587         <Go_suffixes>: New variable.
5588         (Go_functions): New function.
5589         <lang_names>: Add entry for Go.  (Bug#22370)
5591         * doc/emacs/maintaining.texi (Tag Syntax): Document Go support.
5592         * doc/man/etags.1: Mention Go support.
5594         * etc/NEWS: Mention Go support.
5596         * test/etags/go-src/test.go:
5597         * test/etags/go-src/test1.go: New test files.
5598         * test/etags/Makefile (GOSRC): New variable.
5599         (SRCS): Add $(GOSRC).
5600         * test/etags/ETAGS.good_1:
5601         * test/etags/ETAGS.good_2:
5602         * test/etags/ETAGS.good_3:
5603         * test/etags/ETAGS.good_4:
5604         * test/etags/ETAGS.good_5:
5605         * test/etags/ETAGS.good_6:
5606         * test/etags/CTAGS.good: Adapt to addition of Go tests.
5608 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
5610         Improve Ruby support in 'etags'
5612         * lib-src/etags.c (Ruby_functions): Tag constants.  Don't tag
5613         singleton classes.  Remove class qualifiers from tags generated
5614         for method and constant names.  (Bug#22241)
5616         * doc/emacs/maintaining.texi (Tag Syntax): Mention that constants
5617         are tagged by etags in Ruby.
5619         * etc/NEWS: Mention that constants are tagged by etags in Ruby.
5621         * test/etags/ruby-src/test1.ruby: Add more tests.
5622         * test/etags/ETAGS.good_1:
5623         * test/etags/ETAGS.good_2:
5624         * test/etags/ETAGS.good_3:
5625         * test/etags/ETAGS.good_4:
5626         * test/etags/ETAGS.good_5:
5627         * test/etags/ETAGS.good_6:
5628         * test/etags/CTAGS.good: Adapt to the changes in etags and in Ruby
5629         tests.
5631 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
5633         Adjust etags test results to changes in copyright years
5635         * test/etags/CTAGS.good:
5636         * test/etags/ETAGS.good_1:
5637         * test/etags/ETAGS.good_2:
5638         * test/etags/ETAGS.good_3:
5639         * test/etags/ETAGS.good_4:
5640         * test/etags/ETAGS.good_5:
5641         * test/etags/ETAGS.good_6: Adjust to shift in characters and
5642         in line numbers.
5644 2016-01-30  Andreas Schwab  <schwab@linux-m68k.org>
5646         Revert "Re-enable checks in member, memql, delete to complain about non-lists"
5648         This reverts commit f524e8b7f12d9b5a8b92084e5385429fe7b085b9.
5650 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
5652         Make it possible to run make change-history on emacs-25
5654         * Makefile.in: Check if the current branch is emacs-25 instead of
5655           master.
5657 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
5659         Don't fiddle with DEFAULT
5661         * lisp/progmodes/project.el (project--completing-read-strict):
5662         Don't change DEFAULT, whether is has any matches in
5663         COLLECTION, or not.
5665 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
5667         Document xwidget commands and functions
5669         * doc/lispref/display.texi (Xwidgets): New section, describes some
5670         of the xwidget primitives.
5671         * doc/lispref/display.texi (Display): Update the chapter menu.
5672         * doc/emacs/misc.texi (Embedded WebKit Widgets): New section.
5673         * doc/emacs/emacs.texi (Top): Update the master menu to include
5674         the xwidget node.
5676 2016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
5678         Build fix for shr.el
5680         * shr.el (seq): Require.
5682 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
5684         Improve project-find-file yet again!
5686         * lisp/progmodes/project.el (project--completing-read-strict):
5687         New function.
5688         (project-find-file-in): Use it.
5689         (project-file-completion-table): Move the default
5690         implementation inside the cl-defgeneric form.
5691         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01720.html)
5693 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
5695         Don't pass DIR to 'hg status'
5697         * lisp/vc/vc-hg.el (vc-hg-dir-status-files):
5698         Don't pass DIR to 'hg status' (bug#22481).
5700 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
5702         Fix typo in previous commits
5704         * lisp/progmodes/project.el (project-find-file-in):
5705         * lisp/vc/vc-mtn.el (vc-mtn-find-ignore-file): Fix typo in previous
5706         commit.
5708 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
5710         Improve project-find-file
5712         * lisp/progmodes/project.el (project-file-completion-table): New.
5713         (project-find-file, project-or-external-find-file): Default to filename
5714         at point.
5715         (project-file-completion-table): New, split out from
5716         project--find-file-in.
5717         (project-find-file-in): Renamed from project--find-file-in, use
5718         project-file-completion-table.
5720         * lisp/progmodes/xref.el (ede-minor-mode): New declaration.
5721         (xref--find-ignores-arguments): Add doc string.
5723 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
5725         Implement vc-mtn-find-ignore-file, fix some doc strings
5727         * lisp/cedet/cedet-global.el (cedet-gnu-global-root): Improve doc string.
5729         * lisp/cedet/ede/locate.el (initialize-instance): Improve doc string.
5731         * lisp/vc/vc-git.el (vc-git-find-ignore-file): Fix doc string.
5733         * lisp/vc/vc-mtn.el (vc-mtn-find-ignore-file): New function.
5735 2016-01-23  Michael Albinus  <michael.albinus@gmx.de>
5737         Improve user name completion in Tramp
5739         * lisp/net/tramp.el (tramp-parse-passwd, tramp-parse-etc-group):
5740         Call also "getent passwd" or "getent group", if possible.
5741         (tramp-parse-putty): Cache the result.
5743 2016-01-22  Michael Albinus  <michael.albinus@gmx.de>
5745         * etc/NEWS: Move kqueue entries to Emacs 25.1 sections.
5747 2016-01-20  Glenn Morris  <rgm@gnu.org>
5749         Remove handling of non-string time-stamp formats, obsolete for 20 years.
5751         * lisp/time-stamp.el (time-stamp-format): Doc fix.
5752         (time-stamp-old-format-warn, time-stamp-fconcat): Remove.
5753         (time-stamp-string): Ignore non-string formats.
5755 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
5757         Anoter fix for problematic merge from emacs-25
5759         * src/w32fns.c (globals_of_w32fns): Move initialization of
5760         resetstkoflw to a non-Cygwin part.
5762 2016-01-20  Michael Albinus  <michael.albinus@gmx.de>
5764         * test/Makefile.in (mostlyclean): Use ${LOGFILES}.
5766 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
5768         Fix MS-Windows build broken by a botched merge from emacs-25
5770         * src/w32.c (w32_crypto_hprov): New static variable.
5771         (globals_of_w32): Initialize w32_crypto_hprov.
5772         (w32_init_crypt_random, w32_init_random): New functions.
5773         Include wincrypt.h.
5774         * src/w32.h (w32_init_random): Add prototype.
5776 2016-01-20  Vincent Belaïche  <vincentb1@users.sourceforge.net>
5778         Correct a whole bunch of bugs coming with renamed cell relocation.
5780         * lisp/ses.el (ses-localvars): rename variable
5781         `ses--renamed-cell-symb-list' into `ses--in-killing-named-cell-list'
5782         and adjust the comment about it.
5783         (ses-plist-delq): new defun.
5784         (ses--ses-buffer-list): new defvar.
5785         (ses--unbind-cell-name): new defun.
5786         (ses-relocate-symbol): Do not relocate symbol when it is a named cell.
5787         (ses-relocate-formula): Undo change of
5788         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net that was
5789         preventing relocation for named cell --- now doing this is delegated
5790         to function `ses-relocate-symbol'.
5791         (ses-relocate-range): In docstring, undo change of
5792         2016-01-03T07:31:52Z!johnw@newartisans.com, `ses-range' must remain
5793         lower case as it is not a variable.
5794         (ses-relocate-all): Cell name relocation : 1) check that cell is a
5795         renamed cell by testing `ses-cell' property to :ses-named, rather than
5796         comparing name to corresponding standard name. Set rowcol of renamed
5797         cell into the hashmap --- `ses-cell' property must not be used for
5798         that as the same name can be used for different locations in different
5799         SES sheets ; 2) use `local-variable-if-set-p' rather than `boundp' and
5800         `local-variable-p' to check if cell name is already in use in this
5801         sheet or needs initialization.
5802         (ses-relocate-all): Cell value relocation : 1) like for name
5803         relocation use the `ses-cell' property rather than comparing actual
5804         name to corresponding standard name. 2) Correct bug introduced in
5805         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net, as the test was
5806         made the other way round than the intention --- ie value relocation
5807         was disabled for standard cell, not for renamed cell as was the
5808         intention.
5809         (ses-relocate-all): Add loop for unbinding deleted renamed cells
5810         names.
5811         (ses-killbuffer-hook): new defun.
5812         (ses-mode): Add the ses--ses-buffer-list maintenance mechanism ---
5813         kill buffer hook, plus pushing current buffer if new in list.
5814         (ses-delete-row, ses-delete-column): Collect deleted renamed cells
5815         into `ses--in-killing-named-cell-list'.
5816         (ses-rename-cell): Remove update of variable
5817         `ses--renamed-cell-symb-list', this variable is renamed to
5818         `ses--in-killing-named-cell-list', and its setting is done in
5819         functions `ses-delete-row' and , `ses-delete-column' now.
5820         (ses-rename-cell): Make cell new name a buffer local variable.
5821         (ses-rename-cell): Change correction of
5822         2015-12-30T23:10:37Z!vincentb1@users.sourceforge.net concerning
5823         computation of the range over which `cursor-intangible' property was
5824         to be updated. This correction was ok for non spilling cells, but not
5825         for cells spilling over following blank cells. Simply use
5826         `next-single-property-change' rather than computing the end column
5827         from column widths.
5829 2016-01-19  John Wiegley  <johnw@newartisans.com>
5831         Merge from origin/emacs-25
5833         3ae7934 ; * etc/NEWS: Mark entries that don't need further treatment.
5834         6165c36 * lisp/files.el (dir-locals--all-files): Respect absolute file-names
5835         2ffdf15 * lisp/help-fns.el (describe-variable): Fix a left-over parenthesis
5836         71ecd62 * lisp/dired-x.el (dired-omit-here-always): Use add-dir-local-variable
5837         f0b82b3 * lisp/files.el (dir-locals--all-files): Use completion instead of wildcards
5838         86e4513 Fix incompatbilities with MS-Windows 2000 and older
5839         4e96521 Mention in PROBLEMS an issue with MS-Windows NT4
5840         15c23aa Ensure 8-byte aligned memory allocation on MS-Windows 9X
5841         39afa42 Fix tests for active region in hideif.el
5842         05df666 Fix interactive specs in some hideif.el commands
5844 2016-01-19  John Wiegley  <johnw@newartisans.com>
5846         -
5848 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
5850         Avoid stdio in SIGINT handler
5852         * admin/merge-gnulib (GNULIB_MODULES): Add ignore-value.
5853         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
5854         * lib/ignore-value.h: New file, from gnulib.
5855         * src/keyboard.c: Include it.
5856         (write_stdout, read_stdin): New functions.
5857         (handle_interrupt): Use them instead of printf and getchar,
5858         and avoid fflush when handling signals.
5860 2016-01-19  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
5862         Refactor mml-smime.el, mml1991.el, mml2015.el
5864         (Maybe this is the last merge from Gnus git to Emacs git)
5866         Cf. discussion on ding mailing list, messages in
5867         <http://thread.gmane.org/gmane.emacs.gnus.general/86228>.
5868         Common code from the three files mml-smime.el, mml1991.el, and
5869         mml2015.el is moved to mml-sec.el.  Auxiliary functions are added
5870         to gnus-util.el.
5872         The code is supported by test cases with necessary test keys.
5874         Documentation in message.texi is updated.
5876         * doc/misc/message.texi (Security, Using S/MIME):
5877         Update for refactoring mml-smime.el, mml1991.el, mml2015.el.
5878         (Using OpenPGP): Rename from "Using PGP/MIME"; update contents.
5879         (Passphrase caching, Encrypt-to-self, Bcc Warning): New sections.
5881         * lisp/gnus/gnus-util.el (gnus-test-list, gnus-subsetp, gnus-setdiff):
5882         New functions.
5884         * lisp/gnus/mml-sec.el: Require gnus-util and epg.
5885         (epa--select-keys): Autoload.
5886         (mml-signencrypt-style-alist, mml-secure-cache-passphrase): Doc fix.
5887         (mml-secure-openpgp-signers): New user option;
5888         make mml1991-signers and mml2015-signers obsolete aliases to it.
5889         (mml-secure-smime-signers): New user option;
5890         make mml-smime-signers an obsolete alias to it.
5891         (mml-secure-openpgp-encrypt-to-self): New user option;
5892         make mml1991-encrypt-to-self and mml2015-encrypt-to-self obsolete
5893         aliases to it.
5894         (mml-secure-smime-encrypt-to-self): New user option;
5895         make mml-smime-encrypt-to-self an obsolete alias to it.
5896         (mml-secure-openpgp-sign-with-sender): New user option;
5897         make mml2015-sign-with-sender an obsolete alias to it.
5898         (mml-secure-smime-sign-with-sender): New user option;
5899         make mml-smime-sign-with-sender an obsolete alias to it.
5900         (mml-secure-openpgp-always-trust): New user option;
5901         make mml2015-always-trust an obsolete alias to it.
5902         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
5903         New user options.
5904         (mml-secure-cust-usage-lookup, mml-secure-cust-fpr-lookup)
5905         (mml-secure-cust-record-keys, mml-secure-cust-remove-keys)
5906         (mml-secure-add-secret-key-id, mml-secure-clear-secret-key-id-list)
5907         (mml-secure-cache-passphrase-p, mml-secure-cache-expiry-interval)
5908         (mml-secure-passphrase-callback, mml-secure-check-user-id)
5909         (mml-secure-secret-key-exists-p, mml-secure-check-sub-key)
5910         (mml-secure-find-usable-keys, mml-secure-select-preferred-keys)
5911         (mml-secure-fingerprint, mml-secure-filter-keys)
5912         (mml-secure-normalize-cust-name, mml-secure-select-keys)
5913         (mml-secure-select-keys-1, mml-secure-signer-names, mml-secure-signers)
5914         (mml-secure-self-recipients, mml-secure-recipients)
5915         (mml-secure-epg-encrypt, mml-secure-epg-sign): New functions.
5917         * lisp/gnus/mml-smime.el: Require epg;
5918         refactor declaration and autoloading of epg functions.
5919         (mml-smime-use): Doc fix.
5920         (mml-smime-cache-passphrase, mml-smime-passphrase-cache-expiry):
5921         Obsolete.
5922         (mml-smime-get-dns-cert, mml-smime-get-ldap-cert):
5923         Use format instead of gnus-format-message.
5924         (mml-smime-epg-secret-key-id-list): Remove variable.
5925         (mml-smime-epg-passphrase-callback, mml-smime-epg-find-usable-key)
5926         (mml-smime-epg-find-usable-secret-key): Remove functions.
5927         (mml-smime-epg-sign, mml-smime-epg-encrypt): Refactor.
5929         * lisp/gnus/mml1991.el (mml1991-cache-passphrase)
5930         (mml1991-passphrase-cache-expiry): Obsolete.
5931         (mml1991-epg-secret-key-id-list): Remove variable.
5932         (mml1991-epg-passphrase-callback, mml1991-epg-find-usable-key)
5933         (mml1991-epg-find-usable-secret-key): Remove functions.
5934         (mml1991-epg-sign, mml1991-epg-encrypt): Refactor.
5936         * lisp/gnus/mml2015.el (mml2015-cache-passphrase)
5937         (mml2015-passphrase-cache-expiry): Obsolete.
5938         (mml2015-epg-secret-key-id-list): Remove variable.
5939         (mml2015-epg-passphrase-callback, mml2015-epg-check-user-id)
5940         (mml2015-epg-check-sub-key, mml2015-epg-find-usable-key)
5941         (mml2015-epg-find-usable-secret-key): Remove functions.
5942         (mml2015-epg-decrypt, mml2015-epg-clear-decrypt, mml2015-epg-sign)
5943         (mml2015-epg-encrypt): Refactor.
5945 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
5947         Merge from gnulib
5949         This mostly just updates copyright dates of gnulib files.
5950         It also updates to the latest version of texinfo.tex.
5952 2016-01-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5954         Move variables to inner loop, preparing for Mac port merge
5956         * src/keyboard.c (command_loop_1): Move variables `cmd',
5957         `keybuf', and `i' to inner loop.
5959 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
5961         Minor improvements to (random t) documentation
5963         * doc/lispref/numbers.texi (Random Numbers):
5964         * src/fns.c (Frandom):
5965         Omit unnecessary details about randomness fallback.
5966         Say that it is a fallback.
5968 2016-01-19  Dmitry Gutov  <dgutov@yandex.ru>
5970         Rename methods in Ruby etags example file
5972         * test/etags/ruby-src/test.rb: Rename the example methods to
5973         correspond to the common terminology used in Ruby.
5974         * test/etags/CTAGS.good:
5975         * test/etags/ETAGS.good_1:
5976         * test/etags/ETAGS.good_2:
5977         * test/etags/ETAGS.good_3:
5978         * test/etags/ETAGS.good_4:
5979         * test/etags/ETAGS.good_5:
5980         * test/etags/ETAGS.good_6: Adjust accordingly.
5982 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
5984         Propertize backtick in 'def `(abc)' as symbol constituent
5986         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
5987         Propertize backtick in 'def `(abc)' as symbol constituent.
5988         (ruby-syntax-propertize-function):
5989         Rename to ruby-syntax-propertize.
5991 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
5993         Fix scrolling under scroll-preserve-screen-position on TTY
5995         * src/window.c (window_scroll_line_based): When setting point to
5996         preserve screen coordinates, don't let cursor enter either of the
5997         two scroll margins.  (Bug#22395)
5999 2016-01-18  Lars Magne Ingebrigtsen  <larsi@gnus.org>
6001         Fix shr table rendering of nested tables
6003         * shr.el (shr-table-body): Don't include all tbodies in nested
6004         tables in the levels above.
6006 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
6008         * lisp/progmodes/project.el (project--read-regexp): Quote the identifier.
6010 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
6012         Add xref-based replacements for Dired search commands
6014         * lisp/dired-aux.el (dired-do-find-regexp)
6015         (dired-do-find-regexp-and-replace): New commands.
6016         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00864.html
6018         * lisp/dired.el (dired-mode-map): Change bindings for `A' and
6019         `Q' to the new commands.
6021         * lisp/progmodes/xref.el (xref-query-replace)
6022         (xref-collect-matches): Add progress reporters.
6023         (xref--find-ignores-arguments): Return nil for zero ignores.
6024         (xref--show-xrefs): Add an optional argument.
6025         (xref-collect-matches): Drop the assert.  'find' accepts a
6026         regular file in place of directory argument, too.
6028 2016-01-18  Alan Mackenzie  <acm@muc.de>
6030         * doc/lispref/frames.texi (Position Parameters): Say they don't exist on TTYs.
6032 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
6034         Improve user documentation of Xref
6036         * doc/emacs/maintaining.texi (Xref, Find Identifiers)
6037         (Looking Up Identifiers, Identifier Search, List Identifiers):
6038         Adjudicate comments by Dmitry Gutov <dgutov@yandex.ru>.  See
6039         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00650.html
6040         for the details.
6042 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
6044         Fix scrolling under scroll-preserve-screen-position and margins
6046         * src/window.c (window_scroll_pixel_based): When setting point to
6047         preserve screen coordinates, don't let cursor enter either of the
6048         two scroll margins.  Fix incorrect usage of
6049         WINDOW_WANTS_HEADER_LINE_P and use WINDOW_HEADER_LINE_HEIGHT
6050         instead of CURRENT_HEADER_LINE_HEIGHT.  (Bug#22395)
6052 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
6054         Unbreak the MS-Windows build
6056         * src/sysdep.c (emacs_gnutls_global_init, gnutls_rnd): Disable for
6057         WINDOWSNT, to avoid link failure.  (Bug#22202)
6059 2016-01-18  Alan Mackenzie  <acm@muc.de>
6061         Desktop: protect users against inadvertant upgrading of desktop file.
6063         An upgraded (version 208) desktop file cannot be read in Emacs < 25.
6065         * etc/NEWS: Add an entry about upgrading a desktop file.
6067         * lisp/desktop.el (desktop-file-version): Amend doc string.
6068         (desktop-native-file-version, desktop-io-file-version): new variables.
6069         (desktop-clear): Set desktop-io-file-version to nil.
6070         (desktop-buffer-info): make the presence of the last item on the list
6071         conditional on (>= desktop-io-file-version 208).
6072         (desktop-save): Add extra parameter VERSION to take user's C-u or C-u C-u.
6073         Amend the doc string.  Add code to determine the output file version.
6074         (desktop-create-buffer): Set desktop-io-file-version to the input file's
6075         version.
6077 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
6079         Initialize GnuTLS before calling gnutls_rnd
6081         * src/gnutls.c (emacs_gnutls_global_init): Now extern.
6082         Don’t set gnutls_global_initialized if gnutls_global_init fails.
6083         * src/sysdep.c: Include "gnutls.h", and <gnutls/crypto.h>
6084         if 2.12 or later, which has gnutls_rnd.
6085         (emacs_gnutls_global_init, gnutls_rnd): New fallback
6086         placeholder macros if before 2.12.
6087         (init_random): Initialize gnutls globals before trying to
6088         use gnutls_rnd.
6090 2016-01-17  Andreas Schwab  <schwab@linux-m68k.org>
6092         Don't use GnuTLS before it is initialized
6094                 * src/sysdep.c (init_random): Don't use gnutls_rnd.
6096 2016-01-17  Bill Wohler  <wohler@newt.com>
6098         * mh-e.el (mh-version): Add +git to version.
6100 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
6102         Port cleanup attribute to OpenBSD
6104         The OpenBSD C compiler issues false alarms about strcpy, strcat, and
6105         sprintf, and this messes up 'configure' when it tests for the cleanup
6106         attribute.  Work around the problem by using __has_attribute directly.
6107         Problem reported by Joakim Jalap (Bug#22385).
6108         * configure.ac: Don’t use AX_GCC_VAR_ATTRIBUTE.
6109         * m4/ax_gcc_var_attribute.m4: Remove.
6110         * src/conf_post.h (__has_attribute): Provide a substitute, for
6111         non-GCC or older GCC compilers.  All uses changed to assume
6112         the substitute.  Check for the cleanup attribute.
6113         * src/emacs-module.c (module_has_cleanup): Just use __has_attribute.
6115 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
6117         Prefer GnuTLS when acquiring random seed
6119         This attempts to improve on the fix for Bug#22202.
6120         * configure.ac (HAVE_DEV_URANDOM): Remove.
6121         Check /dev/urandom existence at run time, not at build time,
6122         since the device could exist in the former but not the latter.
6123         * src/sysdep.c [HAVE_GNUTLS]: Include gnutls/gnutls.h.
6124         (gnutls_rnd) [GNUTLS_VERSION_NUMBER < 0x020c00]: New fallback macro.
6125         (random_seed): New typedef.
6126         (set_random_seed): New static function.
6127         (seed_random): Use them.
6128         (init_random): Use random_seed instead of uintmax_t, so as to
6129         not consume more entropy than needed.  Prefer gnutls_rnd if it
6130         works; this avoids a redundant open of /dev/urandom on
6131         GNU/Linux with modern GnuTLS.
6133 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
6135         Improve documentation of dynamic modules
6137         * doc/lispref/loading.texi (How Programs Do Loading): Update the
6138         description of searching for files in 'load' when Emacs was built
6139         with support for dynamic modules.
6141 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
6143         * INSTALL: Document --with-modules.
6145 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
6147         Document 'function-put'
6149         * doc/lispref/symbols.texi (Symbol Plists): Document
6150         'function-put'.  Update documentation of 'function-get'.
6152 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
6154         Document 'funcall-interactively'
6156         * doc/lispref/commands.texi (Interactive Call): Document
6157         'funcall-interactively'.
6158         * doc/lispref/functions.texi (Calling Functions): Mention
6159         'funcall-interactively' and provide a cross-reference.
6161 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
6163         * doc/lispref/lists.texi (Association Lists): Document 'alist-get'.
6165         * doc/lispref/strings.texi (Text Comparison): Document 'string-greaterp'.
6167 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
6169         Document renaming of selection-related functions
6171         * doc/lispref/frames.texi (Window System Selections): Rename "x-*"
6172         functions into the corresponding "gui-*" functions.  Make the
6173         description slightly less X-centric.
6175 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
6177         * doc/lispref/macros.texi (Expansion): Document 'macroexpand-1'.
6179 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
6181         Document 'define-inline'
6183         * doc/lispref/functions.texi (Defining Functions): Document
6184         'define-inline' and related macros.
6186         * lisp/emacs-lisp/inline.el (inline-letevals): Doc fix.
6188 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
6190         * lisp/files.el (dir-locals--all-files): Respect absolute file-names
6192         * lisp/help-fns.el (describe-variable): Fix a left-over parenthesis
6194 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
6196         * lisp/dired-x.el (dired-omit-here-always): Use add-dir-local-variable
6198         instead of manually writing a dir-locals file.
6200 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
6202         * lisp/files.el (dir-locals--all-files): Use completion instead of wildcards
6204         (dir-locals-file)
6205         * lisp/files-x.el (modify-dir-local-variable)
6206         * lisp/dos-fns.el (dosified-file-name)
6207         * lisp/help-fns.el (describe-variable): Change accordingly.
6209 2016-01-16  Jussi Lahdenniemi  <jussi@aprikoodi.fi>  (tiny change)
6211         Fix incompatbilities with MS-Windows 2000 and older
6213         * src/w32.c <multiByteToWideCharFlags>: New global variable.
6214         (filename_to_utf16, filename_from_ansi, check_windows_init_file):
6215         Use it instead of the literal MB_ERR_INVALID_CHARS.
6216         (maybe_load_unicows_dll): Initialize multiByteToWideCharFlags as
6217         appropriate for the underlying OS version.  For details, see
6218         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00835.html.
6219         * src/w32.h: Declare multiByteToWideCharFlags.
6220         * src/w32fns.c (Fx_file_dialog, Fw32_shell_execute)
6221         (add_tray_notification): Use multiByteToWideCharFlags instead of
6222         the literal MB_ERR_INVALID_CHARS.
6223         (_resetstkoflw_proc): New typedef.
6224         (w32_reset_stack_overflow_guard): Call _resetstkoflw via a
6225         pointer, as this function is absent in msvcrt.dll shipped with W2K
6226         and older systems.
6228 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
6230         Mention in PROBLEMS an issue with MS-Windows NT4
6232         * etc/PROBLEMS (MS-Windows): Mention the problem with Shell32.dll
6233         on Windows NT4.  For the details, see
6234         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00835.html.
6236 2016-01-16  Jussi Lahdenniemi  <jussi@aprikoodi.fi>  (tiny change)
6238         Ensure 8-byte aligned memory allocation on MS-Windows 9X
6240         * src/w32heap.c (init_heap): Redirect malloc, realloc, and free to
6241         special functions on Windows 9X.  Refuse to dump Emacs on Windows 9X.
6242         (malloc_after_dump_9x, realloc_after_dump_9x)
6243         (free_after_dump_9x): New functions.  (Bug#22379)  See also
6244         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00852.html
6245         for more details about the original problem.
6247         * nt/inc/ms-w32.h (malloc_after_dump_9x, realloc_after_dump_9x)
6248         (free_after_dump_9x): Add prototypes.
6250 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
6252         Fix tests for active region in hideif.el
6254         * lisp/progmodes/hideif.el (hif-evaluate-macro, hide-ifdef-block): Use
6255         'use-region-p' to test whether to operate on region, instead of
6256         testing 'mark-active'.
6258 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
6260         Fix interactive specs in some hideif.el commands
6262         * lisp/progmodes/hideif.el (hif-evaluate-macro)
6263         (hide-ifdef-undef, show-ifdef-block): Don't use '(interactive "r")'
6264         in commands that should only act on the region if it's active.
6266 2016-01-15  Phillip Lord  <phillip.lord@russet.org.uk>
6268         Enable test selector from command line
6270         * test/automated/Makefile.in: Change variable manipulation to avoid
6271           over-writing selector.
6273 2016-01-15  Alan Mackenzie  <acm@muc.de>
6275         Don't confuse "::" with ":" when trying to parse member initializers.
6277         * lisp/progmodes/cc-engine.el (c-back-over-member-initializers): Check
6278         more robustly for ":" token when searching backwards for it.
6280         * lisp/progmodes/cc-langs (c-:$-multichar-token-regexp): New language
6281         variable.
6283 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
6285         Ensure positive number of glyphs for margins of positive width
6287         * src/dispnew.c (margin_glyphs_to_reserve): Always return a
6288         positive value when a non-zero width of the marginal area was
6289         requested.  (Bug#22356)
6291 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
6293         Fix crashes when mini-window has non-zero margins
6295         * src/window.c (resize_frame_windows): Use 'new_size' to set
6296         minibuffer window's 'total_cols' value, as 'size' might be in
6297         pixels.  (Bug#22356)
6299 2016-01-15  Alan Mackenzie  <acm@muc.de>
6301         In comment-dwim with style `extra-line', respect indent-tabs-mode.
6303         This fixes bug #22369.
6305         * lisp/newcomment.el (comment-make-bol-ws): New function.
6306         (comment-make-extra-lines): Use new function instead of a crude `make-string'.
6308 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
6310         Make 'random' seeds cryptographically secure if possible
6312         * configure.ac: Check for "/dev/urandom".
6314         * src/sysdep.c (init_random) [HAVE_DEV_URANDOM]: Read the stream
6315         for the seed from "/dev/urandom".
6316         [WINDOWSNT]: Obtain the stream for the seed from w32 APIs.
6317         * src/fns.c (Frandom): Update the doc string to indicate that
6318         system entropy is used when available.
6319         * src/w32.c: Include wincrypt.h.
6320         (w32_init_crypt_random, w32_init_random): New functions, use the
6321         CryptGenRandom API.
6322         (globals_of_w32): Initialize w32_crypto_hprov handle to zero.
6323         * src/w32.h (w32_init_random): Add prototype.
6325         * doc/lispref/numbers.texi (Random Numbers): Document more details
6326         about 't' as the argument to 'random'.
6328         * etc/NEWS: Mention that '(random t)' now uses a cryptographically
6329         strong seed if possible.
6331         (Bug#22202)
6333 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
6335         Unhide the --no-line-directive option to 'etags'
6337         * lib-src/etags.c (print_help): Un-undocument the --no-line-directive
6338         option.  (Bug#22306)
6340         * doc/man/etags.1: Document the --no-line-directive option.
6342 2016-01-15  Alan J Third  <alan@idiocy.org>  (tiny change)
6344         Fix picture-mode wrt double-width characters
6346         * lisp/textmodes/picture.el (picture-insert): Check the width of
6347         the character being replaced, not just that of the replacement.
6348         (Bug#1808)
6350 2016-01-15  Eric Abrahamsen  <eric@ericabrahamsen.net>
6352         Honor docstring of gnus-group-get-new-news
6354         * lisp/gnus/gnus-start.el (gnus-get-unread-articles): If the prefix arg is t,
6355         but non-numeric, unconditionally consider all groups to need updating.
6357 2016-01-14  Simen Heggestøyl  <simenheg@gmail.com>
6359         Disallow parenthesis in non-pseudo CSS selectors
6361         * lisp/textmodes/css-mode.el (css--font-lock-keywords): Disallow
6362         parenthesis in selectors except for in the function notation that
6363         might appear right after a pseudo-class.
6364         * test/indent/scss-mode.scss: Add a test for it.
6366 2016-01-14  Katsumi Yamaoka  <yamaoka@jpl.org>
6368         * lisp/gnus/nntp.el (nntp-request-newgroups): Simplify
6370 2016-01-14  Michael Albinus  <michael.albinus@gmx.de>
6372         check-maybe shall run only default tests
6374         * test/automated/Makefile.in (check, check-expensive): Depend on
6375         mostlyclean.
6376         (check-maybe): Re-run only default tests.
6377         (check-doit): Use code of check-maybe.
6378         (mostlyclean): Move *.log files away.
6380 2016-01-13  Mark Oteiza  <mvoteiza@udel.edu>
6382         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "magnet:"
6384 2016-01-13  Dmitry Gutov  <dgutov@yandex.ru>
6386         Un-obsolete tags-loop-continue
6388         * lisp/progmodes/etags.el (tags-loop-continue): Un-obsolete.
6389         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00682.html
6391 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
6393         Document obsoletion of 'intangible' and 'point-entered/left'
6395         * doc/lispref/text.texi (Special Properties): Document the new
6396         properties 'cursor-intangible' and 'cursor-sensor-functions'.
6397         Document the obsolete status of 'intangible', 'pointer-left',
6398         and 'point-entered' properties, and of 'inhibit-point-motion-hooks'.
6399         * doc/lispref/display.texi (Overlay Properties): Document that
6400         'intangible' overlay property is obsolete.
6402         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor-mode): Doc fix.
6404 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
6406         Updater documentation of 'looking-back'
6408         * doc/lispref/searching.texi (Regexp Search): Update documentation
6409         of 'looking-back'.  Fix markup.
6411 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
6413         Document 'pre-redisplay-functions'
6415         * doc/lispref/hooks.texi (Standard Hooks):
6416         * doc/lispref/display.texi (Forcing Redisplay): Document
6417         'pre-redisplay-functions'.
6419 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
6421         Document the new deafault value of 'load-read-function'
6423         * doc/lispref/loading.texi (How Programs Do Loading): Document the
6424         change in the default value of 'load-read-function'.
6426 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
6428         Document 'bufferpos-to-filepos' and 'filepos-to-bufferpos'
6430         * doc/lispref/nonascii.texi (Text Representations): Document
6431         'bufferpos-to-filepos' and 'filepos-to-bufferpos'.
6433 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
6435         Document the new prefix-command hooks
6437         * doc/lispref/hooks.texi (Standard Hooks): Document
6438         `prefix-command-echo-keystrokes-functions' and
6439         `prefix-command-preserve-state-hook'.
6441 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
6443         Fix one more misuse of time-stamp-time-zone
6445         * test/etags/html-src/softwarelibero.html: Use "UTC0" rather
6446         than the unportable "GMT" for time zone.
6448 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
6450         Fix NNTP NEWGROUPS off-by-a-few-hours bug
6452         * lisp/gnus/nntp.el (nntp-request-newgroups): Format string
6453         in Universal Time, since we’re telling the server “GMT”.
6455 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
6457         Update publicsuffix.txt from upstream
6459         * etc/publicsuffix.txt: Update from
6460         https://publicsuffix.org/list/effective_tld_names.dat
6461         dated 2016-01-12 11:52:01 UTC.
6463 2016-01-12  Glenn Morris  <rgm@gnu.org>
6465         Fix some declarations.
6467         * lisp/descr-text.el (internal-char-font):
6468         * lisp/cedet/mode-local.el (xref-item-location):
6469         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
6470         (epg-sub-key-capability, epg-sub-key-validity):
6471         * lisp/international/mule-util.el (internal-char-font):
6472         Fix declarations.
6474 2016-01-12  Glenn Morris  <rgm@gnu.org>
6476         Fix some custom types.
6478         * lisp/gnus/gnus-fun.el (gnus-x-face-omit-files, gnus-face-omit-files):
6479         * lisp/gnus/gnus.el (gnus-valid-select-methods):
6480         * lisp/mail/rmail.el (rmail-get-coding-function):
6481         * lisp/net/newst-treeview.el (newsticker-groups-filename):
6482         * lisp/progmodes/hideif.el (hide-ifdef-exclude-define-regexp):
6483         * lisp/textmodes/tildify.el (tildify-space-predicates):
6484         * lisp/url/url-tramp.el (url-tramp-protocols):
6485         Fix custom types.
6487 2016-01-12  Glenn Morris  <rgm@gnu.org>
6489         Add some missing version tags.
6491         * lisp/electric.el (electric-quote-comment)
6492         (electric-quote-string, electric-quote-paragraph):
6493         * lisp/epg-config.el (epg-gpgconf-program):
6494         * lisp/rect.el (rectangle-preview):
6495         * lisp/emacs-lisp/check-declare.el (check-declare-ext-errors):
6496         * lisp/emacs-lisp/package.el (package-selected-packages)
6497         (package-hidden-regexps):
6498         * lisp/erc/erc.el (erc-network-hide-list, erc-channel-hide-list):
6499         * lisp/eshell/em-term.el (eshell-destroy-buffer-when-process-dies):
6500         * lisp/gnus/mml-sec.el (mml1991-signers, mml2015-signers)
6501         (mml-smime-signers, mml1991-encrypt-to-self, mml2015-encrypt-to-self)
6502         (mml-smime-encrypt-to-self, mml2015-sign-with-sender)
6503         (mml-smime-sign-with-sender, mml2015-always-trust)
6504         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
6505         * lisp/net/browse-url.el (browse-url-conkeror-new-window-is-buffer)
6506         (browse-url-conkeror-arguments):
6507         * lisp/net/newst-reader.el (newsticker-download-logos):
6508         * lisp/progmodes/gud.el (gud-guiler-command-name):
6509         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
6510         * lisp/progmodes/project.el (project-vc):
6511         * lisp/progmodes/python.el (python-indent-guess-indent-offset-verbose)
6512         (python-shell-remote-exec-path, python-shell-first-prompt-hook)
6513         (python-shell-completion-native-disabled-interpreters)
6514         (python-shell-completion-native-enable)
6515         (python-shell-completion-native-output-timeout)
6516         (python-shell-completion-native-try-output-timeout):
6517         * lisp/progmodes/xref.el (xref):
6518         * lisp/term/screen.el (xterm-screen-extra-capabilities):
6519         * lisp/term/xterm.el (xterm-max-cut-length):
6520         Add missing version tags.
6522 2016-01-12  Glenn Morris  <rgm@gnu.org>
6524         * test/automated/core-elisp-tests.el
6525         (core-elisp-tests-1-defvar-in-let): Add a custom type.
6527 2016-01-12  Glenn Morris  <rgm@gnu.org>
6529         * src/buffer.c (syms_of_buffer) <major-mode>: Doc fix.
6531         Remove comments that do not apply since 2005-08-09.  (Bug#22349)
6533 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
6535         Merge from gnulib
6537         This mostly just changes "UTC" to "UTC0" for POSIX conformance.
6538         It also updates to the latest version of texinfo.tex.
6539         * build-aux/gitlog-to-changelog, build-aux/move-if-change:
6540         * build-aux/update-copyright, doc/misc/texinfo.tex:
6541         Update from gnulib.
6543 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
6545         Update documentation of 'process-running-child-p'
6547         * doc/lispref/processes.texi (Input to Processes): Document the
6548         changes in return value of 'process-running-child-p'.
6550 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
6552         Update documentation of 'deactivate-mark'.
6554         * doc/lispref/markers.texi (The Mark): Document that
6555         'deactivate-mark' is now buffer-local when set.
6557 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
6559         Update documentation of 'completion-table-dynamic'
6561         * doc/lispref/minibuf.texi (Programmed Completion): Document the
6562         new optional argument to 'completion-table-dynamic'.
6564 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
6566         Document changes in 'read-buffer' and 'read-buffer-function'
6568         * doc/lispref/minibuf.texi (High-Level Completion): Document the
6569         4th argument to 'read-buffer' and 'read-buffer-function'.
6571 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
6573         Fix time-stamp-time-zone bugs introduced in July
6575         This fixes a bug introduced when the July changes to
6576         format-time-string installed, as the changes were not
6577         correctly handled in this module (Bug#22302).
6578         Also, document time stamp time zones.
6579         * lisp/time-stamp.el (time-stamp-time-zone): Document values better.
6580         (time-stamp--format): New private function.
6581         (time-stamp-string, time-stamp-string-preprocess)
6582         (time-stamp-do-number): Use it.
6583         * doc/emacs/files.texi (Time Stamps): Mention time zones.
6584         * doc/misc/autotype.texi (Timestamps): Document time-stamp-time-zone.
6586 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
6588         Make piping to subprocesses more robust on MS-Windows
6590         * src/w32.c (sys_write): Don't write to a pipe more stuff than its
6591         buffer can hold.  Don't return -1 if something has been written to
6592         the pipe.  Zero out 'errno' before calling '_write', to avoid
6593         returning a stale value.  (Bug#22344)
6594         * src/w32proc.c (syms_of_ntproc) <w32-pipe-buffer-size>: New variable.
6595         * src/w32.c (pipe2): Use it to request a user-defined size for the
6596         pipe being created.
6598         * etc/NEWS: Mention 'w32-pipe-buffer-size'.
6600         * doc/emacs/msdos.texi (Windows Processes): Document
6601         'w32-pipe-buffer-size'.
6603 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
6605         * lisp/emacs-lisp/syntax.el (syntax-ppss-table): New var
6607         (syntax-ppss):
6608         * lisp/font-lock.el (font-lock-fontify-syntactically-region): Use it.
6610 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
6612         lisp/nxml: Use syntax-tables for comments
6614         * lisp/nxml/nxml-mode.el (nxml-set-face): Prepend.
6615         (nxml-mode): Set syntax-ppss-table.
6616         Use sgml-syntax-propertize-function for syntax-propertize-function.
6617         Let font-lock highlight strings and comments.
6618         (nxml-degrade): Don't touch "nxml-inside" property any more.
6619         (nxml-after-change, nxml-after-change1): Remove functions.
6620         (comment): Don't set fontify rule any more.
6621         (nxml-fontify-attribute): Don't highlight the value any more.
6622         (nxml-namespace-attribute-value-delimiter, nxml-namespace-attribute-value)
6623         (nxml-comment-delimiter, nxml-comment-content): Remove faces.
6625         * lisp/nxml/nxml-rap.el (nxml-scan-end): Remove.
6626         (nxml-get-inside, nxml-inside-start, nxml-inside-end): Use syntax-ppss.
6627         (nxml-clear-inside, nxml-set-inside): Remove.
6628         (nxml-scan-after-change): Remove function.
6629         (nxml-scan-prolog, nxml-tokenize-forward): Simplify.
6630         (nxml-ensure-scan-up-to-date): Use syntax-propertize.
6631         (nxml-move-outside-backwards):
6632         * lisp/nxml/nxml-outln.el (nxml-section-tag-backward): Adjust to new
6633         nxml-inside-start behavior.
6635         * lisp/nxml/nxml-util.el (nxml-debug-set-inside)
6636         (nxml-debug-clear-inside): Remove macros.
6638         * lisp/nxml/xmltok.el (xmltok-forward-special): Remove function.
6639         (xmltok-scan-after-comment-open): Simplify.
6641 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
6643         * elisp-mode.el (elisp--font-lock-flush-elisp-buffers): Fix comment
6645 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
6647         * lisp/nxml: Use standard completion; it also works for company-mode
6649         * lisp/nxml/nxml-mode.el (nxml-complete): Obsolete.
6650         (nxml-completion-at-point-function): Remove.
6651         (nxml-mode): Don't set completion-at-point-functions.
6652         * lisp/nxml/rng-nxml.el (rng-nxml-mode-init): Set it here instead.
6653         (rng-completion-at-point): Rename from rng-complete and mark it
6654         non-interactive.  It is now to be used as completion-at-point-function.
6655         (rng-complete-tag, rng-complete-end-tag, rng-complete-attribute-name)
6656         (rng-complete-attribute-value): Don't perform completion, but return
6657         completion data instead.
6658         (rng-complete-qname-function, rng-generate-qname-list): Add a few
6659         arguments, previously passed via dynamic coping.
6660         (rng-strings-to-completion-table): Rename from
6661         rng-strings-to-completion-alist.  Don't return an alist.  Don't both
6662         sorting and uniquifying.
6664         * lisp/nxml/rng-util.el (rng-complete-before-point): Delete function.
6665         (rng-completion-exact-p, rng-quote-string): Delete functions.
6667         * lisp/nxml/rng-valid.el (rng-recover-start-tag-open)
6668         (rng-missing-attributes-message, rng-missing-element-message)
6669         (rng-mark-missing-end-tags): Use explicit ".." in formats rather than
6670         calling rng-quote-string everywhere.
6672 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
6674         Use sgml-electric-tag-pair-mode also in nxml-mode
6676         * lisp/nxml/rng-nxml.el: Require sgml-mode.
6677         (rng-nxml-easy-menu): Add entry for sgml-electric-tag-pair-mode.
6678         (rng-complete-qname-function): Use complete-with-action.
6680         * lisp/textmodes/sgml-mode.el (sgml-electric-tag-pair-before-change-function):
6681         Let-bind forward-sexp-function, since nxml-mode binds it to
6682         something incompatible.
6684         * lisp/nxml/nxml-mode.el: Use setq-local and defvar-local.
6686 2016-01-15  Stefan Monnier  <monnier@iro.umontreal.ca>
6688         * xmltok.el: Mark the "sole --" rather than the comment opener
6690         * lisp/nxml/xmltok.el (xmltok-scan-after-comment-open): Put the error
6691         marker on the "sole --" rather than on the comment opener.
6693 2016-01-15  Sam Steingold  <sds@gnu.org>
6695         replace `tramp-compat-split-string' (removed) with `split-string'
6697         (python-shell-tramp-refresh-process-environment)
6698         (python-shell-calculate-pythonpath): use `split-string'
6699         instead of defunct `tramp-compat-split-string'
6701 2016-01-15  Stefan Monnier  <monnier@iro.umontreal.ca>
6703         Update nXML to use Emacs's Unicode support, and lexical-binding
6705         * etc/nxml/*.el: Remove obsolete char-name files.
6706         * lisp/nxml/xsd-regexp.el (xsdre-range-list-difference): Remove unused
6707         var `next'.
6708         * lisp/nxml/rng-nxml.el (rng-set-state-after): Don't assume point-min==1.
6709         * lisp/nxml/rng-match.el (rng-update-match-state): Simplify.
6710         * lisp/nxml/nxml-outln.el (nxml-outline-state-transform-exceptions)
6711         (nxml-target-section-pos, nxml-depth-in-target-section)
6712         (nxml-outline-state-transform-alist)
6713         (nxml-outline-display-section-tag-function): Move decl before first use.
6714         * lisp/nxml/nxml-mode.el (nxml-char-name-ignore-case)
6715         (nxml-char-name-alist, nxml-char-name-table)
6716         (nxml-autoload-char-name-set-list, nxml-named-char-history): Remove vars.
6717         (nxml-enable-char-name-set, nxml-disable-char-name-set)
6718         (nxml-char-name-set-enabled-p, nxml-autoload-char-name-set)
6719         (nxml-define-char-name-set, nxml-get-char-name): Remove functions.
6720         (nxml-insert-named-char): Use read-char-by-name instead.
6721         (nxml-char-ref-display-extra): Use get-char-code-property.
6722         * lisp/nxml/nxml-maint.el (nxml-create-unicode-char-name-sets):
6723         Remove function.
6724         * lisp/nxml/nxml-glyph.el, lisp/nxml/nxml-uchnm.el: Remove files.
6726 2016-01-15  Michael Albinus  <michael.albinus@gmx.de>
6728         Add "sg" method to Tramp
6730         * doc/misc/tramp.texi (Inline methods): Add "sg" method.
6731         (Customizing Completion): Add function `tramp-parse-etc-group'.
6733         * lisp/net/tramp-sh.el (tramp-methods) <sg>: Add.  (Bug#22329)
6734         (tramp-completion-function-alist-sg): New defconst.
6735         (top): Completion function for "sg" is
6736         `tramp-completion-function-alist-sg'.
6738         * lisp/net/tramp.el (tramp-completion-function-alist): Adapt docstring.
6739         (tramp-parse-etc-group, tramp-parse-etc-group-group): New defuns.
6741 2016-01-14  Michael Albinus  <michael.albinus@gmx.de>
6743         Remove XEmacs compatibility in Tramp
6745         * doc/misc/tramp.texi: Replace flags by their hard coded name.
6746         Remove unused flags and the enclosed alternative text for XEmacs.
6748         * doc/misc/trampver.texi: Use "Tramp" CamelCase.  Rename "emacs"
6749         and "xemacs" flags to "unified" and "separate".  Remove flags
6750         "emacsgw", "emacsname", "emacsdir", "ftppackagename",
6751         "emacsothername", "emacsotherdir" and "emacsotherfilename".
6752         (trampver):
6753         * lisp/net/trampver.el (tramp-version): Set to "2.3.0-pre".
6755         * lisp/net/tramp.el (bkup-backup-directory-info)
6756         (directory-sep-char, ls-lisp-use-insert-directory-program)
6757         (outline-regexp, tramp-backup-directory-alist)
6758         (tramp-default-method, tramp-shell-prompt-pattern, tramp-syntax)
6759         (tramp-file-name-regexp-unified)
6760         (tramp-file-name-regexp-separate)
6761         (tramp-completion-file-name-regexp-unified)
6762         (tramp-completion-file-name-regexp-separate, tramp-chunksize)
6763         (tramp-get-method-parameter, tramp-find-method, tramp-find-user)
6764         (tramp-debug-message, tramp-progress-reporter-update)
6765         (with-tramp-progress-reporter)
6766         (tramp-rfn-eshadow-setup-minibuffer)
6767         (rfn-eshadow-setup-minibuffer-hook, tramp-unload-hook)
6768         (tramp-rfn-eshadow-update-overlay)
6769         (rfn-eshadow-update-overlay-hook, tramp-default-file-modes)
6770         (tramp-file-name-for-operation)
6771         (tramp-completion-file-name-handler)
6772         (tramp-autoload-file-name-handler, tramp-completion-mode-p)
6773         (tramp-handle-directory-files)
6774         (tramp-handle-directory-files-and-attributes)
6775         (tramp-handle-dired-uncache, tramp-handle-find-backup-file-name)
6776         (tramp-handle-insert-file-contents, tramp-handle-load)
6777         (tramp-handle-shell-command)
6778         (tramp-handle-verify-visited-file-modtime)
6779         (tramp-handle-file-notify-valid-p, tramp-accept-process-output)
6780         (tramp-check-for-regexp, tramp-wait-for-regexp)
6781         (tramp-send-string, tramp-mode-string-to-int)
6782         (tramp-get-local-gid, tramp-check-cached-permissions)
6783         (tramp-get-remote-tmpdir, tramp-make-tramp-temp-file)
6784         (auto-save-file-name-transforms)
6785         (tramp-handle-make-auto-save-file-name, tramp-read-passwd)
6786         (tramp-clear-passwd, tramp-time-diff):
6787         * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp)
6788         (directory-sep-char, tramp-adb-file-name-handler-alist)
6789         (tramp-adb-parse-device-names)
6790         (tramp-adb-handle-expand-file-name)
6791         (tramp-adb-handle-file-truename, tramp-adb--gnu-switches-to-ash)
6792         (tramp-adb-handle-file-local-copy)
6793         (tramp-adb-handle-write-region, tramp-adb-handle-set-file-modes)
6794         (tramp-adb-handle-rename-file, tramp-adb-handle-process-file)
6795         (tramp-adb-handle-shell-command)
6796         (tramp-adb-handle-start-file-process, tramp-adb-get-device)
6797         (tramp-adb-maybe-open-connection):
6798         * lisp/net/tramp-cache.el (tramp-persistency-file-name)
6799         (tramp-cache-print):
6800         * lisp/net/tramp-cmds.el (tramp-cleanup-all-connections)
6801         (tramp-bug, tramp-reporter-dump-variable)
6802         (tramp-load-report-modules, tramp-append-tramp-buffers):
6803         * lisp/net/tramp-compat.el (tramp-compat-funcall)
6804         (tramp-advice-file-expand-wildcards)
6805         (tramp-compat-temporary-file-directory)
6806         (tramp-compat-make-temp-file, tramp-compat-copy-file)
6807         (tramp-compat-delete-directory, )
6808         (tramp-compat-process-running-p):
6809         * lisp/net/tramp-ftp.el (tramp-methods) <ftp>:
6810         (tramp-default-method-alist, tramp-foreign-file-name-handler-alist):
6811         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
6812         (tramp-gvfs-do-copy-or-rename-file, tramp-gvfs-handle-copy-file)
6813         (tramp-gvfs-handle-file-local-copy)
6814         (tramp-gvfs-handle-file-name-all-completions)
6815         (tramp-gvfs-handle-file-notify-add-watch)
6816         (tramp-gvfs-monitor-file-process-filter)
6817         (tramp-gvfs-handle-file-readable-p)
6818         (tramp-gvfs-handle-rename-file, tramp-gvfs-handle-write-region)
6819         (tramp-gvfs-file-name, tramp-gvfs-handler-askquestion)
6820         (tramp-gvfs-maybe-open-connection)
6821         (tramp-gvfs-parse-device-names):
6822         * lisp/net/tramp-gw.el (tramp-gw-aux-proc-sentinel)
6823         (tramp-gw-open-connection, tramp-gw-open-network-stream):
6824         * lisp/net/tramp-sh.el (directory-sep-char)
6825         (tramp-sh-file-name-handler-alist)
6826         (tramp-sh-handle-file-truename)
6827         (tramp-sh-handle-set-visited-file-modtime)
6828         (tramp-sh-handle-verify-visited-file-modtime)
6829         (tramp-sh-handle-set-file-modes, tramp-sh-handle-set-file-times)
6830         (tramp-sh-handle-file-acl)
6831         (tramp-sh-handle-file-name-all-completions)
6832         (tramp-sh-handle-copy-file, tramp-sh-handle-rename-file)
6833         (tramp-do-copy-or-rename-file-directly)
6834         (tramp-do-copy-or-rename-file-out-of-band)
6835         (dired-compress-file-suffixes, dired-remove-file)
6836         (tramp-sh-handle-dired-compress-file)
6837         (tramp-sh-handle-insert-directory)
6838         (tramp-sh-handle-expand-file-name)
6839         (tramp-sh-handle-start-file-process)
6840         (tramp-sh-handle-process-file, tramp-sh-handle-file-local-copy)
6841         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
6842         (tramp-sh-handle-file-notify-add-watch)
6843         (tramp-sh-gvfs-monitor-dir-process-filter)
6844         (tramp-sh-inotifywait-process-filter, tramp-maybe-send-script)
6845         (tramp-find-executable)
6846         (tramp-open-connection-setup-interactive-shell)
6847         (tramp-find-inline-encoding, tramp-compute-multi-hops)
6848         (tramp-maybe-open-connection, tramp-convert-file-attributes)
6849         (tramp-get-remote-path, tramp-get-remote-touch):
6850         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
6851         (tramp-smb-handle-copy-directory, tramp-smb-handle-copy-file)
6852         (tramp-smb-handle-delete-directory)
6853         (tramp-smb-handle-directory-files, tramp-smb-handle-file-acl)
6854         (tramp-smb-handle-make-directory-internal)
6855         (tramp-smb-handle-process-file, tramp-smb-handle-rename-file)
6856         (tramp-smb-handle-set-file-acl, tramp-smb-handle-set-file-modes)
6857         (tramp-smb-handle-write-region, tramp-smb-get-file-entries)
6858         (tramp-smb-get-cifs-capabilities)
6859         (tramp-smb-maybe-open-connection):
6860         * lisp/net/trampver.el (tramp-repository-get-version):
6861         Remove XEmacs compat code.
6863         * lisp/net/tramp-cmds.el (mml-mode, mml-insert-empty-tag)
6864         (reporter-dump-variable): Declare functions.
6866         * lisp/net/tramp.el (tramp-bkup-backup-directory-info)
6867         (tramp-advice-minibuffer-electric-separator)
6868         (tramp-advice-minibuffer-electric-tilde)
6869         (tramp-handle-unhandled-file-name-directory):
6870         * lisp/net/tramp-compat.el (tramp-compat-with-temp-message)
6871         (tramp-compat-font-lock-add-keywords)
6872         (tramp-compat-load, tramp-compat-number-sequence)
6873         (tramp-compat-split-string, tramp-compat-delete-dups):
6874         * lisp/net/tramp-sh.el (tramp-sh-handle-insert-file-contents-literally):
6875         Remove.
6877         * lisp/net/tramp-sh.el (tramp-methods) <psftp>: This does not work
6878         recursively.
6880 2016-01-14  K. Handa  <handa@gnu.org>
6882         fix previous change of src/ftfont.c (ftfont_shape_by_flt)
6884         * src/ftfont.c (ftfont_shape_by_flt): Fix previous change.  Access the
6885         second glyph only when there are enough glyphs.
6887 2016-01-13  Glenn Morris  <rgm@gnu.org>
6889         * src/buffer.c (Fset_buffer_major_mode): Allow default major-mode,
6891         or its hook, to move point.  (Bug#22348)
6893 2016-01-12  Michael Albinus  <michael.albinus@gmx.de>
6895         Merge missing commit from emacs-25 branch
6897         * test/Makefile.in (SELECTOR_DEFAULT, SELECTOR_EXPENSIVE, SELECTOR):
6898         New variables.
6899         (check-expensive, check-doit): New targets.
6901         * Makefile.in (check-expensive): New target.
6903         * test/lisp/autorevert-tests.el
6904         (auto-revert-test01-auto-revert-several-files):
6905         * test/lisp/filenotify-tests.el (file-notify--deftest-remote)
6906         (file-notify-test06-many-events):
6907         * test/lisp/net/tramp-tests.el (tramp-test26-process-file)
6908         (tramp-test27-start-file-process, tramp-test28-shell-command)
6909         (tramp-test29-vc-registered)
6910         (tramp-test31-special-characters-with-stat)
6911         (tramp-test31-special-characters-with-perl)
6912         (tramp-test31-special-characters-with-ls)
6913         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
6914         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
6915         (tramp-test35-unload): Tag the tests as :expensive-test.
6917 2016-01-12  John Wiegley  <johnw@newartisans.com>
6919         Merge from origin/emacs-25
6921         1f6898d test/automated/vc-hg.el: Support out-of-tree build
6922         3adb56e Minor change in tramp-tests.el
6923         2b535ba ; * etc/NEWS: Update the js.el entry.
6924         76b518c * etc/HELLO: Add Armenian and Mongolian greetings.
6925         b51f1ef Java Mode: Fontify identifiers in the presence of annotations.
6926         36b9539 Avoid an infloop when we run out of memory
6927         2006752 Avoid unnecessary failures of auto-saving after fatal error
6928         eef6784 Simplify HAVE_MODULES use in mark_maybe_pointer
6929         552694a Revert attempt to use 'noexcept' in typedef
6930         6ad0d39 Update documentation of 'indirect-function'
6931         c6a5314 ; * etc/NEWS: Move entry of 'inhibit-point-motion-hooks'.
6932         303141a Update documentation for obsoleting 'syntax-begin-function'
6933         4e6f61c ; * etc/NEWS: Mark documented and not-to-be-documented entries.
6934         e667bbb Document new features if Eshell
6935         9c4e4e0 ; * etc/NEWS: Update EUDC entries.
6936         1089dc9 Handle too long commands in Tramp
6937         684eb58 * .gitattributes: *.cur and *.pif are binary files too.
6938         d2c7fda * src/alloc.c (mark_maybe_pointer): HAVE_MODULES may be undefined
6939         bd3f53d * sh-script.el (sh-smie-sh-rules): Improve indentation inside $(...)
6940         09b2b8a * src/alloc.c (mark_maybe_pointer): Also check wide-int's emacs_value
6941         cca0f93 ; Account for spaces before the filename
6942         c71e1e8 Use short date for 'hg annotate', and output the author
6943         f50027b Spelling fix
6944         c7dff67 ; * etc/NEWS: Fix the Xref entries that got separated.
6945         cc140bc Document user-level functions in project.el
6946         f8208b6 Document the user-level features of the Xref package
6947         b131fb8 * loading.texi: Add `define-type' entry for load-history
6948         db3c2a8 Improve doc strings and prompts in xref.el
6949         f6117ef Allow the use of `font-lock-extend-region-multiline' in CC Mode.
6950         90fd798 Fix coding system for Tramp on OS X.
6951         e985a0e ; * etc/NEWS: Mark the 'check-expensive' entry not to be documented.
6952         9dfcbf0 Update 'load-history' docs
6953         207e191 Fix (error ...) error
6954         457738f Correctly analyze brace arguments in templated C++ function declarations.
6955         d57724a * lisp/cedet/mode-local.el (describe-function-orig-buffer): Declare.
6956         2a9532d * lisp/ffap.el (ffap-latex-mode): Avoid free variable.
6957         1a6b084 * lisp/play/dunnet.el (dun-fix-screen): Avoid `end-of-buffer`.
6958         8be046f Respect fontification region calculated by major mode.  Fixes bug #22316.
6959         4b37cba Improve documentation of Delete Selection mode
6960         a034dd3 Fix two project-find-file issues
6961         30abf29 Clarify doc string of 'dired-current-directory'
6962         e990bb2 Use the face of preceding text for displaying the ellipsis
6963         5810ac3 Suppress Chinese file name test for OSX in tramp-tests.el
6964         eeb710a ; * lisp/startup.el: Sentences end with two spaces.
6965         428b3de * admin/admin.el (set-version): Also handle the NEWS file.
6966         648de81 ; Add NEWS entry for project.el
6967         671862f apropos-library: Skip obvious duplicates; don't error on generics
6968         51668a5 ; Grammar fix
6969         ed41d11 Add project-find-file and project-or-external-find-file
6970         056da45 ; Improve commentary in 'setup_for_ellipsis'
6971         269d008 ; Improve docstring for `inhibit-startup-echo-area-message'
6973 2016-01-12  John Wiegley  <johnw@newartisans.com>
6975         Merge from origin/emacs-25
6977         ce4a052 Add defvar-local to lisp-imenu-generic-expression
6978         a0121bc Revert commit b1e3d14845517bfa9fa5d6d3840f3ab3160306fd
6979         76fe2d5 * lisp/emacs-lisp/autoload.el (autoload-find-destination): Doc fix.
6980         1ae088f * lisp/emacs-lisp/autoload.el (autoload-find-destination):
6981         b6b47af Properly encode/decode base64Binary data in SOAP
6982         c632466 Obey coding-system-for-write when writing stdout/stderr in batch
6983         2f32cb5 * doc/misc/efaq.texi (Packages that do not come with Emacs):
6984                 Update the URI of MELPA and marmalade-repo.
6985                 Reported by CHENG Goa <chenggao@royau.me> in
6986                 https://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00390.html.
6987         d2937aa * lisp/progmodes/opascal.el (opascal-mode-syntax-table):
6988         5330c25 * lisp/progmodes/xscheme.el (xscheme-prompt-for-expression-exit):
6989         7380990 Remove function wrongly on AWK Mode value of context
6990         fontification hook.
6991         d400753 * src/buffer.c: Stick with ASCII in doc string.
6992         221240c Reword transient-mark-mode doc string
6993         977d3ea Update doc string of 'selective-display'
6994         229c3fa Make C++ buffers writeable when writing their initial text
6995                 properties.
6996         f5c762c Additional changes for "make check-expensive"
6997         1729cf3 ; * admin/MAINTAINERS: Remove myself.
6998         33219d3 Apply text properties for <, > in new after-change function
6999                 (C++ Java Modes).
7001 2016-01-12  John Wiegley  <johnw@newartisans.com>
7003         Merge from origin/emacs-25
7005         9fb185a shr-tag-video bug fix
7006         6300655 Minor fixes in tramp-tests.el
7007         50575b1 Ensure redisplay when 'truncate-lines' is set
7008         0d9e80d Fix a doc string of 'transient-mark-mode'
7009         0000ae5 MS-Windows followup to latest gnulib update
7010         4bc5e02 Spelling fix
7011         f1093f7 Do secure signed Bcc handling
7013 2016-01-12  John Wiegley  <johnw@newartisans.com>
7015         Merge from origin/emacs-25
7017         861022f * doc/misc/texinfo.tex: Revert unwanted copyright change.
7018         46e47a5 ; * etc/refcards/ru-refcard.tex (cyear): Update via M-x set-copyright.
7019         71ea138 * lisp/align.el (align): Simplify a lambda
7020         5618a50 * lisp/align.el (align): Fix arg order in call to `align-region'
7021         1f680db Fix compilation next-error in buffers with selective-display
7022         d20a948 * nsm.el (nsm-check-protocol): Fix typo in the message.
7023         1da116f Add SHA1 warnings for high network security settings
7024         e48bacd ; * etc/NEWS: Typo fix.
7026 2016-01-12  John Wiegley  <johnw@newartisans.com>
7028         Merge from origin/emacs-25
7030         43662a2 ; Clarify that xref is still experimental
7031         0a6e6ca ; * admin/release-process: Remove some obsolete records.
7032         c2e9e3d * lisp/progmodes/fortran.el (fortran-make-syntax-propertize-function):
7033         8637f3d (semantic-symref-derive-find-filepatterns): Return a list
7034         0a7ad07 ; Re-arrange xref-related entries in NEWS.
7035         fe903ef Fix xref-find-references on MS-Windows
7036         55a28d8 ; Fixed visual bell artifact problem on NextStep.
7037         d064034 Document new features of tildify-mode
7038         964bea7 Document new features of Whitespace mode
7039         cd68f47 Improve documentation of new Hide-IfDef features
7040         723b8bf Fix regression in font-locking cl-assert and cl-check-type
7042 2016-01-12  John Wiegley  <johnw@newartisans.com>
7044         Merge from origin/emacs-25
7046         ef33bc7 Spelling and grammar fixes
7047         9c3dbab Fix copyright years by hand
7048         0e96320 Update copyright year to 2016
7050 2016-01-12  John Wiegley  <johnw@newartisans.com>
7052         Merge from origin/emacs-25
7054         9ee6ecb lisp/emacs-lisp/chart.el (chart-new-buffer): Move to silence byte compiler.
7055         526d80c Port chart.el methods to cl-generic.
7056         410bb69 Add nt/INSTALL.W64 build instructions
7057         8f5b524 Add new input method 'programmer-dvorak'
7058         6d11f6e Allow to invoke original M-TAB binding in 'flyspell-prog-mode'
7059         bb83bb1 Fix EWW rendering of long RTL lines
7060         b1a8509 fix  bug#21054
7061         ce5ad12 Clean up cairo printing code
7063 2016-01-12  John Wiegley  <johnw@newartisans.com>
7065         Merge from origin/emacs-25
7067         6ee327d Add handle_user_signal_hook
7068         47580e0 Avoid writing to purespace
7069         0588be7 Remove unused variable
7070         89e7483 * configure.ac: Find libxml2 headers in Xcode SDK dir on Darwin.
7071         3b95e9c Use posix_openpt instead of openpty on Darwin
7072         86312ff Document support for ':documentation' in Lisp mode
7073         c930e75b Document new features of TeX mode
7074         7c83d84 Clarify docs of hscroll in RTL text
7075         4c8f8db Fix rendering of HTML pages that use character composition
7076         a8d37ca Avoid some compiler warnings in w32.c
7077         ce106f3de Undo ill-advised change
7078         be0bba4 Unbreak completion in python-mode buffers
7080 2016-01-11  Dmitry Gutov  <dgutov@yandex.ru>
7082         test/automated/vc-hg.el: Support out-of-tree build
7084         * test/automated/vc-hg.el
7085         (vc-hg-annotate-extract-revision-at-line-with-filename)
7086         (vc-hg-annotate-extract-revision-at-line-with-both):
7087         Don't refer to source-directory.
7088         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00755.html
7090 2016-01-11  Michael Albinus  <michael.albinus@gmx.de>
7092         Minor change in tramp-tests.el
7094         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
7095         Use `dired-uncache' instead of a Tramp internal function.
7097 2016-01-11  Peter Feigl  <peter.feigl@nexoid.at>
7099         * etc/HELLO: Add Armenian and Mongolian greetings.
7101         (Bug#22346)
7103 2016-01-11  Alan Mackenzie  <acm@muc.de>
7105         Java Mode: Fontify identifiers in the presence of annotations.
7107         * lisp/progmodes/cc-engine.el (c-forward-annotation): Tidy up the coding:
7108         Don't move point when the defun fails.
7109         (c-forward-decl-or-cast-1): Correct a usage of match data.
7111         * lisp/progmodes/cc-fonts.el (c-font-lock-maybe-decl-faces): Remove.
7112         (c-font-lock-declarations): Use the new c-maybe-decl-faces in place of the
7113         removed variable.
7115         * lisp/progmodes/cc-langs.el (c-maybe-decl-faces): New language variable.
7117 2016-01-11  Eli Zaretskii  <eliz@gnu.org>
7119         Avoid an infloop when we run out of memory
7121         * src/alloc.c (garbage_collect_1): Don't bother saving and
7122         restoring the echo-area message if we are GC'ing after running out
7123         of memory.  This avoids an infloop due to repeated attempts to
7124         allocate memory for the cons cell needed to save the message,
7125         which signals the memory-full error, which attempts to save the
7126         echo-area message, which signals memory-full again, etc.
7128 2016-01-11  Eli Zaretskii  <eliz@gnu.org>
7130         Avoid unnecessary failures of auto-saving after fatal error
7132         * src/w32.c (map_w32_filename): Avoid non-trivial system calls for
7133         the benefit of FAT volumes if we are called as part of shutting
7134         down due to a fatal error, which probably means we are trying to
7135         auto-save the session.
7136         * src/lread.c (check_obarray): Don't bother making the obarray
7137         valid if we are shutting down due to a fatal error.  This avoids
7138         interfering with auto-saving the crashed session.
7140 2016-01-11  Paul Eggert  <eggert@cs.ucla.edu>
7142         Simplify HAVE_MODULES use in mark_maybe_pointer
7144         * src/alloc.c (HAVE_MODULES): Now a constant 0 if not defined,
7145         so that later code can use 'if' rather than '#ifdef'.
7146         (mark_maybe_pointer): Simplify based on HAVE_MODULES now
7147         always working.
7149 2016-01-11  Paul Eggert  <eggert@cs.ucla.edu>
7151         Revert attempt to use 'noexcept' in typedef
7153         This use of 'noexcept' runs afoul of the C++11 standard.
7154         Problem reported by Philipp Stephani in:
7155         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00706.html
7156         * src/emacs-module.c (emacs_finalizer_function):
7157         Move this typedef here ...
7158         * src/emacs-module.h: ... from here, and use only the C
7159         version of the typedef.  The typedef is now private since it
7160         is never used in the .h file now and anyway it seemed to be
7161         causing more confusion than it cured.
7162         (make_user_ptr, get_user_finalizer, set_user_finalizer):
7163         Open-code the type instead.
7165 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
7167         Update documentation of 'indirect-function'
7169         * doc/lispref/eval.texi (Function Indirection): Update the
7170         documentation of 'indirect-function'.
7172 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
7174         Update documentation for obsoleting 'syntax-begin-function'
7176         * doc/lispref/syntax.texi (Position Parse): Undocument
7177         'syntax-begin-function' that is now obsolete.
7179 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
7181         Document new features if Eshell
7183         * doc/misc/eshell.texi (Input/Output): Document the new
7184         '#<bufname>' syntax.
7185         (Input/Output): Document 'eshell-destroy-buffer-when-process-dies'.
7186         Disable "Key Index" generation, as there are no @kindex entries in
7187         this manual.
7189 2016-01-10  Michael Albinus  <michael.albinus@gmx.de>
7191         Handle too long commands in Tramp
7193         * lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link)
7194         (tramp-do-file-attributes-with-ls): Send sequence of commands, in
7195         order to not exceed shell command line limit.
7197         * test/automated/tramp-tests.el (tramp--test-darwin-p): Remove.
7198         (tramp--test-utf8): Include Arabic file name, again.
7200 2016-01-10  Paul Eggert  <eggert@cs.ucla.edu>
7202         * .gitattributes: *.cur and *.pif are binary files too.
7204 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
7206         * src/alloc.c (mark_maybe_pointer): HAVE_MODULES may be undefined
7208 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
7210         * sh-script.el (sh-smie-sh-rules): Improve indentation inside $(...)
7212         * lisp/progmodes/sh-script.el (sh-smie-sh-rules): Improve indentation
7213         within $(...).
7214         * test/indent/shell.sh: Add corresponding test.
7216 2016-01-09  Stefan Monnier  <monnier@iro.umontreal.ca>
7218         * src/alloc.c (mark_maybe_pointer): Also check wide-int's emacs_value
7220         (mark_memory): Simplify loop.  Don't assume a pointer-sized word can be
7221         cast to Lisp_Object.
7223 2016-01-09  Dmitry Gutov  <dgutov@yandex.ru>
7225         Use short date for 'hg annotate', and output the author
7227         * lisp/vc/vc-hg.el (vc-hg-annotate-command):
7228         Change '-d' to '-dq'.  (Bug#21805)
7229         (vc-hg-annotate-switches): Default to "-u" "--follow".
7230         (vc-hg-annotate-re): Update to recognize the short date format
7231         and the optional username.
7232         (vc-hg-annotate-time)
7233         (vc-hg-annotate-extract-revision-at-line): Update accordingly.
7235         * test/automated/vc-hg.el: New file.
7237 2016-01-09  Paul Eggert  <eggert@cs.ucla.edu>
7239         Spelling fix
7241 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
7243         Document user-level functions in project.el
7245         * lisp/progmodes/project.el (project-find-file)
7246         (project-or-external-find-file): Add doc strings.
7248 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
7250         Document the user-level features of the Xref package
7252         * doc/emacs/maintaining.texi (Maintaining): Add a list of
7253         described features.
7254         (Xref): New section, made out of thoroughly rewritten "Tags"
7255         section.
7256         (Find Identifiers, Looking Up Identifiers, Xref Commands)
7257         (Identifier Search, List Identifiers): New subsections,
7258         incorporating the old tags commands and the new xref commands.
7259         (Tags Tables, Tag Syntax, Create Tags Table, Etags Regexps):
7260         Section and subsections demoted to a lower level.
7261         * doc/emacs/search.texi (Search):
7262         * doc/emacs/windows.texi (Pop Up Window):
7263         * doc/emacs/frames.texi (Creating Frames):
7264         * doc/emacs/programs.texi (Imenu, Symbol Completion):
7265         * doc/emacs/building.texi (Grep Searching):
7266         * doc/emacs/dired.texi (Operating on Files):
7267         * doc/emacs/glossary.texi (Glossary): All references to tags changed.
7269 2016-01-09  Stefan Monnier  <monnier@iro.umontreal.ca>
7271         * loading.texi: Add `define-type' entry for load-history
7273         * doc/lispref/loading.texi (Where Defined): Remove incorrect
7274         cl-defmethod description, and add missing define-type entry.
7276 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
7278         Improve doc strings and prompts in xref.el
7280         * lisp/progmodes/xref.el (xref-backend-functions)
7281         (xref-find-definitions): Doc fixes.
7282         (xref-query-replace): Doc fix.  Improve prompts for arguments.
7284 2016-01-09  Alan Mackenzie  <acm@muc.de>
7286         Allow the use of `font-lock-extend-region-multiline' in CC Mode.
7288         * lisp/progmodes/cc-mode.el (c-font-lock-init): Remove
7289         `font-lock-extend-regions-wholelines' from
7290         `font-lock-extend-region-functions' rather than setting the latter to
7291         nil.
7293 2016-01-09  Michael Albinus  <michael.albinus@gmx.de>
7295         Fix coding system for Tramp on OS X.
7297         * lisp/net/tramp-compat.el: Require ucs-normalize.
7299         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
7300         Set coding system to `utf-8-hfs' for Mac OS X.
7302         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
7303         Flush directory properties when needed.
7304         (tramp--test-utf8): Include Chinese file name, again.
7306 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
7308         Update 'load-history' docs
7310         * doc/lispref/loading.texi (Where Defined): Update the list of
7311         forms in 'load-history' by adding the forms created for the
7312         'cl-generic' generics.  (Bug#21422)
7314 2016-01-08  Paul Eggert  <eggert@cs.ucla.edu>
7316         Fix (error ...) error
7318         Problem reported by Glenn Morris in:
7319         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00561.html
7320         * lisp/vc/add-log.el (change-log-goto-source): Fix typos
7321         introduced in my Aug 28 change, where I got confused by the
7322         two meanings of (error ...).
7324 2016-01-08  Alan Mackenzie  <acm@muc.de>
7326         Correctly analyze brace arguments in templated C++ function declarations.
7328         * lisp/progmodes/cc-defs.el (c-go-list-forward, c-go-list-backward): add
7329         POS and LIMIT parameters, like the other c-go-list-* functions have.
7331         * lisp/progmodes/cc-engine.el (c-restore-<>-properties): Check backwards
7332         for a ?\( rather than a ?<.  (c-looking-at-inexpr-block): Handle names
7333         followed by template specifiers.
7335 2016-01-08  Glenn Morris  <rgm@gnu.org>
7337         * lisp/cedet/mode-local.el (describe-function-orig-buffer): Declare.
7339         * lisp/ffap.el (ffap-latex-mode): Avoid free variable.
7341 2016-01-08  Mark Oteiza  <mvoteiza@udel.edu>
7343         * lisp/play/dunnet.el (dun-fix-screen): Avoid `end-of-buffer`.
7345 2016-01-08  Alan Mackenzie  <acm@muc.de>
7347         Respect fontification region calculated by major mode.  Fixes bug #22316.
7349         * lisp/font-lock.el (font-lock-extend-jit-lock-region-after-change): when a
7350         fontification region has been calculated by a function on
7351         font-lock-extend-after-change-region-function use this region rather than
7352         changing the end position to somewhere else.
7354 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
7356         Improve documentation of Delete Selection mode
7358         * lisp/delsel.el (delete-selection-mode)
7359         (delete-selection-helper): Update and expand the doc strings.
7360         (Bug#22296)
7362         * doc/emacs/mark.texi (Using Region): Document the behavior of
7363         delete commands in Delete Selection mode.  (Bug#22296)
7365         * doc/lispref/markers.texi (The Mark): Document how to add the
7366         support for Delete Selection mode to Lisp programs. (Bug#22296)
7368 2016-01-08  Dmitry Gutov  <dgutov@yandex.ru>
7370         Fix two project-find-file issues
7372         * lisp/progmodes/project.el (project--value-in-dir):
7373         Temporarily set enable-local-variables to :all.
7374         (project-find-file, project-or-external-find-file):
7375         All autoloads.
7376         (project--find-file-in): Require xref.
7378 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
7380         Clarify doc string of 'dired-current-directory'
7382         * lisp/dired.el (dired-current-directory): Doc fix: clarify that
7383         the return value might not end in a slash when called with the
7384         optional argument non-nil.  (Bug#6273)
7386 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
7388         Use the face of preceding text for displaying the ellipsis
7390         * src/xdisp.c (setup_for_ellipsis): Use the face of the preceding
7391         text in it->saved_face_id for displaying the ellipsis, and ignore
7392         the face, if any, of the invisible text.  (Bug#22320)
7394 2016-01-08  Michael Albinus  <michael.albinus@gmx.de>
7396         Suppress Chinese file name test for OSX in tramp-tests.el
7398         * test/automated/tramp-tests.el (tramp--test-utf8):
7399         Remove instrumentation.  Suppress Chinese file name test for OSX.
7401 2016-01-07  Glenn Morris  <rgm@gnu.org>
7403         * admin/admin.el (set-version): Also handle the NEWS file.
7405 2016-01-07  Dmitry Gutov  <dgutov@yandex.ru>
7407         apropos-library: Skip obvious duplicates; don't error on generics
7409         * lisp/apropos.el (apropos-library): Skip "was an autoload"
7410         entries, to avoid obvious duplicates.  For each cl-defmethod
7411         entry, take just its function symbol (bug#21422).
7413 2016-01-07  Dmitry Gutov  <dgutov@yandex.ru>
7415         Add project-find-file and project-or-external-find-file
7417         * lisp/minibuffer.el (completion-category-defaults):
7418         Add `project-file' category.
7420         * lisp/progmodes/project.el (project-find-file)
7421         (project-or-external-find-file): New commands.
7422         (project--find-file-in): New private function.
7424         * lisp/progmodes/xref.el (xref-collect-matches): Use
7425         `expand-file-name' on DIR, to expand the tildes.
7426         (xref--find-ignores-arguments): Extract from
7427         `xref--rgrep-command'.
7429 2016-01-06  Leo Liu  <sdl.web@gmail.com>
7431         Add defvar-local to lisp-imenu-generic-expression
7433         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression): Add
7434           defvar-local.
7436 2016-01-06  Leo Liu  <sdl.web@gmail.com>
7438         Revert commit b1e3d14845517bfa9fa5d6d3840f3ab3160306fd
7440         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
7441           Don't declare (indent 1).
7443 2016-01-06  Glenn Morris  <rgm@gnu.org>
7445         * lisp/emacs-lisp/autoload.el (autoload-find-destination): Doc fix.
7447 2016-01-06  Glenn Morris  <rgm@gnu.org>
7449         * lisp/emacs-lisp/autoload.el (autoload-find-destination):
7451         Avoid specifying the length of a time object (it has not been "2"
7452         for some time).
7454 2016-01-06  Andreas Schwab  <schwab@linux-m68k.org>
7456         Properly encode/decode base64Binary data in SOAP
7458                 * lisp/net/soap-client.el (soap-encode-xs-basic-type): Encode
7459                 base64Binary value as utf-8.
7460                 (soap-decode-xs-basic-type): Decode base64Binary value as utf-8.
7462 2016-01-06  Eli Zaretskii  <eliz@gnu.org>
7464         Obey coding-system-for-write when writing stdout/stderr in batch
7466         * src/print.c (printchar_to_stream):
7467         * src/xdisp.c (message_to_stderr): If coding-system-for-write has
7468         a non-nil value, use it to encode output in preference to
7469         locale-coding-system.  See the discussions in
7470         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00048.html
7471         for the details.
7473         * doc/lispref/os.texi (Terminal Output): Document how to send
7474         non-ASCII text via 'send-string-to-terminal'.
7475         (Batch Mode): Document how text written to standard streams is
7476         encoded.  Fix inaccuracy regarding which output streams are used
7477         by output functions in batch mode.
7479 2016-01-06  Xue Fuqiao  <xfq.free@gmail.com>
7481         * doc/misc/efaq.texi (Packages that do not come with Emacs):
7482         Update the URI of MELPA and marmalade-repo.  Reported by CHENG Gao
7483         <chenggao@royau.me> in
7484         https://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00390.html.
7486 2016-01-05  Maksim Golubev  <maksim.golubev72@gmail.com>  (tiny change)
7488         * lisp/progmodes/opascal.el (opascal-mode-syntax-table):
7490         Fix backslash.  (Bug#22224)
7492 2016-01-05  Federico Beffa  <beffa@ieee.org>  (tiny change)
7494         * lisp/progmodes/xscheme.el (xscheme-prompt-for-expression-exit):
7496         Make it actually work.  (Bug#22265)
7498 2016-01-05  Alan Mackenzie  <acm@muc.de>
7500         Remove function wrongly on AWK Mode value of context fontification hook.
7502         * lisp/progmodes/cc-langs.el (c-before-context-fontification-functions):
7503         swap order of entries so that awk's entry isn't superseded by the default.
7505         * lisp/progmodes/cc-mode.el (c-before-context-fl-expand-region): Correct
7506         to handle nil value of c-before-context-fontification-functions.
7508 2016-01-05  Paul Eggert  <eggert@cs.ucla.edu>
7510         * src/buffer.c: Stick with ASCII in doc string.
7512 2016-01-05  Paul Eggert  <eggert@cs.ucla.edu>
7514         Reword transient-mark-mode doc string
7516         * src/buffer.c (syms_of_buffer): Reword doc string to avoid confusion.
7517         The value 'lambda (literally) can be interpreted as (quote lambda),
7518         which is not intended here; we want just the lambda symbol.
7520 2016-01-05  Eli Zaretskii  <eliz@gnu.org>
7522         Update doc string of 'selective-display'
7524         * src/buffer.c (syms_of_buffer) <selective-display>: Say that
7525         using it with the value of 't' is obsolete.  (Bug#1092)
7527 2016-01-05  Alan Mackenzie  <acm@muc.de>
7529         Make C++ buffers writeable when writing their initial text properties.
7531         This is a correction to yesterday's CC Mode patch.
7533         * lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Put
7534         c-save-buffer-state around the function rather than a mere `let'.
7536 2016-01-05  Michael Albinus  <michael.albinus@gmx.de>
7538         Additional changes for "make check-expensive"
7540         * CONTRIBUTE : Encourage use of ":tags '(:expensive-test)".
7541         Explain make target `check-expensive'.
7543         * etc/NEWS: Mention new make target `check-expensive'.
7545         * test/automated/Makefile.in (check-doit): New target.
7546         (check, check-expensive): Use it.
7548 2016-01-04  Alan Mackenzie  <acm@muc.de>
7550         Apply text properties for <, > in new after-change function (C++ Java Modes).
7552         These are category/syntax-table properties to give < and > paren syntax.
7553         Also apply certain `c-type' text properties to the insides of <..> constructs
7554         to ensure that identifiers contained by them get fontified.  This patch fixes
7555         bug #681.
7557         * lisp/progmodes/cc-cmds.el (c-electric-lt-gt): Reformulate due to new
7558         after-change action.
7560         * lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Expand
7561         change region to include <s and >s which might not be already marked as
7562         parens, rather than just when paren text properties are removed.
7563         (c-restore-<>-properties): New after-change function, which applies text
7564         properties marking < and > with paren syntax.
7566         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Ensure `c-type'
7567         properties are applied to the interiors of <...> constructs, to ensure
7568         fontification of identifiers there.
7570         * lisp/progmodes/cc-langs.el (c-before-font-lock-functions): Add
7571         c-restore-<>-properties to this list for C++ and Java.
7573         * lisp/progmodes/cc-mode.el (c-common-init): When invoking
7574         c-before-font-lock-functions, exclude c-restore-<>-properties from the
7575         functions invoked.
7576         (c-before-change): Initialize c-new-BEG/END here (rather than c-after-change)
7577         to allow modification by before-change functions.
7578         (c-after-change): Amend c-new-END here, rather than initializing it and
7579         c-new-BEG.
7581 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
7583         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
7585 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
7587         Introduce check-expensive tests.
7589         * Makefile.in (check-expensive):
7590         * test/automated/Makefile.in (check-expensive): New target.
7592         * test/automated/auto-revert-tests.el
7593         (auto-revert-test01-auto-revert-several-files):
7594         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
7595         * test/automated/tramp-tests.el (tramp-test26-process-file)
7596         (tramp-test27-start-file-process, tramp-test28-shell-command)
7597         (tramp-test29-vc-registered)
7598         (tramp-test31-special-characters-with-stat)
7599         (tramp-test31-special-characters-with-perl)
7600         (tramp-test31-special-characters-with-ls)
7601         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
7602         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
7603         (tramp-test35-unload): Tag the tests as :expensive-test.
7605 2016-01-04  Lars Magne Ingebrigtsen  <larsi@gnus.org>
7607         shr-tag-video bug fix
7609         * shr.el (shr-tag-video): Protect against the `poster' being
7610         empty.
7612 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
7614         Minor fixes in tramp-tests.el
7616         * test/automated/tramp-tests.el (tramp-test26-process-file):
7617         Move point properly.
7618         (tramp-test29-vc-registered): Work with relative file names.
7620 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
7622         Ensure redisplay when 'truncate-lines' is set
7624         * lisp/frame.el (redisplay--variables): Add 'truncate-lines'.
7625         (Bug#22303)
7627 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
7629         Fix a doc string of 'transient-mark-mode'
7631         * src/buffer.c (syms_of_buffer) <transient-mark-mode>: Prevent
7632         "lambda" in doc string from becoming a link to lambda expressions.
7634 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
7636         MS-Windows followup to latest gnulib update
7638         * nt/gnulib.mk (EXTRA_DIST): Add ignore-value.h.
7640 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
7642         Spelling fix
7644 2016-01-03  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
7646         Do secure signed Bcc handling
7648         * lisp/gnus/message.el (message-send): Do secure signed Bcc handling
7649         (bug#18718).
7651 2016-01-03  Paul Eggert  <eggert@cs.ucla.edu>
7653         Avoid stdio in SIGINT handler
7655         * admin/merge-gnulib (GNULIB_MODULES): Add ignore-value.
7656         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
7657         * lib/ignore-value.h: New file, from gnulib.
7658         * src/keyboard.c: Include it.
7659         (write_stdout, read_stdin): New functions.
7660         (handle_interrupt): Use them instead of printf and getchar,
7661         and avoid fflush when handling signals.
7663 2016-01-03  Paul Eggert  <eggert@cs.ucla.edu>
7665         * doc/misc/texinfo.tex: Revert unwanted copyright change.
7667 2016-01-03  Artur Malabarba  <bruce.connor.am@gmail.com>
7669         * lisp/align.el (align): Simplify a lambda
7671         * lisp/align.el (align): Fix arg order in call to `align-region'
7673 2016-01-03  Eli Zaretskii  <eliz@gnu.org>
7675         Fix compilation next-error in buffers with selective-display
7677         * lisp/progmodes/compile.el (compilation-beginning-of-line): New
7678         function.
7679         (compilation-internal-error-properties)
7680         (compilation-next-error-function, compilation-set-window): Use
7681         it.  (Bug#1092)
7683 2016-01-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
7685         * nsm.el (nsm-check-protocol): Fix typo in the message.
7687 2016-01-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
7689         Add SHA1 warnings for high network security settings
7691         * nsm.el (nsm-check-protocol): When using high security, warn
7692         about SHA1 certificates, which are now believed to be open to
7693         spoofing.
7695 2016-01-02  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
7697         Refactor mml-smime.el, mml1991.el, mml2015.el
7699         (Maybe this is the last merge from Gnus git to Emacs git)
7701         Cf. discussion on ding mailing list, messages in
7702         <http://thread.gmane.org/gmane.emacs.gnus.general/86228>.
7703         Common code from the three files mml-smime.el, mml1991.el, and
7704         mml2015.el is moved to mml-sec.el.  Auxiliary functions are added
7705         to gnus-util.el.
7707         The code is supported by test cases with necessary test keys.
7709         Documentation in message.texi is updated.
7711         * doc/misc/message.texi (Security, Using S/MIME):
7712         Update for refactoring mml-smime.el, mml1991.el, mml2015.el.
7713         (Using OpenPGP): Rename from "Using PGP/MIME"; update contents.
7714         (Passphrase caching, Encrypt-to-self, Bcc Warning): New sections.
7716         * lisp/gnus/gnus-util.el (gnus-test-list, gnus-subsetp, gnus-setdiff):
7717         New functions.
7719         * lisp/gnus/mml-sec.el: Require gnus-util and epg.
7720         (epa--select-keys): Autoload.
7721         (mml-signencrypt-style-alist, mml-secure-cache-passphrase): Doc fix.
7722         (mml-secure-openpgp-signers): New user option;
7723         make mml1991-signers and mml2015-signers obsolete aliases to it.
7724         (mml-secure-smime-signers): New user option;
7725         make mml-smime-signers an obsolete alias to it.
7726         (mml-secure-openpgp-encrypt-to-self): New user option;
7727         make mml1991-encrypt-to-self and mml2015-encrypt-to-self obsolete
7728         aliases to it.
7729         (mml-secure-smime-encrypt-to-self): New user option;
7730         make mml-smime-encrypt-to-self an obsolete alias to it.
7731         (mml-secure-openpgp-sign-with-sender): New user option;
7732         make mml2015-sign-with-sender an obsolete alias to it.
7733         (mml-secure-smime-sign-with-sender): New user option;
7734         make mml-smime-sign-with-sender an obsolete alias to it.
7735         (mml-secure-openpgp-always-trust): New user option;
7736         make mml2015-always-trust an obsolete alias to it.
7737         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
7738         New user options.
7739         (mml-secure-cust-usage-lookup, mml-secure-cust-fpr-lookup)
7740         (mml-secure-cust-record-keys, mml-secure-cust-remove-keys)
7741         (mml-secure-add-secret-key-id, mml-secure-clear-secret-key-id-list)
7742         (mml-secure-cache-passphrase-p, mml-secure-cache-expiry-interval)
7743         (mml-secure-passphrase-callback, mml-secure-check-user-id)
7744         (mml-secure-secret-key-exists-p, mml-secure-check-sub-key)
7745         (mml-secure-find-usable-keys, mml-secure-select-preferred-keys)
7746         (mml-secure-fingerprint, mml-secure-filter-keys)
7747         (mml-secure-normalize-cust-name, mml-secure-select-keys)
7748         (mml-secure-select-keys-1, mml-secure-signer-names, mml-secure-signers)
7749         (mml-secure-self-recipients, mml-secure-recipients)
7750         (mml-secure-epg-encrypt, mml-secure-epg-sign): New functions.
7752         * lisp/gnus/mml-smime.el: Require epg;
7753         refactor declaration and autoloading of epg functions.
7754         (mml-smime-use): Doc fix.
7755         (mml-smime-cache-passphrase, mml-smime-passphrase-cache-expiry):
7756         Obsolete.
7757         (mml-smime-get-dns-cert, mml-smime-get-ldap-cert):
7758         Use format instead of gnus-format-message.
7759         (mml-smime-epg-secret-key-id-list): Remove variable.
7760         (mml-smime-epg-passphrase-callback, mml-smime-epg-find-usable-key)
7761         (mml-smime-epg-find-usable-secret-key): Remove functions.
7762         (mml-smime-epg-sign, mml-smime-epg-encrypt): Refactor.
7764         * lisp/gnus/mml1991.el (mml1991-cache-passphrase)
7765         (mml1991-passphrase-cache-expiry): Obsolete.
7766         (mml1991-epg-secret-key-id-list): Remove variable.
7767         (mml1991-epg-passphrase-callback, mml1991-epg-find-usable-key)
7768         (mml1991-epg-find-usable-secret-key): Remove functions.
7769         (mml1991-epg-sign, mml1991-epg-encrypt): Refactor.
7771         * lisp/gnus/mml2015.el (mml2015-cache-passphrase)
7772         (mml2015-passphrase-cache-expiry): Obsolete.
7773         (mml2015-epg-secret-key-id-list): Remove variable.
7774         (mml2015-epg-passphrase-callback, mml2015-epg-check-user-id)
7775         (mml2015-epg-check-sub-key, mml2015-epg-find-usable-key)
7776         (mml2015-epg-find-usable-secret-key): Remove functions.
7777         (mml2015-epg-decrypt, mml2015-epg-clear-decrypt, mml2015-epg-sign)
7778         (mml2015-epg-encrypt): Refactor.
7780 2016-01-02  Glenn Morris  <rgm@gnu.org>
7782         * lisp/progmodes/fortran.el (fortran-make-syntax-propertize-function):
7784         Explicitly ignore case.  (Bug#22262)
7786 2016-01-02  Stefan Monnier  <monnier@iro.umontreal.ca>
7788         (semantic-symref-derive-find-filepatterns): Return a list
7790         * lisp/cedet/semantic/symref/grep.el
7791         (semantic-symref-derive-find-filepatterns): Return a list.
7792         (semantic-symref-perform-search): Quote the result here once and for all.
7794 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
7796         Fix xref-find-references on MS-Windows
7798         * lisp/cedet/semantic/symref/grep.el
7799         (semantic-symref-derive-find-filepatterns): Use
7800         'shell-quote-argument' instead of manually quoting in a way that
7801         only works with Posix shells.  (Bug#22289)
7803 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
7805         Document new features of tildify-mode
7807         * lisp/textmodes/tildify.el (tildify-foreach-ignore-environments)
7808         (tildify-mode): Spelling fixes in doc strings.
7810         * etc/NEWS: Reformat the tildify-mode entry.
7812 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
7814         Document new features of Whitespace mode
7816         * doc/emacs/display.texi (Useless Whitespace): Document
7817         'whitespace-toggle-options' and the new 'big-indent' style.
7818         Document 'whitespace-big-indent-regexp'.  Document the Global
7819         Whitespace mode.
7821 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
7823         Improve documentation of new Hide-IfDef features
7825         * etc/NEWS: Expand and reword Hide-IfDef section.
7827 2016-01-02  Leo Liu  <sdl.web@gmail.com>
7829         Fix regression in font-locking cl-assert and cl-check-type
7831         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2): Fix
7832           el-errs-re.
7834 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
7836         Spelling and grammar fixes
7838 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
7840         Fix copyright years by hand
7842         These are dates that admin/update-copyright did not update, or
7843         updated incorrectly.
7845 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
7847         Update copyright year to 2016
7849         Run admin/update-copyright.
7851 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
7853         Merge from gnulib
7855         This mostly just updates copyright dates of gnulib files.
7856         It also updates to the latest version of texinfo.tex.
7858 2015-12-31  Mark Oteiza  <mvoteiza@udel.edu>
7860         lisp/emacs-lisp/chart.el (chart-new-buffer): Move to silence byte compiler.
7862 2015-12-31  Mark Oteiza  <mvoteiza@udel.edu>
7864         Port chart.el methods to cl-generic.
7866         cl-call-next-method cannot be used inside EIEIO's defmethod.
7867         * lisp/emacs-lisp/chart.el: Require cl-generic at compile time.
7868         * lisp/emacs-lisp/chart.el (initialize-instance, chart-draw):
7869         (chart-draw-title, chart-size-in-dir, chart-draw-axis):
7870         (chart-axis-draw, chart-translate-xpos, chart-translate-ypos):
7871         (chart-translate-namezone, chart-draw-data, chart-add-sequence):
7872         (chart-trim, chart-sort): Use cl-defmethod instead of defmethod.
7874 2015-12-31  Brian Burns  <bburns.km@gmail.com>
7876         Add nt/INSTALL.W64 build instructions
7878         * nt/INSTALL.W64: New file.
7879         * nt/INSTALL: Point to INSTALL.W64 for 64-bit build instructions.
7881 2015-12-31  Joakim Jalap  <joakim.jalap@fastmail.com>
7883         Add new input method 'programmer-dvorak'
7885         * lisp/leim/quail/programmer-dvorak.el ("programmer-dvorak"): New
7886         input method.
7888         * etc/NEWS: Mention it.
7890 2015-12-31  Eli Zaretskii  <eliz@gnu.org>
7892         Allow to invoke original M-TAB binding in 'flyspell-prog-mode'
7894         * lisp/textmodes/flyspell.el (flyspell-prog-mode): Record the
7895         original M-TAB binding in a buffer-local variable.
7896         (flyspell-auto-correct-word): Invoke the original binding of M-TAB
7897         if that is recorded, when point is in a place where flyspell
7898         should not be active (e.g., because the user turned on
7899         'flyspell-prog-mode').  (Bug#18533)
7901 2015-12-31  Eli Zaretskii  <eliz@gnu.org>
7903         Fix EWW rendering of long RTL lines
7905         * lisp/net/shr.el (shr-insert-document): Undo any previous hscroll
7906         of the selected window before filling its lines.  (Bug#22250)
7908 2015-12-31  Vincent Belaïche  <vincentb1@users.sourceforge.net>
7910         fix  bug#21054
7912         * ses.el (ses-check-curcell): Call `ses-set-curcell' unconditionally
7914 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
7916         Clean up cairo printing code
7918         * src/gtkutil.c (xg_get_page_setup): Use listn.
7919         * src/xfns.c (Fx_export_frames, Fx_print_frames_dialog): Doc fix.  Use
7920         decode_window_system_frame and FRAME_VISIBLE_P.
7921         (Fx_print_frames_dialog): Use redisplay_preserve_echo_area instead
7922         of Fdisplay.
7923         * src/xterm.c (x_cr_export_frames): Use redisplay_preserve_echo_area
7924         instead of Fdisplay.  Temporarily unblock_input around QUIT.
7926 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
7928         Add handle_user_signal_hook
7930         * src/keyboard.h (handle_user_signal_hook): New declaration.
7931         * src/keyboard.c (handle_user_signal_hook): New variable.
7932         (handle_user_signal): Call it.
7934 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
7936         Avoid writing to purespace
7938         * src/alloc.c (Fmake_string): Don't write to empty string contents.
7939         (allocate_vector): Don't write to empty vector size.
7940         * src/character.h (CHECK_CHARACTER_CAR, CHECK_CHARACTER_CDR):
7941         Don't call unnecessary XSETCAR or XSETCDR.
7942         * src/lisp.h (STRING_SET_UNIBYTE, STRING_SET_MULTIBYTE): Don't
7943         write to empty string size_byte.
7945 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
7947         Remove unused variable
7949         * lisp/international/mule-cmds.el: Remove unused variable
7950         `mac-system-coding-system'.
7952 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
7954         * configure.ac: Find libxml2 headers in Xcode SDK dir on Darwin.
7956 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
7958         Use posix_openpt instead of openpty on Darwin
7960         * configure.ac (PTY_ITERATION, FIRST_PTY_LETTER, PTY_OPEN)
7961         (PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF): Remove
7962         Darwin-specific definitions.  Use posix_openpt instead.
7964 2015-12-30  Shakthi Kannan  <shakthimaan@gmail.com>
7966         Document support for ':documentation' in Lisp mode
7968         * lisp/emacs-lisp/lisp-mode.el (lisp-string-in-doc-position-p)
7969         (lisp-string-after-doc-keyword-p)
7970         (lisp-font-lock-syntactic-face-function): Add doc strings.
7972 2015-12-30  Shakthi Kannan  <shakthimaan@gmail.com>
7974         Document new features of TeX mode
7976         * doc/emacs/text.texi (TeX Print): Document
7977         'tex-print-file-extension'.
7978         * doc/emacs/programs.texi (Misc for Programs): Document support
7979         for Prettify Symbols mode in TeX mode.
7981 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
7983         Clarify docs of hscroll in RTL text
7985         * doc/lispref/windows.texi (Horizontal Scrolling): Clarify the
7986         meaning of a window's horizontal scroll amount for RTL paragraphs.
7988 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
7990         Fix rendering of HTML pages that use character composition
7992         * src/indent.c (Fvertical_motion): Fix the case when point starts
7993         in the middle of a composition, as in shr-vertical-motion.
7994         (Bug#22250)
7996 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
7998         Avoid some compiler warnings in w32.c
8000         * src/w32.c (codepage_for_filenames, crlf_to_lf)
8001         (ansi_encode_filename, socket_to_fd, sys_write)
8002         (check_windows_init_file): Avoid compiler warnings about
8003         differences in pointer signedness.
8005 2015-12-29  Dmitry Gutov  <dgutov@yandex.ru>
8007         Undo ill-advised change
8009         * lisp/progmodes/xref.el (xref-collect-matches): Undo
8010         ill-advised change.  The hits come in the order that `find'
8011         produces them in, which isn't alphabetical.
8013 2015-12-29  Dmitry Gutov  <dgutov@yandex.ru>
8015         Unbreak completion in python-mode buffers
8017         * lisp/progmodes/python.el (python-shell-completion-at-point):
8018         Unbreak in python-mode buffers.
8020 2016-01-09  Andrew Hyatt  <ahyatt@gmail.com>
8022         Adding example replies to bug-triage.
8024         * admin/notes/bug-triage: Added example replies. Also, as requested,
8025           making the process notes into more of a checklist.
8027 2016-01-08  Andrew Hyatt  <ahyatt@gmail.com>
8029         Rename the notes/admin/triage file to bug-triage.
8031         * CONTRIBUTE: Change reference to the triage file name.
8032         * admin/notes/triage: Rename file to admin/notes/bug-triage.
8034 2016-01-07  Glenn Morris  <rgm@gnu.org>
8036         Allow creation of loaddefs files without timestamps.
8038         * lisp/emacs-lisp/autoload.el (autoload-timestamps): New variable.
8039         (autoload-generate-file-autoloads, update-directory-autoloads):
8040         If autoload-timestamps is nil, write "t" instead of file timestamp.
8041         (autoload-find-destination, update-directory-autoloads):
8042         If timestamp is "t", use the modtime of the output file instead.
8044 2016-01-06  Glenn Morris  <rgm@gnu.org>
8046         Doc tweaks.
8048         * lisp/calendar/cal-hebrew.el (diary-hebrew-list-entries):
8049         * lisp/calendar/cal-iso.el (calendar-iso-to-absolute)
8050         (calendar-iso-from-absolute):
8051         * lisp/calendar/cal-tex.el (cal-tex-comment):
8052         * lisp/calendar/solar.el (calendar-time-display-form): Doc tweaks.
8054 2016-01-06  Glenn Morris  <rgm@gnu.org>
8056         Build tweaks related to tags files.
8058         * lib-src/Makefile.in (tagsfiles): New variable.
8059         (TAGS): Also depend on the source files.  Use our own etags program.
8060         * lisp/Makefile.in (ETAGS): Add EXEEXT.
8061         (lisptagsfiles1, lisptagsfiles2, lisptagsfiles3, lisptagsfiles4):
8062         Remove.
8063         (tagsfiles): New, replacing lisptagsfiles1 etc.
8064         Remove irrelevant source files here rather than in the TAGS rule.
8065         (${ETAGS}): New rule.
8066         (TAGS): Also depend on the etags executable.
8067         * lwlib/Makefile.in (EXEEXT): New, set by configure.
8068         (ETAGS): Add EXEEXT.
8069         (${ETAGS}): New rule.
8070         (ctagsfiles): Use "wildcard".
8071         (TAGS): Also depend on the etags executable.
8072         * nt/Makefile.in (ETAGS, tagsfiles): New variables.
8073         (${ETAGS}): New rule.
8074         (TAGS): Fix dependencies.
8075         * oldXMenu/Makefile.in (EXEEXT): New, set by configure.
8076         (ETAGS): New variable, replacing $TAGS.  Use our own etags program.
8077         Remove "-t" argument.
8078         (${ETAGS}): New rule.
8079         (tagsfiles): New variable.
8080         (TAGS): New rule, with proper dependencies.
8081         * src/Makefile.in (ETAGS): Add EXEEXT.  Add a build rule.
8082         (ctagsfiles1, ctagsfiles2): Use "wildcard".
8083         (ctagsfiles3): Remove.
8084         (TAGS): Depend on etags.
8085         (../lisp/TAGS, $(lwlibdir)/TAGS): Let the rules in the relevant
8086         directories decide if updates are needed.
8088 2016-01-06  Glenn Morris  <rgm@gnu.org>
8090         * lisp/Makefile.in (CAL_SRC): Skip calendar.el.
8092 2016-01-06  Glenn Morris  <rgm@gnu.org>
8094         * test/lisp/emacs-lisp/package-tests.el
8096         (package-test-macro-compilation): Fixup branch merge.
8098 2016-01-05  Eli Zaretskii  <eliz@gnu.org>
8100         Fix fallout from merging emacs-25 branch in test/
8102         * .gitignore: Update for the new place of biditest.txt.
8103         * test/automated/: Directory removed.  All files moved to their
8104         proper places.
8105         * test/etags/: Directory removed.  All files moved to their proper
8106         places.
8107         * test/automated/url-parse-tests.el: File removed; it was an exact
8108         copy of the same file in test/lisp/url/.
8109         * test/automated/url-expand-tests.el: Moved to test/lisp/url/.
8111 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
8113         Spelling fixes.
8115 2016-01-04  Daniel Colascione  <dancol@dancol.org>
8117         Let users disable unsafe signal handling code
8119         * src/keyboard.c (syms_of_keyboard): New user variables
8120         `attempt-stack-overflow-recovery' and
8121         `attempt-orderly-shutdown-on-fatal-signal'.
8122         * src/sysdep.c (stack_overflow): Check
8123         `attempt-stack-overflow-recovery'.
8124         * src/emacs.c (terminate_due_to_signal): Check
8125         `attempt-orderly-shutdown-on-fatal-signal'.
8127 2016-01-03  Michael Albinus  <michael.albinus@gmx.de>
8129         * configure.ac: Add error message for gfile on Nextstep.
8131 2016-01-03  John Wiegley  <johnw@newartisans.com>
8133         Merge branch 'emacs-25-merge'
8135 2016-01-02  Vincent Belaïche  <vincentb1@users.sourceforge.net>
8137         Align textually on fix done for emacs-25 branch for bug#21054
8139         * lisp/ses.el (ses-check-curcell): Suppress ``temporary fix'' comment,
8140         and useless `(if t ...)' in order to align textually on fix done for
8141         emacs-25 branch for bug#21054.
8143 2016-01-02  K. Handa  <handa@gnu.org>
8145         support rendering of wider range of combinging characters by ftfont backend
8147         * lisp/language/hebrew.el (hebrew-shape-gstring): If the font backend
8148         supports rendering of combining characters, call
8149         font-shape-gstring.
8151         * src/font.c (Ffont_get): Handle `combining-capability' property.
8152         (syms_of_font): New symbol ":combining-capability'.
8154         * src/font.h (struct font_driver): New member combining_capability.
8156         * src/ftfont.c: Include "category.h".
8157         (ftfont_driver): Initialize combining_capability to
8158         ftfont_combining_capability.
8159         (ftfont_shape_by_flt): If OTF is null, try to find a suitable
8160         FLT in advance.
8161         (ftfont_combining_capability): New function.
8163 2016-01-01  Andrew Hyatt  <ahyatt@gmail.com>
8165         Add notes on bug triage procedure
8167         * CONTRIBUTE: In section on the issue tracker, point to new triage file.
8168         * admin/notes/triage: New file explaining triage procedure.
8170 2015-12-30  Vincent Belaïche  <vincentb1@users.sourceforge.net>
8172         Correct ses-rename-cell cursor-intangible text prop updating.
8174         There were two problems:
8176         - First ses-rename-cell has to work when called non interactively
8177           (with non-nil CELL argument), so in this case the start pos of
8178           put-text-property cannot be plainly (point), you need a
8179           ses-goto-print call before
8181         - Second, the range itself was computed erronously, only the first
8182           char was affected instead of the full cell width. This was not
8183           noticeable prior to changes (Deprecate `intangible' and
8184           `point-entered' properties) made by Stefan on 2015-04-13T19:51:15Z
8186         * lisp/ses.el (ses-rename-cell): Correct computation of position range
8187         to which the 'cursor-intangible text property has to be set to cell
8188         new name.
8190 2015-12-30  Vincent Belaïche  <vincentb1@users.sourceforge.net>
8192         Don't fake empty cells value by "" when printing with a lambda.
8194         When using a lambda expression printer function the user should be
8195         free to format differently a really empty cell, ie. containing nil,
8196         from a cell containing an empty string "".
8198         * ses.el (ses-call-printer): Replace `(or value "")' by just `value'
8199         in the case of a lambda expression printer function.
8201         * ses.texi (Printer functions): Add example and description about
8202         lambda expression printer function handling all the possible values,
8203         including unexpected ones.
8205 2015-12-30  Vincent Belaïche  <vincentb1@users.sourceforge.net>
8207         Quick temporary hack to fix curcell refreshing.
8209         The problem was caused by change: 2015-04-13 Deprecate `intangible'
8210         and `point-entered' properties. The problem is that this change has
8211         removed the (setq ses--curcell t) setting in the ses-command-hook
8212         function.
8214         * ses.el (ses-check-curcell): replace `(eq ses--curcell t)' by just `t' as
8215         a condition to call function `ses-set-curcell'. Comment this as a quick
8216         temporary hack to make it work, as I don't know yet whether a definite
8217         correction would be to make the ses-set-curcell at every ses-check-curcell,
8218         or to revert to the previous approach, ie marking ses--curcell as out-of-date
8219         at every potentially cursor motion command.
8221 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
8223         Restrictive URL checking tweaks
8225         * lisp/net/eww.el (eww): Check whether the domain is
8226         restrictive instead of the string
8227         (http://македонија.icom.museum is restrictive even if each
8228         part is from a different script).
8230 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
8232         New function `puny-highly-restrictive-domain-p'
8234         * lisp/net/puny.el (puny-highly-restrictive-string-p): Rename.
8235         (puny-highly-restrictive-domain-p): New function.
8237 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
8239         eww build fix (require puny)
8241 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
8243         Transform non-restrictive domains to punycode for display
8245         * lisp/net/eww.el (eww): Check whether the domain is Highly
8246         Restrictive in the Unicode IDNA sense.
8248 2015-12-30  John Wiegley  <johnw@newartisans.com>
8250         Merge emacs-25 into master (using imerge)
8252 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
8254         Fix typos in CC Mode manual
8256         * doc/misc/cc-mode.texi (c-offsets-alist, Style Variables): Fix
8257         typos.  (Bug#22267)
8259 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
8261         Avoid assertion violations in compact_font_cache_entry
8263         * src/alloc.c (compact_font_cache_entry): Don't use VECTORP to
8264         avoid assertion violation in ASIZE.  (Bug#22263)
8266 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
8268         Fix filling text with bidirectional characters in shr.el
8270         * lisp/net/shr.el (shr-insert-document): Bind
8271         bidi-display-reordering to nil while filling lines.  This is
8272         required for when a line includes characters whose bidi
8273         directionality is opposite to the base paragraph direction,
8274         because columns are counted in the logical order.  (Bug#22250)
8276 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
8278         Further Unicode restrictive fixups
8280         * puny.el (puny-highly-restrictive-p): Include the extra
8281         identifier characters from table 3.
8283 2015-12-29  Martin Rudalics  <rudalics@gmx.at>
8285         * src/xfns.c (x_create_tip_frame): Process alpha parameter.
8287 2015-12-29  Michael Albinus  <michael.albinus@gmx.de>
8289         Sync with Tramp 2.2.13
8291         * doc/misc/trampver.texi: Change version to "2.2.13.25.1".
8293         * lisp/net/tramp-compat.el (tramp-compat-delete-dups):
8294         Use `tramp-compat-funcall'.
8296         * lisp/net/tramp-gvfs.el (tramp-gvfs-parse-device-names):
8297         Make `split-string' call compatible with older Emacsen.
8299         * lisp/net/trampver.el: Change version to "2.2.13.25.1".
8301 2015-12-29  Lambda Coder  <sjLambda@gmail.com>
8303         * doc/misc/tramp.texi: Editorial revisions to the Tramp manual
8305 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
8307         Mention that tls.el is secure by default, and will fail
8309 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
8311         Make tls.el use trustfiles by default
8313         * lisp/net/tls.el (tls-program): Add a certfile by default (bug#21227).
8314         (open-tls-stream): Insert the trustfile by looking at
8315         `gnutls-trustfiles'.
8317 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
8319         Refactor out gnutls-trustfiles
8321         * lisp/net/gnutls.el (gnutls-trustfiles): Refactor out for reuse by tls.el.
8323 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
8325         Remove --insecure from gnutls-cli invocation
8327         * tls.el (tls-program): Default to using secure TLS
8328         connections (bug#19284).
8330 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
8332         Add a new function to say whether a string is restrictive
8334         * puny.el (puny-highly-restrictive-p): New function.
8336 2015-12-28  Paul Eggert  <eggert@cs.ucla.edu>
8338         Spelling fix
8340 2015-12-28  Paul Eggert  <eggert@cs.ucla.edu>
8342         Port report-emacs-bug to deterministic builds
8344         * lisp/mail/emacsbug.el (report-emacs-bug): Future-proof the
8345         recent "built on" change to deterministic builds where
8346         emacs-build-system will be nil.  See:
8347         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg01369.html
8349 2015-12-28  Jose A. Ortega Ruiz  <jao@gnu.org>  (tiny change)
8351         Fix URL auth error message
8353         * lisp/url/url-http.el (url-http-handle-authentication): Make the error
8354         message more correct (bug#20069).
8356 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
8358         Mention the new puny.el library
8360 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
8362         IDNA-related fixes for the URL library
8364         * lisp/url/url-http.el (url-http-create-request): IDNA-encode
8365         the Host: header.
8367         * lisp/url/url-util.el (url-encode-url): Don't hex-encode
8368         domain names, but leave them as UTF-8, so that they can be
8369         IDNA-encoded later when contacting the host.
8371 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
8373         IDNA-encode all domain names in `open-network-stream'
8375         * network-stream.el (open-network-stream)
8376         (network-stream-open-plain, network-stream-open-starttls):
8377         IDNA-encode all domain names, if needed.
8379 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
8381         Fix puny-encoding all-non-ASCII domains
8383         * puny.el (puny-encode-string): Fix the all-non-ASCII encoding case.
8385 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
8387         * lisp/net/shr.el (shr-next-link): Don't bug out on adjacent links.
8389 2015-12-28  Tom Tromey  <tom@tromey.com>
8391         set :safe on css-indent-offset
8393         * lisp/textmodes/css-mode.el (css-indent-offset): Add :safe 'integerp.
8395 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
8397         * eww.el (eww-mode): Remove superfluous bidi reset.
8399 2015-12-28  James Stout  <james.wolf.stout@gmail.com>  (tiny change)
8401         Make chunked encoding trailer detection more compliant
8403         * lisp/url/url-http.el
8404         (url-http-chunked-encoding-after-change-function): Make
8405         trailer detection more compliant (bug#16345).
8407 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
8409         Reconnect erc even on server errors
8411         * lisp/erc/erc-backend.el (erc-server-reconnect-p): Try to
8412         reconnect even if a server error has occurred (bug#18527).
8414 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
8416         Fix punycode short circuit logic
8418         * puny.el (puny-encode-domain): Fix short-circuit logic.
8420 2015-12-28  Martin Rudalics  <rudalics@gmx.at>
8422         Fix Bug#10873 in `report-emacs-bug'
8424         * lisp/mail/emacsbug.el (report-emacs-bug): If
8425         `report-emacs-bug-no-explanations' is nil, make sure we can show
8426         mail and warnings buffer on this frame (Bug#10873).
8428 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
8430         IDNA speed up
8432         * puny.el (puny-encode-domain): Make the common non-IDNA case faster
8434 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
8436         Add IDNA domain encode/decode functions
8438         * puny.el (puny-decode-domain): New function.
8439         (puny-encode-domain): Ditto.
8440         (puny-decode-digit): Fix digit decoding error.
8442 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
8444         Rename idna.el to puny.el
8446         * puny.el: Renamed from idna.el to avoid name collisions with
8447         the external idna.el library.
8449 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
8451         Always reset the bidi direction
8453         * eww.el (eww-display-html): Always reset the bidi direction
8454         to `left-to-right' (bug#22257).
8456 2015-12-28  Alan Mackenzie  <acm@muc.de>
8458         Allow line comments ending with escaped NL to be continued to the next line.
8460         Use this in C, C++, and Objective C Modes.  Fixes bug#22246
8462         * src/syntax.c (comment-end-can-be-escaped): New buffer local variable.
8463         (forw-comment, back-comment): On encountering an end of comment character,
8464         test whether it is escaped when `comment-end-can-be-escaped' is non-nil.
8466         * doc/lispref/syntax.texi (Control Parsing): Describe
8467         `comment-end-can-be-escaped'.
8469         * etc/NEWS (Lisp Changes): Describe `comment-end-can-be-escaped'.
8471         * lisp/progmodes/cc-langs.el: New c-lang-setvar `comment-end-can-be-escaped'.
8473 2015-12-28  Katsumi Yamaoka  <yamaoka@jpl.org>
8475         lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): Keep old Emacsen compatibility
8477         * lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe):
8478         Don't use split-string with 4th arg for old Emacsen compatibility.
8480 2015-12-27  Dmitry Gutov  <dgutov@yandex.ru>
8482         Rename project-library-roots to project-external-roots
8484         * lisp/progmodes/project.el (project-library-roots): Rename to
8485         project-external-roots.
8486         (project-library-roots-function): Rename to
8487         project-vc-external-roots-function.  Only use it in the VC
8488         backend, for now.  Update project-external-roots accordingly.
8489         (project-vc-library-roots): Remove.
8490         (project-or-libraries-find-regexp):
8491         Rename to project-or-external-find-regexp.
8493         * lisp/progmodes/elisp-mode.el (elisp-library-roots):
8494         Rename to elisp-load-path-roots.
8496         * lisp/progmodes/etags.el (etags-library-roots): Remove.  Use
8497         an anonymous function for the default value of
8498         project-vc-external-roots-function.
8500 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
8502         * idna.el (idna-decode-string-internal): Implement decoding.
8504 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
8506         Further IDNA tweaks
8508         (idna-encode-string): Make idna-encode-string safe for
8509         non-ASCII use.
8511 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
8513         Clean up the code slightly
8515 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
8517         Added basic idna encoding support
8519         * lisp/net/idna.el: New file.
8521 2015-12-27  Vivek Dasmohapatra  <vivek@etla.org>
8523         Disconnection fixes for erc
8525         * lisp/erc/erc-backend.el (erc-server-reconnect-p): Don't
8526         reconnect if the user has disconnected explicitly (bug#4589).
8528 2015-12-27  Thomas Riccardi  <riccardi.thomas@gmail.com>  (tiny change)
8530         Further erc asynch fixes
8532         * lisp/erc/erc-backend.el (erc-process-sentinel-2): Make
8533         erc-server-connect to return even if the connection is not
8534         ready.  Then erc-open and erc-server-reconnect do the
8535         same. (bug#5650).
8537 2015-12-27  Vivek Dasmohapatra  <vivek@etla.org>
8539         Make erc connect asynchronously
8541         * lisp/erc/erc-backend.el (erc-server-reconnect): Use it to
8542         reconnect asynchronously.
8544         * lisp/erc/erc-backend.el (erc-open-network-stream): New function (bug#5650).
8546 2015-12-27  Deniz Dogan  <deniz@dogan.se>
8548         Clear erc user list upon disconnection
8550         * lisp/erc/erc-backend.el (erc-process-sentinel): Clear channel user
8551         lists upon disconnection.  This prevents invalid channel
8552         user lists when reconnecting (bug#10947).
8554 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
8556         Don't bug out in erc after waking from sleep
8558         * erc-backend.el (erc-server-send-ping): If the server has
8559         closed connection, this may already have been detected and
8560         `erc-server-last-received-time' has been set to nil (bug#13608).
8562 2015-12-27  David Edmondson  <dme@dme.org>
8564         Proxy error in erc with multiple clients
8566         * lisp/erc/erc.el (erc-channel-receive-names): Fix errors
8567         generated when multiple IRC clients talk to a single IRC proxy
8568         (bug#19034).
8570 2015-12-27  Dima Kogan  <dima@secretsauce.net>
8572         Ensure that we don't have several timers in erc
8574         * lisp/erc/erc-backend.el (erc-server-setup-periodical-ping): Checks
8575         for existing timers in the alist before adding new ones.  If a
8576         timer already exists, it is cancelled and
8577         overwritten. (bug#19292).
8579 2015-12-27  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
8581         * lisp/gnus/mml-sec.el: Fix warnings by adding autoloads
8582         (bug#18718).
8584 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
8586         * lisp/erc/erc-log.el (erc-log-setup-logging): Insert the previous log
8587         at the start of the buffer, not at the end (bug#20496).
8589 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
8591         * lisp/net/eww.el (eww-setup-buffer): Restore left-to-right defaults.
8593 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
8595         Don't join erc channels doubly
8597         * erc-join.el (erc-autojoin-channels): Don't join channels
8598         more than once (if you have several nicks) (bug#20695).
8600 2015-12-27  Eli Zaretskii  <eliz@gnu.org>
8602         Avoid leaving "ghost" of mouse pointer on MS-Windows
8604         * src/w32term.c (frame_set_mouse_pixel_position):
8605         * src/w32fns.c (Fw32_mouse_absolute_pixel_position): Momentarily
8606         disable "mouse trails" when moving the mouse pointer.  (Bug#22247)
8607         * src/w32term.c (frame_set_mouse_pixel_position): Include
8608         w32common.h.
8610 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
8612         * lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): Fix typo in last check-in.
8614 2015-12-27  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
8616         Identify unsafe combinations of Bcc and encryption
8618         * lisp/gnus/gnus-util.el (gnus-subsetp): New function
8619         * lisp/gnus/mml-sec.el (mml-secure-safe-bcc-list): New variable
8620         * lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): New function
8622 2015-12-27  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
8624         Fix auth source lookups from erc with port numbers
8626         * lisp/erc/erc.el (erc-open): `auth-source' wants strings, not port
8627         numbers (bug#20541).
8629 2015-12-27  Fran Litterio  <flitterio@gmail.com>
8631         Run erc-kill-channel-hook always on exit
8633         * lisp/erc/erc.el (erc-kill-buffer-function): Run erc-kill-channel-hook
8634         when erc-kill-queries-on-quit is set (bug#21187).
8636 2015-12-26  Paul Eggert  <eggert@cs.ucla.edu>
8638         Spelling fix
8640         * test/automated/url-parse-tests.el:
8641         (url-generic-parse-url/same-document-reference):
8642         Rename from url-generic-parse-url/same-decument-reference.
8644 2015-12-26  Paul Eggert  <eggert@cs.ucla.edu>
8646         Reword initial *scratch* for brevity, appearance
8648         * lisp/startup.el (initial-scratch-message):
8649         Reword to avoid apostrophes, and to make it shorter.
8650         See the thread starting in:
8651         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg01241.html
8653 2015-12-26  Leo Liu  <sdl.web@gmail.com>
8655         Add ert-deftest to lisp-mode.el
8657         * lisp-mode.el (lisp-imenu-generic-expression,
8658           lisp-el-font-lock-keywords-1): Add ert-deftest.
8660 2015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
8662         Mark imap changes as not needing doc changes
8664         * imap.el (imap-ssl-open): Remove
8666 2015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
8668         Use built-in encryption in imap.el
8670         * lisp/net/imap.el (imap-ssl-program): Remove (bug#21134).
8671         (imap-starttls-open): Use open-network-stream instead of starttls.el.
8672         (imap-tls-open): Use open-network-stream instead of tls.el.
8674 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
8676         Don't try using /bin/sh in artist.el on MS-Windows
8678         * lisp/textmodes/artist.el (artist-figlet-get-font-list-windows):
8679         New function.
8680         (artist-figlet-choose-font): Use it on MS-Windows and MS-DOS.
8681         (Bug#20167)
8683 2015-12-26  Wolfgang Jenkner  <wjenkner@inode.at>
8685         Always define gmalloc etc. in src/gmalloc.c
8687         This is a work-around to prevent the compiler from using semantic
8688         knowledge about malloc for optimization purposes.  E.g., gcc 5.2
8689         with -O2 replaces most of calloc's definition by a call to calloc;
8690         see Bug#22085.
8691         * src/gmalloc.c [!HYBRID_MALLOC] (malloc, realloc, calloc)
8692         (aligned_alloc, free): Do not undef.  Instead, define these as
8693         functions (perhaps renamed to gmalloc etc.) in terms of gmalloc etc.
8695 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
8697         Fix documentation of browse-url browser-related functions
8699         * lisp/net/browse-url.el (browse-url)
8700         (browse-url-default-browser, browse-url-default-windows-browser)
8701         (browse-url-default-macosx-browser, browse-url-chromium)
8702         (browse-url-kde, browse-url-text-xterm): Clarify the usage of ARGS
8703         and NEW-WINDOW arguments in these functions.  (Bug#19421)
8705 2015-12-26  Paul Eggert  <eggert@cs.ucla.edu>
8707         Propagate Bug#14412 fix to backtrace_eval_unrewind
8709         * src/eval.c (unbind_to): Redo so that the FALLTHROUGH!! comment
8710         becomes accurate again. This shouldn’t affect behavior.
8711         (backtrace_eval_unrewind): Apply the recent unbind_to fix here, too.
8713 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
8715         Don't produce non-ASCII characters in *scratch*
8717         * lisp/startup.el (initial-scratch-message): Quote apostrophes to
8718         avoid producing non-ASCII characters in the *scratch* buffer's
8719         commentary.
8721 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
8723         Document changes in 'compare-windows'
8725         * lisp/vc/compare-w.el (compare-windows-removed)
8726         (compare-windows-added): Doc fix.
8728         * doc/emacs/files.texi (Comparing Files): Document the changes in
8729         window selection by 'compare-windows'.
8731 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
8733         Document 'vc-annotate-background-mode'
8735         * doc/emacs/maintaining.texi (Old Revisions): Document
8736         'vc-annotate-background-mode'.
8738 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
8740         Document 'vc-region-history'
8742         * doc/emacs/maintaining.texi (VC Change Log): Document
8743         'vc-region-history'.
8745 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
8747         Improve documentation of 'vc-push'
8749         * doc/emacs/maintaining.texi (Pulling / Pushing): Expand and
8750         improve the documentation of 'vc-push'.
8752         * lisp/vc/vc.el (vc-pull, vc-push): Doc fix.
8754 2015-12-26  Alain Schneble  <a.s@realize.ch>
8756         Include the tests for the URL parsing fixes
8758 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
8760         Document 'url-user-agent'.
8762         * lisp/url/url-http.el (url-user-agent): Move from here...
8763         * lisp/url/url-vars.el (url-user-agent): ...to here.  This is to
8764         keep all the URL defcustoms in one place, and also have it defined
8765         whenever the URL library is loaded.
8767         * doc/misc/url.texi (Customization): Document 'url-user-agent'.
8769 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
8771         Document protocols supported by URL library via Tramp
8773         * doc/misc/url.texi (Tramp): New node, describes the URL schemes
8774         supported via Tramp.
8775         (Supported URL Types, file/ftp, rlogin/telnet/tn3270): Mention
8776         Tramp.
8778 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
8780         Document changes in Shell-script mode
8782         * lisp/progmodes/sh-script.el (sh-mode, sh-set-shell): Document
8783         the 'sh-shell' file-local variable.
8784         (top level): Add an auto-load form to avoid byte-compiler warning
8785         about 'comint-send-string'.
8787 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
8789         Fix documentation of 'ses-define-local-printer'
8791         * doc/misc/ses.texi (Printer functions): Fix whitespace between
8792         sentences and punctuation.  Add an index entry for
8793         'ses-define-local-printer'.
8795 2015-12-26  Shakthi Kannan  <shakthimaan@gmail.com>
8797         Document 'ert-summarize-tests-batch-and-exit'
8799         * doc/misc/ert.texi (Running Tests in Batch Mode): Document
8800         'ert-summarize-tests-batch-and-exit'.
8802 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
8804         Avoid assertion violation in unbind_to
8806         * src/eval.c (unbind_to) <SPECPDL_LET>: Avoid assertion violation
8807         if we get here with an object that is not a symbol.  (Bug#14412)
8809 2015-12-25  Andreas Schwab  <schwab@linux-m68k.org>
8811         Don't treat /foo/bar:mumble as ange-ftp address
8812         * lisp/net/browse-url.el (browse-url-filename-alist): Match colons
8813         only in the first component.  (bug#5362)
8815 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
8817         Make sure *scratch* etc. use forward slashes in its default-directory
8819         * lisp/startup.el (normal-top-level): On MS-Windows, convert
8820         backslashes to forward slashes while decoding default-directory
8821         of the initially-created buffers.
8823 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
8825         Restore info about the build host in bug reports
8827         * lisp/mail/emacsbug.el (report-emacs-bug): Report the system on
8828         which Emacs was built.  This is important information for
8829         investigating bug reports reported by users who don't build their
8830         Emacs.
8832 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
8834         Fix bootstrap broken by changes related to OS X file-name encoding
8836         * lisp/international/ucs-normalize.el (eval-when-compile): Make
8837         sure char-code-property-alist includes elements that allow access
8838         to 'decomposition' and 'canonical-combining-class' Unicode
8839         properties, as compiling ucs-normalize.el requires that.
8840         * lisp/loadup.el (featurep 'ns): Load ucs-normalize and ns-win
8841         only of charprop.el was already loaded.
8843         * src/Makefile.in ($(lispsource)/international/ucs-normalize.elc):
8844         New order-only dependency.
8846 2015-12-25  Leo Liu  <sdl.web@gmail.com>
8848         * lisp/ido.el (ido-add-virtual-buffers-to-list):
8849         Use bookmark-get-filename.
8851 2015-12-25  Michael Albinus  <michael.albinus@gmx.de>
8853         Make tramp-test29-vc-registered more robust
8855         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
8856         Move `bzr' case down.  Skip test when `vc-create-repo' fails.
8857         Remove instrumentation.
8859 2015-12-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
8861         * lisp/term/x-win.el (x-gtk-stock-map): Fix typo.
8863 2015-12-23  Katsumi Yamaoka  <yamaoka@jpl.org>
8865         Fix `gnus-union' so as to behave like `cl-union'
8867         * lisp/gnus/gnus-group.el (gnus-group-prepare-flat):
8868         Make gnus-union use `equal' to compare items in lists.
8870         * lisp/gnus/gnus-util.el (gnus-union):
8871         Make it behave like cl-union partially.
8873 2015-12-23  Paul Eggert  <eggert@cs.ucla.edu>
8875         Fix dired.c typo with ptrdiff_t vs Lisp_Object
8877         * src/dired.c (file_name_completion): Don't assume Lisp_Object is
8878         an integer type, fixing a problem introduced in the recent fix for
8879         Bug#22169.
8881 2015-12-23  Eli Zaretskii  <eliz@gnu.org>
8883         Document default process sentinel more prominently
8885         * doc/lispref/processes.texi (Asynchronous Processes): Mention the
8886         defaults for process filter and sentinel.  Provide cross-references.
8887         (Process Information): Provide cross-references to where filters
8888         and sentinels are described.
8889         (Filter Functions): Add an index entry for "default filter".
8890         (Sentinels): Add a few status messages not documented previously.
8891         Resolve the "killed" confusion.  Document and describe the default
8892         sentinel.  (Bug#22220)
8894 2015-12-23  Eli Zaretskii  <eliz@gnu.org>
8896         Fix file-name completion on OS X
8898         * src/dired.c (file_name_completion): Reject false matches due to
8899         file-name-coding-systems that decompose characters when encoding
8900         file names, by comparing decoded file names as well.  (Bug#22169)
8901         (syms_of_dired) <Qdecomposed_characters>: New DEFSYM.
8903         * lisp/international/ucs-normalize.el (utf-8-hfs): Give it a
8904         non-nil 'decomposed-characters' property.
8906 2015-12-23  Anders Lindgren  <andlind@gmail.com>
8908         File-name completion of non-ASCII characters on OS X (bug#22169)
8910         The coding system `utf-8-nfd', locally defined in ns-win.el,
8911         didn't provide a :pre-write-conversion method, causing file name
8912         completion of non-ASCII characters to fail.  Solved by using the
8913         `utf-8-hfs' coding system provided by `ucs-normalize'.
8915         * lisp/loadup.el: Load international/ucs-normalize (when building
8916         for ns).
8918         * lisp/term/ns-win.el (utf-8-nfd): Made `utf-8-nfd' as alias for
8919         `utf-8-hfs' and removed the old implementation.  Set `utf-8-hfs'
8920         as the file name coding system.
8922         * src/nsfns.m (ns-convert-utf8-nfd-to-nfc): Removed.
8924 2015-12-22  Tom Tromey  <tom@tromey.com>
8926         Fix bug #18588 by making bug-reference-bug-regexp more lenient
8928         * lisp/progmodes/bug-reference.el (bug-reference-bug-regexp): Accept
8929         "bug NNNN".  (Bug #18588)
8931 2015-12-22  Tom Tromey  <tom@tromey.com>
8933         add some cl-* aliases to lisp-mode imenu
8935         * (lisp-imenu-generic-expression): Add cl-define-compiler-macro,
8936         cl-defgeneric, and cl-defmethod.
8938 2015-12-22  Tom Tromey  <tom@tromey.com>
8940         Make a variable buffer-local
8942         * lisp/generic-x.el (generic-rul-mode-setup-function): Make
8943         font-lock-syntax-table buffer-local.  (Bug #21627)
8945 2015-12-22  Eli Zaretskii  <eliz@gnu.org>
8947         Fix decoding of text in URLs retrieved by EWW
8949         * lisp/net/eww.el (eww-render): Pass 'charset' to
8950         'eww-display-raw'.  Use the value of 'last-coding-system-used', if
8951         non-nil, to set 'buffer-file-coding-system' of the buffer where we
8952         show the URL.
8953         (eww-display-html, eww-display-raw): Decode the text correctly,
8954         using the charset found in the headers, and defaulting to UTF-8.
8955         If the user told us to use a specific encoding, override the
8956         charset from the headers.  (Bug#22222)
8958 2015-12-22  Alan Mackenzie  <acm@muc.de>
8960         Fix a coding error in c-forward-<>-arglist-recur.  Fixes bug#22156
8962         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): Remove unused
8963         variable `tmp'.
8964         After a failed search for a matching ">", restore point before continuing.
8966 2015-12-22  Michael Albinus  <michael.albinus@gmx.de>
8968         Instrument Tramp tests
8970         * test/automated/tramp-tests.el (tramp-test29-vc-registered)
8971         (tramp--test-utf8): Instrument tests.
8973 2015-12-22  Martin Rudalics  <rudalics@gmx.at>
8975         Fix `display-buffer' call in `display-message-or-buffer' (Bug#22221)
8977         * lisp/simple.el (display-message-or-buffer): Call
8978         `display-buffer' with ACTION instead of NOT-THIS-WINDOW
8979         (Bug#22221).
8981 2015-12-21  Juri Linkov  <juri@linkov.net>
8983         * lisp/saveplace.el (toggle-save-place, save-place-to-alist)
8985         (save-places-to-alist, save-place-dired-hook):
8986         Check for dired-subdir-alist.  (Bug#19851)
8988 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
8990         Add FIXME comment re stack overflow and modules
8992 2015-12-20  Paul Eggert  <eggert@cs.ucla.edu>
8994         Revert some recent emacs-module commentary
8996         Most of the recently-added commentary was incorrect, due to the
8997         possibility of stack overflow.
8999 2015-12-20  Paul Eggert  <eggert@cs.ucla.edu>
9001         Spelling fix: prefer "cooperate" to "co-operate"
9003 2015-12-20  Paul Eggert  <eggert@cs.ucla.edu>
9005         Port undo fixes to -fno-common
9007         Port recent fix for Bug#21968 to platforms like 'gcc -fno-common'.
9008         * src/keyboard.c, src/keyboard.h (point_before_last_command_or_undo)
9009         (buffer_before_last_command_or_undo):
9010         Declare in keyboard.h, and define in keyboard.c,
9011         instead of assuming the traditional Unix relaxed ref-def linkage.
9013 2015-12-20  Philipp Stephani  <phst@google.com>
9015         Improve commentary for emacs-module.c
9017         * src/lisp.h: Document emacs-module.c assumptions about EQ and NILP.
9018         * src/emacs-module.c (module_non_local_exit_get): Document that we
9019         cannot use the current implementation.
9020         (module_is_not_nil, module_eq): Document assumptions about EQ and
9021         NILP.
9023 2015-12-20  Michael Albinus  <michael.albinus@gmx.de>
9025         Suppress test on Mac OS X
9027         * test/automated/tramp-tests.el (tramp--test-darwin-p): New defun.
9028         (tramp--test-utf8): Use it.
9030 2015-12-20  Alan Mackenzie  <acm@muc.de>
9032         Merge branch 'scratch/follow' into emacs-25
9034         This allows Isearch, etc., to work well when Follow Mode is active.
9036 2015-12-19  Michael Albinus  <michael.albinus@gmx.de>
9038         * lisp/net/tramp-sh.el (tramp-get-ls-command-with-w-option):
9039         Improve check.
9041 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
9043         Fix last commit
9045         * doc/emacs/rmail.texi (Rmail Deletion): Document new behavior of 'u'
9046         with numeric argument.
9048 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
9050         Document new features of Rmail
9052         * doc/emacs/rmail.texi (Rmail Summary Edit, Rmail Deletion):
9053         Document new behavior of 'd' and 'C-d' with numeric argument.
9054         (Rmail Display): Document the rendering of HTML MIME parts.
9056 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
9058         Improve documentation of new cl-lib functions
9060         * doc/misc/cl.texi (Predicates on Numbers, Numerical Functions):
9061         Fix wording.
9063 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
9065         Document the new feature of 'minibuffer-with-setup-hook'
9067         * lisp/files.el (minibuffer-with-setup-hook): Clarify how FUN is
9068         added to `minibuffer-setup-hook'.
9070 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
9072         Document new features of Font Lock
9074         * doc/lispref/modes.texi (Other Font Lock Variables): Document
9075         'font-lock-flush-function' and 'font-lock-ensure-function'.
9076         (Font Lock Basics): Document the basic fontification functions
9077         referenced in "Other Font Lock Variables".
9079         * lisp/font-lock.el (font-lock-flush, font-lock-ensure): Doc fix.
9081 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
9083         Document new features of Rectangle mode
9085         * doc/emacs/killing.texi (Rectangles): Document "C-x C-x" in
9086         rectangle-mark-mode.
9088 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
9090         Manual followup to last change
9092         * doc/lispref/display.texi (Displaying Messages): Sync with the
9093         doc string.  (Bug#22210)
9095 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
9097         Clarify doc string of 'display-message-or-buffer'
9099         * lisp/simple.el (display-message-or-buffer): Doc fix.  Suggested
9100         by Sebastian Wiesner <swiesner@lunaryorn.com>.  (Bug#22210)
9102 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
9104         * doc/emacs/emacs.texi (Top): Update top-level menus.
9106         * doc/lispref/elisp.texi (Top): Update top-level menus.
9108 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
9110         Document how to avoid file-local variables that aren't
9112         * doc/emacs/custom.texi (Specifying File Variables): Describe how
9113         to prevent Emacs from interpreting unrelated text as file-local
9114         variables.  (Bug#22166)
9116 2015-12-19  Dave Thomas  <dave@pragprog.org>  (tiny change)
9118         Fix a typo in eterm-color's termcap entry
9120         * lisp/term.el (term-termcap-format): Fix a typo in the "ue="
9121         entry.  (Bug#22184)
9123 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
9125         Allow 'browse-url-emacs' visit non-existent URLs
9127         * lisp/url/url-handlers.el (url-insert-file-contents): Don't
9128         signal an error if VISIT is non-nil, to more faithfully emulate
9129         the behavior of 'insert-file-contents'.  (Bug#22160)
9131 2015-12-18  Paul Eggert  <eggert@cs.ucla.edu>
9133         Remove SunOS 4.x cruft
9135         Support for SunOS 4.x was removed in Emacs 23 but some cruft was left behind.
9136         * lib-src/pop.c [sun]: Remove no-longer-needed include.
9137         * lwlib/xlwmenu.c (SUNSO41): Remove.
9139 2015-12-18  Paul Eggert  <eggert@cs.ucla.edu>
9141         Merge from gnulib
9143         This mostly commentary fixes.
9144         * doc/misc/texinfo.tex, lib/intprops.h: Copy from gnulib.
9145         * lib/gnulib.mk: Regenerate with new gnulib-tool.
9147 2015-12-18  Michael Albinus  <michael.albinus@gmx.de>
9149         Minor fixes in Tramp
9151         * lisp/net/tramp-sh.el (tramp-do-file-attributes-with-ls):
9152         Reorder ls arguments.
9154         * lisp/net/tramp.el (tramp-dissect-file-name): Fix docstring.
9156 2015-12-18  Michael Albinus  <michael.albinus@gmx.de>
9158         Make tramp a built-in package
9160         * lisp/finder.el (finder-compile-keywords): Update
9161         `package--builtins' also when Version: keyword is available.
9163         * lisp/net/trampver.el: Add Version: keyword.
9164         (tramp-version): Change it to "2.2.13.25.1", in order to be
9165         compatible with `version-to-list'.
9167 2015-12-18  Lele Gaifax  <lele@metapensiero.it>
9169         * etc/tutorials/TUTORIAL.it: Update and fix typos.  (Bug#22187)
9171 2015-12-18  Alan Mackenzie  <acm@muc.de>
9173         Rename `recenter-group' to `recenter-window-group'
9175         * doc/lispref/windows.texi (Textual Scrolling)
9176         * lisp/window.el (top level, recenter-group)
9177         * lisp/follow.el (follow-mode)
9178         * lisp/isearch.el (isearch-back-into-window): Rename `recenter-group' to
9179         `recenter-window-group' and `recenter-group-function' to
9180         `recenter-window-group-function'.
9182 2015-12-18  Eli Zaretskii  <eliz@gnu.org>
9184         Fix vertical-motion in tabulated-list mode
9186         * src/indent.c (Fvertical_motion): When moving from line beginning
9187         to point under line truncation, assume overshoot by one line only
9188         if point actually lies beyond the window's right margin.
9189         (Bug#22194)
9191 2015-12-18  Martin Rudalics  <rudalics@gmx.at>
9193         Don't have help functions call x-display-pixel-width/-height on ttys
9195         * lisp/help.el (temp-buffer-max-height, temp-buffer-max-width):
9196         Don't call x-display-pixel-width/-height on ttys.
9198 2015-12-17  Dmitry Gutov  <dgutov@yandex.ru>
9200         Use 'hg id' in vc-hg-previous-revision
9202         * lisp/vc/vc-hg.el (vc-hg-previous-revision):
9203         Use 'hg id' to retrieve it (bug#22032).
9205 2015-12-17  Alan Mackenzie  <acm@muc.de>
9207         * lisp/follow.el (follow-sit-for): Remove (it's redundant).
9209 2015-12-17  Eli Zaretskii  <eliz@gnu.org>
9211         Fix a typo in the Emacs manual
9213         * doc/emacs/trouble.texi (Sending Patches): Fix a typo.  Reported
9214         by Lele Gaifax <lele@metapensiero.it>.  (Bug#22193)
9216 2015-12-17  Eli Zaretskii  <eliz@gnu.org>
9218         Fix parsing netrc entries with ports
9220         * lisp/gnus/auth-source.el (auth-source-ensure-strings): Don't
9221         make a list out of 't'.  (Bug#22188)
9223         * test/automated/auth-source-tests.el
9224         (auth-source-test-netrc-parse-entry): New test.
9226 2015-12-17  Paul Eggert  <eggert@cs.ucla.edu>
9228         Fix typo in Doug Lea malloc configure log
9230         * configure.ac (emacs_cv_var_doug_lea_malloc):
9231         Fix typo that confused the log output of 'configure'.
9233 2015-12-16  Nicolas Petton  <nicolas@petton.fr>
9235         * etc/NEWS: Mention the new pcase patterns `seq' and `map'.
9237 2015-12-16  Alan Mackenzie  <acm@muc.de>
9239         * etc/NEWS: Move entry on pcase to correct section
9241         (Accidentally omitted from previous commit)
9243 2015-12-16  Alan Mackenzie  <acm@muc.de>
9245         Add documentation for changes to Show Paren mode.
9247         * lisp/paren.el (show-paren-highlight-openparen): Enhance doc string.
9249         * doc/emacs/programs.texi (Matching): Add descriptions of some pertinent user
9250         options, including the new show-paren-when-point-inside-paren and
9251         show-paren-when-point-in-periphery.
9253         * etc/NEWS (.. Specialized Modes ...): Add an entry for Show Paren mode.
9254         Move an entry on pcase to the Lisp Changes section.
9256 2015-12-16  Eli Zaretskii  <eliz@gnu.org>
9258         Document Eldoc changes
9260         * doc/emacs/programs.texi (Lisp Doc): Document Global Eldoc mode.
9262 2015-12-16  Eli Zaretskii  <eliz@gnu.org>
9264         Fix invocation of Python and Guile interpreters from gdb-mi
9266         * lisp/progmodes/gdb-mi.el (gdb-control-commands-regexp): Add
9267         commands for interactive Python and Guile interpreters.
9268         (gdb-send): Recognize various ways of exiting from Python and
9269         Guile interpreters and returning to GDB.  For details, see
9270         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00693.html
9271         and http://stackoverflow.com/questions/31514741.
9273 2015-12-16  Paul Eggert  <eggert@cs.ucla.edu>
9275         Remove attempt to use C11 threads
9277         C11 threads are not needed for Emacs now, and their use is causing
9278         hassles on FreeBSD 10.x.  Problem reported by Ashish SHUKLA in:
9279         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00648.html
9280         * configure.ac: Do not check for C11 threads. Remove unnecessary
9281         fiddling with CPPFLAGS when configuring pthreads.
9282         * src/emacs-module.c (main_thread, check_main_thread)
9283         (module_init): Do not worry about C11 threads.
9285 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
9287         Set utf8 encoding with stty in Tramp
9289         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
9290         Move up uname check.  Handle Mac OS X eol encoding.  Set utf8
9291         encoding with stty.
9293 2015-12-15  Alan Mackenzie  <acm@muc.de>
9295         Tidy up documentation associated with window groups.
9297         * doc/lispref/windows.texi (Basic Windows): Add an @anchor for "Window
9298         Groups".  Correct example function to `window-group-start'.
9299         (Window Start and End, Textual scrolling): Point to the new anchor.  State
9300         that (most of) the args in window group functions have the same meaning as for
9301         the corresponding window primitives.
9303         * doc/lispref/positions.texi (Screen Lines).  Same as above.
9305 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
9307         Complete last commit
9309         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
9310         Move uname check up.  Handle Mac OS X eol encoding.
9312 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
9314         Handle Mac OS X eol encoding in Tramp
9316         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
9317         Handle Mac OS X eol encoding.
9319 2015-12-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9321         Fix variable name typo in compute_tip_xy
9323         * src/w32fns.c (compute_tip_xy):
9324         * src/xfns.c (compute_tip_xy): Modify *root_x instead of *root_y
9325         when `right' is integer.
9327 2015-12-14  foudfou  <foudil.newbie+git@gmail.com>  (tiny change)
9329         * lisp/ibuffer.el: Add ability to (un-)mark or delete buffers in the region.
9331 2015-12-14  Tassilo Horn  <tsdh@gnu.org>
9333         Revert "Fix rx matcher overflow without limiting"
9335         This reverts commit fe27e037663d36be3e5741c2ce86ab4ee8017db1.
9337 2015-12-14  Alan Mackenzie  <acm@muc.de>
9339         Ispell: Bind isearch-regexp-function to nil around call to isearch..-new-loop
9341         * lisp/textmodes/ispell.el (ispell-highlight-spelling-error-overlay): bind
9342         isearch-regexp-function to nil around call to isearch-lazy-highligh-new-loop.
9344 2015-12-14  Tassilo Horn  <tsdh@gnu.org>
9346         Fix rx matcher overflow without limiting
9348         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Improve last
9349         change to the regexp without imposing a limit on the length of the
9350         options.
9352 2015-12-14  Alan Mackenzie  <acm@muc.de>
9354         Enhance ispell-skip-region-alist by generating part of it at runtime.
9356         * lisp/textmodes/ispell.el (ispell--\\w-filter, ispell--make-\\w-expression)
9357         (ispell--make-filename-or-URL-re): New functions which generate a regexp.
9358         (ispell-skip-region-alist): Remove the bit that matches a filename/URL, etc.
9359         (ispell-begin-skip-region-regexp, ispell-skip-region-list, ispell-message):
9360         Include the result of ispell--make-filename-or-URL-re in regexps.
9362 2015-12-14  Glenn Morris  <rgm@gnu.org>
9364         * build-aux/gitlog-to-emacslog: Ignore more pointless merge commits.
9366 2015-12-14  Alan Mackenzie  <acm@muc.de>
9368         Replace GROUP argument in six window primitives by new functions.
9370         * doc/lispref/windows.texi (Window Start and End, Textual Scrolling)
9371         * doc/lispref/positions.texi (Screen Lines): Remove optional GROUP argument
9372         from description of six window functions.  Add in description of new functions
9373         window-group-start, window-group-end, set-window-group-start,
9374         pos-visible-in-window-group-p, recenter-group and move-to-window-group-line,
9375         together with the six variables indirecting to the pertinent group
9376         functions.
9378         * src/window.c
9379         * src/keyboard.c: Revert the commit from 2015-11-11 12:02:48, in so far as it
9380         applies to these two files, which added the GROUP argument to six window
9381         primitives.
9383         * lisp/follow.el (follow-mode): Use updated variable names for the indirected
9384         functions.
9386         * lisp/isearch.el (isearch-update, isearch-done, isearch-string-out-of-window)
9387         (isearch-back-into-window, isearch-lazy-highlight-new-loop)
9388         (isearch-lazy-highlight-search, isearch-lazy-highlight-update): Replace calls
9389         to window primitives (e.g. window-start) with a GROUP argument by calls to
9390         new functions (e.g. window-group-start).
9392         * lisp/ispell.el (ispell-command-loop): Replace call to
9393         pos-visible-in-window-p with pos-visible-in-window-group-p.
9395         * lisp/window.el (window-group-start, window-group-end)
9396         (set-window-group-start, recenter-group, pos-visible-in-window-group-p)
9397         (selected-window-group, move-to-window-group-line): New functions.
9398         (window-group-start-function, window-group-end-function)
9399         (set-window-group-start-function, recenter-group-function)
9400         (pos-visible-in-window-group-p-function, selected-window-group-function)
9401         (move-to-window-group-line-function): New variables.
9403 2015-12-14  Vitorio Miguel  <vdrbandeiras@gmail.com>  (tiny change)
9405         * etc/tutorials/TUTORIAL.pt_BR: Fix a typo.  (Bug#22165)
9407 2015-12-13  Eli Zaretskii  <eliz@gnu.org>
9409         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
9411 2015-12-13  Tassilo Horn  <tsdh@gnu.org>
9413         Improve regex to not trigger stack overflow
9415         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Improve regex in
9416         order not to trigger a stack overflow in regex matcher with unbalanced
9417         brackets (bug#22146).
9419 2015-12-13  Eli Zaretskii  <eliz@gnu.org>
9421         Fix visiting files with raw-text
9423         * src/fileio.c (Finsert_file_contents): Fix setting buffer unibyte
9424         when some stuff was actually read.  (Bug#22162)
9426 2015-12-13  Tassilo Horn  <tsdh@gnu.org>
9428         Fix regex matching keyval labels
9430         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Fix regexp
9431         matching keyval labels.
9433 2015-12-13  Michael Albinus  <michael.albinus@gmx.de>
9435         * lisp/ido.el (ido-file-name-all-completions-1): Do not raise an error
9437         ... in case of Tramp.  (Bug#20821)
9439 2015-12-12  Paul Eggert  <eggert@cs.ucla.edu>
9441         Fix performance regression with gcc -O0
9443         This fixes the smaller performance hit that I noted in:
9444         https://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00357.html
9445         * src/alloc.c (macro_XPNTR_OR_SYMBOL_OFFSET, macro_XPNTR):
9446         * src/puresize.h (puresize_h_PURE_P)
9447         (puresize_h_CHECK_IMPURE):
9448         New macros, with the old contents of the functions.
9449         * src/alloc.c (XPNTR_OR_SYMBOL_OFFSET, XPNTR):
9450         * src/puresize.h (PURE_P, CHECK_IMPURE):
9451         Use the new macros.  Also macros, if DEFINE_KEY_OPS_AS_MACROS.
9452         * src/conf_post.h (ATTRIBUTE_UNUSED):
9453         * src/lisp.h (DEFINE_KEY_OPS_AS_MACROS): New macros.
9455 2015-12-12  Artur Malabarba  <bruce.connor.am@gmail.com>
9457         * lisp/emacs-lisp/package.el (package-unpack): Security check
9459         Check that we received the package we were offered.
9461 2015-12-12  Artur Malabarba  <bruce.connor.am@gmail.com>
9463         * lisp/emacs-lisp/package.el (package--compile): Don't activate
9465         `package-unpack' takes care of all activations now (other than
9466         `package-initialize).  `package--compile' now only compiles.
9468 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
9470         Document the new bindings of <UP> and <DOWN> in the minibuffer
9472         * doc/emacs/mini.texi (Minibuffer History): Describe the new
9473         bindings of <UP> and <DOWN> in the minibuffer.
9475 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
9477         Document new features of Ido
9479         * doc/misc/ido.texi (Misc): Document 'C-S-b'.
9481 2015-12-12  Martin Rudalics  <rudalics@gmx.at>
9483         Fix frame height calculations with added menu bar on Windows (Bug#22105)
9485         * doc/lispref/frames.texi (Parameter Access): Mention pitfalls
9486         when simultaneously specifying multiple parameters for
9487         `modify-frame-parameters' that all may change the frame's size.
9488         * src/w32fns.c (x_set_menu_bar_lines): Don't set
9489         windows_or_buffers_changed here.
9490         (my_create_tip_window, Fx_show_tip): Call AdjustWindowRect
9491         with third argument false.
9492         * src/w32menu.c (set_frame_menubar): Set
9493         windows_or_buffers_changed here.
9494         * src/w32term.c (x_set_window_size): Determine third argument of
9495         AdjustWindowRect from whether the frame has a menu bar and not
9496         from whether it wants one.
9498 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
9500         Document the change in interactive shell mode
9502         * doc/emacs/misc.texi (Interactive Shell): Document that the
9503         '*shell*' buffer by default displays in a new window.
9505 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
9507         Document new features of package.el
9509         * doc/emacs/package.texi (Package Menu): Document the 'external'
9510         status and the new menu commands.
9511         (Package Installation): Document archive priorities.
9513         * lisp/emacs-lisp/package.el (package-archive-priorities): Doc fix.
9514         (package-menu-hide-low-priority): Doc fix.
9516 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
9518         Update and document new features of xterm support
9520         * doc/emacs/frames.texi (Text-Only Mouse): Document that
9521         track-mouse is supported by newer xterm versions.
9523 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
9525         Document new features of Prettify Mode
9527         * doc/emacs/programs.texi (Misc for Programs): Document
9528         'prettify-symbols-compose-predicate' and
9529         'prettify-symbols-unprettify-at-point'.
9531         * lisp/progmodes/prog-mode.el (prettify-symbols-alist)
9532         (prettify-symbols-default-compose-p)
9533         (prettify-symbols-compose-predicate)
9534         (prettify-symbols--compose-symbol): Doc fixes.
9536 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
9538         Document multi-mode indentation facilities
9540         * doc/lispref/text.texi (Mode-Specific Indent): Document
9541         'prog-indentation-context', 'prog-first-column', and 'prog-widen'.
9543         * lisp/progmodes/prog-mode.el (prog-indentation-context)
9544         (prog-widen): Doc fixes.
9546 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
9548         Document 'vc-refresh-state'
9550         * doc/emacs/maintaining.texi (Version Control): Document
9551         'vc-refresh-state'.
9553         * lisp/vc/vc-hooks.el (vc-refresh-state): Doc fix.
9555 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
9557         Fix echo for "C-u"
9559         * src/keyboard.c (command_loop_1): Undo last change.  It caused
9560         duplicate echo of C-u.  (Bug#22107)
9562 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
9564         Avoid errors when creating files under SVN in new directory
9566         * lisp/vc/vc-svn.el (vc-svn-registered): Use
9567         file-accessible-directory-p, to avoid cd'ing to a non-existing
9568         directory, which signals an error on some systems.  (Bug#21984)
9569         (vc-svn-checkin): Call log-edit-extract-headers with 2 arguments.
9570         Use declare-function to avoid byte-compiler warnings.
9572 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
9574         Improve Lua support in etags
9576         * lib-src/etags.c (Lua_functions): Skip spaces before looking for
9577         "function".
9579         * etc/NEWS: Mention improved Lua support by 'etags'.
9581         * test/etags/lua-src/test.lua (test): Add tests for indented
9582         function definitions.
9583         * test/etags/ETAGS.good_1:
9584         * test/etags/ETAGS.good_2:
9585         * test/etags/ETAGS.good_3:
9586         * test/etags/ETAGS.good_4:
9587         * test/etags/ETAGS.good_5:
9588         * test/etags/ETAGS.good_6:
9589         * test/etags/CTAGS.good: Adapt to the modified Lua tests.
9591 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
9593         Fix 'this-command-keys' wrt prefix argument
9595         * src/keyboard.c (command_loop_1): Restore the feature whereby C-u
9596         was part of this-command-keys, but not of this-single-command-keys.
9597         (Bug#22107)
9599         * lisp/simple.el (internal-echo-keystrokes-prefix): Add
9600         commentary about the function's return value.
9602 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
9604         * lisp/files.el (load-library): Doc fix.  (Bug#22140)
9606 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
9608         Improve and document Ruby support in 'etags'
9610         * lib-src/etags.c (Ruby_suffixes): Add ".ruby".
9611         (Ruby_functions): Support "module" and overloaded operators.
9612         (Ruby_help): Mention "module".
9614         * test/etags/ruby-src/test.rb:
9615         * test/etags/ruby-src/test1.ruby: New files.
9616         * test/etags/Makefile (RBSRC): New tests.
9617         (SRCS): Add ${RBSRC}.
9618         * test/etags/ETAGS.good_1:
9619         * test/etags/ETAGS.good_2:
9620         * test/etags/ETAGS.good_3:
9621         * test/etags/ETAGS.good_4:
9622         * test/etags/ETAGS.good_5:
9623         * test/etags/ETAGS.good_6:
9624         * test/etags/CTAGS.good: Adapt to the new Ruby tests.
9626         * doc/man/etags.1: Mention Ruby support.
9627         * etc/NEWS: Mention Ruby support.
9629 2015-12-11  Xi Lu  <lx@shellcodes.org>
9631         Initial support for Ruby in 'etags'
9633         * lib-src/etags.c <Ruby_suffixes>: New variable.
9634         (lang_names): Add an entry for Ruby.
9635         (Ruby_functions): New function.  (Bug#22116)
9637 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
9639         Clarify documentation of 'modify-frame-parameters'
9641         * doc/lispref/frames.texi (Parameter Access): Clarify what "ignored
9642         PARMs" mean for 'modify-frame-parameters'.
9644         * src/frame.c (Fmodify_frame_parameters): Clarify what "ignored
9645         PARMs" mean for this function.  (Bug#22104)
9647 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
9649         Fix setting buffer unibyte when reading from a device
9651         * src/fileio.c (Finsert_file_contents): Call Fset_buffer_multibyte
9652         to make a (possibly non-empty) buffer unibyte.  (Bug#22096)
9654 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
9656         Clarify documentation of 'values'
9658         * doc/lispref/eval.texi (Eval): Clarify that 'values' are not
9659         updated by any evaluation commands in 'lisp-interaction-mode'.
9660         (Bug#22056)
9662 2015-12-11  Anders Lindgren  <andlind@gmail.com>
9664         Fixed subversion vc error when opening file in new directory (bug#21984).
9666         * lisp/vc/vc-svn.el (vc-svn-registered): Check if directory exists.
9668 2015-12-09  Eli Zaretskii  <eliz@gnu.org>
9670         Yet another fix for when point ends up in invisible text
9672         * src/xdisp.c (redisplay_window): When someone forced
9673         window-start, and honoring that failed to show the cursor, try
9674         moving out of invisible text, before falling back to the middle of
9675         the window.  (Bug#22098)
9677 2015-12-09  Michael Albinus  <michael.albinus@gmx.de>
9679         Fix error in Tramp perl script for cygwin
9681         * lisp/net/tramp-sh.el (tramp-perl-file-truename): Do not raise an
9682         error if file doesn't exist.
9684 2015-12-09  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9686         Remove font workaround for limited outdated versions
9688         * src/macfont.m (mac_font_descriptor_get_adjusted_weight): Remove
9689         workaround for HiraginoSans-W7 on OS X 10.11 and 10.11.1.
9691 2015-12-09  Anders Lindgren  <andlind@gmail.com>
9693         Don't add "." to load path (bug#21104)
9695         When configured with --enable-locallisppath=no, which is the
9696         default for OS X, the load-path incorrectly was populated with ".".
9698         * src/lread.c (init_lread): Don't call `decode_env_path' when
9699         PATH_SITELOADSEARCH is empty.
9701 2015-12-08  Artur Malabarba  <bruce.connor.am@gmail.com>
9703         * lisp/emacs-lisp/package.el (package--with-response-buffer):
9705         Search for the blank-line in the right buffer.
9707 2015-12-08  Glenn Morris  <rgm@gnu.org>
9709         * test/automated/simple-test.el (undo-auto-boundary-timer): Update
9710         for recent change.
9712 2015-12-08  Glenn Morris  <rgm@gnu.org>
9714         Fix some display-warning usage.
9716         * lisp/files.el (hack-local-variables, hack-dir-local-variables):
9717         * lisp/calendar/diary-lib.el (diary-include-files, diary-sexp-entry):
9718         * lisp/calendar/holidays.el (calendar-holiday-list):
9719         * lisp/mail/rmailout.el (rmail-output-read-file-name):
9720         Fix display-warning usage.
9722 2015-12-07  Glenn Morris  <rgm@gnu.org>
9724         * lisp/calendar/cal-html.el: Require diary-lib.
9726         (cal-html-list-diary-entries): Handle no diary.  (Bug#21994)
9728 2015-12-07  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
9730         Add Obsolete-since header to eudcb-ph.el
9732         * eudcb-ph.el: Add Obsolete-since header.
9734 2015-12-07  Paul Eggert  <eggert@cs.ucla.edu>
9736         Spelling fixes
9738         * doc/misc/calc.texi (Predefined Units): Use the bland modern
9739         scientific style for spelling the units “ampere” and
9740         “angstrom” rather than the older style “Ampere” and
9741         “Ångstrom”.  The latter spelling was wrong anyway (it should
9742         have been “Ångström”).
9743         * lisp/emacs-lisp/ert.el (ert--explain-equal-rec):
9744         Fix misspelling of ‘atom’ in code.
9746 2015-12-07  Eli Zaretskii  <eliz@gnu.org>
9748         Improve documentation of kill commands
9750         * lisp/simple.el (region-extract-function, delete-backward-char)
9751         (delete-forward-char, kill-region, copy-region-as-kill)
9752         (kill-ring-save): Better document the optional argument REGION in
9753         the doc strings.  Mention in the doc strings that text put in the
9754         kill-ring can be filtered by 'filter-buffer-substring'.
9756         * doc/lispref/text.texi (Kill Functions): Mention that functions
9757         described in this subsection can filter text they put in the
9758         kill-ring.  Add a cross-reference to "Buffer Contents" and an
9759         index entry.  Document the optional argument 'region' and its
9760         effect.
9761         (Bug#21315)
9763 2015-12-07  Alan Mackenzie  <acm@muc.de>
9765         Further progress making Isearch, Ispell, Replace work with Follow Mode.
9767         * lisp/follow.el: (follow-mode): Remove references to sit*-for-function, which
9768         no longer exists.  Add follow-post-command-hook to  three special purpose
9769         hooks at setup, and remove them at tear down.
9771         * lisp/isearch.el: (isearch-update): invoke isearch-update-post-hook before
9772         isearch-lazy-highlight-new-loop.
9773         (isearch-lazy-highlight-new-loop): Restore this function to what it previously
9774         was, merging the functionality of isearch-lazy-highlight-maybe-new-loop into
9775         it.
9776         (isearch-lazy-highlight-maybe-new-loop): function removed.
9778         * lisp/replace.el: (replace-update-post-hook): New hook variable.
9779         (perform-replace): Add second (nil) argument to looking-back.  Invoke
9780         replace-update-post-hook before calling replace-highlight.
9782         * lisp/textmodes/ispell.el: (ispell-update-post-hook): New hook variable.
9783         (ispell-command-loop): invoke ispell-update-post-hook.  Add GROUP argument to
9784         call of pos-visible-in-window-p.
9785         (ispell-display-buffer): Place *Choices* window at the top of the last window
9786         in a window group.
9788 2015-12-07  Alan Mackenzie  <acm@muc.de>
9790         Amend doc of `mapconcat': it can take sequences, not merely strings.
9792         * doc/lispref/functions.texi (Mapping Functions): Amend the doc of `mapconcat'
9793         to say that SEPARATOR and the results from FUNCTION may be any character
9794         sequences, not just strings.  Add an @xref to "Sequences Arrays Vectors".
9796 2015-12-07  Michael Albinus  <michael.albinus@gmx.de>
9798         Fix an utf8 problem for Tramp on BSD
9800         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
9801         Make lax check for utf8.
9802         (tramp-get-remote-locale): Add "en_US.UTF-8" as candidate.
9804 2015-12-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
9806         Make eudcb-ph.el obsolete
9808         * doc/misc/eudc.texi: Bump version to 1.40.0.
9809         Remove PH/QI sections and mentions.
9810         * lisp/obsolete/eudcb-ph.el: Make obsolete.
9811         * lisp/net/eudc-vars.el (eudc-known-protocols): Remove ph.
9812         (eudc-ph-bbdb-conversion-alist): Make obsolete.
9813         * etc/NEWS: Mention this.  (Bug#21191)
9815 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
9817         Remove overenthusiastic eassert
9819         * src/lisp.h (XSYMBOL): Remove eassert incorrectly added in
9820         previous change.  It breaks on MS-Windows --with-wide-int.
9821         Problem reported by Eli Zaretskii in:
9822         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00275.html
9824 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
9826         Pacify gcc -Wparentheses
9828         * src/xdisp.c (row_containing_pos): Reparenthesize.
9830 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
9832         Port mod-test to 32-bit Emacs --without-wide-int
9834         * modules/mod-test/test.el (mod-test-sum-test):
9835         Bring back the 2**29 tests, but port them to 32-bit Emacs
9836         --without-wide-int.
9838 2015-12-06  Michael Albinus  <michael.albinus@gmx.de>
9840         Fix minor Tramp problems found on BSD
9842         * lisp/net/tramp-sh.el (tramp-perl-file-truename): Do not append
9843         trailing slash.  Quote apostrophes.
9844         (tramp-sh-handle-file-truename): Do not append trailing slash in
9845         the "ls" case.
9846         (tramp-get-ls-command-with-w-option): New defun.
9847         (tramp-do-file-attributes-with-ls)
9848         (tramp-do-directory-files-and-attributes-with-stat): Use it.
9850         * test/automated/tramp-tests.el
9851         (tramp-test31-special-characters-with-perl)
9852         (tramp-test31-special-characters-with-ls)
9853         (tramp-test32-utf8-with-perl, tramp-test32-utf8-with-ls):
9854         Suppress also readlink.
9856 2015-12-06  Eli Zaretskii  <eliz@gnu.org>
9858         Fix cursor display when invisible text is at line beginning
9860         * src/xdisp.c (redisplay_window): When scrolling fails to show
9861         point, prefer using the desired matrix if possible for finding the
9862         fallback glyph row for displaying the cursor.  (Bug#22098)
9863         (row_containing_pos): Exit the loop as soon as we hit the first
9864         disabled glyph row.  Otherwise we risk accessing garbled data and
9865         departing to the no-no land.
9867 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
9869         Improve module interface when WIDE_EMACS_INT
9871         * src/emacs-module.c (plain_values): New constant.
9872         (module_nil): Now a constant.
9873         (Finternal_module_call, value_to_lisp_bits, lisp_to_value_bits)
9874         (syms_of_module): Use if, not #ifdef, so that both sides are
9875         checked at compile-time, and so that GCC doesn’t complain
9876         about an unused var in the typical case.  Also, depend on
9877         plain_values, not on WIDE_EMACS_INT; the code shouldn’t assume
9878         that WIDE_EMACS_INT implies !USE_LSB_TAG.
9879         (value_to_lisp_bits, lisp_to_value_bits): New functions.
9880         Sign-extend integers rather than zero-extending them, as small
9881         negative integers are more likely.
9882         (value_to_lisp, lisp_to_value): Rewrite in terms of the new *_bits
9883         functions.
9884         (HAVE_STRUCT_ATTRIBUTE_ALIGNED): Define to 0 if not already defined.
9885         (mark_modules): Remove.  All uses removed.
9886         (lisp_to_value): Don’t assume Fcons returns a pointer aligned
9887         to GCALIGNMENT.
9888         (syms_of_module): Check that module_nil converts to Qnil.
9889         * src/lisp.h (lisp_h_XSYMBOL, XSYMBOL): Use signed conversion, since
9890         we prefer signed to unsigned when either will do.
9891         (TAG_PTR): Sign-extend pointers when USE_LSB_TAG, as this is
9892         a bit better for emacs-module.c.
9894 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
9896         Port mod-test to x86-64 GNU/Linux running 32-bit
9898         * modules/mod-test/test.el (mod-test-sum-test):
9899         Don’t attempt to match descriptions to operating systems.
9900         It didn’t work on Fedora x86-64 running a 32-bit executable,
9901         and it’s not worth the trouble anyway.
9902         Port to 32-bit platforms by removing an assumption about
9903         fixnum widths.
9905 2015-12-06  Michael Albinus  <michael.albinus@gmx.de>
9907         Fix auto-revert-tests.el when filenotify isn't used
9909         * test/automated/auto-revert-tests.el (auto-revert--wait-for-revert):
9910         Make it working also when filenotify isn't used.
9912 2015-12-05  Juri Linkov  <juri@linkov.net>
9914         * lisp/textmodes/ispell.el (ispell-highlight-spelling-error-overlay):
9916         Let-bind isearch-regexp-function to nil.  (Bug#22097)
9918 2015-12-05  Artur Malabarba  <bruce.connor.am@gmail.com>
9920         * lisp/emacs-lisp/package.el: Don't install bad signatures (bug#22089)
9922         (package--with-response-buffer): NOERROR and ERROR-FORM only
9923         handle connection errors.
9924         (bad-signature): New error type.
9925         (package--check-signature-content): Use it.
9926         (package--check-signature): Properly distinguish connection errors
9927         from bad-signature errors.  Do the check for
9928         `package-check-signature' `allow-unsigned' here instead of forcing
9929         the callbacks to do it.  Add a new argument, UNWIND.
9930         (package--download-one-archive, package-install-from-archive):
9931         Update usage of `package--check-signature'.
9933 2015-12-05  Ulf Jasper  <ulf.jasper@web.de>
9935         Fix Bug#22092.
9937         * lisp/calendar/icalendar.el (icalendar--get-unfolded-buffer):
9938           Clean up inconsistent line endings. (Bug#22092)
9939           (icalendar--clean-up-line-endings): New.
9940         * test/automated/icalendar-tests.el (icalendar-real-world): Add test
9941           for Bug#22092.
9943 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
9945         Document 'bookmark-set-no-overwrite'
9947         * doc/emacs/regs.texi (Bookmarks): Document the new command
9948         'bookmark-set-no-overwrite' and its keybinding.
9950 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
9952         Document new binding of 'mouse-buffer-menu'
9954         * doc/emacs/buffers.texi (Buffer Menus): 'mouse-buffer-menu' is
9955         now also on C-F10.
9957 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
9959         Initial documentation of dynamic modules
9961         * doc/lispref/loading.texi (Dynamic Modules): New section with
9962         initial documentation for dynamic modules.
9963         * doc/lispref/elisp.texi (Top): Add "Dynamic Modules" to the
9964         detailed menu
9966         * etc/NEWS: Fix typos in dynamic modules' entry.
9968 2015-12-05  Artur Malabarba  <bruce.connor.am@gmail.com>
9970         Remove copyright statements from trivial test files
9972 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
9974         Add "Preliminaries" section to etc/DEBUG
9976         * etc/DEBUG: Add the "Preliminaries" section for GDB beginners.
9977         Most of the content was suggested by Phillip Lord
9978         <phillip.lord@russet.org.uk>.  Remove the section about debugging
9979         with the Visual Studio, as building Emacs with the Microsoft
9980         compilers is no longer supported.  Minor fixes in some other
9981         sections.
9983 2015-12-05  Alex Dunn  <dunn.alex@gmail.com>  (tiny change)
9985         Improve parsing of version strings
9987         * lisp/subr.el (version-regexp-alist): Allow "." as priority separator
9988         (version-to-list): More helpful error messages.
9989         (version-to-list): ".5" is valid (update docstring).  Make
9990         "22.8X3" invalid, as the doc string says.
9992         * test/automated/subr-tests.el (ert-test-version-parsing): New
9993         tests for version string processing.
9995 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
9997         Fix documentation of 'undo' changes
9999         * doc/lispref/text.texi (Undo): Minor wording changes.  Use US
10000         English conventions for spelling and whitespace between sentences.
10002         * etc/NEWS: Fix wording and spelling of undo-related entries.
10003         Mark them as documented.
10005 2015-12-04  Glenn Morris  <rgm@gnu.org>
10007         * lisp/net/net-utils.el: Small improvements.
10009         (net-utils--executable-find-sbin): New function.
10010         (ifconfig-program): Check sbin directories.
10011         Fallback to "ip".  (Bug#22091)
10012         (ifconfig-program-options): Check the actual program in use.
10013         (arp-program): Check sbin directories.
10015 2015-12-04  Arash Esbati  <esbati@gmx.de>  (tiny change)
10017         Fix wrong-type-argument integer-or-marker-p nil error
10019         * lisp/textmodes/reftex-auc.el (reftex-what-index-tag):
10020         Fix (wrong-type-argument integer-or-marker-p nil) error (bug#22077).
10022 2015-12-04  Alan Mackenzie  <acm@muc.de>
10024         Merge branch 'scratch/follow' of /home/acm/emacs/emacs.git/emacs-25 into scratch/follow
10026         Merge necessitated by a rebase operation.
10028 2015-12-04  Alan Mackenzie  <acm@muc.de>
10030         lisp/isearch.el: Eliminate macro isearch-call-message, replacing with funcall.
10032 2015-12-04  Alan Mackenzie  <acm@muc.de>
10034         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
10036         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
10037         Windows" and new @defun selected-window-group.
10038         (Window Start and End): Describe new &optional parameter GROUP and
10039         ...-group-function for window-start, window-end, set-window-start, and
10040         pos-visible-in-window-p.
10041         (Textual Scrolling) Describe the same for recenter.
10042         doc/lispref/positions.texi (Screen Lines): Describe the same for
10043         move-to-window-line.
10045         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
10046         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
10047         new optional parameter "group".  At the beginning of each, check whether the
10048         corresponding ...-group-function is set to a function, and if so execute this
10049         function in place of the normal processing.
10050         (syms_of_window): Define symbols for the six new variables below.
10051         (window-start-group-function, window-end-group-function)
10052         (set-window-start-group-function, recenter-group-function)
10053         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
10054         New permanent local buffer local variables.
10055         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
10056         Fpos_visible_in_window_p.
10058         lisp/window.el (selected-window-group-function): New permanent local buffer
10059         local variable.
10060         (selected-window-group): New function.
10062         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
10063         enable, kill them at mode disable.  Add/remove follow-after-change to/from
10064         after-change-functions.
10065         (follow-start-end-invalid): New variable.
10066         (follow-redisplay): Manipulate follow-start-end-invalid.
10067         (follow-after-change, follow-window-start, follow-window-end)
10068         (follow-set-window-start, follow-pos-visible-in-window-p)
10069         (follow-move-to-window-line, follow-sit-for): New functions.
10071         lisp/isearch.el (isearch-call-message): New macro.
10072         (isearch-update, with-isearch-suspended, isearch-del-char)
10073         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
10074         (with-isearch-suspended): Rearrange code such that isearch-call-message is
10075         invoked before point is moved.
10076         (isearch-message): Add comment about where point must be at function call.
10077         (isearch-search): Remove call to isearch-message.
10078         (isearch-lazy-highlight-window-group): New variable.
10079         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
10080         the battery of tests to ...
10081         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
10082         Note: (sit-for 0) is still called.
10083         (isearch-lazy-highlight-update): Check membership of
10084         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
10085         property.
10086         (isearch-update, isearch-done, isearch-string-out-of-window)
10087         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
10088         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
10089         (isearch-lazy-highlight-update): Call the six amended primitives (see
10090         src/window.c above) with the new `group' argument set to t, to cooperate
10091         with Follow Mode.
10093 2015-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
10095         * lisp/emacs-lisp/ert.el: Prefer pcase over cl-typecase
10097         * lisp/emacs-lisp/ert.el (ert--should-error-handle-error)
10098         (ert--explain-format-atom, ert--explain-equal-rec)
10099         (ert--print-backtrace, ert-test-result-type-p, ert-select-tests)
10100         (ert--insert-human-readable-selector): Prefer pcase over cl-typecase.
10102 2015-12-04  Artur Malabarba  <bruce.connor.am@gmail.com>
10104         * lisp/character-fold.el: Remove special case-folding support
10106         (character-fold-to-regexp): Remove special code for
10107         case-folding.  Char-fold search still respects the
10108         `case-fold-search' variable (i.e., f matches F).  This only
10109         removes the code that was added to ensure that f also matched
10110         all chars that F matched.  For instance, after this commit, f
10111         no longer matches 𝔽.
10113         This was necessary because the logic created a regexp with
10114         2^(length of the string) redundant paths.  So, when a very
10115         long string "almost" matched, Emacs took a very long time to
10116         figure out that it didn't.  This became particularly relevant
10117         because isearch's lazy-highlight does a search bounded by (1-
10118         match-end) (which, in most circumstances, is a search that
10119         almost matches).  A recipe for this can be found in bug#22090.
10121 2015-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
10123         * lisp/emacs-lisp/cl-macs.el (character): Can't be negative
10124         Fixes (bug#21701)
10126 2015-12-04  Daiki Ueno  <ueno@gnu.org>
10128         lisp/gnus/qp.el: Don't replace "from " at bol
10130         * lisp/gnus/qp.el (quoted-printable-encode-region): Bind `case-fold-search'
10131         to nil when looking for "^From ".  Problem reported by Simon Josefsson.
10133 2015-12-03  Phillip Lord  <phillip.lord@russet.org.uk>
10135         Externalize some symbols in undo-auto
10137          * doc/lispref/text.texi: Update symbols.
10138          * lisp/simple.el (undo-auto--amalgamate,
10139            undo-auto--current-boundary-timer): Make symbols public.
10140          * src/cmds.c (Fself_insert_command,Fdelete_char): Call
10141            updated symbol.
10143 2015-12-03  Stefan Monnier  <monnier@iro.umontreal.ca>
10145         * lisp/emacs-lisp/smie.el (smie-next-sexp): Fix BOB "token"
10147 2015-12-03  Michael Albinus  <michael.albinus@gmx.de>
10149         Some error message improvements in tramp-sh.el
10151         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
10152         Suppress error messages for "mesg" and "biff" calls.
10153         (tramp-get-remote-path): Ignore errors when expanding
10154         `tramp-own-remote-path'.  Raise a warning instead.
10156 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
10158         Document 'nacl' value for 'system-type'
10160         * doc/lispref/os.texi (System Environment): Document the 'nacl'
10161         value of 'system-type'.
10163 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
10165         Document 'window-max-chars-per-line'
10167         * doc/lispref/windows.texi (Window Sizes): Document
10168         'window-max-chars-per-line'.
10170 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
10172         Fix some file headers for the purpose of `package--builtins'
10174         * lisp/emacs-lisp/cl-preloaded.el
10175         * lisp/emacs-lisp/eieio-compat.el
10176         * lisp/net/sasl-scram-rfc.el: Add a "Package:" header
10178         * lisp/ielm.el: Fix summary line.
10180 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
10182         * lisp/emacs-lisp/package.el (package-unpack): Load before compiling
10184         Reload any previously loaded package files before compiling
10185         the package (also reload the same files after compiling).
10186         This ensures that we have the most recent definitions during
10187         compilation, and avoids generating bad elc files when a macro
10188         changes and it is used in a different file from the one it's
10189         defined in.
10191 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
10193         * lisp/emacs-lisp/package.el: Refactor package activation code
10195         (package-activate): Move code that activates dependencies into
10196         package-activate-1.
10197         (package--load-files-for-activation): New function.
10198         (package-activate-1): Add code for (optionally) activating
10199         dependencies, and move file-loading code into
10200         `package--load-files-for-activation'.
10202 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
10204         Document new font-related functionality
10206         * doc/lispref/display.texi (Low-Level Font): Document
10207         'default-font-width', 'default-font-height', 'window-font-width',
10208         and 'window-font-height'.
10210         * etc/NEWS: Move entries for 'default-font-width',
10211         'default-font-height', 'window-font-width', and 'window-font-height'
10212         to their place and mark them documented.
10214 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
10216         Fix documentation and implementation of 'directory-name-p'
10218         * lisp/files.el (directory-name-p): Modify to recognize
10219         backslashes on MS-Windows and MS-DOS.  Adjust the doc string
10220         accordingly.  Use '=', not char-equal, for comparison, as
10221         letter-case cannot possibly be an issue here.
10223         * doc/lispref/files.texi (Directory Names): Move the documentation
10224         of directory-name-p here from "Relative File Names".  Update the
10225         description per the changes in implementation.
10227         * etc/NEWS: Move the entry for 'directory-name-p' to its proper
10228         place and mark it documented.
10230 2015-12-02  Eli Zaretskii  <eliz@gnu.org>
10232         Minor copyedit in Emacs manual
10234         * doc/emacs/search.texi (Lax Search): Make wording about character
10235         folding by default less definitive.  (Bug#22043)
10237 2015-12-02  Eli Zaretskii  <eliz@gnu.org>
10239         More emacs-module.c fixes for wide ints
10241         * src/emacs-module.c (value_to_lisp) [WIDE_EMACS_INT]: Use
10242         unsigned data types to manipulate pointers, to avoid sign
10243         extension coming after us with a vengeance.
10245         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
10246         Emacs with wide ints that verify integer values near the critical
10247         value that requires us to switch to a cons cell.
10249 2015-12-02  Stephen Leake  <stephen_leake@stephe-leake.org>
10251         Fix bug#22069 in cl-generic.el
10253         * lisp/emacs-lisp/cl-generic.el (cl-no-method): Remove %S; this string is
10254         not run thru `format'.
10256 2015-12-01  Dmitry Gutov  <dgutov@yandex.ru>
10258         APPEND etags--xref-backend to xref-backend-functions
10260         * lisp/progmodes/xref.el (xref-backend-functions):
10261         Use APPEND when adding the default element
10262         (http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00061.html).
10264 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
10266         More accurate documentation of lax whitespace matching
10268         * lisp/isearch.el (isearch-forward-word, isearch-forward-symbol)
10269         (word-search-backward, word-search-forward)
10270         (word-search-backward-lax, word-search-forward-lax): Mention in
10271         doc strings that toggling lax whitespace matching has no effect on
10272         these commands.
10274         * doc/emacs/search.texi (Word Search, Symbol Search): Clarify that
10275         lax whitespace matching has no effect on these commands.
10277 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
10279         Fix emacs-module.c for wide ints
10281         * src/emacs-module.c (lisp_to_value): Compare the produced value
10282         with the original Lisp object, not with the one potentially
10283         converted into a Lisp_Cons.  Fixes assertion violations when
10284         working with integers larger than fit into a 32-bit value.
10286         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
10287         large integers, to test --with-wide-int.
10289 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
10291         Document 'directory-files-recursively'
10293         * lisp/files.el (directory-files-recursively): Doc fix.  Rename
10294         the argument MATCH to REGEXP, to be more explicit about its form.
10296         * doc/lispref/files.texi (Contents of Directories): Improve the
10297         documentation of 'directory-files-recursively'.  Add
10298         cross-references.
10300         * etc/NEWS: Move the entry for 'directory-files-recursively' to
10301         its place and mark it documented.
10303 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
10305         Document 'inhibit-read-only' property
10307         * doc/lispref/text.texi (Special Properties): Describe the new
10308         'inhibit-read-only' text property.  Add cross-reference to where
10309         read-only buffers are described.
10310         * doc/lispref/buffers.texi (Read Only Buffers): Mention that
10311         'inhibit-read-only' property exempts text from being read-only.
10312         Add cross-reference to "Special Properties".
10314         * etc/NEWS: Move the entry about 'inhibit-read-only' property to
10315         its place and mark it documented.
10317 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
10319         * lisp/emacs-lisp/package.el: Update header comments
10321 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
10323         * lisp/character-fold.el: Add back multi-char matching
10325         (character-fold-to-regexp): Uncomment recently commented code
10326         and make the algorithm "dummer" by not checking every possible
10327         combination.  This will miss some possible matches, but it
10328         greatly reduces regexp size.
10330         * test/automated/character-fold-tests.el
10331         (character-fold--test-fold-to-regexp): Comment out test of
10332         functionality no longer supported.
10334 2015-12-01  Xue Fuqiao  <xfq.free@gmail.com>
10336         * doc/emacs/ack.texi (Acknowledgments): Update.
10338 2015-12-01  Michael Albinus  <michael.albinus@gmx.de>
10340         Check `file-remote-p' over absolute files names in files.el
10342         * lisp/files.el (directory-files-recursively)
10343         (get-free-disk-space): Check `file-remote-p' over absolute files names.
10345 2015-12-01  Andreas Schwab  <schwab@linux-m68k.org>
10347                 * src/lread.c (syms_of_lread): Doc fix.
10349 2015-11-30  Dmitry Gutov  <dgutov@yandex.ru>
10351         Don't mistake certain JS method calls for keywords
10353         * lisp/progmodes/js.el (js--ctrl-statement-indentation):
10354         Braceless keyword can't come after a period (bug#22063).
10356 2015-11-30  David Reitter  <david.reitter@gmail.com>
10358         Read frame_title_format from buffer-local variable for NS port
10360         * src/nsfns.m (x_implicitly_set_name): Read frame-title-format and
10361         icon-title-format variables from buffer in appropriate window.
10362         (Bug#22048)
10364 2015-11-30  Juri Linkov  <juri@linkov.net>
10366         * lisp/replace.el (occur-engine): Count matches in empty lines.
10368         (Bug#22062)
10370 2015-11-30  Aurélien Aptel  <aurelien.aptel@gmail.com>
10372         * src/emacs-module.h: Fix finalizer typedef for C++11
10374         C++11 standard doesn't allow exception-specification in typedef.
10375         The workaround is to declare a dummy function prototype and use
10376         decltype on it.
10378 2015-11-30  Eli Zaretskii  <eliz@gnu.org>
10380         Fix last change
10382         * src/emacs-module.c (lisp_to_value, value_to_lisp)
10383         [WIDE_EMACS_INT]: Avoid compiler warnings.
10385 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
10387         Rely on conservative stack scanning to find "emacs_value"s
10389         * src/emacs-module.c (struct emacs_value_tag)
10390         (struct emacs_value_frame, struct emacs_value_storage): Remove.
10391         (value_frame_size): Remove constant.
10392         (struct emacs_env_private): Use Lisp_Object for non_local_exit info.
10393         (lisp_to_value): Remove first arg.
10394         (module_nil): New constant.
10395         Use it instead of NULL when returning an emacs_value.
10396         (module_make_function): Adjust to new calling convention of
10397         Qinternal_module_call.
10398         (DEFUN): Receive args in an array rather than a list.
10399         Use SAFE_ALLOCA rather than xnmalloc.  Skip the lisp_to_value loop when
10400         we don't have WIDE_EMACS_INT.  Adjust to new type of non_local_exit info.
10401         (module_non_local_exit_signal_1, module_non_local_exit_throw_1):
10402         Adjust to new type of non_local_exit info.
10403         (ltv_mark) [WIDE_EMACS_INT]: New constant.
10404         (value_to_lisp, lisp_to_value): Rewrite.
10405         (initialize_frame, initialize_storage, finalize_storage): Remove functions.
10406         (allocate_emacs_value): Remove function.
10407         (mark_modules): Gut it.
10408         (initialize_environment): Don't initialize storage any more.
10409         Keep the actual env object on Vmodule_environments.
10410         (finalize_environment): Don't finalize storage any more.
10411         (syms_of_module): Initialize ltv_mark and module_nil.
10413         * src/emacs-module.h (emacs_value): Make it more clear that this type
10414         is really opaque, including the fact that NULL may not be valid.
10416         * modules/mod-test/mod-test.c (Fmod_test_signal, Fmod_test_throw):
10417         Don't assume that NULL is a valid emacs_value.
10419 2015-11-30  Eli Zaretskii  <eliz@gnu.org>
10421         Yet another doc improvement for search commands
10423         * doc/emacs/search.texi (Word Search, Symbol Search)
10424         (Regexp Search): Document commands that don't support lax
10425         whitespace matching or character folding.
10426         (Nonincremental Search): Mention the search commands that can be
10427         invoked from the menu bar.
10429         * lisp/isearch.el (isearch-define-mode-toggle-word)
10430         (isearch-define-mode-toggle-symbol)
10431         (isearch-define-mode-toggle-character-fold): Note in the doc
10432         string that turning these on exits the regexp mode.
10433         (isearch-forward-regexp, isearch-forward-word)
10434         (isearch-forward-symbol, isearch-backward-regexp)
10435         (word-search-backward, word-search-forward)
10436         (word-search-backward-lax, word-search-forward-lax): State in the
10437         doc string which commands don't support character folding and/or
10438         lax-whitespace matching.
10440 2015-11-30  Martin Rudalics  <rudalics@gmx.at>
10442         Run `window-size-change-functions' also when reading from minibuffer
10444         * src/xdisp.c (redisplay_internal): Run `window-size-change-functions'
10445         also when reading from minibuffer.
10447 2015-11-30  Ulf Jasper  <ulf.jasper@web.de>
10449         Fix scrambling of html-rendered item buffers
10451         * lisp/net/newst-treeview.el (newsticker--treeview-render-text): Fix
10452           scrambling of contents by wrapping call to html-renderer in
10453           save-selected-window.
10455 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
10457         Fix font typo in previous doc fix.
10459 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
10461         A bit more security doc, esp. file local vars
10463         * doc/emacs/emacs.texi (Top):
10464         * doc/emacs/misc.texi (Miscellaneous Commands):
10465         Refer to new Host Security section.
10466         (Host Security): New section.
10467         * doc/lispref/os.texi (Security Considerations):
10468         Mention file local variables.
10470 2015-11-30  Artur Malabarba  <bruce.connor.am@gmail.com>
10472         * lisp/character-fold.el: Comment out branching code
10474         (character-fold-to-regexp): Comment out code that uses multi-char
10475         table.  The branching caused by this induces absurdly long regexps,
10476         up to 10k chars for as little as 25 input characters.
10478 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
10480         Spelling and grammar fixes
10482 2015-11-29  Dmitry Gutov  <dgutov@yandex.ru>
10484         Make lisp-completion-at-point a wrapper instead of an alias
10486         * lisp/progmodes/elisp-mode.el (lisp-completion-at-point):
10487         Turn into an obsolete wrapper around elisp-completion-at-point
10488         (bug#20455).
10490 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
10492         * lisp/isearch.el (isearch-search-fun-default): Nicer error
10494         message when the search fails.
10496 2015-11-29  Dmitry Gutov  <dgutov@yandex.ru>
10498         Update menu-bar-goto-uses-etags-p for the current xref API
10500         * lisp/menu-bar.el (menu-bar-goto-uses-etags-p): Consult
10501         xref-backend-functions, instead of now-nonexistent
10502         xref-find-function.
10504 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
10506         * lisp/isearch.el (isearch-define-mode-toggle): Advertise binding
10508 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
10510         * lisp/menu-bar.el: Use folding in searches
10512         (nonincremental-search-forward): Use `isearch-search-fun-default'
10513         to determine the search function.
10514         (nonincremental-search-backward)
10515         (nonincremental-repeat-search-forward)
10516         (nonincremental-repeat-search-backward): Use it.
10518 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
10520         * lisp/menu-bar.el (menu-bar-goto-uses-etags-p): Fix a warning
10522 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
10524         * lisp/character-fold.el (character-fold-to-regexp): Be careful
10526         not to return huge regexps.
10528 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
10530         Improve documentation of string-collate-* functions
10532         * doc/lispref/strings.texi (Text Comparison): Improve wording and
10533         indexing of 'string-collate-equalp' and 'string-collate-lessp'.
10535         * etc/NEWS: Move the entry of 'string-collate-equalp' and
10536         'string-collate-lessp' to "Lisp Changes" section and mark it as
10537         documented.
10539 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
10541         Document truncate-string-ellipsis
10543         * doc/lispref/display.texi (Size of Displayed Text): Document
10544         'truncate-string-ellipsis'.
10546         * lisp/international/mule-util.el (truncate-string-ellipsis): Doc fix.
10547         (truncate-string-to-width): Mention in the doc string that the
10548         default for ELLIPSIS comes from 'truncate-string-ellipsis'.
10550         * etc/NEWS: Move the 'truncate-string-ellipsis' entry to the "Lisp
10551         Changes" section.
10553 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
10555         Fix confusion wrt character folding in the Emacs manual
10557         * doc/emacs/search.texi (Nonincremental Search, Regexp Search):
10558         Document that invoking search-forward/backward and
10559         re-search-forward/backward supports only case folding, but not the
10560         rest of the lax-search features.  Reported by Mike Kupfer
10561         <m.kupfer@acm.org>.
10563 2015-11-29  Ken Brown  <kbrown@cornell.edu>
10565         Update mod-test-sum-test
10567         * modules/mod-test/test.el (mod-test-sum-test): Update to
10568         accommodate the lack of dladdr on Cygwin.
10570 2015-11-29  Alan Mackenzie  <acm@muc.de>
10572         Byte compiler: Catch missing argument to `funcall'.  Fixes bug#22051.
10574         * lisp/emacs-lisp/bytecomp.el (byte-compile-funcall): When there's no argument
10575         to `funcall', (i) Output an error message; (ii) Generate code to signal a
10576         `wrong-number-of-arguments' error.
10578 2015-11-29  Martin Rudalics  <rudalics@gmx.at>
10580         * lisp/window.el (split-window): Don't sanitize sizes when SIZE is non-nil.
10582 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
10584         * lisp/character-fold.el (character-fold-to-regexp)
10586         Warn about using long strings.
10588         * test/automated/character-fold-tests.el
10589         (character-fold--test-lax-whitespace)
10590         (character-fold--test-consistency): Reduce string size for tests.
10592 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
10594         Document renaming of x-select-enable-* variables
10596         * doc/emacs/killing.texi (Clipboard): Rename
10597         x-select-enable-clipboard to select-enable-clipboard and
10598         x-select-enable-primary to select-enable-primary.  Update index
10599         entries.
10601         * etc/NEWS: Mark entry as documented.
10603 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
10605         Document the shorthand hints displayed by M-x
10607         * doc/emacs/m-x.texi (M-x): Document the numeric meaning of
10608         suggest-key-bindings.  Document the shorthand hints for commands
10609         that have no key bindings.  Document that M-x completion ignores
10610         obsolete commands.
10612         * etc/NEWS: Move the M-x entry to "Editing Changes" and mark it as
10613         documented.
10615 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
10617         Update docs of character folding
10619         * doc/emacs/search.texi (Lax Search): Update the description of
10620         character folding for the latest changes.
10622 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
10624         * lisp/character-fold.el: Also play nice with case-folding
10626         (character-fold-to-regexp): Take `case-fold-search' into account.
10628 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
10630         * lisp/character-fold.el: Add support for multi-char matches
10632         (character-fold-table): Now has an extra-slot. This is a second
10633         char-table that holds multi-character matches.  See docstring for
10634         details.
10635         (character-fold-to-regexp): Can build branching regexps when a
10636         character's entry the extra slot of `character-fold-table' matches the
10637         characters that succeed it.
10639 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
10641         * lisp/character-fold.el: Code simplifications
10643         (character-fold-table): Reduce the scope of a variable.
10644         (character-fold-to-regexp): Change logic to work directly on the
10645         input string.  It's a little easier to understand, probably
10646         faster, and sets us up for implementing multi-char matches.
10648         * test/automated/character-fold-tests.el
10649         (character-fold--test-fold-to-regexp): New test.
10651 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
10653         Document changes in "C-h l"
10655         * doc/emacs/help.texi (Misc Help): Document the changes in "C-h l".
10657         * etc/NEWS: mark "C-h l" changes as documented.
10659 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
10661         Finalize documentation of 'custom-prompt-customize-unsaved-options'
10663         * doc/emacs/custom.texi (Saving Customizations): Index the new
10664         function 'custom-prompt-customize-unsaved-options'.
10666         * etc/NEWS: Mention when 'custom-prompt-customize-unsaved-options'
10667         is useful.
10669 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
10671         Document 'comment-line'
10673         * doc/emacs/programs.texi (Comment Commands): Document
10674         'comment-line'.
10676         * etc/NEWS: Move the entry for 'comment-line' into "Editing Changes".
10678 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
10680         Document new checkdoc features
10682         * doc/lispref/tips.texi (Tips, Library Headers): Document the
10683         keyword-checking features of checkdoc and the commands
10684         'checkdoc-file' and 'checkdoc-current-buffer'.
10686         * etc/NEWS: Move the checkdoc-related entries to their own
10687         section.
10689 2015-11-28  Philipp Stephani  <p.stephani2@gmail.com>
10691         Simplify the prologue of emacs-module.c functions
10693         * src/emacs-module.c (MODULE_FUNCTION_BEGIN): New macro.
10694         (module_make_global_ref)
10695         (module_free_global_ref, module_make_function, module_funcall)
10696         (module_intern, module_type_of, module_extract_integer)
10697         (module_make_integer, module_extract_float, module_make_float)
10698         (module_copy_string_contents, module_make_string)
10699         (module_make_user_ptr, module_get_user_ptr, module_set_user_ptr)
10700         (module_get_user_finalizer, module_set_user_finalizer)
10701         (module_vec_set, module_vec_get, module_vec_size): Use new helper
10702         macro MODULE_FUNCTION_BEGIN.
10704 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
10706         Don't reject module calls with no arguments
10708         * src/emacs-module.c (Finternal_module_call): Allow ARGLIST be nil.
10710 2015-11-28  Philipp Stephani  <p.stephani2@gmail.com>
10712         Make module-call be visible from Lisp
10714         * src/emacs-module.c (module_make_function): Use internal--module-call.
10715         (Finternal_module_call): Renamed from Fmodule_call.  Add safety
10716         checks.
10717         (syms_of_module): DEFSYM save-value-p and save-pointer-p.  Do
10718         defsubr internal--module-call.
10720 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
10722         Add etags tests for the recent Lua-related bugfix
10724         * test/etags/lua-src/test.lua: New file, tests the issues raised
10725         by bug#21934.
10726         * test/etags/Makefile (LUASRC): Add test.lua.
10727         * test/etags/ETAGS.good_1:
10728         * test/etags/ETAGS.good_2:
10729         * test/etags/ETAGS.good_3:
10730         * test/etags/ETAGS.good_4:
10731         * test/etags/ETAGS.good_5:
10732         * test/etags/ETAGS.good_6:
10733         * test/etags/CTAGS.good: Adapt to the new Lua test.  Also, an old
10734         regression fix, resolved around 25 May 2015, required changes to
10735         the "good" ETAGS files.
10737 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
10739         Fix Lua tags when a function name includes '.' or ':'
10741         * lib-src/etags.c (Lua_functions): Add a tag for the last element
10742         of a function name after a dot or a colon.  (Bug#21934)
10744 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
10746         Improve documentation of search and replace commands
10748         * doc/emacs/search.texi (Replacement and Lax Matches): Document
10749         which commands are affected by 'replace-character-fold'.
10750         (Lax Search): Add a cross reference to "Replacement and Lax
10751         Matches".  Improve wording.  Fix lost extra whitespace.
10752         (Search Customizations): Improve wording.  (Bug#22036)
10753         See also comments in
10754         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02376.html.
10756         * lisp/replace.el (query-replace, query-replace-regexp)
10757         (query-replace-regexp-eval, replace-string, replace-regexp):
10758         Mention 'replace-character-fold' in the doc strings.
10760 2015-11-28  Paul Eggert  <eggert@cs.ucla.edu>
10762         Fix minor problems found by static checking
10764         * src/undo.c (prepare_record): Add proper prototype for C.
10766 2015-11-27  Stefan Monnier  <monnier@iro.umontreal.ca>
10768         * src/emacs-module.c (struct env_storage): Delete
10770         (struct emacs_runtime_private): Keep an emacs_env instead.
10771         (Fmodule_load, Fmodule_call): Declare emacs_env_private separately.
10772         (initialize_environment): Split the arg in two.  Adjust all callers.
10773         Only store the private part in Vmodule_environments.
10774         (finalize_environment): Change the arg to only be the private env.
10775         Adjust all callers.
10777 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
10779         Improve documentation of 'replace-character-fold'
10781         * lisp/replace.el (replace-character-fold): Clarify which commands
10782         are affected by this variable.
10784 2015-11-27  Dmitry Gutov  <dgutov@yandex.ru>
10786         Autoload etags when using its xref backend
10788         * lisp/progmodes/xref.el (xref--etags-backend):
10789         Rename to etags--xref-backend.  Move to etags.el.  Autoload.
10790         (Bug#22026)
10792 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
10794         * lisp/character-fold.el: Allow complex chars to match their decomposition
10796         (character-fold-table): When a character's decomposition does not
10797         involve a formatting tag (i.e., if it has an "exact" description via
10798         other characters), then this character is allowed to match the
10799         decomposition.
10801 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
10803         * lisp/character-fold.el: More descriptive variable names
10805         (character-fold-table): Rename a lot of the lexical variables to
10806         make the code easier to read.
10808 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
10810         * lisp/isearch.el: Ensure we still support `isearch-new-word'
10812         (isearch-new-regexp-function): Define variable.
10813         (isearch-new-word): Define as an obsolete alias. (Bug#22018)
10815 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
10817         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
10819 2015-11-27  Lee Bochicchio  <lboc.home@gmail.com>
10821         * test/lisp/abbrev-tests.el: Define more tests
10823         (abbrev-table-name-test, kill-all-abbrevs-test)
10824         (clear-abbrev-table-test): New tests.
10826 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
10828         Add module tests for wrong-type-argument
10830         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
10831         wrong-type-argument.
10833 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
10835         Improve handling of signals and 'throw' in modules
10837         * src/emacs-module.c: Add commentary explaining how to write
10838         functions in this file.
10839         (module_make_global_ref, module_free_global_ref)
10840         (module_non_local_exit_signal, module_non_local_exit_throw)
10841         (module_make_function, module_funcall, module_intern)
10842         (module_type_of, module_is_not_nil, module_eq)
10843         (module_extract_integer, module_make_integer)
10844         (module_extract_float, module_make_float)
10845         (module_copy_string_contents, module_make_string)
10846         (module_make_user_ptr, module_get_user_ptr, module_set_user_ptr)
10847         (module_get_user_finalizer, module_set_user_finalizer)
10848         (module_vec_set, module_vec_get, module_vec_size)
10849         (module_non_local_exit_signal_1, module_non_local_exit_throw_1):
10850         Do nothing and return with failure indication immediately, if some
10851         previous module call signaled an error or wants to throw.  See
10852         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02133.html
10853         for the relevant discussions.
10855 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
10857         Add ':version' tag to 'checkdoc-package-keywords-flag'
10859         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
10860         Add a ':version' tag.
10862 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
10864         Improve documentation of 'eval-buffer' and 'eval-region'
10866         * src/lread.c (Feval_buffer, Feval_region): Doc fixes.  (Bug#22023)
10868         * doc/lispref/eval.texi (Eval): Mention narrowing to clarify
10869         "accessible portion of buffer".
10871 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
10873         Unbreak the Cygwin w32 build
10875         * src/emacs.c (main): Call w32_init_main_thread in the Cygwin w32
10876         build as well.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
10878 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
10880         Improve commentary in character-fold.el
10882         * lisp/character-fold.el (character-fold-to-regexp): Move detailed
10883         description from commit log message to comments.  (Bug#22019)
10885 2015-11-26  Alan Mackenzie  <acm@muc.de>
10887         Byte Compiler: generate code to adjust stack count after call to `signal'.
10889         Corrects change from earlier today.
10891         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): supply the current value of
10892         `byte-compile--for-effect' as argument to `byte-compile-form'.
10894 2015-11-26  Eli Zaretskii  <eliz@gnu.org>
10896         Improve commentary of prepare_to_modify_buffer_1
10898         * src/insdel.c (prepare_to_modify_buffer_1): Mention in commentary
10899         that this function runs Lisp.  Suggested by Richard Stallman
10900         <rms@gnu.org>.
10902 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
10904         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
10906 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
10908         Fix regression after merge.
10910          * src/undo.c (prepare_record): Remove call to run_undoable_change.
10912 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
10914         After delete, record point location in undo.
10916         Addresses Bug #21968.
10918                 * lisp/simple.el (undo-auto--add-boundary): Clean up code to
10919                 better support intercalating calls.
10920                 * src/keyboard.c, src/keyboard.h (command_loop_1): Store value of
10921                 point and current buffer before each command.
10922                 * src/undo.c (record_point): Now only record the point.
10923                 * src/undo.c (prepare_record): Functionality removed form
10924                 record_point.
10925                 * src/undo.c (record_delete): Check if point needs recording.
10926                 * src/undo.c (undo-boundary): Record value of point before each
10927                 boundary.
10928                 * test/automated/simple-test.el: New tests.
10930         Conflicts:
10931                 src/undo.c
10933 2015-11-26  Eli Zaretskii  <eliz@gnu.org>
10935         Fix compiler warnings in w32.c
10937         * src/w32.c (sys_socket): In case of error, use -1 as return
10938         value, not INVALID_SOCKET, which causes compiler warnings.
10939         (maybe_load_unicows_dll): Cast the return value of GetProcAddress
10940         to the appropriate function signature, to avoid compiler errors.
10941         Reported by Andy Moreton <andrewjmoreton@gmail.com>.  (Bug#21953)
10943 2015-11-26  Dmitry Gutov  <dgutov@yandex.ru>
10945         Check if the file exists on disk before producing the revert diff
10947         * lisp/vc/vc-dispatcher.el (vc-buffer-sync): Check if the file
10948         exists on disk (bug#20558).
10950 2015-11-26  Alan Mackenzie  <acm@muc.de>
10952         Byte compiler: on setq with an odd number of arguments, generate a `signal'
10954         * lisp/emacs-lisp/cconv.el (cconv-convert): Don't transform `setq' form when
10955         it has an odd number of arguments, to allow bytecomp to handle the error.
10957         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): In a `setq' form with an
10958         odd number of arguments, generate a `signal' instead of the normal code.
10960 2015-11-25  Dmitry Gutov  <dgutov@yandex.ru>
10962         Use find-tag-default for xref-backend-identifier-at-point
10964         * lisp/progmodes/etags.el (find-tag-tag)
10965         (tags-completion-at-point-function): Extract common code as
10966         find-tag--default.
10967         (xref-backend-identifier-at-point): Define in terms of the new
10968         function.
10970 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
10972         * src/undo.c (record_property_change): Remove now-unused local.
10974 2015-11-25  Phillip Lord  <phillip.lord@russet.org.uk>
10976         run_undoable_changes now called from insdel.
10978         The original calls from inside undo.c are not always at a safe position
10979         to call lisp, as they originate in varied positions within insdel.c.
10980         Calling them directly from prepare_to_modify_buffer_1 ensures that they
10981         are always run at the same point.
10983          * src/undo.c (run_undoable_changes,syms_of_undo): Remove function
10984          and symbol used.
10985          * src/insdel.c (run_undoable_changes): Add function and symbol.
10987 2015-11-25  Eli Zaretskii  <eliz@gnu.org>
10989         Improve and update documentation of search commands
10991         * doc/emacs/search.texi (Lax Search): Renamed from "Search Case";
10992         all references changed.  Move the description of lax-whitespace
10993         here.  Add description of the new character folding features and
10994         additional customizable options.
10995         (Isearch Yank): Move before "Error in Search".
10996         (Basic Isearch): Improve wording.  Add index entries.  Add short
10997         description of how to abandon search, making this subsection a
10998         complete introduction to search basics.
10999         (Repeat Isearch): Add index entries.  Describe additional
11000         customizable options.  Describe mouse clicks.
11001         (Isearch Yank): Add index entries.  Describe mouse-2 click in echo
11002         area.  Describe more customizable options.
11003         (Error in Isearch): Add index entries.
11004         (Special Isearch): Move actual description of some isearch
11005         commands to other sections, leaving here just the summary of the
11006         commands.  Add command that toggles character folding.  Describe
11007         commands, like "C-h C-h", that were previously omitted for some
11008         reason.
11009         (Not Exiting Isearch): Describe search-exit-option.  Add index
11010         entries.
11011         (Word Search): Describe eww-search-word and eww-search-prefix.
11012         (Symbol Search): Add index entries.
11013         (Regexp Search): Describe regexp-search-ring-max.
11014         (Replacement and Lax Matches): Renamed from "Replacement and
11015         Case"; all references changed.  Describe lax-whitespace matching
11016         in replace commands and related options.  Describe character
11017         folding in replace commands and related options.
11018         (Query Replace): Describe query-replace-from-to-separator and the
11019         new history features.  Add index entries for highlighted text.
11020         Describe query-replace-skip-read-only.  Describe more keys
11021         accepted by query-replace.
11022         (Other Repeating Search): More index entries for Occur.  Describe
11023         list-matching-lines-default-context-lines.
11024         (Search Customizations): New section, documents customizable
11025         options that were not documented until now.
11026         * doc/emacs/glossary.texi (Glossary): Add "Case Folding" and
11027         "Character Folding".
11029         * etc/NEWS: Move search- and replace-related entries to a single
11030         parent section.
11032         * lisp/replace.el (query-replace-show-replacement): Doc fix.
11033         * lisp/isearch.el (search-nonincremental-instead)
11034         (isearch-hide-immediately): Doc fixes.
11036 2015-11-25  Katsumi Yamaoka  <yamaoka@jpl.org>
11038         Remove nnml-retrieve-groups that is unnecessary and somewhat problematic
11040         * lisp/gnus/nnml.el (nnml-retrieve-groups): Remove.  See:
11041         <http://thread.gmane.org/gmane.emacs.gnus.general/86308> and
11042         <http://thread.gmane.org/gmane.emacs.gnus.general/86321>
11044 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
11046         Fix module_format_fun_env when dynlib_addr fails
11048         * src/emacs-module.c (module_format_fun_env):
11049         exprintf doesn’t support %p, so use %x.  Reported by Eli Zaretskii in:
11050         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02122.html
11052 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
11054         Disambiguate variable help a bit better
11056         * lisp/help-fns.el (describe-variable): Quote the
11057         variable’s value if it is a symbol other than t or nil.
11058         See: T.V Raman in:
11059         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02147.html
11061 2015-11-24  Dmitry Gutov  <dgutov@yandex.ru>
11063         Pass SVN commit message through log-edit-extract-headers
11065         * lisp/vc/vc-svn.el (vc-svn-checkin): Pass COMMENT through
11066         log-edit-extract-headers (bug#18954).
11068 2015-11-24  Alan Mackenzie  <acm@muc.de>
11070         CC Mode: Eliminate compiler warning messages.
11072         * lisp/progmodes/cc-mode.el (top level): remove compile time declaration of
11073         `font-lock-syntactic-keywords' (which CC Mode doesn't use).
11074         * lisp/progmodes/cc-awk.el (awk-mode-syntax-table)
11075         (c-awk-set-syntax-table-properties): Clarify comments about
11076         `font-lock-syntactic-keywords'.
11078         * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-load): Create a dummy declaration
11079         of this before the real (interpreted) one, to satisfy the byte compiler.
11081 2015-11-24  Simen Heggestøyl  <simenheg@gmail.com>
11083         Extend the test suite for json.el
11085         * lisp/json.el (json-plist-p): Clarify docstring.
11087         * test/automated/json-tests.el (json-tests--with-temp-buffer): New
11088         macro.
11089         (test-json-join, test-json-alist-p)
11090         (test-json-plist-p, test-json-advance, test-json-peek)
11091         (test-json-pop, test-json-skip-whitespace)
11092         (test-json-read-keyword, test-json-encode-keyword)
11093         (test-json-read-number, test-json-encode-number)
11094         (test-json-read-escaped-char, test-json-read-string)
11095         (test-json-encode-string, test-json-encode-key)
11096         (test-json-new-object, test-json-add-to-object)
11097         (test-json-read-object, test-json-encode-list)
11098         (test-json-read-array, test-json-encode-array)
11099         (test-json-read, test-json-read-from-string)
11100         (test-json-encode): New tests.
11101         (json-read-simple-alist): Merged into `test-json-read-object'.
11102         (json-encode-string-with-special-chars): Merged into
11103         `test-json-encode-string'.
11104         (json-read-string-with-special-chars): Split into
11105         `test-json-encode-string' and `test-json-read-from-string'.
11107 2015-11-24  Anders Lindgren  <andlind@gmail.com>
11109         Fixed bug#18283: Enable applescript in NextStep.
11111         * nextstep/templates/Info.plist.in: Set NSAppleScriptEnabled to YES.
11113 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
11115         Allow completion on dynamic module files in load-library
11117         * lisp/files.el (load-library): Bind completion-ignored-extensions
11118         to nil, to allow completion on dynamic modules typed as file
11119         names.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
11121 2015-11-24  Alan Mackenzie  <acm@muc.de>
11123         CC Mode: eliminate almost all byte compilation warnings
11125         * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-noruntime-functions): Remove.
11126         (cc-require): Remove the crude hack that saved and restored
11127         byte-compile-noruntime-functions.
11128         (cc-conditional-require, cc-conditional-require-after-load): New macros.
11130         * lisp/progmodes/cc-defs.el (top level): Reformulate code which loaded
11131         cc-fix.el using the new macros in cc-bytecomp.el.
11133         * lisp/progmodes/cc-langs.el (c++-template-syntax-table)
11134         (c-no-parens-syntax-table): Add extra "(eval ..)"s around "'(lambda ..)"
11135         forms to remove the superflous quotes.
11137 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
11139         Add one more mod-test test
11141         * modules/mod-test/test.el (mod-test-sum-test): Test the error
11142         signaled when the function is invoked with a wrong number of
11143         arguments.
11145 2015-11-24  Philipp Stephani  <phst@google.com>
11147         * modules/mod-test/mod-test.c (Fmod_test_sum): Verify there are 2 args.
11149 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
11151         Implement dynlib_addr for MS-Windows
11153         * src/dynlib.c [WINDOWSNT]: Include w32common.h.
11154         <g_b_init_get_module_handle_ex> [WINDOWSNT]: New static variable.
11155         (GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS)
11156         (GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT) [WINDOWSNT]: Define
11157         if undefined.
11158         (dynlib_reset_last_error): Reset g_b_init_get_module_handle_ex to
11159         zero.
11160         (dynlib_addr) [WINDOWSNT]: Non-trivial implementation to report
11161         the full file name of the module for a given address.
11163 2015-11-24  Alan Mackenzie  <acm@muc.de>
11165         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
11167 2015-11-24  Alan Mackenzie  <acm@muc.de>
11169         Squashed commit of the following:
11171         commit e1ecf76585bef2eb87995f7a7f92cc12003a6f70
11172         Author: Alan Mackenzie <acm@muc.de>
11173         Date:   Tue Nov 24 16:50:09 2015 +0000
11175             Byte compile: minor amendments.
11177             * lisp/emacs-lisp/bytecomp.el (byte-compile-initial-macro-environment):
11178             add a comment to explain the binding of variables around a subsidiary
11179             compilation.
11180             (byte-compile-new-defuns): Amend the doc string.
11182         commit c537bfed1dda1593d218956ff00c6105a3ff0316
11183         Author: Alan Mackenzie <acm@muc.de>
11184         Date:   Sat Nov 21 18:43:57 2015 +0000
11186             Byte compiler: fix spurious warnings "might not be defined at runtime".
11188             Also initialize byte-compile-noruntime-functions between runs.
11190             * lisp/emacs-lisp/bytecomp.el (byte-compile-new-defuns): New variable.
11191             (byte-compile-initial-macro-environment): For eval-when-compile: bind
11192             byte-compile-unresolved-functions and byte-compile-new-defuns around
11193             byte-compile-top-level, to prevent spurious entries being made.
11194             (byte-compile-warn-about-unresolved-functions): Check whether function is
11195             in byte-compile-new-defuns before emitting a warning about it.
11196             (byte-compile-from-buffer): Initialize new variable and
11197             byte-compile-noruntime-functions to nil.
11198             (byte-compile-file-form-require): record all new functions defined by a
11199             `require' in byte-compile-new-defuns.
11200             (byte-compile-file-form-defmumble): record the new alias in
11201             byte-compile-new-defuns.
11203 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
11205         Fix crash at startup related to GC of font entities
11207         * src/font.h (GC_FONT_SPEC_P, GC_FONT_ENTITY_P)
11208         (GC_FONT_OBJECT_P, GC_XFONT_SPEC, GC_XFONT_ENTITY)
11209         (GC_XFONT_OBJECT): New macros, for use in garbage collector.
11210         * src/alloc.c (compact_font_cache_entry, compact_font_caches):
11211         Don't ifdef away font cache compaction on NT_GUI, as the problems
11212         which led to that seem to have been solved.
11213         (compact_font_cache_entry): Use GC_FONT_SPEC_P, GC_XFONT_SPEC,
11214         GC_XFONT_ENTITY, and GC_XFONT_OBJECT, instead of their non-GC_
11215         cousins.  (Bug#21999)
11217 2015-11-24  Alan Mackenzie  <acm@muc.de>
11219         Byte compile: Output an error, not a warning, for odd number of args to setq
11221         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): Amend.
11223 2015-11-24  Ken Raeburn  <raeburn@raeburn.org>
11225         Fix kbd_buffer iteration loop in readable_events
11227         * src/keyboard.c (readable_events): Wrap the event pointer back to the
11228         start of the kbd_buffer array inside the top of the loop instead of
11229         right before checking the loop condition, since kbd_fetch_ptr and
11230         kbd_store_ptr point past the end of the array to mean that element 0
11231         is next. (bug#21935)
11233 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
11235         Improve text-quoting-style doc again
11237         * doc/lispref/help.texi (Keys in Documentation):
11238         Omit overkill discussion of ‘setq’.  Mention Emacs versions
11239         where ‘grave’ style was standard.
11241 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
11243         Improve text-quoting-style doc
11245 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
11247         Simplify module_make_function
11249         * src/emacs-module.c (module_make_function):
11250         Simplify by calling build_unibyte_string.
11252 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
11254         Port better to FreeBSD’s dlfunc vs dlsym
11256         This avoids warnings when converting between void * and
11257         function pointers, which strict C11 does not allow.
11258         * configure.ac (dlfunc): Check for existence.
11259         * src/dynlib.c (dlfunc) [!HAVE_DLFUNC]: New macro.
11260         (dynlib_func): New function.
11261         * src/dynlib.h (dynlib_function_ptr, dynlib_func): New decls.
11262         * src/emacs-module.c (Fmodule_load): Use dynlib_func, not
11263         dynlib_sym, for function pointers.
11265 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
11267         Simplify use of emacs_finalizer_function type
11269         * src/emacs-module.h (emacs_finalizer_function):
11270         Now EMACS_NOEXCEPT.  All users simplified to omit EMACS_NOEXCEPT.
11271         (struct emacs_env_25): Use emacs_finalizer_function where applicable.
11273 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
11275         module_format_fun_env fixes
11277         * src/doprnt.c (exprintf) [HAVE_MODULES]: Also define in this case.
11278         * src/emacs-module.c (module_format_fun_env):
11279         Convert path and sym to UTF-8.
11280         Don’t use VLAs, as the C11 standard says they’re optional,
11281         and anyway they can cause core dumps with large allocations.
11282         Use exprintf rather than snprintf, as exprintf handles arbitrarily
11283         long strings.  Simplify the code a bit.
11285 2015-11-23  Dmitry Gutov  <dgutov@yandex.ru>
11287         Don't use package-user-dir in elisp-library-roots if it's not bound
11289         * lisp/progmodes/elisp-mode.el (elisp-library-roots): Don't
11290         use package-user-dir if it's not bound (bug#19759).
11292 2015-11-23  Anders Lindgren  <andlind@gmail.com>
11294         New visible-bell for NextStep (OS X El Capitan compatible).
11296         Instead of inverting a rectangle in the middle of the frame, use
11297         the standard NextStep image "caution", represented using an
11298         warning sign with an exclamation mark.  (Bug#21662)
11300         Implemented based on a suggestion drafted by Mustafa Kocaturk.
11302         * src/nsterm.m (EmacsBell): New class for managing the caution
11303         image.  Support multiple active bells, the image is removed once
11304         all bells have timed out.
11305         (ns_timeout): Removed, no longer used.
11306         (ns_ring_bell): Reimplemented to use EmacsBell.
11308 2015-11-23  Johan Bockgård  <bojohan@gnu.org>
11310         * lisp/emacs-lisp/nadvice.el (add-function): Fix debug spec.
11312         (remove-function): Ditto. (Bug#20376)
11314 2015-11-23  Mark Oteiza  <mvoteiza@udel.edu>
11316         * lisp/leim/quail/tamil-dvorak.el: Add necessary escapes.
11318 2015-11-23  Eli Zaretskii  <eliz@gnu.org>
11320         Improve how non-ASCII strings are accepted from modules
11322         * src/emacs-module.c (module_make_function, module_make_string):
11323         Build a unibyte Lisp string and then decode it by UTF-8, instead
11324         of building a multibyte string without decoding.  This is more
11325         tolerant to deviations from UTF-8.
11327 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
11329         Port recent module changes to pickier compilers
11331         * src/emacs-module.c (module_make_function)
11332         (module_make_string): Add casts to fix pointer signedness issues.
11334 2015-11-23  Philipp Stephani  <phst@google.com>
11336         Fix how strings are accepted from modules
11338         * emacs-module.c (module_make_function, module_make_string): Use
11339         make_multibyte_string.
11340         (module_copy_string_contents): Encode before reading the byte
11341         size.  Return false if and only if an error occurred.
11343 2015-11-23  Eli Zaretskii  <eliz@gnu.org>
11345         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
11347 2015-11-23  Shakthi Kannan  <shakthimaan@gmail.com>
11349         Add the tamil-dvorak input method
11351         * lisp/leim/quail/tamil-dvorak.el: New file.  (Bug#21768)
11353         * etc/NEWS: Mention the new input method.
11355 2015-11-23  Martin Rudalics  <rudalics@gmx.at>
11357         Move setting FRAME_WINDOW_SIZES_CHANGED to resize_frame_windows.
11359         * src/frame.c (adjust_frame_size): Don't set
11360         FRAME_WINDOW_SIZES_CHANGED here ...
11361         * src/window.c (resize_frame_windows): ... but here, as suggested
11362         by Stefan Monnier.  Also remove some dead code along the way.
11364 2015-11-23  Alan Mackenzie  <acm@muc.de>
11366         * /etc/NEWS (Incompatible Lisp Changes): Also `setf' needs an even # of args.
11368 2015-11-23  Alan Mackenzie  <acm@muc.de>
11370         Signal an error when `setf' gets an odd number of arguments.
11372         * lisp/emacs-lisp/gv.el (setf): Amend.
11374 2015-11-23  Stefan Monnier  <monnier@iro.umontreal.ca>
11376         * lisp/emacs-lisp/smie.el (smie-backward-sexp): Handle BOB better.
11378 2015-11-23  Alan Mackenzie  <acm@muc.de>
11380         * etc/NEWS (Incompatible Lisp Changes): Document new restriction on `setq'.
11382 2015-11-23  Alan Mackenzie  <acm@muc.de>
11384         Expunge occurrences of `setq' with an odd number of arguments.
11386         * lisp/apropos.el (apropos-documentation):
11387         * lisp/obsolete/complete.el (PC-include-file-all-completions):
11388         * lisp/progmodes/compile.el (compilation-goto-locus):
11389         * lisp/vc/vc-cvs.el (vc-cvs-parse-root): (twice)
11390         Insert missing nil at end of `setq' forms.
11392         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-autoload): Remove an
11393         erroneous trailing variable name from a setq, thus allowing a compilation
11394         properly to track functions not defined at runtime.
11396 2015-11-23  John Wiegley  <johnw@newartisans.com>
11398         Add a note about a questionable use of bool in xdisp.c
11400 2015-11-23  Alan Mackenzie  <acm@muc.de>
11402         Issue a warning from the byte compiler on a malformed `setq' form.
11404         Partly fixes bug#20241.
11405         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): Issue a warning when a
11406         `setq' form with an odd number of arguments is compiled.
11408 2015-11-23  Alan Mackenzie  <acm@muc.de>
11410         Don't let cconv_convert insert a nil argument into a `setq' form.
11412         Fixes bug#21983.
11413         * lisp/emacs-lisp/cconv.el (cconv-convert): Don't silently insert a nil last
11414         argument into a `setq' when there're an odd number of args.  This enables the
11415         byte compiler to issue a message in this case.
11417 2015-11-23  Alan Mackenzie  <acm@muc.de>
11419         Signal an error when `setq' has an odd number of arguments.  Fixes bug#20241.
11421         * src/eval.c (Fsetq): Signal an error on an odd number of arguments.
11422         (syms_of_eval): Add a DEFSYM for Qsetq.
11424 2015-11-23  Martin Rudalics  <rudalics@gmx.at>
11426         * doc/lispref/windows.texi (Window Sizes): Fix indices and references.
11428         * src/frame.c (adjust_frame_size): Set FRAME_WINDOW_SIZES_CHANGED (Bug#21975).
11430 2015-11-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
11432         Add EUDC BBDB 3 entry in NEWS
11434         * NEWS: Mention EUDC BBDB backend support for BBDB 3.
11436 2015-11-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
11438         Improve EUDC to BBDB 3 export
11440         * eudc-vars.el (eudc-ldap-bbdb-conversion-alist): Change phone
11441         entry to single item.  Add company conversion.
11442         * eudc-export.el (eudc-bbdbify-company): New function.
11443         (bbdb-parse-phone): Declare function.
11444         (eudc-bbdbify-phone): Add BBDB 3 support.
11445         (Bug#21971)
11447 2015-11-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
11449         Add BBDB 3 support for EUDC export
11451         * eudc.el: Add bbdb-version defvar.
11452         (eudc--using-bbdb-3-or-newer-p): New function.
11453         * eudc-export.el (eudc-create-bbdb-record): Add support for
11454         bbdb-create-internal argument list changes introduced in BBDB 3.
11455         * eudcb-bbdb.el: Remove bbdb-version defvar.
11456         (eudc-bbdb-field): Call eudc--using-bbdb-3-or-newer-p.
11457         (Bug#21971)
11459 2015-11-22  Eli Zaretskii  <eliz@gnu.org>
11461         Allow loading modules by 'load-file'
11463         * src/lread.c (Fload): Call 'unbind_to' with 'Fmodule_load' as the
11464         2nd arg, to avoid the "binding stack not balanced" error.
11465         (syms_of_lread) <module-file-suffix>: New Lisp variable.
11467         * lisp/files.el (module-file-suffix): Declare.
11468         (load-file): Remove 'module-file-suffix' from
11469         'completion-ignored-extensions', to allow completion on modules.
11471         * etc/NEWS: Mention 'module-file-suffix'.
11473 2015-11-22  Eli Zaretskii  <eliz@gnu.org>
11475         Fix unoptimized builds
11477         * src/lisp.h (XTYPE): Move before XSYMBOL, to fix unoptimized
11478         builds.
11480 2015-11-22  Dmitry Gutov  <dgutov@yandex.ru>
11482         Work around the asynchronous-empty-diff problem
11484         * lisp/vc/vc-rcs.el (vc-rcs-diff):
11485         * lisp/vc/vc-mtn.el (vc-mtn-diff):
11486         * lisp/vc/vc-hg.el (vc-hg-diff):
11487         * lisp/vc/vc-git.el (vc-git-diff): Ignore the ASYNC argument,
11488         do a synchronous process call (bug#21969).
11490 2015-11-21  Karl Fogel  <kfogel@red-bean.com>
11492         Finish excising electric indent from `open-line'
11494         * lisp/simple.el (open-line): Remove INTERACTIVE argument.
11496         * test/automated/simple-test.el (open-line-indent, open-line-hook):
11497           Adjust accordingly.
11499         This change finishes what my commit of Thu Nov 19 17:32:37 2015 -0600
11500         (git commit c59353896) started.  It turns out that having INTERACTIVE
11501         cause `post-self-insert-hook' to run (via `newline') meant `open-line'
11502         still had the electric indent behavior, as `post-self-insert-hook'
11503         normally contains `electric-indent-post-self-insert-function' ever
11504         since `electric-indent-mode' has been on by default.  Tracing the code
11505         change in `open-line' is mildly twisty, because Artur Malabarba's
11506         earliest two commits of 24 Oct 2015 first removed the `interactive'
11507         form entirely (git commit 6939896e2) and then restored it with the new
11508         extra "p" already added (git commit bd4f04f86), such that there is no
11509         single-commit diff in which one sees the second "p" appear.  Thus this
11510         change is effectively a reversion of parts of each of those commits.
11512         This could close bug#21884, at least until further discussion.
11514 2015-11-21  Dmitry Gutov  <dgutov@yandex.ru>
11516         Adhere closer to the "implicit tag name" definition
11518         * lisp/progmodes/etags.el (etags-tags-completion-table):
11519         Adhere closer to the "implicit tag name" definition.  Simplify
11520         the regexp.  Search for the explicit tag name first, and when
11521         not found, search locally for the implicit one.  (Bug#21934)
11523 2015-11-21  Stefan Monnier  <monnier@iro.umontreal.ca>
11525         Unrevert most of regexp reentrancy abort patch
11527         The problem was in:
11528           * src/syntax.c (update_syntax_table_forward): Propertize even when truncated
11529         which is hence not unreverted.
11530         The rest is:
11531         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
11532         (UPDATE_SYNTAX_TABLE_FAST): Re-introduce.
11533         All callers in regex.c changed back to the _FAST versions.
11535         * test/automated/message-mode-tests.el: Tweak the test to rely on auto
11536         propertization in backward-sexp.
11538 2015-11-21  Paul Eggert  <eggert@cs.ucla.edu>
11540         Revert regexp reentrancy abort patch
11542         Although the patch does fix Bug#21688 and prevents a core dump,
11543         it also makes the message-mode-propertize test fail; see:
11544         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01667.html
11545         Perhaps someone else can come up with a better fix some day.
11546         * src/syntax.c (update_syntax_table_forward):
11547         Propertize even when truncated.
11548         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
11549         (UPDATE_SYNTAX_TABLE_FAST): Remove.
11550         All callers changed back to the non-_FAST versions.
11552 2015-11-21  Paul Eggert  <eggert@cs.ucla.edu>
11554         Add a few safety checks when ENABLE_CHECKING
11556         This was motivated by the recent addition of module code,
11557         which added some ENABLE_CHECKING-enabled checks that are
11558         useful elsewhere too.
11559         * src/alloc.c (compact_font_cache_entry):
11560         * src/fns.c (sweep_weak_table):
11561         * src/lread.c (oblookup):
11562         Use gc_asize rather than doing it by hand.
11563         * src/emacs-module.c (module_make_global_ref)
11564         (module_free_global_ref, module_vec_size):
11565         Omit assertions that lisp.h now checks.
11566         * src/lisp.h (XFASTINT, ASIZE): In functional implementations,
11567         check that the result is nonnegative.  Use eassume, as this
11568         info can help a bit when optimizing production code.
11569         (XSYMBOL) [!USE_LSB_TAG]: Assert that argument is a symbol,
11570         to be consistent with the USE_LSB_TAG case.
11571         (gc_asize): New function, when ASIZE is needed in the gc.
11572         (gc_aset): Use it.
11573         (HASH_TABLE_P): Move definition up, so that it can be used ...
11574         (XHASH_TABLE): ... here, to assert that the arg is a hash table.
11576 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
11578         Simplify recording of main thread's ID on MS-Windows
11580         * src/w32term.c (w32_initialize):
11581         * src/w32console.c (initialize_w32_display):
11582         * src/w32fns.c (globals_of_w32fns): Don't record the main thread
11583         ID independently for each type of session (GUI, TTY, batch).
11584         * src/w32term.c (w32_init_main_thread): New function, records the
11585         main thread's thread ID.
11586         * src/w32term.h: Add prototype for w32_init_main_thread.
11587         * src/emacs.c (main) [WINDOWSNT]: Call w32_init_main_thread.
11589         * src/emacs-module.c [WINDOWSNT]: Rename main_thread_id to
11590         main_thread, for consistency with other threading libraries.  All
11591         users changed.  Include w32term.h.
11592         (check_main_thread) [WINDOWSNT]: Simplify the test: no need to
11593         make sure the main thread is alive, as we hold a handle on it
11594         opened by w32_init_main_thread.
11595         (module_init) [WINDOWSNT]: Reuse the thread ID recorded by
11596         w32_init_main_thread, instead of calling the requisite APIs once
11597         more.
11599 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
11601         Call 'window-size-change-functions' for mini-windows
11603         * src/window.c (grow_mini_window, shrink_mini_window): Set the
11604         frame's 'window_sizes_changed' flag.
11605         * src/xdisp.c (redisplay_internal): Call the hooks on
11606         'window-size-change-functions' if the call to 'echo_area_display'
11607         sets the frame's 'window_sizes_changed' flag.
11608         (syms_of_xdisp) <window-size-change-functions>:
11609         Update doc string to indicate the mini-window resizes trigger a
11610         call to the hooks, and don't promise that will happen "before
11611         redisplay".  (Bug#19576, Bug#21333)
11613         * doc/lispref/windows.texi (Window Hooks): Update the description
11614         of 'window-size-change-functions'.
11616 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
11618         Improve documentation of dynamic modules
11620         * src/fns.c (Frequire): Doc fix to include the dynamic module
11621         support.
11622         * src/lread.c (Fload, Vload_suffixes): Doc fixes to include the
11623         dynamic module support.
11624         (Fload): Treat the module suffix the same as '*.el' and '*.elc'
11625         wrt the MUST-SUFFIX argument.
11627         * etc/NEWS: Expand documentation of dynamically loaded modules.
11629 2015-11-21  Philipp Stephani  <phst@google.com>  (tiny change)
11631         Initial documentation for dynamic modules
11633         * etc/NEWS: Mention the new support for dynamically loaded modules.
11635 2015-11-20  Dmitry Gutov  <dgutov@yandex.ru>
11637         Add xref--etags-backend to xref-backing-functions using add-hook
11639         * lisp/progmodes/xref.el (xref-backend-functions): Move the
11640         default value into a separate `add-hook' call (bug#21964).
11642         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
11643         Don't declare the xref-backend-functions variable.
11644         It doesn't make any difference.
11646 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
11648         Fix double-decrement bug when freeing global refs
11650         * src/emacs-module.c (module_free_global_ref): Add a FIXME
11651         comment about error reporting.  Fix a recently-introduced typo
11652         that double-decremented the refcount.
11654 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
11656         Declare emacs_module_init in the module API
11658         * src/emacs-module.h (emacs_module_init): New decl.
11659         Without it, GCC might complain about a module that defines
11660         emacs_module_init without using it.  This also checks the
11661         API better.
11663 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
11665         Fix module test to use ptrdiff_t nargs too
11667         * modules/mod-test/mod-test.c (Fmod_test_return_t)
11668         (Fmod_test_sum, Fmod_test_signal, Fmod_test_throw)
11669         (Fmod_test_non_local_exit_funcall, Fmod_test_globref_make)
11670         (Fmod_test_string_a_to_b, Fmod_test_userptr_make)
11671         (Fmod_test_userptr_get, Fmod_test_vector_fill)
11672         (Fmod_test_vector_eq): Arg counts are ptrdiff_t, not int.
11673         (finalizer): Remove; no longer used.
11675 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
11677         Fix reindent-introduced typo in module code
11679         * src/emacs-module.c (MODULE_SETJMP_1): Fix typo that I
11680         introduced while reindenting the code earlier, and add a
11681         comment explaining the unusual use of do-while here.
11683 2015-11-20  Anders Lindgren  <andlind@gmail.com>
11685         Fixed bug#19576: `write-file' saves wrong buffer.
11687         If a function on the hook `window-size-change-functions' doesn't
11688         restore the current buffer, functions that save and restore the
11689         current window configuration (like `y-or-no-p') could silently
11690         change the current buffer.  When `write-file' asked the user
11691         confirmation to overwrite a file, `y-or-no-p' changed the current
11692         buffer, and the wrong buffer was saved to the file.
11694         * lisp/follow.el (follow-windows-start-end): Call `select-frame'
11695         using the `norecord' parameter.
11696         (follow-window-size-change): Restore current buffer. Call
11697         `select-frame' using the `norecord' parameter. Cleanup.
11699 2015-11-20  John Wiegley  <johnw@newartisans.com>
11701         Correct a documentation error in frames.texi
11703 2015-11-20  Stephen Leake  <stephen_leake@stephe-leake.org>
11705         * lisp/cedet/mode-local.el: Delete obsolete comment
11707 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
11709         Module function arg counts are ptrdiff_t, not int
11711         * src/emacs-module.c (struct module_fun_env)
11712         (module_make_function, module_funcall, Fmodule_call):
11713         * src/emacs-module.h (struct emacs_runtime, struct emacs_env_25):
11714         Use ptrdiff_t, not int, for arg counts.
11715         * src/emacs-module.c (module_make_function): Don’t bother
11716         checking arity against MOST_POSITIVE_FIXNUM, as that’s
11717         unnecessary here.  Make the checking clearer by negating it.
11718         (module_make_function, Fmodule_call): No need to use xzalloc
11719         since the storage doesn’t need to be cleared.
11720         (module_funcall): Don’t use VLA, since C11 doesn’t guarantee support
11721         for it, and many implementations are buggy with large VLAs anyway.
11722         Use SAFE_ALLOCA_LISP instead.
11723         (module_vec_set): Don’t crash if i < 0.
11724         (module_vec_get): Don’t crash if i < MOST_NEGATIVE_FIXNUM.
11725         (module_vec_set, module_vec_get): Do fixnum checks only when
11726         i is out of array bounds, for efficiency in the usual case.
11727         (Fmodule_load): Simplify fixnum range check.
11728         (Fmodule_call): Simplify arity check.  Use xnmalloc to detect
11729         integer overflow in array allocation size.
11731 2015-11-20  Eli Zaretskii  <eliz@gnu.org>
11733         Minor improvements in module test
11735         * modules/mod-test/mod-test.c: Include stdlib.h, to avoid warnings
11736         about missing prototype of malloc.
11737         * modules/mod-test/Makefile (CFLAGS): Add -std=gnu99, to avoid
11738         compiler warnings.
11740 2015-11-20  Eli Zaretskii  <eliz@gnu.org>
11742         Improve MS-Windows implementation in dynlib.c
11744         * src/dynlib.c [WINDOWSNT]: Include errno.h, lisp.h, and w32.h.
11745         No need to include windows.h, as w32.h already does that.
11746         <dynlib_last_err>: New static variable.
11747         (dynlib_reset_last_error): New function.
11748         (dynlib_open): Convert forward slashes to backslashes.  Convert
11749         file names from UTF-8 to either UTF-16 or the current ANSI
11750         codepage, and call either LoadLibraryW or LoadLibraryA.  If the
11751         argument is NULL, return a handle to the main module, like
11752         'dlopen' does.  Record the error, if any, for use by dynlib_error.
11753         (dynlib_sym): Check the handle for validity. Record the error, if
11754         any, for use by dynlib_error.
11755         (dynlib_error): Call w32_strerror to produce the error string, and
11756         zero out the last error code, like dlerror does.
11757         (dynlib_close): Check the handle for validity.  Record the error,
11758         if any, for use by dynlib_error.  Don't call FreeLibrary with a
11759         handle for the main module.
11760         * src/w32.c (globals_of_w32): Call dynlib_reset_last_error.
11762 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
11764         Include-file tweaks for modules
11766         * src/dynlib.c, src/emacs-module.c: Include <config.h> first.
11767         * src/dynlib.h: Do not include config.h.
11768         It’s every .c file’s responsibility to include config.h first.
11769         * src/emacs-module.c: Include emacs-module.h immediately after
11770         config.h, to test that emacs-module.h doesn’t depend on
11771         include files other than config.h.
11773 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
11775         Simplify push_handler and profile its malloc
11777         * src/lisp.h (PUSH_HANDLER): Remove.
11778         All callers changed to use push_handler directly.
11779         * src/eval.c (internal_condition_case)
11780         (internal_condition_case_1, internal_condition_case_2)
11781         (internal_condition_case_n):
11782         Use same pattern as for other invokers of push_handler.
11783         (push_handler, push_handler_nosignal): Use call-by-value
11784         instead of call-by-reference.  All uses changed.
11785         (push_handler): Simplify by rewriting in terms of
11786         push_handler_nosignal.
11787         (push_handler_nosignal): Profile any newly allocated memory.
11789 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
11791         * src/emacs-module.h: Include stddef.h, not stdlib.h.
11793 2015-11-19  Juanma Barranquero  <lekktu@gmail.com>
11795         Discover repository version in linked worktrees (bug#21930)
11797         * lisp/version.el (emacs-repository--version-git-1): Do not assume
11798         HEAD is at .git/HEAD, it can also be at .git/worktrees/<branch>/HEAD.
11799         (emacs-repository-get-version): Grok linked worktrees when EXTERNAL
11800         is nil too.
11802 2015-11-19  Juri Linkov  <juri@linkov.net>
11804         * lisp/replace.el (occur-regexp-descr): New function.
11805         (occur-1, occur-engine): Use it.
11807         * lisp/isearch.el (isearch-occur): Propertize regexp with
11808         isearch-string and isearch-regexp-function-descr for
11809         occur-regexp-descr to display the correct description
11810         message in the header (bug#21176, bug#21180).
11812 2015-11-19  Karl Fogel  <kfogel@red-bean.com>
11814         Revert `open-line' electric-indent sensitivity
11816         * lisp/simple.el (open-line): Remove electric indent code.
11817           (electric-indent-just-newline): Don't declare.
11819         * test/automated/simple-test.el (open-line-indent): Adjust test.
11821         This partly reverts Artur Malabarba's change that added electric
11822         indent sensitivity to `open-line' (Oct 24 22:26:27 2015 +0100, git
11823         commit bd4f04f86), and adjusts a new test he added right afterwards
11824         (Sat Oct 24 23:43:06 2015 +0100, git commit 207f235e3) accordingly.
11825         However, the new INTERACTIVE argument to `open-line', which he also
11826         added in the first commit, is not reverted here.
11828         See the thread "Questioning the new behavior of `open-line'." on the
11829         Emacs Devel mailing list, and in particular this message:
11831           From: Artur Malabarba
11832           Subject: Re: Questioning the new behavior of `open-line'.
11833           To: Karl Fogel
11834           Cc: David Kastrup, Pierpaolo Bernardi, emacs-devel
11835           Date: Wed, 18 Nov 2015 21:03:58 +0000
11836           Message-ID: \
11837             <CAAdUY-KN06pvCMy5bt3+Buk3yeKjf6n9iB2FaSTTOPpCqPwyhA@mail.gmail.com>
11839           https://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01707.html
11841 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
11843         Omit unnecessary clear in Fmodule_load
11845         * src/emacs-module.c (Fmodule_load):
11846         Simplify and avoid unnecessary initialization of priv member to 0.
11848         * src/emacs-module.c: (module_vec_set, module_vec_get, module_vec_size)
11850 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
11852         Prefer signed integer types in module code
11854         Generally speaking, at the C level the Emacs source code prefers
11855         signed types like ‘ptrdiff_t’ to unsigned types like ‘size_t’,
11856         partly to avoid the usual signedness confusion when comparing values.
11857         Change the module API to follow this convention.
11858         Use ‘int’ for small values that can’t exceed INT_MAX.
11859         * modules/mod-test/mod-test.c (Fmod_test_globref_make)
11860         (Fmod_test_string_a_to_b, Fmod_test_vector_fill)
11861         (Fmod_test_vector_eq):
11862         * src/emacs-module.c (struct emacs_value_frame)
11863         (module_make_global_ref, module_free_global_ref)
11864         (module_copy_string_contents, module_make_string)
11865         (module_vec_set, module_vec_get, module_vec_size):
11866         * src/emacs-module.h (struct emacs_runtime, struct emacs_env_25):
11867         * src/lread.c (suffix_p):
11868         Prefer signed to unsigned integer types.
11870 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
11872         Omit ‘const’ on locals
11874         Remove ‘const’ qualifier from locals that were newly added.
11875         We don’t normally bother declaring locals with ‘const’ even
11876         though they are not modified, for the same reason we don’t
11877         bother declaring them with ‘register’ even though their
11878         addresses are not taken; the advantage in compile-time
11879         checking isn’t worth the loss of readability.
11880         * modules/mod-test/mod-test.c (Fmod_test_non_local_exit_funcall)
11881         (Fmod_test_vector_fill, Fmod_test_vector_eq):
11882         * src/emacs-module.c (MODULE_SETJMP_1)
11883         (module_make_global_ref, module_free_global_ref)
11884         (module_non_local_exit_get, module_make_function)
11885         (module_extract_integer, module_extract_float)
11886         (module_get_user_ptr, module_set_user_ptr)
11887         (module_get_user_finalizer, module_set_user_finalizer)
11888         (module_vec_get, Fmodule_call)
11889         (module_non_local_exit_signal_1)
11890         (module_non_local_exit_throw_1, lisp_to_value)
11891         (finalize_storage, allocate_emacs_value, mark_modules)
11892         (module_handle_signal, module_handle_throw)
11893         (module_format_fun_env):
11894         * src/eval.c (push_handler, push_handler_nosignal)
11895         (init_handler):
11896         * src/lread.c (suffix_p):
11897         Omit unnecessary ‘const’.
11899 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
11901         Prefer intmax_t to int64_t in module code
11903         * modules/mod-test/mod-test.c (sum, Fmod_test_sum):
11904         * src/emacs-module.c (module_extract_integer)
11905         (module_make_integer):
11906         * src/emacs-module.h (struct emacs_env_25):
11907         Prefer intmax_t to int64_t.  This doesn’t change the generated
11908         code on any of the machines Emacs currently ports to, but it’s
11909         at least in theory more future-proof as C99 doesn’t guarantee
11910         that int64_t exists.
11912 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
11914         Rename module.c to emacs-module.c, etc.
11916         * src/emacs-module.c: Rename from src/module.c.
11917         * src/emacs-module.h: Rename from src/module.h.
11918         All uses changed.
11920 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
11922         Fix minor module problems found by static checking
11924         * src/dynlib.c (dynlib_close): #ifdef out for now, as it’s not used.
11925         * src/eval.c, src/lisp.h (lisp_eval_depth): Now static.
11926         * src/module.c (Fmodule_load): Fix pointer signedness bug.
11927         (Fmodule_call): Tell GCC that the default case is unreachable.
11929 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
11931         Style fixes for indenting etc. in module code
11933         This is mostly indenting and spacing changes.  Also, remove
11934         some unnecessary static decls instead of bothering to reindent them.
11935         * src/module.h (EMACS_EXTERN_C_BEGIN): Remove, and do this inline,
11936         as most other Emacs files do for this sort of thing.
11938 2015-11-19  Eli Zaretskii  <eliz@gnu.org>
11940         Minor improvements in modules testing Makefile
11942         * modules/mod-test/Makefile (EMACS, SO): New variables.
11943         (CFLAGS): When SO = dll, don't use -fPIC.
11944         (check): New target, runs the test.
11946 2015-11-19  Eli Zaretskii  <eliz@gnu.org>
11948         * .gitignore: Add "*.dll".
11950 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
11952         Migrate modules/.gitignore into .gitignore
11954         * .gitignore: Add former contents of modules/.gitignore.
11955         * modules/.gitignore: Remove.
11957 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
11959         Add copyright notices to module code
11961         Put them in the usual format for GNU Emacs copyright notices.
11963 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
11965         Rename emacs_module.h to module.h
11967         * src/module.h: Rename from src/emacs_module.h.
11968         All uses changed.
11970 2015-11-19  Juanma Barranquero  <lekktu@gmail.com>
11972         * src/module.c (Fmodule_load): Remove unused vars `doc_name', `args'
11974         * src/lread.c (Fload): Remove unused variable `size'
11976 2015-11-19  Alan Mackenzie  <acm@muc.de>
11978         src/keyboard.c (pre-command-hook): Fix typo in doc string: "pre" -> "post".
11980 2015-11-18  Dmitry Gutov  <dgutov@yandex.ru>
11982         Prioritize looking inside vc-parent-buffer over log-view-mode fallback
11984         * lisp/vc/vc.el (vc-deduce-fileset): Prioritize looking inside
11985         vc-parent-buffer over log-view-mode fallback (bug#21955).
11987 2015-11-18  Alan Mackenzie  <acm@muc.de>
11989         lisp/isearch.el: Eliminate macro isearch-call-message, replacing with funcall.
11991 2015-11-18  Ken Brown  <kbrown@cornell.edu>
11993         * configure.ac (LIBMODULES): Don’t define on Cygwin
11995 2015-11-18  Eli Zaretskii  <eliz@gnu.org>
11997         Fix MS-Windows build --with-modules
11999         * src/module.c: Reformat copyright commentary.
12000         (module_vec_get): Use explicit cast to size_t to avoid compiler
12001         warning in 32-bit builds.
12002         (check_main_thread) [WINDOWSNT]: Fix letter-case in Windows APIs.
12003         Compare thread IDs directly, as GetThreadId is not available
12004         before Windows Vista.
12005         (check_main_thread) [WINDOWSNT]: Duplicate the thread handle
12006         without using APIs and constants not available on XP and older
12007         systems.  Obtain and store the thread ID as well.
12009 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
12010             Philipp Stephani  <phst@google.com>
12012         Add dynamic module test and helper script
12014         Add 'modhelp.py' script (python2) to automate module testing and
12015         module generation.
12017         To build and test all modules in the modules/ dir
12018           $ ./modhelp.py test
12020         To generate a module from template code (good starting point)
12021           $ ./modhelp init mynewtestmodule
12023         See the script -h option for more documentation.
12025         * modules/modhelp.py: New module helper script.
12026         * modules/mod-test/Makefile: New file. Makefile for the test module.
12027         * modules/mod-test/mod-test.c: New file. Test module source file.
12028         * modules/mod-test/test.el: New file. ert test suite for the test module.
12029         * modules/.gitignore: New file. Local .gitignore file.
12031 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
12033         Make 'Fload' look for modules
12035         'Fload' can now load dynamic modules. This also makes 'require' work.
12037         * src/lread.c:
12038           (suffix_p): New function.
12039           (Fload): Use 'suffix_p'.  Call 'Fmodule_load' when we try to load a file
12040           with a module suffix.
12041           (syms_of_lread): Append module suffix to 'Vload_suffixes'.
12043 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
12044             Philipp Stephani  <phst@google.com>
12046         Add dynamic module module support
12048         * configure.ac: Add '--with-modules' option.  Conditionally add
12049           dynlib.o and module.o to the list of objects.  Add any system
12050           specific flags to the linker flags to support dynamic libraries.
12051         * m4/ax_gcc_var_attribute.m4: Add autoconf extension to test gcc
12052           attributes.
12053         * src/Makefile.in: Conditionally add module objects and linker flags.
12054         * src/alloc.c (garbage_collect_1): protect module local values from
12055           GC.
12056         * src/lisp.h: Add 'module_init' and 'syms_of_module' prototypes.
12057         * src/emacs_module.h: New header file included by modules.  Public
12058           module API.
12059         * src/module.c: New module implementation file.
12061 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
12063         Add new User Pointer (User_Ptr) type
12065         * src/lisp.h: Add new Lisp_Misc_User_Ptr type.
12066         (XUSER_PTR): New User_Ptr accessor.
12067         * src/alloc.c (make_user_ptr): New function.
12068         (mark_object, sweep_misc): Handle Lisp_Misc_User_Ptr.
12069         * src/data.c (Ftype_of): Return 'user-ptr' for user pointer.
12070         (Fuser-ptrp): New user pointer type predicate function.
12071         (syms_of_data): New 'user-ptrp', 'user-ptr' symbol.  New 'user-ptrp'
12072         subr.
12073         * src/print.c (print_object): Add printer for User_Ptr type.
12075 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
12076             Philipp Stephani  <phst@google.com>
12078         Add portable layer for dynamic loading
12080         * src/dynlib.h: New file.
12081         * src/dynlib.c: New file.
12083 2015-11-18  Philipp Stephani  <phst@google.com>
12085         Add catch-all & no-signal version of PUSH_HANDLER
12087         Ground work for modules. Add a non-signaling version of PUSH_HANDLER and
12088         a new "catch-all" handler type.
12090         * src/eval.c (init_handler, push_handler, push_handler_nosignal): New
12091           functions.
12092         * src/fns.c (hash_remove_from_table): Expose function public.
12093         * src/lisp.h: New handler type, define macro to push_handler call.
12095 2015-11-18  Ken Brown  <kbrown@cornell.edu>
12097         Silence byte-compiler warning
12099         * lisp/server.el (server-process-filter): Silence byte-compiler
12100         warning.
12102 2015-11-18  Paul Eggert  <eggert@cs.ucla.edu>
12104         Quote symbols in docstrings using `'
12106         Be more systematic about quoting symbols `like-this' rather than
12107         `like-this or 'like-this' in docstrings.  This follows up Artur
12108         Malabarba's email in:
12109         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01647.html
12111 2015-11-18  Peder O. Klingenberg  <peder@klingenberg.no>
12113         Fix savegames in dunnet
12115         * lisp/play/dunnet.el (dun-rot13): Use the standard rot13-region instead
12116           of separate implementation.
12118 2015-11-18  Artur Malabarba  <bruce.connor.am@gmail.com>
12120         * lisp/emacs-lisp/package.el (package--with-response-buffer):
12122         Ensure we're at the start of the buffer before searching for
12123         the end of headers.
12125 2015-11-17  Xue Fuqiao  <xfq.free@gmail.com>
12127         * admin/release-process: Improve wording.
12129 2015-11-17  Paul Eggert  <eggert@cs.ucla.edu>
12131         Fix docstring quoting problems with ‘ '’
12133         Problem reported by Artur Malabarba in:
12134         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01513.html
12135         Most of these fixes are to documentation; many involve fixing
12136         longstanding quoting glitches that are independent of the
12137         recent substitute-command-keys changes.  The changes to code are:
12138         * lisp/cedet/mode-local.el (mode-local-augment-function-help)
12139         (describe-mode-local-overload):
12140         Substitute docstrings before displaying them.
12141         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
12142         Quote the generated docstring for later substitution.
12144 2015-11-17  Eli Zaretskii  <eliz@gnu.org>
12146         Improve configure --help text for wide ints
12148         * configure.ac (wide-int): Clarify user-level advantages and
12149         disadvantages.
12151 2015-11-17  Stephen Leake  <stephen_leake@stephe-leake.org>
12153         Improve doc string
12155         * lisp/progmodes/xref.el (xref-backend-references): Improve doc string.
12157 2015-11-17  Paul Eggert  <eggert@cs.ucla.edu>
12159         eval_sub followed dangling pointer when debugging
12161         Problem reported by Pip Cet (Bug#21245).
12162         This bug could occur in eval_sub if the C compiler reused
12163         storage associated with the ‘argvals’ local after ‘argvals’
12164         went out of scope, and if the Elisp debugger stopped on Elisp
12165         function exit and accessed ‘argvals’.  It could also occur if
12166         a variadic function was called with so many arguments (over
12167         2048 args on x86-64) that SAFE_ALLOCA_LISP called malloc, then
12168         SAFE_FREE freed the arguments, then the memory manager used
12169         the storage for other purposes, then the debugger accessed the
12170         arguments.
12171         * src/eval.c (eval_sub): Declare ‘argvals’ at top level of
12172         function body.  Simplify local decls.
12173         When allocating args via SAFE_ALLOCA, call
12174         debugger before invoking SAFE_FREE, as the debugger needs
12175         access to the args.
12176         (eval_sub, apply_lambda): Rework to avoid need for
12177         set_backtrace_debug_on_exit hack.  This is cleaner,
12178         and should work better with buggy custom debuggers.
12180 2015-11-16  Daiki Ueno  <ueno@gnu.org>
12182         * lisp/image-mode.el: Support encrypted file
12184         (image-toggle-display-image): Read content from the buffer instead
12185         of the file, if the buffer holds a decrypted data.  (Bug#21870)
12187 2015-11-16  Paul Eggert  <eggert@cs.ucla.edu>
12189         ELF unexec: align section header
12191         This ports the recent unexelf.c changes to Fedora x86-64
12192         when configured with GCC’s -fsanitize=undefined option.
12193         * src/unexelf.c (unexec): Align new_data2_size to a multiple
12194         of ElfW (Shdr)’s alignment, so that NEW_SECTION_H returns a
12195         pointer aligned appropriately for its type.
12197 2015-11-16  Andreas Schwab  <schwab@linux-m68k.org>
12199         Do more checks on bytecode objects (Bug#21929)
12201         * src/eval.c (funcall_lambda): Check size of compiled function
12202         object.
12203         (Ffetch_bytecode): Likewise.
12205 2015-11-16  Johan Bockgård  <bojohan@gnu.org>
12207         pcase.el: Fix edebugging of backquoted cons patterns
12209         * lisp/emacs-lisp/pcase.el (pcase-QPAT): Fix edebugging of backquoted
12210         cons patterns. (Bug#21920)
12212 2015-11-16  Paul Eggert  <eggert@cs.ucla.edu>
12214         Improve fix for regex reentrancy abort
12216         Suggested by Stefan Monnier (Bug#21688).
12217         * src/syntax.c (update_syntax_table_forward):
12218         Remove recently-added PROPERTIZE arg, and assume it is true.
12219         All callers changed.
12220         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
12221         Invoke update_syntax_table directly.
12223 2015-11-16  Artur Malabarba  <bruce.connor.am@gmail.com>
12225         * lisp/faces.el (faces--attribute-at-point): Use `face-list-p'
12227         * lisp/emacs-lisp/package.el (package--with-response-buffer): Missing require
12229         * lisp/emacs-lisp/nadvice.el (add-function): Escape quote
12231 2015-11-15  Vasily Korytov  <vasily.korytov@yahoo.com>
12233         Recognize .rbw and .pyw files (bug#18753)
12235         * lisp/progmodes/python.el (auto-mode-alist):
12236         Recognize .pyw files.
12238         * lisp/progmodes/ruby-mode.el (auto-mode-alist):
12239         Recognize .rbw files.
12241 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
12243         Fix ruby-mode auto-mode-alist entry
12245         * lisp/progmodes/ruby-mode.el (auto-mode-alist): Add grouping
12246         around the extensions (bug#21257).
12248 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
12250         Fix etags completion near eob
12252         * lisp/progmodes/etags.el (tags-completion-at-point-function):
12253         Use `goto-char', to avoid the end-of-buffer error (bug#20061).
12255 2015-11-15  Alan Mackenzie  <acm@muc.de>
12257         De-pessimize detection of C++ member initialization lists.
12259         list/progmodes/cc-engine.el (c-back-over-list-of-member-inits): New macro.
12260         (c-back-over-member-initializers): Reformulate such that c-at-toplevel-p
12261         is only called when a construct "looks right" rather than continually.
12262         (c-guess-basic-syntax, CASE 5R): Add a check for the mode being C++ Mode.
12264 2015-11-15  Stephen Leake  <stephen_leake@stephe-leake.org>
12266         Improve a few doc strings, comments
12268         * lisp/cedet/cedet-global.el (cedet-gnu-global-expand-filename):
12269         * lisp/cedet/ede/locate.el (ede-locate-base):
12270         * lisp/cedet/semantic/symref.el (semantic-symref-calculate-rootdir):
12271         * src/fns.c (Fdelq): Improve doc string.
12273         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Add FIXME.
12275 2015-11-15  Anders Lindgren  <andlind@gmail.com>
12277         Enhance NSTRACE (trace output for NextStep).
12279         Trace can be disabled for groups of functions. By default, event
12280         functions and functions that generate lots of output are disabled.
12282         Trace output of Objective-C functions now use the "[ClassName
12283         parameter:]" form.
12285         * src/nsterm.h (NSTRACE_ALL_GROUPS, NSTRACE_GROUP_EVENTS)
12286         (NSTRACE_GROUP_UPDATES, NSTRACE_GROUP_FRINGE, NSTRACE_GROUP_COLOR)
12287         (NSTRACE_GROUP_GLYPHS, NSTRACE_GROUP_FOCUS): New macros,
12288         controlling in which function groups trace should be active.
12289         (NSTRACE_WHEN): Support for silencing a function, this also
12290         silencing all called functions.
12291         (NSTRACE_UNSILENCE): New macro, used to re-enable trace.
12292         (NSTRACE_FMT_FSTYPE, NSTRACE_ARG_FSTYPE): New macros, used to
12293         print the full screen state in NSTRACE functions.
12295         * src/nsterm.m (nstrace_depth, nstrace_num): Made volatile as they
12296         can be accessed from multiple threads.
12297         (nstrace_enabled_global): New variable, when FALSE, trace is
12298         silenced.
12299         (nstrace_restore_global_trace_state): New function, used to
12300         restore `nstrace_enabled_global' at end of block.
12301         ([EmacsView setFrame:], [EmacsWindow setFrame:display:])
12302         ([EmacsWindow setFrame:display:animation:])
12303         ([EmacsWindow setFrameTopLeftPoint:]): New functions, print trace
12304         and call corresponding super function.
12305         (Many functions): Add or enhance trace output.
12307         * src/nsimage.m (ns_image_from_file): Enhanced trace output.
12309         * src/nsfns.m (x_set_tool_bar_lines): Add trace output.
12311         * src/nsmenu.m ([EmacsToolbar setVisible:]): New function, print trace
12312         and call corresponding super function.
12314 2015-11-15  Anders Lindgren  <andlind@gmail.com>
12316         Fixed a toolbar related issue on OS X.
12318         Earlier, when toggling the tool-bar in a maximized frame, the
12319         frame size didn't match the number of text lines, leaving an
12320         unused area at the bottom of the frame.
12322         * nsfns.m (x_set_tool_bar_lines): Exit maximized and full height
12323         fullscreen modes when tool bar is disabled.
12325 2015-11-15  Anders Lindgren  <andlind@gmail.com>
12327         Fixed OS X 10.6.8 build issue (bug#21862).
12329         * src/nsterm.h (EmacsView): Add missing declarations.
12330         * src/nsterm.m ([EmacsView windowDidBecomeKey]): New method, like
12331         the standard method but without the notification parameter.
12332         Intended to be used for direct calls.
12333         ([EmacsView windowDidEnterFullScreen]): Call the non-notification
12334         version of `windowDidBecomeKey'. Made the notification method call
12335         the non-notification method instead of the vice versa.
12336         (NSWindowDidEnterFullScreenNotification): Deleted, no longer
12337         needed.
12339 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
12341         * lisp/faces.el (faces--attribute-at-point): Fix an issue
12343         Previous code would signal an error when the face at point was
12344         a manually built list of attributes such as '(:foregroud "white").
12346         * test/automated/faces-tests.el (faces--test-color-at-point): Add a test
12348 2015-11-15  Paul Eggert  <eggert@cs.ucla.edu>
12350         Fix regex abort when it tries to reenter itself
12352         Problem reported by Ken Raeburn.
12353         Solution suggested by Stefan Monnier (Bug#21688).
12354         * src/regex.c (re_match_2_internal):
12355         Use new _FAST functions to avoid regex code reentering itself.
12356         * src/syntax.c (update_syntax_table_forward): New arg PROPERTIZE.
12357         All callers changed.
12358         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST)
12359         (UPDATE_SYNTAX_TABLE_FAST): New inline functions.
12361 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
12363         Improve Ruby 1.9-style keyword keys highlighting
12365         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords):
12366         Handle required keyword arguments (bug#21367).
12367         And highlight the colon together with the name.
12369 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
12371         Unify the absolutely equal xref-backend-references implementations
12373         * lisp/progmodes/elisp-mode.el (xref-backend-references):
12374         Remove.
12376         * lisp/progmodes/etags.el (xref-backend-references):
12377         Remove.
12379         * lisp/progmodes/xref.el (xref-backend-references):
12380         Define the default implementation.
12382 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
12384         Update project-find-regexp for the new xref API
12386         * lisp/progmodes/project.el (project--read-regexp):
12387         Update to use the new xref API methods.
12389         * lisp/progmodes/xref.el (xref-find-backend): Autoload.
12391 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
12393         Fix replacing a match with a shorter string
12395         In effect, partially reverting fe973fc.
12397         * lisp/progmodes/xref.el (xref-query-replace): Store the end
12398         of each match as a marker again, instead of length.
12399         (xref--query-replace-1): Update accordingly.
12401 2015-11-14  Artur Malabarba  <bruce.connor.am@gmail.com>
12403         * lisp/progmodes/xref.el (xref-pop-marker-stack): Downgrade errors
12405         Signal user-errors instead.
12407 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
12409         Document 'describe-symbol'
12411         * doc/emacs/help.texi (Help Summary): Mention "C-h o".
12412         (Name Help): Document "C-h o" and describe-symbol.
12414         * lisp/help-fns.el (describe-symbol): Doc fix.
12416 2015-11-14  Paul Eggert  <eggert@cs.ucla.edu>
12418         Change test name to avoid spellcheck issue.
12420 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
12422         Avoid signaling an error in 'describe-symbol'
12424         * lisp/help-fns.el (describe-symbol): Avoid errors when the symbol
12425         exists as a function/variable/face/etc., but is undocumented.
12427         * test/automated/help-fns.el (help-fns-test-describe-symbol): New
12428         test.
12430 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
12432         * INSTALL (--with-cairo): Document this new configure option.
12434 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
12436         Document that GNU Make >= 3.81 is required to build Emacs
12438         * doc/lispref/internals.texi (Building Emacs): Document that GNU
12439         Make 3.81 or later is now required.
12441 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
12443         * CONTRIBUTE (Branches): Improve wording for back-ported commits.
12445 2015-11-13  l3thal  <kwhite@gnu.org>
12447         Merge branch 'erc-async-reconnect' into emacs-25
12449         Reconnect asynchronously.
12451 2015-11-11  Alan Mackenzie  <acm@muc.de>
12453         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
12455         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
12456         Windows" and new @defun selected-window-group.
12457         (Window Start and End): Describe new &optional parameter GROUP and
12458         ...-group-function for window-start, window-end, set-window-start, and
12459         pos-visible-in-window-p.
12460         (Textual Scrolling) Describe the same for recenter.
12461         doc/lispref/positions.texi (Screen Lines): Describe the same for
12462         move-to-window-line.
12464         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
12465         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
12466         new optional parameter "group".  At the beginning of each, check whether the
12467         corresponding ...-group-function is set to a function, and if so execute this
12468         function in place of the normal processing.
12469         (syms_of_window): Define symbols for the six new variables below.
12470         (window-start-group-function, window-end-group-function)
12471         (set-window-start-group-function, recenter-group-function)
12472         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
12473         New permanent local buffer local variables.
12474         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
12475         Fpos_visible_in_window_p.
12477         lisp/window.el (selected-window-group-function): New permanent local buffer
12478         local variable.
12479         (selected-window-group): New function.
12481         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
12482         enable, kill them at mode disable.  Add/remove follow-after-change to/from
12483         after-change-functions.
12484         (follow-start-end-invalid): New variable.
12485         (follow-redisplay): Manipulate follow-start-end-invalid.
12486         (follow-after-change, follow-window-start, follow-window-end)
12487         (follow-set-window-start, follow-pos-visible-in-window-p)
12488         (follow-move-to-window-line, follow-sit-for): New functions.
12490         lisp/isearch.el (isearch-call-message): New macro.
12491         (isearch-update, with-isearch-suspended, isearch-del-char)
12492         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
12493         (with-isearch-suspended): Rearrange code such that isearch-call-message is
12494         invoked before point is moved.
12495         (isearch-message): Add comment about where point must be at function call.
12496         (isearch-search): Remove call to isearch-message.
12497         (isearch-lazy-highlight-window-group): New variable.
12498         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
12499         the battery of tests to ...
12500         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
12501         Note: (sit-for 0) is still called.
12502         (isearch-lazy-highlight-update): Check membership of
12503         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
12504         property.
12505         (isearch-update, isearch-done, isearch-string-out-of-window)
12506         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
12507         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
12508         (isearch-lazy-highlight-update): Call the six amended primitives (see
12509         src/window.c above) with the new `group' argument set to t, to cooperate
12510         with Follow Mode.
12512 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
12514         * shr.el (shr-descend): Allow using lambdas in external functions.
12516 2015-12-25  Stefan Monnier  <monnier@iro.umontreal.ca>
12518         * admin/gitmerge.el: Tweaks that seemed necessary
12520         * admin/gitmerge.el (gitmerge-skip-regexp): Remove "sync".
12521         (gitmerge-maybe-resume): Provide explicit empty commit message.
12523 2015-12-25  Łukasz Stelmach  <stlman@poczta.fm>  (tiny change)
12525         Use a different port for TLS erc
12527         * lisp/erc/erc.el (erc-default-port-tls): New variable
12528         (bug#19497).
12529         * lisp/erc/erc.el (erc-tls): Use it.
12531 2015-12-25  Alain Schneble  <a.s@realize.ch>
12533         Make relative URL parsing and resolution consistent with RFC 3986 (bug#22044)
12535         * test/lisp/url/url-parse-tests.el: Add tests covering url-generic-parse-url.
12536         * test/lisp/url/url-expand-tests.el: Add tests covering url-expand-file-name.
12537         * lisp/url/url-parse.el (url-generic-parse-url): Keep empty fragment
12538         information in URL-struct.
12539         * lisp/url/url-parse.el (url-path-and-query): Do not artificially turn empty
12540         path and query into nil path and query, respectively.
12541         * lisp/url/url-expand.el (url-expander-remove-relative-links): Do not turn
12542         empty path into an absolute ("/") path.
12543         * lisp/url/url-expand.el (url-expand-file-name): Properly resolve
12544         fragment-only URIs. Do not just return them unchanged.
12545         * lisp/url/url-expand.el (url-default-expander): An empty path in the relative
12546         reference URI should not drop the last segment.
12548 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12550         Let url use default file modes when copying files
12552         * lisp/url/url-handlers.el (url-copy-file): Use default file
12553         modes when copying files (bug#11400).
12555 2015-12-25  Devon Sean McCullough  <Emacs-Hacker2012@jovi.net>
12557         Doc fix for url-http
12559         * lisp/url/url-http.el (url-http): Document better return values
12560           (bug#13187) (tiny change)
12562 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12564         * eww.el (eww-display-html): Support <button> tags (bug#20485).
12566 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12568         Made ffap-url-p a defun instead of a defsubst
12570         * lisp/ffap.el (ffap-url-p): Change from defsusbt to defun,
12571         since there doesn't seem to be much of a reason for it to be a
12572         defsubst (bug#18203).
12574 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12576         Add a command to view files in the browser to dired
12578         * lisp/dired.el (dired-mode-map): Add the `W' command
12579         (bug#18810).
12581 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12583         Allow http://user:pass@foo/ URLs again
12585         * lisp/url/url-auth.el (url-basic-auth): Allow explicit
12586         user/passwords in URLs (bug#19046).
12588 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12590         * eww.el (eww-mode-map): Fix command name of eww-toggle-colors.
12592 2015-12-25  Samer Masterson  <samer@samertm.com>
12594         Autoload url-insert-buffer-contents
12596         * lisp/url/url-handlers.el: Add autoload cookie so that
12597         `package-list-packages' doesn't bug out (bug#21927) (tiny change)
12599 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12601         Allow toggling colors in eww
12603         * doc/misc/eww.texi (Basics): Mention "C".
12605         * lisp/net/eww.el (eww-toggle-colors): New command and keystroke.
12607         * lisp/net/shr.el (shr-use-colors): New variable.
12608         (shr-colorize-region): Use it.
12610 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12612         Follow meta refresh tags in eww
12614         * eww.el (eww-tag-meta): Follow meta refresh tags (bug#22234).
12616 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12618         More eww file name coding fixes
12620         * eww.el (eww-decode-url-file-name): Use the base coding
12621         system to check for encodability.
12623 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12625         Always save eww history
12627         * eww.el (eww-setup-buffer): Always save history, even when
12628         called from outside the eww buffer (bug#19638).
12630 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12632         Default web pages to right-to-left
12634         * eww.el (eww-mode): Most web pages are left-to-right, so make
12635         that the default (bug#19801).
12637         * shr.el (shr-tag-html): Respect "dir" attributes
12638         (left-to-right, right-to-left).
12640 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12642         Make toggling checkboxes work again
12644         * eww.el (eww-update-field): Make toggling checkboxes work
12645         again (bug#21881).
12647 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12649         Don't store cookies with empty names
12651         * lisp/url/url-cookie.el (url-cookie-store): Refuse to store
12652         cookies with empty names (bug#21936).
12654 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12656         * shr.el (shr-descend): Stop rendering before we run out of
12657         specpdl room (bug#22117).
12659 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12661         Use cl-reduce, not reduce.
12663 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12665         Allow several <tbody> tags in shr
12667         * shr.el (shr-table-body): New function to find the real body
12668         of a table.
12669         (shr-tag-table): Use it to render several <tbody> tags in a
12670         table (bug#22170).
12672 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
12674         Make prettier unique file names in eww
12676         (eww-make-unique-file-name): Make unique file names by making
12677         files like foo(2).jpg instead of foo(1)(2).jpg.
12679 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
12681         Decode hex-encoded URLs before using them as file names
12683         * eww.el (eww-decode-url-file-name): New function.
12684         (eww-download-callback): Use it to decode file names before
12685         saving them.
12687 2015-12-24  Ashish SHUKLA  <ashish.is@lostca.se>  (tiny change)
12689         * doc/misc/emacs-gnutls.texi (Help For Users): Document FreeBSD bundle.
12690         * lisp/net/gnutls.el (gnutls-trustfiles): Add FreeBSD cert bundle.
12692 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
12694         Allow overriding shr functions from eww
12696         * eww.el (eww-display-html): Allow overriding elements in
12697         `shr-external-rendering-functions'.
12699 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
12701         Ignore invalid SVG images
12703         * shr.el (shr-tag-svg): Ignore SVG images that have no width
12704         or height, because these can't be displayed by ImageMagick,
12705         anyway.
12707 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
12709         shr table rendering fix
12711         * shr.el (shr-tag-table): Allow rendering body-less tables
12712         that have headers.
12714 2015-12-22  Sam Steingold  <sds@gnu.org>
12716         clipboard should still work even if interprogram-* is disabled
12718         (clipboard-yank): When `interprogram-cut-function' is nil,
12719         bind it to `gui-selection-value' - the default value.
12720         (clipboard-kill-region, clipboard-kill-ring-save): When
12721         `interprogram-paste-function' is nil, bind it to `gui-select-text' -
12722         the default value.
12724 2015-12-18  Phillip Lord  <phillip.lord@russet.org.uk>
12726         Fix bootstrap issue with dired-loaddefs
12728         * lisp/dired.el: Autoloads for secondary files loaded optionally.
12730 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
12732         dired generate autoloads to non-versioned file.
12734         * lisp/dired.el: Remove autoloads.
12735         * lisp/Makefile.in: Add dired to autogenel.
12736         * lisp/dired-aux.el,lisp/dired-x.el: Update file local.
12737         * test/lisp/dired-tests.el: Add new test.
12739 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
12741         eieio generate autoloads to non-versioned file.
12743         * lisp/Makefile.in: eieio-loaddefs add to autogenel.
12744         * lisp/emacs-lisp/eieio.el,lisp/emacs-lisp/eieio-core.el:
12745           Remove autoloads.
12746         * lisp/emacs-lisp/eieio-compat.el,lisp/emacs-lisp/eieio-custom.el,
12747           lisp/emacs-lisp/eieio-opt.el: Update file local.
12748         * test/lisp/emacs-lisp/eieio-tests/eieio-tests.el: New test.
12750 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
12752         htmlfontify generate autoload to non-versioned file.
12754         * lisp/Makefile.in: Add htmlfontity-loaddefs to autogenel.
12755         * lisp/hfy-cmap.el: Update file local.
12756         * lisp/htmlfontify.el: Remove autoloads, add require.
12757         * test/lisp/htmlfontify-tests.el: Test autoload functionality.
12759 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
12761         ibuffer generate autoloads to non-versioned file.
12763         * lisp/Makefile.in: Add ibuffer-loaddefs to autogenel.
12764         * lisp/ibuf-ext.el: Update file local.
12765         * lisp/ibuffer.el: Remove autoloads and add a require.
12766         * test/lisp/ibuffer-tests.el: Test that autoload is working.
12768 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
12770         rmail generate autoloads to non-versioned file.
12772         * lisp/Makefile.in: Add rmail-loaddefs.el to autogenel.
12773         * lisp/mail/rmail.el: Remove autoloads, add require.
12774         * lisp/mail/rmailedit.el,lisp/mail/rmailkwd.el,
12775           lisp/mail/rmailmm.el,lisp/mail/rmailmsc.el,
12776           lisp/mail/rmailsort.el,lisp/mail/rmailsum.el,
12777           lisp/mail/undigest.el: Update file-local.
12778         * test/lisp/mail/rmail-tests.el:
12780 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
12782         Add autoload-force target.
12784         * lisp/Makefile.in (autoload-force): New target.
12786 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
12788         ps-print generate autoloads to non versioned file.
12790         * lisp/Makefile.in: Add ps-print-loaddefs.el to autogen list.
12791         * lisp/ps-print.el: Remove autoloads.
12792         * lisp/ps-mule.el: Update file-local.
12793         * test/lisp/ps-print-tests.el: Test autoload functionality.
12795 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
12797         reftex generate autoloads to non versioned file.
12799         * lisp/Makefile.in: Add reftex-loaddefs to autogen files
12800         * lisp/textmodes/reftex.el: Remove autoloads.
12801         * lisp/textmodes/reftex-auc.el,lisp/textmodes/reftex-cite.el,
12802           lisp/textmodes/reftex-dcr.el,lisp/textmodes/reftex-global.el,
12803           lisp/textmodes/reftex-index.el,lisp/textmodes/reftex-parse.el,
12804           lisp/textmodes/reftex-ref.el,lisp/textmodes/reftex-sel.el,
12805           lisp/textmodes/reftex-toc.el: Update autoload file-local.
12806         * test/lisp/textmodes/reftex-tests.el: Add test of an autoloaded
12807           function.
12809 2015-12-07  Stefan Monnier  <monnier@iro.umontreal.ca>
12811         * lisp/calculator.el (calculator-define-key): Undo last change
12813         Make map argument mandatory instead (bug#22106).
12814         (calculator-add-operators): Pass the argument that's not optional any more.
12816 2015-12-03  Glenn Morris  <rgm@gnu.org>
12818         * Makefile.in: Avoid duplication.
12820         (have-tests): New rule.
12821         (check, check-maybe): Use it.
12823 2015-12-02  Phillip Lord  <phillip.lord@russet.org.uk>
12825         make check unconditional, check-maybe top-level.
12827          * Makefile.in: Add check-maybe target.
12828          * test/Makefile.in: Restore unconditional behaviour to make check.
12830 2015-12-01  Phillip Lord  <phillip.lord@russet.org.uk>
12832         Tests now support out-of-source-build.
12834          * tests/Makefile.in,test/make-test-deps.emacs-lisp: Remove assumptions
12835            about current working directory.
12837 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
12839         * lisp/emacs-lisp/let-alist.el: Now an Elpa :core package
12841 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
12843         Improve documentation and clean up.
12845          * test/Makefile.in: Improve documentation, use EMACS variable
12846            correctly, and clean up makefile rules.
12848 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
12850         Update file headers for name change.
12852          * (test/src/decompress-tests.el, test/src/alloc-tests.el): Update headers.
12854 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
12856         Test files renamed to new scheme.
12858          * (finalizer-tests.el): Now renamed alloc-tests.el
12859          * (zlib-tests.el): Now renamed decompress-tests.el.
12861 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
12863         Tests now depend on source files
12865          * test/Makefile.in: Include dependences from tests to source files.
12866          * test/make-test-deps.emacs-lisp: New file
12867          * .gitignore: Ignore generated make include file
12869 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
12871         * lisp/progmodes/which-func.el: Improve disabling the mode
12873         Use lexical-binding.
12874         (which-func-modes, which-func-non-auto-modes, which-func-maxout)
12875         (which-func, which-func-format): Remove redundant :group arg.
12876         (which-func-try-to-enable): New function.
12877         (which-func-ff-hook, which-function-mode): Use it.
12878         (mode-line-misc-info): Add ourselves here instead of in bindings.el.
12879         * lisp/bindings.el (mode-line-misc-info): Remove which-func-mode entry.
12881 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
12883         * lisp/calculator.el (calculator-define-key): Silence warning
12885         ...about unknown calculator-mode-map.
12887 2015-11-29  Eli Barzilay  <eli@barzilay.org>
12889         * lisp/calculator.el: more improvements and bugfixes.
12891         - Mark `calculator-paste-decimals' as obsolete.  (It wasn't having an
12892           effect anyway.)
12894         - Simplify `calculator-number-to-string' by throwing most of the work
12895           onto `number-to-string', leaving just some tweaks for decimal inputs.
12896           This leads to some minor changes, for example, pasting "1x1" in hex
12897           mode would warn that "x" is ignored and result in "11" (and it wasn't
12898           done in decimal mode), whereas now it just ignores everything from the
12899           "x" and on and result in a "1" just like in decimal input mode.  Also,
12900           overflows are left for `number-to-string' to deal with.
12902         - `calculator-paste' is very simple as a result.
12904         - Extend the simplified `calculator-paste': with a prefix argument it
12905           pastes a string as if the characters were entered.  This can be used
12906           to reduce expressions, but note that it's a simple literal operation,
12907           so precedence can be messed, a number can be paster while entering a
12908           number, spaces and newlines matter, etc.
12910         - Fix a minor bug where "e+" in hex mode wouldn't use "+" as an
12911           operator.
12913         - Fix a bug in `calculator-put-value': avoid grouping in the display
12914           that is used to construct `calculator-curnum'.  This would trigger
12915           when pasting or getting a value from a register in some radix mode
12916           with a large enough value.  Another fix: make the output radix equal
12917           the input one, otherwise numbers could be converted twice.
12919 2015-11-29  Eli Barzilay  <eli@barzilay.org>
12921         * lisp/calculator.el: Re-do key bindings.
12923         Use a helper function that arranges a parent keymap that binds alternate
12924         case keys so if some letter key is unbound and it's un/shifted version
12925         is, it will get used.  This makes the global-map trickery unnecessary.
12927         Also switch to passing strings that name keys through `kbd'.
12929 2015-11-29  Eli Barzilay  <eli@barzilay.org>
12931         * lisp/calculator.el: improve radix modes
12933         Fix prompt for some input radix with decimal output (eg, "BD" instead of
12934         the incorrect "B="); also, some minor docstring tweaks for these.
12936 2015-11-29  Eli Barzilay  <eli@barzilay.org>
12938         * lisp/calculator.el: better reading of register names
12940         Use `register-read-with-preview' with a dynamically bound
12941         `register-alist' and a proper preview function to read register names.
12943 2015-11-29  Eli Barzilay  <eli@barzilay.org>
12945         * lisp/calculator.el: General improvements
12947         Use things like `when', `unless', and `push'.
12949         Improve `calculator-last-input' so it doesn't barf when hitting `F1' in
12950         non-electric mode.
12952 2015-11-28  Michael Albinus  <michael.albinus@gmx.de>
12954         Fix a problem with gfilenotify in filenotify-tests.el
12956         * test/lisp/filenotify-tests.el
12957         (file-notify--test-expected-events): Remove.
12958         (file-notify--test-cleanup): Do not set that variable.
12959         (file-notify--test-with-events): EVENTS can also be a list of lists.
12960         (file-notify-test02-events, file-notify-test04-file-validity):
12961         Adapt expected result.
12963 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
12965         * .gitignore: Adjust to changes in 'test' directory structure.
12967 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
12969         Fix test/manual/etags/Makefile
12971         * test/manual/etags/Makefile (ETAGS_PROG, CTAGS_PROG): Adjust to
12972         changes in 'test' directory structure.
12974 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
12976         Exclude resource dirs from search for tests.
12978         * test/Makefile.in: Test file locations are now found with find
12979           rather than using finds native functions.
12981 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
12983         Add test targets without directory names.
12985          * (test/Makefile.in): Extend test_template to add two targets for each
12986            file.
12988 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
12990         * lisp/emacs-lisp/package.el: Require url-handlers
12992 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
12994         Move elisp-mode-tests to new function names.
12996          * test/lisp/progmodes/elisp-mode-tests.el (find-defsdefun-c-defvar-c,
12997          find-defs-defun-el-defvar-c): Call `elisp--xref-find-definitions'.
12999 2015-11-27  Juanma Barranquero  <lekktu@gmail.com>
13001         * lisp/emacs-lisp/package.el: Declare `url-insert-buffer-contents'
13003 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
13005         Merge branch 'feature/standard-test-location'
13007 2015-11-25  Stefan Monnier  <monnier@iro.umontreal.ca>
13009         * lisp/emacs-lisp/eieio.el: Add some default implementations
13011         (standard-class): Mark it obsolete.
13012         (slot-missing): Give it a default implementation.
13013         (destructor): Simplify and mark it obsolete.
13014         (object-print): Give it a default implementation.
13015         (eieio-change-class): Rename from change-class.
13016         (change-class): Redefine as obsolete alias.
13018 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
13020         Some final fixes in file notification before merging with master
13022         * lisp/filenotify.el (file-notify--rm-descriptor): Remove WHAT arg.
13023         (file-notify-callback): Improve check for `stopped' event.  Call
13024         `file-notify-rm-watch' rather than `file-notify--rm-descriptor'.
13025         (file-notify-add-watch): In case FILE is not a directory, call the
13026         file monitor for the kqueue backend.  Otherwise, call the
13027         directory monitor for the upper directory.
13029         * src/inotify.c (inotifyevent_to_event): Extract file name from
13030         watch_object if the event doesn't provide it.
13031         (Finotify_add_watch): Add file name to watch_object.
13033         * test/automated/file-notify-tests.el (file-notify--test-timeout):
13034         Use different timeouts for different libraries.
13035         (file-notify--test-with-events): Suppress lock files.  Flush
13036         outstanding events before running the body.
13037         (file-notify-test02-events, file-notify-test04-file-validity): Do
13038         not skip cygwin tests.  Add additional test for file creation.
13039         Adapt expected result for different backends.
13040         (file-notify-test03-autorevert): Some of the tests don't work for
13041         w32notify.
13042         (file-notify-test06-many-events): Rename into both directions.
13044 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
13046         Rework file notifications, kqueue has problems with directory monitors
13048         * lisp/filenotify.el (file-notify-add-watch): Call the native
13049         add-watch function on the file, not on the dir.
13051         * src/kqueue.c (kqueue_compare_dir_list): Make also bookkeeping
13052         about already deleted entries.
13054         * test/automated/auto-revert-tests.el
13055         (auto-revert-test01-auto-revert-several-files): Do not call "cp -f"
13056         since this deletes the target file first.
13058         * test/automated/file-notify-tests.el (file-notify--test-event-test):
13059         Make stronger checks.
13060         (file-notify-test01-add-watch, file-notify-test02-events)
13061         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
13062         Rewrite in order to call file monitors but directory monitors.
13063         (file-notify-test06-many-events): Ler rename work in both directions.
13065 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
13067         Continue with pending events
13069         * src/kqueue.c (pending_events): Remove global variable.
13070         (kqueue_compare_dir_list): Create `write' event for not used
13071         pending events.
13072         (globals_of_kqueue): Remove initialization of pending_events.
13074 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
13076         Improve loops in file-notify-test06-many-events
13078         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
13079         Use `read-event' pauses for the `write-file' loops; otherwise
13080         events are lost in inotify and gfilenotify cases.
13082 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
13084         Handle more complex rename operation in kqueue
13086         * src/kqueue.c (pending_events): New variable.
13087         (kqueue_compare_dir_list): Handle more complex rename operation.
13088         (globals_of_kqueue): Initialize pending_events.
13090         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
13091         Adapt expected events in the `rename-file' case.
13092         (file-notify-test06-many-events-remote): Declare.
13094 2015-11-25  Wolfgang Jenkner  <wjenkner@inode.at>
13096         New test with a larger number of events
13098         * test/automated/file-notify-tests.el (file-notify--test-with-events):
13099         Make timeout heuristically depend on the number of events.
13101         (file-notify-test06-many-events): Use it for new test.
13103 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
13105         Further fixes for kqueue
13107         * lisp/filenotify.el (file-notify-callback): Raise also event if
13108         directory name matches.
13109         (file-notify-add-watch): Add `create' to the flags for `kqueue'.
13111         * src/kqueue.c (kqueue_generate_event): Use watch_object as
13112         argument instead of ident.  Remove callback argument.  Adapt
13113         callees.  Check actions whether they are monitored flags.
13115         * test/automated/file-notify-tests.el (file-notify--test-library):
13116         New defun.
13117         (file-notify-test00-availability, file-notify-test02-events)
13118         (file-notify-test04-file-validity)
13119         (file-notify-test05-dir-validity): Use it.
13120         (file-notify-test02-events, file-notify-test04-file-validity): Add
13121         `read-event' calls between different file actions, in order to
13122         give the backends a chance to rais an event.  Needed especially
13123         for kqueue.  In case of deleting a directory, there are two
13124         `deleted' events.
13126 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
13128         Code cleanup of kqueue.c
13130         * src/kqueue.c (kqueue_directory_listing): Skip "." and "..".
13131         (kqueue_compare_dir_list): Do not loop when calling
13132         directory_files_internal.  Remove checks for "." and "..", this is
13133         done in kqueue_directory_listing now.
13134         (Fkqueue_add_watch): Check for proper emacs_open flags.
13136 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
13138         Doc changes for kqueue
13140         * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
13141         Fix some glitches in the example.
13143 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
13145         Finish implementation in kqueue.c
13147         * src/kqueue.c (kqueue_directory_listing, kqueue_callback):
13148         Simplify access to list.
13149         (kqueue_compare_dir_list): Simplify access to list.  Raise
13150         `delete' event if directory does not exist any longer.  Otherwise,
13151         wait until directory contents has changed.  Fix error in check.
13153 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
13155         * lisp/filenotify.el (file-notify-add-watch): Fix thinko.
13157 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
13159         More work on kqueue
13161         * lisp/filenotify.el (file-notify-callback): Handle also the
13162         `rename' event from kqueue.
13163         (file-notify-add-watch): Do not register an entry twice.
13165         * src/kqueue.c (kqueue_directory_listing): New function.
13166         (kqueue_generate_event): New argument FILE1.  Adapt callees.
13167         (kqueue_compare_dir_list): Rewrite in order to make it more robust.
13169 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
13171         Implement directory events
13173         * lisp/filenotify.el (file-notify-handle-event)
13174         (file-notify-callback): Remove traces.
13176         * src/kqueue.c: Include <sys/time.h>.
13177         (kqueue_generate_event, kqueue_compare_dir_list): New functions.
13178         (kqueue_callback): Use them.  Call kevent() with a zero timeout.
13179         (Fkqueue_add_watch): Adapt docstring.  Support directory events.
13180         Compute initial directory listing.  Close file descriptor in case
13181         of errors.
13182         (syms_of_kqueue): Declare Qcreate.
13184 2015-11-25  Wolfgang Jenkner  <wjenkner@inode.at>
13186         Build fixes for kqueue support
13188         * src/kqueue.c (Fkqueue_add_watch): O_BINARY is not a POSIX open(3)
13189         flag.
13191         * configure.ac (HAVE_KQUEUE): There is no pkg-config module for native
13192         kqueue on *BSD.
13194 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
13196         Continue kqueue implementation
13198         * lisp/filenotify.el (file-notify-handle-event)
13199         (file-notify-callback): Enable trace messages.
13201         * src/kqueue.c: Include also <sys/types.h>.
13202         (kqueue_callback): Remove watch in case of NOTE_DELETE or NOTE_RENAME.
13203         (Fkqueue_rm_watch, Fkqueue_valid_p): New functions.
13204         (syms_of_kqueue): Add them.
13206 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
13208         Work on kqueue
13210         * lisp/filenotify.el (file-notify--library)
13211         (file-notify-descriptors, file-notify-callback)
13212         (file-notify-add-watch, file-notify-rm-watch)
13213         (file-notify-valid-p): Add kqueue support.
13215         * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
13217 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
13219         Add kqueue support
13221         * configure.ac (--with-file-notification): Add kqueue.
13222         (top): Remove special test for "${HAVE_NS}" and
13223         ${with_file_notification}, this is handled inside gfilenotify
13224         tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
13225         instead of library specific variables.
13227         * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
13229         * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
13231         * src/kqueue.c: New file.
13233         * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
13235 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
13237         Update elisp-mode-tests for changed file location.
13239          * test/lisp/progmodes/elisp-mode-tests.el:
13241 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
13243         Exclude manual tests from Makefile
13245          * test/Makefile.in:
13247 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
13249         Move package test files to new directory.
13251          * test/lisp/emacs-lisp/package-tests.el: Update resoruce file location.
13252          * test/data/package: Moved to test/lisp/emacs-lisp/package-resources
13254 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
13256         Restore delete Makefiles and fix .gitignore.
13258          * .gitignore: Update Makefiles to changed locations
13259          * test/lisp/progmodes/flymake-resources/Makefile,
13260            test/manual/etags/Makefile,
13261            test/manual/etags/make-src/Makefile,
13262            test/manual/indent/Makefile: Restored and moved to new location.
13264 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
13266         Test infrastructure: updates after directory move
13268          * (test/Makefile.in): Support directories several levels deep.
13269          * (test/data/flymake): Rename to test/lisp/progmodes/flymake-resources.
13270          * (test/lisp/progmodes/flymake-tests.el): Support renamed resource directory.
13272 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
13274         Rename all test files to reflect source layout.
13276          * CONTRIBUTE,Makefile.in,configure.ac: Update to reflect
13277            test directory moves.
13278          * test/file-organisation.org: New file.
13279          * test/automated/Makefile.in
13280            test/automated/data/decompress/foo.gz
13281            test/automated/data/epg/pubkey.asc
13282            test/automated/data/epg/seckey.asc
13283            test/automated/data/files-bug18141.el.gz
13284            test/automated/data/flymake/test.c
13285            test/automated/data/flymake/test.pl
13286            test/automated/data/package/archive-contents
13287            test/automated/data/package/key.pub
13288            test/automated/data/package/key.sec
13289            test/automated/data/package/multi-file-0.2.3.tar
13290            test/automated/data/package/multi-file-readme.txt
13291            test/automated/data/package/newer-versions/archive-contents
13292            test/automated/data/package/newer-versions/new-pkg-1.0.el
13293            test/automated/data/package/newer-versions/simple-single-1.4.el
13294            test/automated/data/package/package-test-server.py
13295            test/automated/data/package/signed/archive-contents
13296            test/automated/data/package/signed/archive-contents.sig
13297            test/automated/data/package/signed/signed-bad-1.0.el
13298            test/automated/data/package/signed/signed-bad-1.0.el.sig
13299            test/automated/data/package/signed/signed-good-1.0.el
13300            test/automated/data/package/signed/signed-good-1.0.el.sig
13301            test/automated/data/package/simple-depend-1.0.el
13302            test/automated/data/package/simple-single-1.3.el
13303            test/automated/data/package/simple-single-readme.txt
13304            test/automated/data/package/simple-two-depend-1.1.el
13305            test/automated/abbrev-tests.el
13306            test/automated/auto-revert-tests.el
13307            test/automated/calc-tests.el
13308            test/automated/icalendar-tests.el
13309            test/automated/character-fold-tests.el
13310            test/automated/comint-testsuite.el
13311            test/automated/descr-text-test.el
13312            test/automated/electric-tests.el
13313            test/automated/cl-generic-tests.el
13314            test/automated/cl-lib-tests.el
13315            test/automated/eieio-test-methodinvoke.el
13316            test/automated/eieio-test-persist.el
13317            test/automated/eieio-tests.el
13318            test/automated/ert-tests.el
13319            test/automated/ert-x-tests.el
13320            test/automated/generator-tests.el
13321            test/automated/let-alist.el
13322            test/automated/map-tests.el
13323            test/automated/advice-tests.el
13324            test/automated/package-test.el
13325            test/automated/pcase-tests.el
13326            test/automated/regexp-tests.el
13327            test/automated/seq-tests.el
13328            test/automated/subr-x-tests.el
13329            test/automated/tabulated-list-test.el
13330            test/automated/thunk-tests.el
13331            test/automated/timer-tests.el
13332            test/automated/epg-tests.el
13333            test/automated/eshell.el
13334            test/automated/faces-tests.el
13335            test/automated/file-notify-tests.el
13336            test/automated/auth-source-tests.el
13337            test/automated/gnus-tests.el
13338            test/automated/message-mode-tests.el
13339            test/automated/help-fns.el
13340            test/automated/imenu-test.el
13341            test/automated/info-xref.el
13342            test/automated/mule-util.el
13343            test/automated/isearch-tests.el
13344            test/automated/json-tests.el
13345            test/automated/bytecomp-tests.el
13346            test/automated/coding-tests.el
13347            test/automated/core-elisp-tests.el
13348            test/automated/decoder-tests.el
13349            test/automated/files.el
13350            test/automated/font-parse-tests.el
13351            test/automated/lexbind-tests.el
13352            test/automated/occur-tests.el
13353            test/automated/process-tests.el
13354            test/automated/syntax-tests.el
13355            test/automated/textprop-tests.el
13356            test/automated/undo-tests.el
13357            test/automated/man-tests.el
13358            test/automated/completion-tests.el
13359            test/automated/dbus-tests.el
13360            test/automated/newsticker-tests.el
13361            test/automated/sasl-scram-rfc-tests.el
13362            test/automated/tramp-tests.el
13363            test/automated/obarray-tests.el
13364            test/automated/compile-tests.el
13365            test/automated/elisp-mode-tests.el
13366            test/automated/f90.el
13367            test/automated/flymake-tests.el
13368            test/automated/python-tests.el
13369            test/automated/ruby-mode-tests.el
13370            test/automated/subword-tests.el
13371            test/automated/replace-tests.el
13372            test/automated/simple-test.el
13373            test/automated/sort-tests.el
13374            test/automated/subr-tests.el
13375            test/automated/reftex-tests.el
13376            test/automated/sgml-mode-tests.el
13377            test/automated/tildify-tests.el
13378            test/automated/thingatpt.el
13379            test/automated/url-future-tests.el
13380            test/automated/url-util-tests.el
13381            test/automated/add-log-tests.el
13382            test/automated/vc-bzr.el
13383            test/automated/vc-tests.el
13384            test/automated/xml-parse-tests.el
13385            test/BidiCharacterTest.txt
13386            test/biditest.el
13387            test/cedet/cedet-utests.el
13388            test/cedet/ede-tests.el
13389            test/cedet/semantic-ia-utest.el
13390            test/cedet/semantic-tests.el
13391            test/cedet/semantic-utest-c.el
13392            test/cedet/semantic-utest.el
13393            test/cedet/srecode-tests.el
13394            test/cedet/tests/test.c
13395            test/cedet/tests/test.el
13396            test/cedet/tests/test.make
13397            test/cedet/tests/testdoublens.cpp
13398            test/cedet/tests/testdoublens.hpp
13399            test/cedet/tests/testfriends.cpp
13400            test/cedet/tests/testjavacomp.java
13401            test/cedet/tests/testnsp.cpp
13402            test/cedet/tests/testpolymorph.cpp
13403            test/cedet/tests/testspp.c
13404            test/cedet/tests/testsppcomplete.c
13405            test/cedet/tests/testsppreplace.c
13406            test/cedet/tests/testsppreplaced.c
13407            test/cedet/tests/testsubclass.cpp
13408            test/cedet/tests/testsubclass.hh
13409            test/cedet/tests/testtypedefs.cpp
13410            test/cedet/tests/testvarnames.c
13411            test/etags/CTAGS.good
13412            test/etags/ETAGS.good_1
13413            test/etags/ETAGS.good_2
13414            test/etags/ETAGS.good_3
13415            test/etags/ETAGS.good_4
13416            test/etags/ETAGS.good_5
13417            test/etags/ETAGS.good_6
13418            test/etags/a-src/empty.zz
13419            test/etags/a-src/empty.zz.gz
13420            test/etags/ada-src/2ataspri.adb
13421            test/etags/ada-src/2ataspri.ads
13422            test/etags/ada-src/etags-test-for.ada
13423            test/etags/ada-src/waroquiers.ada
13424            test/etags/c-src/a/b/b.c
13425            test/etags/c-src/abbrev.c
13426            test/etags/c-src/c.c
13427            test/etags/c-src/dostorture.c
13428            test/etags/c-src/emacs/src/gmalloc.c
13429            test/etags/c-src/emacs/src/keyboard.c
13430            test/etags/c-src/emacs/src/lisp.h
13431            test/etags/c-src/emacs/src/regex.h
13432            test/etags/c-src/etags.c
13433            test/etags/c-src/exit.c
13434            test/etags/c-src/exit.strange_suffix
13435            test/etags/c-src/fail.c
13436            test/etags/c-src/getopt.h
13437            test/etags/c-src/h.h
13438            test/etags/c-src/machsyscalls.c
13439            test/etags/c-src/machsyscalls.h
13440            test/etags/c-src/sysdep.h
13441            test/etags/c-src/tab.c
13442            test/etags/c-src/torture.c
13443            test/etags/cp-src/MDiagArray2.h
13444            test/etags/cp-src/Range.h
13445            test/etags/cp-src/burton.cpp
13446            test/etags/cp-src/c.C
13447            test/etags/cp-src/clheir.cpp.gz
13448            test/etags/cp-src/clheir.hpp
13449            test/etags/cp-src/conway.cpp
13450            test/etags/cp-src/conway.hpp
13451            test/etags/cp-src/fail.C
13452            test/etags/cp-src/functions.cpp
13453            test/etags/cp-src/screen.cpp
13454            test/etags/cp-src/screen.hpp
13455            test/etags/cp-src/x.cc
13456            test/etags/el-src/TAGTEST.EL
13457            test/etags/el-src/emacs/lisp/progmodes/etags.el
13458            test/etags/erl-src/gs_dialog.erl
13459            test/etags/f-src/entry.for
13460            test/etags/f-src/entry.strange.gz
13461            test/etags/f-src/entry.strange_suffix
13462            test/etags/forth-src/test-forth.fth
13463            test/etags/html-src/algrthms.html
13464            test/etags/html-src/index.shtml
13465            test/etags/html-src/software.html
13466            test/etags/html-src/softwarelibero.html
13467            test/etags/lua-src/allegro.lua
13468            test/etags/objc-src/PackInsp.h
13469            test/etags/objc-src/PackInsp.m
13470            test/etags/objc-src/Subprocess.h
13471            test/etags/objc-src/Subprocess.m
13472            test/etags/objcpp-src/SimpleCalc.H
13473            test/etags/objcpp-src/SimpleCalc.M
13474            test/etags/pas-src/common.pas
13475            test/etags/perl-src/htlmify-cystic
13476            test/etags/perl-src/kai-test.pl
13477            test/etags/perl-src/yagrip.pl
13478            test/etags/php-src/lce_functions.php
13479            test/etags/php-src/ptest.php
13480            test/etags/php-src/sendmail.php
13481            test/etags/prol-src/natded.prolog
13482            test/etags/prol-src/ordsets.prolog
13483            test/etags/ps-src/rfc1245.ps
13484            test/etags/pyt-src/server.py
13485            test/etags/tex-src/gzip.texi
13486            test/etags/tex-src/nonewline.tex
13487            test/etags/tex-src/testenv.tex
13488            test/etags/tex-src/texinfo.tex
13489            test/etags/y-src/atest.y
13490            test/etags/y-src/cccp.c
13491            test/etags/y-src/cccp.y
13492            test/etags/y-src/parse.c
13493            test/etags/y-src/parse.y
13494            test/indent/css-mode.css
13495            test/indent/js-indent-init-dynamic.js
13496            test/indent/js-indent-init-t.js
13497            test/indent/js-jsx.js
13498            test/indent/js.js
13499            test/indent/latex-mode.tex
13500            test/indent/modula2.mod
13501            test/indent/nxml.xml
13502            test/indent/octave.m
13503            test/indent/pascal.pas
13504            test/indent/perl.perl
13505            test/indent/prolog.prolog
13506            test/indent/ps-mode.ps
13507            test/indent/ruby.rb
13508            test/indent/scheme.scm
13509            test/indent/scss-mode.scss
13510            test/indent/sgml-mode-attribute.html
13511            test/indent/shell.rc
13512            test/indent/shell.sh
13513            test/redisplay-testsuite.el
13514            test/rmailmm.el
13515            test/automated/buffer-tests.el
13516            test/automated/cmds-tests.el
13517            test/automated/data-tests.el
13518            test/automated/finalizer-tests.el
13519            test/automated/fns-tests.el
13520            test/automated/inotify-test.el
13521            test/automated/keymap-tests.el
13522            test/automated/print-tests.el
13523            test/automated/libxml-tests.el
13524            test/automated/zlib-tests.el: Files Moved.
13526 2015-11-20  Michael Albinus  <michael.albinus@gmx.de>
13528         Rework file notifications, kqueue has problems with directory monitors
13530         * lisp/filenotify.el (file-notify-add-watch): Call the native
13531         add-watch function on the file, not on the dir.
13533         * src/kqueue.c (kqueue_compare_dir_list): Make also bookkeeping
13534         about already deleted entries.
13536         * test/automated/auto-revert-tests.el
13537         (auto-revert-test01-auto-revert-several-files): Do not call "cp -f"
13538         since this deletes the target file first.
13540         * test/automated/file-notify-tests.el (file-notify--test-event-test):
13541         Make stronger checks.
13542         (file-notify-test01-add-watch, file-notify-test02-events)
13543         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
13544         Rewrite in order to call file monitors but directory monitors.
13545         (file-notify-test06-many-events): Ler rename work in both directions.
13547 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
13549         Continie with pending events
13551         * src/kqueue.c (pending_events): Remove global variable.
13552         (kqueue_compare_dir_list): Create `write' event for not used
13553         pending events.
13554         (globals_of_kqueue): Remove initialization of pending_events.
13556 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
13558         Improve loops in file-notify-test06-many-events
13560         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
13561         Use `read-event' pauses for the `write-file' loops; otherwise
13562         events are lost in inotify and gfilenotify cases.
13564 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
13566         Handle more complex rename operation in kqueue
13568         * src/kqueue.c (pending_events): New variable.
13569         (kqueue_compare_dir_list): Handle more complex rename operation.
13570         (globals_of_kqueue): Initialize pending_events.
13572         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
13573         Adapt expected events in the `rename-file' case.
13574         (file-notify-test06-many-events-remote): Declare.
13576 2015-11-18  Wolfgang Jenkner  <wjenkner@inode.at>
13578         New test with a larger number of events.
13580         * test/automated/file-notify-tests.el (file-notify--test-with-events):
13581         Make timeout heuristically depend on the number of events.
13583         (file-notify-test06-many-events): Use it for new test.
13585 2015-11-18  Michael Albinus  <michael.albinus@gmx.de>
13587         Further fixes for kqueue.
13589         * lisp/filenotify.el (file-notify-callback): Raise also event if
13590         directory name matches.
13591         (file-notify-add-watch): Add `create' to the flags for `kqueue'.
13593         * src/kqueue.c (kqueue_generate_event): Use watch_object as
13594         argument instead of ident.  Remove callback argument.  Adapt
13595         callees.  Check actions whether they are monitored flags.
13597         * test/automated/file-notify-tests.el (file-notify--test-library):
13598         New defun.
13599         (file-notify-test00-availability, file-notify-test02-events)
13600         (file-notify-test04-file-validity)
13601         (file-notify-test05-dir-validity): Use it.
13602         (file-notify-test02-events, file-notify-test04-file-validity): Add
13603         `read-event' calls between different file actions, in order to
13604         give the backends a chance to rais an event.  Needed especially
13605         for kqueue.  In case of deleting a directory, there are two
13606         `deleted' events.
13608 2015-11-17  Michael Albinus  <michael.albinus@gmx.de>
13610         Code cleanup of kqueue.c
13612         * src/kqueue.c (kqueue_directory_listing): Skip "." and "..".
13613         (kqueue_compare_dir_list): Do not loop when calling
13614         directory_files_internal.  Remove checks for "." and "..", this is
13615         done in kqueue_directory_listing now.
13616         (Fkqueue_add_watch): Check for proper emacs_open flags.
13618 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
13620         Doc changes for kqueue
13622         * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
13623         Fix some glitches in the example.
13625 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
13627         Finish implementation in kqueue.c
13629         * src/kqueue.c (kqueue_directory_listing, kqueue_callback):
13630         Simplify access to list.
13631         (kqueue_compare_dir_list): Simplify access to list.  Raise
13632         `delete' event if directory does not exist any longer.  Otherwise,
13633         wait until directory contents has changed.  Fix error in check.
13635 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
13637         * lisp/filenotify.el (file-notify-add-watch): Fix thinko.
13639 2015-11-15  Michael Albinus  <michael.albinus@gmx.de>
13641         More work on kqueue
13643         * lisp/filenotify.el (file-notify-callback): Handle also the
13644         `rename' event from kqueue.
13645         (file-notify-add-watch): Do not register an entry twice.
13647         * src/kqueue.c (kqueue_directory_listing): New function.
13648         (kqueue_generate_event): New argument FILE1.  Adapt callees.
13649         (kqueue_compare_dir_list): Rewrite in order to make it more robust.
13651 2015-11-14  Michael Albinus  <michael.albinus@gmx.de>
13653         Implement directory events
13655         * lisp/filenotify.el (file-notify-handle-event)
13656         (file-notify-callback): Remove traces.
13658         * src/kqueue.c: Include <sys/time.h>.
13659         (kqueue_generate_event, kqueue_compare_dir_list): New functions.
13660         (kqueue_callback): Use them.  Call kevent() with a zero timeout.
13661         (Fkqueue_add_watch): Adapt docstring.  Support directory events.
13662         Compute initial directory listing.  Close file descriptor in case
13663         of errors.
13664         (syms_of_kqueue): Declare Qcreate.
13666 2015-11-11  Wolfgang Jenkner  <wjenkner@inode.at>
13668         Build fixes for kqueue support.
13670         * src/kqueue.c (Fkqueue_add_watch): O_BINARY is not a POSIX open(3)
13671         flag.
13673         * configure.ac (HAVE_KQUEUE): There is no pkg-config module for native
13674         kqueue on *BSD.
13676 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
13678         Continue kqueue implementation
13680         * lisp/filenotify.el (file-notify-handle-event)
13681         (file-notify-callback): Enable trace messages.
13683         * src/kqueue.c: Include also <sys/types.h>.
13684         (kqueue_callback): Remove watch in case of NOTE_DELETE or NOTE_RENAME.
13685         (Fkqueue_rm_watch, Fkqueue_valid_p): New functions.
13686         (syms_of_kqueue): Add them.
13688 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
13690         Work on kqueue
13692         * lisp/filenotify.el (file-notify--library)
13693         (file-notify-descriptors, file-notify-callback)
13694         (file-notify-add-watch, file-notify-rm-watch)
13695         (file-notify-valid-p): Add kqueue support.
13697         * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
13699 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
13701         Add kqueue support
13703         * configure.ac (--with-file-notification): Add kqueue.
13704         (top): Remove special test for "${HAVE_NS}" and
13705         ${with_file_notification}, this is handled inside gfilenotify
13706         tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
13707         instead of library specific variables.
13709         * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
13711         * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
13713         * src/kqueue.c: New file.
13715         * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
13717 2015-11-21  Wilson Snyder  <wsnyder@wsnyder.org>
13719         verilog-mode.el: Commentary and fix pre-Emacs 21 behavior.
13721         * verilog-mode.el (verilog-save-font-no-change-functions):
13722         Commentary and fix pre-Emacs 21 behavior.
13724 2015-11-19  Przemysław Wojnowski  <esperanto@cumego.com>
13726         Use obarray functions from obarray.
13728         * lisp/abbrev.el (copy-abbrev-table, abbrev-table-p, make-abbrev-table,
13729           abbrev-table-get, abbrev-table-put, abbrev-table-empty-p,
13730           clear-abbrev-table, define-abbrev, abbrev--symbol, abbrev-table-menu):
13731           delegate to obarray.el functions.
13732         * lisp/loadup.el: load obarray before abbrev
13733         * test/automated/abbrev-tests.el: new tests
13735 2015-11-18  Christian Schwarzgruber  <c.schwarzgruber.cs@gmail.com>  (tiny change)
13737         epa.el: Add option to replace original text
13739         * lisp/epa.el (epa-replace-original-text): New user option.
13740         (Bug#21947)
13742 2015-11-18  Mark Oteiza  <mvoteiza@udel.edu>
13744         Add interactive seek command.
13746         * lisp/mpc.el (mpc-cmd-seekcur): New function.
13747         (mpc-seek-current): New command.
13748         (mpc-mode-menu): Add entry for mpc-seek-current
13749         (mpc-mode-map): Bind mpc-seek-current to "g"
13751 2015-11-18  Mark Oteiza  <mvoteiza@udel.edu>
13753         Fix issue where a new tempfile was created every refresh
13755         * lisp/mpc.el (mpc-format): Leave dir as relative path
13757 2015-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
13759         * lisp/progmodes/cc-defs.el: Use with-silent-modifications
13761         (c-save-buffer-state): Use with-silent-modifications when available.
13762         (c--macroexpand-all): Check macroexpand-all directly rather than
13763         c--mapcan-status.
13765 2015-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
13767         * lisp/loadup.el: Set max-lisp-eval-depth here
13769         * lisp/Makefile.in (BIG_STACK_DEPTH, BIG_STACK_OPTS): Remove.
13770         (BYTE_COMPILE_FLAGS): Adjust accordingly.
13772 2015-11-17  João Távora  <joaotavora@gmail.com>
13774         Minor fix to comment indentation and typo in last commit
13776         * linum.el (linum-update-window): Fix comment indentation and a
13777         typo.
13779 2015-11-17  João Távora  <joaotavora@gmail.com>
13781         linum-mode plays more nicely with other margin-setting extensions
13783         linum.el will only modify the left margin if it needs to, and will
13784         only reset the it back to 0 if it guesses that no-one has touched that
13785         margin in the meantime.
13787         As such, this is a more of a workaround than an actual fix, but fixes
13788         the problems described in bug#20674 regarding the interaction with
13789         modes such as darkroom-mode and olivetti-mode.
13791         A similar fix was commited to nlinum.el in ELPA.git's
13792         e7f5f549fbfb740b911fb7f33b42381ecece56d8
13794         * linum.el (linum-delete-overlays): Restore margins more
13795         criteriously.
13796         (linum-update-window): Set margins more criteriously.
13798 2015-11-16  Daiki Ueno  <ueno@gnu.org>
13800         * lisp/image-mode.el: Support encrypted file
13802         (image-toggle-display-image): Read content from the buffer instead
13803         of the file, if the buffer holds a decrypted data.  (Bug#21870)
13805 2015-11-15  Juanma Barranquero  <lekktu@gmail.com>
13807         * lisp/progmodes/verilog-mode.el (verilog-save-buffer-state): Add backquote
13809 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
13811         * lisp/emacs-lisp/package.el: Fix a decoding issue
13813         (package--with-response-buffer): Use `url-insert-buffer-contents'.
13814         The previous code had some issues with decoding. Refactoring that
13815         function allows us to use the decoding from url-handlers while still
13816         treating both sync and async requests the same.
13818         * lisp/url/url-handlers.el (url-insert-file-contents): Move some code to
13819         `url-insert-buffer-contents'.
13820         (url-insert-buffer-contents): New function
13822 2015-11-15  Stefan Monnier  <monnier@iro.umontreal.ca>
13824         * lisp/progmodes/verilog-mode.el: Use with-silent-modifications
13826         (verilog-save-buffer-state): Use with-silent-modifications when available.
13827         (verilog-save-font-no-change-functions): Don't bind
13828         before/after-change-functions if it's not needed.
13830 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
13832         * CONTRIBUTE: Remove information about feature freeze.
13834         Merge branch 'release-process-lowercase'
13836 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
13838         Document the release process
13840         * admin/notes/versioning: Add information about RC releases.
13841         * admin/release-process: Document the release process.
13842         * admin/authors.el (authors-ignored-files):
13843         * admin/README: Change FOR-RELEASE to release-process.
13844         * CONTRIBUTE:
13845         * admin/notes/bugtracker: Don't mention FOR-RELEASE.
13847 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
13849         * admin/release-process: Rename from admin/FOR-RELEASE.
13851 2015-11-14  David Engster  <deng@randomsample.de>
13853         gitmerge: Fix git log command
13855         * admin/gitmerge.el (gitmerge-missing): Use '--left-only' since we
13856         only want commits from the branch that is to be merged.
13857         (gitmerge-setup-log-buffer): Use the same symmetric range as in
13858         `gitmerge-missing'.
13860 2015-11-14  David Engster  <deng@randomsample.de>
13862         gitmerge: Try to detect cherry-picks
13864         * admin/gitmerge.el (gitmerge-default-branch): Change to
13865         origin/emacs-25.
13866         (gitmerge-missing): Use symmetric difference ('...') between
13867         branch and master so that cherry-picks can be detected.
13869 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
13871         Increment Emacs version on master branch
13873         * lisp/cus-edit.el (customize-changed-options-previous-release):
13874         Increase previous version to 24.5.
13876         * configure.ac:
13877         * msdos/sed2v2.inp: Bump version to 25.1.50.
13879 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
13881         Mention CONTRIBUTE in README, since it was moved from etc/ to root.
13882         * etc/TODO: Remove the reference to `etc/CONTRIBUTE'.
13883         * README: Mention CONTRIBUTE.
13885 2015-11-13  Wilson Snyder  <wsnyder@wsnyder.org>
13887         Update verilog-mode.el to 2015-11-09-b121d60-vpo
13889         * verilog-mode.el (verilog-auto, verilog-delete-auto)
13890         (verilog-modi-cache-results, verilog-save-buffer-state)
13891         (verilog-save-font-no-change-functions): When internally suppressing
13892         change functions, use `inhibit-modification-hooks' and call
13893         `after-change-funtions' to more nicely work with user hooks.
13894         Reported by Stefan Monnier.
13895         (verilog-auto, verilog-delete-auto, verilog-delete-auto-buffer):
13896         Create `verilog-delete-auto-buffer' to avoid double-calling
13897         fontification hooks.
13898         (verilog-restore-buffer-modified-p, verilog-auto)
13899         (verilog-save-buffer-state): Prefer restore-buffer-modified-p over
13900         set-buffer-modified-p.  Reported by Stefan Monnier.
13901         (verilog-diff-auto, verilog-diff-buffers-p)
13902         (verilog-diff-ignore-regexp): Add `verilog-diff-ignore-regexp'.
13903         (verilog-auto-inst-port, verilog-read-sub-decls-expr): Fix
13904         AUTOINST with unpacked dimensional parameters, bug981.  Reported by
13905         by Amol Nagapurkar.
13906         (verilog-read-decls, verilog-read-sub-decls-line): Avoid unneeded
13907         properties inside internal structures.  No functional change
13908         intended.
13910 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
13912         Use generic dispatch for xref backends
13914         * lisp/progmodes/xref.el (xref-backend-functions):
13915         New variable.
13916         (xref-find-function): Remove.
13917         (xref-find-backend)
13918         (xref--etags-backend): New functions.
13919         (xref-identifier-at-point-function)
13920         (xref-identifier-completion-table-function): Remove.
13921         (xref-backend-definitions, xref-backend-references)
13922         (xref-backend-apropos, xref-backend-identifier-at-point)
13923         (xref-backend-identifier-completion-table):
13924         New generic functions.
13926         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
13927         Add `elisp--xref-backend' to the beginning of
13928         `xref-backend-functions', locally.  Delete references to
13929         removed functions and vars.
13930         (elisp-xref-find): Remove.
13931         (elisp--xref-backend): New function.
13932         (elisp--xref-find-references, elisp--xref-find-apropos)
13933         (elisp--xref-identifier-completion-table):
13934         Turn into appropriately named generic methods.
13936         * lisp/progmodes/etags.el (etags-xref-find): Remove.
13937         (xref-backend-identifier-completion-table)
13938         (xref-backend-references, xref-backend-definitions)
13939         (xref-backend-apropos): New generic methods.
13941 2015-11-13  Juri Linkov  <juri@linkov.net>
13943         Support rectangular regions for more commands
13945         * lisp/simple.el (region-extract-function): Handle the arg
13946         value ‘bounds’.
13947         (region-insert-function): New function.
13948         (shell-command-on-region): Add arg ‘region-noncontiguous-p’.
13949         If non-nil, operate on multiple chunks.
13950         (region-noncontiguous-p): New function.
13952         * lisp/rect.el: Add function rectangle--insert-region
13953         around region-insert-function.
13954         (extract-rectangle-bounds): New function.
13955         (rectangle--extract-region): Handle the arg value ‘bounds’.
13956         (rectangle--insert-region): New function.
13958         * lisp/emulation/cua-rect.el: Add function cua--insert-rectangle
13959         around region-insert-function.
13960         (cua--extract-rectangle-bounds): New function.
13961         (cua--rectangle-region-extract): Handle the arg value ‘bounds’.
13963         * lisp/replace.el (query-replace, query-replace-regexp): Add arg
13964         ‘region-noncontiguous-p’.  Use ‘use-region-p’.
13965         (query-replace-regexp-eval, map-query-replace-regexp)
13966         (replace-string, replace-regexp): Use ‘use-region-p’.
13967         (keep-lines, flush-lines, how-many): Use ‘use-region-p’.
13968         (perform-replace): Add arg ‘region-noncontiguous-p’.
13969         If non-nil, operate on multiple chunks.
13971         * src/casefiddle.c (Fdowncase_region): Add arg ‘region-noncontiguous-p’.
13972         If non-nil, operate on multiple chunks.  (Bug#19829)
13974 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
13976         Handle multiple matches on the same line; add highlighting
13978         * lisp/progmodes/xref.el (xref-location-marker): Interpret the
13979         column value in characters.
13980         (xref--collect-matches): Rename from `xref--collect-match'.
13981         Search for all matches in the hit line.  Add `highlight' face to
13982         the matched region in the summary.  Update both callers.
13984 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
13986         Replace xref-match-bounds with xref-match-length
13988         Relying on xref-location-marker to point to the beginning of the match
13990         * lisp/progmodes/xref.el (xref-match-bounds): Remove.
13991         (xref-match-length): Add.
13992         (xref-make-match): Change the arguments.
13993         (xref--match-buffer-bounds): Remove.
13994         (xref-match-item): Store length, instead of end-column.
13995         (xref-pulse-momentarily)
13996         (xref--collect-match)
13997         (xref--query-replace-1): Update accordingly.
13998         (xref-query-replace): Ditto.  And check that the search results
13999         are up-to-date.
14001 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
14003         Merge from gnulib
14005         This incorporates:
14006         2015-11-13 xalloc-oversized: improve performance with GCC 5
14007         * lib/xalloc-oversized.h: Copy from gnulib.
14009 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
14011         Spruce up ftfont.c memory allocation
14013         * src/ftfont.c (setup_otf_gstring):
14014         Avoid O(N**2) behavior when reallocating.
14015         (ftfont_shape_by_flt): Prefer xpalloc to xrealloc when
14016         reallocating buffers; this simplifies the code.  Do not trust
14017         mflt_run to leave the output areas unchanged on failure, as
14018         this isn’t part of its interface spec.
14020 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
14022         Port recent XCB changes to 64-bit ‘long int’
14024         For historical reasons, libX11 represents 32-bit values like Atoms as
14025         ‘long int’ even on platforms where ‘long int’ is 64 bits.  XCB doesn’t
14026         do that, so adapt the recent XCB code to behave properly on 64-bit
14027         platforms.  Also, fix what appears to be a bug in the interpretation
14028         of xcb_get_property_value_length, at least on my Fedora platform
14029         which is running libxcb-1.11-5.fc21.
14030         * src/xfns.c (x_real_pos_and_offsets):
14031         * src/xterm.c (get_current_wm_state):
14032         xcb_get_property_value_length returns a byte count, not a word count.
14033         For 32-bit quantities, xcb_get_property_value returns a vector
14034         of 32-bit words, not of (possibly 64-bit) long int.
14036 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
14038         * src/undo.c (run_undoable_change): Now static.
14040 2016-01-30  Michael Albinus  <michael.albinus@gmx.de>
14042         Adapt Tramp version, do not merge with master
14044         * doc/misc/trampver.texi (trampver):
14045         * lisp/net/trampver.el (tramp-version): Set to "2.2.13-25.1".
14047 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14049         Remove support for ':timeout' from w32 tray notifications
14051         * src/w32fns.c (Fw32_notification_notify): Delete the code that
14052         supports ':timeout'.
14053         (syms_of_w32fns): Don't DEFSYM ':timeout'.  This avoids clashes
14054         with dbusbind.c when D-Bus is compiled in.
14056         * doc/lispref/os.texi (Desktop Notifications): Don't mention
14057         ':timeout'.
14059 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
14061         * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
14062         (simple-test--transpositions): New macro.
14063         (simple-transpose-subr): New test.
14065 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
14067         * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
14069 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
14071         * src/undo.c: Small fixes for previous change
14072         (run_undoable_change): Mark void argument list.
14073         (record_property_change): Remove unused variable `boundary'.
14075 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14077         Add a few more variables to redisplay--variables
14079         * lisp/frame.el (redisplay--variables): Add bidi-paragraph-direction
14080         and bidi-display-reordering to the list.
14082 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14084         * lisp/loadup.el: Enlarge the size of the hash table to 80000.
14086 2015-11-13  Eli Barzilay  <eli@barzilay.org>
14088         Fix point positioning after transposing with negative arg
14090         * lisp/simple.el (transpose-subr): When invoked with a negative
14091         argument, move point to after the transposed text, like we do
14092         when invoked with a positive argument.  (Bug#21885)
14094 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14096         Fix last change in shr.el
14098         * lisp/net/shr.el (shr--have-one-fringe-p): Rename from
14099         have-fringes-p.  All callers changed.  Doc fix.  (Bug#21895)
14101 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14103         Fix last change
14105         * src/w32fns.c (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]:
14106         Don't DEFSYM tray notification symbols if D-Bus is being used.
14108 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14110         Another fix for MinGW64 and Cygwin builds due to notifications
14112         * src/w32fns.c: Ifdef away tray notification code if D-Bus is
14113         being compiled into Emacs.
14114         (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]: Don't defsubr
14115         Sw32_notification_notify and Sw32_notification_close if the code
14116         is not compiled.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
14118 2016-01-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14119 2015-11-12  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14121         Remove intern calls and XXX comments from Fx_export_frames
14123         * src/xfns.c (Fx_export_frames): Use Qpdf, Qpng, Qpostscript, and
14124         Qsvg instead of intern calls.  Use "postscript" instead of "ps"
14125         for consistency with image types.  Remove XXX comments.
14126         (syms_of_xfns) <Qpdf>: DEFSYM it.
14128 2016-01-30  Eric Hanchrow  <eric.hanchrow@gmail.com>
14129 2015-11-12  Eric Hanchrow  <eric.hanchrow@gmail.com>
14131         shr: don't invoke unbound function (Bug#21895)
14133         * lisp/net/shr.el (have-fringes-p): New function.
14134         (shr-insert-document, shr-fill-text): Use it.
14136 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
14138         * test/automated/keymap-tests.el: Fix test to make it repeatable
14140         (keymap-store_in_keymap-FASTINT-on-nonchars): Reset Buffer-menu-mode-map
14141         entry to its initial value to make the test repeatable in interactive
14142         sessions (assuming it doesn't fail and crashes Emacs, of course).
14144 2016-01-30  Artur Malabarba  <bruce.connor.am@gmail.com>
14146         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors): Small fix
14148 2016-01-30  Phillip Lord  <phillip.lord@russet.org.uk>
14150         : Tests for undo-auto functionality.
14151 2015-11-12  Artur Malabarba  <bruce.connor.am@gmail.com>
14153         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
14154         Small fix.
14156 2015-11-12  Phillip Lord  <phillip.lord@newcastle.ac.uk>
14158         The heuristic that Emacs uses to add an `undo-boundary' has been
14159         reworked, as it interacts poorly with functions on `post-command-hook'
14160         or `after-change-functions'.
14162         * lisp/simple.el: New section added.
14163         * src/cmds.c (remove_excessive_undo_boundaries): Now in lisp.
14164         (self_insert_command): Calls simple.el to amalgamate.
14165         (delete_char): Calls simple.el to amalgamate.
14166         * src/keyboard.c (last_undo_boundary): Removed.
14167         * src/undo.c (run_undoable_change): New function.
14169 2015-11-12  Juri Linkov  <juri@linkov.net>
14171         Bind [?\S-\ ] to previous line command in Dired-like modes.
14173         * lisp/arc-mode.el (archive-mode-map):
14174         * lisp/dired.el (dired-mode-map):
14175         * lisp/proced.el (proced-mode-map):
14176         * lisp/vc/vc-dir.el (vc-dir-mode-map):
14177         Bind [?\S-\ ] to previous line command.
14178         (Bug#20790)
14180 2015-11-12  Eli Zaretskii  <eliz@gnu.org>
14182         Fix the MinGW64 and Cygwin-w32 builds
14184         * src/w32fns.c (MYNOTIFYICONDATAW_V1_SIZE)
14185         (MYNOTIFYICONDATAW_V2_SIZE, MYNOTIFYICONDATAW_V3_SIZE): Define and
14186         use instead of the corresponding NOTIFYICONDATAW_Vn_SIZE macros,
14187         which cause trouble with MinGW42 headers.  Ifdef away tray
14188         notifications code for Cygwin.  Reported by Andy Moreton
14189         <andrewjmoreton@gmail.com>.
14191 2015-11-12  Simen Heggestøyl  <simenheg@gmail.com>
14193         Enable sorting of JSON object keys when encoding
14195         * lisp/json.el (json-encoding-object-sort-predicate): New variable
14196         for specifying a sorting predicate for JSON objects during encoding.
14197         (json--plist-to-alist): New utility function.
14198         (json-encode-hash-table): Re-use `json-encode-alist' when object keys
14199         are to be sorted.
14200         (json-encode-alist): Sort output by
14201         `json-encoding-object-sort-predicate, when set.
14202         (json-encode-plist): Re-use `json-encode-alist' when object keys are
14203         to be sorted.
14204         (json-pretty-print-buffer-ordered): New command to pretty print the
14205         buffer with object keys sorted alphabetically.
14206         (json-pretty-print-ordered): New command to pretty print the region
14207         with object keys sorted alphabetically.
14209         * test/automated/json-tests.el (test-json-plist-to-alist)
14210         (test-json-encode-plist, test-json-encode-hash-table)
14211         (test-json-encode-alist-with-sort-predicate)
14212         (test-json-encode-plist-with-sort-predicate): New tests.
14214         * etc/NEWS: Add an entry for the new commands.
14216 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
14218         * test/automated/keymap-tests.el: New test file.
14220 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
14222         Speed up x_real_pos_and_offsets using XCB
14224         * src/xfns.c (x_real_pos_and_offsets) [USE_XCB]: Add XCB flavors of
14225         all X calls, and pipeline requests when possible, collecting results
14226         later.  Eliminate use of x_catch_errors (and thus XSync) in XCB case.
14228 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
14230         Enable use of XCB for checking window manager state
14232         * src/xterm.c (get_current_wm_state) [USE_XCB]: Use XCB calls instead
14233         of XGetWindowProperty plus error-catching, since we can explicitly
14234         check for errors in the XCB version.  This eliminates 3 XSync calls on
14235         top of the round-trip actually fetching the information.
14237 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
14239         Detect XCB and save a connection handle
14241         * configure.ac: If using X11, check for XCB libraries and header.
14242         * src/Makefile.in (XCB_LIBS): Define.
14243         (LIBX_EXTRA): Include it.
14245         * src/xterm.h [USE_XCB]: Include X11/Xlib-xcb.h.
14246         (struct x_display_info) [USE_XCB]: Add an XCB connection handle field.
14247         * src/xterm.c (x_term_init) [USE_XCB]: Initialize the new field.
14249 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
14251         Reduce some data dependencies between X calls
14253         Gains nothing in the traditional-Xlib code, but more closely aligns
14254         with how the XCB version will work.
14256         * src/xfns.c (x_real_pos_and_offsets): When translating coordinates,
14257         send coordinates (0,0) to the X server and add in the real coordinates
14258         after getting the response.  Move XGetGeometry for outer window inside
14259         error-trapping block.  Use DPY variable more, since it's available.
14261 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
14263         Use color cache for creating bitmap
14265         * src/image.c (x_create_bitmap_from_xpm_data) [ALLOC_XPM_COLORS]:
14266         Set attributes to use the caching color allocator.  Initialize and
14267         free the cache.
14269 2015-11-12  Eli Barzilay  <eli@barzilay.org>
14271         Add "^" to the interactive specs of `dired-next/previous-line'
14273         * lisp/dired.el (dired-next-line, dired-previous-line): It makes sense
14274         to bind these commands to the arrow keys, and that means that they work
14275         better with a "^" in the `interactive' declaration so selection works
14276         as expected.
14278 2016-01-30  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
14280         Sync with soap-client repository, version 3.0.2
14282         * lisp/net/soap-client.el: Bump version to 3.0.2.
14284         * lisp/net/soap-client.el (soap-warning): Use format, not format-message.
14286         * lisp/net/soap-client.el: Add cl-lib to Package-Requires.  Require cl-lib.
14287         (soap-validate-xs-simple-type): Use cl-labels instead of cl-flet.
14289         * lisp/net/soap-client.el: Support Emacs versions that do not have
14290         define-error.
14292         * lisp/net/soap-inspect.el: Remove version header.
14294         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Fix first line header
14295 2015-11-11  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
14297         Sync with soap-client repository, version 3.0.2
14299         * soap-client.el: Bump version to 3.0.2.
14301         * soap-client.el (soap-warning): Use format, not format-message.
14303         * soap-client.el: Add cl-lib to Package-Requires.  Require cl-lib.
14304         (soap-validate-xs-simple-type): Use cl-labels instead of cl-flet.
14306         * soap-client.el: Support Emacs versions that do not have
14307         define-error.
14309         * soap-inspect.el: Remove version header.
14311         * soap-client.el, soap-inspect.el, jira2.el: Fix first line header
14312         format.
14314 2015-11-11  Alan Mackenzie  <acm@muc.de>
14316         CC Mode: Respect users' settings of open-paren-in-column-0-is-defun-start.
14318         * lisp/progmodes/cc-engine.el (c-backward-single-comment)
14319         (c-backward-comments, c-invalidate-state-cache-1, c-parse-state-1)
14320         (c-guess-basic-syntax):
14321         Remove bindings of open-paren-in-column-0-is-defun-start to nil.
14322         (c-get-fallback-scan-pos): "New" function (existed several years ago).
14323         (c-parse-state-get-strategy): Reintroduce the 'BOD strategy, using
14324         c-get-fallback-scan-pos.
14325         (c-parse-state-1): Handle 'BOD strategy.
14327         * lisp/progmodes/cc-mode.el (c-before-change, c-after-change)
14328         (c-font-lock-fontify-region): Remove bindings of
14329         open-paren-in-column-0-is-defun-start to nil.
14331         * doc/misc/cc-mode.texi (Performance Issues)
14332         (Limitations and Known Bugs): Fix mix up between @chapter and @appendix.
14334 2015-11-11  Artur Malabarba  <bruce.connor.am@gmail.com>
14336         * lisp/obarray.el: Fix shadowed variables.
14337         (obarray-map, obarray-remove, obarray-put, obarray-get):
14338         Change OBARRAY arg to OB to avoid shadowing ‘obarray’.
14340 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
14342         Avoid error in submitting a form with EWW
14344         * lisp/gnus/mm-url.el (mm-url-form-encode-xwfu): Allow argument
14345         CHUNK to be nil.  (Bug#21881)
14347 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
14349         Rename seq-p and map-p to seqp and mapp
14351         * lisp/emacs-lisp/seq.el (seqp): New name.
14352         * lisp/emacs-lisp/map.el (mapp): New name.
14353         * doc/lispref/sequences.texi: Update the documentation for seqp.
14354         * test/automated/map-tests.el: Update the tests for mapp.
14356 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
14358         Rename obarray-p to obarrayp
14360         * lisp/obarray.el (obarrayp): New name.
14361         * test/automated/obarray-tests.el: Update the tests.
14363 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
14365         Rename obarray-foreach to obarray-map
14367         * lisp/obarray.el (obarray-map): New name.
14368         * test/automated/obarray-tests.el: Update the corresponding tests.
14370 2015-11-11  Przemysław Wojnowski  <esperanto@cumego.com>
14372         New file with obarray functions.
14374         * lisp/obarray.el: Basic obarray functions extracted from abbrev.el.
14375         * test/automated/obarray-tests.el: New file.
14377 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
14379         Implement tray notifications for MS-Windows
14381         * src/w32fns.c (MY_NOTIFYICONDATAW): New typedef.
14382         (NOTIFYICONDATAW_V1_SIZE, NOTIFYICONDATAW_V2_SIZE)
14383         (NOTIFYICONDATAW_V3_SIZE, NIF_INFO, NIIF_NONE, NIIF_INFO)
14384         (NIIF_WARNING, NIIF_ERROR, EMACS_TRAY_NOTIFICATION_ID)
14385         (EMACS_NOTIFICATION_MSG): New macros.
14386         (NI_Severity): New enumeration.
14387         (get_dll_version, utf8_mbslen_lim, add_tray_notification)
14388         (delete_tray_notification, Fw32_notification_notify)
14389         (Fw32_notification_close): New functions.
14390         (syms_of_w32fns): Defsubr functions exposed to Lisp.  DEFSYM
14391         keywords used by w32-notification-notify.
14393         * doc/lispref/os.texi (Desktop Notifications): Describe the native
14394         w32 tray notifications.
14396 2016-01-30  Alan Mackenzie  <acm@muc.de>
14398         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
14400         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
14401         Windows" and new @defun selected-window-group.
14402         (Window Start and End): Describe new &optional parameter GROUP and
14403         ...-group-function for window-start, window-end, set-window-start, and
14404         pos-visible-in-window-p.
14405         (Textual Scrolling) Describe the same for recenter.
14406         doc/lispref/positions.texi (Screen Lines): Describe the same for
14407         move-to-window-line.
14409         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
14410         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
14411         new optional parameter "group".  At the beginning of each, check whether the
14412         corresponding ...-group-function is set to a function, and if so execute this
14413         function in place of the normal processing.
14414         (syms_of_window): Define symbols for the six new variables below.
14415         (window-start-group-function, window-end-group-function)
14416         (set-window-start-group-function, recenter-group-function)
14417         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
14418         New permanent local buffer local variables.
14419         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
14420         Fpos_visible_in_window_p.
14422         lisp/window.el (selected-window-group-function): New permanent local buffer
14423         local variable.
14424         (selected-window-group): New function.
14426         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
14427         enable, kill them at mode disable.  Add/remove follow-after-change to/from
14428         after-change-functions.
14429         (follow-start-end-invalid): New variable.
14430         (follow-redisplay): Manipulate follow-start-end-invalid.
14431         (follow-after-change, follow-window-start, follow-window-end)
14432         (follow-set-window-start, follow-pos-visible-in-window-p)
14433         (follow-move-to-window-line, follow-sit-for): New functions.
14435         lisp/isearch.el (isearch-call-message): New macro.
14436         (isearch-update, with-isearch-suspended, isearch-del-char)
14437         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
14438         (with-isearch-suspended): Rearrange code such that isearch-call-message is
14439         invoked before point is moved.
14440         (isearch-message): Add comment about where point must be at function call.
14441         (isearch-search): Remove call to isearch-message.
14442         (isearch-lazy-highlight-window-group): New variable.
14443         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
14444         the battery of tests to ...
14445         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
14446         Note: (sit-for 0) is still called.
14447         (isearch-lazy-highlight-update): Check membership of
14448         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
14449         property.
14450         (isearch-update, isearch-done, isearch-string-out-of-window)
14451         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
14452         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
14453         (isearch-lazy-highlight-update): Call the six amended primitives (see
14454         src/window.c above) with the new `group' argument set to t, to cooperate
14455         with Follow Mode.
14457 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
14459         Optimize `file-equal-p' and `file-in-directory-p' in Tramp
14461         * lisp/net/tramp.el (tramp-handle-file-equal-p)
14462         (tramp-handle-file-in-directory-p): New defuns.  Suggested by
14463         Harvey Chapman <hchapman@3gfp.com>.
14465         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
14466         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
14467         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
14468         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist): Use them.
14470 2015-11-10  Karl Fogel  <kfogel@red-bean.com>
14472         * CONTRIBUTE: Encourage adding tests.
14474         Based on this post from John Wiegley:
14476           From: "John Wiegley" <johnw@newartisans.com>
14477           Subject: Re: [Emacs-diffs] master 1f02cbe: Fix bug#21766 and add test
14478           To: Juanma Barranquero <lekktu@gmail.com>
14479           Cc: emacs-diffs@gnu.org, bruce.connor.am@gmail.com,
14480               emacs-devel <emacs-devel@gnu.org>
14481           Date: Wed, 28 Oct 2015 18:45:29 -0700
14482           Message-ID: <m2y4emqwg6.fsf@newartisans.com>
14484           https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02372.html
14486 2015-11-10  David Reitter  <david.reitter@gmail.com>
14488         Avoid creating notification objects when possible
14490         * src/nsterm.m (windowWillEnterFullScreen, windowWillExitFullScreen:)
14491         (windowDidEnterFullScreen, windowDidExitFullScreen): Provide convenience
14492         functions that do not require a notification object.  When needed,
14493         define NSWindowDidEnterFullScreenNotification to allow for compilation
14494         on OS X 10.6.8.
14496 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
14498         Move INTEGER_TO_CONS body out of .h file
14500         * src/data.c (INTBIG_TO_LISP): New macro, with most
14501         of the contents of the old INTEGER_TO_CONS.
14502         (intbig_to_lisp, uintbig_to_lisp): New functions.
14503         * src/lisp.h (INTEGER_TO_CONS):
14504         Simplify by using EXPR_SIGNED and the new functions.
14505         This shrinks code size a bit, and makes it easier to
14506         put a breakpoint on handling of large integers.
14508 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
14510         Merge from gnulib
14512         This incorporates:
14513         2015-11-10 intprops: new public macro EXPR_SIGNED
14514         2015-11-10 intprops: fix typo in clang port
14515         * lib/intprops.h: Copy from gnulib.
14517 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
14519         Spelling fixes
14521         * lisp/net/soap-inspect.el (soap-inspect-xs-simple-type):
14522         Fix misspelling in output.
14524 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
14526         * doc/lispref/variables.texi (Directory Local Variables):
14527         Document dir-locals wildcards.
14529         * lisp/files.el (dir-locals-file): Point to Info node.
14531         * doc/emacs/custom.texi (Directory Variables):
14532         Document dir-locals wildcards.
14534         * etc/NEWS: Document new functionality.
14536 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
14538         * lisp/files.el: Don't allow customization of dir-locals sorting.
14539         In retrospect, this is not a good idea for the same reason that
14540         `dir-locals-file' is a defconst, because it is important that this
14541         behaviour be "uniform across different environments and users".
14542         Sure, the user can still change the sorting with a hack, but we
14543         shouldn't encourage them to change it.
14544         (dir-locals--all-files): Return list in the order returned by
14545         `file-expand-wildcards'.
14546         (file-expand-wildcards): Document the sorting predicate used.
14547         (dir-locals-sort-predicate): Delete variable.
14549 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
14551         * lisp/files.el (dir-locals-read-from-file): Better handle errors.
14553         * lisp/isearch.el (search-default-regexp-mode): Change default value.
14555 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
14557         * lisp/files.el (dir-locals-find-file): Don't stop at unreadable files.
14558         `locate-dominating-file' will now keep looking if the files it finds in
14559         a given directory are unreadable (or not files).
14561 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
14563         * lisp/files.el (dir-locals-file): Allow wildcards.
14564         (dir-locals-find-file, dir-locals-collect-variables)
14565         (dir-locals-read-from-file): Update accordingly.
14566         (hack-dir-local-variables): Rename a local variable.
14568         * lisp/files-x.el (modify-dir-local-variable): Update accordingly.
14570         * lisp/help-fns.el (describe-variable): Update accordingly.
14572         * .gitignore: Add .dir-locals?.el.
14574 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
14576         * lisp/emacs-lisp/map.el (map-merge-with): New function.
14578         * test/automated/map-tests.el (test-map-merge-with): New test.
14580 2015-11-09  Karl Fogel  <kfogel@red-bean.com>
14582         Fix some recently-perturbed bookmark autoloads
14584         * lisp/bookmark.el (bookmark-set-internal): Remove unnecessary autoload.
14585         (bookmark-set): Restore autoload.
14586         (bookmark-set-no-overwrite): Add autoload.
14588         Thanks to Juanma Barranquero for noticing the autoload problems
14589         introduced by my recent commit adding/changing the above functions
14590         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
14592 2016-01-30  Noah Friedman  <friedman@splode.com>
14594         (ydump-buffer): Handle case where gap is at the start of buffer.
14595         I don't recall if older versions of gdb were less strict but you
14596         cannot dump a 0-length range in gdb 7.9.1.
14598 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
14599 2015-11-09  Noah Friedman  <friedman@splode.com>
14601         * etc/emacs-buffer.gdb (ydump-buffer): Handle case where gap is at
14602         the start of buffer.  I don't recall if older versions of gdb were
14603         less strict but you cannot dump a 0-length range in gdb 7.9.1.
14605 2015-11-09  Dmitry Gutov  <dgutov@yandex.ru>
14607         * lisp/progmodes/project.el: Update Commentary.
14609         Merge branch 'project-next'
14611 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
14613         Fold `project-ask-user' into `project-current'
14615         * lisp/progmodes/project.el (project-find-functions): Remove
14616         `project-ask-user'.
14617 2015-11-09  Dmitry Gutov  <dgutov@yandex.ru>
14619         Fold `project-ask-user' into `project-current'
14621         * lisp/progmodes/project.el (project-find-functions):
14622         Remove `project-ask-user'.
14623         (project-ask-user): Remove function and the corresponding
14624         `project-roots' implementation.
14625         (project-current): Add a new argument, MAYBE-PROMPT.  Prompt the
14626         user in case there's no project in the current directory.  Update
14627         all callers.
14629 2015-11-09  Karl Fogel  <kfogel@red-bean.com>
14631         When VC detects a conflict, specify which file
14633         * lisp/vc/vc.el (vc-message-unresolved-conflicts): New function.
14634         * lisp/vc/vc-svn.el (vc-svn-find-file-hook):
14635         * lisp/vc/vc-hg.el (vc-hg-find-file-hook):
14636         * lisp/vc/vc-bzr.el (vc-bzr-find-file-hook):
14637         * lisp/vc/vc-git.el (vc-git-find-file-hook): Use above new function
14638           to display a standard message that specifies the conflicted file.
14640         Before this change, the message VC used for indicating a conflicted
14641         file was just "There are unresolved conflicts in this file" without
14642         naming the file (and this language was duplicated in several places).
14643         After this change, it's "There are unresolved conflicts in file FOO"
14644         (and this language is now centralized in one function in vc.el).
14646         Justification: It's important for the message to name the conflicted
14647         file because the moment when VC realizes a file is conflicted does not
14648         always come interactively.  For example, some people automatically
14649         find a set of Org Mode files on startup, and may keep those .org files
14650         under version control.  If any of the files are conflicted, the user
14651         just sees some messages fly by, and might later check the "*Messages*"
14652         buffer to find out what files were conflicted.  I'm not saying this
14653         happened to me or anything; it's a purely hypothetical example.
14655 2015-11-09  Eli Zaretskii  <eliz@gnu.org>
14657         Fix assertion violation in define-key
14659         * src/keymap.c (store_in_keymap): Don't use XFASTINT on non-character
14660         objects.  Reported by Drew Adams <drew.adams@oracle.com>
14661         and Juanma Barranquero <lekktu@gmail.com>.
14663 2015-11-09  Dima Kogan  <dima@secretsauce.net>
14665         Fix a memory leak in GC of font cache
14667         * src/alloc.c (compact_font_cache_entry): Don't GC unmarked font
14668         entities if some of the fonts it references are marked.  This
14669         plugs a memory leak.  (Bug#21556)
14671 2015-11-09  Paul Eggert  <eggert@cs.ucla.edu>
14673         Use INT_ADD_WRAPV etc. to check integer overflow
14675         * src/alloc.c (xnmalloc, xnrealloc, xpalloc, Fmake_string):
14676         * src/buffer.c (record_overlay_string, overlay_strings):
14677         * src/casefiddle.c (casify_object):
14678         * src/ccl.c (Fccl_execute_on_string):
14679         * src/character.c (char_width, c_string_width, lisp_string_width)
14680         (count_size_as_multibyte, string_escape_byte8):
14681         * src/coding.c (coding_alloc_by_realloc, produce_chars):
14682         * src/data.c (arith_driver):
14683         * src/dispnew.c (realloc_glyph_pool, init_display):
14684         * src/editfns.c (styled_format):
14685         * src/fns.c (Ffillarray):
14686         * src/ftfont.c (ftfont_shape_by_flt):
14687         * src/gnutls.c (gnutls_hex_string):
14688         * src/gtkutil.c (get_utf8_string):
14689         * src/image.c (x_to_xcolors, x_detect_edges, png_load_body):
14690         * src/keymap.c (Fkey_description):
14691         * src/lisp.h (SAFE_ALLOCA_LISP):
14692         * src/term.c (encode_terminal_code):
14693         * src/tparam.c (tparam1):
14694         * src/xselect.c (x_property_data_to_lisp):
14695         * src/xsmfns.c (smc_save_yourself_CB):
14696         * src/xterm.c (x_term_init):
14697         When checking for integer overflow, prefer INT_MULTIPLY_WRAPV to
14698         more-complicated code involving division and/or
14699         INT_MULTIPLY_OVERFLOW, and similarly for INT_ADD_WRAPV and
14700         subtraction and/or INT_ADD_OVERFLOW.
14701         * src/casefiddle.c (casify_object): Simplify multibyte size check.
14702         * src/character.c: Remove some obsolete ‘#ifdef emacs’s.
14703         * src/data.c (arith_driver): Also check for division overflow,
14704         as that’s now possible given that the accumulator can now contain
14705         any Emacs integer.
14706         * src/lisp.h (lisp_word_count): Remove; no longer used.
14708 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
14709 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
14711         Make sure that the ignore file exists
14713         * lisp/vc/vc.el (vc-default-ignore-completion-table):
14714         Make sure that the ignore file exists.
14716 2016-01-30  Michael Sperber  <mike@xemacs.org>
14718         * lisp/gnus-sum.el (gnus-summary-backend-map): Bind B-backspace to
14719 2015-11-08  Michael Sperber  <mike@xemacs.org>
14721         * gnus-sum.el (gnus-summary-backend-map): Bind B-backspace to
14722         `gnus-summary-delete-article` in a way that also works on XEmacs.
14724 2015-11-08  Simen Heggestøyl  <simenheg@gmail.com>
14726         Add support for retrieving paths to JSON elements
14728         Add support for retrieving the path to a JSON element. This can for
14729         instance be useful to retrieve paths in deeply nested JSON
14730         structures.
14732         * lisp/json.el (json-pre-element-read-function)
14733         (json-post-element-read-function): New variables to hold pre- and post
14734         read callback functions for `json-read-array' and `json-read-object'.
14735         (json--path): New variable used internally by `json-path-to-position'.
14736         (json--record-path, json--check-position): New functions used
14737         internally by `json-path-to-position'.
14738         (json-path-to-position): New function for retrieving the path to a
14739         JSON element at a given position.
14740         (json-read-object, json-read-array): Call
14741         `json-pre-element-read-function' and `json-post-element-read-function'
14742         when set.
14744         * test/automated/json-tests.el (test-json-path-to-position-with-objects)
14745         (test-json-path-to-position-with-arrays)
14746         (test-json-path-to-position-no-match): New tests for
14747         `json-path-to-position'.
14749 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
14751         * etc/NEWS: Mention new `bookmark-set-no-overwrite'.
14753         This really should been part of my previous commit
14754         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
14756 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
14758         Offer non-overwrite bookmark setter (Bug#15746)
14760         * lisp/bookmark.el (bookmark-set-internal): New helper function to do
14761         what `bookmark-set' used to do, but with more choices for overwrite
14762         vs push, and with minor changes to the interactive prompt format.
14763         (bookmark-set): Rewrite as wrapper around above.
14764         If overwriting, inform the user of that in the prompt.
14765         (bookmark-set-no-overwrite): New function, also done as wrapper.
14766         Bind to "M" in `ctl-x-r-map' autoloads.
14767         (bookmark-map): Similarly bind "M" here.
14769 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
14771         * src/unexelf.c (NEW_PROGRAM_H): Remove unused macro (Bug#20614).
14773 2015-11-08  Alan Modra  <amodra@gmail.com>
14775         ELF unexec: Don't insert a new section
14777         Reuse the .bss section instead, making it SHT_PROGBITS.  This way we
14778         don't need to mess with symbol st_shndx, or section sh_link and
14779         sh_info.
14781         This does lead to eu-elflint complaints about symbols defined in .bss
14782         with a needed version, because normally it is undefined symbols that
14783         have needed versions;  Defined symbols have version definitions.
14784         The exception is symbols defined by the linker in .dynbss for
14785         variables copied from a shared library in order to avoid text
14786         relocations, with copy relocs to copy their initial values from the
14787         shared library.  These symbols are both defined and have needed
14788         versions, and eu-elflink only expects to see them in SHT_NOBITS
14789         sections.  Of course there is no real problem with having such symbols
14790         in SHT_PROGBITS sections.  glibc ld.so handles them fine.
14792         * src/unexelf.c: Delete outdated comments.
14793         (PATCH_INDEX): Delete.
14794         (find_section): Delete.
14795         (unexec): Don't add a new section.  Instead reuse the last bss
14796         section, extending it to cover dumped data.  Make bss sections
14797         SHT_PROGBITS.  Remove all patching of sh_link, sh_info and
14798         st_shndx.  Rename bss sections.
14800 2015-11-08  Alan Modra  <amodra@gmail.com>
14802         ELF unexec: Drive from PT_LOAD header rather than sections
14804         This rewrites bss handling in the ELF unexec code.  Finding bss
14805         sections by name results in complicated code that
14806         - does not account for all names of possible bss sections,
14807         - assumes specific ordering of bss sections,
14808         - can wrongly choose a SHT_NOBITS section not in the bss segment,
14809         - incorrectly calculates bss size (no accounting for alignment gaps),
14810         - assumes .data and .bss are in the same segment.
14812         All of these problems and more are solved by finding the bss segment
14813         in PT_LOAD headers, ie. the address range included in p_memsz but not
14814         p_filesz of the last PT_LOAD header, then matching SHT_NOBITS sections
14815         in that address range.
14817         * src/unexelf.c: Delete old ppc comment.
14818         (OLD_PROGRAM_H): Define.
14819         (round_up): Delete.
14820         (unexec): Don't search for bss style sections by name.  Instead,
14821         use the last PT_LOAD header address range covered by p_memsz
14822         but not p_filesz and match any SHT_NOBITS section in that
14823         address range.  Simplify initialization of section header vars.
14824         Don't assume that section headers are above bss segment.  Move
14825         copying of bss area out of section loop.  Align .data2 section
14826         to 1, since it now covers the entire bss area.  For SHT_NOBITS
14827         sections in the bss segment, leave sh_addr and sh_addralign
14828         unchanged, but correct sh_offset.  Clear memory corresponding
14829         to SHT_NOBITS .plt section.  Delete comment and hacks for
14830         sections partly overlapping bss range now that the full range
14831         is properly calculated.  Delete now dead .sbss code.
14832         (Bug#20614)
14834 2015-11-08  Alan Modra  <amodra@gmail.com>
14836         ELF unexec: R_*_NONE relocs
14838         These should be ignored on all targets.
14840         * src/unexelf.c (unexec): Ignore R_*_NONE relocs for any target,
14841         not just Alpha.  Comment on reloc size assumption.
14843 2015-11-08  Alan Modra  <amodra@gmail.com>
14845         ELF unexec: _OBJC_ symbols in bss sections
14847         This code assumed that there was only one bss section.  Rather than
14848         checking for a particular index, check the section type.  Also, handle
14849         the possibility that the section was SHT_NOBITS originally and is
14850         unchanged, in which case no clearing is needed (and sh_offset isn't
14851         necessarily valid, which can lead to a wild memset).
14853         * src/unexelf.c (unexec): Properly handle _OBJC_ symbols in
14854         bss sections.
14856 2015-11-08  Alan Modra  <amodra@gmail.com>
14858         ELF unexec: Symbol table patching
14860         No st_shndx value larger than SHN_LORESERVE should be changed.
14861         * src/unexelf.c (unexec): Don't adjust any st_shndx larger than
14862         SHN_LORESERVE.  Error on SHN_XINDEX.
14864 2015-11-08  Alan Modra  <amodra@gmail.com>
14866         ELF unexec: Merge Alpha and MIPS COFF debug handling
14868         * src/unexelf.c (unexec): Merge Alpha and MIPS COFF debug handling.
14869         Don't find .mdebug section index, find the section in the loop.
14870         Allow for unlikely possibility that .mdebug is located at sh_offset
14871         before bss segment, by calculating move from difference in
14872         sh_offset rather than just assuming new_data2_size.  Simplify
14873         cbLineOffset handling.
14875 2015-11-08  Alan Modra  <amodra@gmail.com>
14877         ELF unexec: Tidy code
14879         Separate out some of the more mechanical changes so following patches
14880         are smaller.
14882         * src/unexelf.c (unexec): Rearrange initialization of program
14883         header vars.  Use pointer vars in loops rather than indexing
14884         section header array via macros.  Simplify _OBJC_ sym code
14885         and reloc handling code.
14887 2015-11-08  Alan Modra  <amodra@gmail.com>
14889         ELF unexec: Correct section header index
14891         First a small fix.  The code incorrectly uses "NEW_SECTION_H (n)" when
14892         it should have been using "NEW_SECTION_H (nn)" to find the name of the
14893         section currently being processed.  Of course, before the bss
14894         sections, n and nn have the same value, so this doesn't matter except
14895         in the case of .sbss.  For .sbss this probably meant .bss (most likely
14896         the next section) was copied from memory.  A later patch removes the
14897         bogus .sbss handling anyway.
14899         * src/unexelf.c (unexec): Use correct index to look up names.
14901 2015-11-08  Michael Albinus  <michael.albinus@gmx.de>
14903         Fix Bug#21841
14905         * lisp/filenotify.el (file-notify--rm-descriptor):
14906         Use `descriptor' instead of computing its value.
14907         (file-notify--descriptor): Additional argument FILE.  Adapt all callees.
14908         (file-notify-rm-watch): Use `descriptor' when calling file name handler.
14909         (Bug#21841)
14911 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
14913         Remove dirs in vc project roots from the the vc project library roots
14915         * lisp/progmodes/project.el (project-library-roots):
14916         Remove directories inside the project roots from the result.
14917         (http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00536.html)
14919 2015-11-07  Dmitry Gutov  <dgutov@yandex.ru>
14921         Move and rename xref-find-regexp to the project package
14923         * lisp/progmodes/project.el (project-find-regexp)
14924         (project--read-regexp)
14925         (project--find-regexp-in): New functions.
14927         * lisp/progmodes/xref.el (xref--find-xrefs): Extract from
14928         xref--show-xrefs.  Use in existing callers in place of that
14929         function.
14930         (xref--show-xrefs): Only do the "show" part.
14931         (xref-find-regexp): Rename, more or less, to
14932         project-or-libraries-find-regexp.
14934 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
14936         Abolish temporary buffer management for xref
14938         * lisp/progmodes/xref.el (xref--temporary-buffers)
14939         (xref--current)
14940         (xref--inhibit-mark-current)
14941         (xref--mark-selected): Remove.  Remove all references.
14942         (xref--show-xrefs): Do not construct the
14943         list of the temporary buffers, nor pass it along.
14945 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
14947         Rename "search path" to "library roots"
14949         * lisp/emacs-lisp/cl-seq.el (cl-set-difference): Retain the order
14950         of the elements from CL-LIST1.
14952         * test/automated/cl-lib-tests.el (cl-lib-test-set-functions):
14953         Update WRT to the above change.
14955         * lisp/progmodes/project.el (project-search-path-function): Rename
14956         to project-library-roots-function, update the documentation and
14957         references.
14958         (project-search-path): Likewise, to project-library-roots.
14959         (project-roots): Clarify documentation.
14960         (project-vc-search-path): Likewise, to project-vc-library-roots.
14961         (project-library-roots): In addition to the renames, thread the
14962         results through file-name-as-directory.
14963         (project-prune-directories): Accept a variable number of
14964         arguments.  Rename to project-combine-directories.
14965         (project-subtract-directories): New function.
14967         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
14968         Append project-roots and project-library-roots together.
14970         * lisp/progmodes/etags.el (etags--xref-find-references): Ditto.
14972 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
14974         Prefer xpalloc to doubling buffers by hand
14976         * src/lread.c (grow_read_buffer): New function, which uses xpalloc.
14977         (read1): Use it for simplicity.
14978         * src/macros.c (store_kbd_macro_char):
14979         * src/minibuf.c (read_minibuf_noninteractive):
14980         * src/term.c (encode_terminal_code):
14981         * src/xrdb.c (magic_db):
14982         Prefer xpalloc to growing buffers by hand.
14983         This doesn’t fix any bugs, but simplifies the code a bit.
14985 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
14987         Merge from gnulib
14989         This incorporates:
14990         2015-11-05 timespec-sub: fix overflow bug; add tests
14991         2015-11-04 intprops: revise _WRAPV macros, revert _OVERFLOW
14992         2015-11-03 intprops: add parentheses
14993         * lib/intprops.h, lib/timespec-add.c, lib/timespec-sub.c:
14994         Copy from gnulib.
14996 2015-11-07  David Reitter  <david.reitter@gmail.com>
14998         Provide NS notification objects where required to eliminate warnings
15000         * src/nsterm.m (windowDidResize:, toggleFullScreen:):
15001         Call notification functions with notification objects
15002         as per delegate APIs.
15004 2015-11-07  Noam Postavsky  <npostavs@users.sourceforge.net>
15006         Add test for bug #21824
15008         * test/automated/buffer-tests.el: New file.
15009         (overlay-modification-hooks-message-other-buf): New test.
15011 2015-11-07  Kelvin White  <kwhite@gnu.org>
15013         * lisp/erc/erc-pcomplete.el (pcomplete-erc-nicks): Fix bug#18771.
15015 2015-11-07  David Reitter  <david.reitter@gmail.com>
15017         Ignore fullscreen exit notifications on NS when frame is dead
15019         * src/nsterm.m (windowDidResize:, windowWillExitFullScreen:)
15020         (windowDidExitFullScreen:): Return if frame is dead.
15021         These functions may be called when a fullscreen frame
15022         is closed; they are called before, not after.
15024         May address Bug#21428.
15026 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
15028         Speed up lookup in redisplay--variables
15030         * lisp/frame.el (redisplay--variables): Make it a hash-table.
15032         * src/xdisp.c (maybe_set_redisplay): Access redisplay--variables
15033         as a hash-table.  This speeds up this function by an order of
15034         magnitude: where previously a setq was slowed down by 100% by
15035         introducing the maybe_set_redisplay test, it is now only 5%
15036         slower.
15037         (syms_of_xdisp) <redisplay--variables>: Doc fix.
15039 2015-11-07  Artur Malabarba  <bruce.connor.am@gmail.com>
15041         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Fix a bug.
15043         The defsubst was being created as:
15044             (cl-defsubst name (args) ("DOC") ...)
15046         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
15047         Add test.
15049 2015-11-07  Mihai Olteanu  <mihai_olteanu@fastmail.fm>  (tiny change)
15051         Update doc string of hexl-mode
15053         * lisp/hexl.el (hexl-mode): Doc fix.  (Bug#21800)
15055 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
15057         Fix error in copy-abbrev-table
15059         * lisp/abbrev.el (define-abbrev): Don't erase the :abbrev-table-modiff
15060         property of the abbrev-table.  (Bug#21828)
15062         * test/automated/abbrev-tests.el: New file.
15064 2015-11-07  Michael Albinus  <michael.albinus@gmx.de>
15066         Add test to auto-revert-tests.el for Bug#21841
15068         * test/automated/auto-revert-tests.el
15069         (auto-revert-test01-auto-revert-several-files): New test.
15070         (auto-revert-test02-auto-revert-tail-mode)
15071         (auto-revert-test03-auto-revert-mode-dired): Rename them.
15073 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
15075         * doc/lispref/windows.texi (Coordinates and Windows): Fix typo.
15077 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
15079         In x_consider_frame_title don't set title of tooltip frames
15081         * src/xdisp.c (x_consider_frame_title): Return immediately for
15082         tooltip frames to avoid displaying empty tooltips.
15084 2015-11-06  Anders Lindgren  <andlind@gmail.com>
15086         Fixed NextStep fullscreen problem (bug#21770).
15088         * src/nsterm.m (ns_constrain_all_frames): Don't constrain
15089         fullscreen frames.
15091 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
15093         Ensure redisplay after evaluation
15095         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp):
15096         Revert last change.
15097         * lisp/frame.el (redisplay--variables): Populate the
15098         redisplay--variables list.
15099         * src/xdisp.c (maybe_set_redisplay): New function.
15100         (syms_of_xdisp) <redisplay--variables>: New variable.
15101         * src/window.h (maybe_set_redisplay): Declare prototype.
15102         * src/data.c (set_internal): Call maybe_set_redisplay.  (Bug#21835)
15104 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
15106         * test/automated/subr-tests.el (subr-test-when): Fix again.
15108 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
15110         Don't invoke overlay modification hooks in wrong buffer
15112         * src/buffer.c (report_overlay_modification): When called with
15113         AFTER non-zero, don't invoke overlay modification hooks if the
15114         buffer recorded in last_overlay_modification_hooks is different
15115         from the current buffer.  (Bug#21824)
15117 2015-11-06  Juanma Barranquero  <lekktu@gmail.com>
15119         * admin/notes/repo: Fix a few obsolete references to Bazaar.
15121 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
15123         * test/automated/subr-tests.el (subr-test-when): Fix test.
15125 2015-11-06  Martin Rudalics  <rudalics@gmx.at>
15127         Avoid division by zero crash observed by Yuan MEI
15129         See http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00194.html.
15131         * src/dispnew.c (required_matrix_height, required_matrix_width):
15132         Avoid division by zero.
15133         * src/xterm.c (x_term_init): Init dpyinfo->smallest_font_height and
15134         dpyinfo->smallest_char_width to 1.
15136 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
15138         Ensure redisplay after "C-x C-e"
15140         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp): Make sure
15141         redisplay happens to account for any side effects of the evaluated
15142         sexp.  (Bug#21835)
15144 2015-11-06  Michael Albinus  <michael.albinus@gmx.de>
15146         Skip some file notification tests for cygwin
15148         * test/automated/file-notify-tests.el (file-notify--test-with-events):
15149         Remove argument TIMEOUT.  Adapt all callees.
15150         (file-notify-test02-events, file-notify-test04-file-validity):
15151         Skip for cygwin.  (Bug#21804)
15153 2015-11-05  Stephen Leake  <stephen_leake@stephe-leake.org>
15155         * lisp/progmodes/xref.el: Require semantic/symref during compilation.
15157 2015-11-05  Daiki Ueno  <ueno@gnu.org>
15159         Suppress redundant Pinentry startup messages
15161         * lisp/net/pinentry.el (pinentry-start): Add optional QUIET argument.
15162         * lisp/epg.el: Declare `pinentry-start'.
15163         (epg--start): Call `pinentry-start' with QUIET argument set.
15165 2015-11-05  Xue Fuqiao  <xfq.free@gmail.com>
15167         * doc/emacs/ack.texi (Acknowledgments): Updates.
15169 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
15171         * test/automated/elisp-mode-tests.el: Silence some run-time warnings.
15172         (xref-elisp-deftest): Bind `find-file-suppress-same-file-warnings' to t.
15174 2015-11-05  Tassilo Horn  <tsdh@gnu.org>
15176         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
15177         Add prettification support for \times.
15179 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
15181         * test/automated/process-tests.el: Skip tests when bash is unavailable.
15182         (process-test-sentinel-accept-process-output)
15183         (process-test-sentinel-sit-for): skip-unless bash executable found.
15185 2015-11-05  Eli Zaretskii  <eliz@gnu.org>
15187         Add test for bug #21831
15189         * test/automated/process-tests.el
15190         (start-process-should-not-modify-arguments): New test.  (Bug#21831)
15191         Suggested by Nicolas Richard <youngfrog@members.fsf.org>
15193 2015-11-04  Stefan Monnier  <monnier@iro.umontreal.ca>
15195         * lisp/emacs-lisp/eieio-compat.el: Typo caught by tests.
15197         (eieio--generic-static-object-generalizer): Fix typo.
15198         * test/automated/eieio-tests.el: Byte-compile it again.  It looks
15199         like the underlying cause of bug#17852 was fixed in the mean time.
15201 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
15203         Revert "* lisp/subr.el (when): Use `macroexp-progn'"
15205         This reverts commit 8e843831eaf271801836b7a3e4dd3b4fb0bb72b8.
15206         It breaks bootstrapping (duh).
15208 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
15210         * lisp/files.el (report-errors): Obsolete.
15212         (normal-mode, hack-local-variables, dir-locals-find-file):
15213         Use `with-demoted-errors' instead.
15215 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
15217         * lisp/subr.el (when): Use `macroexp-progn'.
15219         * test/automated/subr-tests.el (subr-test-when): New test.
15221 2015-11-04  Juanma Barranquero  <lekktu@gmail.com>
15223         * lisp/progmodes/xref.el: Doc fixes.
15224         (xref-make-file-location, xref-make-buffer-location, xref-make)
15225         (xref-make-bogus-location, xref-make-match): Add cross-references.
15226         (xref--insert-xrefs): Fix typo in docstring.
15228 2015-11-04  Anders Lindgren  <andlind@gmail.com>
15230         Render fringe bitmaps correctly on NextStep (bug#21301)
15232         The fringe bitmaps were inverted, the background was not transparent,
15233         the image data was horizontally mirrored, and periodic fringe bitmaps
15234         were not supported.
15236         * src/nsimage.m ([EmacsImage initFromXBM:width:height:fg:bg:]):
15237         When both background and foreground colors are 0, set the background
15238         alpha channel to 0 (making the background transparent).  When
15239         copying the image data, do this from the most significant bit
15240         (leftmost) to the least (rightmost), to avoid mirroring.
15241         * src/nsterm.m (ns_draw_fringe_bitmap): Don't invert the image bits.
15242         Add support for periodic images (e.g. the empty line indicator).
15244 2015-11-03  Michael Heerdegen  <michael_heerdegen@web.de>
15246         * lisp/emacs-lisp/pcase.el (pcase): Tweak docstring.
15248 2015-11-03  Nicolas Petton  <nicolas@petton.fr>
15250         * admin/MAINTAINERS: Add seq-tests.el, map-tests.el, and thunk-tests.el.
15252         * admin/MAINTAINERS: Add thunk.el.
15254 2015-11-03  Jay Belanger  <jay.p.belanger@gmail.com>
15256         * lisp/calc/calc.el (calc-bug-address): Change maintainer address.
15258 2015-11-03  Michael Albinus  <michael.albinus@gmx.de>
15260         Fix a stupid error in gfilenotify.c
15262         * src/gfilenotify.c (dir_monitor_callback): Cancel monitor only,
15263         if we've got a `deleted' signal AND the file name is the watched one.
15265 2015-11-03  Stephen Leake  <stephen_leake@stephe-leake.org>
15267         Fix Bug#21816; case insensitive file system in elisp-mode-tests.el
15269         * test/automated/elisp-mode-tests.el (xref-elisp-test-run):
15270         Use case-insensitive string compare for file names.
15271         (emacs-test-dir): Add 'downcase' to cause case differences (at
15272         least on my system).
15274 2015-11-02  Juanma Barranquero  <lekktu@gmail.com>
15276         flymake-tests.el (warning-predicate-rx-gcc): Fix check
15278         * test/automated/flymake-tests.el (warning-predicate-rx-gcc):
15279         Also check that "make" is available, not just "gcc".
15281 2015-11-02  Ken Brown  <kbrown@cornell.edu>
15283         Document behavior of collation on Cygwin
15285         * test/automated/fns-tests.el (fns-tests-collate-sort): Mark as
15286         expected failure on Cygwin.
15287         * doc/lispref/strings.texi (Text Comparison): Document that
15288         punctuation and whitespace are not ignored for sorting on Cygwin.
15290 2015-11-02  Dani Moncayo  <dmoncayo@gmail.com>
15292         * build-aux/msys-to-w32: Prevent double slashes in w32 path list.
15294 2015-11-01  Glenn Morris  <rgm@gnu.org>
15296         * lisp/progmodes/f90.el (f90-no-block-limit): Add associate.
15297         (Bug#21794)
15298         * test/automated/f90.el (f90-test-bug21794): New test.
15300 2015-11-01  Juanma Barranquero  <lekktu@gmail.com>
15302         Fix incompatibility with TCC in test for bug#18745
15304         * test/automated/process-tests.el (process-test-quoted-batfile):
15305         Remove spaces unrelated to the bug being tested.
15307 2015-11-01  Michael Albinus  <michael.albinus@gmx.de>
15309         Improve completion in tramp-gvfs.el
15311         * lisp/net/tramp-gvfs.el (tramp-zeroconf-parse-device-names):
15312         Rename from `tramp-zeroconf-parse-service-device-names'.
15313         (tramp-zeroconf-parse-webdav-device-names): Remove.  Code merged
15314         with `tramp-zeroconf-parse-device-names'.
15315         (tramp-gvfs-parse-device-names): New defun.
15316         (top): Use it when `tramp-zeroconf-parse-device-names' is not
15317         applicable.
15319         * lisp/net/tramp.el (tramp-set-completion-function): The argument
15320         could also be a zeroconf service type.
15322 2015-10-31  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
15324         * lisp/net/ntlm.el: Change version to 2.0.0.
15326 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
15328         Fix bug#21762
15329         * lisp/progmodes/python.el (python-syntax-closing-paren-p): Check with
15330         `eql' instead of `=' to accommodate the case that (syntax-after (point))
15331         returns nil.
15332         * test/automated/python-tests.el (python-indent-inside-paren-7):
15333         New test.
15335 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
15337         * test/automated/python-tests.el: Avoid warnings.
15338         (python-tests-with-temp-buffer, python-tests-with-temp-file):
15339         Bind `python-indent-guess-indent-offset' to nil.
15341 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
15343         * src/alloc.c: Silence compiler warnings.
15344         (pointers_fit_in_lispobj_p, mmap_lisp_allowed_p): #ifdef DOUG_LEA_MALLOC.
15346 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
15348         * etc/NEWS: Fix js-jsx-mode entry punctuation.
15350 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
15352         Add JSX indentation via js-jsx-mode  (Bug#21799)
15354         * lisp/progmodes/js.el: Add JSX indentation support.
15355         (js--jsx-end-tag-re)
15356         (js--jsx-after-tag-re): New variables.
15357         (js--jsx-find-before-tag)
15358         (js--jsx-indented-element-p)
15359         (js--as-sgml)
15360         (js--expression-in-sgml-indent-line)
15361         (js-jsx-indent-line)
15362         (js-jsx-mode): New functions.
15363         * test/indent/js-jsx.js: New file.
15364         * etc/NEWS: Add information about js-jsx-mode.
15366 2015-10-31  Michael Albinus  <michael.albinus@gmx.de>
15368         Minor fix in filenotify.el
15370         * lisp/filenotify.el (file-notify--event-file-name)
15371         (file-notify--event-file1-name): Normalize result with
15372         `directory-file-name'.
15374 2015-10-31  Eli Zaretskii  <eliz@gnu.org>
15376         Avoid errors in redisplay--pre-redisplay-functions
15378         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Don't
15379         use 'bobp', instead compare window-point with 1.  (Bug#21730)
15381 2015-10-30  Paul Eggert  <eggert@cs.ucla.edu>
15383         Merge from gnulib
15385         This incorporates:
15386         2015-10-30 intprops: add WRAPV and const flavors for GCC 5
15387         2015-10-25 stdalign: port to Sun C 5.9
15388         * doc/misc/texinfo.tex, lib/intprops.h, lib/stdalign.in.h:
15389         Copy from gnulib.
15391 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
15393         * src/w32proc.c (_NLSCMPERROR): Fix a typo in the name of this macro.
15394         (w32_compare_strings): Adjust for the correction.
15396 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
15398         * test/automated/vc-tests.el (vc-test--state)
15399         (vc-test--working-revision, vc-test--checkout-model):
15400         Add result messages.
15402 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
15404         * test/automated/faces-tests.el: Add another test
15406 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
15408         * lisp/faces.el (faces--attribute-at-point): Fix bug
15409         introduced by previous commit.
15411 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
15413         * test/automated/faces-tests.el: New file.
15415 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
15417         * lisp/faces.el: Refactor common code and fix a bug.
15418         (faces--attribute-at-point): New function.  Fix a bug when the
15419         face at point is a list of faces and the desired attribute is not
15420         on the first one.
15421         (foreground-color-at-point, background-color-at-point): Use it.
15423 2015-10-30  Przemysław Wojnowski  <esperanto@cumego.com>
15425         * etc/tutorials/TUTORIAL.translators: Fix PL names.
15427 2015-10-30  Juanma Barranquero  <lekktu@gmail.com>
15429         * lisp/character-fold.el: Provide `character-fold'.
15431 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
15433         * etc/themes/tsdh-dark-theme.el (tsdh-dark): Add more faces
15434         for Gnus and ivy.
15436 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
15438         Some minor fixes for tramp-gvfs.el
15440         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
15441         An attribute returned by gvfs-info might be empty.  In case of
15442         undetermined uid or gid, return "UNKNOWN" or -1, respectively.
15443         (tramp-zeroconf-parse-service-device-names): New defun.
15444         Derived from `tramp-zeroconf-parse-workstation-device-names'.
15445         (top): Add completion functions for "afp" and "smb" methods.
15447 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
15449         * test/automated/character-fold-tests.el: New file
15451 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
15453         * test/automated/sort-tests.el: New file.
15454         Tests in this file are randomly generated and then tested with
15455         regular, reverse, and case-fold sorting.
15457 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
15459         Describe known problems with pinning Emacs to taskbar
15461         * etc/PROBLEMS: Describe the problem with pinning Emacs to taskbar
15462         on Windows 10.  For the details, see the discussion starting at
15463         http://lists.gnu.org/archive/html/help-emacs-windows/2015-09/msg00000.html.
15465 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
15467         * lisp/isearch.el: Avoid an error that blocks isearch.
15468         (isearch-update): Don't error if `isearch--current-buffer' has
15469         been killed.
15471         * test/automated/isearch-tests.el (isearch--test-update):
15472         New file.
15474 2015-10-30  Phil Sainty  <psainty@orcon.net.nz>
15476         Fix documentation of 'beginning/end-of-buffer'
15478         * lisp/simple.el (beginning-of-buffer, end-of-buffer): Clarify
15479         conditions under which the mark will be pushed at the previous
15480         position.  (Bug#21748)
15482 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
15484         Add RefTeX feature idea: editing RefTeX TOC buffers
15486         More face defs for ivy, swiper, ace-window, eshell
15488 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
15490         * lisp/gnus/auth-source.el: Silence lexical-binding warnings.
15491         (auth-source-netrc-use-gpg-tokens): Simplify (symbol-value 'VAR) to
15492         just VAR.
15493         (auth-source-backend-parse): Use make-instance.
15494         (auth-source-search): Remove unused key args.
15495         Remove unused vars `accessor-key' and `backend'.  Avoid `eval'.
15496         (auth-source-search-backends): Use slot names rather than their initarg.
15497         (auth-source-netrc-create):
15498         (auth-source-delete):
15499         (auth-source-secrets-create, auth-source-plstore-search)
15500         (auth-source-macos-keychain-create, auth-source-macos-keychain-search)
15501         (auth-source-plstore-create, auth-source-netrc-search)
15502         (auth-source-netrc-parse): Remove unused key args.
15503         (auth-source-forget+): Simplify the arglist.
15504         (auth-source-macos-keychain-search-items)
15505         (auth-source-token-passphrase-callback-function): Mark unused args.
15506         (auth-source-epa-extract-gpg-token): Remove unused var `plain'.
15507         (pp-escape-newlines): Declare.
15508         (auto-source--symbol-keyword): New function.
15509         (auth-source-plstore-create, auth-source-netrc-create)
15510         (auth-source-netrc-normalize): Use it.
15511         (auth-source-netrc-search): Don't pass :delete to
15512         auth-source-netrc-parse since it doesn't use it.
15513         (auth-source-plstore-create, auth-source-netrc-create): Use plist-get
15514         symbol-value to index in keyword args.
15515         (auth-source-macos-keychain-result-append): Avoid setq.
15516         (auth-source-netrc-create): Remove unused vars `file' and `add'.
15517         (auth-source-user-or-password): Remove unused var `cname'.
15519 2015-10-29  Juri Linkov  <juri@linkov.net>
15521         * lisp/dired.el (dired-unmark-all-files-query): Declare.
15522         (dired-unmark-all-files): Let-bind it and use instead of ‘query’.
15523         (Bug#21746)
15525 2015-10-29  Juri Linkov  <juri@linkov.net>
15527         * lisp/ielm.el (ielm-indent-line): Use non-nil arg of comint-bol
15528         to go to the beginning of text line instead of command line.
15529         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02360.html
15531 2015-10-29  Eli Zaretskii  <eliz@gnu.org>
15533         Fix encoding of saving *Help* buffers
15535         * lisp/help-fns.el (describe-function-1): If we use curved quotes,
15536         set help buffer's buffer-file-coding-system to UTF-8.  (Bug#21780)
15538 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
15540         * lisp/emacs-lisp/cl-generic.el: Add (major-mode MODE) context.
15541         (cl--generic-derived-specializers): New function.
15542         (cl--generic-derived-generalizer): New generalizer.
15543         (cl-generic-generalizers): New specializer (derived-mode MODE).
15544         (cl--generic-split-args): Apply the rewriter, if any.
15545         (cl-generic-define-context-rewriter): New macro.
15546         (major-mode): Use it to define a new context-rewriter, so we can write
15547         `(major-mode MODE)' instead of `(major-mode (derived-mode MODE))'.
15549         * lisp/frame.el (window-system): New context-rewriter so we can write
15550         `(window-system VAL)' instead of (window-system (eql VAL)).
15551         (cl--generic-split-args): Apply the rewriter, if any.
15552         (frame-creation-function): Use the new syntax.
15554         * lisp/term/x-win.el (window-system-initialization)
15555         (handle-args-function, frame-creation-function)
15556         (gui-backend-set-selection, gui-backend-selection-owner-p)
15557         (gui-backend-selection-exists-p, gui-backend-get-selection):
15558         * lisp/term/w32-win.el (window-system-initialization)
15559         (handle-args-function, frame-creation-function)
15560         (gui-backend-set-selection, gui-backend-get-selection)
15561         (gui-backend-selection-owner-p, gui-backend-selection-exists-p):
15562         * lisp/term/pc-win.el (gui-backend-get-selection)
15563         (gui-backend-selection-exists-p, gui-backend-selection-owner-p)
15564         (gui-backend-set-selection, window-system-initialization)
15565         (frame-creation-function, handle-args-function):
15566         * lisp/term/ns-win.el (window-system-initialization)
15567         (handle-args-function, frame-creation-function)
15568         (gui-backend-set-selection, gui-backend-selection-exists-p)
15569         (gui-backend-get-selection):
15570         * lisp/startup.el (handle-args-function):
15571         * lisp/term/xterm.el (gui-backend-get-selection)
15572         (gui-backend-set-selection): Use the new syntax.
15574 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
15576         * test/indent/css-mode.css: Add tests for url(...) syntax.
15578 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
15580         * lisp/emacs-lisp/smie.el: Use `declare' for `pure'.
15581         (smie-precs->prec2, smie-merge-prec2s, smie-bnf->prec2)
15582         (smie-prec2->grammar): Use `declare'.
15584 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
15586         * lisp/emacs-lisp/cl-generic.el: Accommodate future changes.
15587         (cl--generic-generalizer): Add `name' field.
15588         (cl-generic-make-generalizer): Add corresponding `name' argument.
15589         (cl-generic-define-generalizer): New macro.
15590         (cl--generic-head-generalizer, cl--generic-eql-generalizer)
15591         (cl--generic-struct-generalizer, cl--generic-typeof-generalizer)
15592         (cl--generic-t-generalizer): Use it.
15593         (cl-generic-ensure-function): Add `noerror' argument.
15594         (cl-generic-define): Use it so we don't follow aliases.
15595         (cl-generic-define-method): Preserve pre-existing ordering of methods.
15596         (cl--generic-arg-specializer): New function.
15597         (cl--generic-cache-miss): Use it.
15598         (cl-generic-generalizers): Only fset a temporary definition
15599         during bootstrap.
15600         (cl--generic-struct-tag, cl--generic-struct-specializers):
15601         Allow extra arguments.
15603         * lisp/emacs-lisp/eieio-compat.el
15604         (eieio--generic-static-symbol-generalizer)
15605         (eieio--generic-static-object-generalizer):
15606         Use cl-generic-define-generalizer.
15607         (eieio--generic-static-symbol-specializers): Allow extra arguments.
15609         * lisp/emacs-lisp/eieio-core.el (eieio--generic-generalizer)
15610         (eieio--generic-subclass-generalizer):
15611         Use cl-generic-define-generalizer.
15612         (eieio--generic-subclass-specializers): Allow extra arguments.
15614 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
15616         * lisp/emacs-lisp/bytecomp.el (compile-defun): Add defvars in scope.
15618 2015-10-29  Michael Albinus  <michael.albinus@gmx.de>
15620         Add "afp" method to Tramp
15622         * doc/misc/tramp.texi (GVFS based methods): Describe `afp' method.
15624         * lisp/net/tramp-gvfs.el (tramp-gvfs-methods): Add "afp" method.
15625         (tramp-gvfs-handle-expand-file-name)
15626         (tramp-gvfs-handler-mounted-unmounted)
15627         (tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec)
15628         (tramp-gvfs-maybe-open-connection): Support also "afp".
15629         (tramp-gvfs-handle-file-attributes): Handle the case of empty
15630         "owner::user" and "owner::group" entries.
15632 2015-10-29  Andy Moreton  <andrewjmoreton@gmail.com>
15634         Handle negative coordinates in ‘x_calc_absolute_position’
15636         * src/w32term.c (x_calc_absolute_position): Find display origin to
15637         allow for negative coordinates.
15639 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
15641         (internal--syntax-propertize): Save match-data here (bug#21766)
15643         * lisp/emacs-lisp/syntax.el (internal--syntax-propertize): Save match-data.
15644         * lisp/simple.el (delete-trailing-whitespace): Undo last change.
15646 2015-10-28  Dmitry Gutov  <dgutov@yandex.ru>
15648         Don't require default-directory to end with a slash
15650         * doc/lispref/files.texi (Magic File Names): Document the change
15651         in unhandled-file-name-directory.
15653         * lisp/url/url-handlers.el
15654         (url-handler-unhandled-file-name-directory): Update accordingly.
15656         * src/buffer.c (default-directory): Update the docsting.
15658         * src/fileio.c (unhandled-file-name-directory): Default to calling
15659         `file-name-as-directory'
15660         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02294.html).
15662 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
15664         * lisp/isearch.el: Delete some outdated comments.
15666 2015-10-28  Vibhav Pant  <vibhavp@gmail.com>
15668         Fix eshell/clear not working if the output has a small line count
15670         * lisp/eshell/esh-mode.el (eshell/clear): Use (window-size) as the
15671         number of newlines to be inserted. This fixes the issue where
15672         eshell/clear wouldn't work if the prompt was not at the bottom of the
15673         window, and the output wasn't too long.
15675 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
15677         * lisp/files.el (write-file): Use vc-refresh-state.
15679         * lisp/autorevert.el (auto-revert-handler): Use vc-refresh-state.
15681         * lisp/vc/pcvs.el (cvs-revert-if-needed): Use vc-refresh-state.
15683 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
15685         * lisp/emacs-lisp/macroexp.el: Tweak macroexp-if optimizations.
15686         (macroexp-unprogn): Make sure we never return an empty list.
15687         (macroexp-if): Remove unused (and unsafe) optimization.
15688         Optimize (if A T (if B T E)) into (if (or A B) T E) instead, which does
15689         occur occasionally.
15691 2015-10-28  Juanma Barranquero  <lekktu@gmail.com>
15693         Fix bug#21766 and add test
15694         * lisp/simple.el (delete-trailing-whitespace): Save match data when
15695         calling `skip-syntax-backward'.
15696         * test/automated/simple-test.el (simple-delete-trailing-whitespace):
15697         New test.
15699 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
15701         * doc/lispref/sequences.texi (Sequence Functions): Fix typo.
15703 2015-10-28  Paul Eggert  <eggert@cs.ucla.edu>
15705         * src/dispnew.c (init_display): Simplify overflow checking.
15707 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
15709         * lisp/character-fold.el (character-fold-to-regexp): Fix case
15710         where string ends in space
15712 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
15714         * lisp/emacs-lisp/seq.el (seq-mapn): New function.
15716         * doc/lispref/sequences.texi (Sequence Functions): Document seq-mapn.
15718 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
15720         * lisp/character-fold.el: Make compatible with lax-whitespace.
15721         (character-fold-to-regexp): Rework internals to play nice with
15722         lax-whitespacing.
15724         When the user types a space, we want to match the table entry for
15725         ?\s, which is generally a regexp like "[ ...]".  However, the
15726         `search-spaces-regexp' variable doesn't "see" spaces inside these
15727         regexp constructs, so we need to use "\\( \\|[ ...]\\)" instead (to
15728         manually expose a space).
15730         Furthermore, the lax search engine acts on a bunch of spaces, not
15731         on individual spaces, so if the string contains sequential spaces
15732         like "  ", we need to keep them grouped together like this:
15733         "\\(  \\|[ ...][ ...]\\)".
15735 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
15737         * lisp/isearch.el: Refactor momentary messages.
15738         (isearch--momentary-message): New function.
15739         (isearch-toggle-lax-whitespace, isearch-toggle-case-fold)
15740         (isearch-toggle-invisible): Use it.
15742 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
15744         * lisp/isearch.el: Define all toggles with `isearch-define-mode-toggle'.
15745         (isearch-define-mode-toggle): New macro.
15746         (isearch-toggle-invisible): Rename to
15747         `isearch-define-mode-toggle'.
15748         (isearch-toggle-case-fold, isearch-toggle-invisible)
15749         (isearch-toggle-regexp, isearch-toggle-lax-whitespace): Define
15750         with `isearch-define-mode-toggle'.
15752 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
15754         Avoid using `add-to-list' on a let-local var in tramp-smb.el
15756         * lisp/net/tramp-compat.el (tramp-compat-delete-dups): New defun.
15757         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files): Use it.
15759 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
15761         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files):
15762         Revert 692bce5b9eccfae19ae2a5a23a9ccd8d6bf86076, `delete-dups'
15763         does not exist in XEmacs 21.4.
15765 2015-10-28  Anders Lindgren  <andlind@gmail.com>
15767         Fixed OS X startup crash
15769         Input events started to arrive before ns_term_init() was finished.
15770         Solved by blocking input.  This also seems to correct the "You
15771         can't open the application "Emacs" because it may be damaged or
15772         incomplete" error issued when double-clicking on the Emacs
15773         application.
15775         * src/nsterm.m (ns_constrain_all_frames, ns_init_term): Block input.
15776         * src/nsterm.m (ns_send_appdefined, EmacsApp): Trace output.
15778 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
15780         * src/process.c (Fget_buffer_process): Improve docstring.
15781         Document the fact that it doesn't return dead processes.
15783 2015-10-28  Anders Lindgren  <andlind@gmail.com>
15785         Fix incorrect NextStep tool-bar-mode -- wrong number of rows in frame.
15787         * src/nsterm.h (struct ns_output): New flag, in_animation.
15788         * src/nsfns.m (Fx_create_frame): Initialize in_animation flag.
15789         * src/nsmenu.m (free_frame_tool_bar, update_frame_tool_bar): Set
15790         in_animation flag around call to "setVisible". Set new tool bar
15791         height before call to setVisible.
15792         * src/nsterm.m (x_set_window_size): Don't call [view setRow:
15793         andColumns:] as this fools the subsequent call to updateFrameSize
15794         from performing the real resize.
15795         (windowDidResize): Don't update anything when in_animation is
15796         non-zero.
15798         Trace output.
15800         * src/nsmenu.m (free_frame_tool_bar, update_frame_tool_bar)
15801         (EmacsToolbar):
15802         * src/nsterm.m (x_set_window_size, updateFrameSize)
15803         ([EmacsView setRows: andColumns:])
15805 2015-10-28  Nicolas Petton  <nicolas@petton.fr>
15807         * lisp/emacs-lisp/thunk.el (thunk-delay): Fix the macro.
15809 2015-10-28  Tassilo Horn  <tsdh@gnu.org>
15811         Prettify TeX macros not ending in a word char
15813         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
15814         Prettify macros which don't end in a word character.
15816 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
15818         Pipe Hg commit descriptions through 'tabindent'
15820         * lisp/vc/vc-hg.el (vc-hg-log-format): Pipe commit description
15821         through 'tabindent'.
15822         (vc-hg-log-view-mode): Set tab-width to 2 locally.
15823         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02259.html)
15825 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
15827         * lisp/net/tramp-smb.el: Avoid using `add-to-list' on a let-local var.
15828         (tramp-smb-handle-directory-files): Use `delete-dups'.
15830         * lisp/net/tramp.el (auto-save-file-name-transforms): Declare.
15832 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
15834         * lisp/international/ccl.el: Use lexical-binding.
15835         (ccl-compile-if): Remove unused var `false-ic'.
15836         (ccl-compile-write-repeat): Remove unused var `i'.
15837         (ccl-compile-map-single): Remove unused var `id'.
15838         (ccl-dump, ccl-dump-binary): Use explicit let-binding to bind the
15839         dynamic var `ccl-code'.
15841 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
15843         * lisp/json.el (json-new-object): Optimize trivial `list' call.
15845 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
15847         * lisp/help.el: Fix bug with incorrect arglist string.
15848         (help-add-fundoc-usage): Don't mistake a mis-formatted string
15849         for a list.
15851 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
15853         * lisp/gnus/gnus-topic.el: Silence some warnings.
15854         (gnus-topic-prepare-topic): Remove unused var `topic'.
15855         (gnus-topic-remove-topic): Mark unused arg `hide'.
15856         (gnus-tmp-header): Declare.
15857         (gnus-topic-goto-missing-group): Remove unused var `entry'.
15858         (gnus-topic-unmark-topic): Mark unused arg `dummy'.
15859         (gnus-topic-copy-matching): Mark unused arg `copyp'.
15860         Move initialization of `topic' into its declaration.
15862 2015-10-27  Stephen Leake  <stephen_leake@stephe-leake.org>
15864         Minor CEDET fixes
15866         * lisp/cedet/cedet-global.el (cedet-gnu-global-gtags-call):
15867         Handle warnings from gtags about invalid options.
15868         (cedet-gnu-global-create/update-database): Do incremental update
15869         properly.
15871         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
15872         Get monotone root right.
15874 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
15876         Fall back to polling in autorevert when needed
15878         * lisp/autorevert.el (auto-revert-notify-handler): When a
15879         `stopped' event arrives from file notification, fall back to polling.
15881         * test/automated/file-notify-tests.el
15882         (file-notify-test03-autorevert): Extend test for polling when file
15883         notification ceases to work.
15885 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
15887         Show full commit messages in 'hg log' when appropriate
15889         * lisp/vc/vc-hg.el (vc-hg-log-format): New variable.
15890         (vc-hg-print-log, vc-hg-expanded-log-entry): Use it.
15891         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02191.html)
15893 2015-10-27  Nicolas Petton  <nicolas@petton.fr>
15895         Use a plain SVG file for the icon
15897         * etc/images/icons/hicolor/scalable/apps/emacs.svg: Use a plain SVG
15898           format instead of the Inkscape SVG format.
15900 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
15902         Fix subtle bug in auto-revert-tests.el
15904         * test/automated/auto-revert-tests.el
15905         (auto-revert-test02-auto-revert-mode-dired): Narrow *Messages*
15906         buffer where it belongs to.  (Bug#21668)
15908 2015-10-26  Nicolas Petton  <nicolas@petton.fr>
15910         * lisp/emacs-lisp/map.el: Better docstrings.
15912         * lisp/emacs-lisp/seq.el: Better docstrings.
15914         * lisp/emacs-lisp/seq.el: Rename all seq arguments to sequence.
15916 2015-10-26  Phillip Lord  <phillip.lord@russet.org.uk>
15918         * lisp/emacs-lisp/ert.el: Print results without newline escaping.
15920 2015-10-26  Stephen Leake  <stephen_leake@stephe-leake.org>
15922         Clarify that load-path contents should be directory file names
15924         * doc/lispref/files.texi (Directory Names): Define and use "directory
15925         file name".  Recommend `expand-file-name'.
15927         * src/lread.c (load-path): Fix doc string; elements are directory file
15928         names.
15930 2015-10-26  Eli Zaretskii  <eliz@gnu.org>
15932         Fix simple-test.el test
15934         * test/automated/simple-test.el (simple-test--dummy-buffer):
15935         Make sure indentation doesn't use TABs, otherwise the 6th test
15936         might fail.
15938 2015-10-26  Mark Oteiza  <mvoteiza@udel.edu>
15940         * lisp/net/eww.el (eww-bookmark-prepare): Use truncate-string-to-width.
15941         `substring' does not account for full width characters.
15943 2015-10-26  Michael Albinus  <michael.albinus@gmx.de>
15945         Further work on `stopped' events in filenotify.el
15947         * doc/lispref/os.texi (File Notifications): Rework examples.
15949         * lisp/filenotify.el (file-notify--rm-descriptor): Optional parameter.
15950         (file-notify--rm-descriptor, file-notify-callback): Improve check
15951         for sending `stopped' event.
15952         (file-notify-add-watch): Check for more events for `inotify'.
15954         * test/automated/file-notify-tests.el
15955         (file-notify--test-expected-events): New defvar.
15956         (file-notify--test-with-events): Use it.
15957         (file-notify--test-cleanup): Make it more robust when deleting
15958         directories.
15959         (file-notify--test-event-test): Check also for watched directories.
15960         (file-notify--test-event-handler): Suppress temporary .#files.
15961         (file-notify-test02-events, file-notify-test04-file-validity):
15962         Rework `stopped' events.
15963         (file-notify-test05-dir-validity): Wait for events when appropriate.
15965 2015-10-26  Artur Malabarba  <bruce.connor.am@gmail.com>
15967         * src/keyboard.c (post-command-hook): Shorten docstring.
15969 2015-10-26  Tassilo Horn  <tsdh@gnu.org>
15971         Fix infinite loop in sh-script's SMIE code
15973         * lisp/progmodes/sh-script.el (sh-smie-sh-forward-token): Fix infinite
15974         loop (bug#21747).
15976 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
15978         * lisp/isearch.el (search-default-regexp-mode): Revert to nil.
15979         Character-fold search _still_ doesn't play well with
15980         lax-whitespace.  So disable it by default (again) for now.
15982 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
15984         * lisp/isearch.el: No visual feedback for default search mode.
15985         During an isearch where character-folding is the default, we don't
15986         want to take up minibuffer space just to tell the user that
15987         "Char-fold " is on.  The same goes for other modes, if the user
15988         changes the default.  In contrast, if the user toggles OFF the
15989         default mode, they should see "Literal", to distinguish it from
15990         the default mode.
15991         (isearch--describe-regexp-mode): Return "" if describing the
15992         default mode, and return "literal " if describing a plain search
15993         and it is not default.
15995 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
15997         * test/automated/simple-test.el: New file.
15998         Define tests for `newline' and `open-line'.
16000 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
16002         * lisp/simple.el (open-line): Integrate with electric-indent-mode.
16003         Also run `post-self-insert-hook' when called interactively.
16005 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
16007         * lisp/simple.el (open-line): Fix docstring.
16008         Also explain apparently redundant line.
16010 2015-10-25  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
16011             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
16013         Sync with soap-client repository, version 3.0.1
16015         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
16016         Bump version to 3.0.1.
16018         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Update home page.
16020 2015-10-25  Eli Zaretskii  <eliz@gnu.org>
16022         * lisp/progmodes/grep.el (grep): Doc fix.  (Bug#21754)
16024 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
16026         * src/keyboard.c (post-command-hook): Extend the docstring.
16027         Mainly, explain how to use it without hanging Emacs, or giving the
16028         impression that it is hanging.  Also mention `pre-command-hook'.
16029         (pre-command-hook): Mention `post-command-hook'.
16031 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
16033         * lisp/custom.el (custom-declare-variable): Shorten code again.
16034         Without using pcase this time.  We can't use pcase because it is
16035         loaded after custom in loadup.el.  Also add a comment explaining
16036         this to future dummies like me.
16038 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
16040         * doc/lispref/os.texi (File Notifications): Document `stopped event'.
16042 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
16044         Introduce `stopped' event in file notification
16046         * lisp/filenotify.el (file-notify--rm-descriptor): New defun.
16047         (file-notify-rm-watch): Use it.
16048         (file-notify-callback): Implement `stopped' event.
16049         (file-notify-add-watch): Mention `stopped' in the docstring.
16050         Check, that upper directory exists.
16052         * test/automated/file-notify-tests.el (file-notify-test01-add-watch):
16053         Add two test cases.
16054         (file-notify-test02-events): Handle also `stopped' event.
16055         (file-notify-test04-file-validity): Add another test case.
16057 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
16059         Revert commit that broke 'make bootstrap'
16061         * lisp/custom.el (custom-declare-variable): Revert commit
16062         79fac080d277fed07b3c192890ad59d36d9f83b6.  custom.el needs to work
16063         even when pcase has not been defined yet, when doing bootstrapping.
16065 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
16067         Port recent inline functions fix to Standard C
16069         * src/lisp.h (LISP_MACRO_DEFUN, LISP_MACRO_DEFUN_VOID): Remove.
16070         All uses rewritten to define the function directly rather than to
16071         use a macro to define the function.  This conforms to Standard C,
16072         which does not allow stray semicolons at the top level.  I hope it
16073         also avoids the problems with TAGS.  Those macros, though clever,
16074         were pretty confusing anyway, and it wasn’t clear they were worth
16075         the aggravation even without the TAGS problem.
16077 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
16079         * lisp/isearch.el: Make character-fold search the default again.
16081 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
16083         * lisp/character-fold.el: Many improvements.
16084         (character-fold-search-forward, character-fold-search-backward):
16085         New command.
16086         (character-fold-to-regexp): Remove lax-whitespace hack.
16087         (character-fold-search): Remove variable.  Only isearch and
16088         query-replace use char-folding, and they both have their own
16089         variables to configure that.
16091 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
16093         * lisp/isearch.el: Generalize definition of regexp-function toggles.
16094         (isearch-specify-regexp-function): New macro for specifying
16095         possible values of `isearch-regexp-function'.
16096         (isearch-toggle-character-fold, isearch-toggle-symbol)
16097         (isearch-toggle-word): Define with `isearch-specify-regexp-function'.
16099 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
16101         * lisp/isearch.el (search-default-regexp-mode): New variable.
16102         (isearch-mode): Use it.
16104 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
16106         * lisp/isearch.el (search-exit-option, search-slow-window-lines)
16107         (search-slow-speed, search-upper-case)
16108         (search-nonincremental-instead, search-whitespace-regexp)
16109         (search-invisible, isearch-hide-immediately)
16110         (isearch-resume-in-command-history, search-ring-max)
16111         (regexp-search-ring-max, search-ring-update, search-highlight)
16112         (isearch-fail): Delete :group entries.
16114 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
16116         * lisp/custom.el (custom-declare-variable): Shorten code a bit.
16118 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
16120         addpm.c: Silence some warnings.
16122         * nt/addpm.c (DdeCommand): Cast pData argument of DdeClientTransaction
16123         to LPBYTE.
16124         (add_registry): Pass NULL to optional lpClass argument of
16125         RegCreateKeyEx, not an empty string.
16127 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
16129         addpm.c: Do not add obsolete GTK libraries to the path.
16131         * nt/addpm.c (REG_GTK, REG_RUNEMACS_PATH): Delete.
16132         (add_registry): Remove variables `size' and `gtk_key'.
16133         Do not add the GTK DLL directory to the library search path; it is
16134         confusing behavior (in particular, the same Emacs version with and
16135         without invoking addpm will use a different path), and the GTK image
16136         libraries are obsolete anyway.
16138 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
16140         addpm.c: Replace existing registry entries, but do not create new ones
16142         * nt/addpm.c (add_registry): If the Emacs registry key exists, replace
16143         existing values from previous versions, but do not add new ones; the
16144         key could exist for other reasons unrelated to old Emacsen, like X-style
16145         resources, or to set some environment variables like HOME or LANG, and
16146         in that case we don't want to populate it with obsolete values.
16148 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
16150         * nt/addpm.c (add_registry): Do not compute unused return value.
16152 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
16154         addpm.c: Don't pass REG_OPTION_NON_VOLATILE to RegOpenKeyEx
16156         * nt/addpm.c (add_registry): Pass 0 to ulOptions argument of
16157         RegOpenKeyEx, not REG_OPTION_NON_VOLATILE.  This doesn't change
16158         current behavior because REG_OPTION_NON_VOLATILE is defined to
16159         be 0L anyway, but that option is actually documented only for
16160         RegCreateKeyEx.
16162 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
16164         * src/w32notify.c (Fw32notify_add_watch): Fix version check.
16166 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
16168         Update frame title when redisplay scrolls selected window
16170         * src/xdisp.c (redisplay_window): Reconsider the frame's title
16171         when the mode-line of the frame's selected window needs to be
16172         updated.
16174 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
16176         Update frame title when scrolling the selected window
16178         * src/window.c (wset_update_mode_line): New function, sets either
16179         the window's update_mode_line flag or the global update_mode_lines
16180         variable.
16181         (Fset_window_start, set_window_buffer, window_scroll_pixel_based)
16182         (window_scroll_line_based): Call it instead of only setting the
16183         window's update_mode_line flag.
16185 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
16187         An even better fix for bug#21739
16189         * src/window.c (set_window_buffer): If the window is the frame's
16190         selected window, set update_mode_lines, not the window's
16191         update_mode_line flag.
16192         * src/buffer.c (Fkill_buffer): Undo last change.
16193         (set_update_modelines_for_buf): Function deleted.
16195 2015-10-24  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
16196             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
16198         Sync with soap-client repository, version 3.0.0
16200         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
16201         Bump version to 3.0.0.
16203         * lisp/net/soap-inspect.el: Merge in changes from Emacs master branch.
16205         * lisp/net/soap-client.el: Merge in changes from Emacs master branch.
16207         * lisp/net/soap-inspect.el: Shorten first line description.
16209         * lisp/net/soap-client.el: Make a small whitespace fix.
16211         * lisp/net/soap-inspect.el: Update copyright years.
16213         * lisp/net/soap-client.el (soap-encoded-namespaces): Move above
16214         first use in soap-encode-xs-element.
16216         * lisp/net/soap-client.el (soap-type-is-array?): new defun
16217         (soap-encode-xs-element): handle array elements in this function
16218         (soap-encode-xs-complex-type): flag error if asked to encode an
16219         array type, this is handled in `soap-encode-xs-element'
16221         * lisp/net/soap-inspect.el (soap-inspect-xs-attribute-group):
16222         Do not print type for attribute group.
16224         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute-group)
16225         New function.
16226         (soap-inspect-xs-attribute-group): Likewise.
16228         * lisp/net/soap-inspect.el
16229         (soap-resolve-references-for-xs-attribute-group): Resolve
16230         references of attributes in an attribute group.
16232         * lisp/net/soap-client.el (soap-decode-xs-attributes): Process attribute
16233         type directly, not through soap-wsdl-get.
16235         * lisp/net/soap-client.el (soap-xs-parse-attribute): Leave reference
16236         nil if reference attribute is nil.
16238         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
16239         Convert XML schema attributes to xsd:string.
16241         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute):
16242         New function.
16243         (soap-sample-value-for-xs-simple-type): Prepend attributes to result.
16244         (soap-sample-value-for-xs-complex-type): Likewise.
16245         (soap-inspect-xs-attribute): New function.
16246         (soap-inspect-xs-simple-type): Print attributes.
16247         (soap-inspect-xs-complex-type): Likewise.
16249         * lisp/net/soap-inspect.el (soap-resolve-references-for-xs-simple-type):
16250         Resolve references for attributes.
16251         (soap-resolve-references-for-xs-complex-type): Likewise.
16253         * lisp/net/soap-client.el (soap-xml-node-find-matching-child):
16254         Rename from soap-xml-node-first-child.
16255         (soap-xs-parse-attribute): Call soap-xml-node-find-matching-child.
16256         (soap-xs-parse-simple-type): Likewise.
16258         * lisp/net/soap-client.el (soap-invoke-async): Add error checking.
16260         * lisp/net/soap-client.el (soap-invoke-internal): New function.
16261         (soap-invoke-async): Call soap-invoke-internal.
16262         (soap-invoke): Likewise.
16264         * lisp/net/soap-client.el (soap-invoke-async): Ensure buffer passed to
16265         url-retrieve callback is killed.
16267         * lisp/net/soap-client.el (soap-parse-wsdl-phase-validate-node):
16268         Rename function.
16269         (soap-parse-wsdl-phase-fetch-imports): Likewise.
16270         (soap-parse-wsdl-phase-parse-schema): Likewise.
16271         (soap-parse-wsdl-phase-fetch-schema): Likewise.
16272         (soap-parse-wsdl-phase-finish-parsing): Likewise.
16273         (soap-parse-wsdl): Update calls.
16275         * lisp/net/soap-client.el (soap-invoke-async): Fix callback invocation.
16277         * lisp/net/soap-client.el (soap-invoke-async): New function.
16278         (soap-invoke): Reimplement using soap-invoke-async.
16280         * lisp/net/soap-client.el (soap-parse-server-response):
16281         Improve docstring.
16282         (soap-invoke): Inline call to soap-parse-server-response.
16284         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
16285         Prevent incorrect warning.
16287         * lisp/net/soap-client.el (soap-parse-server-response):
16288         Rename soap-process-url-response.  Destroy the mime part.
16289         (soap-invoke): Call soap-parse-server-response.
16291         * lisp/net/soap-client.el: Update copyright date.
16293         * lisp/net/soap-client.el: Fix checkdoc issues.
16295         * lisp/net/soap-client.el: Fix indentation and long lines.
16297         * lisp/net/soap-client.el (soap-time-format): Remove variable.
16298         (soap-encode-xs-basic-type): Simplify date-time format detection.
16299         (soap-decode-xs-basic-type): Remove soap-time-format support.
16301         * lisp/net/soap-client.el (soap-process-url-response): New function.
16302         (soap-fetch-xml-from-url): Call soap-process-url-response.
16303         (soap-parse-wsdl-phase-1): New function.
16304         (soap-parse-wsdl-phase-2): Likewise.
16305         (soap-parse-wsdl-phase-3): Likewise.
16306         (soap-parse-wsdl-phase-4): Likewise.
16307         (soap-parse-wsdl-phase-5): Likewise.
16308         (soap-parse-wsdl): Call phase functions.
16310         * lisp/net/soap-client.el (soap-decode-xs-basic-type):
16311         Remove one-argument and call.
16313         * lisp/net/soap-client.el (soap-decode-date-time): Improve docstring.
16315         * lisp/net/soap-client.el (soap-xmlschema-imports): Remove variable.
16316         (soap-parse-schema): Add wsdl argument.  Look up XML schema
16317         imports from wsdl.
16318         (soap-load-wsdl): Do not set soap-xmlschema-imports.
16319         (soap-parse-wsdl): Get XML schema imports from wsdl.
16321         * lisp/net/soap-client.el (soap-current-file): Remove variable.
16322         (soap-wsdl): Add current-file slot.
16323         (soap-fetch-xml-from-url): Add wsdl argument.  Look up current
16324         file from wsdl.
16325         (soap-fetch-xml-from-file): Likewise.
16326         (soap-fetch-xml): Likewise.
16327         (soap-load-wsdl): Always create wsdl object first.
16328         (soap-parse-wsdl): Pass wsdl to soap-fetch-xml.
16330         * lisp/net/soap-client.el (soap-xs-element): Add is-group slot.
16331         (soap-xs-parse-element): Set is-group slot.
16332         (soap-resolve-references-for-xs-element): Skip is-group elements.
16333         (soap-xs-complex-type): Add is-group slot.
16334         (soap-xs-parse-complex-type): Set is-group slot.
16335         (soap-xs-parse-sequence): Parse xsd:group elements.
16336         (soap-resolve-references-for-xs-complex-type): Inline elements
16337         from referenced xsd:group nodes.
16338         (soap-parse-schema): Parse xsd:group nodes.
16340         * lisp/net/soap-client.el (soap-invoke):
16341         Don't set url-http-version to 1.0.
16343         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
16344         Allow choice nodes to accept multiple values.
16346         * lisp/net/soap-client.el (soap-encode-body): Check parameters argument
16347         for extra header values.
16349         * lisp/net/soap-client.el (soap-well-known-xmlns):
16350         Add wsa and wsaw tags.
16351         (soap-operation): Add input-action and output-action slots.
16352         (soap-parse-operation): Parse wsaw:Action nodes.
16353         (soap-encode-body): Encode service-url for WS-Addressing.
16354         (soap-create-envelope): Likewise.
16355         (soap-invoke): Update soap-create-envelope call to provide
16356         service-url argument.
16358         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
16359         Support xsi:type override attribute.
16360         (soap-decode-array): Likewise.
16362         * lisp/net/soap-client.el (soap-parse-schema):
16363         Handle location attribute.
16365         * lisp/net/soap-client.el (soap-decode-type): Check that multiRef
16366         matched validation regexp.
16368         * lisp/net/soap-client.el (soap-encode-xs-simple-type):
16369         Encode xsd:list nodes.
16370         (soap-decode-xs-simple-type): Decode xsd:list nodes.
16372         * lisp/net/soap-client.el (soap-get-candidate-elements):
16373         Fix reference handling.
16375         * lisp/net/soap-client.el (soap-xs-simple-type): Add is-list slot.
16376         (soap-xs-parse-simple-type): Call soap-xs-add-list for xsd:list nodes.
16377         (soap-xs-add-list): New function.
16379         * lisp/net/soap-client.el (soap-encode-xs-element): When a boolean is
16380         expected, interpret nil as "false".
16382         * lisp/net/soap-client.el (soap-make-xs-basic-types): Add gYearMonth,
16383         gYear, gMonthDay, gDay and gMonth.
16385         * lisp/net/soap-client.el (soap-time-format): New variable.
16386         (soap-encode-xs-basic-type): Handle dateTime, time, date,
16387         gYearMonth, gYear, gMonthDay, gDay and gMonth.
16388         (soap-decode-date-time): New function.
16389         (soap-decode-xs-basic-type): Use soap-decode-date-time.
16391         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Validate value
16392         after encoding.
16393         (soap-decode-xs-basic-type): Validate value before decoding.
16395         * lisp/net/soap-client.el (soap-validate-xs-basic-type): New function.
16396         (soap-validate-xs-simple-type): Call soap-validate-xs-basic-type.
16398         * lisp/net/soap-client.el (soap-xs-add-union): Append result to base
16399         instead of overwriting it.
16400         (soap-validate-xs-simple-type): Add union support.
16402         * lisp/net/soap-client.el (soap-xs-add-restriction): Translate pattern
16403         to Emacs regexp using xsdre-translate.
16404         (soap-validate-xs-simple-type): Validate value against pattern.
16406         * lisp/net/soap-client.el (soap-xs-add-union): Preserve WSDL order of
16407         inline simpleType nodes.
16408         (soap-decode-type): Handle union types.
16410         * lisp/net/soap-client.el (soap-decode-xs-attributes): Decode basic-type
16411         attributes.
16413         * lisp/net/soap-client.el (soap-get-xs-attributes-from-groups): Rename
16414         from soap-xs-attribute-group-consolidate, all callers updated
16415         (soap-get-xs-attributes): Rename from
16416         soap-xs-attributes-consolidate, all callers updated
16418         * lisp/net/soap-client.el (soap-xs-type): Add attribute-group slot.
16419         (soap-xs-attribute-group): New type.
16420         (soap-xs-parse-attribute-group): New function.
16421         (soap-resolve-references-for-xs-attribute-group): Likewise.
16422         (soap-xs-add-extension): Handle attribute groups.
16423         (soap-resolve-references-for-xs-simple-type): Likewise.
16424         (soap-xs-parse-complex-type): Likewise.
16425         (soap-xs-parse-extension-or-restriction): Likewise.
16426         (soap-resolve-references-for-xs-complex-type): Likewise.
16427         (soap-xs-attribute-group-consolidate): New function.
16428         (soap-xs-attributes-consolidate): Handle attribute groups.
16429         (soap-parse-schema): Likewise.
16431         * lisp/net/soap-client.el (soap-encode-xs-basic-type):
16432         Fix boolean encoding.
16434         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Print ref
16435         element names in warnings.
16437         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Fix splicing.
16439         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
16440         Eliminate invalid warnings for choice types.
16442         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
16443         Also encode base type attributes.
16445         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Fix compilation
16446         warning.  Print e-name in warnings, or element if e-name is nil.
16448         * lisp/net/soap-client.el (soap-xs-element): Add alternatives slot.
16449         (soap-xs-parse-element): Set substitution-group.
16450         (soap-resolve-references-for-xs-element): Populate alternatives slot.
16451         (soap-get-candidate-elements): New function.
16452         (soap-encode-xs-complex-type): Iterate through all candidate elements.
16453         Handle types with nil type indicator.  Fix warning logic.
16455         * lisp/net/soap-client.el (soap-current-wsdl): Move declaration
16456         earlier in the file to prevent compiler warning.
16458         * lisp/net/soap-client.el (soap-node-optional): New function.
16459         (soap-node-multiple): Likewise.
16460         (soap-xs-parse-element): Call soap-node-optional and
16461         soap-node-multiple.
16462         (soap-xs-complex-type): Add optional? and multiple? slots.
16463         (soap-xml-get-children-fq): New function.
16464         (soap-xs-element-get-fq-name): Likewise.
16465         (soap-xs-complex-type-optional-p): Likewise.
16466         (soap-xs-complex-type-multiple-p): Likewise.
16467         (soap-xs-attributes-consolidate): Likewise.
16468         (soap-decode-xs-attributes): Likewise.
16469         (soap-decode-xs-complex-type): Decode types with nil type indicator.
16470         Support children that use local namespaces.  Decode attributes.
16471         Add type considerations to optional? and multiple? warnings.
16473         * lisp/net/soap-client.el (soap-xs-parse-extension-or-restriction):
16474         Store parsed attributes.
16475         (soap-encode-xs-complex-type-attributes): Encode custom attributes.
16477         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
16478         Don't add the xsi:type attribute (Exchange refuses requests which have
16479         this attribute).
16481         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Convert to lexical binding,
16482         correct compiler warnings about unused function arguments and
16483         local variables.
16485         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Handle nil
16486         type indicator.
16487         (soap-parse-envelope): Handle response headers.
16488         (soap-parse-response): Likewise.  Only return non-nil decoded values.
16490         * lisp/net/soap-client.el (soap-validate-xs-simple-type):
16491         Return validated value.
16493         * lisp/net/soap-client.el (soap-xs-parse-element)
16494         (soap-xs-parse-simple-type)
16495         (soap-xs-parse-complex-type)
16496         (soap-parse-message)
16497         (soap-parse-operation): Add the current namespace to the element
16498         being created.
16499         (soap-resolve-references-for-xs-element)
16500         (soap-resolve-references-for-xs-simple-type)
16501         (soap-resolve-references-for-xs-complex-type)
16502         (soap-resolve-references-for-operation): Resolve the namespace to
16503         the namespace tag.
16504         (soap-make-wsdl): specify a namespace tag when creating the xsd
16505         and soapenc namespaces
16506         (soap-wsdl-resolve-references): don't update namespace tags in
16507         elements here
16508         (soap-parse-port-type): bind the urn: to soap-target-xmlns
16509         (soap-encode-body): don't add nil namespace tags to
16510         soap-encoded-namespaces
16512         * lisp/net/soap-inspect.el: Use `soap-make-wsdl` to construct the object
16513         for registering the soap-inspect method.  Make debbugs tests pass.
16514         * lisp/net/soap-client.el (soap-decode-any-type): Use soap-l2fq on the
16515         type name, also skip string only nodes when decoding a structure.
16516         (soap-xs-parse-complex-type): (BUG) Dispatch parsing for choice
16517         types too.
16518         (soap-encode-body): Grab the header value from the param table.
16520         * lisp/net/soap-client.el (soap-should-encode-value-for-xs-element):
16521         New function.
16522         (soap-encode-xs-element): Don't encode nil value unless needed.
16524         * lisp/net/soap-client.el (soap-bound-operation): New slot `soap-body`.
16525         (soap-parse-binding): Parse the message parts required in the body.
16526         (soap-encode-body): Encode only the parts that are declared to be
16527         part of the body.
16529         * lisp/net/soap-client.el (soap-encode-xs-element): use the fq name
16530         when writing out the tag.
16531         (soap-encode-body): Remove hack that inserts the xmlns in the
16532         element attributes list.
16534         * lisp/net/soap-client.el (soap-xs-attribute): Add "default" slot.
16535         (soap-xs-parse-attribute): Default slot is set from the XML
16536         "fixed" attribute.
16537         (soap-encode-xs-complex-type-attributes): Encode any attributes
16538         that have a default value.  Also, don't put the xsi:nil attribute
16539         when the complex type has no content anyway.
16541         * lisp/net/soap-client.el (soap-well-known-xmlns):
16542         Add the xml namespace.
16543         (soap-local-xmlns): Start with the xml namespace.
16544         (soap-xml-node-first-child): Skip xsd:annotation nodes too.
16545         (soap-make-xs-basic-types): More xsd types added.
16546         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
16547         Handle "language", "time", "date", "nonNegativeInteger".
16548         (soap-resolve-references-for-xs-element): Don't signal an error if
16549         the element does not have a type.
16550         (soap-xs-parse-simple-type): Subtypes are handled with ecase,
16551         added stum for xsd:list.
16552         (soap-xs-add-union): Call soap-l2fq on all union members.
16553         (soap-xs-add-extension): Call soap-l2fq on the base member.
16554         (soap-resolve-references-for-xs-simple-type): Don't signal an
16555         error if the simple type has no base.
16556         (soap-resolve-references-for-xs-simple-type): Bugfix, call
16557         soap-wsdl-get on each type of the base.
16559         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
16560         Referenced type can be eiher a simple type or a basic type.
16561         (soap-xs-add-restriction)
16562         (soap-xs-parse-extension-or-restriction): Use `soap-l2fq' on base.
16563         (soap-make-xs-basic-types)
16564         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
16565         Add support for more XMLSchema basic types.
16566         (soap-current-file, soap-xmlschema-imports): New defvars.
16567         (soap-parse-schema): Add locations from xsd:import tags to
16568         `soap-xmlschema-imports'.
16569         (soap-wsdl): Make destructor private.
16570         (soap-make-wsdl): New defun, SOAP-WSDL object constructor.
16571         (soap-wsdl-add-alias): Check if we try to replace aliases.
16572         (soap-fetch-xml-from-url, soap-fetch-xml-from-file)
16573         (soap-fetch-xml): New defuns.
16574         (soap-load-wsdl): Update to load the WSDL from either a file or
16575         an url.
16576         (soap-load-wsdl-from-url): Now an alias to `soap-load-wsdl'.
16577         (soap-parse-wsdl): Process wsdl:import tags and imports from
16578         `soap-xmlschema-imports'.
16579         * lisp/net/soap-client.el (soap-l2wk): Bugfix: call symbolp instead of
16580         symbol-name.
16581         (soap-l2fq): Make the name part always a string.
16582         (soap-name-p): New defun, used for name tests.
16584         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-complex-type):
16585         Supply sample values for choice types with a special tag.
16586         * lisp/net/soap-client.el (soap-encode-xs-complex-type):
16587         Handle anonymous elements correctly.
16588         (soap-encode-value): Accept nodes that have no namespace tag.
16590         * lisp/net/soap-client.el (soap-invoke): Encode the string for
16591         `url-request-data' as UTF-8.  Fixes issue 16.
16593 2015-10-24  Nicolas Petton  <nicolas@petton.fr>
16595         Update the new icon
16597         Move the E slightly to the right in the circle.
16599         * etc/images/icons/hicolor/128x128/apps/emacs.png:
16600         * etc/images/icons/hicolor/16x16/apps/emacs.png:
16601         * etc/images/icons/hicolor/24x24/apps/emacs.png:
16602         * etc/images/icons/hicolor/32x32/apps/emacs.png:
16603         * etc/images/icons/hicolor/48x48/apps/emacs.png:
16604         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
16605         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
16606         * nt/icons/emacs.ico: New icom update.
16608 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
16610         Avoid missing inline functions from lisp.h in TAGS
16612         * src/lisp.h (LISP_MACRO_DEFUN): Mention in the commentary the
16613         need to end each invocation with a semi-colon.
16614         Add a semi-colon at the end of each invocation of LISP_MACRO_DEFUN
16615         and LISP_MACRO_DEFUN_VOID.  This is to avoid missing in TAGS
16616         inline functions defined immediately after each invocation, and
16617         also avoid tagging every invocation of these macros.
16619 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
16621         A better fix for bug#21739
16623         * src/buffer.c (set_update_modelines_for_buf): New function.
16624         (Fkill_buffer): Use it to set the global variable
16625         update_mode_lines if the killed buffer was displayed in some
16626         window.  Don't set windows_or_buffers_changed.  This is a better
16627         fix for bug#21739 than the previous fix, since it will cause only
16628         redisplay of mode lines, not of entire windows, but will still
16629         catch attention of x_consider_frame_title in xdisp.c, which
16630         redraws the frame title.
16632 2015-10-24  Tassilo Horn  <tsdh@gnu.org>
16634         * lisp/dired-aux.el (dired-compress-files-alist): Add support for
16635         tar.bz2 and tar.xz archives.
16637 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
16639         Fix infloop in redisplay introduced by a recent change
16641         * src/xdisp.c (redisplay_internal): Avoid inflooping when
16642         redisplaying the selected window sets the selected frame's
16643         redisplay flag.  (Bug#21745)
16645 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
16647         * lisp/emacs-lisp/thunk.el: Better documentation.
16649 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
16651         Replace the old icon for Windows and Mac OSX
16653         * nt/icons/emacs.ico:
16654         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
16655         Use the new icons.
16657 2015-10-23  Stephen Leake  <stephen_leake@stephe-leake.org>
16659         * lisp/emacs-lisp/package.el (package-autoload-ensure-default-file):
16660         `load-path' should contain only directory names.
16662 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
16664         New library thunk.el
16666         thunk.el is extracted from stream.el in ELPA, with additional tests.
16668         * lisp/emacs-lisp/thunk.el: New file.
16669         * test/automated/thunk-tests.el: New file.
16670         * etc/NEWS: Add information about thunk.el
16672 2015-10-23  Michael Albinus  <michael.albinus@gmx.de>
16674         Fix bug#21669
16676         * lisp/filenotify.el (file-notify-rm-watch): Improve check for
16677         calling low-level functions.
16679         * test/automated/file-notify-tests.el (file-notify--test-timeout):
16680         Decrase to 6 seconds for remote directories.
16681         (file-notify-test02-events): Expect different number of
16682         `attribute-changed' events for the local and remote cases.  Apply
16683         short delays between the operations, in order to receive all
16684         events in the remote case.  Combine `attribute-change' tests.
16685         (Bug#21669)
16687 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
16689         Decode the HTML source when displaying it in EWW
16691         * lisp/net/eww.el (eww-view-source): Decode the HTML source
16692         according to its headers.
16694 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
16696         New default icon
16698         * etc/images/icons/hicolor/128x128/apps/emacs23.png:
16699         * etc/images/icons/hicolor/16x16/apps/emacs23.png:
16700         * etc/images/icons/hicolor/24x24/apps/emacs23.png:
16701         * etc/images/icons/hicolor/32x32/apps/emacs23.png:
16702         * etc/images/icons/hicolor/48x48/apps/emacs23.png:
16703         * etc/images/icons/hicolor/scalable/apps/emacs23.svg:
16704         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document23.svg:
16705         Move the old logo files to emacs23.*.
16706         * etc/images/icons/hicolor/128x128/apps/emacs.png:
16707         * etc/images/icons/hicolor/16x16/apps/emacs.png:
16708         * etc/images/icons/hicolor/24x24/apps/emacs.png:
16709         * etc/images/icons/hicolor/32x32/apps/emacs.png:
16710         * etc/images/icons/hicolor/48x48/apps/emacs.png:
16711         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
16712         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document.svg:
16713         New files.
16714         * etc/images/icons/README: Update the copyright information.
16716 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
16718         Fix redisplay of frame title when current buffer is killed
16720         * src/buffer.c (Fkill_buffer): Set windows_or_buffers_changed to a
16721         non-zero value, to redisplay more than just the affected windows.
16722         (Bug#21739)
16724 2015-10-23  Anders Lindgren  <andlind@gmail.com>
16726         NextStep maximization and NSTRACE rewrite
16728         Full-height, full-width, and maximized windows now cover the
16729         entire screen (except the menu bar), including the part where the
16730         system dock is placed.  The system zoom animation is no longer
16731         used.
16733         Made NonMaximized->FullWidth->FullHeight->NonMaximized restore the
16734         original size.
16736         * src/nsterm.m (ns_menu_bar_height): New function, return height of
16737         the menu bar, or 0 when it's hidden.
16738         (constrain_frame_rect): New function for constraining a frame.
16739         (ns_constrain_all_frames): Set frame size explicitly rather than
16740         relying on the system doing it for us by writing back the current
16741         frame size.
16742         (windowWillUseStandardFrame): Register non-maximized width or
16743         height as new user size.  When entering full width or height,
16744         the other size component is taken from the user size.
16745         (fullscreenState): New method for accessing the fullscreen state.
16746         (constrainFrameRect): Restrict frame to be placed under the menu bar,
16747         if present.  The old version, sometimes, restricted the height of a
16748         frame to the screen, this version never does this.
16749         (zoom): Perform zoom by setting the frame to the full size of the
16750         screen (minus the menu bar).  The default system function, with the
16751         zoom animation, is no longer used, as the final frame size doesn't
16752         cover the entire screen.
16754         Rework how to constrain resizing to the character grid.  The old
16755         system used "resizeIncrements" in NSWindows.  However, once a frame
16756         was resized so that it was not aligned to the text grid, it
16757         remained unaligned even after a resize.  In addition, it conflicted
16758         when resizing a fullheight window.
16760         * src/nsterm.m (windowWillResize): Restrict frame size to text grid,
16761         unless when pixelwise frame resizing is enabled.
16762         (updateFrameSize, initFrameFromEmacs)
16763         (toggleFullScreen, handleFS): Don't set resizeIncrements.
16765         Redesign the NS trace system.  The call structure is represented
16766         using indentations and vertical lines.  The NSTRACE macro accepts
16767         printf-style arguments.  New macros for printing various
16768         information.
16770         * src/nsterm.h (NSTRACE_ENABLED): Macro to enable trace system.
16771         (NSTRACE, NSTRACE_WHEN, NSTRACE_UNLESS): Macros to start a new
16772         block (typically a function), accept printf-style arguments.
16773         (NSTRACE_MSG): Macro for extra information, accepts
16774         printf-style arguments.
16775         (NSTRACE_what): Macros for printing various types.
16776         (NSTRACE_FMT_what): Macro with printf format string snippets.
16777         (NSTRACE_ARG_what): Macros for passing printf-style arguments,
16778         corresponds to NSTRACE_FMT_what.
16779         (NSTRACE_RETURN): Macro to print return value, accept
16780         printf-style arguments.
16781         (NSTRACE_RETURN_what): Macros to print return value for
16782         various types.
16784         * src/nsterm.m: Remove old NSTRACE macro
16785         * src/nsterm.m (nstrace_num): Trace counter.
16786         (nstrace_depth): Current call depth.
16787         (nstrace_leave): NSTRACE support function, called when the
16788         local variable "nstrace_enabled" goes out of scope using the
16789         "cleanup" extension.
16790         (ns_print_fullscreen_type_name): NSTRACE_FSTYPE support function.
16791         (constrain_frame_rect, ns_constrain_all_frames)
16792         (ns_update_auto_hide_menu_bar, ns_update_begin)
16793         (ns_update_window_begin, update_window_end, ns_update_end)
16794         (ns_focus, ns_unfocus, ns_ring_bell, ns_frame_raise_lower)
16795         (ns_frame_rehighlight, x_make_frame_visible)
16796         (x_make_frame_invisible, x_iconify_frame, x_free_frame_resources)
16797         (x_destroy_window, x_set_offset, x_set_window_size)
16798         (ns_fullscreen_hook, ns_lisp_to_color, ns_color_to_lisp)
16799         (ns_defined_color, frame_set_mouse_pixel_position)
16800         (note_mouse_movement, ns_mouse_position, ns_frame_up_to_date)
16801         (ns_define_frame_cursor, x_get_keysym_name, ns_redraw_scroll_bars)
16802         (ns_clear_frame, ns_clear_frame_area, ns_scroll_run)
16803         (ns_after_update_window_line, ns_shift_glyphs_for_insert)
16804         (dumpcursor, ns_draw_vertical_window_border)
16805         (ns_draw_window_divider, ns_draw_relief)
16806         (ns_dumpglyphs_box_or_relief, ns_maybe_dumpglyphs_background)
16807         (ns_dumpglyphs_image, ns_draw_glyph_string, ns_send_appdefined)
16808         (ns_read_socket, ns_select, ns_set_vertical_scroll_bar)
16809         (ns_set_horizontal_scroll_bar, ns_condemn_scroll_bars)
16810         (ns_redeem_scroll_bar, ns_judge_scroll_bars, ns_delete_terminal)
16811         (ns_create_terminal, ns_term_init, sendEvent)
16812         (applicationDidFinishLaunching, applicationDidBecomeActive)
16813         (timeout_handler, fd_handler, EmacsView_dealloc, changeFont)
16814         (acceptsFirstResponder, resetCursorRects, keyDown, mouseDown)
16815         (deltaIsZero, rightMouseDown, otherMouseDown, mouseUp)
16816         (rightMouseUp, otherMouseUp, scrollWheel, mouseMoved)
16817         (mouse_autoselect_window, in_window, mouseDragged)
16818         (rightMouseDragged, otherMouseDragged, windowShouldClose)
16819         (updateFrameSize, windowWillResize, windowDidResize)
16820         (windowDidBecomeKey, windowDidResignKey, windowWillMiniaturize)
16821         (initFrameFromEmacs, windowDidMove, windowDidDeminiaturize)
16822         (windowDidExpose, windowDidMiniaturize, windowWillEnterFullScreen)
16823         (windowDidEnterFullScreen, windowWillExitFullScreen)
16824         (windowDidExitFullScreen, toggleFullScreen, handleFS, setFSValue)
16825         (mouseEntered, mouseExited, menuDown, toolbarClicked, drawRect)
16826         (draggingEntered, performDragOperation, validRequestorForSendType)
16827         (setMiniwindowImage, constrainFrameRect, performZoom, zoom)
16828         (EmacsScroller_initFrame, EmacsScroller_setFrame)
16829         (EmacsScroller_dealloc, condemn, reprieve, judge)
16830         (resetCursorRects, setPosition, EmacsScroller_mouseDown)
16831         (EmacsScroller_mouseDragged, syms_of_nsterm): Use new trace system.
16833         * src/nsfns.m: Remove old NSTRACE macro
16834         * src/nsfns.m (x_set_icon_name, ns_set_name, x_explicitly_set_name)
16835         (x_implicitly_set_name, x_set_title, ns_set_name_as_filename)
16836         (ns_implicitly_set_icon_type, x_set_icon_type): Use new trace system.
16838         * src/nsimage.m: Remove old NSTRACE macro
16839         * src/nsimage.m (ns_image_from_XBM, ns_image_for_XPM)
16840         (ns_image_from_bitmap_file, ns_load_image): Use new trace system.
16842         * src/nsmenu.m: Remove old NSTRACE macro
16843         * src/nsmenu.m (ns_update_menubar, ns_menu_show, ns_popup_dialog):
16844         Use new trace system.
16846 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
16848         No need to use eval-and-compile
16850         * lisp/gnus/auth-source.el: Do require epg (when compiling) before
16851         autoload epg functions.
16853 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
16855         Fix auth-source-epa-make-gpg-token compilation (bug#21724)
16857         * lisp/gnus/auth-source.el: Add eval-and-compile to autoloads for
16858         epg-context-set-passphrase-callback, epg-decrypt-string, and
16859         epg-encrypt-string; require epg when compiling for the setf-method
16860         for epg-context-armor. (bug#21724)
16862 2015-10-22  Eli Zaretskii  <eliz@gnu.org>
16864         Include file cleanup for w32 files in src directory
16866         * src/w32xfns.c: Don't include keyboard.h, window.h, charset.h,
16867         fontset.h, blockinput.h.
16868         * src/w32uniscribe.c: Don't include dispextern.h, character.h,
16869         charset.h, fontset.h.
16870         * src/w32term.c: Don't include systty.h, systime.h, charset.h,
16871         character.h, ccl.h, dispextern.h, disptab.h, intervals.h,
16872         process.h, atimer.h, keymap.h, w32heap.h.  Include bitmap/gray.xbm
16873         in an ifdef-ed away block.
16874         Include fcntl.h for CYGWIN.
16875         (set_frame_param): Remove unused function.
16876         * src/w32select.c: Don't include charset.h and composite.h.
16877         (setup_config, Fw32_get_clipboard_data): Avoid compiler warnings
16878         due to pointer signedness mismatches.
16879         * src/w32reg.c (w32_get_string_resource): Avoid compiler warnings
16880         due to pointer signedness mismatches.
16881         * src/w32proc.c: Include unistd.h.  Don't include systime.h,
16882         process.h, dispextern.h.
16883         (sys_spawnve, Fw32_short_file_name, Fw32_long_file_name)
16884         (Fw32_application_type): Avoid compiler warnings due to pointer
16885         signedness mismatches.
16886         * src/w32menu.c: Don't include keymap.h, termhooks.h, window.h,
16887         character.h, charset.h, dispextern.h.
16888         (simple_dialog_show, add_menu_item): Avoid compiler warnings due
16889         to pointer signedness mismatches.
16890         * src/w32inevt.c: Don't include dispextern.h, window.h,
16891         termhooks.h, w32heap.h.
16892         * src/w32font.c: Don't include dispextern.h, character.h,
16893         charset.h, fontset.h, font.h.
16894         (intern_font_name, add_font_entity_to_list)
16895         (registry_to_w32_charset, w32_to_x_charset, fill_in_logfont)
16896         (list_all_matching_fonts): Avoid compiler warnings due to pointer
16897         signedness mismatches.
16898         * src/w32fns.c: Don't include character.h, intervals.h,
16899         dispextern.h, epaths.h, charset.h, ccl.h, fontset.h, systime.h,
16900         termhooks.h, w32heap.h, bitmap/gray.xbm, font.h, w32font.h.
16901         (w32_color_map_lookup, add_system_logical_colors_to_map)
16902         (x_decode_color, x_set_name, FPRINTF_WM_CHARS, Fxw_color_defined_p)
16903         (Fxw_color_values, x_display_info_for_name, Fset_message_beep)
16904         (x_create_tip_frame, Fx_file_dialog, Fsystem_move_file_to_trash)
16905         (w32_parse_hot_key, Ffile_system_info, w32_kbd_patch_key): Avoid
16906         compiler warnings, mainly due to pointer signedness mismatches.
16907         (unwind_create_frame_1): Remove unused function.
16908         * src/w32console.c: Don't include character.h, disptab.h, frame.h,
16909         window.h, termhooks.h, dispextern.h.
16910         (w32con_write_glyphs, w32con_write_glyphs_with_face): Fix pointer
16911         signedness mismatch.
16912         * src/w32.c: Include c-strcase.h and systty.h.  Don't include
16913         w32heap.h.
16915 2015-10-22  Tassilo Horn  <tsdh@gnu.org>
16917         Improve doc-view wrt. auto-revert-mode
16919         * lisp/doc-view.el (doc-view-revert-buffer): Don't revert when file
16920         is corrupted (bug#21729).
16921         (doc-view-mode): Set doc-view-revert-buffer as revert-buffer-function.
16923 2015-10-22  Oleh Krehel  <ohwoeowho@gmail.com>
16925         Describe dired-do-compress-to in the manual
16927         * etc/NEWS: Update.
16929         * lisp/dired-aux.el: Fix typo.
16931         * doc/emacs/dired.texi: Add entry.
16933 2015-10-22  Jürgen Hötzel  <juergen@archlinux.org>
16935         Further fix for proper locale handling in tramp-gvfs.el
16937         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
16938         Just suppress LC_MESSAGES locale category settings.
16940 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
16942         New lispref section “Security Considerations”
16944         This attempts to document some of the issues recently discussed
16945         on emacs-devel, and to indicate other such issues.  The section
16946         could be a lot longer.
16947         * doc/lispref/os.texi (Security Considerations):
16948         New node.
16949         * doc/lispref/elisp.texi (Top):
16950         * doc/lispref/processes.texi (Shell Arguments):
16951         * lisp/subr.el (shell-quote-argument):
16952         * src/callproc.c (syms_of_callproc):
16953         Reference it.
16955 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
16957         Merge from gnulib
16959         This incorporates:
16960         2015-10-18 stdalign: work around pre-4.9 GCC x86 bug
16961         2015-10-18 time_rz: avoid warning from bleeding-edge gcc's -Wnonnull
16962         * doc/misc/texinfo.tex, lib/stdalign.in.h, lib/time_rz.c:
16963         Copy from gnulib.
16965 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
16967         * lisp/gnus/mailcap.el (mailcap-mime-data): Remove fboundp checks.
16968         (mailcap-viewer-passes-test): Do it instead.  Thanks to Stefan Monnier.
16970 2015-10-21  Ken Brown  <kbrown@cornell.edu>
16972         Further include-file cleanup
16974         * src/sheap.c: Include stdlib.h.
16975         * src/unexcw.c: Include string.h.
16977 2015-10-21  Eli Zaretskii  <eliz@gnu.org>
16979         Fix logic in 'server-kill-emacs-query-function'
16981         * lisp/server.el (server-kill-emacs-query-function): Correct the
16982         logic that controls whether the user is asked for confirmation.
16983         (Bug#21723)
16985 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
16987         * lisp/isearch.el (isearch-search-fun-default): Simplify logic.
16988         (isearch--lax-regexp-function-p): New function.
16990 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
16992         * lisp/isearch.el: Support lax-whitespace in regexp-function searches.
16993         (isearch-search-fun-default): Let-bind `search-spaces-regexp'
16994         around `isearch-regexp-function'.
16996 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
16998         * lisp/isearch.el: Rename word search to regexp-function search.
16999         `isearch-word' went well beyond its original purpose, and the name
17000         no longer makes sense.  It is now called
17001         `isearch-regexp-function', and its value should always be a function
17002         that converts a string to a regexp (though setting it to t is still
17003         supported for now).
17004         (isearch-word): Make obsolete.
17005         (isearch-regexp-function): New variable.
17006         (isearch-mode, isearch-done, isearch--state, isearch--set-state)
17007         (with-isearch-suspended, isearch-toggle-regexp)
17008         (isearch-toggle-word, isearch-toggle-symbol)
17009         (isearch-toggle-character-fold, isearch-query-replace)
17010         (isearch-occur, isearch-highlight-regexp)
17011         (isearch-search-and-update, isearch-message-prefix)
17012         (isearch-search-fun-default, isearch-search)
17013         (isearch-lazy-highlight-new-loop, isearch-lazy-highlight-search):
17014         Use it.
17015         (isearch-lazy-highlight-regexp-function): New var.
17016         (isearch-lazy-highlight-word): Make obsolete.
17017         (isearch--describe-regexp-mode): New function.
17018         (isearch--describe-word-mode): Make obsolete.
17020         * lisp/info.el (Info-isearch-search):
17021         * lisp/replace.el (replace-search, replace-highlight):
17022         * lisp/obsolete/longlines.el (longlines-search-function):
17023         * lisp/hexl.el (hexl-isearch-search-function):
17024         * lisp/cedet/semantic/senator.el (senator-isearch-search-fun):
17025         Use the new var.
17027 2015-10-21  Oleh Krehel  <ohwoeowho@gmail.com>
17029         Add dired-do-compress-to command bound to "c"
17031         * lisp/dired-aux.el (dired-shell-command): Use the caller's
17032           `default-directory', return the result of `process-file'.
17033         (dired-compress-file-suffixes): Add comment on why "tar -zxf" isn't
17034         used by default.
17035         (dired-compress-files-alist): New defvar.
17036         (dired-do-compress-to): New command.
17038         * lisp/dired.el (dired-mode-map): Bind `dired-do-compress-to' to "c".
17039         (dired-do-compress-to): Add an autoload entry.
17041         * etc/NEWS: Add two entries.
17043 2015-10-21  Tassilo Horn  <tsdh@gnu.org>
17045         Make RefTeX work with LaTeX subfiles package
17047         * lisp/textmodes/reftex.el (reftex-TeX-master-file): Recognize subfiles
17048         document class argument as master file for referencing purposes.
17050 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
17052         * lisp/gnus/mailcap.el (mailcap-mailcap-entry-passes-test): Doc fix.
17054 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
17056         Include-file cleanup for src directory
17058         Omit ‘#include "foo.h"’ unless the file needs foo.h (Bug#21707).
17059         In a few cases, add ‘#include "foo.h"’ if the file needs foo.h
17060         but does not include it directly.  As a general rule, a source
17061         file should include foo.h if it needs the interfaces that foo.h
17062         defines.
17063         * src/alloc.c: Don’t include process.h.  Include dispextern.h,
17064         systime.h.
17065         * src/atimer.c: Don’t include blockinput.h.
17066         * src/buffer.c: Include coding.h, systime.h.  Don’t include
17067         keyboard.h, coding.h.
17068         * src/callint.c: Don’t include commands.h, keymap.h.
17069         * src/callproc.c: Don’t include character.h, ccl.h, composite.h,
17070         systty.h, termhooks.h.
17071         * src/casetab.c: Don’t include character.h.
17072         * src/category.c: Don’t include charset.h, keymap.h.
17073         * src/ccl.h: Don’t include character.h.
17074         * src/character.c: Don’t include charset.h.
17075         * src/charset.c: Don’t include disptab.h.
17076         * src/chartab.c: Don’t include ccl.h.
17077         * src/cm.c: Don’t include frame.h, termhooks.h.
17078         * src/cmds.c: Don’t include window.h, dispextern.h.
17079         * src/coding.c: Don’t include window.h, frame.h.
17080         * src/composite.c: Include composite.h.  Don’t include window.h,
17081         font.h.
17082         * src/data.c: Don’t include syssignal.h, termhooks.h, font.h.
17083         * src/dbusbind.c: Don’t include frame.h.
17084         * src/decompress.c: Don’t include character.h.
17085         * src/dired.c: Don’t include character.h, commands.h, charset.h.
17086         * src/dispnew.c: Don’t include character.h, indent.h, intervals.h,
17087         process.h, timespec.h.  Include systime.h.
17088         * src/doc.c: Include coding.h.  Don’t include keyboard.h.
17089         * src/editfns.c: Include composite.h.  Don’t include frame.h.
17090         * src/emacs.c: Include fcntl.h, coding.h.  Don’t include
17091         commands.h, systty.h..
17092         * src/fileio.c: Don’t include intervals.h, dispextern.h.
17093         Include composite.h.
17094         * src/filelock.c: Don’t include character.h, systime.h.
17095         * src/fns.c: Don’t include time.h, commands.h, keyboard.h,
17096         keymap.h, frame.h, blockinput.h, xterm.h.  Include composite.h.
17097         * src/font.c: Include termhooks.h.
17098         * src/font.h: Don’t include ccl.h, frame.h.  Add forward decls of
17099         struct composition_it, struct face, struct glyph_string.
17100         * src/fontset.c: Don’t include buffer.h, ccl.h, keyboard.h,
17101         intervals.h, window.h, termhooks.h.
17102         * src/frame.c: Don’t include character.h, commands.h, font.h.
17103         * src/frame.h: Don’t include dispextern.h.
17104         * src/fringe.c: Don’t include character.h.
17105         * src/ftcrfont.c: Don’t include dispextern.h, frame.h,
17106         character.h, charset.h, fontset.h.
17107         * src/ftfont.c: Don’t include frame.h, blockinput.h, coding.h,
17108         fontset.h.
17109         * src/ftxfont.c: Don’t include dispextern.h, character.h,
17110         charset.h, fontset.h.
17111         * src/gfilenotify.c: Don’t include frame.h, process.h.
17112         * src/gtkutil.c: Include dispextern.h, frame.h, systime.h.
17113         Don’t include syssignal.h, buffer.h, charset.h, font.h.
17114         * src/gtkutil.h: Don’t include frame.h.
17115         * src/image.c: Include fcntl.h and stdio.h instead of sysstdio.h.
17116         Don’t include character.h.
17117         * src/indent.c: Don’t include keyboard.h, termchar.h.
17118         * src/inotify.c: Don’t include character.h, frame.h.
17119         * src/insdel.c: Include composite.h.  Don’t include blockinput.h.
17120         * src/intervals.c: Don’t include character.h, keyboard.h.
17121         * src/intervals.h: Don’t include dispextern.h, composite.h.
17122         * src/keyboard.c: Don’t include sysstdio.h, disptab.h, puresize.h.
17123         Include coding.h.
17124         * src/keyboard.h: Don’t incldue systime.h.
17125         * src/keymap.c: Don’t include charset.h, frame.h.
17126         * src/lread.c: Include dispextern.h and systime.h.
17127         Don’t include frame.h.  Include systime.h.
17128         * src/macros.c: Don’t include commands.h, character.h, buffer.h.
17129         * src/menu.c: Include character.h, coding.h.  Don’t include
17130         dispextern.h.
17131         * src/menu.h: Don’t include systime.h.
17132         * src/minibuf.c: Don’t include commands.h, dispextern.h, syntax.h,
17133         intervals.h, termhooks.h.
17134         * src/print.c: Include coding.h.  Don’t include keyboard.h,
17135         window.h, dispextern.h, termchar.h, termhooks.h, font.h.
17136         Add forward decl of struct terminal.
17137         * src/process.c: Don’t include termhooks.h, commands.h,
17138         dispextern.h, composite.h.
17139         * src/region-cache.c: Don’t include character.h.
17140         * src/scroll.c: Don’t include keyboard.h, window.h.
17141         * src/search.c: Don’t include category.h, commands.h.
17142         * src/sound.c: Don’t include dispextern.h.
17143         * src/syntax.c: Don’t include command.h, keymap.h.
17144         * src/sysdep.c: Don’t include window.h, dispextern.h.
17145         * src/systime.h: Use ‘#ifdef emacs’, not ‘#ifdef EMACS_LISP_H’,
17146         * src/term.c: Don’t include systty.h, intervals.h, xterm.h.
17147         * src/terminal.c: Include character.h.
17148         Don’t include charset.h, coding.h.
17149         * src/textprop.c: Don’t include character.h.
17150         * src/undo.c: Don’t include character.h, commands.h, window.h.
17151         * src/unexsol.c: Don’t include character.h, charset.h.
17152         * src/widget.c: Include widget.h.  Don’t include keyboard.h,
17153         window.h, dispextern.h, blockinput.h, character.h, font.h.
17154         * src/widgetprv.h: Don’t include widget.h.
17155         * src/window.c: Don’t include character.h, menu.h, intervals.h.
17156         * src/xdisp.c: Include composite.h, systime.h.  Don’t include
17157         macros.h, process.h.
17158         * src/xfaces.c: Don’t include charset.h, keyboard.h, termhooks.h,
17159         intervals.h.
17160         * src/xfns.c: Don’t include menu.h, character.h, intervals.h,
17161         epaths.h, fontset.h, systime.h, atimer.h, termchar.h.
17162         * src/xfont.c: Don’t include dispextern.h, fontset.h, ccl.h.
17163         * src/xftfont.c: Don’t include dispextern.h, character.h, fontset.h.
17164         * src/xgselect.c: Don’t include timespec.h, frame.h.
17165         Include systime.h.
17166         * src/xgselect.h: Don’t include time.h.
17167         Use a forward decl to struct timespec instead.
17168         * src/xmenu.c: Don’t include keymap.h, character.h, charset.h,
17169         dispextern.h.  Include systime.h.
17170         * src/xml.c: Don’t include character.h.
17171         * src/xrdb.c [USE_MOTIF]: Don’t include keyboard.h.
17172         * src/xselect.c: Don’t include dispextern.h, character.h,
17173         buffer.h, process.h.
17174         * src/xsmfns.c: Don’t include systime.h, sysselect.h.
17175         * src/xterm.c: Don’t include syssignal.h, charset.h, disptab.h,
17176         intervals.h process.h, keymap.h, xgselect.h.  Include composite.h.
17178 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
17180         (/ N) now returns the reciprocal of N
17182         This is more compatible with Common Lisp and XEmacs (Bug#21690).  See:
17183         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg01053.html
17184         * lisp/color.el (color-hue-to-rgb, color-hsl-to-rgb)
17185         (color-xyz-to-srgb, color-xyz-to-lab):
17186         * lisp/emacs-lisp/cl-extra.el (cl-float-limits):
17187         * lisp/net/shr-color.el (shr-color-hue-to-rgb)
17188         (shr-color-hsl-to-rgb-fractions):
17189         Exploit the change to simplify the code a bit.
17190         * lisp/emacs-lisp/bytecomp.el (byte-compile-quo):
17191         Don’t complain about single-argument calls to ‘/’.
17192         * src/data.c (arith_driver, float_arith_driver):
17193         Implement the change.
17195 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
17197         Call vc-dir-refresh after stash operations
17199         * lisp/vc/vc-git.el (vc-git-stash-apply-at-point)
17200         (vc-git-stash-pop-at-point): Call vc-dir-refresh (bug#13960).
17202         * lisp/vc/vc-dir.el (vc-dir-resynch-file): Expand FNAME as well,
17203         since it can be abbreviated (as returned by vc-find-root).
17205 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
17207         * lisp/vc/vc-svn.el:
17208         * lisp/vc/vc-mtn.el:
17209         * lisp/vc/vc-hg.el:
17210         * lisp/vc/vc-cvs.el:
17211         * lisp/vc/vc-git.el:
17212         * lisp/vc/vc-bzr.el: Don't declare vc-exec-after anymore.
17213         Its usages have been replaced with vc-run-delayed.
17215 2015-10-20  Dima Kogan  <dima@secretsauce.net>
17217         Fix memory leak in fontset handling
17219         * src/font.c (copy_font_spec): Make a deep copy of the input
17220         argument FONT.  (Bug#21651)
17222 2015-10-20  Michael Sperber  <mike@xemacs.org>
17224         * lisp/gnus/mailcap.el (mailcap-mime-data):
17225         Conditonalize `doc-view-mode', which does not exist on XEmacs.
17227 2015-10-20  Oleh Krehel  <ohwoeowho@gmail.com>
17229         Update the way directories are compressed
17231         * lisp/dired-aux.el (dired-compress-file-suffixes): Update the recipe
17232         for *.tar.gz decompression to use a pipe.
17233         Add an entry for the default directory compression (to *.tar.g).
17234         (dired-compress-file): Update.
17236         See https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg00949.html.
17238 2015-10-20  Michael Sperber  <mike@xemacs.org>
17240         Unbreak `group' option for `mail-sources'
17242         * lisp/gnus/nnml.el (nnml-retrieve-groups, nnml-request-scan):
17243         * lisp/gnus/nnmail.el (nnmail-get-new-mail-per-group)
17244         (nnmail-get-new-mail-1): Unbreak `group' option for `mail-sources'.
17246 2015-10-19  Nicolas Petton  <nicolas@petton.fr>
17248         New function seq-position
17250         * lisp/emacs-lisp/seq.el (seq-position): New function.
17251         * test/automated/seq-tests.el: New tests for seq-position.
17252         * doc/lispref/sequences.texi: Add documentation for `seq-position'.
17254 2015-10-19  Ken Brown  <kbrown@cornell.edu>
17256         Enable --with-wide-int build on 32-bit Cygwin
17258         * src/sheap.c (STATIC_HEAP_SIZE): Remove distinction between x86
17259         and x86_64 to enable --with-wide-int build on 32-bit Cygwin.
17261 2015-10-19  Glenn Morris  <rgm@gnu.org>
17263         * doc/emacs/ack.texi (Acknowledgments): Small, sad, update.
17265 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
17267         Resurrect image loading under auto-image-file-mode
17269         * src/image.c (x_find_image_fd): Handle the case of -2 returned by
17270         'openp' specially.  This special case was lost in the changes on
17271         2015-08-18.  (Bug#21685)
17273 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
17275         Fix return value of 'set-file-extended-attributes'
17277         * lisp/files.el (set-file-extended-attributes): Return non-nil
17278         when setting either ACLs or SELinux context succeeds.  Document
17279         the return value.  (Bug#21699)
17281         * doc/lispref/files.texi (Changing Files): Document the return
17282         value of set-file-extended-attributes.
17284 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
17286         Improve documentation of functions that change files
17288         * doc/lispref/files.texi (Changing Files): Document that these
17289         functions signal an error on failure.
17291 2015-10-18  Eli Zaretskii  <eliz@gnu.org>
17293         Fix doc string of 'shell-quote-argument'
17295         * lisp/subr.el (shell-quote-argument): Doc fix.  (Bug#21702)
17297 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
17299         Some minor Tramp changes
17301         * doc/misc/tramp.texi (Obtaining Tramp): Add http git cloning.
17303         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
17304         Expand `tramp-auto-save-directory'.
17306 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
17308         Minor edits in Tramp
17310         * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp):
17311         Declare it.
17313         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
17314         Remove declaration.
17316 2015-10-17  Mark Oteiza  <mvoteiza@udel.edu>
17318         * lisp/emacs-lisp/eldoc.el: Add back-to-indentation to the command list.
17320 2015-10-17  Eli Zaretskii  <eliz@gnu.org>
17322         Avoid crashes when redisplayng a window changes faces or fonts
17324         * src/xdisp.c (redisplay_internal): If redisplaying the selected
17325         window or one of the frames turns on the frame's 'redisplay' flag,
17326         redisplay again.  (Bug#21428)
17328         * src/frame.c (x_set_font): Set the frame's 'fonts_changed' flag.
17330 2015-10-17  Michael Albinus  <michael.albinus@gmx.de>
17332         Solve timimg issues in file-notify-tests.el
17334         * test/automated/file-notify-tests.el (file-notify-test02-events):
17335         Rectify `attribute-change' tests.  There are timing issues with
17336         gfilenotify.  (Bug#21669)
17338 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
17340         Fix quoting of data within htmlfontify doc
17342         * doc/misc/htmlfontify.texi (Data Structures, Customization):
17343         Fix quoting of data structures.  A Lisp quote is needed only
17344         when data appears within Lisp code.
17346 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
17348         * lisp/emacs-lisp/package.el: Reload archive-contents if
17349         priorities change.
17350         (package--old-archive-priorities): New variable.
17351         (package-read-all-archive-contents, package-menu--refresh): Use it
17352         to decide when the `package-archive-contents' needs to be read
17353         again.
17355 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
17357         Make src headers idempotent and standalone
17359         Redo src/*.h so that each include file is idempotent (that is, can
17360         be included multiple times with the latter inclusions having no
17361         effect) and standalone (that is, can be included by itself,
17362         with no include file other than config.h needed as a prerequisite).
17363         This is standard practice in GNU programs nowadays.
17364         * lwlib/lwlib-widget.h, src/buffer.h, src/category.h, src/character.h:
17365         * src/charset.h, src/coding.h, src/commands.h, src/disptab.h:
17366         * src/fontset.h, src/gnutls.h, src/indent.h, src/keymap.h, src/macros.h:
17367         * src/regex.h [emacs]:
17368         * src/syntax.h, src/systty.h, src/termhooks.h:
17369         Include lisp.h, for Lisp_Object.
17370         * src/buffer.h, src/category.h, src/cm.h, src/commands.h, src/disptab.h:
17371         * src/indent.h, src/intervals.h, src/keyboard.h, src/macros.h:
17372         * src/process.h, src/puresize.h, src/region-cache.h, src/syntax.h:
17373         * src/syssignal.h, src/sysstdio.h, src/systty.h, src/termchar.h:
17374         * src/termopts.h, src/tparam.h, src/unexec.h:
17375         Protect against multiple inclusion.
17376         * src/buffer.h: Include character.h, for STRING_CHAR.
17377         * src/emacsgtkfixed.h (struct frame):
17378         * src/fontset.h (struct face):
17379         * src/region-cache.h (struct buffer):
17380         * src/termhooks.h (struct glyph):
17381         * src/xsettings.h (struct x_display_info):
17382         Add possibly-forward decl.
17383         * src/syntax.h: Include buffer.h, for BVAR.
17384         * src/sysselect.h: Include lisp.h, for eassume.
17385         * src/termchar.h: Include <stdio.h>, for FILE.
17386         * src/widget.h: Include <X11/IntrinsicP.h>, for Widget.
17387         * src/xsettings.h: Include <X11/Xlib.h>, for XEvent.
17389 2015-10-16  Jürgen Hötzel  <juergen@archlinux.org>
17391         Handle symlink targets containing spaces in tramp-gvfs.el
17393         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
17394         Handle symlink targets containing spaces.
17396 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
17398         * lisp/custom.el (custom-theme-load-path): Demote to defvar.
17400         `custom-theme-load-path' was a defcustom, but it shouldn't be for the
17401         same reason that `load-path' shouldn't.  Setting it via the customize
17402         interface is a trap for the user.
17404         Installed themes commonly add themselves to this variable, which means
17405         its value is not fit for being saved (it will permanently remember dirs
17406         that don't exist anymore).
17408         This is aggravated by the fact that Emacs always applies the `user'
17409         theme on top of any theme that's loaded, since this will apply the old
17410         variable value and remove any new directories that had been recently
17411         added by themes themselves.
17413         Not to mention, we already have `custom-theme-directory', which is safe
17414         to customize.
17416 2015-10-16  Stefan Monnier  <monnier@iro.umontreal.ca>
17418         * lisp/mpc.el: Rename the new toggling commands.
17419         (mpc-toggle-consume, mpc-toggle-repeat, mpc-toggle-single)
17420         (mpc-toggle-shuffle): Add "-toggle" in the name.
17422 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
17424         Improve the doc string of 'completion-boundaries'
17426         * lisp/minibuffer.el (completion-boundaries): Rename the argument
17427         TABLE to COLLECTION, for consistency with other high-level
17428         completion functions.  Document how COLLECTION is called if it
17429         is a function.  (Bug#21644)
17431 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
17433         * lisp/dired-aux.el (dired-shell-command): Fix compile warning.
17435 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
17437         Make dired-do-compress work for *.zip files
17439         * lisp/dired-aux.el (dired-check-process): Transform the top-level
17440           comment into a docstring.
17441         (dired-shell-command): New command.  This mirrors
17442         `dired-check-process', but is more user-friendly for passing
17443         arguments.
17444         (dired-compress-file-suffixes): Allow to specify the command switches
17445         along with input (%i) and output (%o) inside the PROGRAM part.
17446         Add an entry for *.zip files, and update the entry for *.tar.gz files
17447         to the new style.  Update the docstring.
17448         (dired-compress-file): When PROGRAM matches %i or %o, use the new
17449         logic.
17450         (dired-update-file-line): Avoid an error when at end of buffer.
17452         Fixes bug#21637.
17454 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
17456         Minor improvement in documentation of internals
17458         * doc/lispref/internals.texi (Writing Emacs Primitives): Document QUIT.
17460 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
17462         Improve documentation of COLLECTION in completion functions
17464         * doc/lispref/minibuf.texi (Minibuffer Completion): Add a
17465         cross-reference to "Programmed Completion".
17467         * src/minibuf.c (Fcompleting_read): Improve the doc string.
17468         (Bug#21644)
17470 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
17472         Add more release info to etc/HISTORY
17474         * etc/HISTORY: Add more release information about 19.x and 20.x
17475         versions.
17477 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
17479         New file etc/HISTORY
17481         * admin/FOR-RELEASE: Procedure for etc/HISTORY.
17482         * etc/HISTORY: New file.
17483         * etc/NEWS: Mention it.
17485 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
17487         js-mode: Don't misindent generator methods
17489         * lisp/progmodes/js.el (js--looking-at-operator-p): Distinguish
17490         generator methods from multiplication operator
17491         (https://github.com/mooz/js2-mode/issues/275).
17493 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
17495         Fix animation timeout delay calculation
17497         * lisp/image.el (image-animate-timeout):
17498         Don’t assume speed is floating-point.
17500 2015-10-15  Mark Oteiza  <mvoteiza@udel.edu>
17502         Add commands for controlling MPD modes
17504         * lisp/mpc.el (mpc-cmd-consume, mpc-cmd-random, mpc-cmd-repeat)
17505         (mpc-cmd-single): New functions.
17506         (mpc-consume, mpc-repeat, mpc-single, mpc-shuffle): New commands.
17507         (mpc-mode-menu): Add new commands as menu items.
17509 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
17511         Refer to `(elisp)Basic Completion' in completing-read docstring
17513         * src/minibuf.c (Fcompleting_read): Refer to `(elisp)Basic
17514         Completion' in the docstring (bug#21644).
17516 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
17518         * lisp/mpc.el (mpc-format): Always push form to pred
17520 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
17522         Spelling fixes
17524         * configure.ac (bitmapdir): Fix misspelling of bmd_acc.
17525         * test/automated/coding-tests.el (ert-test-coding-bogus-coding-systems):
17526         Fix misspelling of nonexistent file name.
17528 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
17530         * lisp/mpc.el (mpc-mode-menu, mpc-toggle-play): Fix docstrings
17532 2015-10-14  Michael Albinus  <michael.albinus@gmx.de>
17534         Some editing fixes in Tramp
17536         * lisp/net/tramp-gvfs.el:
17537         * doc/misc/tramp.texi: "customer option" -> "custom option".
17539         * lisp/net/tramp.el (tramp-completion-function-alist): Fix docstring.
17541 2015-10-14  Jürgen Hötzel  <juergen@archlinux.org>
17543         Use proper localization in tramp-gvfs.el
17545         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
17546         Suppress localized settings in order to proper parse gfvs output.
17548 2015-10-14  Warren Lynn  <wrn.lynn@gmail.com>  (tiny change)
17550         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
17551         Quote argument in proper order.  (Bug#21562)
17553 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
17555         Fix typos in docstrings
17557         * lisp/emacs-lisp/map.el:
17558         * lisp/emacs-lisp/seq.el: Fix typos in the docstrings of the pcase
17559           macros.
17561 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
17563         * lisp/mpc.el (mpc-volume-refresh): Check if buffer is live.
17565 2015-10-14  Oleh Krehel  <ohwoeowho@gmail.com>
17567         Make dired-jump work with tar-subfile-mode
17569         * lisp/dired-x.el (dired-jump): When in `tar-subfile-mode', instead of
17570           emitting an error, switch to `tar-superior-buffer'.
17572 2015-10-14  Juanma Barranquero  <lekktu@gmail.com>
17574         * .gitignore: Add build-aux/ar-lib.
17576 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
17578         Better docstrings in seq.el and map.el
17580         * lisp/emacs-lisp/map.el:
17581         * lisp/emacs-lisp/seq.el: Improve the docstring for the pcase patterns.
17583 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
17585         Merge from gnulib
17587         This incorporates:
17588         2015-10-13 binary-io, u64, unistd: port to strict C
17589         2015-09-26 c-ctype: do not worry about EBCDIC + char signed
17590         2015-09-25 c-ctype: port better to z/OS EBCDIC
17591         2015-09-25 gnulib-common.m4: fix gl_PROG_AR_RANLIB/AM_PROG_AR clash
17592         * doc/misc/texinfo.tex, lib/binary-io.c, lib/c-ctype.h, lib/u64.c:
17593         * lib/unistd.c, m4/gnulib-common.m4, m4/gnulib-comp.m4:
17594         Copy from gnulib.
17596 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
17598         Take XPNTR private
17600         * src/alloc.c (PURE_POINTER_P): Remove.
17601         All uses replaced with PURE_P.
17602         (XPNTR_OR_SYMBOL_OFFSET): New function.
17603         (XPNTR): Move here from lisp.h.
17604         Reimplement in terms of XPNTR_OR_SYMBOL_OFFSET.
17605         (mark_maybe_object, valid_lisp_object_p, survives_gc_p):
17606         Remove unnecessary cast.
17607         (purecopy): Use XPNTR_OR_SYMBOL_OFFSET instead of XPNTR,
17608         to avoid an unnecessary runtime test for symbols.
17609         * src/lisp.h (lisp_h_XPNTR, XPNTR): Remove, moving XPNTR to alloc.c.
17610         Only alloc.c needs XPNTR now.
17612 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
17614         Add MPC play/pause command
17616         * lisp/mpc.el (mpc-toggle-play): New command.
17617         (mpc-mode-map): Bind it to "s".
17618         (mpc-mode-menu): Add corresponding menu item.
17620 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
17622         Add bindings and menu items for prev and next tracks
17624         * lisp/mpc.el (mpc-mode-map): Bind ">" to mpc-next,
17625         "<" to mpc-prev.
17626         (mpc-mode-menu): Add corresponding menu items
17628 2015-10-13  Ken Raeburn  <raeburn@raeburn.org>
17630         Reduce face-related consing during frame creation.
17632         * lisp/faces.el (face--attributes-unspecified): Compute the "unspecified"
17633         attribute list once.
17634         (face-spec-reset-face): Use it instead of building the list.
17636 2015-10-13  Ken Raeburn  <raeburn@permabit.com>
17638         Do process ConfigureNotify events indicating size changes.
17640         * src/xterm.c (handle_one_xevent): If consecutive ConfigureNotify
17641         events don't have the same size, process each one.
17643 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
17645         Derive mpc-mode from special-mode
17647         lisp/mpc.el (mpc-mode-map): Make from sparse keymap.  Unbind g.
17648         (mpc-mode): Derive from special mode.
17649         (mpc-songs-mode-map): Don't set parent keymap.
17651 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
17653         Fix error messages for when covers are not found.
17655         The last change to mpc-format let the binding to file call
17656         mpc-file-local-copy with nil argument.  Instead, employ if-let here
17657         so nil bindings don't result in needless computation and errors.
17658         * lisp/mpc.el: Require 'subr-x at compile time.
17659         * lisp/mpc.el (mpc-format): Use if-let.
17661 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
17663         Make dired-do-compress work for *.tar.gz files
17665         * lisp/dired-aux.el (dired-compress-file-suffixes): Associate
17666           "tar -zxvf" to *.tar.gz; update docstring.
17668         (dired-compress-file): Allow to specify switches after the command in
17669         `dired-compress-file-suffixes'.
17671 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
17673         Make dired-do-compress work for directories
17675         * lisp/dired-aux.el (dired-compress-file): When FILE is a directory,
17676           instead of emitting an error, call "tar -czf FILE.tar.gz FILE".
17677         Also convert the top comment into a docstring.
17679 2015-10-13  Stefan Monnier  <monnier@iro.umontreal.ca>
17681         * lisp/mpc.el (mpc-songs-refresh): Don't side-effect `active'
17683         ... since it might come straight from the memoizing table.
17685 2015-10-13  Juanma Barranquero  <lekktu@gmail.com>
17687         * src/w32fns.c (x_change_tool_bar_height): Remove unused variable frame.
17689 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
17691         Use special-mode in eww list modes
17693         * lisp/net/eww.el (eww-bookmark-mode, eww-history-mode)
17694         (eww-buffers-mode): Derive from special-mode and remove redundant
17695         setting of buffer-read-only.
17696         (eww-mode-map): Remove redundant keymap parent setting.
17697         (eww-bookmark-mode-map, eww-history-mode-map, eww-buffers-mode-map):
17698         Remove redundant keymap suppressions and mappings.
17700 2015-10-13  Martin Rudalics  <rudalics@gmx.at>
17702         Allow setting frame pixel sizes from frame parameters (Bug#21415)
17704         Also fix some misfeatures in frame (re-)sizing code, add more
17705         debugging information and remove some dead code.
17707         * lisp/frame.el (frame-notice-user-settings, make-frame): Change
17708         parameter names when setting `frame-size-history'.
17709         (frame--size-history): New function.
17711         * src/frame.c (frame_inhibit_resize): If frame has not been made
17712         yet, return t if inhibit_horizontal_resize or
17713         inhibit_vertical_resize bit have been set.
17714         (adjust_frame_size): Simplify.
17715         (make_frame): Initialize inhibit_horizontal_resize,
17716         inhibit_vertical_resize, tool_bar_redisplayed, tool_bar_resized.
17717         (Fframe_after_make_frame): Reset inhibit_horizontal_resize and
17718         inhibit_vertical_resize slots.
17719         (x_set_frame_parameters): Handle `text-pixels' specification for
17720         width and height parameters.  Don't consider new_height or
17721         new_width changes.  Call adjust_frame_size instead of
17722         Fset_frame_size.
17723         (x_figure_window_size): Two new arguments x_width and y_width
17724         returning frame's figures width and height.  Calculate tool bar
17725         height before frame sizes so SET_FRAME_HEIGHT can pick it up.
17726         Handle `text-pixels' specification for width and height
17727         parameters.
17728         (Qtext_pixels, Qx_set_frame_parameters, Qset_frame_size)
17729         (Qx_set_window_size_1, Qx_set_window_size_2)
17730         (Qx_set_window_size_3, Qx_set_menu_bar_lines)
17731         (Qupdate_frame_menubar, Qfree_frame_menubar_1)
17732         (Qfree_frame_menubar_2): New symbols.
17733         * src/frame.h (structure frame): New booleans
17734         tool_bar_redisplayed, tool_bar_resized,
17735         inhibit_horizontal_resize, inhibit_vertical_resize.
17736         (x_figure_window_size): Update external declaration.
17737         * src/gtkutil.c (xg_frame_set_char_size): Set size hints before
17738         calling gtk_window_resize.
17739         (update_frame_tool_bar): Make inhibiting of frame resizing more
17740         discriminative.  Set tool_bar_resized bit.
17741         * src/nsfns.m (x_set_tool_bar_lines): Make inhibiting of frame
17742         resizing more discriminative.  Call adjust_frame_size instead of
17743         x_set_window_size.
17744         (Fx_create_frame): Handle x_width and x_height if
17745         set by x_figure_window_size.
17746         * src/nsterm.m (x_set_window_size): For GNUSTEP build don't
17747         subtract 3 from tool bar height.
17748         (x_set_window_size): Add frame_size_history_add call.
17749         (x_new_font): Call adjust_frame_size instead of
17750         x_set_window_size.
17751         * src/w32fns.c (x_change_tool_bar_height): Reset
17752         tool_bar_redisplayed and tool_bar_resized bits when adding tool
17753         bar.  Make inhibiting of frame resizing more discriminative.
17754         (w32_wnd_proc): Remove dead code in WM_WINDOWPOSCHANGING case.
17755         (Fx_create_frame): Handle x_width and x_height if set by
17756         x_figure_window_size.  Set size hints before adjusting frame size.
17757         (x_create_tip_frame): Adjust x_figure_window_size call.
17758         * src/w32term.c (x_set_window_size): Add frame_size_history_add
17759         call.
17760         * src/widget.c (set_frame_size): Remove dead code.  Add
17761         frame_size_history_add call.  When frame_resize_pixelwise is t
17762         use FRAME_PIXEL_WIDTH and FRAME_PIXEL_HEIGHT instead of
17763         pixel_width and pixel_height.
17764         (update_various_frame_slots): Remove dead code.
17765         (EmacsFrameResize): Add more information in
17766         frame_size_history_add call.
17767         (EmacsFrameQueryGeometry): Round only when frame_resize_pixelwise
17768         is not set.
17769         * src/xdisp.c (redisplay_tool_bar): Set tool_bar_redisplayed bits.
17770         * src/xfns.c (x_set_menu_bar_lines): Change argument name.
17771         (x_change_tool_bar_height): Reset tool_bar_redisplayed and
17772         tool_bar_resized bits when adding tool bar.  Make inhibiting of
17773         frame resizing more discriminative.
17774         (Fx_create_frame): Handle x_width and x_height if set by
17775         x_figure_window_size.  Set size hints before adjusting frame size.
17776         (x_create_tip_frame): Adjust x_figure_window_size call.
17777         * src/xmenu.c (update_frame_menubar): Don't handle Lucid specially.
17778         (set_frame_menubar): On Lucid never add core-border-width to
17779         avoid that adding XtNinternalBorderWidth adds it again.
17780         (free_frame_menubar): Handle frame_inhibit_resize true for Motif.
17781         * src/xterm.c (x_new_font): In non-toolkit case handle size
17782         change of menu bar.
17783         (x_set_window_size_1): Fix calls to frame_size_history_add.
17784         (x_wm_set_size_hint): Remove dead code.  Set
17785         size_hints.min_width and size_hints.min_height to base_width and
17786         base_height.
17788 2015-10-13  Michael Albinus  <michael.albinus@gmx.de>
17790         * test/automated/file-notify-tests.el (file-notify--test-timeout):
17791         Add docstring.  Increase to 10 seconds for remote
17792         directories.  (Bug#21669)
17794 2015-10-12  Paul Eggert  <eggert@cs.ucla.edu>
17796         Unmacroize ebrowse.c and etags.c a bit
17798         * lib-src/ebrowse.c (READ_CHUNK_SIZE): Now an enum constant.
17799         (streq, filename_eq, set_flag, has_flag): Now inline functions.
17800         (set_flag): First arg is now an address, not an lvalue.
17801         All callers changed.
17802         (filename_eq, set_flag, has_flag):
17803         Rename from FILENAME_EQ, SET_FLAG, HAS_FLAG.
17804         All callers changed.
17805         * lib-src/etags.c (streq, strcaseeq, strneq, strncaseeq):
17806         Now inline functions.  Remove asserts that are unnecessary these
17807         days (and in some cases were too-generous anyway).
17809 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
17811         Use highlight for current items
17813         * lisp/mpc.el (mpc-select-make-overlay, mpc-tagbrowser-all-select):
17814         Apply highlight face instead of region face.
17816 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
17818         Search for more cover image names in MPC
17820         * lisp/mpc.el (mpc-format): Also look for .folder.jpg or folder.jpg
17821         case insensitively
17823 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
17825         Remove or comment out unused variables
17827         * src/w32fns.c (x_set_mouse_color): Comment out variables cursor,
17828         nontext_cursor, mode_cursor, hand_cursor and count.
17829         (x_change_tool_bar_height): Remove variable old_text_height.
17830         (deliver_wm_chars): Remove variable strip_Alt.
17831         (Fw32_shell_execute): Remove variable document_a.
17832         (Fw32_frame_geometry): Remove variable fullboth.
17833         * src/w32term.c (w32_setup_relief_color): Comment out variable
17834         w32_display_info.
17835         (w32_horizontal_scroll_bar_handle_click): Remove variables start, end.
17836         (w32_read_socket): Comment out variables rows, columns.
17837         * src/w32uniscribe.c (uniscribe_check_otf_1): Remove variable rest.
17839 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
17841         * src/w32proc.c (sys_select): Fix bitwise test.
17843 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
17845         Minor typo corrections in doc strings
17847         * lisp/menu-bar.el (popup-menu, popup-menu-normalize-position):
17848         Doc fixes.
17850 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
17852         * nt/INSTALL: Recommend MSYS Automake/Autoconf from ezwinports.
17854 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
17856         Attempt to avoid crashes in plist-member
17858         * src/fns.c (Fplist_member): Don't call QUIT between a CONSP test
17859         and a call to XCDR.  (Bug#21655)
17861 2015-10-12  Mike FABIAN  <mfabian@redhat.com>
17863         * lisp/select.el (gui-get-primary-selection): In
17864         gui-get-primary-selection use gui--selection-value-internal (Bug#20906)
17866 2015-10-12  Tassilo Horn  <tsdh@gnu.org>
17868         Support RTF in doc-view
17870         * lisp/doc-view.el (doc-view-set-doc-type): Add entry for RTF extension.
17872 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
17874         * src/w32fns.c (get_wm_chars): Increment counter, not pointer.
17876 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
17878         Replace the usage of an obsolete function in auth-source.el
17880         * lisp/gnus/auth-source.el (auth-source-epa-make-gpg-token):
17881         Replace an usage of `epg-context-set-armor' with `setf'.
17883 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
17885         * lisp/gnus/auth-source.el: Use sharp-quoting with functions.
17887 2015-10-11  Jay Belanger  <jay.p.belanger@gmail.com>
17889         Have calc-yank recognize numbers in different bases.
17891         * lisp/calc/calc-yank.el (math-number-regexp): New function.
17892         (calc-yank): Use `math-number-regexp' to recognize numbers.
17894 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
17896         Handle an opaque-move X11 window manager operation more efficiently
17898         * src/xterm.c (handle_one_xevent): If a ConfigureNotify event is
17899         followed by more ConfigureNotify events for the same window, process
17900         only the last one.
17902 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
17904         Fix cursor setting for tip frame; re-enable cursor generation
17906         * src/xfns.c (x_create_tip_frame): Include the cursor in the window
17907         attributes sent when creating the new X window.  Don't skip setting
17908         the pointerColor parameter.
17910 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
17912         Rewrite x_set_mouse_color to sync less
17914         We can track serial numbers of X requests and correlate error events
17915         with the associated requests.  This way we can identify errors for
17916         specific calls without having to use XSync after every one.
17918         * src/xfns.c (enum mouse_cursor): New type.
17919         (struct mouse_cursor_types, struct mouse_cursor_data): New types.
17920         (mouse_cursor_types): New array listing the Lisp variables and default
17921         cursor appearances for each cursor type.
17922         (x_set_mouse_color_handler): New function; checks error event serial
17923         number against submitted requests.
17924         (x_set_mouse_color): Updated to use the new error handler callback,
17925         and to be more table-driven, to simplify repetitious code.
17927 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
17929         Add x_catch_errors_with_handler
17931         * src/xterm.c (struct x_error_message_stack): Add new fields for a
17932         callback function and associated data pointer.
17933         (x_error_catcher): If the callback function is set, call it after
17934         saving the error message string.
17935         (x_catch_errors_with_handler): Renamed from x_catch_errors but now
17936         accepts a callback function and data pointer.
17937         (x_catch_errors): Now a wrapper function.
17938         * src/xterm.h (x_special_error_handler): New typedef.
17939         (x_catch_errors_with_handler): Declare.
17941 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
17943         Introduce x_uncatch_errors_after_check to reduce XSync calls
17945         Both x_had_errors_p and x_check_errors call XSync, so if they're
17946         immediately followed by x_uncatch_errors, its XSync call will be
17947         redundant, resulting in a wasted round trip to the X server.
17949         * src/xterm.c (x_uncatch_errors_after_check): New routine; a copy of
17950         x_uncatch_errors without the XSync call.
17951         (XTmouse_position, x_wm_supports):
17952         * src/xfns.c (x_set_mouse_color):
17953         * src/xmenu.c (Fx_menu_bar_open_internal):
17954         * src/xselect.c (x_own_selection, x_get_foreign_selection):
17955         (Fx_get_atom_name): Call it instead of x_uncatch_errors.
17956         * src/xterm.h (x_uncatch_errors_after_check): Declare.
17958 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
17960         Document the optional prefix to `calc-yank'
17962         * doc/misc/calc.texi (Yanking into the Stack): Document the optional
17963         prefix to `calc-yank'.
17964         * lisp/calc/calc-yank.el (calc-yank): Ensure that things killed from
17965         the Calc buffer are yanked back unchanged.
17967 2015-10-10  Mark Oteiza  <mvoteiza@udel.edu>
17969         * lisp/calendar/calendar.el: Display buffer before executing body.
17971         In each use of this macro, the modeline is derived from a window width
17972         calculation, which will be wrong if (display-buffer) splits the window
17973         horizontally.
17975 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
17977         Use ‘echo’ safely with ‘\’ or leading ‘-’
17979         POSIX says that ‘echo FOO’ produces implementation-defined output
17980         if FOO contains leading ‘-’, or ‘\’ anywhere, so don’t assume GNU
17981         behavior in that case.
17982         * Makefile.in (removenullpaths): Remove.
17983         (epaths-force): Rewrite to avoid the need for ‘echo’.
17984         (install-etc): Be clearer about escaping the shell metacharacters
17985         ‘\’ and ‘$’.
17986         * Makefile.in (install-arch-indep, install-etcdoc):
17987         * admin/charsets/mapconv, admin/merge-gnulib, admin/merge-pkg-config:
17988         * admin/quick-install-emacs, build-aux/gitlog-to-emacslog:
17989         * configure.ac, lib-src/rcs2log, make-dist:
17990         * src/Makefile.in (lisp.mk):
17991         Don’t assume ‘echo’ outputs ‘\’ and leading ‘-’ unscathed.
17992         For example, use ‘printf '%s\n' "$foo"’ rather than ‘echo "$foo"’
17993         if $foo can contain arbitrary characters.
17994         * lisp/Makefile.in (TAGS): Use ‘ls’, not ‘echo’, to avoid ‘\’ issues.
17995         * doc/lispref/two-volume.make (vol1.pdf):
17996         * test/etags/make-src/Makefile (web ftp publish):
17997         Use ‘printf’ rather than ‘echo -e’.
17999 2015-10-10  Kaushal Modi  <kaushal.modi@gmail.com>
18001         Allow numbers with different radixes to be yanked.
18003         * lisp/calc/calc-yank.el (calc-yank): Allow radixes besides the
18004         default base 10.
18006 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
18008         Improve CHECK_IMPURE and PURE_P speedup
18010         * src/data.c (Faset): Use XVECTOR and XSTRING rather than XPNTR.
18012 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
18014         Use events instead of chars to keep track of steps.
18016         * lisp/calc/calc-prog.el (calc-kbd-loop): Use events instead of chars
18017         to keep track of steps.
18019 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
18021         Fix --enable-gcc-warnings problem with older GCC
18023         * src/puresize.h: Add INLINE_HEADER_BEGIN, INLINE_HEADER_END.
18024         This is for building with --enable-gcc-warnings with
18025         GCC 4.6 through 5.0.
18027 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
18029         Fix vertical-motion in truncated lines that end in a stretch
18031         * src/indent.c (Fvertical_motion): Expect overshoot when point is
18032         beyond window margin and lines are truncated, even if we have a
18033         stretch at point.  (Bug#21468)
18035 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
18037         Avoid link-time errors due to inline functions
18039         * src/emacs.c: Include puresize.h, to avoid link-time errors in
18040         unoptimized builds due to PURE_P and CHECK_IMPURE, which are now
18041         inline functions.
18043 2015-10-10  Andreas Schwab  <schwab@linux-m68k.org>
18045         * src/data.c (Faset): Fix last change.
18047 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
18049         CHECK_IMPURE and PURE_P speedup
18051         * src/intervals.c (create_root_interval):
18052         Do CHECK_IMPURE only for strings; not needed for buffers.
18053         Prefer ! STRINGP to BUFFERP, for a tad more speed.
18054         * src/puresize.h (CHECK_IMPURE, PURE_P):
18055         Now inline functions instead of macros.
18056         (PURE_P): Don’t use XPNTR; that is now the caller’s responsibility.
18057         All callers changed.
18058         (CHECK_IMPURE): New argument PTR, to save us the work of running XPNTR.
18059         All callers changed.
18061 2015-10-09  Noah Friedman  <friedman@splode.com>
18063         (tramp-open-connection-setup-interactive-shell): Send -onlcr as well.
18065 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
18067         * lisp/progmodes/cc-mode.el (c-after-font-lock-init): Only *move*
18069         our after-change-function, rather than re-adding it if it was removed.
18071 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
18073         * lisp/cedet/ede: Silence some compiler warnings
18075         * lisp/cedet/ede.el: Require cl-lib.  Silence some compiler warnings.
18076         (ede-menu-obj-of-class-p): Use cl-some rather than `eval'.
18077         (ede-apply-object-keymap, ede-reset-all-buffers)
18078         (ede-auto-add-to-target): Use dolist.
18079         (ede-new, ede-flush-deleted-projects, ede-global-list-sanity-check):
18080         Use field names rather than initarg names in `oref'.
18081         (ede-load-project-file): Remove unused var `file'.
18082         (ede-map-any-target-p): Use cl-some rather than ede-map-targets.
18083         (ede-set): Remove unused var `a'.
18085         * lisp/cedet/ede/emacs.el: Silence some compiler warnings.
18086         (ede-project-autoload): Avoid the old-style "name" argument.
18087         (ede-emacs-find-matching-target): Use field names rather than initarg
18088         names in `oref'.
18090         * lisp/cedet/ede/linux.el: Silence some compiler warnings.
18091         (ede-linux-load, ede-project-autoload): Avoid the old-style
18092         "name" argument.
18093         (ede-linux-find-matching-target): Use field names rather than initarg
18094         names in `oref'.
18096 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
18098         * lisp/textmodes/reftex.el: Silence byte-compiler warnings.
18100 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
18102         * lisp/progmodes/prolog.el (prolog-smie-rules): Try and avoid
18103         indenting too far after ":-".
18105 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
18107         Update case-table and categories of recently added characters
18109         * lisp/international/characters.el: Update information about Latin
18110         Extended-C, Latin Extended-D, Latin Extended-E, Cyrillic Extended,
18111         Georgian, Glagolitic, Deseret, Old Hungarian, and Warang Citi
18112         blocks.  (Byug#21654)
18114 2015-10-09  Martin Rudalics  <rudalics@gmx.at>
18116         * src/frame.c (adjust_frame_size): In minibuffer-only windows
18117         don't count minibuffer height twice.  (Bug#21643)
18119 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
18121         Avoid inflooping in font-lock
18123         * lisp/font-lock.el (font-lock-extend-region-wholelines): Bind
18124         inhibit-field-text-motion around the call to
18125         line-beginning-position, to avoid inflooping.  (Bug#21615)
18127 2015-10-09  Tassilo Horn  <tsdh@gnu.org>
18129         Refactor duplicated code; ensure default is in completions
18131         * lisp/textmodes/reftex-cite.el (reftex--query-search-regexps):
18132         New function.
18133         (reftex-extract-bib-entries): Use it.
18134         (reftex-extract-bib-entries-from-thebibliography): Use it.
18136 2015-10-09  Vincent Belaïche  <vincentb1@users.sourceforge.net>
18138         * doc/misc/autotype.texi (Skeletons as Abbrevs): "if" -> "ifst"
18139         in the example.
18141 2015-10-08  Stefan Monnier  <monnier@iro.umontreal.ca>
18143         * lisp/calc/calc.el: Silence byte-compiler warnings.
18144         (calc-scan-for-dels): Use ignore-errors.
18145         (calc-dispatch, calc-do-dispatch): Make unused arg optional.
18146         (calc-read-key-sequence): Remove unused var `prompt2'.
18147         (calc-kill-stack-buffer): Remove unused var `buflist'.
18148         (calc): Remove unused var `oldbuf'.
18149         (calc-refresh): Use inhibit-read-only.
18150         (calc-can-abbrev-vectors): Declare.
18151         (calc-record): Remove unused var `mainbuf'.
18152         (math-sub-bignum): Remove unused var `sum'.
18153         (math-svo-c, math-svo-wid, math-svo-off): Declare.
18155 2015-10-08  Daiki Ueno  <ueno@gnu.org>
18157         Use g_clear_error instead of g_error_free
18159         * src/image.c: Define g_clear_error instead of g_error_free.
18160         (init_svg_functions): Resolve symbol g_clear_error instead of
18161         g_error_free.
18162         (svg_load_image): Use g_clear_error instead of g_error_free, to
18163         suppress GLib warnings when ERR is not set.  See bug#21641.
18165 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
18167         * src/image.c (image_size_error): Simplify.
18169 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
18171         Fix problems caught with --enable-gcc-warnings
18173         * src/image.c (lookup_rgb_color):
18174         * src/xfns.c (x_defined_color):
18175         * src/xterm.c (x_parse_color):
18176         Remove unused locals.
18178 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
18180         * lisp/calc/calc.el (calc-digit-start-entry): Fix typo.
18182 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
18184         Format initial input uniformly
18186         * lisp/calc/calc.el (calc-digit-start-entry): New function.
18187         * lisp/calc/calc.el (calcDigit-start):
18188         * lisp/calc/calc-aent.el (calc-alg-digit-entry):
18189         Use `calc-digit-start-entry' to format input.
18191 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
18193         Disable non-working pointerColor setting for X tooltip frame
18195         It generates a bunch of server traffic, but there's some bug wherein
18196         the new mouse cursor settings don't seem to get used.  In most
18197         situations the cursor isn't likely to be seen anyway, so it's not
18198         urgent to fix.
18200         * src/xfns.c (x_create_tip_frame): Don't set pointerColor.
18202 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
18204         Reduce some unnecessary X calls
18206         * src/xfns.c (x_real_pos_and_offsets): Remove a redundant XGetGeometry
18207         call.  If border width is wanted, get it from the XGetGeometry call
18208         instead of calling XGetWindowAttributes on the same window.  Skip some
18209         X calls if we've already detected an error from the X server.
18210         * src/xterm.c (x_wm_supports): Delete x_sync before x_had_errors_p.
18211         (handle_one_xevent): Delete XSync call before x_uncatch_errors.
18213 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
18215         Reduce color allocation/query traffic in the TrueColor case
18217         When working with an X visual with TrueColor class, pixel values can
18218         be generated from the RGB values according to mask value provided by
18219         the server on connection.  Some of the image-handling code was already
18220         doing this.
18222         * src/xterm.h (x_make_truecolor_pixel): New function; code taken from
18223         lookup_rgb_color.
18224         (x_mutable_colormap): New function.
18225         * src/image.c (lookup_rgb_color): Move pixel composition code to
18226         x_make_truecolor_pixel.
18227         (x_kill_gs_process): Call x_mutable_colormap.
18228         * src/xfaces.c (x_free_colors, x_free_dpy_colors): Call
18229         x_mutable_colormap.
18230         * src/xftfont.c (xftfont_get_colors): Call x_query_colors.
18231         * src/xterm.c (x_query_colors): For a TrueColor display, decompose the
18232         pixel value into RGB values directly, and don't send a request to the
18233         server.
18234         (x_alloc_nearest_color): For a TrueColor display, construct the pixel
18235         value with x_make_truecolor_pixel.
18236         (x_copy_color): For an immutable color map, just return the provided
18237         pixel value.
18239 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
18241         Cache XParseColor results in the X display info structure
18243         With repeated lookups of foreground and background colors for multiple
18244         faces per frame, we issue a lot of redundant color name lookups to the
18245         X server, waiting every time for the response.  On a remote network
18246         with, say, 30ms round-trip time, this can add nearly a full second to
18247         creation of a new frame.
18249         * src/gtkutil.c (xg_check_special_colors): Call x_parse_color.
18250         * src/image.c (get_spec_bg_or_alpha_as_argb):
18251         (xpm_init_color_cache, xpm_lookup_color):
18252         * src/xfns.c (x_defined_color):
18253         * src/xterm.c (x_parse_color): New function; caches color names not
18254         starting with "#" in the display-info structure.
18255         (x_delete_display): Delete the cache content.
18256         * src/xterm.h (struct color_name_cache_entry): New type.
18257         (x_parse_color): Declare.
18258         (struct x_display_info): Add a new field for the cache.
18260 2015-10-07  Stefan Monnier  <monnier@iro.umontreal.ca>
18262         * src/syntax.c (syms_of_syntax): Make syntax-propertize--done local.
18264 2015-10-07  Eli Zaretskii  <eliz@gnu.org>
18266         Fix segfault in image_size_error
18268         * src/image.c (image_size_error): Pass a Lisp string to
18269         image_error, not a C string.  (Bug#21641)
18271 2015-10-07  Simen Heggestøyl  <simenheg@gmail.com>
18273         Highlight CSS variable definitions
18275         * lisp/textmodes/css-mode.el (css-nmstart-re): Tweak regexp to accept
18276         CSS variables.  (Bug#21638)
18278 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
18280         * test/automated/tabulated-list-test.el: New file.
18281         Test bug#21639 and some basic functionality.
18283 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
18285         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-sort):
18286         Check if column can be sorted before trying.  (Bug#21639)
18288 2015-10-07  Nicolas Richard  <youngfrog@members.fsf.org>
18290         Add test for `self-insert-command' (bug#21633)
18292         * test/automated/cmds-tests.el: New file.
18294 2015-10-07  Martin Rudalics  <rudalics@gmx.at>
18296         * src/window.c (resize_frame_windows): Don't set root window's
18297         top position when resizing horizontally.
18299 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
18301         * lisp/progmodes/prog-mode.el (prettify-symbols-alist):
18302         Document more possible values.
18304 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
18306         * lisp/textmodes/tex-mode.el: Use lexical-binding.
18308 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
18310         * lisp/indent.el (indent--default-inside-comment): New function.
18311         (indent-for-tab-command): Use it for `noindent' indentation.
18313 2015-10-06  Paul Eggert  <eggert@cs.ucla.edu>
18315         Fix bug in GC_CHECK_MARKED_OBJECTS check
18317         * src/alloc.c (mark_object): Fix bug in checking code.
18318         When GC_CHECK_MARKED_OBJECTS is defined, the bug caused
18319         CHECK_ALLOCATED_AND_LIVE_SYMBOL to repeatedly do the
18320         CHECK_ALLOCATED and CHECK_LIVE tests for the first symbol in each
18321         bucket.  The bug did not affect behavior either in the normal case
18322         where GC_CHECK_MARKED_OBJECTS is not defined, or where Emacs does
18323         not have an internal error that a properly-written
18324         CHECK_ALLOCATED_AND_LIVE_SYMBOL would detect.
18326 2015-10-06  Tassilo Horn  <tsdh@gnu.org>
18328         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
18329         Add prettified version for \\Bbb{Q}.
18331 2015-10-06  Artur Malabarba  <bruce.connor.am@gmail.com>
18333         * test/automated/package-test.el (package-test-install-single):
18334         Add a test for bug#21625.
18336 2015-10-06  Aaron Ecay  <aaronecay@gmail.com>
18338         * lisp/emacs-lisp/package.el (package-install): Fix error when pkg is
18339           not a package-desc object.  Also clarify documentation.  (Bug#21625)
18341 2015-10-06  Eli Zaretskii  <eliz@gnu.org>
18343         Fix display of characters adjacent to ZWJ and ZWNJ
18345         * src/bidi.c (bidi_resolve_neutral): Treat all Bn (a.k.a. "control")
18346         characters the same as directional formatting controls.
18347         (bidi_level_of_next_char): Include all Bn characters in rule L1,
18348         as mandated by the UBA.
18350 2015-10-06  Andreas Schwab  <schwab@suse.de>
18352         * src/cmds.c (Fself_insert_command): Don't use XFASTINT on a negative
18353         number.  (Bug#21633)
18355 2015-10-05  Xue Fuqiao  <xfq.free@gmail.com>
18357         * doc/lispref/objects.texi (Window Type): Add a cross reference.
18359         * src/buffer.c (syms_of_buffer): Typo fix.  (Bug#21622)
18361 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
18363         * lisp/language/misc-lang.el (composition-function-table):
18364         Fix entries for Arabic and Syriac.
18366 2015-10-05  Damien Cassou  <damien@cassou.me>
18368         Add first unit tests for auth-source.el
18370         * test/automated/auth-source-tests.el: New file.
18372 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
18374         Remove redundant redisplay code
18376         * src/xdisp.c (redisplay_internal, try_cursor_movement)
18377         (try_window_reusing_current_matrix, try_window_id): Remove
18378         redundant restrictions on redisplay optimizations based on the
18379         frame's 'redisplay' flag.  See
18380         http://osdir.com/ml/general/2015-10/msg02110.html for the relevant
18381         discussions.
18383 2015-10-04  Stefan Monnier  <monnier@iro.umontreal.ca>
18385         * src/xdisp.c (windows_or_buffers_changed): Improve docstring.
18387 2015-10-04  Xue Fuqiao  <xfq.free@gmail.com>
18389         Update tutorials/TUTORIAL.cn
18391         * etc/tutorials/TUTORIAL.cn: Improve translation.
18393 2015-10-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
18395         * src/macfont.m (macfont_encode_char, syms_of_macfont):
18396         Remove unused vars.
18398 2015-10-04  Stefan Merten  <stefan@merten-home.de>
18400         Pull in version numbers from rst.el upstream release.
18402         * lisp/textmodes/rst.el (rst-cvs-header, rst-svn-rev)
18403         (rst-svn-timestamp, rst-official-version)
18404         (rst-official-cvs-rev, rst-package-emacs-version-alist):
18405         Update version numbers.
18407 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
18409         * test/automated/coding-tests.el: New file.
18411 2015-10-04  Michael Albinus  <michael.albinus@gmx.de>
18413         Improve XEmacs compatibility of Tramp
18415         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
18416         Declare if it doesn't exist.
18417         (file-remote-p): Remove defalias, which was necessary for GNU Emacs 21.
18418         (redisplay): Make it an alias if it doesn't exist.
18420         * lisp/net/tramp.el (tramp-get-remote-tmpdir): Don't use
18421         `file-remote-p' (due to XEmacs compatibility).
18423         * lisp/net/trampver.el (locate-dominating-file)
18424         (tramp-compat-replace-regexp-in-string): Autoload.
18425         (tramp-repository-get-version): Do not dupe byte-compiler.
18427 2015-09-02  K. Handa  <handa@gnu.org>
18429         fix for the case that M17N_FLT_USE_NEW_FEATURE is not defined
18431         * src/ftfont.c (ftfont_drive_otf) [not M17N_FLT_USE_NEW_FEATURE]:
18432         Adjusted for the change of type of elements in the array
18433         MFLTGlyphString.glyphs.
18435 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
18436             Michael Heerdegen  <michael_heerdegen@web.de>
18438         shr: fix too long lines in rendered buffers (Bug#21012)
18440         * lisp/net/shr.el (shr-insert-document, shr-fill-text):
18441         Correct calculation of available width.
18442         (shr-find-fill-point): Don't overflow window edge if shr-kinsoku-shorten
18443         is nil.
18445 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
18447         Restore blank line before next section, erroneously erased
18448         in my previous commit
18450         * etc/compilation.txt (symbol ant): Add an additional trailing blank
18451         line to this section, so that there are two of them immediately before
18452         the next section.
18454 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
18456         Support MSW filename style for ant compilation error regexp
18458         * etc/compilation.txt (symbol ant):
18459         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
18460         Support MSW filename style.
18462 2015-10-03  Paul Eggert  <eggert@cs.ucla.edu>
18464         * nt/INSTALL: Minor spelling and quote fixes.
18466         * lisp/ibuffer.el: Fix docstring length (Bug#21541).
18468 2015-10-03  Simen Heggestøyl  <simenheg@gmail.com>
18470         Maintain ordering of JSON object keys by default
18472         * lisp/json.el (json-object-type): Mention order handling in doc-string.
18473         (json--plist-reverse): New utility function.
18474         (json-read-object): Maintain ordering for alists and plists.
18475         (json-pretty-print): Ensure that ordering is maintained.
18477         * test/automated/json-tests.el (test-json-plist-reverse): New test for
18478         `json--plist-reverse'.
18479         (json-read-simple-alist): Update test to accommodate for changes in
18480         `json-read-object'.
18482         * etc/NEWS: Document the new behavior of the pretty printing functions.
18484 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
18486         * src/coding.c (complement_process_encoding_system): Revert last change.
18488 2015-10-03  Ulf Jasper  <ulf.jasper@web.de>
18490         * admin/MAINTAINERS: Add entry for Ulf Jasper.
18492 2015-10-03  Xue Fuqiao  <xfq.free@gmail.com>
18494         Doc fix for `defmacro'
18496         * doc/lispref/objects.texi (Macro Type): `defmacro' is a macro now.
18498 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
18500         More validatation of coding systems
18502         * src/fileio.c (Finsert_file_contents): Remove redundant
18503         coding-system check.
18504         (choose_write_coding_system): Likewise.
18505         * src/coding.c (complement_process_encoding_system): Check argument
18506         for valid coding system.
18508 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
18510         Avoid crashes in coding_inherit_eol_type
18512         * src/coding.c (coding_inherit_eol_type): Check the validity of
18513         the arguments.  Suggested by Andreas Schwab <schwab@linux-m68k.org>.
18514         (Bug#21602)
18516 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
18518         More validatation of coding system in 'write-region'
18520         * src/coding.c (choose_write_coding_system): More validation of
18521         coding-system from various sources.  Suggested by Andreas Schwab
18522         <schwab@linux-m68k.org>.  (Bug#21602)
18524 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
18526         Avoid crashes due to invalid coding-system
18528         * src/fileio.c (choose_write_coding_system)
18529         (Finsert_file_contents): Check validity of coding-system-for-write
18530         and coding-system-for-read bound by the caller.  (Bug#21602)
18532 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
18534         Adapt to new prettify-symbols-unprettify-at-point default
18536         * etc/NEWS: Mention that unprettication of symbol at point is off
18537         by default.
18539 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
18541         Revert my two recent process.c changes
18543         Revert "Improve last commit to process.c" and "Remove callback-handled
18544         channels from Available set" because they did not fix bug#21313.
18546         This reverts commits bfa1aa8e2bdaf14adbbf1e9e824051d3f740694c and
18547         27f871907cc24f33a7d12ac3a4ab71a88f0bc554.
18549 2015-10-02  Markus Triska  <triska@metalevel.at>
18551         * lisp/progmodes/prolog.el: Update and extend operator table.
18552         (prolog-smie-grammar): Add multifile, public etc.
18554 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
18556         Allow autogen even when Git is not installed
18558         * autogen.sh: Test ‘git status’ before trying to use Git.
18560 2015-10-02  Stefan Monnier  <monnier@iro.umontreal.ca>
18562         * lisp/vc/vc-git.el (vc-git-region-history): Handle local changes.
18563         Adjust lto/lfrom when we have uncommitted changes.
18565 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
18567         Fix problems found by clang 3.5.0
18569         * src/cmds.c (Fdelete_char): Don’t assume XINT returns int.
18570         * src/font.c (font_parse_family_registry):
18571         Use &"str"[X] instead of "str"+X, to pacify clang -Wstring-plus-int.
18573 2015-10-02  Eli Zaretskii  <eliz@gnu.org>
18575         * nt/INSTALL: Update instructions for running autogen.sh.
18577         * nt/INSTALL: Point to ezwinports for libXpm binaries.
18579 2015-10-02  Daniel Colascione  <dancol@dancol.org>
18581         Fix winner in cl-lib not loaded case
18583         * lisp/winner.el (winner-change-fun): Don't use cl-lib functions
18584         without requiring CL
18586 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
18588         Fix a few problems with directed quotes
18590         This is in response to a problem report by Kaushal Modi in:
18591         http://bugs.gnu.org/21588#25
18592         * lisp/cedet/mode-local.el (describe-mode-local-overload):
18593         * lisp/emacs-lisp/bytecomp.el (byte-compile-fix-header):
18594         * lisp/info-xref.el (info-xref-check-all-custom):
18595         * lisp/mail/emacsbug.el (report-emacs-bug-hook):
18596         Prefer directed to undirected single quotes in diagnostics.
18598 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
18600         Revert "Attempt to fix slow redisplay caused by last changes"
18602         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
18603         (try_cursor_movement): Don't relax requirements for redisplay
18604         optimizations for the selected frame.  (Bug#21597)
18606         This reverts commit c4c1fb97727ff52bcfa83ad5ed94a64a93d12e59.
18608 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
18610         Fix slow redisplay when daemon frame exists
18612         * src/xdisp.c (redisplay_internal): Don't consider daemon frames
18613         when looking for frames that need to be redisplayed.  (Bug#21597)
18615 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
18617         Attempt to fix slow redisplay caused by last changes
18619         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
18620         (try_cursor_movement): Relax requirements for redisplay
18621         optimizations for the selected frame.  (Bug#21597)
18623 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
18625         * src/dired.c (Ffile_name_completion, Ffile_name_all_completions):
18626         Improve doc string.
18628 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
18630         * lisp/minibuffer.el (minibuffer-completion-help):
18631         Set default base-size, in case completion table does not set it.
18633 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
18635         Fix GUD display of GDB output with non-ASCII text
18637         * lisp/progmodes/gdb-mi.el (gdb-mi-decode-strings): New defcustom.
18638         (gdb-mi-decode): New function.
18639         (gud-gdbmi-marker-filter): If gdb-mi-decode-strings is non-nil,
18640         decode octal escapes in GDB output.  (Bug#21572)
18642 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
18644         * nt/INSTALL: Document where to find XPM support files.
18646 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
18648         Un- and re-prettification are not exclusive
18650         * lisp/progmodes/prog-mode.el (prettify-symbols--post-command-hook):
18651         Re-apply prettification to previous symbol also when unprettifying
18652         next one.
18654 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
18656         Don't unprettify symbol at point by default
18658         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
18659         Default to disabled (nil).
18661 2015-09-30  Artur Malabarba  <bruce.connor.am@gmail.com>
18663         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
18664         Support unprettifying when point is after a symbol.
18666         * etc/NEWS: Document `prettify-symbols-unprettify-at-point'.
18668 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
18670         Avoid assertion violations in push_prefix_prop
18672         * src/xdisp.c (push_prefix_prop): Avoid assertion violations when
18673         a line that has a line-prefix defined starts with an image.  (Bug#21428)
18675 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
18677         Disable some display optimizations when frames need redisplay
18679         These optimizations were previously disabled by the
18680         windows_or_buffers_changed flag, which now is not set
18681         when only some frames need to be redrawn.
18682         * src/xdisp.c (redisplay_internal): Redisplay any frame whose
18683         'redisplay' flag is set.
18684         (try_window_reusing_current_matrix, try_window_id)
18685         (try_cursor_movement): Disable these optimizations when the
18686         frame's 'redisplay' flag is set.
18688 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
18690         Don't modify buffer by unprettification
18692         * lisp/progmodes/prog-mode.el (prettify-symbols--compose-symbol):
18693         (prettify-symbols--post-command-hook, prettify-symbols-mode): Don't
18694         modify buffer when setting/removing custom prettify-symbols-start/end
18695         text properties.  Add them to font-lock-extra-managed-props, too.
18697 2015-09-30  Stefan Monnier  <monnier@iro.umontreal.ca>
18699         Try to avoid redisplaying all frames when creating a new one
18701         * src/xfns.c (x_set_menu_bar_lines, x_change_tool_bar_height):
18702         * src/xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
18703         (Finternal_set_lisp_face_attribute, update_face_from_frame_parameter):
18704         * src/frame.c (x_set_screen_gamma): Set the specific frame's
18705         `redisplay' bit rather than windows_or_buffers_changed.
18707         * src/window.c (apply_window_adjustment): Remove redundant setting of
18708         windows_or_buffers_changed.
18710         * src/xdisp.c (redisplay_internal): Set the specific frame's
18711         `redisplay' bit rather than update_mode_lines in response to
18712         cursor_type_changed.
18713         (syms_of_xdisp): Use hash-tables for redisplay_*_cause tables.
18714         (AINC): Adjust accordingly.
18716 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
18718         Implement unprettification of symbol at point
18720         * lisp/progmodes/prog-mode.el: Implement feature for unprettifying the
18721         symbol at point.
18722         (prettify-symbols--current-symbol-bounds): New variable.
18723         (prettify-symbols--post-command-hook): New function.
18724         (prettify-symbols-unprettify-at-point): New defcustom.
18725         (prettify-symbols-mode): Use it.
18726         (prettify-symbols--compose-symbol): Use them.
18728 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
18730         * src/macfont.m (mac_font_descriptor_supports_languages):
18731         Regard "zh" as synonym of "zh-Hans".
18733 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
18735         Work around crash when displaying etc/HELLO on OS X 10.11
18737         * src/macfont.m (mac_font_get_weight)
18738         (mac_font_descriptor_get_adjusted_weight): New functions.
18739         (macfont_store_descriptor_attributes): Adjust weight.
18741 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
18743         * src/macfont.m: Fix compilation with USE_CT_GLYPH_INFO.
18745 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
18747         * lisp/arc-mode.el (archive-rar-summarize): Better alignment
18748         of the columns.
18750 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
18752         Use unar and lsar to handle RAR archives in arc-mode
18754         * lisp/arc-mode.el (archive-rar-extract, archive-extract-by-file): Rely
18755         on unar and lsar instead of unrar-free for RAR archives (bug#17663).
18757 2015-09-30  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
18759         Clarify :create in auth-source's docs
18761         * lisp/gnus/auth-source.el (auth-source-search):
18762         Clarify :create's meaning.
18764 2015-09-30  Phil Sainty  <psainty@orcon.net.nz>
18766         Avoid empty -path arguments in rgrep
18768         * lisp/progmodes/grep.el (rgrep-default-command): Remove nil from
18769         the list produced according to grep-find-ignored-directories,
18770         before passing it to Find/Grep invocation.  (Bug#21548)
18772 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
18774         Clarify documentation of pos-visible-in-window-p
18776         * src/window.c (Fpos_visible_in_window_p): Clarify the meaning of
18777         t for POS.  See
18778         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg01040.html
18779         for the original report.
18781         * doc/lispref/windows.texi (Window Start and End): Clarify the
18782         meaning of t for the POSITION argument of pos-visible-in-window-p.
18784 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
18786         * lisp/progmodes/prolog.el: Fix various indentation cases.
18787         (prolog-operator-chars): New const (add \\).
18788         (prolog-smie-forward-token, prolog-smie-backward-token): Use it.
18789         (prolog-smie-rules): Add rules according to bug#21526.
18791 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
18793         * lisp/progmodes/sh-script.el: Old "dumb" continued line indent.
18794         (sh-indent-after-continuation): Add new value `always' (bug#17620)
18795         (sh-smie-sh-rules): Remove old handling of continued lines.
18796         (sh-smie--indent-continuation): New function.
18797         (sh-set-shell): Use it.
18799 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
18801         * lisp/progmodes/octave.el: Use grammar more; Handle enumeration fun.
18802         Remove redundant :group keyword args.
18803         (octave-begin-keywords, octave-else-keywords, octave-end-keywords):
18804         Remove variables.
18805         (octave-operator-table, octave-smie-bnf-table): Use let-when-compile to
18806         turn them into compile-time variables.
18807         Auto-generate the "foo ... end" rules from the "foo ... endfoo" rules.
18808         Add rules for break, continue, return, global, and persistent.
18809         Refine the rule for "until".
18810         (octave-smie--funcall-p, octave-smie--end-index-p)
18811         (octave-smie--in-parens-p): New functions.
18812         (octave-smie-backward-token, octave-smie-forward-token): Use them to
18813         distinguish the "enumeration" function and the "end" index from
18814         their corresponding keywords.
18815         (octave--block-offset-keywords): New constant.
18816         (octave-smie-rules): Use it.  Adjust rules for new global/persistent
18817         parsing.
18818         (octave-reserved-words): Redefine using octave-smie-grammar.
18819         (octave-font-lock-keywords): Use octave-smie--funcall-p and
18820         octave-smie--end-index-p.
18822 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
18824         * lisp/emacs-lisp/lisp-mode.el (let-when-compile): Work like let*.
18826 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
18828         * nt/INSTALL: Remove references to GTK site.
18829         That site no longer offers Windows downloads.
18831 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
18833         * nt/INSTALL: Add instructions for installing Git.
18835 2015-09-29  Katsumi Yamaoka  <yamaoka@jpl.org>
18837         * lisp/net/shr.el (shr-colorize-region): Allow 88-color tty to
18838         use colors.  Suggested by Eli Zaretskii.
18840 2015-09-28  Katsumi Yamaoka  <yamaoka@jpl.org>
18842         * lisp/net/shr.el (shr-colorize-region): Don't do it on a system
18843         not supporting 256 above colors (bug#21557).
18845 2015-09-28  Dmitry Gutov  <dgutov@yandex.ru>
18847         Revert "Don't rely on defaults in decoding UTF-8 encoded Lisp files"
18849         This reverts commit db828f62f6f17414fbbc3206dac123dc73dd6055.
18851 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
18853         Add documentation for seq.el
18855         * doc/lispref/sequences.texi: Add documentation regarding extending
18856         seq.el, as well as missing documentation for seq-elt, seq-length, seq-p,
18857         seq-do and seq-map.
18859 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
18861         Better documentation for seq-some
18863         * doc/lispref/sequences.texi:
18864         * lisp/emacs-lisp/seq.el: Update the documentation of seq-some to
18865         guarantee that the returned value is the first non-nil value that
18866         resulted from applying the predicate.
18868 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
18870         * lisp/arc-mode.el: Sharp-quote function arguments.
18872 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
18874         Avoid redisplay error in ediff-regions-wordwise
18876         * lisp/vc/ediff-util.el
18877         (ediff-clone-buffer-for-region-comparison): Make sure the mark is
18878         set before activating it.  (Bug#21567)
18880 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
18882         Another attempt to fix crashes due to prematurely freed faces
18884         * src/xdisp.c (redisplay_internal): Inhibit freeing of realized
18885         faces for as long as we might have desired matrices that reference
18886         those faces.  (Bug#21428)
18888 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
18890         Add auctex development list email address
18892 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
18894         * admin/MAINTAINERS: Add entries for AUCTeX team and myself.
18896 2015-09-28  Arash Esbati  <esbati@gmx.de>  (tiny change)
18898         Improve wrapfig package support and caption parsing
18900         * lisp/textmodes/reftex-vars.el (reftex-label-alist-builtin):
18901         Correct description string and add wraptable environment.
18902         (reftex-default-context-regexps): Improve caption regexp.
18904 2015-09-28  Anders Lindgren  <andlind@gmail.com>
18906         Respect value of frame_resize_pixelwise when handling fullscreen state
18908         * src/nsterm.m (handleFS): Respect frame_resize_pixelwise when
18909         setting size increments.
18911 2015-09-27  Michael Albinus  <michael.albinus@gmx.de>
18913         * src/gfilenotify.c (Fgfile_add_watch): Cleanup temporary variable.
18915 2015-09-27  Simen Heggestøyl  <simenheg@gmail.com>
18917         Add prettify-symbols-alist for js-mode
18919         * lisp/progmodes/js.el (js--prettify-symbols-alist): New defconst.
18920         (js-mode): Use it.
18922 2015-09-27  Eli Zaretskii  <eliz@gnu.org>
18924         * nt/subdirs.el: File deleted (no longer used).
18926 2015-09-26  Alan Mackenzie  <acm@muc.de>
18928         Fix follow-scroll-up/down, making them replacements for scroll-up/down
18930         1. Allow point to move between follow windows in scroll operations.
18931         2. Fix bug where `right-char' just before EOB caused spurious scrolling,
18932         when EOB was isolated in the last follow window.
18934         * lisp/follow.el (follow-fixed-window): New variable.
18935         (follow-get-scrolled-point): New function.
18936         (follow-scrol-up, follow-scroll-down): Add autoload cookies.
18937         Reformulate the code.  Put `scroll-command' properties on the functions.
18938         Correct minor errors in ...-down's doc string and code.
18939         (follow-calc-win-end): Amend incomplete doc string.  Use
18940         `pos-visible-in-window-p' to check whether EOB is in the window.
18941         (follow-estimate-first-window-start): Correct an off-by-1 error.
18942         (follow-adjust-window): Add handling for explicit scrolling operations.
18944 2015-09-26  Paul Eggert  <eggert@cs.ucla.edu>
18946         * admin/MAINTAINERS: Add self, plus list some more files
18947         sans maintaners.
18949 2015-09-26  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
18951         New DWIM commands for changing letter-case
18953         * lisp/simple.el (upcase-dwim, downcase-dwim, capitalize-dwim):
18954         New functions.  (Bug#21501)
18956 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
18958         * etc/PROBLEMS: Document problems with pasting on MS-Windows.
18960 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
18962         Make face realization be more frame-specific
18964         * src/frame.h (struct f): New flag face_change.
18965         * src/xfaces.c (Finternal_make_lisp_face)
18966         (Finternal_copy_lisp_face, Finternal_set_lisp_face_attribute)
18967         (update_face_from_frame_parameter): Set the face_change flag only
18968         for the frame whose faces are affected.
18969         * src/xdisp.c (init_iterator): If a frame's face_change flag is
18970         set, free faces only on that frame.
18971         (redisplay_internal): Disable "display optimization 1" if the
18972         frame's face_change flag is set.
18973         (redisplay_window): Don't allow skipping a window's redisplay if
18974         its frame's face_change flag is set.
18975         * src/frame.c (x_set_screen_gamma): Instead of calling
18976         Fclear_face_cache, call clear_face_cache and set
18977         windows_or_buffers_changed to a non-zero value.  This avoids
18978         setting the global face_change flag that triggers face realization
18979         on all frames and thorough redisplay of all of them.
18981         * lisp/term/tty-colors.el (tty-register-default-colors): Don't
18982         clear face cache if the selected frame is a GUI frame.
18984 2015-09-26  Tassilo Horn  <tsdh@gnu.org>
18986         Remove font-latex specific check
18988         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
18989         Use syntax-ppss data to identify verbatim contents.
18991 2015-09-25  Tassilo Horn  <tsdh@gnu.org>
18993         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
18994         Fix some false negatives.
18996 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
18998         Reorder Windows version in Emacs manifests
19000         * nt/emacs-x64.manifest:
19001         * nt/emacs-x86.manifest: Reorder Windows version from lowest to
19002         highest.
19004 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
19006         Update Emacs manifest files for Windows 10
19008         * nt/emacs-x86.manifest:
19009         * nt/emacs-x64.manifest: Declare compatibility with Windows 10.
19011 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
19013         Avoid non-ASCII decoding errors in C src files
19015         * src/nsterm.m:
19016         * src/lisp.h:
19017         * src/editfns.c:
19018         * src/doprnt.c: Add 'coding' cookies -- these files include
19019         Unicode characters and should be decoded as UTF-8.
19021 2015-09-25  Alan Mackenzie  <acm@muc.de>
19023         Resurrect edebug-set-initial-mode, repurposing it to set the global mode
19025         * lisp/emacs-lisp/edebug.el (edebug-initial-mode-alist): Uncomment, and
19026         amend to match current modes and functions.
19027         (edebug-set-initial-mode): Uncomment and change from setting a defun's
19028         `edebug-initial-mode''s property to setting the variable
19029         `edebug-initial-mode'.
19030         (top level): Create new binding C-x C-a C-m for
19031         `edebug-set-initial-mode'.
19033         * doc/lispref/edebug.texi (Edebug Execution Modes): Document
19034         `edebug-set-initial-mode' and its new key binding.
19035         (Edebug Options): Mention the new command in the pertinent place.
19037         * etc/NEWS: Write entry for this change.
19039 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
19041         Avoid non-ASCII decoding errors in Texinfo files
19043         * doc/misc/tramp.texi:
19044         * doc/lispref/strings.texi:
19045         * doc/lispref/positions.texi:
19046         * doc/lispref/help.texi:
19047         * doc/lispref/functions.texi:
19048         * doc/lispintro/emacs-lisp-intro.texi:
19049         * doc/emacs/text.texi:
19050         * doc/emacs/modes.texi:
19051         * doc/emacs/mini.texi:
19052         * doc/emacs/display.texi:
19053         * doc/emacs/custom.texi:
19054         * doc/emacs/basic.texi: Add 'coding' cookies -- these files use
19055         Unicode characters and should be decoded as UTF-8.
19056         * doc/lispref/frames.texi (Size Parameters): Don't use a non-ASCII
19057         apostrophe unnecessarily.
19059 2015-09-25  Paul Eggert  <eggert@cs.ucla.edu>
19061         Merge from gnulib
19063         This incorporates:
19064         2015-09-25 c-ctype: rewrite to use inline functions
19065         2015-09-24 maint: add coding cookies to non-ASCII sources
19066         2015-09-24 gitlog-to-changelog: trim only trailing whitespaces
19067         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
19068         * lib/acl-internal.c, lib/acl-internal.h, lib/c-ctype.c:
19069         * lib/c-ctype.h, lib/get-permissions.c, lib/qcopy-acl.c:
19070         * lib/set-permissions.c:
19071         Copy from gnulib.
19073 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
19075         Update publicsuffix.txt from upstream
19077         * etc/publicsuffix.txt: Update from
19078         https://publicsuffix.org/list/effective_tld_names.dat
19079         dated 2015-09-24 17:29:21 UTC.
19081 2015-09-24  Eli Zaretskii  <eliz@gnu.org>
19083         Prevent timers from messing up TTY menus
19085         * src/term.c (tty_menu_activate): Inhibit redisplay for as long as
19086         the TTY menu is open.  (Bug#21530)
19088 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
19090         No need to mention K&R C in c-mode intro
19092 2015-09-24  Stefan Monnier  <monnier@iro.umontreal.ca>
19094         Fix recent bootstrap problems
19096         * src/syntax.c (parse_sexp_propertize): Fix last fix.
19097         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): Fix paren typo.
19098         * lisp/emacs-lisp/lisp-mode.el: Require cl-lib for cl-progv.
19100 2015-09-24  Michael Albinus  <michael.albinus@gmx.de>
19102         * src/gfilenotify.c (Fgfile_add_watch): Decrease polling rate.
19104 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
19106         Properly quote nested xml comments (Bug#6267) (Bug#20001)
19108         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): New function.
19109         (nxml-mode): Set comment-quote-nested-function.
19111 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
19113         Allow major-modes full control over quoting nested comments
19115         * lisp/newcomment.el (comment-quote-nested-function): New variable.
19116         (comment-quote-nested-default): New function.
19117         (comment-quote-nested): Use `comment-quote-nested-function'.
19119 2015-09-23  Paul Eggert  <eggert@cs.ucla.edu>
19121         Prefer CALLN in a few more places
19123         * src/macfont.m (macfont_set_family_cache):
19124         * src/nsterm.m (append2):
19125         * src/xterm.c (x_cr_export_frames):
19126         Prefer CALLN to allocating the arg arrays by hand.
19128 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
19130         Adapt file-notify-test02-events test case
19132         * test/automated/file-notify-tests.el (file-notify-test02-events):
19133         Create a new watch for every test.
19135 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
19137         Continue gfilenotify.c implementation of missing parts
19139         * lisp/filenotify.el (file-notify-add-watch): Append `flags' to
19140         `gfile-add-watch' call.
19141         (file-notify-rm-watch): Modify `file-notify-descriptors' only
19142         after calling the low level functions.
19144         * src/gfilenotify.c (dir_monitor_callback): Check, whether
19145         event_type is expected.
19146         (Fgfile_add_watch): Allow also `change'and `attribute-change' for FLAGS.
19147         (Fgfile_rm_watch): Fix typo.
19148         (syms_of_gfilenotify): Declare Qchange and Qattribute_change.
19150 2015-09-23  Stefan Monnier  <monnier@iro.umontreal.ca>
19152         * src/syntax.c (parse_sexp_propertize): Handle spurious
19153         e_property_truncated flag.
19154         (update_syntax_table_forward): Remove invalid assertion.
19156 2015-09-23  Eli Zaretskii  <eliz@gnu.org>
19158         * src/xdisp.c (produce_stretch_glyph): Support ':relative-width'
19159         space display spec on text-mode terminals, by calling
19160         PRODUCE_GLYPHS instead of x_produce_glyphs.  Remove the
19161         HAVE_WINDOW_SYSTEM guards from the supporting code, as well as the
19162         test for a GUI frame.
19164 2015-09-23  Oleh Krehel  <ohwoeowho@gmail.com>
19166         Move let-when-compile to lisp-mode.el
19168         This fixes the bootstrapping problem of `let-when-compile' using
19169         `cl-progv' while being in subr.el (i.e. before cl stuff was loaded).
19171 2015-09-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
19173         * lisp/url/url-http.el (url-http-parse-headers): Do not
19174         automatically include Authorization header in redirect.
19175         (Bug#21350)
19177 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
19179         Clarify documentation of ':relative-width'
19181         * doc/lispref/display.texi (Specified Space): Document that
19182         ':relative-width' is only supported on GUI frames.
19184 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
19186         Fix 'current-column' in presence of :relative-width
19188         * src/indent.c (check_display_width): Support ':relative-width'
19189         in a display spec that specifies a stretch glyph.  (Bug#21533)
19191 2015-09-22  Ken Manheimer  <ken.manheimer@gmail.com>
19193         Reformat the pdbtrack remote-file fix ChangeLog.2 entry
19195         ... to conform better to CONTRIBUTE guidelines.
19197 2015-09-22  Stefan Monnier  <monnier@iro.umontreal.ca>
19199         * lisp/progmodes/prolog.el: Fix indentation of empty line
19201         * lisp/emacs-lisp/smie.el (smie-rules-function): Document new
19202         `empty-line-token' element.
19203         (smie-indent-empty-line): New function.
19204         (smie-indent-functions): Add it.
19206         * lisp/progmodes/prolog.el (prolog-smie-rules): Fix :list-intro
19207         behavior and use the new `empty-line-token' element (bug#21526).
19208         (prolog-mode-variables): Fix comment-start-skip setting to match
19209         comment-start.
19211         * test/indent/prolog.prolog: Add nested indentation tests.
19213         * lisp/newcomment.el (comment-normalize-vars): Fix default value of
19214         comment-start-skip not to misuse submatch 1.
19216 2015-09-22  Alan Mackenzie  <acm@muc.de>
19218         Make description of `edebug-initial-mode' user friendly
19220         Fixes bug#21365.
19222         * doc/lispref/edebug.texi (Edebug Execution Modes): Change the
19223         description of `edebug-initial-mode' from that of its implementation
19224         to that of its visual effect and use.  Move the paragraph higher up.
19226 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
19228         lisp/progmodes/gud.el (gud-format-command): Fix last commit
19230         * lisp/progmodes/gud.el (gud-format-command): Don't use Tramp internal
19231         functions 'tramp-file-name-localname' and 'tramp-dissect-file-name'.
19233 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
19235         Improve last commit to process.c
19237 2015-09-22  Michael Albinus  <michael.albinus@gmx.de>
19239         Implement gfile-valid-p
19241         * lisp/filenotify.el (file-notify-callback): Fix typo.
19242         (gfile-valid-p): Remove defalias.
19244         * src/gfilenotify.c (dir_monitor_callback): Cancel the monitor if
19245         the file or directory to be watched is deleted.
19246         (Fgfile_add_watch): Make watch_object a triple.
19247         (Fgfile_rm_watch): Check, whether watch is cancelled already.
19248         (Fgfile_valid_p): New defun.
19249         (syms_of_gfilenotify): Declare Sgfile_valid_p.
19251 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
19253         Remove callback-handled channels from Available set
19255         * src/process.c (wait_reading_process_output): Remove channel from
19256         Available set if it is handled by a callback, e.g., dbus or
19257         inotify (bug#21313).
19259 2015-09-21  Mark Oteiza  <mvoteiza@udel.edu>
19261         Use lunate epsilon for TeX \epsilon
19263         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
19264         Add \varepsilon using GREEK SMALL LETTER EPSILON, and change
19265         \epsilon to use GREEK LUNATE EPSILON SYMBOL
19267 2015-09-21  Stefan Monnier  <monnier@iro.umontreal.ca>
19269         * lisp/progmodes/prolog.el: Fix nested electric if-then-else
19271         * lisp/progmodes/prolog.el (prolog-find-unmatched-paren): Use innermost
19272         rather than outermost paren (bug#21526).
19274 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
19276         Improve git diff hunk headers for .el, .texi
19278         Problem reported by Alan Mackenzie in:
19279         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00826.html
19280         * .gitattributes (*.el, *.texi): New patterns.
19281         * autogen.sh: Configure diff.elisp.xfuncname and
19282         diff.texinfo.xfuncname if using Git.
19284 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
19286         Don't rely on defaults in decoding UTF-8 encoded Lisp files
19288         * lisp/replace.el:
19289         * lisp/textmodes/rst.el:
19290         * lisp/whitespace.el: Add an explicit UTF-8 encoding tag.
19292 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
19294         Clarify or replace a few \u escapes
19296         * doc/lispref/nonascii.texi (Character Properties)
19297         More-detailed commentary for \u escapes.
19298         * lisp/progmodes/python.el (python--prettify-symbols-alist):
19299         * lisp/replace.el (query-replace-from-to-separator):
19300         * lisp/textmodes/rst.el (rst-bullets, rst-re-alist-def)
19301         (rst-mode-syntax-table):
19302         * lisp/whitespace.el (whitespace-display-mappings):
19303         Prefer actual character to \u escape when this makes the code
19304         easier to follow in the usual case where Unicode chars can be
19305         displayed.
19307 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
19309         Pacify GCC -Wmaybe-uninitialized in xdisp.c
19311         * src/xdisp.c (face_before_or_after_it_pos): Use do-while rather
19312         than while loop to avoid GCC -Wmaybe-uninitialized diagnostic with
19313         charpos.  The loop should always execute at least once anyway.
19315 2015-09-21  Tassilo Horn  <tsdh@gnu.org>
19317         Signal error on invalid regexp
19319         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
19320         Signal an error when the user tries searching with a regexp
19321         matching the empty string.
19323 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
19325         Another fix of file-notify-tests for w32notify
19327         * test/automated/file-notify-tests.el (file-notify-test02-events):
19328         Further adaptation for w32notify: reduce the number of expected
19329         'changed' events.  (Bug#21435)
19331 2015-09-21  Michael Albinus  <michael.albinus@gmx.de>
19333         Adapt tests and manual for w32notify
19335         * doc/lispref/os.texi (File Notifications): w32notify does not
19336         send `attribute-changed' events.
19338         * test/automated/file-notify-tests.el (file-notify--test-with-events):
19339         Simplify parameters.  Adapt all callees.
19340         (file-notify-test02-events): w32notify does not send
19341         `attribute-changed' events.
19342         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
19343         Do not skip in case of w32notify.  Simply ignore this part of the test.
19345 2015-09-21  Dima Kogan  <dima@secretsauce.net>
19347         Fix setting breakpoints when remote-debugging
19349         * lisp/progmodes/gud.el (gud-format-command): Send localized file
19350         names to the debugger running on the remote.  (Bug#13304)
19352 2015-09-21  Nicolas Petton  <nicolas@petton.fr>
19354         Better docstring and parameter name for seq-find
19356         * lisp/emacs-lisp/seq.el (seq-find): Improve the docstring and rename
19357         the parameter `sentinel' to `default'.
19359         * doc/lispref/sequences.texi (Sequence Functions): Update the
19360           documentation for `seq-find' accordingly.
19362 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
19364         Avoid infinite recursion while displaying box face
19366         * src/xdisp.c (face_before_or_after_it_pos): Fix calculation of
19367         the previous string/buffer character position under bidi
19368         iteration.  (Bug#21428)
19370 2015-09-21  Anders Lindgren  <andlind@gmail.com>
19372         Keep upper edge unchanged when changing size of NS frame
19374         * src/nsterm.m (x_set_window_size): Keep upper frame edge unchanged
19375         (Bug#21415).
19377 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
19379         * lisp/progmodes/prolog.el: Improve handling of if/then/else.
19380         (prolog-smie-rules): Accommodate standard if/then/else special
19381         indentation.
19382         (prolog-mode): Add . to electric-indent-chars.
19383         (prolog-electric--if-then-else): Re-indent the line before adding space
19384         after the new char (bug#21526).
19386 2015-09-20  Mark Oteiza  <mvoteiza@udel.edu>
19388         Add prettify symbols to python-mode
19390         * lisp/progmodes/python.el (python-prettify-symbols-alist):
19391         New variable.
19392         (python-mode): Use it
19394 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
19396         * lisp/emacs-lisp/syntax.el (syntax-begin-function): Make obsolete.
19398 2015-09-20  Jostein Kjønigsen  <jostein@secure.kjonigsen.net>  (tiny change)
19400         (compilation-error-regexp-alist-alist): Tone down guile-file
19402         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
19403         Make guile-file a bit less enthusiastic (bug#21496).
19405 2015-09-20  Drew Csillag  <drew@thecsillags.com>
19407         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords):
19408         Fix m4_* highlighting.
19410         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords): Fix recognition
19411         of commands when they have a "m4_" prefix.
19413 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
19415         '.' -> `.' in doc string
19417         * lisp/emacs-lisp/timer.el (run-at-time): In doc string, quote
19418         individual chars with grave quotes instead of straight quotes, as
19419         this works better when they are translated to curved quotes.
19421 2015-09-20  Michael Albinus  <michael.albinus@gmx.de>
19423         Improve file notifications, especially for Tramp
19425         * doc/lispref/files.texi (Magic File Names):
19426         Mention `file-notify-valid-p'.
19428         * doc/lispref/os.texi (File Notifications):
19429         Describe `file-notify-valid-p'.
19431         * etc/NEWS: Add `file-notify-valid-p'.
19433         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
19434         Improve implementation.
19435         (tramp-gvfs-monitor-file-process-filter): Rename from
19436         `tramp-gvfs-file-gvfs-monitor-file-process-filter'.  Delete
19437         process if appropriate.
19439         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
19440         Improve implementation.
19441         (tramp-sh-gvfs-monitor-dir-process-filter): Rename from
19442         `tramp-sh-file-gvfs-monitor-dir-process-filter'.  Delete process
19443         if appropriate.
19444         (tramp-sh-inotifywait-process-filter): Rename from
19445         `tramp-sh-file-inotifywait-process-filter'.  Delete process if
19446         appropriate.
19448         * lisp/net/tramp.el (tramp-handle-file-notify-rm-watch):
19449         Use `delete-process'.
19450         (tramp-handle-file-notify-valid-p): Check also, that file or
19451         directory to be watched still exists.
19453         * test/automated/file-notify-tests.el (file-notify--test-timeout):
19454         New defun.  Use it at all places a timeout is needed.
19455         (file-notify--test-cleanup): Delete directories recursively.
19456         Cleanup also Tramp connections.
19457         (file-notify-test02-events): Add tests for `attribute-change'.
19458         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
19459         Add tests for `file-notify-rm-watch'.
19461 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
19463         Use %s to format strings instead of splicing them
19465         If FOO might contain quotes that are part of a file or variable
19466         name, the quotes should not be translated when showing FOO’s name
19467         in a diagnostic.  So, for example, (message (concat (FOO ": bar")))
19468         is not quite right, as it would translate FOO’s quotes.
19469         Change it to (message "%s: bar" FOO) instead.
19470         * lisp/allout.el (allout-process-exposed):
19471         * lisp/calc/calc-ext.el (calc-do-prefix-help):
19472         * lisp/calc/calc-store.el (calc-store-into):
19473         * lisp/calendar/todo-mode.el (todo-category-completions):
19474         * lisp/cedet/semantic/complete.el (semantic-completion-message):
19475         * lisp/org/ob-latex.el (convert-pdf):
19476         * lisp/org/org-crypt.el (org-crypt-check-auto-save):
19477         * lisp/org/ox-latex.el (org-latex-compile):
19478         * lisp/org/ox-man.el (org-man-compile):
19479         * lisp/org/ox-odt.el (org-odt--export-wrap):
19480         * lisp/org/ox-texinfo.el (org-texinfo-compile):
19481         * lisp/progmodes/ruby-mode.el (ruby-in-ppss-context-p):
19482         * lisp/progmodes/verilog-mode.el (verilog-batch-execute-func)
19483         (verilog-signals-combine-bus, verilog-read-defines)
19484         (verilog-getopt-file, verilog-expand-dirnames)
19485         (verilog-modi-lookup, verilog-modi-modport-lookup-one):
19486         * lisp/term/ns-win.el (ns-spi-service-call):
19487         Use %s to avoid translating quotes of file names etc. in diagnostics.
19489 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
19491         * lisp/progmodes/js.el (js--syntax-begin-function): Remove.
19492         (js-mode): Don't set syntax-begin-function.
19494 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
19496         * lisp/font-lock.el (font-lock-compile-keywords): Don't assume
19497         syntax-begin-function is a symbol.
19499 2015-09-20  Eli Zaretskii  <eliz@gnu.org>
19501         Improve documentation of 'run-at-time'
19502         * lisp/emacs-lisp/timer.el (run-at-time): Improve the doc string.
19503         In particular, don't refer to 'diary-entry-time', because it is
19504         unavailable until diary-lib is loaded.  Also, refer to
19505         'timer-duration-words', not 'timer-duration', as the latter's doc
19506         string says nothing about the accepted strings.
19508 2015-09-19  Jay Belanger  <jay.p.belanger@gmail.com>
19510         * lisp/calc/calc-ext.el (calc-do-prefix-help): Tidy up error message.
19512 2015-09-19  Ken Manheimer  <ken.manheimer@gmail.com>
19514         Repair pdbtrack remote file tracking
19515         * lisp/progmodes/python.el (python-pdbtrack-set-tracked-buffer):
19516         Rectify pdbtrack so it follows transitions from one remote source
19517         file to the next.
19519 2015-09-19  Artur Malabarba  <bruce.connor.am@gmail.com>
19521         * lisp/emacs-lisp/timer.el (run-at-time): Docstring formatting.
19523 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
19525         Adapt vc-src to the old-new vc-checkin API
19526         * lisp/vc/vc-src.el (vc-src-checkin): Accept and ignore an
19527         additional optional parameter.
19529 2015-09-19  Simen Heggestøyl  <simenheg@gmail.com>
19531         Add overflow module to CSS property list
19532         * lisp/textmodes/css-mode.el (css-property-ids): Add properties
19533         from CSS Overflow Module Level 3.
19535 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
19537         Fix documentation of "C-u C-x v v"
19538         * doc/emacs/maintaining.texi (Advanced C-x v v): Make the
19539         documentation of "C-u C-x v v" match what the code does.
19541         Resurrect the ability to specify a revision in vc-next-action
19542         * lisp/vc/vc-bzr.el (vc-bzr-checkin):
19543         * lisp/vc/vc-dav.el (vc-dav-checkin):
19544         * lisp/vc/vc-git.el (vc-git-checkin):
19545         * lisp/vc/vc-hg.el (vc-hg-checkin):
19546         * lisp/vc/vc-mtn.el (vc-mtn-checkin): Accept and silently ignore
19547         an additional optional argument, the revision to checkin.
19548         * lisp/vc/vc-sccs.el (vc-sccs-checkin):
19549         * lisp/vc/vc-cvs.el (vc-cvs-checkin):
19550         * lisp/vc/vc-rcs.el (vc-rcs-checkin): Allow to optionally specify
19551         a revision to checkin.
19552         * lisp/vc/vc.el (vc-next-action): Allow to optionally specify the
19553         revision when checking in files.
19554         See http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00688.html
19555         for the details.
19557 2015-09-18  Wilson Snyder  <wsnyder@wsnyder.org>
19559         * lisp/progmodes/verilog-mode.el (verilog-forward-sexp-function)
19560         (verilog-decls-princ, verilog-modport-princ)
19561         (verilog-modi-modport-lookup-one): Fix checkdoc warnings.
19563 2015-09-17  Jay Belanger  <jay.p.belanger@gmail.com>
19565         Fix the routine for help on Calc's prefixes
19566         * lisp/calc/calc-ext.el (calc-prefix-help-retry): New variable.
19567         (calc-do-prefix-help): Use `read-char' to determine the next Calc
19568         command.
19570 2015-09-17  Stefan Monnier  <monnier@iro.umontreal.ca>
19572         * lisp/font-lock.el (font-lock-beginning-of-syntax-function): Remove.
19573         (font-lock-fontify-block): Don't let-bind it.
19574         (font-lock-compile-keywords): Don't use it.
19575         (font-lock-set-defaults): Don't set it.  Allow the variable alist to
19576         start one slot earlier, instead.
19577         * lisp/emacs-lisp/syntax.el (font-lock-beginning-of-syntax-function):
19578         Don't declare.
19579         (syntax-ppss): Don't use it either.
19580         * lisp/font-core.el (font-lock-defaults): Remove SYNTAX-BEGIN
19581         from docstring.
19582         * doc/emacs/display.texi (Font Lock): Don't mention
19583         font-lock-beginning-of-syntax-function.
19584         * doc/lispref/modes.texi (Font Lock Basics): Update description of
19585         font-lock-defaults.
19586         (Syntactic Font Lock): Remove font-lock-beginning-of-syntax-function.
19587         * lisp/loadhist.el (unload-feature-special-hooks):
19588         Remove font-lock-beginning-of-syntax-function.
19589         * lisp/obsolete/lazy-lock.el (lazy-lock-fontify-region):
19590         * lisp/emacs-lisp/lisp.el (beginning-of-defun-raw): Don't let-bind
19591         font-lock-beginning-of-syntax-function.
19593 2015-09-17  Paul Eggert  <eggert@cs.ucla.edu>
19595         Backslash cleanup in Elisp source files
19596         This patch should not change behavior.  It typically omits backslashes
19597         where they are redundant (e.g., in the string literal "^\$").
19598         In a few places, insert backslashes where they make regular
19599         expressions clearer: e.g., replace "^\*" (equivalent to "^*") with
19600         "^\\*", which has the same effect as a regular expression.
19601         Also, use ‘\ %’ instead of ‘\%’ when avoiding confusion with SCCS IDs,
19602         and similarly use ‘\ $’ instead of ‘\$’ when avoiding confusion with
19603         RCS IDs, as that makes it clearer that the backslash is intended.
19605         Some more minor backslash fixes
19606         * test/automated/compile-tests.el (compile-tests--test-regexps-data):
19607         * test/automated/info-xref.el (info-xref-test-write-file):
19608         Double backslashes in strings.
19610         Fix several backslash typos in Elisp strings
19611         * lisp/calendar/todo-mode.el (todo-files, todo-rename-file)
19612         (todo-find-filtered-items-file, todo-reset-nondiary-marker)
19613         (todo-reset-done-string, todo-reset-comment-string)
19614         (todo-reset-highlight-item):
19615         * lisp/erc/erc-networks.el (erc-networks-alist):
19616         * lisp/gnus/gnus-art.el (gnus-button-handle-library):
19617         * lisp/gnus/gnus-group.el (gnus-read-ephemeral-gmane-group-url):
19618         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
19619         (nntp-telnet-shell-prompt):
19620         * lisp/gnus/spam-report.el (spam-report-gmane-regex):
19621         * lisp/image-dired.el (image-dired-rotate-original):
19622         (image-dired-get-exif-file-name):
19623         * lisp/international/latin1-disp.el (latin1-display-ucs-per-lynx):
19624         * lisp/mail/undigest.el (rmail-digest-parse-rfc1153strict):
19625         * lisp/mh-e/mh-letter.el (mh-file-is-vcard-p):
19626         * lisp/mh-e/mh-mime.el (mh-file-mime-type-substitutions):
19627         * lisp/net/shr-color.el (shr-color->hexadecimal):
19628         * lisp/org/org-bibtex.el (org-bibtex-fields):
19629         * lisp/org/org-docview.el (org-docview-export):
19630         * lisp/org/org-entities.el (org-entities):
19631         * lisp/org/ox-icalendar.el (org-icalendar-cleanup-string):
19632         * lisp/progmodes/cperl-mode.el (cperl-indent-exp):
19633         * lisp/progmodes/ebnf2ps.el (ebnf-file-suffix-regexp)
19634         (ebnf-style-database):
19635         * lisp/progmodes/idlw-help.el (idlwave-do-context-help1):
19636         * lisp/progmodes/ruby-mode.el (ruby-imenu-create-index-in-block):
19637         * lisp/progmodes/sql.el (sql-product-alist):
19638         * lisp/progmodes/verilog-mode.el (verilog-error-regexp-emacs-alist)
19639         (verilog-error-font-lock-keywords)
19640         (verilog-assignment-operator-re):
19641         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist):
19642         * lisp/textmodes/reftex-parse.el (reftex-parse-from-file):
19643         * lisp/vc/add-log.el (change-log-version-number-regexp-list):
19644         Fix typo by replacing ‘\’ with ‘\\’ in a string literal.
19645         For example, to get the regular expression ‘\.’ use the string
19646         literal "\\.", not "\." (which is equivalent to ".").
19647         * lisp/emulation/viper-util.el (viper-glob-unix-files):
19648         Remove stray ‘\j’ from string.
19649         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
19650         (nntp-telnet-shell-prompt):
19651         Treat > like $ when matching a shell prompt.
19652         * lisp/progmodes/make-mode.el (makefile-browse):
19653         Properly quote a diagnostic.
19655         Fix minor quoting problems in diagnostics
19656         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
19657         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
19658         Follow text-quoting-style in diagnostic, and quote a file name.
19660 2015-09-17  Eli Zaretskii  <eliz@gnu.org>
19662         * doc/lispref/frames.texi (Cursor Parameters):
19663         Document 'x-stretch-cursor'.
19665 2015-09-16  Paul Eggert  <eggert@cs.ucla.edu>
19667         Omit unnecessary \ before paren in C docstrings
19668         Although \( is needed in docstrings in Elisp code, it is not needed in
19669         docstrings in C code, since C function definitiions do not start with
19670         a parenthesis.  The backslashes made the docstrings a bit harder to
19671         read and to format in columns.  Also, some C docstrings had ( in
19672         column 1 and this did not appear to be causing any problems.  So,
19673         simplify C docstrings by replacing \( with ( and \) with ).
19675         A few more minor quoting fixes in a script and a text file
19677         Minor quoting fixes in scripts and doc
19678         Prefer straight quotes in random script files, as they are not
19679         converted.  Prefer grave quotes in a couple of places in the manual
19680         that were missed earlier, as these quotes are converted.
19682         Minor backslash fixes in manuals and scripts
19683         * Makefile.in (install-arch-indep):
19684         * admin/charsets/compact.awk:
19685         * admin/charsets/gb180302.awk (gb_to_index):
19686         * admin/charsets/gb180304.awk (gb_to_index):
19687         Avoid undefined behavior in Awk regular expression backslashes.
19688         * doc/misc/efaq.texi (Matching parentheses):
19689         Omit unnecessary backslashes.
19690         * doc/misc/gnus-faq.texi (FAQ 5-8):
19691         Avoid undefined behavior in suggested sed backslash usage.
19693         Add -Wswitch to --enable-gcc-warnings
19694         Make --enable-gcc-warnings a bit pickier, by also using -Wswitch.
19695         * configure.ac (WERROR_CFLAGS): Don’t add -Wno-switch.
19696         * lib-src/etags.c (main, consider_token, C_entries):
19697         * src/coding.c (encode_invocation_designation):
19698         * src/data.c (Ftype_of):
19699         * src/eval.c (Fdefvaralias, default_toplevel_binding)
19700         (Fbacktrace__locals, mark_specpdl):
19701         * src/lisp.h (record_xmalloc):
19702         * src/syntax.c (scan_lists, scan_sexps_forward):
19703         * src/window.c (window_relative_x_coord):
19704         * src/xdisp.c (push_it, pop_it):
19705         * src/xterm.c (xg_scroll_callback, x_check_fullscreen):
19706         Error out or do nothing (as appropriate) if a switch statement
19707         with an enum value does not cover all of the enum.
19708         * src/dispextern.h (struct iterator_stack_entry.u.comp):
19709         Remove unused member discovered by using -Wswitch.
19710         * src/lisp.h (record_xmalloc): Add a ‘+ 0’ to pacify -Wswitch.
19711         * src/vm-limit.c (check_memory_limits):
19712         Simplify warning-diagnostic computation by using a table.
19714         etags ‘fatal’ function is now printf-like
19715         * lib-src/etags.c (fatal): Now printf-like.  All callers changed.
19716         Also, now static; not clear why it needed to be extern.
19717         (verror): New function, with most of the old contents of ‘error’.
19718         (fatal, error): Use it.
19720 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
19722         More adaptations in file-notify-tests.el
19723         * test/automated/file-notify-tests.el
19724         (file-notify-test05-dir-validity): Skip for w32notify in
19725         batch-mode.  (Bug#21432)
19727 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
19729         Adapt test in file-notify-tests.el
19730         * test/automated/file-notify-tests.el
19731         (file-notify-test04-file-validity): Skip for w32notify in
19732         batch-mode.  Add test lost last commit.
19734 2015-09-16  Dima Kogan  <dima@secretsauce.net>
19736         winner no longer holds on to dead frames
19737         * lisp/winner.el (winner-change-fun): Cull dead frames.
19738         This prevents a potentially massive memory leak.  See:
19739         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00619.html
19741 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
19743         Use common report_file_notify_error function
19744         * src/fileio.c (report_file_notify_error): New function.
19745         * src/inotify.c (report_inotify_error): Remove function.
19746         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
19747         (Finotify_rm_watch): Use report_file_notify_error.
19748         * src/lisp.h (report_file_notify_error): Declare external function.
19749         * src/w32notify.c (report_w32notify_error): Remove function.
19750         (Fw32notify_add_watch, Fw32notify_rm_watch):
19751         Use report_file_notify_error.
19753 2015-09-16  Jay Belanger  <jay.p.belanger@gmail.com>
19755         Fix documentation.
19756         * doc/misc/calc.texi (Single-Variable Statistics): Fix the wording of
19757         the documentation of the root mean square.
19759 2015-09-16  Martin Rudalics  <rudalics@gmx.at>
19761         Remove tool_bar_redisplayed_once and associated code.
19762         * src/frame.h (tool_bar_redisplayed_once): Remove slot.
19763         * src/frame.c (make_frame, x_set_font): Remove initialization of
19764         f->tool_bar_redisplayed_once.
19765         * src/w32fns.c (x_change_tool_bar_height):
19766         * src/xfns.c (x_change_tool_bar_height): Don't check for
19767         f->tool_bar_redisplayed_once.
19768         * src/xdisp.c (redisplay_internal): Remove handling of
19769         f->tool_bar_redisplayed_once.
19771 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
19773         Restore some of the quoting in the manuals
19774         * doc/lispref/windows.texi (Coordinates and Windows)
19775         (Coordinates and Windows):
19776         * doc/lispref/variables.texi (Lexical Binding)
19777         (File Local Variables):
19778         * doc/lispref/text.texi (Format Properties):
19779         * doc/lispref/symbols.texi (Symbol Components):
19780         * doc/lispref/strings.texi (Creating Strings):
19781         * doc/lispref/sequences.texi (Sequence Functions):
19782         * doc/lispref/searching.texi (Regexp Special, Regexp Search)
19783         (Search and Replace):
19784         * doc/lispref/processes.texi (Bindat Spec):
19785         * doc/lispref/os.texi (Idle Timers):
19786         * doc/lispref/objects.texi (Basic Char Syntax):
19787         * doc/lispref/numbers.texi (Float Basics, Random Numbers):
19788         * doc/lispref/nonascii.texi (Character Properties):
19789         * doc/lispref/modes.texi (Major Mode Conventions, Mode Hooks)
19790         (Mode Line Variables):
19791         * doc/lispref/minibuf.texi (Text from Minibuffer):
19792         * doc/lispref/loading.texi (Autoload):
19793         * doc/lispref/keymaps.texi (Controlling Active Maps):
19794         * doc/lispref/frames.texi (Frame Layout, Size and Position)
19795         (Size Parameters, Implied Frame Resizing):
19796         * doc/lispref/files.texi (Changing Files, Magic File Names):
19797         * doc/lispref/eval.texi (Self-Evaluating Forms):
19798         * doc/lispref/display.texi (Progress, Abstract Display)
19799         (Abstract Display Example, Bidirectional Display):
19800         * doc/lispref/commands.texi (Event Mod):
19801         * doc/emacs/windows.texi (Displaying Buffers):
19802         * doc/emacs/trouble.texi (Bug Criteria, Checklist):
19803         * doc/emacs/text.texi (Enriched Text):
19804         * doc/emacs/programs.texi (MixedCase Words):
19805         * doc/emacs/picture-xtra.texi (Insert in Picture)
19806         (Tabs in Picture):
19807         * doc/emacs/misc.texi (Emacs Server, Printing):
19808         * doc/emacs/mini.texi (Minibuffer History):
19809         * doc/emacs/maintaining.texi (Old Revisions, VC Change Log)
19810         (Pulling / Pushing):
19811         * doc/emacs/killing.texi (Yanking, Cut and Paste, Clipboard):
19812         * doc/emacs/help.texi (Help, Help Echo):
19813         * doc/emacs/glossary.texi (Glossary):
19814         * doc/emacs/frames.texi (Mouse Commands, Creating Frames)
19815         (Frame Commands):
19816         * doc/emacs/files.texi (Reverting, Saving, Directories):
19817         * doc/emacs/entering.texi (Exiting):
19818         * doc/emacs/emacs.texi (Top):
19819         * doc/emacs/cmdargs.texi (Window Size X, Icons X):
19820         * doc/emacs/anti.texi (Antinews): Restore quoting of text where
19821         appropriate or replace quoting with @dfn.
19822         * doc/misc/ediff.texi (Window and Frame Configuration):
19823         * doc/lispref/processes.texi (Network Feature Testing):
19824         * doc/lispref/display.texi (Display Margins): Quote the phrase
19825         after "a.k.a." where appropriate.
19827 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
19829         Clarify reftex-extra-bindings docs
19830         * lisp/textmodes/reftex-vars.el (reftex-extra-bindings):
19831         * doc/misc/reftex.texi (Key Bindings): Document that the variable
19832         only has an effect at load-time.
19834 2015-09-16  Daniel McClanahan  <danieldmcclanahan@gmail.com>  (tiny change)
19836         * lisp/emacs-lisp/lisp-mode.el (lisp--el-match-keyword): Fix
19837         search argument.  (Bug#21492) (Bug#21493)
19839 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
19841         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
19842         Add pretty symbols for \qquad and \varrho.
19844 2015-09-15  Jay Belanger  <jay.p.belanger@gmail.com>
19846         Add new functions for the root mean square of a (Calc) vector
19847         * lisp/calc/calc-stat.el (calcFunc-rms, calc-vector-rms):
19848         New functions.
19849         * lisp/calc/calc-ext.el (calc-init-extensions): Add keybinding for
19850         `calc-vector-rms', add autoloads for `calc-vector-rms' and
19851         `calcFunc-rms'.
19852         * lisp/calc/calc-map.el (calc-u-oper-keys): Add entry for
19853         `calcFunc-rms'.
19854         * lisp/calc/calc-menu.el (calc-vectors-menu): Add entry for
19855         `calc-vector-rms'.
19856         * doc/misc/calc.texi (Single-Variable Statistics): Document the rms
19857         command.
19859 2015-09-15  Stephen Leake  <stephen_leake@stephe-leake.org>
19861         Add monotone EDE generic project
19862         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
19863         Add monotone generic project.
19865         Revert premature commit
19866         * doc/lispref/files.texi: Revert premature commit of change to
19867         file-name-all-completions.
19869         Fix a bug in elisp--xref-find-definitions related to cl-generic defaults
19870         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Fix bug
19871         with cl-generic defaults.
19872         (elisp--xref-find-references): Add doc string.
19873         * test/automated/elisp-mode-tests.el (xref-elisp-generic-*): Improve
19874         tests to find bug.
19876         Fix bugs in eieio-oref-default related to class symbols
19877         * lisp/emacs-lisp/eieio-core.el (class-p): Handle symbol properly.
19878         (eieio-oref-default): Handle class properly.
19880 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
19882         Quote “fullboth” when defining it
19883         * doc/lispref/frames.texi (Size Parameters): Use @dfn for “fullboth”
19884         and rewrite the containing paragraph, which was awkward.  (Bug#21472).
19886 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
19888         Minor doc fix in emacs/ack.texi
19889         * doc/emacs/ack.texi (Acknowledgments): Fix an xref missing the
19890         first argument.
19892 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
19894         Adapt tests in auto-revert-tests.el
19895         * test/automated/auto-revert-tests.el (auto-revert--timeout):
19896         Make it a defconst.
19897         (auto-revert--wait-for-revert): New defun.
19898         (auto-revert-test00-auto-revert-mode)
19899         (auto-revert-test01-auto-revert-tail-mode)
19900         (auto-revert-test02-auto-revert-mode-dired): Use it.
19902 2015-09-15  Stefan Monnier  <monnier@iro.umontreal.ca>
19904         * lisp/emacs-lisp/lisp-mode.el (lisp-mode-symbol-regexp): New const.
19905         Use it everywhere "\\(\\sw\\|\\s_\\|\\\\.\\)+" was used.
19906         (cl-lib-fdefs): Add defgeneric.
19907         (cl-kw): Add all elements of eieio-kw and cl-lib-kw.
19908         (eieio-kw, cl-lib-kw, el-kw): Remove.
19910 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
19912         Quote less in manuals
19913         The manuals often used quotes ``...'' when it is better to use @dfn or
19914         @code or capitalized words or no quoting at all.  For example, there is
19915         no need for the `` and '' in “if a variable has one effect for
19916         @code{nil} values and another effect for ``non-@code{nil}'' values”.
19917         Reword the Emacs, Lisp intro, and Lisp reference manuals to eliminate
19918         unnecessary quoting like this, and to use @dfn etc. instead when called
19919         for (Bug#21472).
19921 2015-09-15  Mark Oteiza  <mvoteiza@udel.edu>
19923         * lisp/custom.el (load-theme): Only compute hash when needed.
19925 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
19927         Pacify --enable-gcc-warnings
19928         * src/inotify.c (report_inotify_error): Declare it _Noreturn.
19930 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
19932         Improve error reports in inotify.c
19933         * src/inotify.c (report_inotify_error): New function.  Clone of
19934         report_w32notify_error.
19935         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
19936         (Finotify_rm_watch): Use it.
19938 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
19940         Fix the file-notify tests for watch validation on w32
19941         * test/automated/file-notify-tests.el
19942         (file-notify-test04-file-validity): Move the directory deletion
19943         out of the file-notify--test-with-events macro.
19944         (file-notify-test04-file-validity)
19945         (file-notify-test05-dir-validity): Enlarge the timeout of
19946         read-event to 0.5, as 0.1 is borderline on w32.  (Bug#21432)
19948 2015-09-15  Tassilo Horn  <tsdh@gnu.org>
19950         Use OPEN BOX instead of space for \quad.
19951         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Use OPEN BOX
19952         character for \quad instead of a space.
19954 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
19956         Add missing *.pbm images
19957         * etc/images/connect.pbm: New file.
19958         * etc/images/custom/down-pushed.pbm: New file.
19959         * etc/images/custom/down.pbm: New file.
19960         * etc/images/custom/right-pushed.pbm: New file.
19961         * etc/images/custom/right.pbm: New file.
19962         * etc/images/describe.pbm: New file.
19963         * etc/images/disconnect.pbm: New file.
19964         * etc/images/ezimage/bits.pbm: New file.
19965         * etc/images/ezimage/bitsbang.pbm: New file.
19966         * etc/images/ezimage/box-minus.pbm: New file.
19967         * etc/images/ezimage/box-plus.pbm: New file.
19968         * etc/images/ezimage/box.pbm: New file.
19969         * etc/images/ezimage/checkmark.pbm: New file.
19970         * etc/images/ezimage/dir-minus.pbm: New file.
19971         * etc/images/ezimage/dir-plus.pbm: New file.
19972         * etc/images/ezimage/dir.pbm: New file.
19973         * etc/images/ezimage/doc-minus.pbm: New file.
19974         * etc/images/ezimage/doc-plus.pbm: New file.
19975         * etc/images/ezimage/doc.pbm: New file.
19976         * etc/images/ezimage/info.pbm: New file.
19977         * etc/images/ezimage/key.pbm: New file.
19978         * etc/images/ezimage/label.pbm: New file.
19979         * etc/images/ezimage/lock.pbm: New file.
19980         * etc/images/ezimage/mail.pbm: New file.
19981         * etc/images/ezimage/page-minus.pbm: New file.
19982         * etc/images/ezimage/page-plus.pbm: New file.
19983         * etc/images/ezimage/page.pbm: New file.
19984         * etc/images/ezimage/tag-gt.pbm: New file.
19985         * etc/images/ezimage/tag-minus.pbm: New file.
19986         * etc/images/ezimage/tag-plus.pbm: New file.
19987         * etc/images/ezimage/tag-type.pbm: New file.
19988         * etc/images/ezimage/tag-v.pbm: New file.
19989         * etc/images/ezimage/tag.pbm: New file.
19990         * etc/images/ezimage/unlock.pbm: New file.
19991         * etc/images/gnus/important.pbm: New file.
19992         * etc/images/gnus/mail-send.pbm: New file.
19993         * etc/images/gnus/receipt.pbm: New file.
19994         * etc/images/gnus/toggle-subscription.pbm: New file.
19995         * etc/images/gnus/unimportant.pbm: New file.
19996         * etc/images/gud/all.pbm: New file.
19997         * etc/images/gud/rcont.pbm: New file.
19998         * etc/images/gud/recstart.pbm: New file.
19999         * etc/images/gud/recstop.pbm: New file.
20000         * etc/images/gud/rfinish.pbm: New file.
20001         * etc/images/gud/rnext.pbm: New file.
20002         * etc/images/gud/rnexti.pbm: New file.
20003         * etc/images/gud/rstep.pbm: New file.
20004         * etc/images/gud/rstepi.pbm: New file.
20005         * etc/images/gud/thread.pbm: New file.
20006         * etc/images/lock-broken.pbm: New file.
20007         * etc/images/lock-ok.pbm: New file.
20008         * etc/images/lock.pbm: New file.
20009         * etc/images/mail/copy.pbm: New file.
20010         * etc/images/mail/forward.pbm: New file.
20011         * etc/images/mail/not-spam.pbm: New file.
20012         * etc/images/mail/outbox.pbm: New file.
20013         * etc/images/mail/preview.pbm: New file.
20014         * etc/images/mail/save-draft.pbm: New file.
20015         * etc/images/mh-logo.pbm: New file.
20016         * etc/images/mpc/add.pbm: New file.
20017         * etc/images/mpc/ffwd.pbm: New file.
20018         * etc/images/mpc/next.pbm: New file.
20019         * etc/images/mpc/pause.pbm: New file.
20020         * etc/images/mpc/play.pbm: New file.
20021         * etc/images/mpc/prev.pbm: New file.
20022         * etc/images/mpc/rewind.pbm: New file.
20023         * etc/images/mpc/stop.pbm: New file.
20024         * etc/images/redo.pbm: New file.
20025         * etc/images/smilies/braindamaged.pbm: New file.
20026         * etc/images/smilies/cry.pbm: New file.
20027         * etc/images/smilies/dead.pbm: New file.
20028         * etc/images/smilies/evil.pbm: New file.
20029         * etc/images/smilies/forced.pbm: New file.
20030         * etc/images/smilies/grin.pbm: New file.
20031         * etc/images/smilies/indifferent.pbm: New file.
20032         * etc/images/sort-ascending.pbm: New file.
20033         * etc/images/sort-column-ascending.pbm: New file.
20034         * etc/images/sort-criteria.pbm: New file.
20035         * etc/images/sort-descending.pbm: New file.
20036         * etc/images/sort-row-ascending.pbm: New file.
20037         * etc/images/unchecked.pbm: New file.
20038         * etc/images/zoom-in.pbm: New file.
20039         * etc/images/README: Update instructions for PBM files.
20041         Add separator.pbm tool-bar image
20042         * etc/images/separator.pbm: New file.  Having it avoids the side
20043         effect of changing the tool-bar height when the default font's size
20044         changes and XPM image support is not available, due to the SPC
20045         characters that are left in the Lisp string used to display the tool
20046         bar, because there are no images to display instead of those SPC
20047         characters.
20049         Make show-paren-match face visible on mono-color displays
20050         * lisp/faces.el (show-paren-match): Use the underline face for
20051         mono-color displays.  (Bug#21481)
20053 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
20055         Don’t double-encode non-ASCII mail clipboard
20056         * lisp/mail/mailclient.el (mailclient-send-it):
20057         Also fix the case when mailclient-place-body-on-clipboard-flag
20058         is non-nil.  Problem reported by Eli Zaretskii (Bug#21471#37).
20060 2015-09-14  Michael Albinus  <michael.albinus@gmx.de>
20062         Adapt file-notify-tests.el test cases
20063         * lisp/filenotify.el (file-notify-rm-watch): Ignore `file-notify-error'.
20064         * src/inotify.c (Finotify_valid_p): Adapt docstring.
20065         * test/automated/file-notify-tests.el
20066         (file-notify-test03-autorevert)
20067         (file-notify-test04-file-validity)
20068         (file-notify-test04-file-validity-remote)
20069         (file-notify-test05-dir-validity)
20070         (file-notify-test05-dir-validity-remote): Adapt docstring.
20071         (file-notify-test04-file-validity): Let events arrive before
20072         calling final `file-notify-valid-p'.  Do not ignore errors.
20073         (file-notify-test05-dir-validity): Do not manipulate
20074         `temporary-file-directory', it isn't necessary.  Let events arrive
20075         before calling final `file-notify-valid-p'.  Do not ignore errors.
20077 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
20079         Don’t double-encode non-ASCII for mail client
20080         * lisp/mail/mailclient.el (mailclient-encode-string-as-url):
20081         Use RFC 6068’s list of unreserved characters.
20082         (mailclient-send-it): When encoding the body as a URL,
20083         first decode it as per Content-Type: and Content-Transfer-Encoding:,
20084         as URLs must use percent-encoded UTF-8 (Bug#21471).
20085         * doc/misc/url.texi (mailto): Update RFC number.
20087 2015-09-14  Stefan Monnier  <monnier@iro.umontreal.ca>
20089         * lisp/progmodes/cc-langs.el (c-make-init-lang-vars-fun): Use dolist.
20091 2015-09-14  Alan Mackenzie  <acm@muc.de>
20093         Replace `cadar' with `cadr/car', since `cadar' is problematic on Emacs
20094         (c-make-init-lang-vars-fun): Replace two occurrences of `cadar' with
20095         `cadr/car'.
20097 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
20099         Clarify documentation of char-table extra slots
20100         * doc/lispref/sequences.texi (Char-Tables): Clarify that extra
20101         slot numbers are zero-based.  (Bug#21467)
20103 2015-09-14  Alan Mackenzie  <acm@muc.de>
20105         Elisp mode: Make font-lock and imenu handle escaped characters in symbols
20106         Fixes bug#21449.
20107         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression)
20108         (lisp--el-match-keyword, lisp-el-font-lock-keywords-1)
20109         (lisp-cl-font-lock-keywords-1, lisp-el-font-lock-keywords-2)
20110         (lisp-cl-font-lock-keywords-2, lisp-string-in-doc-position-p):
20111         Insert "\\|\\\\." into regexps which match symbols.
20113 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
20115         Improve the doc string of w32notify-valid-p
20116         * src/w32notify.c (Fw32notify_valid_p): Mention in the doc string
20117         that removing a watch makes its object invalid.
20119 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
20121         Fix tests for file-notify-valid-p
20122         * test/automated/file-notify-tests.el (file-notify--test-cleanup):
20123         Use delete-directory to delete file-notify--test-tmpfile if it is
20124         a directory.  Likewise for file-notify--test-tmpfile1.
20125         (file-notify-test04-file-validity)
20126         (file-notify-test05-dir-validity): Delete the parent directory of
20127         the test.  Ignore errors when cleaning up after the test.
20129 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
20131         Report file-notify-error in w32notify.c
20132         * src/w32notify.c (report_w32notify_error): New function.
20133         (Fw32notify_add_watch, Fw32notify_rm_watch): Use it to report
20134         errors, instead of calling report_file_error.  (Bug#21432)
20136         Implement w32notify-valid-p
20137         * src/w32notify.c (Fw32notify_valid_p): New function.  (Bug#21432)
20138         * lisp/filenotify.el (w32notify-valid-p): No longer an alias for
20139         'identity'.
20141 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
20143         Test file-notify-valid-p
20144         * test/automated/file-notify-tests.el
20145         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
20146         New tests.
20148 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
20150         Fix markup in ELisp manual
20151         * doc/lispref/frames.texi (Font and Color Parameters): Fix markup
20152         of the 'alpha' parameter value.  (Bug#21470)
20154 2015-09-13  Michael Albinus  <michael.albinus@gmx.de>
20156         Introduce `file-notify-valid-p'
20157         * lisp/filenotify.el (file-notify-valid-p): New defun.
20158         (gfile-valid-p, w32notify-valid-p): Make them an alias to `identity'.
20159         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist)
20160         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
20161         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist)
20162         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
20163         <file-notify-valid-p>: Add handler.
20164         * lisp/net/tramp.el (tramp-file-name-for-operation):
20165         Add `file-notify-valid-p'.
20166         (tramp-handle-file-notify-valid-p): New defun.
20167         * src/inotify.c (Finotify_valid_p): New defun.
20168         (syms_of_inotify): Declare Sinotify_valid_p.
20170 2015-09-13  Paul Eggert  <eggert@cs.ucla.edu>
20172         Port Unicode char detection to FreeBSD+svgalib
20173         Problem reported by Ashish SHUKLA in:
20174         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00531.html
20175         * configure.ac: Check for struct unipair.unicode instead of for
20176         <linux/kd.h>, since that’s more specific to what the code
20177         actually needs.
20178         * src/terminal.c: Use HAVE_STRUCT_UNIPAIR_UNICODE, not HAVE_LINUX_KD_H.
20180         * src/indent.c (Fvertical_motion): Simplify bugfix (Bug#21468).
20182 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
20184         Fix vertical cursor motion across overlay strings with newlines
20185         * src/indent.c (Fvertical_motion): Don't leave point in the middle
20186         of an overlay string with newlines, as that will position the
20187         cursor after the string at whatever column is there.  (Bug#21468)
20189 2015-09-12  Michael Albinus  <michael.albinus@gmx.de>
20191         Fix tests in file-notify-tests.el
20192         * test/automated/file-notify-tests.el: Remove Tramp declarations.
20193         (file-notify-test00-availability): Print remote command w/o Tramp
20194         internal functions.
20195         (file-notify-test02-events, file-notify-test02-events-remote):
20196         Adapt docstring.
20197         (file-notify-test03-autorevert): Use `format-message' when
20198         inspecting *Messages* buffer.
20200 2015-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
20202         Bind inhibit-modification-hooks rather than a/b-c-f
20203         * lisp/wid-edit.el (widget-editable-list-insert-before)
20204         (widget-editable-list-delete-at):
20205         * lisp/progmodes/cperl-mode.el (cperl-find-pods-heres)
20206         (cperl-font-lock-unfontify-region-function):
20207         * lisp/progmodes/antlr-mode.el (save-buffer-state-x):
20208         * lisp/obsolete/longlines.el (longlines-mode):
20209         * lisp/obsolete/fast-lock.el (save-buffer-state):
20210         * lisp/mouse.el (mouse-save-then-kill-delete-region):
20211         * lisp/gnus/message.el (message-hide-headers):
20212         * lisp/eshell/esh-mode.el (eshell-send-input, eshell-output-filter):
20213         * lisp/ibuffer.el (ibuffer-update-title-and-summary)
20214         (ibuffer-redisplay-engine): Bind inhibit-modification-hooks to t rather
20215         than after/before-change-functions to nil.
20217 2015-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>
20219         (jit-lock-deferred-fontify): Pay attention to skipped redisplays
20220         * lisp/jit-lock.el (jit-lock-deferred-fontify): Make sure we refresh
20221         the buffers, even if the forced redisplay is interrupted.
20223         * lisp/emacs-lisp/eieio-core.el (class-p): Accept class objects
20225         Merge syntax-propertize--done and parse-sexp-propertize-done
20226         * lisp/emacs-lisp/syntax.el (syntax-propertize--done): Remove.
20227         (syntax-propertize): Set syntax-propertize--done even if
20228         syntax-propertize-function is nil.  Avoid recursive invocations.
20229         (syntax-propertize-chunks): New var.
20230         (internal--syntax-propertize): Use it.  Rename from syntax--jit-propertize.
20231         Simplify.
20232         (parse-sexp-propertize-function): Don't set any more.
20233         * src/syntax.c (SETUP_SYNTAX_TABLE): Call parse_sexp_propertize as needed.
20234         (parse_sexp_propertize): Don't assume charpos is not yet propertized.
20235         Call Qinternal__syntax_propertize instead of
20236         Vparse_sexp_propertize_function.  Truncate e_property if needed.
20237         (update_syntax_table_forward): Streamline.
20238         (syms_of_syntax): Define Qinternal__syntax_propertize.
20239         (syntax_propertize__done): Rename from parse_sexp_propertize_done.
20241 2015-09-11  Paul Eggert  <eggert@cs.ucla.edu>
20243         Prefer straight quoting in some text files
20244         Mostly this just changes ` to ' in static text.  Some exceptions:
20245         * INSTALL.REPO: Use curved quotes, as the diagnostic in question
20246         typically does that now.
20247         * admin/quick-install-emacs (TRY, top level):
20248         Use straight quoting in diagnostics.
20249         * src/README: Fix working-directory confusion.
20251         * CONTRIBUTE: Move send-email here from git-workflow.
20253 2015-09-11  Michael Albinus  <michael.albinus@gmx.de>
20255         Improve file notifications in Tramp
20256         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
20257         Set proper events to watch for.
20258         (tramp-sh-file-gvfs-monitor-dir-process-filter): Report only
20259         watched events.
20261 2015-09-11  Eli Zaretskii  <eliz@gnu.org>
20263         Fix NS build with --enable-checking='glyphs'
20264         * src/nsfns.m (unwind_create_frame): Make the preprocessor
20265         conditionals for referencing 'dpyinfo' consistent throughout the
20266         function.  (Bug#21426)
20268 2015-09-10  Nicolas Petton  <nicolas@petton.fr>
20270         Add seq-find
20271         This function is similar to `seq-some' but returns the found element.
20272         In the cases where nil can be the found element, a sentinel optional
20273         argument can be provided to avoid ambiguities.
20274         * lisp/emacs-lisp/seq.el (seq-find): New function.
20275         * test/automated/seq-tests.el (test-seq-find): Add tests for `seq-find'.
20276         * doc/lispref/sequences.texi (Sequence Functions): Add documentation for
20277         seq-find.
20279 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
20281         Document file-notify--test-with-events.
20282         * test/automated/file-notify-tests.el (file-notify--test-with-events):
20283         Add docstring.
20285 2015-09-10  Michael Albinus  <michael.albinus@gmx.de>
20287         Report used native library in file-notify-tests.el
20288         * test/automated/file-notify-tests.el
20289         (tramp-get-remote-gvfs-monitor-dir)
20290         (tramp-get-remote-inotifywait): Declare them.
20291         (file-notify-test00-availability): Print used native library.
20293 2015-09-10  Mark Oteiza  <mvoteiza@udel.edu>
20295         * lisp/mpc.el (mpc--proc-connect): Use file-name-absolute-p.
20296         (mpc-file-local-copy): Check for absolute path.  Check more config
20297         locations.
20299 2015-09-10  Eli Zaretskii  <eliz@gnu.org>
20301         Improve documentation of categories
20302         * doc/lispref/syntax.texi (Categories): Clarify the example of
20303         using define-category and modify-category-entry.  (Bug#21448)
20305 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
20307         Revert some stray curved quotes I missed earlier
20308         Problem reported by David Kastrup in:
20309         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00440.html
20310         * lisp/international/mule-cmds.el (leim-list-header):
20311         Use format-message with an ASCII-only format.
20313         Prefer NUMBERP to spelling it out
20314         * src/editfns.c (styled_format):
20315         * src/frame.h (NUMVAL):
20316         * src/image.c (parse_image_spec):
20317         * src/lisp.h (CHECK_NUMBER_OR_FLOAT)
20318         (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER):
20319         * src/process.c (Fsignal_process):
20320         * src/xdisp.c (calc_pixel_width_or_height, on_hot_spot_p):
20321         * src/xfaces.c (check_lface_attrs):
20322         * src/xselect.c (x_fill_property_data, x_send_client_event):
20323         Use NUMBERP rather than INTEGERP || FLOATP.
20325 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
20327         Improve file-notify-tests
20328         * test/automated/file-notify-tests.el: Use lexical-binding.
20329         (file-notify--test-cleanup): New function.
20330         (file-notify-test00-availability, file-notify-test01-add-watch)
20331         (file-notify-test02-events, file-notify-test03-autorevert): Use it.
20332         (file-notify--test-with-events): New macro.
20333         (file-notify-test02-events): Use it.
20335 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
20337         Add patch-sending instructions to git-workflow
20338         From a suggestion by Mitchel Humpherys in:
20339         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00421.html
20340         * admin/notes/git-workflow (Sending patches): New section.
20342         Port to GIFLIB 5.0.6 and later
20343         Problem reported by Mitchel Humpherys in:
20344         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00420.html
20345         * src/image.c (HAVE_GIFERRORSTRING) [HAVE_GIF]: New macro.
20346         (GifErrorString, init_gif_functions) [HAVE_GIF && WINDOWSNT]:
20347         (gif_load) [HAVE_GIF]: Use it.
20349 2015-09-10  Glenn Morris  <rgm@gnu.org>
20351         * lisp/cedet/ede/auto.el (ede-project-autoload): Doc fix.
20353 2015-09-09  Glenn Morris  <rgm@gnu.org>
20355         * test/automated/file-notify-tests.el (file-notify-test02-events):
20356         Fix recent change.
20358 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
20360         Refix movemail GCC pacification
20361         Problem reported by Ken Brown in:
20362         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00406.html
20363         * lib-src/movemail.c (main): Fix previous change.
20365 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
20367         * lisp/calendar/time-date.el (time-to-seconds, time-less-p):
20368         Mark unused vars with underscore.
20370         * src/syntax.c (SETUP_SYNTAX_TABLE): Move truncation...
20371         (parse_sexp_propertize): ...from here.
20373         * lisp/filenotify.el: Use lexical-binding
20374         (file-notify-add-watch): Avoid add-to-list.
20376 2015-09-09  Tassilo Horn  <tsdh@gnu.org>
20378         Start checking event types in file-notify tests
20379         * test/automated/file-notify-tests.el (file-notify--test-events):
20380         New variable.
20381         (file-notify--test-event-handler): Append received event to
20382         file-notify--test-events for later analysis.
20383         (file-notify-test02-events): Assert that the expected notifications have
20384         arrived in the expected order.
20386 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
20388         Merge from gnulib and texinfo
20389         This incorporates:
20390         2015-08-03 Improve port of stdalign to C++11
20391         * lib/stdalign.in.h: Copy from gnulib.
20392         * doc/misc/texinfo.tex: Copy from texinfo.
20394 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
20396         Make syntax.c call syntax-propertize on demand
20397         * lisp/emacs-lisp/syntax.el (syntax--jit-propertize): New function.
20398         (parse-sexp-propertize-function): Use it.
20399         (syntax-propertize): Disable parse-sexp-propertize-function.
20400         * src/syntax.c (parse_sexp_propertize, update_syntax_table_forward):
20401         New functions.
20402         (syms_of_syntax): New vars `parse-sexp-propertize-done' and
20403         `parse-sexp-propertize-function'.
20404         * src/syntax.h (struct gl_state_s): Add `e_property_truncated' field.
20405         (UPDATE_SYNTAX_TABLE_FORWARD): Use update_syntax_table_forward.
20406         (SETUP_BUFFER_SYNTAX_TABLE): Set e_property_truncated.
20407         * lisp/progmodes/elisp-mode.el (elisp-byte-code-syntax-propertize):
20408         Don't assume `point' is set.
20410 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
20412         Fix indentation of an @example in ELisp manual
20413         * doc/lispref/syntax.texi (Categories): Untabify the example.
20414         (Bug#21448)
20416 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
20418         Define internal-char-font even if --without-x
20419         The function is used now even in non-graphical environments.
20420         Problem reported by Glenn Morris in:
20421         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00401.html
20422         * src/font.c (Finternal_char_font): Move here ...
20423         * src/fontset.c (Finternal_char_font): ... from here.
20425 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
20427         * lisp/emacs-lisp/cl-generic.el (cl-generic-generalizers):
20428         Remove warning.
20430 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
20432         Fix display of complex local data types in GDB-MI
20433         * lisp/progmodes/gdb-mi.el (gdb-locals-handler-custom): If a
20434         variable has no value, display "<complex data type>" as a
20435         placeholder, instead of a confusing "nil".  (Bug#21438)
20437 2015-09-09  Oleh Krehel  <ohwoeowho@gmail.com>
20439         Remove redundant redefinition of seq-drop-while from seq.el
20440         * lisp/emacs-lisp/seq.el (seq-drop-while): Define only once.
20442 2015-09-09  Phil Sainty  <psainty@orcon.net.nz>
20444         * lisp/emacs-lisp/package.el (package--ensure-init-file):
20445         More robust check for `package-initialize' calls in init file.
20446         This function accepts an optional argument, but calls passing
20447         an argument would not have been detected.
20449 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
20451         Port movemail to RHEL 6 with --enable-gcc-warnings
20452         * lib-src/movemail.c (main): Declare local only if needed.
20454         Port recent Linux console changes to RHEL 6
20455         * src/terminal.c [HAVE_LINUX_KD_H]: Include <sys/ioctl.h>.
20457         Improvements for curved quotes on Linux consule
20458         This should help Emacs work better out-of-the-box on Linux consoles,
20459         which have only limited support for displaying Unicode characters.
20460         Also, undo the recent change that caused text-quoting-style to
20461         affect quote display on terminals, so that the two features are
20462         independent.  See Alan Mackenzie in:
20463         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00244.html
20464         Finally, add a style parameter to startup--setup-quote-display,
20465         so that this function can also be invoked after startup, with
20466         different styles depending on user preference at the time.
20467         * configure.ac: Check for linux/kd.h header.
20468         * doc/emacs/display.texi (Text Display): Document quote display.
20469         * doc/lispref/display.texi (Active Display Table):
20470         * etc/NEWS:
20471         * lisp/startup.el (startup--setup-quote-display, command-line):
20472         text-quoting-style no longer affects quote display.
20473         * doc/lispref/frames.texi (Terminal Parameters): Fix typo.
20474         * lisp/international/mule-util.el (char-displayable-p):
20475         * lisp/startup.el (startup--setup-quote-display):
20476         On a text terminal supporting glyph codes, use the reported
20477         glyph codes instead of the terminal coding system, as this
20478         is more accurate on the Linux console.
20479         * lisp/startup.el (startup--setup-quote-display):
20480         New optional arg STYLE.
20481         * src/fontset.c (Finternal_char_font):
20482         Report glyph codes for a text terminal, if they are available.
20483         Currently this is supported only for the Linux console.
20484         * src/termhooks.h (struct terminal): New member glyph-code-table.
20485         * src/terminal.c [HAVE_LINUX_KD_H]: Include <errno.h>, <linux/kd.h>.
20486         (calculate_glyph_code_table) [HAVE_LINUX_KD_H]: New function.
20487         (terminal_glyph_code): New function.
20489 2015-09-08  Juri Linkov  <juri@linkov.net>
20491         * lisp/info.el (Info-fontify-node): Don't stop at the non-title
20492         underline.  (Bug#21433)
20494 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
20496         * lisp/calendar/time-date.el (with-decoded-time-value): Fix debug spec.
20498 2015-09-08  Tassilo Horn  <tsdh@gnu.org>
20500         Fix double-reporting of rename events with inotify
20501         * lisp/filenotify.el (file-notify-callback): Fix double-reporting
20502         of rename events with inotify (bug#21435).
20504 2015-09-08  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
20506         * lisp/play/tetris.el (tetris-move-down): New command (bug#21360).
20507         (tetris-mode-map): Use it.
20509 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
20511         Remove a few simple cases of global redisplay
20512         * src/dispnew.c (redraw_frame): Don't redisplay all frames.
20513         * src/xdisp.c (echo_area_display): Set the frame's `redisplay' bit
20514         rather than returning a "resized_p" boolean.
20515         (redisplay_internal): Adjust call accordingly.
20516         * src/xfaces.c (free_realized_faces): Don't redisplay all frames.
20517         (free_all_realized_faces): Set windows_or_buffers_changed so as to ease
20518         tracking of this undesirable situation.
20520         * src/process.c (status_notify): Avoid global redisplay (bug#11822)
20521         * src/process.c (status_notify): Only set the update_mode_line on the
20522         relevant buffers rather than setting it globally.
20524 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
20526         * lisp/electric.el (electric-quote-post-self-insert-function):
20527         Don't use syntax-ppss if comment-use-syntax is nil (e.g. message-mode).
20528         (electric-quote-mode): Activate everywhere in message-mode.
20530 2015-09-07  Paul Eggert  <eggert@cs.ucla.edu>
20532         Go back to grave quoting in source-code docstrings etc.
20533         This reverts almost all my recent changes to use curved quotes
20534         in docstrings and/or strings used for error diagnostics.
20535         There are a few exceptions, e.g., Bahá’í proper names.
20536         * admin/unidata/unidata-gen.el (unidata-gen-table):
20537         * lisp/abbrev.el (expand-region-abbrevs):
20538         * lisp/align.el (align-region):
20539         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet)
20540         (outlineify-sticky):
20541         * lisp/apropos.el (apropos-library):
20542         * lisp/bookmark.el (bookmark-default-annotation-text):
20543         * lisp/button.el (button-category-symbol, button-put)
20544         (make-text-button):
20545         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
20546         * lisp/calc/calc-embed.el (calc-do-embedded):
20547         * lisp/calc/calc-ext.el (calc-user-function-list):
20548         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
20549         * lisp/calc/calc-help.el (calc-describe-key)
20550         (calc-describe-thing, calc-full-help):
20551         * lisp/calc/calc-lang.el (calc-c-language)
20552         (math-parse-fortran-vector-end, math-parse-tex-sum)
20553         (math-parse-eqn-matrix, math-parse-eqn-prime)
20554         (calc-yacas-language, calc-maxima-language, calc-giac-language)
20555         (math-read-giac-subscr, math-read-math-subscr)
20556         (math-read-big-rec, math-read-big-balance):
20557         * lisp/calc/calc-misc.el (calc-help, report-calc-bug):
20558         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
20559         (calc-auto-recompute):
20560         * lisp/calc/calc-prog.el (calc-fix-token-name)
20561         (calc-read-parse-table-part, calc-user-define-invocation)
20562         (math-do-arg-check):
20563         * lisp/calc/calc-store.el (calc-edit-variable):
20564         * lisp/calc/calc-units.el (math-build-units-table-buffer):
20565         * lisp/calc/calc-vec.el (math-read-brackets):
20566         * lisp/calc/calc-yank.el (calc-edit-mode):
20567         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
20568         * lisp/calendar/appt.el (appt-display-message):
20569         * lisp/calendar/diary-lib.el (diary-check-diary-file)
20570         (diary-mail-entries, diary-from-outlook):
20571         * lisp/calendar/icalendar.el (icalendar-export-region)
20572         (icalendar--convert-float-to-ical)
20573         (icalendar--convert-date-to-ical)
20574         (icalendar--convert-ical-to-diary)
20575         (icalendar--convert-recurring-to-diary)
20576         (icalendar--add-diary-entry):
20577         * lisp/calendar/time-date.el (format-seconds):
20578         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
20579         (timeclock-make-hours-explicit, timeclock-log-data):
20580         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
20581         (todo-item-mark, todo-check-format)
20582         (todo-insert-item--next-param, todo-edit-item--next-key)
20583         (todo-mode):
20584         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
20585         * lisp/cedet/mode-local.el (describe-mode-local-overload)
20586         (mode-local-print-binding, mode-local-describe-bindings-2):
20587         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
20588         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
20589         * lisp/cus-start.el (standard):
20590         * lisp/cus-theme.el (describe-theme-1):
20591         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
20592         (custom--sort-vars-1, load-theme):
20593         * lisp/descr-text.el (describe-text-properties-1, describe-char):
20594         * lisp/dired-x.el (dired-do-run-mail):
20595         * lisp/dired.el (dired-log):
20596         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
20597         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
20598         (ad-disable-advice, ad-remove-advice, ad-set-argument)
20599         (ad-set-arguments, ad--defalias-fset, ad-activate)
20600         (ad-deactivate):
20601         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
20602         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
20603         (byte-optimize-while, byte-optimize-apply):
20604         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
20605         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
20606         (byte-compile-log-file, byte-compile-format-warn)
20607         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
20608         (byte-compile-cl-warn)
20609         (byte-compile-warn-about-unresolved-functions)
20610         (byte-compile-file, byte-compile--declare-var)
20611         (byte-compile-file-form-defmumble, byte-compile-form)
20612         (byte-compile-normal-call, byte-compile-check-variable)
20613         (byte-compile-variable-ref, byte-compile-variable-set)
20614         (byte-compile-subr-wrong-args, byte-compile-setq-default)
20615         (byte-compile-negation-optimizer)
20616         (byte-compile-condition-case--old)
20617         (byte-compile-condition-case--new, byte-compile-save-excursion)
20618         (byte-compile-defvar, byte-compile-autoload)
20619         (byte-compile-lambda-form)
20620         (byte-compile-make-variable-buffer-local, display-call-tree)
20621         (batch-byte-compile):
20622         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use):
20623         * lisp/emacs-lisp/chart.el (chart-space-usage):
20624         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
20625         (check-declare-warn, check-declare-file)
20626         (check-declare-directory):
20627         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
20628         (checkdoc-message-text-engine):
20629         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer)
20630         (cl--describe-class):
20631         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
20632         (cl--generic-describe, cl-generic-generalizers):
20633         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
20634         (cl-symbol-macrolet):
20635         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
20636         * lisp/emacs-lisp/copyright.el (copyright)
20637         (copyright-update-directory):
20638         * lisp/emacs-lisp/edebug.el (edebug-read-list):
20639         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
20640         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
20641         (eieio-oref):
20642         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
20643         * lisp/emacs-lisp/eieio-speedbar.el:
20644         (eieio-speedbar-child-make-tag-lines)
20645         (eieio-speedbar-child-description):
20646         * lisp/emacs-lisp/eieio.el (defclass, change-class):
20647         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
20648         (elint-init-form, elint-check-defalias-form)
20649         (elint-check-let-form):
20650         * lisp/emacs-lisp/ert.el (ert-get-test, ert-results-mode-menu)
20651         (ert-results-pop-to-backtrace-for-test-at-point)
20652         (ert-results-pop-to-messages-for-test-at-point)
20653         (ert-results-pop-to-should-forms-for-test-at-point)
20654         (ert-describe-test):
20655         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
20656         (find-function-library):
20657         * lisp/emacs-lisp/generator.el (iter-yield):
20658         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
20659         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
20660         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
20661         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
20662         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
20663         (advice--make, define-advice):
20664         * lisp/emacs-lisp/package-x.el (package-upload-file):
20665         * lisp/emacs-lisp/package.el (package-version-join)
20666         (package-disabled-p, package-activate-1, package-activate)
20667         (package--download-one-archive)
20668         (package--download-and-read-archives)
20669         (package-compute-transaction, package-install-from-archive)
20670         (package-install, package-install-selected-packages)
20671         (package-delete, package-autoremove, describe-package-1)
20672         (package-install-button-action, package-delete-button-action)
20673         (package-menu-hide-package, package-menu--list-to-prompt)
20674         (package-menu--perform-transaction)
20675         (package-menu--find-and-notify-upgrades):
20676         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
20677         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
20678         * lisp/emacs-lisp/ring.el (ring-previous, ring-next):
20679         * lisp/emacs-lisp/rx.el (rx-check, rx-anything)
20680         (rx-check-any-string, rx-check-any, rx-check-not, rx-=)
20681         (rx-repeat, rx-check-backref, rx-syntax, rx-check-category)
20682         (rx-form):
20683         * lisp/emacs-lisp/smie.el (smie-config-save):
20684         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
20685         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
20686         * lisp/emacs-lisp/testcover.el (testcover-1value):
20687         * lisp/emacs-lisp/timer.el (timer-event-handler):
20688         * lisp/emulation/viper-cmd.el (viper-toggle-parse-sexp-ignore-comments)
20689         (viper-toggle-search-style, viper-kill-buffer)
20690         (viper-brac-function):
20691         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
20692         * lisp/env.el (setenv):
20693         * lisp/erc/erc-button.el (erc-nick-popup):
20694         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login, english):
20695         * lisp/eshell/em-dirs.el (eshell/cd):
20696         * lisp/eshell/em-glob.el (eshell-glob-regexp)
20697         (eshell-glob-entries):
20698         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
20699         * lisp/eshell/esh-opt.el (eshell-show-usage):
20700         * lisp/facemenu.el (facemenu-add-new-face)
20701         (facemenu-add-new-color):
20702         * lisp/faces.el (read-face-name, read-face-font, describe-face)
20703         (x-resolve-font-name):
20704         * lisp/files-x.el (modify-file-local-variable):
20705         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
20706         (set-auto-mode, hack-one-local-variable--obsolete)
20707         (dir-locals-set-directory-class, write-file, basic-save-buffer)
20708         (delete-directory, copy-directory, recover-session)
20709         (recover-session-finish, insert-directory)
20710         (file-modes-char-to-who, file-modes-symbolic-to-number)
20711         (move-file-to-trash):
20712         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer):
20713         * lisp/find-cmd.el (find-generic, find-to-string):
20714         * lisp/finder.el (finder-commentary):
20715         * lisp/font-lock.el (font-lock-fontify-buffer):
20716         * lisp/format.el (format-write-file, format-find-file)
20717         (format-insert-file):
20718         * lisp/frame.el (get-device-terminal, select-frame-by-name):
20719         * lisp/fringe.el (fringe--check-style):
20720         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
20721         * lisp/help-fns.el (help-fns--key-bindings)
20722         (help-fns--compiler-macro, help-fns--parent-mode)
20723         (help-fns--obsolete, help-fns--interactive-only)
20724         (describe-function-1, describe-variable):
20725         * lisp/help.el (describe-mode)
20726         (describe-minor-mode-from-indicator):
20727         * lisp/image.el (image-type):
20728         * lisp/international/ccl.el (ccl-dump):
20729         * lisp/international/fontset.el (x-must-resolve-font-name):
20730         * lisp/international/mule-cmds.el (prefer-coding-system)
20731         (select-safe-coding-system-interactively)
20732         (select-safe-coding-system, activate-input-method)
20733         (toggle-input-method, describe-current-input-method)
20734         (describe-language-environment):
20735         * lisp/international/mule-conf.el (code-offset):
20736         * lisp/international/mule-diag.el (describe-character-set)
20737         (list-input-methods-1):
20738         * lisp/mail/feedmail.el (feedmail-run-the-queue):
20739         * lisp/mouse.el (minor-mode-menu-from-indicator):
20740         * lisp/mpc.el (mpc-playlist-rename):
20741         * lisp/msb.el (msb--choose-menu):
20742         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
20743         * lisp/net/imap.el (imap-interactive-login):
20744         * lisp/net/mairix.el (mairix-widget-create-query):
20745         * lisp/net/newst-backend.el (newsticker--sentinel-work):
20746         * lisp/net/newst-treeview.el (newsticker--treeview-load):
20747         * lisp/net/rlogin.el (rlogin):
20748         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
20749         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
20750         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
20751         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
20752         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
20753         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
20754         (org-babel-goto-named-result):
20755         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
20756         * lisp/org/ob-ref.el (org-babel-ref-resolve):
20757         * lisp/org/org-agenda.el (org-agenda-prepare):
20758         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
20759         (org-clock-resolve):
20760         * lisp/org/org-ctags.el (org-ctags-ask-rebuild-tags-file-then-find-tag):
20761         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
20762         * lisp/org/org-habit.el (org-habit-parse-todo):
20763         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
20764         (org-mouse-context-menu):
20765         * lisp/org/org-table.el (org-table-edit-formulas):
20766         * lisp/org/ox.el (org-export-async-start):
20767         * lisp/proced.el (proced-log):
20768         * lisp/progmodes/ada-mode.el (ada-get-indent-case)
20769         (ada-check-matching-start, ada-goto-matching-start):
20770         * lisp/progmodes/ada-prj.el (ada-prj-display-page):
20771         * lisp/progmodes/ada-xref.el (ada-find-executable):
20772         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
20773         * lisp/progmodes/etags.el (etags-tags-apropos-additional):
20774         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
20775         (flymake-start-syntax-check-process):
20776         * lisp/progmodes/python.el (python-shell-get-process-or-error)
20777         (python-define-auxiliary-skeleton):
20778         * lisp/progmodes/sql.el (sql-comint):
20779         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
20780         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate):
20781         * lisp/recentf.el (recentf-open-files):
20782         * lisp/replace.el (query-replace-read-from)
20783         (occur-after-change-function, occur-1):
20784         * lisp/scroll-bar.el (scroll-bar-columns):
20785         * lisp/server.el (server-get-auth-key):
20786         * lisp/simple.el (execute-extended-command)
20787         (undo-outer-limit-truncate, list-processes--refresh)
20788         (compose-mail, set-variable, choose-completion-string)
20789         (define-alternatives):
20790         * lisp/startup.el (site-run-file, tty-handle-args, command-line)
20791         (command-line-1):
20792         * lisp/subr.el (noreturn, define-error, add-to-list)
20793         (read-char-choice, version-to-list):
20794         * lisp/term/common-win.el (x-handle-xrm-switch)
20795         (x-handle-name-switch, x-handle-args):
20796         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
20797         * lisp/textmodes/reftex-ref.el (reftex-label):
20798         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
20799         * lisp/textmodes/two-column.el (2C-split):
20800         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
20801         (tutorial--find-changed-keys):
20802         * lisp/type-break.el (type-break-noninteractive-query):
20803         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
20804         (wdired-do-perm-changes):
20805         * lisp/whitespace.el (whitespace-report-region):
20806         Prefer grave quoting in source-code strings used to generate help
20807         and diagnostics.
20808         * lisp/faces.el (face-documentation):
20809         No need to convert quotes, since the result is a docstring.
20810         * lisp/info.el (Info-virtual-index-find-node)
20811         (Info-virtual-index, info-apropos):
20812         Simplify by generating only curved quotes, since info files are
20813         typically that ways nowadays anyway.
20814         * lisp/international/mule-diag.el (list-input-methods):
20815         Don’t assume text quoting style is curved.
20816         * lisp/org/org-bibtex.el (org-bibtex-fields):
20817         Revert my recent changes, going back to the old quoting style.
20819 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
20821         * lisp/emacs-lisp/package.el: Reduce autoloading before compiling.
20822         (package--autoloads-file-name)
20823         (package--activate-autoloads-and-load-path): New function.
20824         (package-activate-1): Delegate autoloading and load-path
20825         configuration to `package--activate-autoloads-and-load-path'.
20826         (package--compile): Before compilation, call
20827         `package--activate-autoloads-and-load-path' instead of
20828         `package-activate-1'.
20830 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
20832         * src/keyboard.c (read_key_sequence): Complete last fix (bug#21403).
20834 2015-09-07  Eli Zaretskii  <eliz@gnu.org>
20836         Fix deletion of symlinks to directories on MS-Windows
20837         * src/w32.c (sys_unlink): If 'unlink' fails, and the argument is a
20838         symlink to a directory, try again with 'rmdir'.
20839         (is_symlink): If the argument is a symlink to a directory, set a
20840         bit in the return value to indicate that fact.
20842 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
20844         * lisp/emacs-lisp/package.el (package-initialize): Set enable-at-startup
20845         When `package-initialize' is called as part of loading the init file,
20846         the user probably doesn't want it to be called again afterwards.
20847         In this situation, `package-initialize' now sets
20848         `package-enable-at-startup' to nil to prevent that.  The user can have
20849         the old behavior by setting this variable to t after the call to
20850         `package-initialize'.  (Bug#21423)
20851         * doc/emacs/package.texi (Package Installation): Document it.
20852         * doc/lispref/package.texi (Packaging Basics): Document it.
20853         * etc/NEWS: Document it.
20855 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
20857         Bump version of ntlm.el to 2.00
20858         * lisp/net/ntlm.el: Bump version to 2.00.  New maintainer.
20859         Add comm keyword.
20861 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
20863         * doc/misc/gnus.texi (Mail Source Specifiers):
20864         Allow :mailbox to be a list.
20866 2015-09-06  Dmitry Gutov  <dgutov@yandex.ru>
20868         * lisp/progmodes/etags.el (etags-tags-completion-table):
20869         Allow even one non-regular character before the implicit tag name.
20870         Reported at http://emacs.stackexchange.com/questions/15269/.
20872 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
20874         Add support for NTLMv2 authentication
20875         * lisp/net/ntlm.el (ntlm): New customization group.
20876         (ntlm-compatibility-level): New defcustom.
20877         (ntlm-compute-timestamp): New function.
20878         (ntlm-generate-nonce): Likewise.
20879         (ntlm-build-auth-response): Add support for NTLMv2 authentication.
20881 2015-09-06  Artur Malabarba  <bruce.connor.am@gmail.com>
20883         * lisp/emacs-lisp/package.el: Rename custom faces.
20884         All of the recently introduced faces, like `package-name-face', have
20885         been renamed to no end in `-face' to comply with the convention
20886         described in (info "(elisp) Defining Faces").
20887         (package-name, package-description)
20888         (package-status-built-in, package-status-external)
20889         (package-status-available, package-status-new)
20890         (package-status-held, package-status-disabled)
20891         (package-status-installed, package-status-dependency)
20892         (package-status-unsigned, package-status-incompat)
20893         (package-status-avail-obso): New faces.
20894         (package-menu--print-info-simple): Use them.
20896 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
20898         mail-source.el: Make the imap mail-source's :mailbox handle a list
20899         * lisp/gnus/mail-source.el (mail-source-fetch-imap):
20900         Allow :mailbox to be  a list.
20902 2015-09-06  Eric Abrahamsen  <eric@ericabrahamsen.net>
20904         nnimap.el: Handle nil arg to nnimap-request-group
20905         * lisp/gnus/nnimap.el (nnimap-request-group): Handle nil "info" arg.
20906         This arg isn't always passed in, check it's not nil before making it
20907         into a list.  The active arg will also be nil if the group is new,
20908         check for that.
20910 2015-09-06  Michael Albinus  <michael.albinus@gmx.de>
20912         File notifications: Support renaming over directory boundaries
20913         * lisp/filenotify.el (file-notify-handle-event):
20914         (file-notify--pending-event): Adapt docstring.
20915         (file-notify--descriptor, file-notify-callback): Reimplement in
20916         order to support renaming over directory boundaries.
20917         (file-notify-add-watch): Adapt `file-notify--descriptor' call.
20918         * doc/lispref/os.texi (File Notifications): Remove limitation of
20919         file renaming to the same directory.
20921 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
20923         Spelling fix (Bug#21420)
20925 2015-09-05  Nicolas Petton  <nicolas@petton.fr>
20927         Improve the semantic of map-some
20928         Update map-some to return the returned by the predicate, similar to
20929         seq-some.
20930         * lisp/emacs-lisp/map.el (map-some): Update the function to return the
20931           return value of the predicate.
20932         * test/automated/map-tests.el (test-map-some): Update the test to check
20933           for non-nil values only.
20935         Rename map-contains-key-p and map-some-p
20936         Remove the "-p" suffix from both function names.
20937         * lisp/emacs-lisp/map.el (map-contains-key, map-some):
20938           Rename the functions.
20939         * test/automated/map-tests.el (test-map-contains-key, test-map-some):
20940           Update both test functions.
20942         Improve the semantic of seq-some
20943         Update seq-some to return non-nil if the predicate returns non-nil for
20944         any element of the seq, in which case the returned value is the one
20945         returned by the predicate.
20946         * lisp/emacs-lisp/seq.el (seq-some): Update the function and its
20947           docstring.
20948         * test/automated/seq-tests.el (test-seq-some): Add a regression test.
20949         * doc/lispref/sequences.texi (Sequence Functions): Update the
20950           documentation for seq-some.
20952         Rename seq-some-p to seq-some and seq-contains-p to seq-contains
20953         * lisp/emacs-lisp/seq.el (seq-some, seq-contains): Rename the functions
20954           without the "-p" prefix.
20955         * test/automated/seq-tests.el (test-seq-some, test-seq-contains): Update
20956           the tests accordingly.
20957         * doc/lispref/sequences.texi (Sequence Functions): Update the
20958           documentation for seq.el.
20960 2015-09-05  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
20962         text-quoting-style for usage of fn names with ‘’
20963         * lisp/help.el (help--docstring-quote): Don’t assume
20964         text-quoting-style is ‘curve’ when generating usage strings for
20965         functions whose names contain curved quotes.
20967 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
20969         Fix fix for describe-function keybinding confusion
20970         This fixes a bug introduced by the previous patch.
20971         * lisp/help-fns.el (help-fns--signature):
20972         Last arg of help-fns--signature is now a buffer, or nil if a
20973         raw signature is wanted.  All callers changed.
20974         (describe-function-1): Use this to do the right thing with signatures.
20976 2015-09-05  Johan Bockgård  <bojohan@gnu.org>
20978         * doc/lispref/frames.texi (Mouse Tracking): Fix typo.
20980         Use PAT rather than UPAT in pcase macros
20981         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
20982         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>: Use PAT rather
20983           than UPAT.
20985 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
20987         Fix describe-function keybinding confusion
20988         * lisp/help-fns.el (describe-function-1): Compute signature
20989         in the original buffer, not in standard-output, so that
20990         substitute-command-keys uses the proper keybindings.
20991         This fixes Bug#21412, introduced in commit
20992         2015-06-11T10:23:46-0700!eggert@cs.ucla.edu.
20994 2015-09-05  Xue Fuqiao  <xfq.free@gmail.com>
20996         * doc/emacs/programs.texi (Program Modes): Remove an index entry.
20998 2015-09-05  Robert Pluim  <rpluim@gmail.com>  (tiny change)
21000         Avoid read error messages from 'inotify'
21001         * src/process.c (wait_reading_process_output): Add a
21002         'tls_available' set and manipulate it instead of 'Available' when
21003         checking TLS inputs.  Assign the value to 'Available' only if we
21004         find any TLS data waiting to be read.  This avoids error messages
21005         from 'inotify' that tries to read data it shouldn't.  (Bug#21337)
21007 2015-09-05  Eli Zaretskii  <eliz@gnu.org>
21009         Avoid errors in thing-at-point with 2nd argument non-nil
21010         * lisp/thingatpt.el (thing-at-point): Only call 'length' on
21011         sequences.  (Bug#21391)
21013 2015-09-05  Philip  <pipcet@gmail.com>  (tiny change)
21015         Fix segfaults due to using a stale face ID
21016         * src/xdisp.c (forget_escape_and_glyphless_faces): New function.
21017         (display_echo_area_1, redisplay_internal): Call it to avoid
21018         reusing stale face IDs for 'escape-glyph' and 'glyphless-char'
21019         faces, which could case a segfault if the frame's face cache was
21020         freed since the last redisplay.  (Bug#21394)
21021         * src/xfaces.c (free_realized_faces):
21022         Call forget_escape_and_glyphless_faces.
21023         * src/dispextern.h (forget_escape_and_glyphless_faces): Add prototype.
21025 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
21027         Fix minor problems with " in manual
21029 2015-09-04  Michael Albinus  <michael.albinus@gmx.de>
21031         * doc/misc/tramp.texi (Frequently Asked Questions): New item for ad-hoc
21032         multi-hop files.
21034 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
21036         Support automated ‘make check’ in non-C locale
21037         This lets the builder optionally test Emacs behavior in other locales.
21038         The C locale is still the default for tests.
21039         * test/automated/Makefile.in (TEST_LOCALE): New macro.
21040         (emacs): Use it.
21041         * test/automated/flymake-tests.el (flymake-tests--current-face):
21042         Use C locale for subprocesses so that tests behave as expected.
21043         * test/automated/python-tests.el:
21044         (python-shell-prompt-validate-regexps-1)
21045         (python-shell-prompt-validate-regexps-2)
21046         (python-shell-prompt-validate-regexps-3)
21047         (python-shell-prompt-validate-regexps-4)
21048         (python-shell-prompt-validate-regexps-5)
21049         (python-shell-prompt-validate-regexps-6)
21050         (python-shell-prompt-set-calculated-regexps-1):
21051         Adjust expected output to match locale.
21052         * test/automated/tildify-tests.el (tildify-test--test)
21053         (tildify-space-test--test, tildify-space-undo-test--test):
21054         This test assumes UTF-8 encoding.
21056 2015-09-03  Paul Eggert  <eggert@cs.ucla.edu>
21058         Fix some more docstring etc. quoting problems
21059         Mostly these fixes prevent the transliteration of apostrophes
21060         that should stay apostrophes.  Also, prefer curved quotes in
21061         Bahá’í proper names, as that’s the preferred Bahá’í style and
21062         these names are chock-full of non-ASCII characters anyway.
21063         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-autoload)
21064         (eieio-defclass-internal):
21065         * lisp/emacs-lisp/eieio.el (defclass):
21066         * lisp/hi-lock.el (hi-lock-mode):
21067         Don’t transliterate Lisp apostrophes when generating a
21068         doc string or diagnostic.
21069         * lisp/international/mule-diag.el (list-coding-systems-1):
21070         * lisp/international/ogonek.el (ogonek-jak, ogonek-how):
21071         * lisp/mail/sendmail.el (sendmail-query-user-about-smtp):
21072         * lisp/vc/ediff-mult.el (ediff-redraw-registry-buffer):
21073         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
21074         Substitute quotes before putting them in the help buffer.
21076 2015-09-03  Stefan Monnier  <monnier@iro.umontreal.ca>
21078         Re-add the notion of echo_prompt lost in the translation
21079         * src/keyboard.h (struct kboard): Replace echo_after_prompt with new
21080         echo_prompt which contains the actual string.  Update all uses.
21081         * src/keyboard.c (kset_echo_prompt): New function.
21082         (echo_update): Add echo_prompt at the very beginning.
21083         (read_char): Remove workaround for bug#19875, not needed any more.
21084         (read_key_sequence): Set echo_prompt rather than echo_string
21085         (bug#21403).
21086         (mark_kboards): Mark echo_prompt.
21088         Fix disassembly of non-compiled lexical functions (bug#21377)
21089         * lisp/emacs-lisp/bytecomp.el (byte-compile): Handle `closure' arg.
21090         * lisp/emacs-lisp/disass.el: Use lexical-binding.
21091         (disassemble): Recognize `closure's as well.
21092         (disassemble-internal): Use indirect-function and
21093         help-function-arglist, and accept `closure's.
21094         (disassemble-internal): Use interactive-form.
21095         (disassemble-1): Use functionp.
21097         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
21098         Don't compose inside verbatim blocks!
21100 2015-09-03  Mark Oteiza  <mvoteiza@udel.edu>
21102         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "man:"
21103         (bug#19441).
21105         * lisp/mpc.el (mpc--proc-connect): Handle unix sockets (bug#19394).
21107 2015-09-03  Dmitry Gutov  <dgutov@yandex.ru>
21109         vc-git-mode-line-string: Explicitly re-apply the face
21110         * lisp/vc/vc-git.el (vc-git-mode-line-string): Explicitly re-apply
21111         the face (bug#21404).
21113 2015-09-02  Paul Eggert  <eggert@cs.ucla.edu>
21115         Treat initial-scratch-message as a doc string
21116         * doc/emacs/building.texi (Lisp Interaction):
21117         * doc/lispref/os.texi (Startup Summary):
21118         * etc/NEWS: Document this.
21119         * lisp/startup.el (initial-scratch-message):
21120         Look up find-file’s key rather than hardcoding it.
21121         (command-line-1): Substitute the doc string.
21122         This also substitutes the quotes, which will help test display
21123         quoting at startup.
21125         Fix describe-char bug with glyphs on terminals
21126         * lisp/descr-text.el (describe-char): Terminals can have glyphs in
21127         buffers too, so don’t treat them differently from graphic displays.
21128         Without this fix, describe-char would throw an error on a terminal
21129         if given a glyph with a non-default face.
21131         Follow text-quoting-style in display table init
21132         This attempts to fix a problem reported by Alan Mackenzie in:
21133         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00112.html
21134         * doc/lispref/display.texi (Active Display Table):
21135         Mention how text-quoting-style affects it.
21136         * doc/lispref/help.texi (Keys in Documentation):
21137         Say how to set text-quoting-style in ~/.emacs.
21138         * etc/NEWS: Document the change.
21139         * lisp/startup.el (startup--setup-quote-display):
21140         Follow user preference if text-quoting-style is set.
21141         (command-line): Setup quote display again if user expresses
21142         a preference in .emacs.
21144 2015-09-02  K. Handa  <handa@gnu.org>
21146         Fix typo
21147         * src/ftfont.c (ftfont_drive_otf): otf_positioning_type_components_mask
21148         -> OTF_positioning_type_components_mask.
21150         Fix previous change
21151         * src/ftfont.c (ftfont_drive_otf): Remember some bits of
21152         OTF_Glyph->positioning_type in MFLTGlyphFT->libotf_positioning_type.
21154 2015-09-01  David Caldwell  <david@porkrind.org>  (tiny change)
21156         * lisp/vc/vc-hooks.el (vc-refresh-state): New command.
21157         Rename from vc-find-file-hook and make interactive.
21158         (vc-find-file-hook): Redefine as obsolete alias.
21160 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
21162         Escape ` and ' in doc
21163         Escape apostrophes and grave accents in docstrings if they are
21164         are supposed to stand for themselves and are not quotes.  Remove
21165         apostrophes from docstring examples like ‘'(calendar-nth-named-day
21166         -1 0 10 year)’ that confuse source code with data.  Do some other
21167         minor docstring fixups as well, e.g., insert a missing close quote.
21169 2015-09-01  Stefan Monnier  <monnier@iro.umontreal.ca>
21171         Generalize the prefix-command machinery of C-u
21172         * lisp/simple.el (prefix-command-echo-keystrokes-functions)
21173         (prefix-command-preserve-state-hook): New hooks.
21174         (internal-echo-keystrokes-prefix): New function.
21175         (prefix-command--needs-update, prefix-command--last-echo): New vars.
21176         (prefix-command-update, prefix-command-preserve): New functions.
21177         (reset-this-command-lengths): New compatibility definition.
21178         (universal-argument--mode): Call prefix-command-update.
21179         (universal-argument, universal-argument-more, negative-argument)
21180         (digit-argument): Call prefix-command-preserve-state.
21181         * src/keyboard.c: Call internal-echo-keystrokes-prefix to build
21182         the "prefix argument" to echo.
21183         (this_command_key_count_reset, before_command_key_count)
21184         (before_command_echo_length): Delete variables.
21185         (echo_add_key): Always add a space.
21186         (echo_char): Remove.
21187         (echo_dash): Don't give up when this_command_key_count is 0, since that
21188         is now the case after a prefix command.
21189         (echo_update): New function, extracted from echo_now.
21190         (echo_now): Use it.
21191         (add_command_key, read_char, record_menu_key): Remove old disabled code.
21192         (command_loop_1): Don't refrain from pushing an undo boundary when
21193         prefix-arg is set.  Remove other prefix-arg special case, now handled
21194         directly in the prefix commands instead.  But call echo_now if there's
21195         a prefix state to echo.
21196         (read_char, record_menu_key): Use echo_update instead of echo_char.
21197         (read_key_sequence): Use echo_now rather than echo_dash/echo_char.
21198         (Freset_this_command_lengths): Delete function.
21199         (syms_of_keyboard): Define Qinternal_echo_keystrokes_prefix.
21200         (syms_of_keyboard): Don't defsubr Sreset_this_command_lengths.
21201         * lisp/simple.el: Use those new hooks for C-u.
21202         (universal-argument--description): New function.
21203         (prefix-command-echo-keystrokes-functions): Use it.
21204         (universal-argument--preserve): New function.
21205         (prefix-command-preserve-state-hook): Use it.
21206         (command-execute): Call prefix-command-update if needed.
21207         * lisp/kmacro.el (kmacro-step-edit-prefix-commands)
21208         (kmacro-step-edit-prefix-index): Delete variables.
21209         (kmacro-step-edit-query, kmacro-step-edit-insert): Remove ad-hoc
21210         support for prefix arg commands.
21211         (kmacro-step-edit-macro): Don't bind kmacro-step-edit-prefix-index.
21212         * lisp/emulation/cua-base.el (cua--prefix-override-replay)
21213         (cua--shift-control-prefix): Use prefix-command-preserve-state.
21214         Remove now unused arg `arg'.
21215         (cua--prefix-override-handler, cua--prefix-repeat-handler)
21216         (cua--shift-control-c-prefix, cua--shift-control-x-prefix):
21217         Update accordingly.
21218         (cua--prefix-override-timeout): Don't call reset-this-command-lengths
21219         any more.
21220         (cua--keep-active, cua-exchange-point-and-mark): Don't set mark-active
21221         if the mark is not set.
21223 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
21225         Rework quoting in Emacs Lisp Introduction
21226         * doc/lispintro/emacs-lisp-intro.texi (Sample let Expression)
21227         (if in more detail, type-of-animal in detail, else): Rework the
21228         early example to use " rather than ' so that we don’t burden
21229         complete novices with the low-priority detail of text quoting style.
21230         (Complete zap-to-char, kill-region, Complete copy-region-as-kill)
21231         (kill-new function, kill-ring-yank-pointer)
21232         (Complete forward-sentence, Loading Files)
21233         (Code for current-kill, Code for current-kill, yank):
21234         Resurrect the Emacs 22 versions of the code, which uses grave
21235         quoting style in doc strings.
21236         (Complete zap-to-char): Mention how quoting works in doc strings.
21238         Setup quote display only if interactive
21239         * lisp/startup.el (command-line):
21240         Skip call to startup--setup-quote-display if noninteractive.
21241         Without this change, python-shell-prompt-validate-regexps-1
21242         fails in test/automated/python-tests.el when run in an
21243         en_US.utf8 locale on Fedora.
21245 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
21247         Use defalias at the top level
21248         * lisp/gnus/gnus-util.el (gnus-format-message):
21249         * lisp/net/tls.el (tls-format-message): Use defalias at the top level
21250         so as to make eval-and-compile unnecessary.  Thanks to Stefan Monnier.
21252 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
21254         terminal-init-w32console mimics command-line
21255         Problem reported by Eli Zaretskii.
21256         * lisp/startup.el (startup--setup-quote-display):
21257         New function, refactored from a part of ‘command-line’.
21258         (command-line): Use it.
21259         * lisp/term/w32console.el (terminal-init-w32console):
21260         Use it, so that this function stays consistent with ‘command-line’.
21262         Display replacement quotes with shadow glyphs
21263         * lisp/startup.el (command-line): When displaying ASCII
21264         replacements for curved quotes, use a shadow glyph instead of a
21265         regular one, to avoid ambiguity.
21267 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
21269         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Mask "Password:".
21271 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
21273         Docstring fixes re quotes in C code
21274         Fix some docstring quoting problems, mostly by escaping apostrophe.
21276 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
21278         Some Tramp password fixes
21279         * lisp/net/tramp.el (tramp-clear-passwd): Clear also the passwords
21280         of the hops.
21281         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Move "-p" "Password:"
21282         at the beginning of the command.  Otherwise, it could be
21283         interpreted as password prompt if the remote host echoes the
21284         command.
21285         (tramp-remote-coding-commands): Add "openssl enc -base64".
21287 2015-09-01  Dmitry Gutov  <dgutov@yandex.ru>
21289         Make vc-git-working-revision always return the commit hash
21290         * lisp/vc/vc-git.el (vc-git-working-revision):
21291         Return the commit hash (bug#21383).
21292         (vc-git--symbolic-ref): New function, extracted from above.
21293         (vc-git-mode-line-string): Use it.
21295 2015-09-01  K. Handa  <handa@gnu.org>
21297         Use the new type MFLTGlyphFT for MFLTGlyphString.glyphs
21298         * src/ftfont.c (MFLTGlyphFT): New type.
21299         (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_drive_otf)
21300         (ftfont_shape_by_flt): Make MFLTGlyphFT the actual type of
21301         elements in the array MFLTGlyphString.glyphs.
21303 2015-09-01  Stephen Leake  <stephen_leake@stephe-leake.org>
21305         Improve comments in elisp-mode.el, elisp-mode-tests.el
21306         * lisp/progmodes/elisp-mode.el: Clean up FIXMEs, comments.
21308         Delete Emacs 25 test in mode-local.el
21309         * lisp/cedet/mode-local.el (describe-mode-local-overload):
21310         Fix missed an edit in previous commit.
21312         Show all known mode-local overrides in *Help*
21313         * lisp/cedet/mode-local.el (describe-mode-local-overload):
21314         Assume Emacs 25. Add all known mode-local overrides.
21316 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
21318         * lisp/gnus/gnus-sum.el (gnus-summary-search-article):
21319         Ensure that the article where the search word is found is displayed
21320         and pointed to in the summary buffer.
21322 2015-08-31  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
21324         * lisp/newcomment.el (comment-dwim): Use `use-region-p'.
21325         When the region is active, but is empty (length 0), act as though
21326         the region was not active; that is, put a comment at the end of
21327         the line.  (Bug#21119)
21329 2015-08-31  Katsumi Yamaoka  <yamaoka@jpl.org>
21331         Port tls.el to older Emacs
21332         * lisp/net/tls.el (tls-format-message):
21333         Alias to format-message, or format if not available.
21334         (open-tls-stream): Use it.
21336 2015-08-31  Rüdiger Sonderfeld  <ruediger@c-plusplus.net>
21338         hideif.el: Recognize .h++ as C++ header
21339         * lisp/progmodes/hideif.el (hide-ifdef-header-regexp): Add .h++.
21341         isearch: Document character folding mode
21342         * lisp/isearch.el (isearch-forward):
21343         Mention `isearch-toggle-character-fold' in doc string.
21345 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
21347         Quoting fixes in ERC and Eshell
21348         * lisp/erc/erc-autoaway.el (erc-autoaway-set-away):
21349         * lisp/erc/erc-backend.el (define-erc-response-handler):
21350         * lisp/erc/erc-fill.el (erc-fill-static-center):
21351         * lisp/eshell/em-dirs.el (eshell-save-some-last-dir):
21352         * lisp/eshell/em-glob.el (eshell-glob-entries):
21353         * lisp/eshell/em-hist.el (eshell-save-some-history):
21354         * lisp/eshell/em-unix.el (eshell-remove-entries, eshell/rm)
21355         (eshell-shuffle-files):
21356         * lisp/eshell/esh-cmd.el (eshell-do-eval):
21357         * lisp/eshell/esh-proc.el (eshell-process-interact)
21358         (eshell-query-kill-processes):
21359         Respect ‘text-quoting-style’ in diagnostics and doc strings.
21361         Quoting fixes in Gnus
21362         * lisp/gnus/gnus-agent.el:
21363         (gnus-agent-possibly-synchronize-flags-server):
21364         * lisp/gnus/gnus-art.el (gnus-article-browse-delete-temp-files):
21365         * lisp/gnus/gnus-eform.el (gnus-edit-form):
21366         * lisp/gnus/gnus-group.el (gnus-group-edit-group)
21367         (gnus-group-nnimap-edit-acl):
21368         * lisp/gnus/gnus-topic.el (gnus-topic-edit-parameters):
21369         * lisp/gnus/mail-source.el (mail-source-delete-old-incoming):
21370         * lisp/gnus/message.el (message-strip-subject-encoded-words)
21371         (message-check-recipients, message-send-form-letter):
21372         * lisp/gnus/mm-decode.el (mm-display-part):
21373         * lisp/gnus/mm-uu.el (mm-uu-pgp-signed-extract-1):
21374         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
21375         (mml-smime-get-ldap-cert):
21376         * lisp/gnus/spam-report.el (spam-report-process-queue):
21377         Respect ‘text-quoting-style’ in diagnostics.
21378         * lisp/gnus/gnus-art.el (article-display-face)
21379         * lisp/gnus/gnus-fun.el (gnus-display-x-face-in-from):
21380         Use straight quoting in email.
21381         * lisp/gnus/rfc2231.el (rfc2231-decode-encoded-string):
21382         Escape apostrophes in doc strings.
21384         Quoting fixes in lisp mail, mh-e, net, url
21385         * lisp/mail/emacsbug.el (report-emacs-bug)
21386         (report-emacs-bug-hook): Use straight quotes in outgoing email,
21387         * lisp/mail/feedmail.el (feedmail-message-action-help-blat):
21388         * lisp/mail/rmail.el (rmail-unknown-mail-followup-to):
21389         * lisp/mail/rmailout.el (rmail-output-read-file-name):
21390         * lisp/net/imap.el (imap-interactive-login):
21391         * lisp/net/tls.el (open-tls-stream):
21392         * lisp/url/url-auth.el (url-register-auth-scheme):
21393         Respect ‘text-quoting-style’ in diagnostics.
21394         * lisp/mh-e/mh-e.el (mh-sortm-args):
21395         Quote docstring example using text quotes, not as a Lisp quote.
21397 2015-08-31  Stephen Leake  <stephen_leake@stephe-leake.org>
21399         Fix some byte-compiler warnings in EDE
21400         This fixes a bug that caused ede-generic-new-autoloader to overwrite the
21401         existing autoloader list, rather than add to it.
21402         * lisp/cedet/ede/auto.el (ede-project-class-files): Delete obsolete name
21403         argument to eieio class constructor.
21404         (ede-show-supported-projects): New.
21405         (ede-add-project-autoload): Replace obsolete `eieio-object-name-string'
21406         with (oref ... name).
21407         (ede-auto-load-project): Use slot name, not initarg key.
21408         * lisp/cedet/ede/generic.el (ede-generic-load)
21409         (ede-generic-find-matching-target): Use slot name, not initarg key.
21410         (ede-find-target): Use oref-default on class name.
21411         (ede-generic-new-autoloader): Delete obsolete name argument to eieio
21412         class constructor.
21413         (ede-enable-generic-projects): Make project type names unique.
21415 2015-08-31  Eli Zaretskii  <eliz@gnu.org>
21417         Fix directory accessibility tests for w32 network volumes
21418         * src/w32.c (faccessat): Don't fail with network volumes without a
21419         share.
21420         (w32_accessible_directory_p): Handle network volumes without a
21421         share.
21423         Fix handling long file names in readdir on MS-Windows
21424         * src/w32.c (sys_readdir): Append "\*" to the directory after
21425         converting it to UTF-16/ANSI, not before, to avoid overflowing the
21426         260-character limit on file names in filename_to_utf16/ansi.
21428         Make file-accessible-directory-p reliable on MS-Windows
21429         * src/w32.c (w32_accessible_directory_p): New function.
21430         * src/w32.h (w32_accessible_directory_p): Add prototype.
21431         * src/fileio.c (file_accessible_directory_p) [WINDOWSNT]: Call
21432         w32_accessible_directory_p to test a directory for accessibility
21433         by the current user.  (Bug#21346)
21434         (Ffile_accessible_directory_p): Remove the w32 specific caveat
21435         from the doc string.
21437 2015-08-31  Martin Rudalics  <rudalics@gmx.at>
21439         Don't call do_pending_window_change in signal handlers (Bug#21380)
21440         * src/gtkutil.c (xg_frame_resized):
21441         * src/xterm.c (x_set_window_size):
21442         * src/w32term.c (x_set_window_size): Don't call
21443         do_pending_window_change.
21445 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
21447         Quoting fixes in lisp/org
21448         * lisp/org/org-agenda.el (org-search-view, org-todo-list)
21449         (org-tags-view):
21450         * lisp/org/org-capture.el (org-capture-mode)
21451         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
21452         (org-ctags-ask-append-topic):
21453         * lisp/org/org.el (org-time-string-to-time)
21454         (org-time-string-to-absolute):
21455         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
21456         (org-ctags-ask-append-topic):
21457         * lisp/org/org.el (org-time-string-to-time)
21458         (org-time-string-to-absolute):
21459         Respect ‘text-quoting-style’ in diagnostics.
21460         * lisp/org/org-agenda.el (org-agenda-custom-commands)
21461         (org-agenda-dim-blocked-tasks): Plural of TODO is TODOs, not TODO’s.
21462         * lisp/org/org-capture.el (org-capture-fill-template):
21463         Avoid contraction in output file that might be ASCII.
21464         * lisp/org/org-compat.el (format-message):
21465         Define if not already defined, for backward compatibility.
21466         * lisp/org/org-src.el (org-edit-src-save):
21467         * lisp/org/org.el (org-cycle, org-ctrl-c-ctrl-c):
21468         Escape apostrophes in diagnostics.
21470         Treat “instead” strings as docstrings
21471         * lisp/emacs-lisp/bytecomp.el (byte-compile-form):
21472         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
21473         Substitute quotes in instead strings.
21475 2015-08-31  Nicolas Petton  <nicolas@petton.fr>
21477         Better documentation of seq-let
21478         * doc/lispref/sequences.texi (Sequence Functions): Rephrase the
21479         documentation of seq-let.
21481 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
21483         * lisp/international/ccl.el: Fix quoting.
21485         Quoting fixes in lisp/international and lisp/leim
21486         * lisp/international/ccl.el (ccl-dump, ccl-dump-call):
21487         * lisp/international/ja-dic-utl.el (skkdic-lookup-key):
21488         * lisp/international/mule-cmds.el:
21489         (select-safe-coding-system-interactively, leim-list-file-name):
21490         * lisp/international/quail.el (quail-use-package, quail-help):
21491         * lisp/international/titdic-cnv.el (tit-process-header)
21492         (miscdic-convert):
21493         Respect text quoting style in doc strings and diagnostics.
21494         * lisp/international/quail.el (lisp/international/quail.el):
21495         * lisp/leim/quail/ethiopic.el ("ethiopic"):
21496         Escape apostrophes in doc strings.
21498         Make ‘text-quoting-style’ a plain defvar
21499         It doesn’t need customization, as it’s likely useful only by experts.
21500         Suggested by Stefan Monnier in:
21501         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg01020.html
21502         * lisp/cus-start.el: Remove doc.c section for builtin customized vars.
21504         Quoting fixes in lisp/textmodes
21505         * lisp/textmodes/bibtex.el (bibtex-validate)
21506         (bibtex-validate-globally, bibtex-search-entries):
21507         * lisp/textmodes/ispell.el (ispell-command-loop):
21508         * lisp/textmodes/page-ext.el (search-pages, pages-directory):
21509         * lisp/textmodes/texinfmt.el (texinfmt-version)
21510         (texinfo-format-region, texinfo-format-buffer-1):
21511         * lisp/textmodes/two-column.el (2C-split):
21512         Respect text quoting style in doc strings and diagnostics.
21513         * lisp/textmodes/conf-mode.el (conf-mode-map, conf-quote-normal):
21514         * lisp/textmodes/sgml-mode.el (sgml-specials, sgml-mode):
21515         Escape apostrophes in doc strings.
21517         Documentation fixes re quotes
21518         Prefer curved quotes in examples if users will typically see
21519         curved quotes when the examples run.
21520         Mention format-message when appropriate.
21521         Don’t use @code in examples.
21522         Quote an apostrophe with @kbd.
21524         Quoting fixes in lisp/progmodes
21525         * lisp/progmodes/cc-engine.el (c-bos-report-error):
21526         * lisp/progmodes/cpp.el (cpp-edit-reset):
21527         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
21528         * lisp/progmodes/etags.el (etags-tags-apropos-additional)
21529         (etags-tags-apropos, list-tags, tags-apropos):
21530         * lisp/progmodes/executable.el (executable-set-magic):
21531         * lisp/progmodes/octave.el (octave-sync-function-file-names)
21532         (octave-help, octave-find-definition-default-filename)
21533         (octave-find-definition):
21534         Respect text quoting style in doc strings and diagnostics.
21535         * lisp/progmodes/cc-langs.el (c-populate-syntax-table):
21536         * lisp/progmodes/verilog-mode.el (verilog-auto-reset-widths):
21537         * lisp/progmodes/vhdl-mode.el (vhdl-electric-quote):
21538         Escape apostrophes in doc strings.
21539         * lisp/progmodes/cmacexp.el (c-macro-expansion):
21540         Use straight quoting in ASCII comment.
21541         * lisp/progmodes/idlwave.el (idlwave-auto-fill-split-string)
21542         (idlwave-pad-keyword):
21543         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate)
21544         (vhdl-electric-open-bracket, vhdl-electric-close-bracket):
21545         (vhdl-electric-semicolon, vhdl-electric-comma)
21546         (vhdl-electric-period, vhdl-electric-equal):
21547         Use directed quotes in diagnostics and doc strings.
21549 2015-08-30  Xue Fuqiao  <xfq.free@gmail.com>
21551         Minor documentation and NEWS tweak
21552         * doc/lispintro/emacs-lisp-intro.texi (fwd-para let):
21553         Add an index entry.
21554         * etc/NEWS: Fix a typo in character-fold-to-regexp.
21556 2015-08-30  Michael Albinus  <michael.albinus@gmx.de>
21558         * lisp/net/tramp-sh.el (tramp-convert-file-attributes):
21559         Revert patch from 2015-08-24.  Tramp shall behave like for local files.
21560         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
21561         Adapt test.
21563 2015-08-30  Paul Eggert  <eggert@cs.ucla.edu>
21565         Text quoting fixes in cedet, emulation, emacs-lisp
21566         * lisp/cedet/ede.el (ede-check-project-directory):
21567         * lisp/cedet/semantic/analyze/debug.el
21568         (semantic-analyzer-debug-insert-include-summary):
21569         * lisp/cedet/semantic/bovine/c.el (semantic-c-describe-environment):
21570         * lisp/cedet/semantic/decorate/include.el
21571         (semantic-decoration-unknown-include-describe)
21572         (semantic-decoration-all-include-summary):
21573         * lisp/cedet/semantic/ia.el (semantic-ia-fast-jump):
21574         * lisp/emulation/edt.el (edt-load-keys):
21575         * lisp/emulation/viper-cmd.el
21576         (viper-display-current-destructive-command)
21577         (viper-query-replace, viper-brac-function):
21578         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-compile):
21579         * lisp/emulation/viper-macs.el (viper-unrecord-kbd-macro):
21580         Respect text quoting style in doc string or diagnostic.
21581         * lisp/cedet/mode-local.el (describe-mode-local-overload):
21582         Use format-message to avoid overtranslating quotes.
21583         * lisp/emacs-lisp/checkdoc.el (checkdoc-in-sample-code-p):
21584         Escape an apostrophe in a docstring.
21585         * lisp/emacs-lisp/warnings.el (lwarn): Fix doc string.
21587 2015-08-29  Daniel Colascione  <dancol@dancol.org>
21589         Fix which-func for curly quotes: look for symbol, not message
21590         * lisp/progmodes/which-func.el (which-func-ff-hook): Look for new
21591         imenu-unavailable error symbol instead of trying to match message
21592         exactly.
21593         * lisp/imenu.el (imenu-unavailable): New error.
21594         (imenu-unavailable-error): New function.
21596 2015-08-29  Eli Zaretskii  <eliz@gnu.org>
21598         Fix Python tests on MS-Windows
21599         * test/automated/python-tests.el
21600         (python-shell-calculate-command-1): Run python-shell-interpreter
21601         through shell-quote-argument before comparing with what
21602         python-shell-calculate-command returns.
21603         (python-shell-calculate-pythonpath-1)
21604         (python-shell-calculate-pythonpath-2)
21605         (python-shell-calculate-process-environment-2): Use path-separator
21606         instead of a literal ':'.
21607         (python-shell-calculate-exec-path-2)
21608         (python-shell-calculate-exec-path-3)
21609         (python-shell-calculate-exec-path-4)
21610         (python-shell-with-environment-1)
21611         (python-shell-with-environment-2): Run "/env/bin" through
21612         expand-file-name before comparing with exec-path.  (Bug#21375)
21614 2015-08-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
21616         Use Core Text types/functions/variables/enumerators directly
21617         * src/macfont.h (FontDescriptorRef, FontRef, FontSymbolicTraits)
21618         (CharacterCollection): Remove typedefs.  All uses replaced with
21619         definitions.
21620         (MAC_FONT_NAME_ATTRIBUTE, MAC_FONT_FAMILY_NAME_ATTRIBUTE)
21621         (MAC_FONT_TRAITS_ATTRIBUTE, MAC_FONT_SIZE_ATTRIBUTE)
21622         (MAC_FONT_CASCADE_LIST_ATTRIBUTE)
21623         (MAC_FONT_CHARACTER_SET_ATTRIBUTE, MAC_FONT_LANGUAGES_ATTRIBUTE)
21624         (MAC_FONT_FORMAT_ATTRIBUTE, MAC_FONT_SYMBOLIC_TRAIT)
21625         (MAC_FONT_WEIGHT_TRAIT, MAC_FONT_WIDTH_TRAIT)
21626         (MAC_FONT_SLANT_TRAIT): Remove macros.  All uses replaced with
21627         definitions.
21628         (MAC_FONT_TRAIT_ITALIC, MAC_FONT_TRAIT_BOLD)
21629         (MAC_FONT_TRAIT_MONO_SPACE, MAC_FONT_TRAIT_COLOR_GLYPHS)
21630         (MAC_FONT_FORMAT_BITMAP)
21631         (MAC_CHARACTER_COLLECTION_IDENTITY_MAPPING)
21632         (MAC_CHARACTER_COLLECTION_ADOBE_JAPAN1): Remove enumerators.
21633         All uses replaced with definitions.
21634         (kCTFontTraitItalic, kCTFontTraitBold, kCTFontTraitMonoSpace)
21635         (kCTFontTraitColorGlyphs, kCTCharacterCollectionIdentityMapping)
21636         (kCTCharacterCollectionAdobeJapan1 kCTFontOrientationDefault):
21637         Add compatibility enumerators for older versions.
21638         (mac_font_descriptor_create_with_attributes)
21639         (mac_font_descriptor_create_matching_font_descriptors)
21640         (mac_font_descriptor_create_matching_font_descriptor)
21641         (mac_font_descriptor_copy_attribute)
21642         (mac_font_descriptor_supports_languages)
21643         (mac_font_create_with_name, mac_font_get_size)
21644         (mac_font_copy_family_name, mac_font_copy_character_set)
21645         (mac_font_get_glyphs_for_characters, mac_font_get_ascent)
21646         (mac_font_get_descent, mac_font_get_leading)
21647         (mac_font_get_underline_position)
21648         (mac_font_get_underline_thickness, mac_font_copy_graphics_font)
21649         (mac_font_copy_non_synthetic_table): Remove macros.  All uses
21650         replaced with definitions.
21651         (mac_font_create_preferred_family_for_attributes)
21652         (mac_font_get_advance_width_for_glyph)
21653         (mac_font_get_bounding_rect_for_glyph)
21654         (mac_font_create_available_families, mac_font_shape):
21655         Remove macros for renamed functions.
21656         (mac_nsctfont_copy_font_descriptor): Remove unused macro.
21657         * src/macfont.m (mac_font_descriptor_supports_languages):
21658         Rename from mac_ctfont_descriptor_supports_languages.
21659         (mac_font_create_preferred_family_for_attributes): Rename from
21660         mac_ctfont_create_preferred_family_for_attributes.
21661         (mac_font_get_advance_width_for_glyph): Rename from
21662         mac_ctfont_get_advance_width_for_glyph.
21663         Use kCTFontOrientationDefault also for older versions.
21664         (mac_font_get_bounding_rect_for_glyph): Rename from
21665         mac_ctfont_get_bounding_rect_for_glyph.
21666         Use kCTFontOrientationDefault also for older versions.
21667         (mac_font_create_available_families): Rename from
21668         mac_ctfont_create_available_families.
21669         (mac_font_equal_in_postscript_name): Rename from
21670         mac_ctfont_equal_in_postscript_name.  All uses changed.
21671         (mac_font_create_line_with_string_and_font): Rename from
21672         mac_ctfont_create_line_with_string_and_font.  All uses changed.
21673         (mac_font_shape): Rename from mac_ctfont_shape.
21674         (mac_font_family_compare): Remove unused declaration.
21676 2015-08-29  Paul Eggert  <eggert@cs.ucla.edu>
21678         Fix minor text quoting in calc, calendar, vc
21679         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
21680         * lisp/calc/calc-help.el (calc-j-prefix-help):
21681         * lisp/calc/calc-misc.el (calc-help):
21682         * lisp/calc/calc.el (calc-algebraic-mode, calc-mode):
21683         Escape an apostrophe in a docstring.
21684         * lisp/calc/calc-forms.el (calc-hms-notation):
21685         * lisp/calc/calc-mode.el (calc-display-raw, calc-algebraic-mode):
21686         Escape an apostrophe in a diagnostic.
21687         * lisp/calc/calc-misc.el (calc-help):
21688         * lisp/calendar/diary-lib.el (diary-include-files):
21689         * lisp/calendar/todo-mode.el (todo-prefix, todo-item-mark):
21690         * lisp/vc/diff-mode.el (diff-delete-trailing-whitespace):
21691         * lisp/vc/ediff-diff.el (ediff-same-contents):
21692         * lisp/vc/ediff-merg.el (ediff-re-merge):
21693         * lisp/vc/ediff-ptch.el (ediff-patch-file-internal):
21694         * lisp/vc/ediff-util.el (ediff-test-save-region)
21695         (ediff-status-info):
21696         * lisp/vc/ediff.el (ediff-merge-revisions)
21697         (ediff-merge-revisions-with-ancestor):
21698         * lisp/vc/pcvs.el (cvs-mode-checkout, cvs-vc-command-advice):
21699         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
21700         Respect text quoting style in doc string or diagnostic.
21701         * lisp/calc/calc-prog.el (calc-kbd-push, calc-kbd-pop):
21702         * lisp/vc/add-log.el (change-log-goto-source):
21703         Avoid double-formatting.
21704         * lisp/vc/ediff-init.el (format-message):
21705         New backward-compatibility alias.
21707 2015-08-28  Paul Eggert  <eggert@cs.ucla.edu>
21709         Fix minor text quoting problems in lisp top level
21710         * lisp/apropos.el (apropos-describe-plist):
21711         * lisp/cus-theme.el (customize-themes):
21712         * lisp/dired.el (dired-log):
21713         * lisp/help-fns.el (describe-variable):
21714         * lisp/hexl.el (hexl-insert-multibyte-char):
21715         * lisp/info.el (Info-finder-find-node):
21716         * lisp/json.el (json-read-string):
21717         * lisp/novice.el (disabled-command-function)
21718         (disabled-command-function):
21719         * lisp/startup.el (normal-mouse-startup-screen):
21720         * lisp/woman.el (WoMan-log, WoMan-warn):
21721         Respect text quoting style in doc string or diagnostic.
21722         * lisp/replace.el (replace-character-fold):
21723         * src/syntax.c (Fmodify_syntax_entry):
21724         Escape an apostrophe in a docstring.
21725         * lisp/tempo.el (tempo-define-template):
21726         Remove confusing apostrophe from docstring.
21727         * lisp/whitespace.el (whitespace-mark-x):
21728         Use directed quotes in docstring.
21730 2015-08-28  Simen Heggestøyl  <simenheg@gmail.com>
21732         Fix indentation rule in css-mode
21733         * lisp/textmodes/css-mode.el (css-smie-rules): Fix indentation of
21734         brackets in presence of pseudo-selectors.  (Bug#21328)
21736 2015-08-28  Eli Zaretskii  <eliz@gnu.org>
21738         Fix a bug in recording a macro while flyspell-mode is active
21739         * lisp/subr.el (sit-for): Don't call read-event when recording a
21740         macro.  (Bug#21329)
21742 2015-08-27  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
21744         Tweak startup screen quoting
21745         * lisp/startup.el (normal-splash-screen): Use standard
21746         "M-" abbrevation rather than a confusingly-different one.
21747         (normal-no-mouse-startup-screen): Follow ‘text-quoting-style’.
21749 2015-08-27  Paul Eggert  <eggert@cs.ucla.edu>
21751         Add test case for ‘format’ bug and refactor
21752         * src/editfns.c (styled_format): Refactor internally, mostly by
21753         moving declarations closer to uses.  This should not affect behavior.
21754         * test/automated/textprop-tests.el (textprop-tests-format): New test.
21756         Fix ‘format’ bug with property offsets
21757         * src/editfns.c (styled_format): Fix recently-introduced ‘format’
21758         bug in calculating string property offsets (Bug#21351).
21760         Use straight quotes in lib-src diagnostics
21761         These auxiliary programs can’t use Emacs’s text-quoting-style,
21762         and it’s too much trouble to redo that mechanism by hand.
21763         So just use straight quotes for now.
21764         * lib-src/ebrowse.c (main):
21765         * lib-src/emacsclient.c (decode_options, main):
21766         * lib-src/etags.c (Ada_help, default_C_help, Cplusplus_help)
21767         (Forth_help, HTML_help, Lisp_help, Makefile_help, Objc_help)
21768         (Perl_help, PHP_help, Python_help, Scheme_help, TeX_help, auto_help)
21769         (none_help, print_language_names, print_help, add_regex)
21770         (suggest_asking_for_help):
21771         * lib-src/make-docfile.c (write_c_args, scan_c_stream):
21772         Use straight quotes in diagnostics.
21774         ‘text-quoting-style’ fixes for admin
21775         * admin/admin.el (cusver-scan, cusver-check):
21776         * admin/authors.el (authors-canonical-file-name):
21777         * admin/bzrmerge.el (bzrmerge-missing):
21778         Respect ‘text-quoting-style’ in diagnostics.
21780 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
21782         Assume GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS
21783         This removes the need for GCPRO1 etc.  Suggested by Stefan Monnier in:
21784         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00918.html
21785         * doc/lispref/internals.texi (Writing Emacs Primitives):
21786         * etc/NEWS:
21787         Document the change.
21788         * src/alloc.c (gcprolist, dump_zombies, MAX_ZOMBIES, zombies)
21789         (nzombies, ngcs, avg_zombies, max_live, max_zombies, avg_live)
21790         (Fgc_status, check_gcpros, relocatable_string_data_p, gc-precise):
21791         * src/bytecode.c (mark_byte_stack) [BYTE_MARK_STACK]:
21792         * src/eval.c (gcpro_level) [DEBUG_GCPRO]:
21793         * src/lisp.h (struct handler.gcpro, struct gcpro, GC_MARK_STACK)
21794         (GC_USE_GCPROS_AS_BEFORE, GC_MAKE_GCPROS_NOOPS)
21795         (GC_MARK_STACK_CHECK_GCPROS, GC_USE_GCPROS_CHECK_ZOMBIES)
21796         (BYTE_MARK_STACK, GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5, GCPRO6)
21797         (GCPRO7, UNGCPRO, RETURN_UNGCPRO):
21798         Remove.  All uses removed.  The code now assumes
21799         GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS.
21800         * src/bytecode.c (relocate_byte_stack):
21801         Rename from unmark_byte_stack, since it now only relocates.
21802         All callers changed.
21803         * src/frame.c (make_frame): Add an IF_LINT to pacify GCC 5.2
21804         with GCPROs removed.
21805         * src/systime.h: Use EMACS_LISP_H as the canary instead of GCPRO1.
21806         * test/automated/finalizer-tests.el (finalizer-basic)
21807         (finalizer-circular-reference, finalizer-cross-reference)
21808         (finalizer-error):
21809         * test/automated/generator-tests.el (cps-test-iter-close-finalizer):
21810         Remove tests, as they depend on gc-precise.
21812 2015-08-26  Nicolas Petton  <nicolas@petton.fr>
21814         Improve seq-concatenate for new sequence types
21815         Use the new `seq-into-sequence' in seqs passed to `seq-concatenate' to
21816         ensure that concatenation happens on sequences only.  This makes it
21817         possible to use `seq-concatenate' for new types of seqs.
21818         * lisp/emacs-lisp/seq.el (seq-into-sequence, seq-concatenate):
21819         New function used in `seq-concatenate'.
21820         * test/automated/seq-tests.el (test-seq-into-sequence): New unit test
21821         for seq-into-sequence.
21823 2015-08-26  Stephen Leake  <stephen_leake@stephe-leake.org>
21825         Add mode local overrides to xref-find-definitions
21826         * lisp/cedet/mode-local.el (xref-mode-local--override-present)
21827         (xref-mode-local-overload): New; add mode local overrides to
21828         xref-find-definitions.
21829         * test/automated/elisp-mode-tests.el: Add mode local override tests.
21830         (xref-elisp-test-run): Handle indented defuns.
21831         (xref-elisp-generic-*): Improve doc strings.
21832         * lisp/progmodes/elisp-mode.el (elisp-xref-find-def-functions): New.
21833         (elisp--xref-find-definitions): Use it.
21835         Add mode local overrides to describe-function
21836         * lisp/cedet/mode-local.el (describe-mode-local-overload):
21837         New; add mode local overrides to describe-function.
21838         * etc/NEWS: Document change.
21840 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
21842         Prefer straight quoting in some etc text files
21843         These files are plain text and might be used by non-Emacs apps.
21844         They’re mostly ASCII, so just use straight quotes.
21846         Fix quoting in ‘message_with_string’
21847         * src/nsfont.m (nsfont_open): Use directed quotes in format; they
21848         should work now.
21849         * src/xdisp.c (message_to_stderr): New function, refactored from
21850         part of ‘message3_nolog’.
21851         (message3_nolog): Use it.
21852         (message_with_string): Use it.  Don’t mishandle NUL bytes when
21853         noninteractive.  Prefer AUTO_STRING when it’s most likely faster.
21854         Use ‘format-message’, not ‘format’, so that quotes are translated.
21856 2015-08-26  Eli Zaretskii  <eliz@gnu.org>
21858         Mention false positives of file-accessible-directory on w32
21859         * src/fileio.c (Ffile_accessible_directory_p): Doc fix.
21860         (Bug#21346)
21862 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
21864         Treat error strings as help
21865         * src/print.c (print_error_message): Translate quotes and command
21866         keys in errmsg so that users see, e.g., "Symbol’s value as
21867         variable is void: foo" when text-quoting-style is curved.
21869 2015-08-26  Michael Albinus  <michael.albinus@gmx.de>
21871         * lisp/net/tramp-cache.el (top): Use `message', not `format-message'.
21873 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
21875         Top-level elisp files respect ‘text-quoting-style’
21876         In top-level elisp files, use format-message in diagnostic formats,
21877         so that they follow user preference as per ‘text-quoting-style’
21878         rather than being hard-coded to quote `like this'.
21879         * lisp/allout.el (allout-get-configvar-values):
21880         * lisp/apropos.el (apropos-symbols-internal):
21881         * lisp/dired-aux.el (dired-do-shell-command, dired-create-files)
21882         (dired-do-create-files-regexp, dired-create-files-non-directory):
21883         * lisp/dired-x.el (dired-do-run-mail):
21884         * lisp/dired.el (dired-log, dired-dnd-handle-local-file):
21885         * lisp/disp-table.el (standard-display-european):
21886         * lisp/find-dired.el (find-dired):
21887         * lisp/forms.el (forms-mode):
21888         * lisp/ido.el (ido-buffer-internal):
21889         * lisp/info.el (Info-index-next):
21890         * lisp/outline.el (outline-invent-heading):
21891         * lisp/printing.el (pr-ps-outfile-preprint, pr-i-ps-send):
21892         * lisp/proced.el (proced-log):
21893         * lisp/ps-print.el (ps-print-preprint, ps-get-size):
21894         * lisp/recentf.el (recentf-open-files, recentf-save-list):
21895         * lisp/savehist.el (savehist-save):
21896         * lisp/server.el (server-ensure-safe-dir):
21897         * lisp/ses.el (ses-rename-cell):
21898         * lisp/simple.el (list-processes--refresh):
21899         * lisp/startup.el (command-line):
21900         * lisp/strokes.el (strokes-unset-last-stroke)
21901         (strokes-execute-stroke):
21902         Use format-message so that quotes are restyled.
21903         * lisp/cus-edit.el (custom-raised-buttons, customize-browse):
21904         Don’t quote ‘raised’.
21905         * lisp/descr-text.el (describe-char):
21906         * lisp/dirtrack.el (dirtrack-debug-message):
21907         * lisp/hexl.el (hexl-insert-multibyte-char):
21908         Apply substitute-command-keys to help string.
21909         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
21910         (wdired-do-perm-changes):
21911         Let dired-log do the formatting.
21913 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
21915         Go back to grave quoting in Tramp
21916         * lisp/net/tramp-adb.el:
21917         * lisp/net/tramp-cache.el:
21918         * lisp/net/tramp-compat.el:
21919         * lisp/net/tramp-gvfs.el:
21920         * lisp/net/tramp-gw.el:
21921         * lisp/net/tramp-sh.el:
21922         * lisp/net/tramp-smb.el:
21923         * lisp/net/tramp.el:
21924         Stick with grave quoting in diagnostics strings.  This is more
21925         portable to older Emacs, desirable for Tramp.
21926         * lisp/net/tramp-cache.el: Use ‘format-message’, not ‘format’,
21927         for diagnostic that needs requoting.
21928         * lisp/net/tramp-compat.el (format-message):
21929         Fall back on simple ‘format’, since that’s good enough now.
21931         Go back to grave quoting in Gnus
21932         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
21933         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
21934         (gnus-agent-fetch-headers):
21935         * lisp/gnus/gnus-int.el (gnus-start-news-server):
21936         * lisp/gnus/gnus-registry.el:
21937         (gnus-registry--split-fancy-with-parent-internal)
21938         (gnus-registry-post-process-groups):
21939         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
21940         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
21941         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
21942         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
21943         * lisp/gnus/spam.el (spam-check-blackholes):
21944         Stick with grave quoting in diagnostics strings.  This is more
21945         portable to older Emacs, desirable for Gnus.
21947         Fix customization of text-quoting-style
21948         * lisp/cus-edit.el (custom-guess-type, custom-variable-documentation):
21949         * lisp/wid-edit.el (widget-docstring):
21950         Get raw docstring here since it’s cooked later and should not be
21951         cooked twice.
21952         * lisp/cus-edit.el (custom-group-value-create):
21953         Cook the docstring before inserting it.
21954         * lisp/cus-start.el (text-quoting-style): Quote the customization
21955         docstrings according to the new rules.  Give curved examples.
21957         format-message now curves ` and '
21958         That way, the caller doesn’t have to use curved quotes to
21959         get diagnostics that match the text-quoting-style preferences.
21960         Suggested by Dmitry Gutov in:
21961         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00893.html
21962         This means we no longer need %qs, so remove that format.
21963         While we’re at it, fix an unlikely bug and lessen the pressure
21964         on the garbage collector by processing the string once rather
21965         than twice in the usual case.
21966         * doc/lispref/strings.texi (Formatting Strings):
21967         * etc/NEWS: Document this.
21968         * lisp/subr.el (format-message): Remove; now done in C.
21969         * src/callint.c (Fcall_interactively):
21970         * src/editfns.c (Fmessage, Fmessage_box):
21971         Use Fformat_message instead of Finternal__text_restyle
21972         followed by Fformat.
21973         * src/doc.c (LSQM, RSQM): Remove; all uses changed to use
21974         uLSQM and uRSQM.
21975         (Fsubstitute_command_keys): Prefer AUTO_STRING to build_string
21976         when pure ASCII now suffices.  Fix unlikely bug when parsing
21977         unibyte string containing non-ASCII bytes.  Use inline code
21978         rather than memcpy, as it’s a tiny number of bytes.
21979         (Finternal__text_restyle): Remove; no longer used.
21980         (syms_of_doc): Don’t declare it.
21981         * src/editfns.c (Fformat): Rewrite in terms of new function
21982         ‘styled_format’.
21983         (Fformat_message): New function, moved here from subr.el.
21984         (styled_format): New function, with the old guts of Fformat,
21985         except it now optionally transliterates quotes, and it transliterates
21986         traditional grave accent and apostrophe quoting as well.
21987         Remove recently-added q flag; no longer needed or used.
21988         (syms_of_editfns): Define format-message.
21989         * src/lisp.h (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
21990         Remove; no longer need to be global symbols.
21991         * src/xdisp.c (vadd_to_log): Use Fformat_message, not Fformat,
21992         so that callers can use `%s'.
21993         * src/image.c (image_size_error, xbm_load_image, xbm_load)
21994         (xpm_load, pbm_load, png_load_body, jpeg_load_body, tiff_load)
21995         (gif_load, imagemagick_load_image, imagemagick_load, svg_load)
21996         (svg_load_image, gs_load, x_kill_gs_process):
21997         * src/lread.c (load_warn_old_style_backquotes):
21998         * src/xfaces.c (load_pixmap):
21999         * src/xselect.c (x_clipboard_manager_error_1):
22000         Use `%s' instead of %qs in formats.
22002 2015-08-25  Eli Zaretskii  <eliz@gnu.org>
22004         Minor fixes in doc/emacs/search.texi
22005         * doc/emacs/search.texi (Basic Isearch): Fix a typo.
22006         (Special Isearch): Use @w{} to generate several consecutive spaces
22007         with Texinfo 6.  (Bug#21345)
22009 2015-08-25  Michael Albinus  <michael.albinus@gmx.de>
22011         * lisp/net/tramp-sh.el (tramp-awk-encode, tramp-awk-decode)
22012         (tramp-awk-coding-test): New defconsts.
22013         (tramp-remote-coding-commands): Use them.
22014         (tramp-find-inline-encoding): Check for Perl only if necessary.
22016 2015-08-25  Xue Fuqiao  <xfq.free@gmail.com>
22018         * doc/lispintro/emacs-lisp-intro.texi (Run a Program): Add some
22019         index entries for the special form `quote'.
22021 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
22023         Spelling fixes
22025         Gnus format-message typo fix
22026         * lisp/gnus/gnus-util.el (gnus-format-message):
22027         Fix typo when running in older Emacs.
22029         Prefer directed to neutral quotes in docstings and diagnostics.
22030         In docstrings, escape apostrophes that would otherwise be translated
22031         to curved quotes using the newer, simpler rules.
22032         * admin/unidata/unidata-gen.el (unidata-gen-table):
22033         * lisp/align.el (align-region):
22034         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet):
22035         * lisp/bookmark.el (bookmark-default-annotation-text):
22036         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
22037         * lisp/calc/calc-lang.el (math-read-giac-subscr)
22038         (math-read-math-subscr):
22039         * lisp/calc/calc-misc.el (report-calc-bug):
22040         * lisp/calc/calc-prog.el (calc-fix-token-name)
22041         (calc-read-parse-table-part):
22042         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
22043         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
22044         * lisp/dabbrev.el (dabbrev-expand):
22045         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
22046         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
22047         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
22048         * lisp/emulation/viper-cmd.el (viper-toggle-search-style):
22049         * lisp/erc/erc-button.el (erc-nick-popup):
22050         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login):
22051         * lisp/eshell/em-dirs.el (eshell/cd):
22052         * lisp/eshell/em-glob.el (eshell-glob-regexp):
22053         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
22054         * lisp/eshell/esh-arg.el (eshell-parse-arguments):
22055         * lisp/eshell/esh-opt.el (eshell-show-usage):
22056         * lisp/files-x.el (modify-file-local-variable):
22057         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer)
22058         (filesets-update-pre010505):
22059         * lisp/find-cmd.el (find-generic, find-to-string):
22060         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
22061         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
22062         (gnus-agent-fetch-headers):
22063         * lisp/gnus/gnus-int.el (gnus-start-news-server):
22064         * lisp/gnus/gnus-registry.el:
22065         (gnus-registry--split-fancy-with-parent-internal):
22066         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
22067         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
22068         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
22069         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
22070         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
22071         * lisp/gnus/spam.el (spam-check-blackholes):
22072         * lisp/mail/feedmail.el (feedmail-run-the-queue):
22073         * lisp/mpc.el (mpc-playlist-rename):
22074         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
22075         * lisp/net/mairix.el (mairix-widget-create-query):
22076         * lisp/net/tramp-cache.el:
22077         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
22078         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
22079         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
22080         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
22081         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
22082         (org-babel-goto-named-result):
22083         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
22084         * lisp/org/ob-ref.el (org-babel-ref-resolve):
22085         * lisp/org/org-agenda.el (org-agenda-prepare):
22086         * lisp/org/org-bibtex.el (org-bibtex-fields):
22087         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
22088         (org-clock-resolve):
22089         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
22090         * lisp/org/org-habit.el (org-habit-parse-todo):
22091         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
22092         (org-mouse-context-menu):
22093         * lisp/org/org-table.el (org-table-edit-formulas):
22094         * lisp/org/ox.el (org-export-async-start):
22095         * lisp/play/dunnet.el (dun-score, dun-help, dun-endgame-question)
22096         (dun-rooms, dun-endgame-questions):
22097         * lisp/progmodes/ada-mode.el (ada-goto-matching-start):
22098         * lisp/progmodes/ada-xref.el (ada-find-executable):
22099         * lisp/progmodes/antlr-mode.el (antlr-options-alists):
22100         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
22101         (flymake-start-syntax-check-process):
22102         * lisp/progmodes/python.el (python-define-auxiliary-skeleton):
22103         * lisp/progmodes/sql.el (sql-comint):
22104         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
22105         * lisp/server.el (server-get-auth-key):
22106         * lisp/subr.el (version-to-list):
22107         * lisp/textmodes/reftex-ref.el (reftex-label):
22108         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
22109         * lisp/vc/ediff-diff.el (ediff-same-contents):
22110         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
22111         * test/automated/tramp-tests.el (tramp-test33-asynchronous-requests):
22112         Use directed rather than neutral quotes in diagnostics.
22114         Treat ' like ’ even when not matching `
22115         This is simpler and easier to explain, and should encourage better
22116         typography.  Do this in Electric Quote mode and when translating
22117         quotes in docstrings.  Inspired by a suggestion by Dmitry Gutov in:
22118         https://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00806.html
22119         * doc/emacs/text.texi (Quotation Marks):
22120         * doc/lispref/help.texi (Keys in Documentation):
22121         * etc/NEWS:
22122         Document this.
22123         * lisp/electric.el (electric-quote-post-self-insert-function):
22124         * src/doc.c (Fsubstitute_command_keys):
22125         Always treat ' like ’ even when not matched by an open quote.
22127 2015-08-25  Glenn Morris  <rgm@gnu.org>
22129         * doc/emacs/cal-xtra.texi (Holiday Customizing): Fix typo in example.
22130         * lisp/calendar/holidays.el (calendar-holidays): Fix doc typo.
22132 2015-08-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
22134         * src/macfont.m (macfont_create_family_with_symbol):
22135         Accept localized names.
22137 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
22139         Tramp diagnostics as per ‘text-quoting-style’
22140         * lisp/net/tramp-adb.el (tramp-adb-handle-file-truename)
22141         (tramp-adb-get-ls-command, tramp-adb-handle-make-directory)
22142         (tramp-adb-handle-delete-directory)
22143         (tramp-adb-handle-delete-file)
22144         (tramp-adb-handle-file-local-copy)
22145         (tramp-adb-handle-write-region, tramp-adb-handle-copy-file)
22146         (tramp-adb-send-command-and-check, tramp-adb-wait-for-output)
22147         (tramp-adb-maybe-open-connection):
22148         * lisp/net/tramp-cache.el:
22149         * lisp/net/tramp-compat.el (tramp-compat-temporary-file-directory)
22150         (tramp-compat-octal-to-decimal)
22151         (tramp-compat-coding-system-change-eol-conversion):
22152         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler)
22153         (tramp-gvfs-do-copy-or-rename-file)
22154         (tramp-gvfs-handle-delete-directory)
22155         (tramp-gvfs-handle-delete-file)
22156         (tramp-gvfs-handle-expand-file-name)
22157         (tramp-gvfs-handle-file-local-copy)
22158         (tramp-gvfs-handle-file-notify-add-watch)
22159         (tramp-gvfs-handle-make-directory)
22160         (tramp-gvfs-handle-write-region, tramp-gvfs-url-file-name):
22161         * lisp/net/tramp-gw.el (tramp-gw-gw-proc-sentinel)
22162         (tramp-gw-aux-proc-sentinel, tramp-gw-open-connection):
22163         * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
22164         (tramp-sh-handle-set-visited-file-modtime)
22165         (tramp-sh-handle-set-file-modes)
22166         (tramp-sh-handle-file-name-all-completions)
22167         (tramp-sh-handle-add-name-to-file, tramp-do-copy-or-rename-file)
22168         (tramp-do-copy-or-rename-file-directly)
22169         (tramp-do-copy-or-rename-file-out-of-band)
22170         (tramp-sh-handle-make-directory)
22171         (tramp-sh-handle-delete-directory, tramp-sh-handle-delete-file)
22172         (tramp-sh-handle-insert-directory, tramp-process-sentinel)
22173         (tramp-sh-handle-start-file-process)
22174         (tramp-sh-handle-file-local-copy)
22175         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
22176         (tramp-sh-handle-file-notify-add-watch, tramp-maybe-send-script)
22177         (tramp-find-file-exists-command, tramp-open-shell)
22178         (tramp-find-shell)
22179         (tramp-open-connection-setup-interactive-shell)
22180         (tramp-find-inline-encoding, tramp-find-inline-compress)
22181         (tramp-compute-multi-hops, tramp-maybe-open-connection)
22182         (tramp-wait-for-output, tramp-send-command-and-check)
22183         (tramp-send-command-and-read, tramp-get-remote-path)
22184         (tramp-get-ls-command, tramp-get-ls-command-with-dired)
22185         (tramp-get-ls-command-with-quoting-style)
22186         (tramp-get-test-command, tramp-get-remote-ln)
22187         (tramp-get-remote-perl, tramp-get-remote-stat)
22188         (tramp-get-remote-readlink, tramp-get-remote-trash)
22189         (tramp-get-remote-touch, tramp-get-remote-gvfs-monitor-dir)
22190         (tramp-get-remote-inotifywait, tramp-get-remote-id)
22191         (tramp-get-remote-python):
22192         * lisp/net/tramp-smb.el (tramp-smb-errors)
22193         (tramp-smb-handle-add-name-to-file, tramp-smb-handle-copy-file)
22194         (tramp-smb-handle-delete-directory)
22195         (tramp-smb-handle-delete-file)
22196         (tramp-smb-handle-file-local-copy)
22197         (tramp-smb-handle-make-directory)
22198         (tramp-smb-handle-make-directory-internal)
22199         (tramp-smb-handle-make-symbolic-link)
22200         (tramp-smb-handle-rename-file, tramp-smb-handle-set-file-acl)
22201         (tramp-smb-handle-set-file-modes)
22202         (tramp-smb-handle-write-region, tramp-smb-get-file-entries):
22203         * lisp/net/tramp.el (tramp-debug-message, tramp-error)
22204         (tramp-process-actions):
22205         Generate diagnostics according to ‘text-quoting-style’, by
22206         using curved quotes in format strings and ‘format-message’
22207         when appropriate.
22208         * lisp/net/tramp-compat.el (format-message):
22209         Define a replacement, if it’s an older version of Emacs
22210         that doesn’t have it already.
22212         * etc/NEWS: Clarify text-quoting-style and electric-quote-mode.
22214 2015-08-24  Xue Fuqiao  <xfq.free@gmail.com>
22216         Fix documentation for `save-excursion'
22217         * doc/lispref/positions.texi (Excursions):
22218         * doc/lispintro/emacs-lisp-intro.texi (save-excursion)
22219         (Template for save-excursion, Point and mark): `save-excursion'
22220         does not save&restore the mark any more.
22222 2015-08-24  Michael Albinus  <michael.albinus@gmx.de>
22224         * lisp/net/tramp-sh.el (tramp-stat-marker, tramp-stat-quoted-marker):
22225         New defconsts.
22226         (tramp-do-file-attributes-with-stat)
22227         (tramp-do-directory-files-and-attributes-with-stat): Use them.
22228         (tramp-convert-file-attributes): Remove double slashes in symlinks.
22229         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
22230         Handle symlinks with "//" in the file name.
22232         Revert fbb5531fa11d13854b274d28ccd329c9b6652cfc for tramp.el.
22234 2015-08-24  Nicolas Petton  <nicolas@petton.fr>
22236         Fix cl-subseq and cl-concatenate
22237         * lisp/emacs-lisp/cl-extra.el (cl-subseq, cl-concatenate): Do not use
22238         seq functions.
22239         * lisp/emacs-lisp/seq.el (seq-concatenate): Call cl-concatenate in
22240         seq-concatenate.
22242 2015-08-24  Pip Cet  <pipcet@gmail.com>  (tiny change)
22244         Fix full-screen code when there is no window manager (Bug#21317)
22245         * src/xterm.h (x_wm_supports): Declare external.
22246         * src/xterm.c (wm_suppports): Rename to `x_wm_supports', export.
22247         (do_ewmh_fullscreen, x_ewmh_activate_frame): Adjust for rename.
22248         (x_check_fullscreen): Call `x_wm_set_size_hint', restore
22249         `fullscreen' frame parameter.
22250         * src/gtkutil.c (x_wm_set_size_hint): Set size hints when running
22251         without a window manager.
22253 2015-08-24  Glenn Morris  <rgm@gnu.org>
22255         * lisp/version.el (emacs-version): No longer include build host.
22256         * doc/lispref/intro.texi (Version Info): Update example.
22258 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
22260         * doc/lispref/elisp.texi: Fix typo in previous change.
22262         More-conservative ‘format’ quote restyling
22263         Instead of restyling curved quotes for every call to ‘format’,
22264         create a new function ‘format-message’ that does the restyling,
22265         and using the new function instead of ‘format’ only in contexts
22266         where this seems appropriate.
22267         Problem reported by Dmitry Gutov and Andreas Schwab in:
22268         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00826.html
22269         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00827.html
22270         * doc/lispref/commands.texi (Using Interactive):
22271         * doc/lispref/control.texi (Signaling Errors, Signaling Errors):
22272         * doc/lispref/display.texi (Displaying Messages, Progress):
22273         * doc/lispref/elisp.texi:
22274         * doc/lispref/help.texi (Keys in Documentation):
22275         * doc/lispref/minibuf.texi (Minibuffer Misc):
22276         * doc/lispref/strings.texi (Formatting Strings):
22277         * etc/NEWS:
22278         Document the changes.
22279         * lisp/abbrev.el (expand-region-abbrevs):
22280         * lisp/apropos.el (apropos-library):
22281         * lisp/calc/calc-ext.el (calc-record-message)
22282         (calc-user-function-list):
22283         * lisp/calc/calc-help.el (calc-describe-key, calc-full-help):
22284         * lisp/calc/calc-lang.el (math-read-big-balance):
22285         * lisp/calc/calc-store.el (calc-edit-variable):
22286         * lisp/calc/calc-units.el (math-build-units-table-buffer):
22287         * lisp/calc/calc-yank.el (calc-edit-mode):
22288         * lisp/calendar/icalendar.el (icalendar-export-region)
22289         (icalendar--add-diary-entry):
22290         * lisp/cedet/mode-local.el (mode-local-print-binding)
22291         (mode-local-describe-bindings-2):
22292         * lisp/cedet/semantic/complete.el (semantic-completion-message):
22293         * lisp/cedet/semantic/edit.el (semantic-parse-changes-failed):
22294         * lisp/cedet/semantic/wisent/comp.el (wisent-log):
22295         * lisp/cedet/srecode/insert.el (srecode-insert-show-error-report):
22296         * lisp/descr-text.el (describe-text-properties-1, describe-char):
22297         * lisp/dframe.el (dframe-message):
22298         * lisp/dired-aux.el (dired-query):
22299         * lisp/emacs-lisp/byte-opt.el (byte-compile-log-lap-1):
22300         * lisp/emacs-lisp/bytecomp.el (byte-compile-log)
22301         (byte-compile-log-file, byte-compile-warn, byte-compile-form):
22302         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
22303         (cconv-analyze-form):
22304         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
22305         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
22306         * lisp/emacs-lisp/cl-macs.el (cl-symbol-macrolet):
22307         * lisp/emacs-lisp/edebug.el (edebug-format):
22308         * lisp/emacs-lisp/eieio-core.el (eieio-oref):
22309         * lisp/emacs-lisp/eldoc.el (eldoc-minibuffer-message)
22310         (eldoc-message):
22311         * lisp/emacs-lisp/elint.el (elint-file, elint-log):
22312         * lisp/emacs-lisp/find-func.el (find-function-library):
22313         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
22314         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
22315         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
22316         * lisp/emacs-lisp/package.el (package-compute-transaction)
22317         (package-install-button-action, package-delete-button-action)
22318         (package-menu--list-to-prompt):
22319         * lisp/emacs-lisp/timer.el (timer-event-handler):
22320         * lisp/emacs-lisp/warnings.el (lwarn, warn):
22321         * lisp/emulation/viper-cmd.el:
22322         (viper-toggle-parse-sexp-ignore-comments)
22323         (viper-kill-buffer, viper-brac-function):
22324         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
22325         * lisp/facemenu.el (facemenu-add-new-face):
22326         * lisp/faces.el (face-documentation, read-face-name)
22327         (face-read-string, read-face-font, describe-face):
22328         * lisp/files.el (find-alternate-file, hack-local-variables)
22329         (hack-one-local-variable--obsolete, write-file)
22330         (basic-save-buffer, delete-directory):
22331         * lisp/format.el (format-write-file, format-find-file)
22332         (format-insert-file):
22333         * lisp/help-fns.el (help-fns--key-bindings)
22334         (help-fns--compiler-macro, help-fns--obsolete)
22335         (help-fns--interactive-only, describe-function-1)
22336         (describe-variable):
22337         * lisp/help.el (describe-mode):
22338         * lisp/info-xref.el (info-xref-output):
22339         * lisp/info.el (Info-virtual-index-find-node)
22340         (Info-virtual-index, info-apropos):
22341         * lisp/international/kkc.el (kkc-error):
22342         * lisp/international/mule-cmds.el:
22343         (select-safe-coding-system-interactively)
22344         (select-safe-coding-system, describe-input-method):
22345         * lisp/international/mule-conf.el (code-offset):
22346         * lisp/international/mule-diag.el (describe-character-set)
22347         (list-input-methods-1):
22348         * lisp/international/quail.el (quail-error):
22349         * lisp/minibuffer.el (minibuffer-message):
22350         * lisp/mpc.el (mpc--debug):
22351         * lisp/msb.el (msb--choose-menu):
22352         * lisp/net/ange-ftp.el (ange-ftp-message):
22353         * lisp/net/gnutls.el (gnutls-message-maybe):
22354         * lisp/net/newst-backend.el (newsticker--sentinel-work):
22355         * lisp/net/newst-treeview.el (newsticker--treeview-load):
22356         * lisp/net/nsm.el (nsm-query-user):
22357         * lisp/net/rlogin.el (rlogin):
22358         * lisp/net/soap-client.el (soap-warning):
22359         * lisp/net/tramp.el (tramp-debug-message):
22360         * lisp/nxml/nxml-outln.el (nxml-report-outline-error):
22361         * lisp/nxml/nxml-parse.el (nxml-parse-error):
22362         * lisp/nxml/rng-cmpct.el (rng-c-error):
22363         * lisp/nxml/rng-match.el (rng-compile-error):
22364         * lisp/nxml/rng-uri.el (rng-uri-error):
22365         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
22366         * lisp/org/org-ctags.el:
22367         (org-ctags-ask-rebuild-tags-file-then-find-tag):
22368         * lisp/proced.el (proced-log):
22369         * lisp/progmodes/ebnf2ps.el (ebnf-log):
22370         * lisp/progmodes/flymake.el (flymake-log):
22371         * lisp/progmodes/vhdl-mode.el (vhdl-warning-when-idle):
22372         * lisp/replace.el (occur-1):
22373         * lisp/simple.el (execute-extended-command)
22374         (undo-outer-limit-truncate, define-alternatives):
22375         * lisp/startup.el (command-line):
22376         * lisp/subr.el (error, user-error, add-to-list):
22377         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
22378         (tutorial--find-changed-keys):
22379         * src/callint.c (Fcall_interactively):
22380         * src/editfns.c (Fmessage, Fmessage_box):
22381         Restyle the quotes of format strings intended for use as a
22382         diagnostic, when restyling seems appropriate.
22383         * lisp/subr.el (format-message): New function.
22384         * src/doc.c (Finternal__text_restyle): New function.
22385         (syms_of_doc): Define it.
22387 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
22389         * etc/NEWS: The new ‘q’ flag is not an incompatible change.
22391 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
22393         python.el: Fix python-shell-buffer-substring on indented code
22394         (Bug#21086)
22395         * lisp/progmodes/python.el (python-shell-buffer-substring):
22396         Respect current line indentation when calculating string.
22397         * test/automated/python-tests.el
22398         (python-shell-buffer-substring-10)
22399         (python-shell-buffer-substring-11)
22400         (python-shell-buffer-substring-12): New tests.
22402 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
22404         Fix minor glitches from ‘format’ reversion
22405         * doc/lispref/strings.texi (Formatting Strings):
22406         After reversion, ‘text-quoting-style’ is documented in ‘Keys in
22407         Documentation’, not below.
22408         * src/syntax.c (Finternal_describe_syntax_value):
22409         Prefer AUTO_STRING to build_string where either will do, as
22410         AUTO_STRING is a bit faster.
22412 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
22414         python.el: Defer shell setup code until first interactive prompt
22415         * lisp/progmodes/python.el
22416         (python-shell-comint-watch-for-first-prompt-output-filter):
22417         New function.
22418         (inferior-python-mode): Use it.
22419         (python-shell-first-prompt-hook): New hook.
22420         (python-shell-send-setup-code)
22421         (python-shell-completion-native-turn-on-maybe-with-msg): Attach to
22422         this hook instead of inferior-python-hook.
22424 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
22426         Remove the calls to `seq-into` from `seq-concatenate`
22427         Since most new types of seq would have to be defined as sequences (cons
22428         cells or CL structs, mostly), there is no need to convert the seqs to
22429         sequences (which can be a fairly expensive operation).
22430         * lisp/emacs-lisp/seq.el (seq-concatenate): Do not ensure that seqs are
22431         sequences.
22433 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
22435         python.el: Fix completion for pdb interactions
22436         * lisp/progmodes/python.el (python-shell-completion-setup-code):
22437         Simplify.  Toggle print_mode for native wrapped completer.
22438         (python-shell-completion-native-setup): Ensure process buffer.
22439         Add print_mode attribute to completer wrapper to toggle returning
22440         or printing candidates.
22441         (python-shell-completion-native-get-completions): Cleanup.
22442         (python-shell-completion-get-completions): Cleanup.
22443         (python-shell-completion-at-point): Perform prompt checks.
22444         Force fallback completion in pdb interactions.
22446 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
22448         Make seq.el more extensible by using cl-defmethod
22449         * lisp/emacs-lisp/seq.el: Define seq.el functions using cl-defmethod to
22450         make it easier to extend seq.el with new "seq types".
22451         * test/automated/seq-tests.el (test-setf-seq-elt): New test.
22452         * lisp/emacs-lisp/cl-extra.el (cl-subseq): Move back the definition of
22453         subseq in cl-extra.el, and use it in seq.el.
22455 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
22457         python.el: Fix prompt detection with user overridden interpreter
22458         * lisp/progmodes/python.el (python-shell-prompt-detect):
22459         Honor buffer local python-shell-interpreter and
22460         python-shell-interpreter-interactive-arg.
22462 2015-08-23  Eli Zaretskii  <eliz@gnu.org>
22464         Support exec-directory with non-ASCII characters on Windows
22465         * src/w32proc.c (sys_spawnve): Make sure exec-directory is encoded
22466         in the system's ANSI codepage, when it is used for invoking
22467         cmdproxy.
22469 2015-08-23  Andreas Schwab  <schwab@linux-m68k.org>
22471         Revert "Extend ‘format’ to translate curved quotes"
22472         This reverts commit 244c801689d2f7a80480d83cd7d092d4762ebe08.
22474         Revert "Prefer ‘format’ to ‘substitute-command-keys’"
22475         This reverts commit 6af5aad26411ffe21c3fe4bc5438347110910111.
22477 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
22479         * doc/lispintro/emacs-lisp-intro.texi (Switching Buffers):
22480         Clarify "invisible window".
22482 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
22484         * doc/emacs/modes.texi (Choosing Modes): Minor doc fix for
22485         magic-fallback-mode-alist.
22487 2015-08-22  Fabián Ezequiel Gallina  <fgallina@gnu.org>
22489         python.el: fallback completion, ffap and eldoc setup enhancements
22490         Setup codes are now sent continuously so that the current frame is
22491         always taken into account.  This allows working within debuggers
22492         and always keeping a fresh version of setup codes that will return
22493         proper results.
22494         * lisp/progmodes/python.el (python-shell-setup-codes): Cleanup.
22495         (python-shell-send-setup-code): Send code only when
22496         python-shell-setup-codes is non-nil.
22497         (python-shell-completion-string-code): Cleanup trailing newline.
22498         (python-shell-completion-get-completions): Always use
22499         python-shell-completion-setup-code.
22500         (python-ffap-setup-code): Work with any object, not only modules.
22501         (python-ffap-string-code): Cleanup trailing newline.
22502         (python-ffap-module-path): Always use python-ffap-setup-code.
22503         (python-eldoc-string-code): Cleanup trailing newline.
22504         (python-eldoc--get-doc-at-point): Always use
22505         python-eldoc-setup-code.  Return non-nil only if docstring is
22506         found.
22508         python.el: Increase native completion robustness
22509         * lisp/progmodes/python.el (python-shell-completion-native-setup):
22510         Make completer print real candidates and just return dummy ones to
22511         avoid input modification.
22512         (python-shell-completion-native-get-completions): Set
22513         comint-redirect-insert-matching-regexp to non-nil and make
22514         comint-redirect-finished-regexp match the last dummy candidate.
22515         Use python-shell-accept-process-output to wait for the full list
22516         of candidates.
22518 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
22520         Fix invocation of programs via cmdproxy.exe
22521         * src/w32proc.c (sys_spawnve): Use exec-directory, not
22522         invocation-directory, for finding cmdproxy.exe.  When Emacs is
22523         run from the source tree, look for cmdproxy.exe in the same source
22524         tree.  (Bug#21323)
22526 2015-08-22  Simen Heggestøyl  <simenheg@gmail.com>
22528         Handle comments inside unquoted URIs in css-mode
22529         * lisp/textmodes/css-mode.el (css--uri-re): New defconst.
22530         (css-syntax-propertize-function): New defconst.
22531         (css--font-lock-keywords): Handle parens around unquoted URIs.
22532         (css-mode): Set `syntax-propertize-function'.
22534 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
22536         Support invocation of Hunspell with multiple dictionaries
22537         * lisp/textmodes/ispell.el (ispell-parse-hunspell-affix-file):
22538         Support lists of dictionaries of the form "DICT1,DICT2,...".
22539         (ispell-hunspell-add-multi-dic): New command.  (Bug#20495)
22541         Minor formatting changes in ispell.el
22542         * lisp/textmodes/ispell.el (ispell-create-debug-buffer)
22543         (ispell-print-if-debug, ispell-aspell-find-dictionary)
22544         (ispell-aspell-add-aliases, ispell-hunspell-dict-paths-alist)
22545         (ispell-hunspell-dictionary-alist)
22546         (ispell-hunspell-fill-dictionary-entry)
22547         (ispell-find-hunspell-dictionaries, ispell-send-replacement)
22548         (ispell-buffer-with-debug, ispell-complete-word)
22549         (ispell-current-dictionary, ispell-current-personal-dictionary)
22550         (ispell-accept-output, ispell-minor-mode)
22551         (ispell-personal-dictionary, ispell-dictionary-alist)
22552         (ispell-really-aspell, ispell-really-hunspell)
22553         (ispell-encoding8-command, ispell-aspell-supports-utf8)
22554         (ispell-aspell-dictionary-alist, ispell-set-spellchecker-params):
22555         Fix whitespace, inconsistent capitalization, and arguments in doc
22556         strings.
22558 2015-08-22  Martin Rudalics  <rudalics@gmx.at>
22560         * lisp/window.el (adjust-window-trailing-edge): Fix bug where this
22561         function refused to resize a size-preserved window.
22563 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
22565         * doc/lispref/windows.texi (Selecting Windows): Improve
22566         documentation and indexing of 'window-use-time'.
22568 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
22570         * lisp/progmodes/cc-vars.el, lisp/progmodes/cc-styles.el:
22571         * lisp/progmodes/cc-mode.el, lisp/progmodes/cc-menus.el:
22572         * lisp/progmodes/cc-langs.el, lisp/progmodes/cc-guess.el:
22573         * lisp/progmodes/cc-fonts.el, lisp/progmodes/cc-engine.el:
22574         * lisp/progmodes/cc-defs.el, lisp/progmodes/cc-cmds.el:
22575         * lisp/progmodes/cc-bytecomp.el, lisp/progmodes/cc-awk.el:
22576         * lisp/progmodes/cc-align.el, lisp/net/soap-client.el:
22577         Fix up commenting style.
22579 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
22581         text-quoting-style in emacs-lisp diagnostics
22582         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
22583         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
22584         (ad-disable-advice, ad-remove-advice, ad-set-argument)
22585         (ad-set-arguments):
22586         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
22587         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
22588         (byte-optimize-while, byte-optimize-apply):
22589         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
22590         (byte-compile-log-file, byte-compile-format-warn)
22591         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
22592         (byte-compile-cl-warn)
22593         (byte-compile-warn-about-unresolved-functions)
22594         (byte-compile-file, byte-compile-fix-header)
22595         (byte-compile--declare-var, byte-compile-file-form-defmumble)
22596         (byte-compile-form, byte-compile-normal-call)
22597         (byte-compile-variable-ref, byte-compile-variable-set)
22598         (byte-compile-subr-wrong-args, byte-compile-setq-default)
22599         (byte-compile-negation-optimizer)
22600         (byte-compile-condition-case--old)
22601         (byte-compile-condition-case--new, byte-compile-save-excursion)
22602         (byte-compile-defvar, byte-compile-autoload)
22603         (byte-compile-lambda-form)
22604         (byte-compile-make-variable-buffer-local, display-call-tree)
22605         (batch-byte-compile):
22606         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
22607         (cconv-analyze-form):
22608         * lisp/emacs-lisp/chart.el (chart-space-usage):
22609         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
22610         (check-declare-warn, check-declare-file)
22611         (check-declare-directory):
22612         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
22613         (checkdoc-message-text-engine):
22614         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer):
22615         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
22616         (cl-symbol-macrolet):
22617         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
22618         * lisp/emacs-lisp/copyright.el (copyright)
22619         (copyright-update-directory):
22620         * lisp/emacs-lisp/edebug.el (edebug-read-list):
22621         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
22622         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
22623         (eieio-oref, eieio-oset-default):
22624         * lisp/emacs-lisp/eieio-speedbar.el:
22625         (eieio-speedbar-child-make-tag-lines)
22626         (eieio-speedbar-child-description):
22627         * lisp/emacs-lisp/eieio.el (defclass, change-class):
22628         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
22629         (elint-init-form, elint-check-defalias-form)
22630         (elint-check-let-form):
22631         * lisp/emacs-lisp/ert.el (ert-get-test):
22632         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
22633         (find-function-library):
22634         * lisp/emacs-lisp/generator.el (iter-yield):
22635         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
22636         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
22637         * lisp/emacs-lisp/package-x.el (package-upload-file):
22638         * lisp/emacs-lisp/package.el (package-version-join)
22639         (package-disabled-p, package-activate-1, package-activate)
22640         (package--download-one-archive)
22641         (package--download-and-read-archives)
22642         (package-compute-transaction, package-install-from-archive)
22643         (package-install, package-install-selected-packages)
22644         (package-delete, package-autoremove)
22645         (package-install-button-action, package-delete-button-action)
22646         (package-menu-hide-package, package-menu--list-to-prompt)
22647         (package-menu--perform-transaction)
22648         (package-menu--find-and-notify-upgrades):
22649         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
22650         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
22651         * lisp/emacs-lisp/ring.el (ring-next, ring-previous):
22652         * lisp/emacs-lisp/rx.el (rx-check, rx-anything):
22653         * lisp/emacs-lisp/smie.el (smie-config-save):
22654         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
22655         * lisp/emacs-lisp/testcover.el (testcover-1value):
22656         Use curved quotes in diagnostic format strings.
22658 2015-08-21  Fabián Ezequiel Gallina  <fgallina@gnu.org>
22660         python.el: Ensure remote process-environment on non-interactive processes
22661         * lisp/progmodes/python.el
22662         (python-shell-tramp-refresh-process-environment): New function.
22663         (python-shell-with-environment): Use it.
22664         * test/automated/python-tests.el (python-shell-with-environment-2):
22665         Update.
22667         python.el: Enhancements to process environment setup.
22668         * lisp/progmodes/python.el (python-shell-process-environment)
22669         (python-shell-extra-pythonpaths, python-shell-exec-path)
22670         (python-shell-virtualenv-root): Update docstring.  Remove :safe.
22671         (python-shell-setup-codes): Remove :safe.
22672         (python-shell-remote-exec-path): New defcustom.
22673         (python-shell--add-to-path-with-priority): New macro.
22674         (python-shell-calculate-pythonpath): Give priority to
22675         python-shell-extra-pythonpaths.  Update docstring.
22676         (python-shell-calculate-process-environment): Give priority to
22677         python-shell-process-environment.  Update docstring.
22678         (python-shell-calculate-exec-path): Give priority to
22679         python-shell-exec-path and calculated virtualenv bin directory.
22680         Update docstring.
22681         (python-shell-tramp-refresh-remote-path): New function.
22682         (python-shell-with-environment): Use it when working remotely and
22683         do not modify tramp-remote-path.  Allow nesting.
22684         (python-shell-calculate-command): Remove useless
22685         python-shell-with-environment call.
22686         * test/automated/python-tests.el (python-shell-calculate-pythonpath-1)
22687         (python-shell-calculate-pythonpath-2)
22688         (python-shell-calculate-process-environment-6)
22689         (python-shell-calculate-process-environment-7)
22690         (python-shell-calculate-process-environment-8)
22691         (python-shell-calculate-exec-path-3)
22692         (python-shell-calculate-exec-path-4)
22693         (python-shell-calculate-exec-path-5)
22694         (python-shell-calculate-exec-path-6)
22695         (python-shell-with-environment-3): New tests.
22696         (python-shell-calculate-process-environment-2)
22697         (python-shell-calculate-process-environment-3)
22698         (python-shell-calculate-process-environment-4)
22699         (python-shell-calculate-process-environment-5)
22700         (python-shell-calculate-exec-path-1)
22701         (python-shell-calculate-exec-path-2)
22702         (python-shell-with-environment-1)
22703         (python-shell-with-environment-2): Update and simplify.
22705 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
22707         Avoid hard-coding "M-x command" in docstrings
22708         * lisp/calendar/todo-mode.el (todo-mode):
22709         * lisp/desktop.el (desktop-save-mode):
22710         * lisp/edmacro.el (edit-kbd-macro):
22711         * lisp/emacs-lisp/package.el (package-menu-execute):
22712         * lisp/emulation/viper-cmd.el (viper-ask-level):
22713         * lisp/emulation/viper-init.el (viper-expert-level):
22714         * lisp/filesets.el (filesets-add-buffer):
22715         * lisp/follow.el (follow-mode):
22716         * lisp/gnus/auth-source.el (auth-sources):
22717         * lisp/international/ogonek.el (ogonek-informacja)
22718         (ogonek-information):
22719         * lisp/net/tramp.el (tramp-process-actions):
22720         * lisp/org/org-gnus.el (org-gnus-no-new-news):
22721         * lisp/org/org.el (org-ellipsis):
22722         * lisp/progmodes/python.el (python-shell-get-process-or-error):
22723         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
22724         * lisp/server.el (server-start):
22725         * lisp/type-break.el (type-break-noninteractive-query):
22726         * lisp/userlock.el (ask-user-about-supersession-help):
22727         * lisp/whitespace.el (whitespace-report-region):
22728         Prefer (substitute-command-keys "`\\[foo-command]'")
22729         to "`M-x foo-command'" in docstrings and the like.
22731 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
22733         Use add-function for prettify-symbols-compose-predicate
22734         * lisp/textmodes/tex-mode.el (tex-common-initialization): Set
22735         prettify-symbols-compose-predicate in terms of add-function.
22736         * etc/NEWS: Mention prettify-symbols-compose-predicate and
22737         prettify-symbols-mode support in tex-mode.
22739 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
22741         * lisp/emacs-lisp/smie.el (smie-indent-current-column): New fun.
22742         (smie-indent-exps, smie-indent-keyword): Use it.
22743         * test/indent/css-mode.css: Test alignment with leading comment.
22745 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
22747         Respect text-quoting-style in (*Finder*) menus
22748         * lisp/info.el (info--prettify-description):
22749         Treat description as a docstring, so that it's requoted as
22750         per text-quoting-style.
22752 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
22754         Document `window-use-time' in Elisp manual
22755         * doc/lispref/windows.texi (Selecting Windows): Document
22756         `window-use-time'.
22758 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
22760         * src/w32uniscribe.c (_WIN32_WINNT): Define to 0x0600.
22761         This is a cleaner fix for Bug#21260 than the previous change.
22763 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
22765         Respect text-quoting-style in calc
22766         In calc, tespect text-quoting-style preference in diagnostic
22767         formats and fix a few similar problems in docstrings.
22768         * lisp/calc/calc-aent.el (math-read-factor):
22769         * lisp/calc/calc-embed.el (calc-do-embedded):
22770         * lisp/calc/calc-ext.el (calc-user-function-list)
22771         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
22772         * lisp/calc/calc-help.el (calc-describe-key)
22773         (calc-describe-thing):
22774         * lisp/calc/calc-lang.el (calc-c-language)
22775         (math-parse-fortran-vector-end, math-parse-tex-sum)
22776         (math-parse-eqn-matrix, math-parse-eqn-prime)
22777         (calc-yacas-language, calc-maxima-language, calc-giac-language)
22778         (math-read-big-rec, math-read-big-balance):
22779         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
22780         (calc-auto-recompute):
22781         * lisp/calc/calc-prog.el (calc-user-define-invocation)
22782         (math-do-arg-check):
22783         * lisp/calc/calc-store.el (calc-edit-variable):
22784         * lisp/calc/calc-units.el (math-build-units-table-buffer):
22785         * lisp/calc/calc-vec.el (math-read-brackets):
22786         * lisp/calc/calc-yank.el (calc-edit-mode):
22787         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
22788         Use curved quotes in diagnostic format strings.
22789         * lisp/calc/calc-help.el (calc-describe-thing):
22790         Format docstrings with substitute-command-keys.
22791         * lisp/calc/calc-help.el (calc-j-prefix-help):
22792         * lisp/calc/calc-misc.el (calc-help):
22793         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
22794         Escape a docstring "`".
22796 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
22798         Fix documentation of 'menu-set-font' and 'set-frame-font'
22799         * lisp/menu-bar.el (menu-set-font): Doc fix.  (Bug#21303)
22800         * doc/lispref/frames.texi (Frame Font): Document that
22801         set-frame-font with the last argument 't' will also make the font
22802         the default for the future GUI frames.
22804         Document '--create-frame' option to emacsclient
22805         * doc/emacs/misc.texi (emacsclient Options): Document the
22806         '--create-frame' option.  (Bug#21308)
22808 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
22810         * lisp/progmodes/js.el (js-mode): Don't eagerly syntax propertize.
22812 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
22814         Document 'get-mru-window' in the ELisp manual
22815         * doc/lispref/windows.texi (Cyclic Window Ordering): Document
22816         'get-mru-window'.  (Bug#21306)
22818         Clarify documentation of 'get-buffer-window-list'
22819         * doc/lispref/windows.texi (Buffers and Windows): Mention that the
22820         current window, if relevant, will be the first in the list
22821         returned by 'get-buffer-window-list'.
22822         * lisp/window.el (get-buffer-window-list): Doc fix.  (Bug#21305)
22824 2015-08-21  Vasilij Schneidermann  <v.schneidermann@gmail.com>
22826         In `ielm' use `pop-to-buffer-same-window' (Bug#20848)
22827         * lisp/ielm.el (ielm): Use `pop-to-buffer-same-window' instead of
22828         `switch-to-buffer'.
22830 2015-08-21  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
22832         In woman.el use `display-buffer' instead of `switch-to-buffer' (Bug#21047)
22833         * lisp/woman.el (woman-really-find-file, WoMan-find-buffer): Use
22834         `display-buffer' instead of `switch-to-buffer'.
22836 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
22838         Follow user preference in calendar diagnostics
22839         Respect text-quoting-style preference in diagnostic formats by
22840         using curved quotes (which are translated as per text-quoting-style)
22841         instead of grave accent and apostrophe (which are not).
22842         * lisp/calendar/appt.el (appt-display-message):
22843         * lisp/calendar/diary-lib.el (diary-check-diary-file)
22844         (diary-mail-entries, diary-from-outlook):
22845         * lisp/calendar/icalendar.el (icalendar-export-region)
22846         (icalendar--convert-float-to-ical)
22847         (icalendar--convert-date-to-ical)
22848         (icalendar--convert-ical-to-diary)
22849         (icalendar--convert-recurring-to-diary)
22850         (icalendar--add-diary-entry):
22851         * lisp/calendar/time-date.el (format-seconds):
22852         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
22853         (timeclock-make-hours-explicit):
22854         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
22855         (todo-item-mark, todo-check-format)
22856         (todo-insert-item--next-param, todo-edit-item--next-key)
22857         (todo-mode):
22858         Use curved quotes in diagnostic format strings.
22859         * lisp/calendar/icalendar.el (icalendar-import-format-sample):
22860         * test/automated/icalendar-tests.el (icalendar--import-format-sample):
22861         Just use straight quoting for simple test case.
22863 2015-08-21  Michael Albinus  <michael.albinus@gmx.de>
22865         * src/gfilenotify.c (Fgfile_add_watch):
22866         Handle errors from g_file_monitor.
22868 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
22870         In frames.texi use "minibuffer-less frame" instead of "non-minibuffer frame"
22871         * doc/lispref/frames.texi (Frame Layout): Use "minibuffer-less
22872         frame" instead of "non-minibuffer frame".
22874         Fix frame geometry related text
22875         * doc/lispref/frames.texi (Frame Layout):
22876         Rename `x-frame-geometry' to `frame-geometry'.
22877         * doc/lispref/frames.texi (Mouse Position):
22878         * doc/lispref/windows.texi (Coordinates and Windows):
22879         Use `set-mouse-absolute-pixel-position' instead of
22880         `x-set-mouse-absolute-pixel-position'.
22882         Sanitize frame geometry related functions
22883         * src/nsfns.m (Fx_frame_geometry): Rename to Fns_frame_geometry.
22884         (Fx_frame_edges): Rename to Fns_frame_edges.
22885         * src/w32fns.c (Fx_frame_geometry): Rename to Fw32_frame_geometry.
22886         (Fx_frame_edges): Rename to Fw32_frame_edges.
22887         (Fx_mouse_absolute_pixel_position): Rename to
22888         Fw32_mouse_absolute_pixel_position.
22889         (Fx_set_mouse_absolute_pixel_position): Rename to
22890         Fw32_set_mouse_absolute_pixel_position.
22891         * lisp/frame.el (x-frame-geometry, w32-frame-geometry)
22892         (ns-frame-geometry, x-frame-edges, w32-frame-edges)
22893         (ns-frame-edges, w32-mouse-absolute-pixel-position)
22894         (x-mouse-absolute-pixel-position)
22895         (w32-set-mouse-absolute-pixel-position)
22896         (x-set-mouse-absolute-pixel-position): Declare.
22897         (frame-geometry, mouse-absolute-pixel-position)
22898         (set-mouse-absolute-pixel-position): New functions.
22899         (frame-edges): Rewrite in terms of x-/w32-/ns-frame-edges.
22901 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
22903         Fix MinGW64 build broken by latest w32uniscribe.c changes
22904         * src/w32uniscribe.c (UNISCRIBE_OPENTYPE): Define to 0x0100, for
22905         MinGW64.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
22906         (Bug#21260)
22908 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
22910         Add TeX defaults for prettify-symbol-mode
22911         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
22912         Rename from tex-prettify-symbols-alist.
22913         (tex--prettify-symbols-compose-p): New function.
22914         (tex-common-initialization): Use them as prettify-symbols-alist
22915         and prettify-symbols-compose-predicate.
22917         Generalize prettify-symbols to arbitrary modes
22918         * lisp/progmodes/prog-mode.el
22919         (prettify-symbols-default-compose-p): New function.
22920         (prettify-symbols-compose-predicate): New variable.
22921         (prettify-symbols--compose-symbol): Use it.
22923 2015-08-20  Paul Eggert  <eggert@cs.ucla.edu>
22925         Don't quote symbols 'like-this' in docstrings etc.
22926         * admin/unidata/uvs.el (uvs-insert-fields-as-bytes):
22927         * lisp/allout-widgets.el (allout-widgets-count-buttons-in-region):
22928         * lisp/allout.el (allout-add-resumptions, allout-mode):
22929         * lisp/calculator.el (calculator-operators):
22930         * lisp/cedet/data-debug.el (dd-propertize):
22931         * lisp/cedet/ede/proj-prog.el (ede-proj-target-makefile-program):
22932         * lisp/cedet/semantic/analyze/debug.el:
22933         (semantic-analyzer-debug-global-miss-text):
22934         * lisp/cedet/semantic/lex-spp.el:
22935         (semantic-lex-spp-replace-or-symbol-or-keyword):
22936         * lisp/cedet/semantic/symref.el:
22937         (semantic-symref-cleanup-recent-buffers-fcn):
22938         * lisp/cedet/semantic/tag.el (semantic-tag-class):
22939         * lisp/cedet/srecode/el.el (srecode-semantic-handle-:el-custom):
22940         * lisp/gnus/nnmairix.el (nnmairix-propagate-marks-upon-close):
22941         * lisp/gnus/pop3.el (pop3-authentication-scheme):
22942         * lisp/help-fns.el (describe-function-orig-buffer):
22943         * lisp/imenu.el (imenu--history-list):
22944         * lisp/mail/feedmail.el (feedmail-confirm-outgoing)
22945         (feedmail-display-full-frame, feedmail-deduce-bcc-where)
22946         (feedmail-queue-default-file-slug)
22947         (feedmail-queue-buffer-file-name):
22948         * lisp/net/mairix.el (mairix-searches-mode-map):
22949         * lisp/net/newst-backend.el (newsticker-retrieval-method)
22950         (newsticker-auto-mark-filter-list):
22951         * lisp/obsolete/vi.el (vi-mode):
22952         * lisp/progmodes/cc-engine.el (c-literal-type):
22953         * lisp/progmodes/cpp.el (cpp-face):
22954         * lisp/progmodes/ebrowse.el (ebrowse-electric-list-looper):
22955         * lisp/progmodes/elisp-mode.el (elisp--xref-make-xref):
22956         * lisp/progmodes/pascal.el (pascal-auto-lineup):
22957         * lisp/progmodes/prog-mode.el (prog-widen):
22958         * lisp/progmodes/verilog-mode.el (verilog-regexp-words)
22959         (verilog-auto-lineup, verilog-auto-reset-widths)
22960         (verilog-auto-arg-format, verilog-auto-inst-template-numbers):
22961         * lisp/textmodes/flyspell.el (flyspell-maybe-correct-transposition)
22962         (flyspell-maybe-correct-doubling):
22963         * lisp/textmodes/table.el (table-justify, table-justify-cell)
22964         (table-justify-row, table-justify-column, table-insert-sequence)
22965         (table--justify-cell-contents):
22966         * lisp/url/url-auth.el (url-get-authentication):
22967         * lisp/window.el (display-buffer-record-window):
22968         * lisp/xml.el (xml-parse-file, xml-parse-region):
22969         * src/gfilenotify.c (Fgfile_add_watch):
22970         Don't quote symbols with apostrophes in doc strings.
22971         Use asymmetric quotes instead.
22972         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
22973         Likewise for symbol in diagnostic.
22974         * lisp/image.el (image-extension-data):
22975         * lisp/register.el (frame-configuration-to-register):
22976         * src/buffer.c (syms_of_buffer):
22977         Remove bogus apostrophes after symbols.
22978         * lisp/thumbs.el (thumbs-conversion-program):
22979         Quote Lisp string values using double-quotes, not apostrophes.
22981 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
22983         Describe frame geometry and related functions in Elisp manual
22984         * doc/lispref/display.texi (Size of Displayed Text, Line Height)
22985         (Showing Images): Update references.
22986         * doc/lispref/elisp.texi (Top): Update node listing.
22987         * doc/lispref/frames.texi (Frame Geometry): New node.
22988         Move `Size and Position' section here.
22989         (Size Parameters): Update references.
22990         (Mouse Position): Update references and nomenclature.
22991         Describe new functions `x-mouse-absolute-pixel-position' and
22992         `x-set-mouse-absolute-pixel-position'.
22993         * doc/lispref/windows.texi (Window Sizes): Update references.
22994         (Resizing Windows): Update references.  Move description of
22995         `fit-frame-to-buffer' here.
22996         (Coordinates and Windows): Update nomenclature and references.
22997         Describe new arguments of `window-edges'.  Comment out
22998         descriptions of `window-left-column', `window-top-line',
22999         `window-pixel-left' and `window-pixel-top'.  Describe
23000         `window-absolute-pixel-position'.
23002 2015-08-20  Alan Mackenzie  <acm@muc.de>
23004         Handling of `c-parse-state'.  Fix low level bug.
23005         * lisp/progmodes/cc-engine.el (c-remove-stale-state-cache-backwards):
23006         Add "CASE 3.5" to handle `cache-pos' being only slightly before `here'.
23008 2015-08-20  Andreas Politz  <politza@hochschule-trier.de>
23010         * lisp/wid-edit.el (widget-color--choose-action): Quit *Color*
23011         window instead of deleting it.
23013 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
23015         In w32fns.c's Fx_frame_geometry rewrite check whether frame has a titlebar
23016         * src/w32fns.c (Fx_frame_geometry): Use title_bar.rgstate[0] to
23017         determine whether frame has a titlebar.
23018         Suggested by Eli Zaretskii <eliz@gnu.org>
23020 2015-08-20  Tassilo Horn  <tsdh@gnu.org>
23022         Add a prettify-symbols-alist for (La)TeX
23023         * lisp/textmodes/tex-mode.el (tex-prettify-symbols-alist):
23024         New variable holding an alist suitable as prettify-symbols-alist in
23025         (La)TeX modes.
23027 2015-08-19  Alan Mackenzie  <acm@muc.de>
23029         Make electric-pair-mode, delete-selection-mode and CC Mode cooperate.
23030         Fixes debbugs#21275.
23031         In Emacs >= 25, let electric-pair-mode take precedence over
23032         delete-selection-mode.
23033         * lisp/delsel.el (delete-selection-uses-region-p): New function,
23034         previously a lambda expression in a property value for
23035         `self-insert-command'.
23036         (top-level): Set the `delete-selection' property of
23037         `self-insert-command' to `delete-selection-uses-region-p'.
23038         * lisp/progmodes/cc-cmds.el (top-level): Give the `delete-selection'
23039         property for c-electric-\(brace\|paren\) the value
23040         `delete-selection-uses-region-p' when the latter function exists.
23042 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
23044         Fix key binding quoting in tutorial *Help*
23045         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
23046         When generating help for custom key bindings, use the user-preferred
23047         quoting style rather than hardcoding the grave style.
23049 2015-08-19  Eli Zaretskii  <eliz@gnu.org>
23051         Improve and future-proof OTF fonts support in w32uniscribe.c
23052         * src/w32uniscribe.c (uniscribe_otf_capability): Add commentary
23053         about the expected results and why the new Uniscribe APIs are not
23054         used in this function.
23055         (ScriptGetFontScriptTags_Proc, ScriptGetFontLanguageTags_Proc)
23056         (ScriptGetFontFeatureTags_Proc): New function typedefs.
23057         (uniscribe_new_apis): New static variable.
23058         (uniscribe_check_features): New function, implements OTF features
23059         verification while correctly accounting for features in the list
23060         after the nil member, if any.
23061         (uniscribe_check_otf_1): New function, retrieves the features
23062         supported by the font for the requested script and language using
23063         the Uniscribe APIs available from Windows Vista onwards.
23064         (uniscribe_check_otf): If the new Uniscribe APIs are available,
23065         use them in preference to reading the font data directly.  Call
23066         uniscribe_check_features to verify that the requested features are
23067         supported, replacing the original incomplete code.
23068         (syms_of_w32uniscribe): Initialize function pointers for the new
23069         Uniscribe APIs.  (Bug#21260)
23070         (otf_features): Scan the script, langsys, and feature arrays back
23071         to front, so that the result we return has them in alphabetical
23072         order, like ftfont.c does.
23073         * src/w32fns.c (syms_of_w32fns) <w32-disable-new-uniscribe-apis>:
23074         New variable for debugging w32uniscribe.c code.
23076 2015-08-19  Artur Malabarba  <bruce.connor.am@gmail.com>
23078         * lisp/isearch.el (isearch-search-fun-default): Revert a5bdb87
23079         Remove usage of `isearch-lax-whitespace' inside the `iearch-word'
23080         clause of `isearch-search-fun-default'.  That lax variable does not
23081         refer to lax-whitespacing.  Related to (bug#21777).
23082         This reverts commit a5bdb872edb9f031fe041faf9a8c0be432e5f64c.
23083         * lisp/character-fold.el (character-fold-search): Set to nil.
23084         Default to nil for now, until someone implements proper
23085         lax-whitespacing with char-fold searching.
23087 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
23089         Fix doc-string of `help-mode-finish'.
23090         * lisp/help-mode.el (help-mode-finish): Fix doc-string.
23092         In nsimage.m include coding.h (Bug#21292)
23093         * src/nsimage.m (top-level): Include coding.h (Bug#21292).
23095         Move window edge functions to Elisp.
23096         * src/window.c (Fwindow_edges, Fwindow_pixel_edges)
23097         (Fwindow_absolute_pixel_edges, Fwindow_inside_edges)
23098         (Fwindow_inside_pixel_edges, Fwindow_inside_absolute_pixel_edges):
23099         Move to window.el.
23100         (calc_absolute_offset): Remove.
23101         * lisp/frame.el (frame-edges): New function.
23102         * lisp/window.el (window-edges, window-pixel-edges)
23103         (window-absolute-pixel-edges): Move here from window.c.
23104         (window-body-edges, window-body-pixel-edges)
23105         (window-absolute-body-pixel-edges): Move here from window.c and
23106         rename "inside" to "body".  Keep old names as aliases.
23107         (window-absolute-pixel-position): New function.
23109 2015-08-19  Katsumi Yamaoka  <yamaoka@jpl.org>
23111         [Gnus]: Use overlay functions directly
23112         * lisp/gnus/gnus-art.el (gnus-mime-inline-part, gnus-mm-display-part)
23113         (gnus-insert-mime-button, gnus-mime-buttonize-attachments-in-header)
23114         (gnus-article-highlight-signature, gnus-article-extend-url-button)
23115         (gnus-article-add-button, gnus-insert-prev-page-button)
23116         (gnus-insert-next-page-button, gnus-insert-mime-security-button):
23117         * lisp/gnus/gnus-cite.el (gnus-cite-delete-overlays)
23118         (gnus-cite-add-face):
23119         * lisp/gnus/gnus-html.el (gnus-html-wash-tags):
23120         * lisp/gnus/gnus-salt.el (gnus-tree-read-summary-keys)
23121         (gnus-tree-recenter, gnus-highlight-selected-tree):
23122         * lisp/gnus/gnus-sum.el (gnus-summary-show-all-threads)
23123         (gnus-summary-show-thread, gnus-summary-hide-thread)
23124         (gnus-highlight-selected-summary):
23125         * lisp/gnus/gnus-util.el (gnus-put-overlay-excluding-newlines):
23126         * lisp/gnus/message.el (message-fix-before-sending)
23127         (message-toggle-image-thumbnails):
23128         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
23129         * lisp/gnus/sieve.el (sieve-highlight, sieve-insert-scripts):
23130         Use overlay functions directly instead of using gnus-overlay-*,
23131         message-overlay-*, and sieve-overlay-*.
23132         * lisp/gnus/gnus-sum.el (gnus-remove-overlays):
23133         * lisp/gnus/gnus.el (gnus-make-overlay, gnus-copy-overlay)
23134         (gnus-delete-overlay, gnus-overlay-get, gnus-overlay-put)
23135         (gnus-move-overlay, gnus-overlay-buffer, gnus-overlay-start)
23136         (gnus-overlay-end, gnus-overlays-at, gnus-overlays-in):
23137         * lisp/gnus/message.el (message-delete-overlay, message-make-overlay)
23138         (message-overlay-get, message-overlay-put, message-overlays-in):
23139         * lisp/gnus/sieve.el (sieve-make-overlay, sieve-overlay-put)
23140         (sieve-overlays-at): Remove.
23142 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
23144         In w32fns.c condition TITLEBAR_INFO declaration on WINDOWS version
23145         * src/w32fns.c (TITLEBAR_INFO): Make it a typedef so MinGW64
23146         builds can use the declaration from the system headers.
23147         (GetTitleBarInfo_Proc, Fx_frame_geometry): Adapt to new
23148         definition of TITLEBAR_INFO.
23149         Suggested by Eli Zaretskii  <eliz@gnu.org>
23151 2015-08-19  Glenn Morris  <rgm@gnu.org>
23153         * lisp/gnus/nnmaildir.el (nnmaildir-flag-mark-mapping): Add "P".
23155 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
23157         Use new q ‘format’ flag when fixing quotes in C
23158         * src/image.c (image_size_error): New function.  All uses of
23159         image_error with "Invalid image size ..."  changed to use it.
23160         * src/image.c (image_size_error, xbm_load_image, xbm_load)
23161         (xpm_load, xpm_load_image, xpm_load, pbm_load, png_load_body)
23162         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
23163         (imagemagick_load, svg_load, svg_load_image, gs_load)
23164         (x_kill_gs_process):
23165         * src/lread.c (load_warn_old_style_backquotes):
23166         * src/xfaces.c (load_pixmap):
23167         * src/xselect.c (x_clipboard_manager_error_1):
23168         Use %qs, not uLSQM and uRSQM.
23169         * src/syntax.c (Finternal_describe_syntax_value):
23170         Prefer Fsubstitute_command_keys to Fformat, as this lets
23171         us use AUTO_STRING.
23172         * src/xdisp.c (vadd_to_log): Use AUTO_STRING on the format argument,
23173         as it's now guaranteed to be ASCII.
23174         * src/xselect.c (x_clipboard_manager_error_2):
23175         Avoid grave accent in low-level stderr diagnostic.
23177 2015-08-19  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
23179         New q flag for ‘format’
23180         * doc/lispref/processes.texi (Sentinels):
23181         Don't hardwire grave quoting style in example.
23182         * doc/lispref/strings.texi (Formatting Strings):
23183         * etc/NEWS:
23184         Document new q flag.
23185         * src/editfns.c (Fformat): Implement it.
23187 2015-08-18  Daiki Ueno  <ueno@gnu.org>
23189         pinentry.el: Add debugging support
23190         * lisp/net/pinentry.el (pinentry-debug): New variable.
23191         (pinentry-debug-buffer): New variable.
23192         (pinentry--process-filter): Send input to the debug buffer, if
23193         `pinentry-debug' is set.
23195         pinentry.el: Improve multiline prompt
23196         * lisp/net/pinentry.el (pinentry--prompt): Simplify the interface.
23197         (pinentry--process-filter): Use `pinentry--prompt' for CONFIRM
23198         command.
23200 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
23202         Fix multibyte confusion in diagnostics
23203         * src/print.c (print_error_message):
23204         Don't assume that the caller's name is unibyte.
23205         * src/xdisp.c (vadd_to_log):
23206         Don't assume that the formatted diagnostic is unibyte.
23208         Fix file name encodings in diagnostics
23209         Also, close some minor races when opening image files, by opening
23210         them once instead of multiple times.
23211         * src/gtkutil.c (xg_get_image_for_pixmap):
23212         * src/image.c (xpm_load, tiff_load, gif_load, imagemagick_load)
23213         (svg_load):
23214         * src/nsimage.m (allocInitFromFile:):
23215         * src/xfns.c (xg_set_icon):
23216         Encode file name, since x_find_image_file no longer does that.
23217         * src/image.c (x_find_image_fd): New function.
23218         (x_find_image_file): Use it.  Do not encode resulting file name,
23219         since callers sometimes need it decoded.
23220         (slurp_file): File arg is now a fd, not a file name.
23221         All callers changed.  This saves us having to open the file twice.
23222         (xbm_load, xpm_load, pbm_load, png_load_body, jpeg_load_body)
23223         (svg_load):
23224         Use x_find_image_fd and fdopen to save a file-open.
23225         Report file name that failed.
23226         * src/lread.c (openp): If PREDICATE is t, open the file in binary mode.
23228 2015-08-18  Dmitry Gutov  <dgutov@yandex.ru>
23230         Allow blink-matching-paren to jump off screen
23231         * doc/emacs/programs.texi (Matching): Mention the
23232         `blink-matching-paren' value `jump-offscreen'.
23233         * lisp/simple.el (blink-matching-paren): New possible value.
23234         (blink-matching-paren-on-screen): Clarify the docstring.
23235         (blink-matching-open): Handle `jump-offscreen' (bug#21286).
23237         Refine the previous change
23238         * lisp/simple.el (blink-matching-open): Use minibuffer-message
23239         outside of save-excursion (bug#21286).
23241 2015-08-18  Martin Rudalics  <rudalics@gmx.at>
23243         Rewrite and add frame geometry related functions.
23244         * src/frame.c (Fframe_position): New function.
23245         (Fset_frame_position): Rename parameters and rewrite doc-string.
23246         (syms_of_frame): Remove Qframe_position, Qframe_outer_size,
23247         Qtitle_height and Qframe_inner_size.  Add Qouter_edges,
23248         Qouter_position, Qouter_size, Qnative_edges, Qinner_edges,
23249         Qtitle_bar_size.
23250         * src/nsfns.m (frame_geometry): New function.
23251         (Fx_frame_geometry): Call frame_geometry.
23252         (Fx_frame_edges): New function.
23253         * src/w32fns.c (C_CHILDREN_TITLEBAR, TITLEBAR_INFO)
23254         (GetTitleBarInfo_Proc): Define these so we can use the
23255         GetTitleBarInfo API.
23256         (Fw32_frame_menu_bar_size, Fw32_frame_rect): Remove.
23257         (Fx_frame_geometry): Rewrite.
23258         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
23259         (Fx_set_mouse_absolute_pixel_position): New functions.
23260         * src/xfns.c (frame_geometry): New function.
23261         (Fx_frame_geometry): Call frame_geometry.
23262         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
23263         (Fx_set_mouse_absolute_pixel_position): New functions.
23265 2015-08-18  Michael Albinus  <michael.albinus@gmx.de>
23267         Improve Tramp's compatibility
23268         * lisp/net/tramp.el (tramp-get-method-parameter):
23269         * lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
23270         (tramp-adb-get-device):
23271         * lisp/net/trampver.el (tramp-repository-get-version):
23272         Use `tramp-compat-replace-regexp-in-string'.
23274 2015-08-18  Pierre Téchoueyres  <pierre.techoueyres@free.fr>  (tiny change)
23276         * lisp/net/tramp-cmds.el (tramp-reporter-dump-variable):
23277         Encode/decode string.
23279 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
23281         Clarify what happens to match data on failure
23282         Problem reported by Ernesto Alfonso (Bug#21279).
23283         * doc/lispref/searching.texi (Regexp Search, Simple Match Data):
23284         Document more carefully what happens to match data after a failed
23285         search.
23286         * src/search.c (Fmatch_beginning, Fmatch_end): Document that
23287         the return value is undefined if the last search failed.
23288         (Fmatch_data): Simplify doc string line 1.
23290 2015-08-18  Daiki Ueno  <ueno@gnu.org>
23292         Revert "pinentry.el: Support external passphrase cache"
23293         This reverts commit e086e55a664ec27fbca7b3231c4b32cb78a89337.
23294         pinentry.el shouldn't directly interact with the secrets service,
23295         but ask the caller to cache the passphrase.
23297 2015-08-17  Xue Fuqiao  <xfq.free@gmail.com>
23299         * doc/emacs/sending.texi (Mail Misc): Fix two index entries for
23300         Message mode hooks.
23302 2015-08-17  Daiki Ueno  <ueno@gnu.org>
23304         epg.el: Make gpgconf output parsing future proof
23305         * lisp/epg.el (epg--start): Count the number of fields in "gpgconf
23306         --list-options" output.
23308         pinentry.el: Support external passphrase cache
23309         * lisp/net/pinentry.el (pinentry-use-secrets): New user option.
23310         (pinentry--allow-external-password-cache): New local variable.
23311         (pinentry--key-info): New local variable.
23312         (secrets-enabled, secrets-search-items, secrets-get-secret):
23313         Declare.
23314         (pinentry--send-passphrase): New function, split from
23315         `pinentry--process-filter'.
23316         (pinentry--process-filter): Use secrets.el to retrieve passphrase
23317         from login keyring.
23319         pinentry.el: Popup window for multiline prompt
23320         * lisp/net/pinentry.el (pinentry): New custom group.
23321         (pinentry-popup-prompt-window): New user option.
23322         (pinentry-prompt-window-height): New user option.
23323         (pinentry--prompt-buffer): New variable.
23324         (pinentry-prompt-mode-map): New variable.
23325         (pinentry-prompt-mode): New function.
23326         (pinentry--prompt): New function.
23327         (pinentry--process-filter): Use `pinentry--prompt' instead of
23328         `read-passwd' and `y-or-n-p'.
23330 2015-08-17  Katsumi Yamaoka  <yamaoka@jpl.org>
23332         message.el: Silent the byte compiler
23333         * lisp/gnus/message.el (message-overlay-put, message-make-overlay)
23334         (message-kill-all-overlays, message-overlays-in, message-overlay-get)
23335         (message-delete-overlay, message-window-inside-pixel-edges):
23336         Declare before using.
23338         * lisp/gnus/message.el (message-overlay-get, message-overlays-in)
23339         (message-window-inside-pixel-edges): XEmacs compatible functions.
23341 2015-08-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
23343         * lisp/gnus/message.el (message-toggle-image-thumbnails): New command.
23345 2015-08-17  Noah Friedman  <friedman@splode.com>
23347         * lisp/simple.el (blink-matching-open): Restore point before
23348         calling minibuffer-message.
23350 2015-08-17  Ronnie Schnell  <ronnie@driver-aces.com>
23352         * lisp/play/dunnet.el: Update version number in header (now
23353         matches help).
23355 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
23357         Curved quotes in --batch diagnostics in non-UTF-8
23358         When run with --batch, check that curved quotes are compatible with
23359         the system locale before outputting them in diagnostics.
23360         Problem reported by Eli Zaretskii in:
23361         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00594.html
23362         * lisp/startup.el (command-line): Set internal--text-quoting-flag
23363         after the standard display table is initialized.
23364         * src/doc.c (default_to_grave_quoting_style): New function.
23365         (text_quoting_style): Use it.
23366         (text_quoting_flag): New static var, visible to Lisp as
23367         internal--text-quoting-flag.
23368         * src/emacs.c: Include <wchar.h> if available.
23369         (using_utf8): New function.
23370         (main): Use it to initialize text_quoting_flag.
23371         * src/regex.h (btowc) [WIDE_CHAR_SUPPORT && emacs]:
23372         Don't define, as it's not needed and it clashes with wchar.h.
23374 2015-08-17  Glenn Morris  <rgm@gnu.org>
23376         * doc/misc/tramp.texi (Configuration): Reword to avoid warning
23377         from makeinfo about spurious "Note:" cross-reference, and for grammar.
23379 2015-08-17  Ilya Zakharevich  <ilya@math.berkeley.edu>
23381         Minor change in variable initialization on MS-Windows
23382         * src/w32fns.c <after_dead_key>: Initialize to -1.
23383         (deliver_wm_chars): If after_deadkey is zero, don't set after_dead
23384         non-zero.
23386         Fix a bug with LWindow key remapping on MS-Windows
23387         * src/w32fns.c (deliver_wm_chars): Fix a typo.  (Bug#21276)
23389 2015-08-17  Eli Zaretskii  <eliz@gnu.org>
23391         Improve fontset support for latest OTF script tags
23392         * lisp/international/fontset.el (otf-script-alist): Add some
23393         missing script tags.
23394         (setup-default-fontset): Include settings for v2 versions of the
23395         script tags used by some modern OTF/TTF fonts.
23397 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
23399         Spelling fixes
23401 2015-08-16  Paul Eggert  <eggert@cs.ucla.edu>
23403         Use curved quotes in core elisp diagnostics
23404         In the core elisp files, use curved quotes in diagnostic formats,
23405         so that they follow user preference as per ‘text-quoting-style’
23406         rather than being hard-coded to quote `like this'.
23407         * lisp/abbrev.el (expand-region-abbrevs):
23408         * lisp/button.el (button-category-symbol, button-put)
23409         (make-text-button):
23410         * lisp/cus-start.el:
23411         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
23412         (custom--sort-vars-1, load-theme):
23413         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
23414         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
23415         (cl-generic-generalizers):
23416         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
23417         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
23418         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
23419         (advice--make, define-advice):
23420         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
23421         * lisp/emacs-lisp/timer.el (timer-event-handler):
23422         * lisp/env.el (setenv):
23423         * lisp/facemenu.el (facemenu-add-new-face)
23424         (facemenu-add-new-color):
23425         * lisp/faces.el (face-documentation, read-face-name)
23426         (face-read-string, read-face-font, face-spec-set-match-display)
23427         (read-color, x-resolve-font-name):
23428         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
23429         (set-auto-mode, hack-local-variables)
23430         (hack-one-local-variable--obsolete)
23431         (dir-locals-set-directory-class, write-file)
23432         (basic-save-buffer, delete-directory, copy-directory)
23433         (recover-session, recover-session-finish, insert-directory)
23434         (file-modes-char-to-who, file-modes-symbolic-to-number)
23435         (move-file-to-trash):
23436         * lisp/font-lock.el (font-lock-fontify-buffer):
23437         * lisp/format.el (format-write-file, format-find-file)
23438         (format-insert-file):
23439         * lisp/frame.el (get-device-terminal, select-frame-by-name):
23440         * lisp/fringe.el (fringe--check-style):
23441         * lisp/help.el (describe-minor-mode-from-indicator):
23442         * lisp/image.el (image-type):
23443         * lisp/international/fontset.el (x-must-resolve-font-name):
23444         * lisp/international/mule-cmds.el (prefer-coding-system)
23445         (select-safe-coding-system-interactively)
23446         (select-safe-coding-system, activate-input-method)
23447         (toggle-input-method, describe-current-input-method):
23448         * lisp/international/mule-conf.el (code-offset):
23449         * lisp/mouse.el (minor-mode-menu-from-indicator):
23450         * lisp/replace.el (query-replace-read-from)
23451         (occur-after-change-function, occur-1):
23452         * lisp/scroll-bar.el (scroll-bar-columns):
23453         * lisp/simple.el (execute-extended-command)
23454         (undo-outer-limit-truncate, compose-mail, set-variable)
23455         (choose-completion-string, define-alternatives):
23456         * lisp/startup.el (site-run-file, tty-handle-args)
23457         (command-line, command-line-1):
23458         * lisp/subr.el (noreturn, define-error, add-to-list)
23459         (read-char-choice):
23460         * lisp/term/common-win.el (x-handle-xrm-switch)
23461         (x-handle-name-switch, x-handle-args):
23462         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
23463         Use curved quotes in diagnostics.
23464         * lisp/international/mule.el (find-auto-coding):
23465         Use " to quote in a diagnostic, to be consistent with the rest of
23466         this file.
23468         Convert lisp/term/x-win.el to UTF-8
23469         * lisp/term/x-win.el: Convert to UTF-8.  This doesn't affect
23470         runtime behavior, and the file is multilingual so compile-time
23471         appearance shouldn't be an issue.
23472         * admin/notes/unicode: Document this.
23474 2015-08-16  Wilson Snyder  <wsnyder@wsnyder.org>
23476         Update verilog-mode.el to 2015-05-14-6232468-vpo-GNU.
23477         * lisp/progmodes/verilog-mode.el: Fix some non-automated indent
23478         issues and comments, bug#943.
23479         (verilog-type-font-keywords): Cycle delay operators like ##1 and
23480         ##[0:$] are now highlighted in their entirety similarly to the #
23481         delay-control operator.  Likewise, the followed-by operators #-#
23482         and #=# are no longer partially highlighed.
23483         (verilog-backward-syntactic-ws-quick)
23484         (verilog-skip-backward-comments): Minor performance improvements
23485         to buffer traversal functions for reduced latency.
23486         (verilog-calc-1, verilog-in-deferred-immediate-final-p): When the
23487         keyword 'final' follows 'assert/assume/cover', then it is part of
23488         a deferred immediate assertion item and should not be treated as a
23489         final construct for indentation.  Reported by Yuri Sugihara.
23490         (verilog-do-indent): Virtual task/function/class definition lines
23491         should not be considered as declarations.  Reported by Enzo Chi.
23492         (verilog-do-indent): Do not falsely indent to '=' of
23493         property/sequence operators on subsequent lines of a multi-line
23494         statement.
23495         (verilog-assignment-operator-re): Fix '!==' operator and add
23496         support for '<->', ':/', '#-#', and '#=#' operators.
23497         (verilog-calculate-indent, verilog-label-be): Enable
23498         case-sensitive regular expression parsing when looking for
23499         keywords.
23500         (verilog-calc-1): Detect 'pure virtual method' declarations which
23501         exist in abstract classes.  Reported by Enzo Chi and Kaushal Modi.
23502         (verilog-backward-ws&directives): When moving back to the start of
23503         a line and the preceeding line ended with an escaped-newline, then
23504         jump up one line.  This properly consumes a multi-line
23505         pre-processor directive.  Reported by Kaushal Modi.
23506         (verilog-dpi-import-export-re, verilog-extended-complete-re)
23507         (verilog-calc-1): Teach verilog-mode to properly indent after a
23508         DPI import/export statement that resides outside of a module.
23509         Reported by Kaushal Modi.
23510         (verilog-extended-complete-re): Update regexp to match both
23511         "DPI-C" and "DPI".  Reported by Kaushal Modi.
23513 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
23515         substitute-command-keys a few more doc strings
23516         * lisp/allout.el (outlineify-sticky):
23517         * lisp/files.el (hack-one-local-variable--obsolete):
23518         * lisp/help-fns.el (help-fns--obsolete, describe-variable):
23519         Use substitute-command-keys on some doc strings so that
23520         they don't use hard-coded key bindings or quoting styles.
23522         Fix quoting in Fformat calls
23523         * src/image.c (xbm_read_bitmap_data, xbm_load_image, xbm_load)
23524         (xpm_load, xpm_load_image, pbm_load, png_load_body)
23525         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
23526         (imagemagick_load, svg_load, svg_load_image, gs_load)
23527         (x_kill_gs_process):
23528         * src/lread.c (load_warn_old_style_backquotes):
23529         * src/xfaces.c (load_pixmap):
23530         * src/xselect.c (x_clipboard_manager_error_1):
23531         Quote diagnostics according to user preference when calling
23532         Fformat or its derivatives.
23534 2015-08-15  Glenn Morris  <rgm@gnu.org>
23536         * admin/admin.el (set-version, set-copyright): Remove deleted files.
23538 2015-08-15  Stephen Leake  <stephen_leake@stephe-leake.org>
23540         Allow describe-function helpers to access buffer-local values
23541         This will be used by cedet/mode-local.el `describe-mode-local-override'
23542         on `help-fns-describe-function-functions' in upstream CEDET.
23543         * lisp/help-fns.el (describe-function-orig-buffer): New, let-bound in
23544         `describe-function'.
23545         (describe-function): Bind it, save it on the help xref stack.
23547         Handle pulse-background being nil
23548         * lisp/cedet/pulse.el (pulse-lighten-highlight): Inherit
23549         pulse-background, handle it being nil.
23551 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
23553         Fix "\`" confusion in Lisp strings
23554         * admin/authors.el (authors-canonical-author-name):
23555         Fix typo by using "\\`" not "\`" in string RE.
23556         * lisp/obsolete/complete.el (PC-complete-as-file-name):
23557         * lisp/obsolete/vi.el (vi-backward-blank-delimited-word):
23558         * lisp/progmodes/verilog-mode.el (verilog-mode-map):
23559         Use plain "`", not the equivalent-but-confusing "\`", in strings.
23560         * lisp/textmodes/texinfmt.el: Fix comment likewise.
23562 2015-08-15  Dani Moncayo  <dmoncayo@gmail.com>
23564         * nt/zipdist.bat: Remove -- no longer used.
23566 2015-08-15  Jürgen Hötzel  <juergen@archlinux.org>
23568         * lisp/net/tramp-sh.el (tramp-remote-selinux-p): Use "selinuxenabled"
23569         rather than "getenforce".
23570         (tramp-sh-handle-set-file-selinux-context): Do not
23571         cache SELinux context if not all context components are given.
23573 2015-08-15  Eli Zaretskii  <eliz@gnu.org>
23575         Add doc strings to 2 help-mode.el functions
23576         * lisp/help-mode.el (help-mode-setup, help-mode-finish): Add doc
23577         strings.  (Bug#21263)
23579         Remove files used by the old MS-Windows specific build procedure
23580         * admin/unidata/makefile.w32-in:
23581         * doc/emacs/makefile.w32-in:
23582         * doc/lispintro/makefile.w32-in:
23583         * doc/lispref/makefile.w32-in:
23584         * doc/misc/makefile.w32-in:
23585         * leim/makefile.w32-in:
23586         * lib-src/makefile.w32-in:
23587         * lib/makefile.w32-in:
23588         * lisp/makefile.w32-in:
23589         * nt/INSTALL.OLD:
23590         * nt/config.nt:
23591         * nt/emacs-src.tags:
23592         * nt/envadd.bat:
23593         * nt/gmake.defs:
23594         * nt/makefile.w32-in:
23595         * nt/multi-install-info.bat:
23596         * nt/nmake.defs:
23597         * nt/paths.h:
23598         * src/makefile.w32-in: Files deleted.
23599         * nt/configure.bat: Remove everything except the blurb about the
23600         new build procedure.
23601         * make-dist: Remove references to makefile.w32-in in various
23602         directories, and to files in nt/ that were deleted.
23603         * etc/NEWS: Mention the fact that the files were dropped.
23605 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
23607         * doc/emacs/mule.texi (Charsets): Give fuller title for ISO-IR.
23608         (Bug#21248)
23610 2015-08-14  Paul Eggert  <eggert@cs.ucla.edu>
23612         Default to inotify instead of gfile
23613         * configure.ac (with_file_notification): Fix typo that
23614         prevented suppression of file notification if HAVE_NS.
23615         (NOTIFY_OBJ): Prefer inotify to gfile if both exist and
23616         with_file_notification is 'yes' (Bug#21241).
23617         * etc/NEWS: Mention this.
23619         Fix broken URLs for ISO-IR
23620         * doc/emacs/mule.texi (Charsets):
23621         * lisp/international/mule-conf.el:
23622         Fix broken URL (Bug#21248).
23624         Low-level diagnostics now use ‘text-quoting-style’
23625         * src/doprnt.c (doprnt):
23626         Format ` and ' as per ‘text-quoting-style’.
23627         * src/xdisp.c (vmessage, message): Mention that the format should
23628         not contain ` or '.
23630         Prefer ‘format’ to ‘substitute-command-keys’
23631         * src/character.h (uLSQM, uRSQM): Move here ...
23632         * src/doc.c (uLSQM, uRSQM): ... from here.
23633         * src/doc.c (Fsubstitute_command_keys):
23634         * src/syntax.c (Finternal_describe_syntax_value):
23635         * lisp/cedet/mode-local.el (mode-local-print-binding)
23636         (mode-local-describe-bindings-2):
23637         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
23638         * lisp/cus-theme.el (describe-theme-1):
23639         * lisp/descr-text.el (describe-text-properties-1, describe-char):
23640         * lisp/emacs-lisp/cl-extra.el (cl--describe-class):
23641         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
23642         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
23643         * lisp/emacs-lisp/package.el (describe-package-1):
23644         * lisp/faces.el (describe-face):
23645         * lisp/help-fns.el (help-fns--key-bindings)
23646         (help-fns--compiler-macro, help-fns--parent-mode)
23647         (help-fns--obsolete, help-fns--interactive-only)
23648         (describe-function-1, describe-variable):
23649         * lisp/help.el (describe-mode):
23650         Prefer ‘format’ to ‘substitute-command-keys’ when either will do
23651         to implement quoting style.  This generally makes the code simpler.
23653         Extend ‘format’ to translate curved quotes
23654         This is a followup to the recent doc string change, and deals with
23655         diagnostics and the like.  This patch is more conservative than
23656         the doc string change, in that the behavior of ‘format’ changes
23657         only if its first arg contains curved quotes and the user prefers
23658         straight or grave quotes.  (Come to think of it, perhaps we should
23659         be similarly conservative with doc strings too, but that can wait.)
23660         The upside of this conservatism is that existing usage is almost
23661         surely unaffected.  The downside is that we'll eventually have to
23662         change Emacs's format strings to use curved quotes in places where
23663         the user might want curved quotes, but that's a simple and
23664         mechanical translation that I'm willing to do later.  (Bug#21222)
23665         * doc/lispref/help.texi (Keys in Documentation):
23666         Move description of text-quoting-style from here ...
23667         * doc/lispref/strings.texi (Formatting Strings):
23668         ... to here, and describe new behavior of ‘format’.
23669         * etc/NEWS: Describe new behavior.
23670         * lisp/calc/calc-help.el (calc-describe-thing):
23671         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
23672         * lisp/info.el (Info-find-index-name):
23673         Use ‘concat’ rather than ‘format’ to avoid misinterpretation
23674         of recently-added curved quotes.
23675         * src/doc.c (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
23676         Move from here ...
23677         * src/lisp.h: ... to here.
23678         * src/doc.c (text_quoting_style): New function.
23679         (Fsubstitute_command_keys): Use it.
23680         * src/editfns.c (Fformat): Implement new behavior.
23681         * src/lisp.h (enum text_quoting_style): New enum.
23683 2015-08-14  Stefan Monnier  <monnier@iro.umontreal.ca>
23685         * src/keyboard.c: Use false/true instead of 0/1 for booleans.
23686         * src/keyboard.h (struct kboard): Mark kbd_queue_has_data as boolean.
23688 2015-08-14  Michael Albinus  <michael.albinus@gmx.de>
23690         * lisp/net/tramp-sh.el (tramp-sh-handle-file-acl): Do not redirect
23691         stderr to /dev/null, this is done in `tramp-send-command-and-check'.
23693 2015-08-14  Jürgen Hötzel  <juergen@archlinux.org>
23695         Flush file properties in Tramp
23696         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-modes)
23697         (tramp-sh-handle-set-file-times):
23698         * lisp/net/tramp-adb.el (tramp-adb-handle-set-file-modes)
23699         (tramp-adb-handle-set-file-times): Flush the file properties of
23700         the directory.
23702 2015-08-14  Ronnie Schnell  <ronnie@driver-aces.com>
23704         * doc/emacs/misc.texi (Amusements): Fixed typo.
23706 2015-08-14  Eli Zaretskii  <eliz@gnu.org>
23708         Don't miss warnings about removing string text properties while dumping
23709         * src/alloc.c (purecopy): Warn about removing a string's text
23710         properties even when the same string was already pure-copied
23711         earlier.
23712         * lisp/progmodes/elisp-mode.el (elisp--xref-format)
23713         (elisp--xref-format-extra): Fix the commentary.
23715 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
23717         * lisp/progmodes/sh-script.el (sh-mode): Handle .cshrc (bug#21049).
23719 2015-08-13  Magnus Henoch  <magnus.henoch@gmail.com>
23721         * lisp/progmodes/compile.el: Use lexical-binding.
23722         (compilation-move-to-column): Assume 8-wide TABs (bug#21038).
23724 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
23726         (uniquify-ask-about-buffer-names-p): Remove, unused (bug#21037)
23727         * lisp/uniquify.el: Remove redundant `:group's.
23729 2015-08-13  Jürgen Hötzel  <juergen@archlinux.org>
23731         * lisp/net/tramp-adb.el
23732         (tramp-adb-handle-directory-files-and-attributes): Make a copy of
23733         result to prevent modification of the tramp-cache by side effects.
23734         Use the correct cache key.
23736 2015-08-13  Paul Eggert  <eggert@cs.ucla.edu>
23738         Make add_to_log varargs
23739         * src/alloc.c (run_finalizer_handler):
23740         * src/charset.c (load_charset_map_from_vector):
23741         * src/nsimage.m (ns_load_image):
23742         * src/xfaces.c (load_pixmap, load_color2):
23743         Simplify, now that add_to_log has a variable number of args.
23744         * src/image.c (image_error): Take a variable number of args.
23745         Callers simplified.
23746         * src/lisp.h (add_to_log, vadd_to_log): Adjust to new APIs.
23747         * src/xdisp.c (format_nargs, vadd_to_log): New functions.
23748         (add_to_log): Make varargs, and reimplement in terms of vadd_to_log.
23749         * src/xfaces.c (merge_face_ref): Fix typo that omitted color name.
23751         Optional args for holiday-greek-orthodox-easter
23752         * etc/NEWS: Document this.
23753         * lisp/calendar/holidays.el (holiday-greek-orthodox-easter):
23754         Add optional args N and STRING, mimicking the API and code of
23755         ‘holiday-easter-etc’.  From suggestion by Foivos S. Zakkak (Bug#21256).
23757 2015-08-13  Stephen Leake  <stephen_leake@stephe-leake.org>
23759         xref-find-definitions: Exclude more generic function items.
23760         * lisp/emacs-lisp/cl-generic.el (cl--generic-search-method):
23761         Add doc string.
23762         (cl--generic-find-defgeneric-regexp): New.
23763         (find-function-regexp-alist): Add it.
23764         * lisp/emacs-lisp/find-func.el (find-feature-regexp): Move here from
23765         elisp-mode.el, change to search for ";;; Code:"
23766         (find-alias-regexp): Move here from elisp-mode.el, cleaned up.
23767         (find-function-regexp-alist): Add them.
23768         * lisp/progmodes/elisp-mode.el:
23769         (elisp--xref-format, elisp--xref-format-extra): Change back to
23770         defvar due to bug#21237.
23771         (elisp--xref-find-definitions): Exclude co-located default methods for
23772         generic functions.  Also exclude implicitly declared defgeneric.
23773         (elisp--xref-find-definitions): Handle C source properly.  Exclude minor
23774         mode variables defined by 'define-minor-mode'.
23775         * test/automated/elisp-mode-tests.el: Declare generic functions, add
23776         tests for them.
23777         (xref-elisp-test-run): Fix bug.
23778         (emacs-test-dir): Improve initial value.
23779         (find-defs-defun-defvar-el): Don't expect defvar.
23780         (find-defs-feature-el): Match change to find-feature-regexp.
23782 2015-08-13  Eli Zaretskii  <eliz@gnu.org>
23784         Improve warning about purecopy of strings with properties
23785         * src/alloc.c (purecopy): Show the offending string with the
23786         warning about removing its text properties.
23788 2015-08-12  Alan Mackenzie  <acm@muc.de>
23790         Introduce new macros to cover Emacs's new names in cl-lib.el
23791         This also eliminates `mapcan' warnings in XEmacs.
23792         * lisp/progmodes/cc-defs.el (c--mapcan-status): New variable to
23793         characterise [X]Emacs versions.
23794         (top-level): Require either 'cl or 'cl-lib, depending on
23795         c--mapcan-status.
23796         Change this back to cc-external-require from an eval-when-compile
23797         require.
23798         (c--mapcan, c--set-difference, c--intersection, c--macroexpand-all)
23799         (c--delete-duplicates): New macros which expand into either old or new
23800         names.
23801         (c-make-keywords-re, c-lang-defconst, c-lang-const): Use the new macros
23802         rather than the old names.
23803         * lisp/progmodes/cc-engine.el (c-declare-lang-variables): Use c--mapcan
23804         rather than mapcan.
23805         * lisp/progmodes/cc-fonts.el (c-compose-keywords-list): Use c--mapcan.
23806         * lisp/progmodes/cc-langs.el (top-level): Require either 'cl or 'cl-lib,
23807         depending on c--mapcan-status.
23808         (c-filter-ops, c-all-op-syntax-tokens, c-assignment-op-regexp)
23809         (c-type-start-kwds, c-prefix-spec-kwds, c-specifier-key)
23810         (c-not-decl-init-keywords, c-not-primitive-type-keywords)
23811         (c-paren-any-kwds, c-<>-sexp-kwds, c-block-stmt-kwds, c-expr-kwds)
23812         (c-decl-block-key, c-keywords, c-keywords-obarray)
23813         (c-regular-keywords-regexp, c-primary-expr-regexp)
23814         (c-primary-expr-regexp, c-block-prefix-disallowed-chars)
23815         (c-known-type-key, c-nonlabel-token-key)
23816         (c-make-init-lang-vars-fun): Use the new macros rather than the old
23817         names.
23819 2015-08-12  Oleh Krehel  <ohwoeowho@gmail.com>
23821         loadhist.el (read-feature): Conform to completing-read
23822         * lisp/loadhist.el (read-feature): According to `completing-read'
23823         documentation, if collection is a list, then it must be a list of
23824         strings, not a list of symbols like before.
23826 2015-08-12  David Kastrup  <dak@gnu.org>
23828         Deal gracefully with up-events (Bug#19746)
23829         * src/keyboard.c (apply_modifiers_uncached, parse_solitary_modifier)
23830         (parse_modifiers_uncached): React gracefully to "up-" modifiers:
23831         those may easily be injected by user-level Lisp code.
23832         (read_key_sequence): Discard unbound up-events like unbound
23833         down-events: they are even more likely only relevant for special
23834         purposes.
23835         While Emacs will not produce up-events on its own currently (those are
23836         converted to drag or click events before being converted to
23837         Lisp-readable structures), the input queue can be made to contain them
23838         by synthesizing events to `unread-command-events'.  Emacs should deal
23839         consistently with such events.
23841 2015-08-12  Eli Zaretskii  <eliz@gnu.org>
23843         Fix display of thin lines whose newline has line-height property of t
23844         * src/xdisp.c (append_space_for_newline): Don't try to fix ascent
23845         and descent values of non-empty glyph rows, since they could have
23846         forced low values deliberately.  (Bug#21243)
23848 2015-08-12  Richard Stallman  <rms@gnu.org>
23850         Offer to combine multiple To or CC fields.
23851         * lisp/mail/sendmail.el (mail-combine-fields): New function.
23852         (mail-send): Call 'mail-combine-fields'.
23854         Don't decrypt encrypted files.
23855         * lisp/mail/mail-utils.el (mail-file-babyl-p): Bind epa-inhibit to t.
23857         Handle encrypted mbox files.
23858         * lisp/mail/rmailout.el (rmail-output-as-mbox): Decrypt and reencrypt
23859         the mbox file if necessary.
23861         Re-enable mime processing after decryption.  Add 'decrypt' keyword.
23862         * lisp/mail/rmail.el (rmail-epa-decrypt-1): New subroutine.
23863         (rmail-epa-decrypt): rmail-epa-decrypt-1 broken out.
23864         In a mime message, reenable Mime and show the parts that
23865         were shown before.
23866         Add keyword "decrypt" if anything decrypted.
23868         epa-inhibit inhibits auto-recognition of .gpg files
23869         * lisp/epa-file.el (epa-inhibit): New variable.
23870         (epa-file-handler): Check epa-inhibit.
23872 2015-08-12  Artur Malabarba  <bruce.connor.am@gmail.com>
23874         * lisp/emacs-lisp/lisp-mnt.el (lm-header): Add save-excursion.
23876 2015-08-11  Fabián Ezequiel Gallina  <fgallina@gnu.org>
23878         Respect python.el imenu when semantic-mode is off
23879         Fixes bug#21220
23880         * lisp/cedet/semantic/wisent/python.el: Do not force
23881         wisent-python-default-setup on python-mode-hook.
23883 2015-08-11  Paul Eggert  <eggert@cs.ucla.edu>
23885         Give names to Unicode code points in C code
23886         * src/character.h (NO_BREAK_SPACE, SOFT_HYPHEN)
23887         (ZERO_WIDTH_NON_JOINER, ZERO_WIDTH_JOINER, HYPHEN)
23888         (NON_BREAKING_HYPHEN, LEFT_SINGLE_QUOTATION_MARK)
23889         (RIGHT_SINGLE_QUOTATION_MARK, PARAGRAPH_SEPARATOR)
23890         (LEFT_POINTING_ANGLE_BRACKET, RIGHT_POINTING_ANGLE_BRACKET)
23891         (LEFT_ANGLE_BRACKET, RIGHT_ANGLE_BRACKET)
23892         (OBJECT_REPLACEMENT_CHARACTER):
23893         New named constants for Unicode code points.
23894         * src/bidi.c (bidi_fetch_char, CANONICAL_EQU):
23895         * src/composite.c (char_composable_p):
23896         * src/lread.c (readevalloop, read1):
23897         * src/xdisp.c (get_next_display_element):
23898         Use them.
23899         * src/doc.c (LEFT_SINGLE_QUOTATION_POINT):
23900         Remove; now in character.h.
23902 2015-08-11  Stephen Leake  <stephen_leake@stephe-leake.org>
23904         elisp--xref-find-definitions handle cl-defstuct default constructor
23905         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Add FIXME.
23906         (elisp--xref-format-extra): Rename from elisp--xref-format-cl-defmethod.
23907         (elisp--xref-find-definitions): Handle cl-defstuct default constructor.
23908         * test/automated/elisp-mode-tests.el (xref-elisp-test-run): Split out
23909         from xref-elisp-test for ease of debugging.
23910         (xref-elisp-deftest): Rename from xref-elisp-test.
23911         (find-defs-constructor): New test.
23912         (find-defs-defgeneric-el): Match batch test config.
23913         (compile): Required for find-defs compilation-minor-mode test.
23914         (find-defs-defvar-el): Match code change.
23915         (find-defs-face-el): Match code change.
23916         * lisp/progmodes/xref.el (xref-find-function, xref-find-definitions):
23917         Improve doc string.
23919 2015-08-11  Stefan Monnier  <monnier@iro.umontreal.ca>
23921         * lisp/replace.el (perform-replace): Document `replacements'.
23922         (perform-replace): Move the description of the format of `replacements'
23923         from the body's comment to the doc string.
23925 2015-08-11  Jürgen Hötzel  <juergen@archlinux.org>
23927         * lisp/net/tramp-adb.el (tramp-adb-prompt): Match leading escape
23928         sequence.  Recent adb version send initial escape sequences, even
23929         when terminal type is set to TERM=dumb.
23931 2015-08-10  Stephen Leake  <stephen_leake@stephe-leake.org>
23933         Rewrite elisp--xref-find-definitions to handle many more cases; add tests
23934         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
23935         Function deleted.
23936         (elisp--xref-format-cl-defmethod): New defconst.
23937         (find-feature-regexp, find-alias-regexp): New defcustoms.
23938         (elisp--xref-make-xref): New function.
23939         (elisp--xref-find-definitions): Rewrite using the above, handle many
23940         more cases.  Always output all available definitions.
23941         (xref-location-marker): No need for special cases.
23942         * test/automated/elisp-mode-tests.el: Add more tests of
23943         elisp--xref-find-definitions, improve current tests.
23945 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
23947         Fix recording of events pushed onto unread-command-events
23948         * src/keyboard.c (read_char): Make sure events read from
23949         unread-command-events and unread-post-input-method-events are
23950         always recorded by record_char.  Reported by David Kastrup
23951         <dak@gnu.org>, see
23952         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00193.html.
23954 2015-08-10  Samer Masterson  <samer@samertm.com>
23956         Set file buffer as current for "--file"
23957         * lisp/startup.el (command-line-1): Set file buffer as current before
23958         it is displayed so it can be used with options like "--eval".
23959         (Bug#21095)
23961 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
23963         Avoid setting LC_NUMERIC on MS-Windows to anything but "C"
23964         * src/emacs.c (synchronize_locale) [WINDOWSNT]: Call fixup_locale
23965         after setting LC_ALL to the desired locale, to avoid affecting how
23966         numbers are read and printed.  (Bug#21223)
23968 2015-08-10  Alan Mackenzie  <acm@muc.de>
23970         Fix "Invalid search bound (wrong side of point)" in fontification
23971         * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): After skipping
23972         an initialization expression, check point is not beyond the
23973         fontification limit.
23975 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
23977         Fix DPI calculation when Xft/DPI is default
23978         * src/xsettings.c (parse_settings): Don't use Xft/DPI default
23979         value of -1, which evaluates to 2**32 - 1 (Bug#21152).
23980         Remove unnecessary cast while we're in the neighborhood.
23982 2015-08-09  Dmitry Gutov  <dgutov@yandex.ru>
23984         Add project-vc-search-path and project-vc-ignores
23985         * lisp/progmodes/project.el (project-vc): New group.
23986         (project-vc-search-path, project-vc-ignores): New variables.
23987         (project--value-in-dir): Utility function.
23988         (project-search-path, project-ignores): Use them.
23989         * lisp/progmodes/xref.el (xref--rgrep-command): Only replace `./'
23990         at bos.  Don't add extra `/'.  Don't prepend with `*' if replaced.
23992 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
23994         Fix some minor quoting issues with grave accent
23995         * src/dispnew.c (add_window_display_history) [GLYPH_DEBUG]:
23996         Remove redundant quotes.
23997         * src/doc.c (uLSQM, uRSQM): New macros.
23998         * src/doc.c (Fsubstitute_command_keys):
23999         * src/syntax.c (Finternal_describe_syntax_value): Follow the user
24000         preference for quotes rather than hardcoding the ‘grave’ style.
24001         * src/regex.c (PUSH_FAILURE_POINT, POP_FAILURE_POINT)
24002         (re_match_2_internal) [DEBUG]: In debugging output, quote C
24003         strings with "...", not `...'.
24005         ChangeLog.2 ignores remote-tracking merges
24006         * build-aux/gitlog-to-emacslog: Ignore commit logs matching
24007         "Merge remote-tracking branch '.*'" too.  See Eli Zaretskii in:
24008         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00384.html
24010 2015-08-09  Nicolas Richard  <youngfrog@members.fsf.org>
24012         Use kpsewhich in ffap-latex-mode, if available
24013         * lisp/ffap.el (ffap-latex-guess-rules): New variable.
24014         (ffap-latex-mode): Use kpsewhich if available.
24016         ffap: disallow braces in filenames for tex modes
24017         * lisp/ffap.el (ffap-string-at-point-mode-alist): Don't allow
24018         braces in tex-related modes.
24020         Remove useless backslashes from ffap-string-at-point-mode-alist
24021         * lisp/ffap.el (ffap-string-at-point-mode-alist): Remove useless and
24022         misleading backslashes from default value.
24024         Augment docstring of ffap-string-at-point-mode-alist
24025         * lisp/ffap.el (ffap-string-at-point-mode-alist): Describe how BEG
24026         and END are handled.
24028 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
24030         * lisp/org/org-src.el (org-edit-src-code)
24031         (org-edit-fixed-width-region):
24032         * lisp/simple.el (completion-setup-function):
24033         Remove calls to substitute-command-keys that always just return
24034         their argument.
24036 2015-08-09  Daiki Ueno  <ueno@gnu.org>
24038         * lisp/epa.el (epa-exit-buffer-function): Set to `quit-window'.
24039         (Bug#21210)
24041 2015-08-09  Ivan Kanis  <ivan@kanis.fr>
24043         Fix link to source code in help window
24044         * lisp/help-fns.el (find-lisp-object-file-name): Remove code that
24045         will never work due to Glenn Morris change a6d63d9 on Apr 20 2013
24046         'No longer include timestamp in header of .elc files'.  Add code
24047         that will return .el source file in load-path.
24049 2015-08-09  Artur Malabarba  <bruce.connor.am@gmail.com>
24051         * lisp/isearch.el (isearch-search-fun-default): (Bug#21164)
24052         Respect `isearch-lax-whitespace' when searching through
24053         `isearch-word'.
24055 2015-08-08  Stefan Monnier  <monnier@iro.umontreal.ca>
24057         * test/automated/ert-tests.el (ert-test-deftest): Add FIXME.
24059         * lisp/org/org.el: Fix up some lexical scoping warnings, and use dolist
24060         * lisp/org/org.el (org-set-regexps-and-options-for-tags, org-goto-map)
24061         (org-set-regexps-and-options, org-assign-fast-keys)
24062         (org-contextualize-keys, org-contextualize-validate-key)
24063         (org-notes-order-reversed-p, org-local-logging, org-map-entries)
24064         (org-find-olp, org-find-exact-heading-in-directory)
24065         (org-cycle-agenda-files, org-release-buffers, org-fill-template)
24066         (org-agenda-prepare-buffers, org-occur-in-agenda-files)
24067         (org-replace-escapes): Use dolist.
24068         (org-mode): Optimize away XEmacs-only code.
24069         (org-refile-get-targets): Remove unused var `f'.
24070         (org-fast-todo-selection): Remove unused var `e'.
24071         (org-make-tags-matcher): Use dolist.  Remove unused var `term'.
24072         (org-fast-tag-selection): Use dolist.  Remove unused var `e'.
24073         (org-format-latex): Use dolist.  Remove unused var `e'.
24074         (org-toggle-heading): Access vars lexically rather than dynamically.
24075         (org-backward-sentence, org-forward-sentence, org-meta-return)
24076         (org-kill-line): Mark arg as unused.
24077         (org-submit-bug-report): Silence compiler warning.
24078         (org-occur-in-agenda-files): Don't use add-to-list on local vars.
24079         (org-get-cursor-date): Remove unused var `tm'.
24080         (org-comment-or-uncomment-region): Use standard name `_'.
24081         (reftex-docstruct-symbol, reftex-cite-format): Declare to
24082         silence byte-compiler.
24083         (org-reftex-citation): Add `org--' prefix to dynamically scoped
24084         `rds' var.
24086 2015-08-08  Paul Eggert  <eggert@cs.ucla.edu>
24088         Electric quote if coding is undecided or no conv
24089         * lisp/electric.el (electric--insertable-p): Also say that a
24090         string is insertable if the buffer file coding system is undecided
24091         or uses no conversion, as curved quotes will work in either case.
24093         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Simplify configuration.
24095 2015-08-08  Eli Zaretskii  <eliz@gnu.org>
24097         Fix overlay string display regressions introduced in Emacs 24.5
24098         * src/xdisp.c (pop_it): Reset the flag to ignore overlays at this
24099         buffer position, if we move the iterator to a new position as
24100         result of jumping over text covered by a "replacing" display
24101         property.
24102         * test/redisplay-testsuite.el (test-redisplay-4): Add 2 new tests.
24104         Support recovery from C stack overflow on MS-Windows
24105         * src/w32fns.c (w32_reset_stack_overflow_guard)
24106         (stack_overflow_handler): New functions for handling C stack
24107         overflow exceptions.
24108         (my_exception_handler): Handle EXCEPTION_STACK_OVERFLOW exceptions
24109         specially, and zero out except_addr if we do.
24110         (globals_of_w32fns): Initialize dwMainThreadId in non-interactive
24111         mode.
24112         * src/sysdep.c [HAVE_STACK_OVERFLOW_HANDLING]: Add !WINDOWSNT to
24113         the condition, as HAVE_STACK_OVERFLOW_HANDLING is now defined for
24114         the MinGW build, but the code guarded by that is for Posix hosts.
24115         * src/keyboard.c (command_loop) [WINDOWSNT]:
24116         Call w32_reset_stack_overflow_guard.
24117         * nt/inc/ms-w32.h (sigjmp_buf): New typedef.
24118         (sigsetjmp): New macro.
24119         (w32_reset_stack_overflow_guard): Declare the prototype.
24120         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Set to 1 for MinGW.
24122 2015-08-07  Phillip Lord  <phillip.lord@newcastle.ac.uk>
24124         Improve error signalling for seq-subseq
24125         * lisp/emacs-lisp/seq.el (seq-subseq): The existing behavior is to error
24126         when indexes are too large, but to silently ignore numbers which
24127         are too negative for lists.  String and vector handling errors in
24128         both cases.  This has been regularized.  Error signaling behavior
24129         has been explicitly added to the doc string.
24131         * lisp/cl-extra.el (cl-subseq): Defers to (seq-subseq) and is
24132         therefore also impacted by this change.  Update the doc string
24133         to reflect this.
24135         * test/automated/seq-tests.el (test-seq-subseq): Tests have been
24136         added for these exceptional cases, as well as one non exceptional
24137         base case.
24139 2015-08-07  Jürgen Hötzel  <juergen@archlinux.org>
24141         Improve error checking in tramp-adb.el
24142         * lisp/net/tramp-adb.el (tramp-adb-ls-output-name-less-p):
24143         Improve error checking.  "ls -l" on Android in Enforcing mode can
24144         print "lstat './FILENAME failed: Permission denied".
24146 2015-08-07  Stefan Monnier  <monnier@iro.umontreal.ca>
24148         * lisp/emacs-lisp/cl-generic.el (cl--generic-struct-tag): Don't burp on
24149         non-struct vectors.
24151 2015-08-07  Stephen Leake  <stephen_leake@stephe-leake.org>
24153         Fix typo in lisp/window.el, more `display-buffer-use-some-frame'
24154         * lisp/window.el: Fix typo that broke build.
24155         (display-buffer--action-function-custom-type):
24156         Add `display-buffer-use-some-frame'.
24157         (display-buffer): Add `display-buffer-use-some-frame' to doc string.
24159         Add support for 'inhibit-same-window in 'display-buffer-use-some-frame'
24160         * lisp/window.el (display-buffer-use-some-frame): Add support for
24161         'inhibit-same-window in alist.
24162         * doc/lispref/windows.texi (display-buffer-use-some-frame):
24163         Doc support for 'inhibit-same-window in alist.
24165 2015-08-07  Eli Zaretskii  <eliz@gnu.org>
24167         Avoid infinite loop in display of invisible text in strings
24168         * src/xdisp.c (handle_invisible_prop): If the next change of
24169         invisibility spec does not mean the beginning of a visible text,
24170         update the string position from which to start the search for the
24171         next invisibility change.  This avoids an infinite loop when we
24172         have more than one invisibility spec that are made inactive by
24173         buffer-invisibility-spec.  Simplify code.  (Bug#21200)
24174         * test/redisplay-testsuite.el (test-redisplay-4): Add a test case
24175         for the situation that caused bug #21200.
24177 2015-08-06  Artur Malabarba  <bruce.connor.am@gmail.com>
24179         * lisp/emacs-lisp/package.el: Simplify describe-package-1
24180         (package-help-section-name-face): New face.
24181         (package--print-help-section): New function.
24182         (describe-package-1): Refactor section printing.
24183         (package-make-button): Use face instead of font-lock-face, which
24184         doesn't work on buttons.
24186         * lisp/emacs-lisp/package.el: Define custom faces
24187         (package-name-face, package-description-face)
24188         (package-status-built-in-face, package-status-external-face)
24189         (package-status-available-face, package-status-new-face)
24190         (package-status-held-face, package-status-disabled-face)
24191         (package-status-installed-face, package-status-dependency-face)
24192         (package-status-unsigned-face, package-status-incompat-face)
24193         (package-status-avail-obso-face): New faces.
24194         (package-menu--print-info-simple): Use them.
24196 2015-08-05  Paul Eggert  <eggert@cs.ucla.edu>
24198         Fix some confusion with ‘format’
24199         * lisp/allout-widgets.el (allout-widgets-before-change-handler)
24200         (allout-graphics-modification-handler):
24201         Protect arbitrary string in a format context with "%s" format.
24202         * lisp/avoid.el:
24203         * lisp/cedet/semantic/bovine/scm.el: Fix comment.
24204         * lisp/calendar/icalendar.el (icalendar--convert-sexp-to-ical):
24205         * lisp/erc/erc-button.el (erc-button-beats-to-time):
24206         * lisp/gnus/message.el (message-send-form-letter):
24207         * lisp/org/ob-core.el (org-babel-check-evaluate)
24208         (org-babel-confirm-evaluate):
24209         * lisp/org/ob-fortran.el (org-babel-fortran-var-to-fortran):
24210         * lisp/org/ox-latex.el (org-latex-compile):
24211         * lisp/org/ox-man.el (org-man-compile):
24212         * lisp/org/ox-odt.el (org-odt-template):
24213         * lisp/org/ox-texinfo.el (org-texinfo-compile):
24214         * lisp/progmodes/prolog.el (prolog-help-info)
24215         (prolog-view-predspec):
24216         * lisp/progmodes/ruby-mode.el (ruby-parse-partial):
24217         * lisp/progmodes/verilog-mode.el (verilog-showscopes):
24218         * lisp/textmodes/rst.el (rst-replace-lines):
24219         Change (message (format ...)) to (message ...), and likewise
24220         for ‘error’.  This lessens the probability of confusion when the
24221         output of ‘format’ contains ‘%’.
24223 2015-08-05  Artur Malabarba  <bruce.connor.am@gmail.com>
24225         * lisp/replace.el (replace-character-fold): Default to nil.
24227         * lisp/character-fold.el: Fix lax whitespace.
24228         (character-fold-table): Don't make space match other whitespace chars.
24229         (character-fold-to-regexp): Simplify lax behavior.
24231 2015-08-05  Dmitry Gutov  <dgutov@yandex.ru>
24233         Preserve window point in xref-find-definitions-other-window
24234         Fix the problem reported by Ingo Logmar in
24235         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00152.html
24236         * lisp/progmodes/xref.el (xref--goto-char): Extract from
24237         xref--goto-location.
24238         (xref--pop-to-location): Use it.  Replace xref--goto-location with
24239         a direct xref-location-marker call.
24240         (xref--show-location): Likewise.
24241         (xref--display-position): Use xref--goto-char.
24243         * lisp/progmodes/project.el: Add a paragraph to the front matter.
24245 2015-08-04  David Kastrup  <dak@gnu.org>
24247         * lisp/vc/emerge.el (emerge-show-file-name):
24248         * lisp/progmodes/vhdl-mode.el (vhdl-electric-dash)
24249         (vhdl-comment-insert, vhdl-hooked-abbrev):
24250         * lisp/progmodes/octave.el (inferior-octave-dynamic-list-input-ring):
24251         * lisp/progmodes/fortran.el (fortran-window-create-momentarily):
24252         * lisp/progmodes/ebrowse.el (ebrowse-hack-electric-buffer-menu):
24253         * lisp/progmodes/cperl-mode.el (cperl-putback-char):
24254         * lisp/obsolete/vip.el (vip-escape-to-emacs)
24255         (vip-prefix-arg-value, vip-prefix-arg-com):
24256         * lisp/obsolete/terminal.el (te-escape-extended-command-unread):
24257         * lisp/leim/quail/tibetan.el (quail-tibetan-update-translation)
24258         (quail-tibkey-update-translation):
24259         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
24260         * lisp/leim/quail/lao.el (quail-lao-update-translation):
24261         * lisp/leim/quail/japanese.el (quail-japanese-update-translation)
24262         (quail-japanese-self-insert-and-switch-to-alpha):
24263         * lisp/leim/quail/hangul.el (hangul2-input-method)
24264         (hangul3-input-method, hangul390-input-method):
24265         * lisp/language/hanja-util.el (hangul-to-hanja-char):
24266         * lisp/international/robin.el (robin-input-method):
24267         * lisp/international/quail.el (quail-start-translation)
24268         (quail-start-conversion):
24269         * lisp/gnus/gnus-art.el (gnus-article-describe-key)
24270         (gnus-article-describe-key-briefly):
24271         * lisp/eshell/em-hist.el (eshell-list-history):
24272         * lisp/term.el (term-dynamic-list-input-ring)
24273         (term-dynamic-list-completions):
24274         * lisp/subr.el (momentary-string-display):
24275         * lisp/simple.el (read-quoted-char):
24276         * lisp/pcomplete.el (pcomplete-show-completions):
24277         * lisp/kmacro.el (kmacro-repeat-on-last-key):
24278         * lisp/info.el (Info-summary):
24279         * lisp/ehelp.el (electric-help-command-loop):
24280         * lisp/ebuff-menu.el (electric-buffer-list)
24281         (Electric-buffer-menu-exit):
24282         * lisp/double.el (double-translate-key):
24283         * lisp/comint.el (comint-dynamic-list-input-ring)
24284         (comint-dynamic-list-completions): Do not overwrite preexisting
24285         contents of `unread-command-events' when putting new events into it.
24287 2015-08-04  Daniel Colascione  <dancol@dancol.org>
24289         Improve ansi-color filtering of unrecognized escape sequences
24290         * lisp/ansi-color.el (ansi-color-drop-regexp): Recognize mode-setting
24291         escape sequences.
24292         (ansi-color-filter-apply, ansi-color-apply): Filter out
24293         unrecognized escape sequences.
24295 2015-08-04  Artur Malabarba  <bruce.connor.am@gmail.com>
24297         * lisp/emacs-lisp/package.el (package-menu-mode-map): Convert menu
24298         definitions to `easy-menu-define', improve a couple to account for
24299         async, and add a couple of new commands.
24301 2015-08-03  Jürgen Hötzel  <juergen@archlinux.org>
24303         * lisp/net/tramp-cache.el (tramp-set-file-property): Fix code typo.
24305 2015-08-03  Ingo Lohmar  <i.lohmar@gmail.com>
24307         Add new 'calendar-weekend-days' option
24308         Make the days receiving the 'calendar-weekend-header' face freely
24309         customizable, as they differ by region/culture.
24310         * doc/emacs/calendar.texi (Move to Beginning or End): Document the
24311         new variable.
24312         * lisp/calendar/calendar.el (calendar-generate-month): New variable
24313         calendar-weekend-days to customize day header fontification.
24315 2015-08-03  Paul Eggert  <eggert@cs.ucla.edu>
24317         Redo text-quoting-style variable
24318         Rename help-quote-translation to text-quoting-style,
24319         and use symbols rather than characters as values.
24320         This follows suggestions along these lines by Alan Mackenzie in:
24321         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00343.html
24322         and by Drew Adams in:
24323         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00048.html
24324         * doc/lispref/help.texi (Keys in Documentation)
24325         * etc/NEWS:
24326         * lisp/cus-start.el (standard):
24327         * src/doc.c (Fsubstitute_command_keys, syms_of_doc):
24328         Document and/or implement the new behavior instead of the old.
24329         (syms_of_doc): New symbols 'grave' and 'straight'.
24331 2015-08-03  Nikolaus Rath  <Nikolaus@rath.org>
24333         nnimap.el: Use IMAP MOVE extension if available
24334         * lisp/gnus/nnimap.el (nnimap-request-move-article)
24335         (nnimap-process-expiry-targets, nnimap-split-incoming-mail):
24336         Use MOVE extension if available.
24338         nnimap.el: Explicitly ask for server capabilities
24339         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Don't assume full
24340         capabilities will be returned in the login-result.
24342 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
24344         Treat help strings like other doc strings
24345         * doc/lispref/text.texi (Special Properties), etc/NEWS: Document this.
24346         * lisp/epa.el (epa--select-keys): Remove no-longer-needed calls to
24347         substitute-command-keys.
24348         * src/keyboard.c (show_help_echo, parse_menu_item): Call
24349         substitute-command-keys on the help string before displaying it.
24351         Also mention "curly quotes"
24352         See Drew Adams's email in:
24353         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00040.html
24354         * doc/lispref/help.texi (Keys in Documentation):
24355         Add index entry "curly quotes".
24356         * etc/NEWS: Use the phrase "curly quotes" too.
24358         ede-proj-target-makefile docstring tweaks
24359         * lisp/cedet/ede/proj.el (ede-proj-target-makefile):
24360         Consistently use "all:" to describe the all: target,
24361         replacing three different and confusingly-quoted usages.
24363 2015-08-02  Evgeny Fraimovitch  <johnlen7@gmail.com>  (tiny change)
24365         Don't abort emacsclientw when -a was specified
24366         * lib-src/emacsclient.c (set_tcp_socket) [WINDOWSNT]: Don't error
24367         out if we are in emacsclientw and -a was specified.
24369 2015-08-02  Eli Zaretskii  <eliz@gnu.org>
24371         Fix handling of 1st keystroke on MS-Windows
24372         * src/w32fns.c (globals_of_w32fns): Initialize after_deadkey to -1.
24373         This is needed to correctly handle the session's first keystroke,
24374         if it has any modifiers.  (Bug#19994)
24376 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
24378         Substitute some customization etc. doc strings
24379         These changes apply substitute-command-keys to some
24380         doc strings that were going through untranslated
24381         when creating customization or other widgets.
24382         * lisp/cus-edit.el (custom-group-value-create):
24383         * lisp/wid-edit.el (widget-default-create):
24384         (widget-push-button-value-create):
24385         Treat the widget tag as a doc string.
24386         * lisp/emacs-lisp/cl-extra.el (cl--describe-class-slot):
24387         Treat the :documentation value as a doc string.
24388         * lisp/wid-edit.el (widget-choose):
24389         Treat the choice names as doc strings.
24390         (widget-default-create): Treat the :doc value as a doc string.
24391         (widget-toggle-value-create): Treat the :on and :off values
24392         as doc strings.
24393         (widget-documentation-string-value-create):
24394         Substitute the doc string.
24396 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
24398         Add a second argument to project-ignores
24399         * lisp/progmodes/project.el (project-ignores): Add a second
24400         argument DIR.
24401         * lisp/progmodes/project.el (project-ignores): Only include the VC
24402         ignores if DIR is the VC root.
24403         * lisp/progmodes/xref.el (xref-find-regexp): Update accordingly.
24405 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
24407         Prevent incorrect display when 'line-spacing' variable is set
24408         * src/xdisp.c (try_window_id): Give up this optimization if the
24409         buffer has its 'line-spacing' variable set non-nil.
24411 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
24413         Don't pass NOVISIT to find-file
24414         * lisp/progmodes/etags.el (next-file):
24415         Don't pass NOVISIT to find-file (bug#21175).
24417         Ignore buffer restriction for tags-loop-eval
24418         * lisp/progmodes/etags.el (tags-loop-continue): Ignore buffer
24419         restriction (bug#21167).
24421 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
24423         Fix a thinko in 'ffap-gopher-at-point'
24424         * lisp/ffap.el (ffap-gopher-at-point): Fix last change.  (Bug#21168)
24426         Honor 'line-spacing' for empty lines
24427         * src/xdisp.c (append_space_for_newline): Honor 'line-height'
24428         property and 'line-spacing' frame parameter or variable or
24429         property for empty lines, by doing the same processing as in
24430         x_produce_glyph for newline characters.  (Bug#21165)
24432 2015-08-01  Paul Eggert  <eggert@cs.ucla.edu>
24434         Simplify by assuming C99 integer division
24435         * src/floatfns.c (ceiling2, floor2, truncate2):
24436         Assume C99 (i.e., Fortran) semantics for integer division.
24437         This simplifies the code.
24439 2015-07-31  Paul Eggert  <eggert@cs.ucla.edu>
24441         Don't overflow if computing approximate percentage
24442         * lisp/align.el (align-region):
24443         * lisp/cedet/semantic.el (semantic-repeat-parse-whole-stream):
24444         * lisp/cedet/semantic/wisent.el (wisent-parse-region):
24445         * lisp/cus-edit.el (custom-buffer-create-internal):
24446         * lisp/emacs-lisp/checkdoc.el (checkdoc-interactive-ispell-loop)
24447         (checkdoc-message-interactive-ispell-loop, checkdoc-next-error)
24448         (checkdoc-next-message-error):
24449         * lisp/emacs-lisp/eieio-opt.el (eieio-display-method-list):
24450         * lisp/epa.el (epa-progress-callback-function):
24451         * lisp/erc/erc-dcc.el (erc-dcc-do-LIST-command):
24452         * lisp/ffap.el (ffap-menu-rescan):
24453         * lisp/gnus/nnbabyl.el (nnbabyl-retrieve-headers):
24454         * lisp/gnus/nndiary.el (nndiary-retrieve-headers):
24455         * lisp/gnus/nneething.el (nneething-retrieve-headers):
24456         * lisp/gnus/nnmbox.el (nnmbox-retrieve-headers):
24457         * lisp/gnus/nnmh.el (nnmh-retrieve-headers):
24458         * lisp/gnus/nnml.el (nnml-retrieve-headers):
24459         * lisp/gnus/nnspool.el (nnspool-retrieve-headers):
24460         * lisp/gnus/nntp.el (nntp-retrieve-headers)
24461         (nntp-retrieve-articles):
24462         * lisp/imenu.el (imenu--relative-position):
24463         * lisp/international/ja-dic-cnv.el (skkdic-collect-okuri-nasi)
24464         (skkdic-convert-okuri-nasi):
24465         * lisp/net/ange-ftp.el (ange-ftp-process-handle-hash):
24466         * lisp/nxml/rng-valid.el (rng-compute-mode-line-string):
24467         * lisp/org/org-list.el (org-update-checkbox-count):
24468         * lisp/org/org.el (org-table-map-tables)
24469         (org-update-parent-todo-statistics):
24470         * lisp/play/decipher.el (decipher-insert-frequency-counts)
24471         (decipher-analyze-buffer):
24472         * lisp/profiler.el (profiler-format-percent):
24473         * lisp/progmodes/cc-cmds.el (c-progress-update):
24474         * lisp/progmodes/cpp.el (cpp-highlight-buffer):
24475         * lisp/progmodes/idlwave.el (idlwave-convert-xml-system-routine-info)
24476         (idlwave-list-load-path-shadows):
24477         * lisp/progmodes/opascal.el (opascal-step-progress):
24478         * lisp/progmodes/vhdl-mode.el (vhdl-update-progress-info)
24479         (vhdl-scan-directory-contents):
24480         * lisp/textmodes/bibtex.el (bibtex-progress-message):
24481         * lisp/textmodes/flyspell.el (flyspell-small-region)
24482         (flyspell-external-point-words):
24483         * lisp/textmodes/table.el (table-recognize):
24484         Prefer (floor (* 100.0 NUMERATOR) DENOMINATOR) when calculating
24485         progress-report percentages and the like.  This avoids problems
24486         if (* 100 NUMERATOR) would overflow.
24487         * lisp/gnus/gnus-registry.el (gnus-registry-import-eld):
24488         * lisp/gnus/registry.el (registry-reindex):
24489         Use (* 100.0 ...) rather than (* 100 ...) to avoid int overflow issues.
24490         * lisp/descr-text.el (describe-char):
24491         * lisp/org/org-colview.el (org-nofm-to-completion):
24492         * lisp/ps-print.el (ps-plot):
24493         * lisp/simple.el (what-cursor-position):
24494         Prefer (round (* 100.0 NUMERATOR) DENOMINATOR) to a
24495         more-complicated and less-accurate approximation.
24497         Fix some int overflows in profiler.c
24498         * src/profiler.c (make_log): Make args EMACS_INT, not int,
24499         to avoid unwanted behavior on 'int' overflow.
24500         (make_log, evict_lower_half, record_backtrace):
24501         Use ptrdiff_t, not int, for object indexes.
24503         Port to pedantic memcpy
24504         * src/keyboard.c (menu_bar_items, tool_bar_items):
24505         * src/xrdb.c (magic_db):
24506         Port to pedantic memcpy implementations that reject memcpy (0, 0, 0).
24508         Merge from gnulib
24509         This incorporates:
24510         2015-07-29 time_rz: port to pedantic memcpy
24511         * lib/time_rz.c: Copy from gnulib.
24513 2015-07-31  Artur Malabarba  <bruce.connor.am@gmail.com>
24515         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
24516         When updating the very last entry, tabulated-list-print would
24517         erase it and then try to look at the next one (which obviously
24518         isn't there).
24520 2015-07-31  Eli Zaretskii  <eliz@gnu.org>
24522         Allow to use the old key processing code on MS-Windows
24523         * src/w32fns.c (syms_of_w32fns) <w32-use-fallback-wm-chars-method>:
24524         New variable.
24525         (w32_wnd_proc): Use it to invoke the old code that processed
24526         character keys, as fallback, when this variable is non-nil.
24527         Fix typos in comments.  (Bug#19994)
24529 2015-07-31  Ilya Zakharevich  <ilya@math.berkeley.edu>
24531         Improve handling of Unicode keyboard input on MS-Windows
24532         * src/w32fns.c (get_wm_chars, deliver_wm_chars): New functions.
24533         (FPRINTF_WM_CHARS) [DEBUG_WM_CHARS]: New macro for debugging.
24534         (w32_wnd_proc): Call deliver_wm_chars to process non-special keys
24535         upon receiving WM_KEYDOWN or WM_SYSKEYDOWN messages.  If that is
24536         successful, don't call TranslateMessage.  (Bug#19994)
24538 2015-07-30  Dmitry Gutov  <dgutov@yandex.ru>
24540         Fix default-directory in changeset diffs after vc-print-log
24541         * lisp/vc/log-view.el (log-view-diff-common): Move the
24542         revision-granularity check back into log-view-diff-changeset.
24543         (log-view-diff-changeset): Bind default-directory to the current
24544         VC root.
24546         Rename project-directories to project-roots
24547         * lisp/progmodes/project.el (project-search-path-function)
24548         (project-search-path): Update the docstring.
24549         (project-directories): Rename to `project-roots', update all
24550         callers and implementations accordingly.
24551         (project-root): Remove.
24552         * lisp/progmodes/xref.el (xref-find-regexp): Use * instead of *.*
24553         as the default file mask.
24555 2015-07-30  Eli Zaretskii  <eliz@gnu.org>
24557         Support long URLs in w32-shell-execute
24558         * src/w32fns.c (Fw32_shell_execute): Don't use filename_to_utf16
24559         and filename_to_ansi to convert the DOCUMENT argument, as it could
24560         be a URL that is not limited to MAX_PATH characters.  Instead, use
24561         MultiByteToWideChar directly, and allocate heap storage as
24562         required to accommodate the converted string.  Likewise with
24563         non-Unicode operation.  Ensure OPERATION is null-terminated, even
24564         if it is longer than 32K bytes.  (Bug#21158)
24566 2015-07-30  Stephen Leake  <stephen_leake@stephe-leake.org>
24568         * lisp/vc/vc-mtn.el (vc-mtn-find-revision): Handle null rev.
24570 2015-07-29  Stephen Leake  <stephen_leake@stephe-leake.org>
24572         Add docs for display-buffer action display-buffer-use-some-frame
24573         * lisp/window.el (display-buffer-use-some-frame): Improve doc string.
24574         * doc/lispref/windows.texi (Display Action Functions):
24575         Add display-buffer-use-some-frame.
24576         * etc/NEWS: Mention display-buffer-use-some-frame.
24578         Add display-buffer action display-buffer-use-some-frame
24579         * lisp/window.el (display-buffer-use-some-frame): New.
24581         Handle vc-mtn error more gently
24582         * lisp/vc/vc-mtn.el (vc-mtn-mode-line-string): Return "" when
24583         branch is nil.
24585 2015-07-29  Michael Albinus  <michael.albinus@gmx.de>
24587         Fix Tramp problems with multihops, and nc
24588         * lisp/net/tramp-cache.el (tramp-get-file-property)
24589         (tramp-set-file-property, tramp-flush-file-property)
24590         (tramp-get-connection-property, tramp-set-connection-property)
24591         (tramp-flush-connection-property): Remove hop from vector.
24592         * lisp/net/tramp-gw.el (tramp-gw-process-filter): Ignore errors.
24593         * lisp/net/tramp-sh.el (tramp-methods) <nc>: Separate STDERR.
24594         (tramp-do-copy-or-rename-file-out-of-band): Increase timeout of
24595         netstat to 60".
24596         (tramp-sh-handle-start-file-process): Do not show hops in prompt.
24597         * lisp/net/tramp.el (tramp-handle-file-name-as-directory)
24598         (tramp-handle-file-name-directory, tramp-handle-file-remote-p):
24599         Keep hop in result.
24600         * test/automated/tramp-tests.el (tramp-test02-file-name-dissect):
24601         Add hop tests.
24603 2015-07-29  Eli Zaretskii  <eliz@gnu.org>
24605         Resurrect highlighting of repeated words by Flyspell Mode
24606         * lisp/textmodes/flyspell.el (flyspell-word): Leave some non-word
24607         characters between point and the doublon candidate, so that
24608         flyspell-word-search-backward finds it.  (Bug#21157)
24610         Fix redisplay of large images on expose events
24611         * src/xdisp.c (expose_window, expose_area): Avoid comparisons
24612         between signed negative values and unsigned values.  This
24613         prevented redisplay on expose events when the window showed a very
24614         large image.
24616 2015-07-29  Paul Eggert  <eggert@cs.ucla.edu>
24618         Remove unnecessary stack overflow dependency
24619         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING):
24620         Don't worry about $ac_cv_header_sys_resource_h and
24621         $ac_cv_func_getrlimit, as they're no longer needed for this.
24622         Problem reported by Eli Zaretskii in:
24623         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00443.html
24625 2015-07-28  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
24627         Pacify compilation -Wincompatible-pointer-types warnings
24628         * src/w32proc.c (Fw32_get_codepage_charset): Avoid compilation
24629         warning.
24630         (CompareStringW_Proc): New typedef.
24631         (w32_compare_strings): Use it, to pacify compiler warnings under
24632         "-Wincompatible-pointer-types".
24633         * src/w32fns.c (GetDiskFreeSpaceExW_Proc)
24634         (GetDiskFreeSpaceExA_Proc): New typedefs.
24635         (Ffile_system_info): Use them, to pacify compiler warnings under
24636         "-Wincompatible-pointer-types".
24638 2015-07-28  Paul Eggert  <eggert@cs.ucla.edu>
24640         Fix subscript error in calculate_direct_scrolling
24641         Use slightly-longer cost vectors.  Without this change,
24642         calculate_direct_scrolling can have a subscript violation when
24643         FRAME_LINES (frame) <= delta.
24644         * src/scroll.c (calculate_scrolling, calculate_direct_scrolling)
24645         (line_ins_del, do_line_insertion_deletion_costs):
24646         Allocate and use slightly-larger cost vectors, ones based on
24647         FRAME_TOTAL_LINES instead of FRAME_LINES.
24649         Fix uninitalized value in encode_coding_object
24650         * src/coding.c (encode_coding_object): Also initialize
24651         coding->src_pos and coding->src_pos_byte when NILP (src_object).
24652         This avoids later use of uninitialized storage.
24654 2015-07-27  Xue Fuqiao  <xfq.free@gmail.com>
24656         * doc/lispref/variables.texi (Variable Aliases): Typo fix.
24657         (Bug#21141)
24659 2015-07-27  Paul Eggert  <eggert@cs.ucla.edu>
24661         Merge from gnulib
24662         This incorporates:
24663         2015-07-27 time_rz: port better to MinGW
24664         2015-07-27 time: port __need_time_t to MinGW
24665         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
24666         * lib/strftime.c, lib/time.in.h, lib/time_rz.c: Copy from gnulib.
24667         * lib/time-internal.h: New file, from gnulib.
24669 2015-07-27  Eli Zaretskii  <eliz@gnu.org>
24671         Handle NULL pointers in w32heap.c allocation routines
24672         * src/w32heap.c (FREEABLE_P): Consider a NULL pointer "not
24673         freeable".
24674         (realloc_after_dump, realloc_before_dump, free_before_dump):
24675         Handle NULL pointers gracefully, as Emacs now seems to expect that.
24677         Fix Cairo build without PNG
24678         * src/image.c: Define PNG function when USE_CAIRO is defined, even
24679         if HAVE_PNG is not.  (Bug#21133)
24681         MS-Windows follow-up for recent TZ-related changes
24682         * nt/mingw-cfg.site (ac_cv_header_pthread_h)
24683         (gl_cv_sys_struct_timespec_in_pthread_h): Force to "no", to avoid
24684         picking up 'struct timespec' from pthread.h, if it is installed on
24685         the user's system.  We want either the definitions from MinGW
24686         system headers, if available, or the Gnulib replacements if not.
24687         * nt/inc/ms-w32.h <struct timespec>: Don't define, as we now use
24688         lib/time.h.
24689         * lib/time.in.h: Don't let __need_* symbols affect what happens on
24690         MinGW.  These symbols are defined by MinGW system headers, but we
24691         don't want that to affect whether Gnulib portions of the header
24692         are or aren't used.
24694 2015-07-26  Paul Eggert  <eggert@cs.ucla.edu>
24696         * src/ftfont.c (ftfont_close): Add comment re Bug#20890.
24698         New optional ZONE arg for format-time-string etc.
24699         This simplifies time conversions in other time zones.
24700         It also prevents display-time-world tampering with TZ (Bug#21020).
24701         * admin/admin.el (add-release-logs):
24702         Use improved add-log-time-format API.
24703         * admin/merge-gnulib (GNULIB_MODULES): Add time_rz, timegm.
24704         (GNULIB_TOOL_FLAGS): Avoid flexmember, setenv, unsetenv.
24705         * configure.ac (tzalloc): Remove test for this, since
24706         Emacs no longer uses HAVE_TZALLOC directly.
24707         * doc/lispref/os.texi (Time of Day, Time Conversion)
24708         (Time Parsing):
24709         * etc/NEWS: Document the new behavior.
24710         Merge from gnulib, incorporating:
24711         2015-07-25 strftime: fix newly-introduced bug on Solaris
24712         2015-07-23 fprintftime, strftime: use timezone_t args
24713         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
24714         * lib/strftime.c, lib/strftime.h, lib/time.in.h, m4/sys_time_h.m4:
24715         * m4/time_h.m4:
24716         Update from gnulib.
24717         * lib/time_rz.c, lib/timegm.c, m4/time_rz.m4, m4/timegm.m4:
24718         New files from gnulib.
24719         * lisp/time-stamp.el (time-stamp-string):
24720         * lisp/time.el (display-time-world-list)
24721         (display-time-world-display):
24722         Use new API, with time zone arg.
24723         * lisp/time.el (display-time-world-display):
24724         Fix race when current-time advances while we're running.
24725         * lisp/vc/add-log.el (add-log-iso8601-time-zone)
24726         (add-log-iso8601-time-string): Accept optional time zone arg.
24727         * lisp/vc/add-log.el (add-change-log-entry):
24728         * lisp/vc/log-edit.el (log-edit-changelog-ours-p): Use new arg.
24729         * nt/gnulib.mk: Propagate lib/gnulib.mk changes here.
24730         Add rules for the time module, since they're now needed
24731         for tzalloc etc.
24732         * src/conf_post.h (getenv_TZ, setenv_TZ): New macros.
24733         (emacs_getenv_TZ, emacs_setenv_TZ): New decls.
24734         * src/editfns.c: Include errno.h.
24735         (set_time_zone_rule): Omit unnecessary forward decl.
24736         (initial_tz): Remove, replacing with ...
24737         (local_tz, wall_clock_tz, utc_tz): New static vars and constants.
24738         (tzeqlen): New constant; prefer it to (sizeof "TZ=" - 1).
24739         (emacs_localtime_rz, emacs_mktime_z, xtzalloc, xtzfree)
24740         (tzlookup): New static functions.
24741         (init_editfns): New arg DUMPING.  All uses changed.
24742         (init_editfns): Omit most initialization if dumping, not if
24743         !initialized.  Initialize wall_clock_tz and local_tz.
24744         (emacs_nmemftime, format_time_string): Time zone argument can now
24745         be any time zone, not just a boolean for UTC or local time.  All
24746         callers changed.
24747         (Fformat_time_string, Fencode_time, Fcurrent_time_string)
24748         (Fcurrent_time_zone): New optional arg ZONE.
24749         (Fdecode_time, Fset_time_zone_rule): ZONE arg can now also take
24750         the same form as with the other new additions.
24751         (decode_time_zone): Remove; no longer needed.
24752         (tzvalbuf): Now file-scope.
24753         (emacs_getenv_TZ, emacs_setenv_TZ): New functions.
24754         (syms_of_editfns): Define Qwall.
24755         * src/editfns.c (mktime_z) [!HAVE_TZALLOC]:
24756         * src/systime.h (mktime_z, timezone_t, tzalloc, tzfree)
24757         [!HAVE_TZALLOC]:
24758         Remove; now supplied by gnulib.
24759         * src/emacs.c (main):
24760         * src/lisp.h (init_editfns): Adjust to init_editfns API change.
24762 2015-07-26  Shigeru Fukaya  <shigeru.fukaya@gmail.com>
24764         Fix infinite loop in delete-consecutive-dups
24765         * lisp/subr.el (delete-consecutive-dups): Work even if the last
24766         element is nil (Bug#20588).  Avoid rescan of a circular list in
24767         deletion of last element.
24769 2015-07-26  Martin Rudalics  <rudalics@gmx.at>
24771         Have `x-frame-geometry' return nil for terminal and initial
24772         frames (Bug#21132)
24773         * src/nsfns.m (Fx_frame_geometry):
24774         * src/xfns.c (Fx_frame_geometry): Return nil for initial and
24775         terminal frames.
24776         * src/w32fns.c (Fw32_frame_menu_bar_size, Fw32_frame_rect)
24777         (Fx_frame_geometry): Return nil for terminal frames
24779 2015-07-26  HOSOYA Kei  <hosoyakei.free@gmail.com>  (tiny change)
24781         * etc/tutorials/TUTORIAL.ja: Improve translation.
24783 2015-07-25  Eli Zaretskii  <eliz@gnu.org>
24785         Avoid crashes when w32 GUI functions are called in -batch
24786         * src/w32fns.c (Fx_frame_geometry, Fw32_frame_rect)
24787         (Fw32_frame_menu_bar_size, Fw32_send_sys_command): Don't call
24788         FRAME_W32_WINDOW for initial frame.  (Bug#21132)
24790         Fix flyspell-check-previous-highlighted-word
24791         * lisp/textmodes/flyspell.el
24792         (flyspell-check-previous-highlighted-word): Really accept a
24793         numeric argument, as the doc string describes.  Fix an off-by-one
24794         error in looking up overlays, so invocation with point immediately
24795         after a word would check that word.  Clarify the doc string as
24796         Suggested by N. Jackson <nljlistbox2@gmail.com>.  (Bug#21129)
24798 2015-07-24  Michael Albinus  <michael.albinus@gmx.de>
24800         Minor cleanup in tramp-tests.el
24801         * test/automated/tramp-tests.el (tramp-test31-*, tramp-test32-*):
24802         Implement using the documented interface
24803         `tramp-connection-properties', rather than with internal functions.
24805 2015-07-24  Harald Hanche-Olsen  <hanche@math.ntnu.no>  (tiny change)
24807         Pass lambdas to `skeleton-read'
24808         * lisp/skeleton.el (skeleton-read): Allow PROMPT to be a function.
24809         * lisp/textmodes/sgml-mode.el (sgml-attributes, sgml-value): Pass
24810         lambdas to `skeleton-read' (bug#20386).
24812 2015-07-24  Eli Zaretskii  <eliz@gnu.org>
24814         * INSTALL (DETAILED BUILDING AND INSTALLATION):
24815         Mention --without-imagemagick.
24817         Don't require GUI frames and mouse for Flyspell menus
24818         * lisp/textmodes/flyspell.el (flyspell-correct-word-before-point)
24819         (flyspell-emacs-popup): Require neither a GUI frame nor mouse
24820         support, since pop-up menus work with text terminals and can be
24821         controlled via the keyboard.
24823         Improve documentation of Flyspell commands
24824         * doc/emacs/fixit.texi (Spelling): Mention Flyspell commands that
24825         can be invoked via the keyboard.  Mention those commands by name
24826         and add them to the fn index.  (Bug#21125)
24828 2015-07-23  Michael Albinus  <michael.albinus@gmx.de>
24830         Fix some Tramp problems with HP-UX
24831         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
24832         Add "tab0" to stty call.
24833         * test/automated/tramp-tests.el (tramp-persistency-file-name):
24834         Set to nil.
24835         (tramp--test-hpux-p): New defun.
24836         (tramp--test-utf8): Use it.
24838 2015-07-22  Glenn Morris  <rgm@gnu.org>
24840         * build-aux/update-subdirs: Put "no-update-autoloads: t" in output.
24842 2015-07-22  Eli Zaretskii  <eliz@gnu.org>
24844         Fix point positioning in ffap-next-guess
24845         * lisp/ffap.el (ffap-url-at-point): Set ffap-string-at-point-region,
24846         as our callers expect.  This was clobbered as part of fixing
24847         bug#5673.  (Bug#21107)
24848         (ffap-gopher-at-point): Set ffap-string-at-point-region.
24850 2015-07-22  Martin Rudalics  <rudalics@gmx.at>
24852         * lisp/window.el (even-window-sizes): Fix customization type.
24854         Optionally even widths of `display-buffer' windows.  (Bug#21100)
24855         * lisp/window.el (quit-restore-window): Restore width if
24856         requested.
24857         (display-buffer-record-window): Record width when window is
24858         reused and horizontally combined.
24859         (even-window-sizes): New option to allow evening window widths.
24860         (even-window-heights): Defalias to `even-window-sizes'.
24861         (window--even-window-heights): Rename to
24862         `window--even-window-sizes'.  Handle side-by-side windows.
24863         (display-buffer-use-some-window): Call `window--even-window-sizes'
24864         instead of `window--even-window-heights'.
24865         * lisp/help.el (resize-temp-buffer-window): Fix indentation.
24866         * doc/lispref/windows.texi (Choosing Window Options): Describe
24867         `even-window-sizes'.
24868         (Coordinates and Windows): Fix typo.
24870 2015-07-22  Stephen Leake  <stephen_leake@stephe-leake.org>
24872         Add file name to autoload error messages
24873         * lisp/emacs-lisp/autoload.el (autoload-save-buffers):
24874         Add condition-case to add file name to error message.
24876 2015-07-22  Michael Albinus  <michael.albinus@gmx.de>
24878         * lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options):
24879         Use 0.0.0.1 as test host.
24881 2015-07-21  Stefan Monnier  <monnier@iro.umontreal.ca>
24883         (advice--called-interactively-skip): Fix inf-loop (bug#21083)
24884         * lisp/emacs-lisp/nadvice.el (advice--called-interactively-skip):
24885         Fix inf-loop (bug#21083).
24887 2015-07-21  Glenn Morris  <rgm@gnu.org>
24889         * test/automated/package-test.el (package-test-signed):
24890         Update for recent changes.
24892         * test/automated/elisp-mode-tests.el
24893         (elisp-xref-finds-both-function-and-variable)
24894         (elisp-xref-finds-only-function-for-minor-mode):
24895         Update for recent xref name changes.
24897 2015-07-21  Dmitry Gutov  <dgutov@yandex.ru>
24899         Make eldoc timer non-repeatable
24900         * lisp/emacs-lisp/eldoc.el (eldoc-schedule-timer): Make the timer
24901         non-repeatable.  Since it's on post-command hook, that just wasted
24902         CPU cycles.
24904 2015-07-21  Michael Albinus  <michael.albinus@gmx.de>
24906         Mention `tramp-connection-properties' in NEWS
24908         Sync with Tramp repository
24909         * doc/misc/tramp.texi (Configuration): Note, that Tramp must be
24910         required prior changing its configuration.
24911         (Connection caching, Predefined connection information)
24912         (Remote shell setup): Fix typos.
24913         (Predefined connection information): Describe, how to overwrite
24914         parameters of `tramp-methods'.
24915         (Remote programs, Remote processes, Traces and Profiles):
24916         Simplify example.
24917         (Remote programs): Remove superfluous comment.
24918         * doc/misc/trampver.texi: Update release number.
24919         * lisp/net/tramp-cache.el (tramp-connection-properties):
24920         Adapt docstring.
24921         * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file): New defun.
24922         (tramp-gvfs-handle-copy-file, tramp-gvfs-handle-rename-file): Use it.
24923         (tramp-gvfs-handle-make-directory): Reimplement PARENTS handling,
24924         "gvfs-mkdir -p ..." does not work robust.
24925         (tramp-gvfs-maybe-open-connection):
24926         Adapt `tramp-get-method-parameter' call.
24927         * lisp/net/tramp-sh.el (tramp-methods):
24928         Add `tramp-remote-shell-login' parameter where it fits.
24929         (tramp-get-remote-path): Use it.
24930         (tramp-make-copy-program-file-name): Fix quoting for "psftp" method.
24931         (all): Adapt `tramp-get-method-parameter' calls.
24932         * lisp/net/tramp.el (tramp-methods): Adapt docstring.
24933         (tramp-get-method-parameter): Replace argument METHOD by VEC.
24934         Check also for hits in `tramp-connection-properties'.  Adapt docstring.
24935         (tramp-get-remote-tmpdir): Cache only the local name of tmpdir.
24936         (all): Adapt `tramp-get-method-parameter' calls.
24937         * lisp/net/trampver.el: Update release number.
24938         * test/automated/tramp-tests.el (tramp--instrument-test-case):
24939         Add "^make-symbolic-link not supported$" to `debug-ignored-errors'.
24940         (tramp-test13-make-directory, tramp--test-adb-p)
24941         (tramp--test-smb-or-windows-nt-p): Simplify.
24942         (tramp--test-ftp-p, tramp--test-gvfs-p): New defuns.
24943         (tramp--test-special-characters): Fix docstring.  Add gvfs and
24944         ftp tests.
24945         (tramp--test-utf8): Fix docstring.
24947 2015-07-20  Dmitry Gutov  <dgutov@yandex.ru>
24949         Add new xref-query-replace command
24950         * lisp/progmodes/xref.el (xref--match-buffer-bounds):
24951         New function, extracted from xref-pulse-momentarily.
24952         (xref-query-replace): New command.
24953         (xref--query-replace-1): New helper function.
24954         (xref--xref-buffer-mode-map): Add `r' binding.
24956 2015-07-20  Paul Eggert  <eggert@cs.ucla.edu>
24958         Simplify icalendar decoding of Z dates
24959         * lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
24960         Simplify calculation of time strings with trailing "Z".
24962 2015-07-19  Dmitry Gutov  <dgutov@yandex.ru>
24964         Do not corrupt grep-find-ignored-files
24965         * lisp/progmodes/project.el (project-ignores): Change the order of
24966         the arguments to nconc, in order not to corrupt grep-find-ignored-files.
24968         Add xref-match-item, and use it
24969         * lisp/progmodes/xref.el (xref-match-bounds): New generic function.
24970         (xref-file-location): Add reader for the column slot.
24971         (xref-match-item): New class.
24972         (xref-match-bounds): A method implementation for it.
24973         (xref-make-match): New constructor function.
24974         (xref--current-item): New private variable.
24975         (xref-pulse-momentarily): Use it.
24976         (xref--pop-to-location): Change the first argument to an xref
24977         item, instead of location, bind xref--current-item.
24978         Update all callers.
24979         (xref-next-line, xref-prev-line, xref--next-error-function)
24980         (xref--mouse-2): Look for the property `xref-item',
24981         instead of `xref-location'.
24982         (xref--item-at-point): Likewise.  This function replaces
24983         `xref-location-at-point'.  Update all callers.
24984         (xref--insert-xrefs): Add the `xref-item' text property, instead
24985         of `xref-location'.
24986         (xref--collect-match): Use xref-make-match.
24988         * lisp/progmodes/xref.el (xref-item): Rename from `xref--xref'.
24989         Update all references.
24991         * lisp/progmodes/xref.el (xref--xref): Rename the `description'
24992         slot to `summary'.
24994         vc-hg: Perform the print-log call asynchronously
24995         * lisp/vc/vc-hg.el (vc-hg-print-log): Perform the call
24996         asynchronously (bug#21067).
24998         Add xref-after-jump-hook and xref-after-return-hook
24999         * lisp/progmodes/xref.el (xref-after-jump-hook)
25000         (xref-after-return-hook): New hooks.
25001         (xref-pulse-on-jump): Remove, in favor of the above.
25002         (xref-pulse-momentarily): Rename from xref--maybe-pulse.
25003         (xref--pop-to-location, xref--display-position)
25004         (xref-pop-marker-stack): Use the new hooks, as requested in
25005         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00213.html
25007 2015-07-19  Bozhidar Batsov  <bozhidar@batsov.com>
25009         * lisp/progmodes/js.el (js-mode): Correct the lighter.
25011 2015-07-19  Leo Liu  <sdl.web@gmail.com>
25013         Fix a bug in cfengine3-mode
25014         * lisp/progmodes/cfengine.el (cfengine3-mode): Handle nil
25015         eldoc-documentation-function.
25017 2015-07-18  Julien Danjou  <julien@danjou.info>
25019         sieve-mode: support "body" test command
25020         * lisp/gnus/sieve-mode.el (sieve-font-lock-keywords):
25021         Add missing "body" test command.
25023 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
25025         Fix info-apropos when the default encoding is Latin-N
25026         * lisp/info.el (Info-find-node-2): Reset the buffer's encoding to
25027         'undecided', so that it is set to the encoding of the Info file we
25028         are about to insert.  Otherwise, 'info-apropos' will fail to find
25029         some index nodes in some UTF-8 encoded files, if the buffer's
25030         previous encoding is Latin-N or some such.
25032 2015-07-18  Ivan Andrus  <darthandrus@gmail.com>
25034         * lisp/epg.el (epg--start): Check that gpgconf can be found
25035         before calling it.
25037         Expose more file types to OS X that Emacs understands
25038         * nextstep/Cocoa/Emacs.base/Contents/Info.plist: Add editor role for
25039         sty, dtx, json, and org files.  Export UTIs for el, elc, and org files.
25041 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
25043         Fix visual-order cursor movement when lines are truncated
25044         * src/xdisp.c (Fmove_point_visually): When lines are truncated,
25045         simulate display in a window of infinite width, to allow move_it_*
25046         functions reach positions outside of normal window dimensions.
25047         Remove code that tried to handle a subset of these situations by
25048         manual iteration of buffer text.  (Bug#17777)
25050         Fix following Info cross-references to anchors
25051         * lisp/info.el (Info-read-subfile): Add to the returned value the
25052         length of subfile preamble, after converting it to file's byte
25053         offset, as expected by the caller.  Use bufferpos-to-filepos.
25054         (Info-find-node-2): If searching for a node with a
25055         1000-character slop fails, try again with a 10000-character slop,
25056         to account for known bugs in Texinfo 5.0 and 5.1.  (Bug#21055)
25057         * lisp/international/mule-util.el (bufferpos-to-filepos): New
25058         function.
25059         * etc/NEWS: Mention bufferpos-to-filepos.
25061         Fix scrolling backwards on TTY frames under scroll-conservatively
25062         * src/xdisp.c (move_it_vertically_backward): Fix off-by-one error
25063         in moving backwards on TTY frames.  (Bug#21080)
25065 2015-07-17  Dmitry Gutov  <dgutov@yandex.ru>
25067         Consider a jsdoc tag to be a beginning of a paragraph as well
25068         * lisp/progmodes/js.el (js-mode): Change c-paragraph-start to
25069         consider a jsdoc tag to be a beginning of a paragraph as well.
25071 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
25073         * lisp/emacs-lisp/package.el: Fix warnings.
25075         * lisp/emacs-lisp/package.el (package-buffer-info):
25076         Add author and maintainers to `package-buffer-info'.
25078         * lisp/emacs-lisp/package.el: Many small changes.
25079         Replace all instances of 'face with 'font-lock-face.
25080         (describe-package-1): Improve some strings and move the summary
25081         up the list.
25082         (package-install-file): Update docstring.
25083         (package-menu-hide-package): Bind to `H'.
25085         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
25086         Fix error handling.
25088 2015-07-17  Paul Eggert  <eggert@cs.ucla.edu>
25090         Fix hang with large yanks This should fix the bug fixed by Mike
25091         Crowe's patch in:
25092         https://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00106.html
25093         A problem in this area has been reported by several users; see
25094         Bug#16737, Bug#17101, Bug#17026, Bug#17172, Bug#19320, Bug#20283.
25095         This fix differs from Mike Crowe's patch in that it should avoid a
25096         race condition that could lose SIGIO signals.  ignore_sigio dates
25097         back to the 1980s when some platforms couldn't block signals, and
25098         could only ignore them, which led to races when signals arrived
25099         while being ignored.  We shouldn't have to worry about those old
25100         platforms now.
25101         * src/dispextern.h, src/sysdep.c (ignore_sigio): Remove.
25102         * src/emacs.c (shut_down_emacs):
25103         Don't call ignore_sigio; unrequest_sigio should suffice.
25104         * src/keyboard.c (kbd_buffer_store_buffered_event):
25105         Use unrequest_sigio, not ignore_sigio.
25106         (kbd_buffer_get_event):
25107         Call request_sigio when getting the ball rolling again.
25109 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
25111         * lisp/obsolete/longlines.el (longlines-search-function):
25112         Fallback on `isearch-search-fun-default'.
25114 2015-07-17  Tassilo Horn  <tsdh@gnu.org>
25116         Support @-mentions
25117         * lisp/net/rcirc.el (rcirc-completion-at-point): Support completion
25118         of mentions/messages with @nick instead of just nick.
25120 2015-07-16  Michael Albinus  <michael.albinus@gmx.de>
25122         Fix bug#20943
25123         * lisp/autorevert.el (auto-revert-handler): Do not check for
25124         `buffer-modified-p'.
25125         * lisp/files.el (buffer-stale--default-function): Check for
25126         `buffer-modified-p'.
25127         * test/automated/auto-revert-tests.el
25128         (auto-revert-test02-auto-revert-mode-dired): Adapt test.
25130 2015-07-16  Ari Roponen  <ari.roponen@gmail.com>
25132         Fix delete-dups bug on long lists
25133         * lisp/subr.el (delete-dups):
25134         Don't mistakenly keep some dups when applied to long lists.
25136 2015-07-16  Paul Eggert  <eggert@cs.ucla.edu>
25138         Better heuristic for C stack overflow
25139         Improve the heuristic for distinguishing stack overflows from
25140         other SIGSEGV causes (Bug#21004).  Corinna Vinschen explained that
25141         the getrlimit method wasn't portable to Cygwin; see:
25142         https://www.cygwin.com/ml/cygwin/2015-07/msg00092.html
25143         Corinna suggested pthread_getattr_np but this also has problems.
25144         Instead, replace the low-level system stuff with a simple
25145         heuristic based on known good stack addresses.
25146         * src/eval.c, src/lisp.h (near_C_stack_top): New function.
25147         * src/sysdep.c: Don't include <sys/resource.h>.
25148         (stack_direction): Remove.  All uses removed.
25149         (stack_overflow): New function.
25150         (handle_sigsegv): Use it instead of incorrect getrlimit heuristic.
25151         Make SEGV fatal in non-main threads.
25153 2015-07-16  Daiki Ueno  <ueno@gnu.org>
25155         epg: Automatically start pinentry server
25156         * lisp/epg-config.el (epg-gpgconf-program): New variable.
25157         * lisp/epg.el (epg--start): Call `pinentry-start' if
25158         allow-emacs-pinentry is set in ~/.gnupg/gpg-agent.conf.
25160 2015-07-15  Katsumi Yamaoka  <yamaoka@jpl.org>
25162         * lisp/gnus/nnimap.el: Fix my last bogus change.
25163         Reinstall Stefan Monnier's change that was made in
25164         <83d824bc4041332f338ad7e5e830f443535aa300>.
25166 2015-07-15  Paul Eggert  <eggert@cs.ucla.edu>
25168         Merge from gnulib
25169         This incorporates:
25170         2015-07-05 acl-permissions: Document FreeBSD ACL_TYPE_NFS4 acls
25171         2015-07-05 acl-permissions: Fix on FreeBSD
25172         2015-07-05 file-has-acl, acl-permissions: fix some more HP-UX typos
25173         * lib/acl-internal.c, lib/acl-internal.h, lib/get-permissions.c:
25174         * lib/set-permissions.c: Copy from gnulib.
25176         Port to stricter C99
25177         * src/keyboard.h (kbd_buffer_store_event_hold):
25178         Don't return a void expression.
25180 2015-07-15  Xue Fuqiao  <xfq.free@gmail.com>
25182         * doc/emacs/frames.texi (Creating Frames):
25183         Fix the command `C-x 5 m' runs.
25185 2015-07-14  Michael Albinus  <michael.albinus@gmx.de>
25187         New autorevert tests
25188         * test/automated/auto-revert-tests.el: New file.
25190 2015-07-14  Paul Eggert  <eggert@cs.ucla.edu>
25192         Clear gcprolist etc. after stack overflow
25193         After stack overflow, command_loop calls init_eval, and this needs to
25194         clear gcprolist and byte_stack_list (Bug#20996).
25195         * src/alloc.c (init_alloc):
25196         Move gcprolist and byte_stack_list initialization from here ...
25197         * src/eval.c (init_eval): ... to here.
25199 2015-07-13  Xue Fuqiao  <xfq.free@gmail.com>
25201         * doc/emacs/windows.texi (Pop Up Window): Fix the description
25202         of `C-x 4 m'.
25204 2015-07-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
25206         Avoid deprecated enums in mac-ct font backend driver
25207         * src/macfont.m (mac_font_copy_default_descriptors_for_language)
25208         (mac_ctfont_get_advance_width_for_glyph)
25209         (mac_ctfont_get_bounding_rect_for_glyph): Avoid deprecated enums.
25211         Cache font family in mac-ct font backend driver
25212         * src/macfont.m (macfont_family_cache): New variable.
25213         (syms_of_macfont): Initialize it.
25214         (macfont_available_families_cache): New variable.
25215         (macfont_invalidate_family_cache, macfont_get_family_cache_if_present)
25216         (macfont_set_family_cache, macfont_invalidate_available_families_cache)
25217         (macfont_handle_font_change_notification)
25218         (macfont_init_font_change_handler)
25219         (macfont_copy_available_families_cache): New functions.
25220         (macfont_create_family_with_symbol): Use font family caches.
25221         (macfont_list, macfont_list_family):
25222         Use macfont_copy_available_families_cache instead of
25223         mac_font_create_available_families.
25225 2015-07-12  Dmitry Gutov  <dgutov@yandex.ru>
25227         Show the default value in the prompt
25228         * lisp/progmodes/xref.el: Add `M-?' binding for
25229         xref-find-references.  Declare functions `grep-read-files' and
25230         `grep-expand-template'.
25231         (xref--read-identifier): Show the default value in the prompt.
25233         * lisp/progmodes/xref.el (xref-find-regexp): When called with
25234         prefix argument, ask for file patterns to search as well.  When
25235         prompting for the directory, require an existing one.
25236         (xref-collect-matches): Add a new argument, FILES.  Use it in the
25237         above function.
25239         Add `project-ignores'
25240         * lisp/progmodes/project.el (project-ignores): New generic
25241         function, and an implementation for the VC project type.
25242         * lisp/progmodes/xref.el (xref--rgrep-command): Split, as a
25243         variant of rgrep-default-command that handles a generic list of
25244         ignores.
25245         (xref-collect-matches): Use it, and pass through to it the value
25246         of the newly added argument.
25247         (xref-find-regexp): Handle ignored paths within the project.
25248         Remove outdated comment.
25249         * lisp/vc/vc.el (vc-default-ignore-completion-table):
25250         Skip the comments and the empty lines.
25252 2015-07-12  Xue Fuqiao  <xfq.free@gmail.com>
25254         * doc/emacs/buffers.texi (Misc Buffer): Add a cross reference.
25256 2015-07-11  Eric Abrahamsen  <eric@ericabrahamsen.net>
25258         gnus-registry.el: Correct function argument order
25259         * lisp/gnus/gnus-registry.el (gnus-registry--set/remove-mark):
25260         Reverse the order of function arguments.
25262 2015-07-11  Dmitry Gutov  <dgutov@yandex.ru>
25264         Bind grep-highlight-matches to nil
25265         * lisp/progmodes/xref.el (xref-collect-matches):
25266         Bind grep-highlight-matches to nil (bug#20728).
25268 2015-07-11  Nikolaus Rath  <Nikolaus@rath.org>
25270         nnimap.el: Fix IMAP message size parsing
25271         * lisp/gnus/nnimap.el (nnimap-transform-headers):
25272         Don't assume that UID comes before RFC822.SIZE.
25274 2015-07-10  Stefan Monnier  <monnier@iro.umontreal.ca>
25276         * lisp/gnus/nnimap.el: Clean up "unused var" warnings
25277         (auth-source-creation-prompts): Declare.
25278         (nnimap-retrieve-headers, nnimap-status-message)
25279         (nnimap-request-create-group, nnimap-request-delete-group)
25280         (nnimap-close-group, nnimap-request-move-article)
25281         (nnimap-request-accept-article, nnimap-request-newgroups)
25282         (nnimap-request-post, nnimap-dummy-active-number)
25283         (nnimap-save-mail-spec, nnimap-get-groups): Add _ to unused vars.
25284         (nnimap-parse-flags): Remove unused var `p'.
25285         (nnimap-retrieve-group-data-early): Remove unused var `groups'.
25286         (nnimap-flags-to-marks): Remove unused var `totalp'.
25288 2015-07-10  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
25290         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 20MB.
25292 2015-07-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
25294         * src/macfont.m (macfont_list): Ignore font families lacking
25295         font descriptors.
25297 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
25299         Don't check the exit status, it can be misleading
25300         * lisp/progmodes/xref.el (xref-collect-matches): Don't check the
25301         exit status, it can be misleading.
25303         Introduce a Project API
25304         * lisp/progmodes/project.el: New file.
25305         * lisp/cedet/ede.el (project-try-ede): New function.
25306         (project-root): New implementation.
25307         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
25308         Set project-search-path-function.
25309         (elisp--xref-find-references): Delegate some logic to
25310         project-search-path.
25311         (elisp-search-path): New function.
25312         (elisp-xref-find): Don't implement `matches' anymore.
25313         * lisp/progmodes/etags.el: Don't implement `matches'.
25314         Delegate some logic to project-search-path.
25315         (etags-search-path): New function.
25316         * lisp/progmodes/xref.el (xref-find-function):
25317         Remove `matches' from the API.
25318         (xref-find-regexp): Move whatever common logic was in elisp and
25319         etags implementations, and search the directories returned by
25320         project-directories and project-search-path.
25322 2015-07-09  Nicolas Petton  <nicolas@petton.fr>
25324         * test/automated/map-tests.el (test-map-delete-return-value):
25325         Uncomment test.
25327         Add support for gv.el in map.el
25328         * lisp/emacs-lisp/map.el (map-elt, map-delete): Declare a gv-expander.
25329         * lisp/emacs-lisp/map.el (map-put): Refactor using `setf' and `map-elt'.
25330         * test/automated/map-tests.el: Update tests to work with the new
25331         implementations of map-elt and map-put.
25333 2015-07-09  Glenn Morris  <rgm@gnu.org>
25335         * lisp/emacs-lisp/debug.el (debug-help-follow): Use describe-symbol.
25337 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
25339         Syntax-propertize until the end of the line first
25340         * lisp/progmodes/xref.el (xref--collect-match): Syntax-propertize
25341         until the end of the line first.
25343 2015-07-09  Xue Fuqiao  <xfq.free@gmail.com>
25345         * doc/emacs/files.texi (File Archives): Add a cross reference.
25347 2015-07-08  Nikolaus Rath  <Nikolaus@rath.org>
25349         nnimap.el: Handle plain value for nnimap-stream
25350         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Always query
25351         capabilities, so that a 'plain value for the `nnimap-stream' server
25352         variable is handled correctly.
25353         * doc/misc/gnus.texi (Customizing the IMAP Connection):
25354         Document the 'plain option.
25356 2015-07-08  Leo Liu  <sdl.web@gmail.com>
25358         Fix bug in thing-at-point--bounds-of-well-formed-url
25359         * lisp/thingatpt.el (thing-at-point--bounds-of-well-formed-url): Make
25360         sure boundary contains current point.
25362 2015-07-08  Dmitry Gutov  <dgutov@yandex.ru>
25364         * lisp/progmodes/xref.el (xref-collect-matches): Use `nreverse'
25365         in the end.
25367         Declare whitespace-line-column a safe file-local
25368         * lisp/whitespace.el (whitespace-line-column): Declare to be a
25369         safe file-local when the value is an integer.
25371 2015-07-08  Eric Abrahamsen  <eric@ericabrahamsen.net>
25373         gnus-group.el: Check if group names are already strings
25374         * lisp/gnus/gnus-group.el (gnus-group-group-name):
25375         The group name may already be a string.
25376         Specifically, in the group list reached from the *Server* buffer,
25377         the 'gnus-group text property returns a string.  Everywhere else
25378         it returns a symbol.
25380         nnimap.el: Remove unused let variables
25381         * lisp/gnus/nnimap.el (nnimap-request-group): Variables are not used.
25383 2015-07-08  Eli Zaretskii  <eliz@gnu.org>
25385         Support "maximized" property of runemacs's shortcut
25386         * nt/runemacs.c (WinMain): If runemacs is invoked "maximized", pass
25387         the '--maximized' switch to Emacs.
25389         Support "minimized" property of runemacs's shortcut
25390         * nt/runemacs.c (WinMain): If runemacs is invoked "minimized",
25391         pass the '--iconic' switch to Emacs.  (Bug#20991)
25393 2015-07-08  Xue Fuqiao  <xfq.free@gmail.com>
25395         Doc fixes
25396         * doc/emacs/files.texi (Diff Mode): Fix the description of `C-c
25397         C-w' in Diff mode.
25398         * doc/emacs/arevert-xtra.texi (Auto Reverting the Buffer Menu):
25399         Add a cross reference.
25401 2015-07-08  Nicolas Richard  <youngfrog@members.fsf.org>
25403         * lisp/obsolete/landmark.el: Add Obsolete-since header.
25405 2015-07-07  Glenn Morris  <rgm@gnu.org>
25407         * test/automated/ert-tests.el (ert-test-deftest):
25408         Update for recent changes.
25410 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
25412         (gv-setter, gv-synthetic-place, gv-delay-error): New funs/macros
25413         * lisp/emacs-lisp/gv.el (gv-setter): New function.
25414         (gv-invalid-place): New error.
25415         (gv-get): Use them.
25416         (gv-synthetic-place, gv-delay-error): New places.
25417         * lisp/emacs-lisp/cl-generic.el (cl--generic-setf-rewrite): Remove.
25418         (cl-defgeneric, cl-defmethod): Use gv-setter.
25420 2015-07-07  Fabrice Popineau  <fabrice.popineau@gmail.com>
25422         Make vc-tests work with MSYS svn program
25423         * lisp/vc/vc-svn.el (vc-svn-create-repo): Fix the file:// URL when
25424         svn is an MSYS program.
25426 2015-07-07  Ken Brown  <kbrown@cornell.edu>
25428         Improve recent change to emacsclient on Cygwin
25429         * lisp/server.el (server-process-filter): Remove redundant check
25430         that 'cygwin-convert-file-name-from-windows' is defined as a
25431         function on Cygwin.  Don't call that function unless its argument
25432         starts with a drive letter.
25434 2015-07-07  Artur Malabarba  <bruce.connor.am@gmail.com>
25436         * lisp/emacs-lisp/package.el (package-compute-transaction):
25437         Fix void variable due to `found-something' being in the wrong `let'.
25439 2015-07-07  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
25441         * lisp/play/landmark.el: Move to lisp/obsolete/.
25443 2015-07-07  Martin Rudalics  <rudalics@gmx.at>
25445         Have `x-show-tip' handle `right' and `bottom' frame parameters
25446         * src/nsfns.m (compute_tip_xy, Fx_show_tip)
25447         * src/w32fns.c (compute_tip_xy, Fx_show_tip)
25448         * src/xfns.c (compute_tip_xy, Fx_show_tip): Allow aligning
25449         tooltips also via `right' and `bottom' frame parameters.
25451 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
25453         Add online-help support to describe types
25454         * lisp/help-fns.el (describe-symbol-backends): Move to help-mode.el.
25455         (describe-symbol): Improve the selection of default.
25456         * lisp/help-mode.el: Require cl-lib.
25457         (describe-symbol-backends): Move from help-fns.el.
25458         (help-make-xrefs): Use it.
25459         * lisp/emacs-lisp/cl-extra.el (describe-symbol-backends): Add entry
25460         for types.
25461         (cl--typedef-regexp): New const.
25462         (find-function-regexp-alist): Add entry for types.
25463         (cl-help-type, cl-type-definition): New buttons.
25464         (cl-find-class): New function.
25465         (cl-describe-type): New command.
25466         (cl--describe-class, cl--describe-class-slot)
25467         (cl--describe-class-slots): New functions, moved from eieio-opt.el.
25468         * lisp/emacs-lisp/cl-generic.el (cl--generic-method-documentation)
25469         (cl--generic-all-functions, cl--generic-specializers-apply-to-type-p):
25470         New functions.  Moved from eieio-opt.el.
25471         (cl--generic-class-parents): New function, extracted from
25472         cl--generic-struct-specializers.
25473         (cl--generic-struct-specializers): Use it.
25474         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Use pcase-dolist.
25475         Improve constructor's docstrings.
25476         (cl-struct-unknown-slot): New error.
25477         (cl-struct-slot-offset): Use it.
25478         * lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Record the type
25479         definition in current-load-list.
25480         * lisp/emacs-lisp/eieio-core.el (eieio--known-slot-names): New var.
25481         (eieio--add-new-slot): Set it.
25482         (eieio-defclass-internal): Use new name for current-load-list.
25483         (eieio-oref): Add compiler-macro to warn about unknown slots.
25484         * lisp/emacs-lisp/eieio.el (defclass): Update eieio--known-slot-names
25485         as compile-time as well.  Improve constructor docstrings.
25486         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
25487         (eieio--help-print-slot, eieio-help-class-slots): Move to cl-extra.el.
25488         (eieio-class-def): Remove button.
25489         (eieio-help-constructor): Use new name for load-history element.
25490         (eieio--specializers-apply-to-class-p, eieio-all-generic-functions)
25491         (eieio-method-documentation): Move to cl-generic.el.
25492         (eieio-display-method-list): Use new names.
25493         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression):
25494         Add "define-linline".
25495         (lisp-fdefs): Remove "defsubst".
25496         (el-fdefs): Add "defsubst", "cl-defsubst", and "define-linline".
25497         * lisp/emacs-lisp/macroexp.el (macroexp--warned): New var.
25498         (macroexp--warn-and-return): Use it to avoid inf-loops.
25499         Add `compile-only' argument.
25501 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
25503         python.el: Fix local/remote shell environment setup
25504         * lisp/progmodes/python.el (python-shell-with-environment):
25505         Fix remote/local environment setup.
25506         * test/automated/python-tests.el (python-shell-with-environment-1)
25507         (python-shell-with-environment-2): New tests.
25509 2015-07-06  Glenn Morris  <rgm@gnu.org>
25511         * lisp/simple.el (set-variable): Tweak recent doc fix.
25513 2015-07-06  Ken Brown  <kbrown@cornell.edu>
25515         * src/sysdep.c (handle_sigsegv) [CYGWIN]: Increase STACK_DANGER_ZONE.
25517 2015-07-06  Glenn Morris  <rgm@gnu.org>
25519         * lisp/simple.el (set-variable): Use user-error for type mismatch.
25521 2015-07-06  Ken Brown  <kbrown@cornell.edu>
25523         * src/emacs.c (main): Don't increase the stack size on Cygwin.
25525 2015-07-06  Stefan Monnier  <monnier@iro.umontreal.ca>
25527         (describe-symbol): Rewrite describe-function-or-variable
25528         * lisp/help-fns.el (describe-symbol-backends): New var.
25529         (help-xref-stack-item): Declare.
25530         (describe-symbol): Rename from describe-function-or-variable.
25531         Rewrite using describe-symbol-backends instead of help-xref-interned.
25532         * lisp/help.el (help-map): Use it.
25533         * lisp/help-mode.el (help-symbol, help-follow-symbol): Use it.
25534         (help-xref-interned): Make it into an obsolete alias.
25536         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-save): Don't ignore
25537         `file' arg (bug#20972).  Always use utf-8-emacs.  Use with-temp-buffer
25538         and cl-letf.
25540 2015-07-06  Wolfgang Jenkner  <wjenkner@inode.at>
25542         Fix parsing glitches in dired-mark-sexp (bug#13575)
25543         * lisp/dired-x.el (dired-x--string-to-number): New function.
25544         (dired-mark-sexp): Use it.  Tweak dired-re-inode-size.  Fix usage
25545         of directory-listing-before-filename-regexp.  Consider
25546         forward-word harmful and replace it.  Add more verbiage in
25547         comments and doc string.
25549 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
25551         python.el: Respect process environment for remote shells
25552         * lisp/progmodes/python.el
25553         (python-shell-calculate-process-environment): Calculate
25554         process-environment or tramp-remote-process-environment depending
25555         whether current file is remote.
25556         (python-shell-calculate-exec-path): Calculate exec-path or
25557         tramp-remote-path depending whether current file is remote.
25558         (python-shell-with-environment): New macro.
25559         (python-shell-prompt-detect, python-shell-calculate-command)
25560         (python-shell-make-comint, python-check): Use it.
25562         python.el: Avoid making let-bound defvars buffer local  (Bug#18244)
25563         * lisp/progmodes/python.el (python-shell--interpreter)
25564         (python-shell--interpreter-args): New vars.
25565         (inferior-python-mode, python-shell-make-comint): Use them.
25567         python.el: Fixes for IPython 3.x  (Bug#20580)
25568         * lisp/progmodes/python.el:
25569         (python-shell-completion-native-setup): Fix IPython 3.x setup.
25570         (python-shell-completion-native-get-completions): Fix timeout
25571         logic.
25573         python.el: Fix mark-defun behavior  (Bug#19665)
25574         * lisp/progmodes/python.el (python-mark-defun): New function.
25575         * test/automated/python-tests.el (python-mark-defun-1)
25576         (python-mark-defun-2, python-mark-defun-3): New tests.
25578 2015-07-05  Glenn Morris  <rgm@gnu.org>
25580         * lisp/progmodes/f90.el (f90-type-def-re): Handle attribute lists
25581         such as "extends(parent), private".  (Bug#20969)
25582         * test/automated/f90.el (f90-test-bug20969, f90-test-bug20969b):
25583         New tests.
25585 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
25587         Avoid duplicate calls to current_timespec
25588         * src/process.c (wait_reading_process_output):
25589         Cache current_timespec results as long as we're not waiting.
25591 2015-07-05  Ian Kelling  <ian@iankelling.org>
25593         Avoid returning early reading process output due to SIGIO
25594         * src/process.c (wait_reading_process_output): Extend the behavior of
25595         not breaking due to not finding output when a timer has lowered the
25596         timeout to include when SIGIO lowers the timeout.
25598         Don't return as fast reading any process output
25599         * src/process.c (wait_reading_process_output):
25600         The patch for Bug#17647 returns too fast sometimes when reading
25601         from any processes.  Revert part of it, and limit the timeout more
25602         sensibly (Bug#20978).
25604         Refactor timeouts in wait_reading_process_output
25605         * src/process.c (wait_reading_process_output):
25606         Simplify timeouts with an enum.  Remove a redundant condition.
25607         (Bug#20978)
25609         Remove ADAPTIVE_READ_BUFFERING ifdef
25610         * src/process.c (make-process, make-pipe-process, deactivate_process)
25611         (wait_reading_process_output, read_process_output, send_process)
25612         (init_process_emacs): ifdef ADAPTIVE_READ_BUFFERING was originally
25613         added in case there was an operating system in which it was not
25614         useful.  That was 11 years ago and it hasn't happened.  Make
25615         development easier by not considering the effect of changes on a
25616         theoretical OS where this is disabled (Bug#20978).
25618 2015-07-05  Glenn Morris  <rgm@gnu.org>
25620         * lisp/simple.el (set-variable): Doc fix.
25622         * lisp/progmodes/fortran.el (fortran-line-length): Doc fix.
25624 2015-07-05  Ian Kelling  <ian@iankelling.org>
25626         accept-process-output fix
25627         This is a followon to the fix for bug#17647 (Bug#20976).
25628         * src/process.c (status_notify): Fix too high return in some cases.
25630 2015-07-05  Artur Malabarba  <bruce.connor.am@gmail.com>
25632         * lisp/character-fold.el (character-fold-table):
25633         Only fold decompositions if at least one character is non-spacing.
25634         (Bug#20975)
25636 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
25638         Merge from gnulib
25639         This incorporates:
25640         2015-07-04 file-has-acl, acl-permissions: fix HP-UX typos
25641         2015-07-03 set-permissions.c: adjust acl_from_mode's cpp guard
25642         2015-07-02 update-copyright: fix test failure with perl >= 5.22
25643         2015-07-01 gnulib-common.m4: change the ARFLAGS default to 'cr'
25644         2015-07-01 acl: fix definition of acl_from_mode on FreeBSD
25645         * build-aux/update-copyright, doc/misc/texinfo.tex, lib/acl-internal.h:
25646         * lib/set-permissions.c, m4/gnulib-common.m4: Copy from gnulib.
25648 2015-07-05  Christoph Wedler  <christoph.wedler@sap.com>
25650         Respect `prog-indentation-context' in python.el
25651         * lisp/progmodes/python.el (python-indent-guess-indent-offset)
25652         (python-indent-context, python-indent--calculate-indentation)
25653         (python-info-current-defun)
25654         (python-info-dedenter-opening-block-message)
25655         (python-info-line-ends-backslash-p)
25656         (python-info-beginning-of-backslash)
25657         (python-info-continuation-line-p): Use `prog-widen'.
25658         (python-indent--calculate-indentation)
25659         (python-indent--calculate-levels)
25660         (python-indent-calculate-indentation): Use `prog-first-column'.
25661         (python-indent--calculate-levels): Simplify.
25662         Ignore also initial empty lines for syntax calculation.
25663         * lisp/progmodes/python.el (python-indent-context): Return
25664         :no-indent for first non-empty line, not just in line 1.
25665         * test/automated/python-tests.el (python-indent-base-case)
25666         (python-indent-inside-paren-1, python-indent-inside-paren-2)
25667         (python-indent-inside-paren-3, python-indent-inside-paren-4)
25668         (python-indent-inside-paren-5, python-indent-inside-paren-6)
25669         (python-indent-after-backslash-1)
25670         (python-indent-after-backslash-2)
25671         (python-indent-after-backslash-3)
25672         (python-indent-after-backslash-4, python-indent-inside-string-1):
25673         Expect :no-indent for first non-empty line.
25675 2015-07-04  Daniel Colascione  <dancol@dancol.org>
25677         Factor isearch word description into new function
25678         * lisp/isearch.el (isearch--describe-word-mode): New function.
25679         (isearch-message-prefix, isearch-query-replace): Use it.
25681 2015-07-04  Eli Zaretskii  <eliz@gnu.org>
25683         Fix mouse pointer on w32 when a menu is active
25684         * src/w32fns.c (w32_wnd_proc): Don't change the mouse pointer
25685         shape while a menu is in use.  This started happening since we now
25686         send WM_EMACS_SHOWCURSOR messages when the mouse moves.
25688 2015-07-04  Martin Rudalics  <rudalics@gmx.at>
25690         Fix processing of alpha parameter for Windows tip frames  (Bug#17344)
25691         * src/w32fns.c (x_create_tip_frame): Fix processing alpha
25692         parameter.  (Bug#17344)
25694         Have `compilation-set-window' use right window for getting fringes
25695         (Bug#20829)
25696         * lisp/progmodes/compile.el (compilation-set-window):
25697         Take `window-fringes' from argument window.
25699 2015-07-03  Glenn Morris  <rgm@gnu.org>
25701         Update eieio tests for recent eieio-core change.
25702         * test/automated/eieio-test-persist.el (persist-test-save-and-compare):
25703         * test/automated/eieio-tests.el
25704         (eieio-test-32-slot-attribute-override-2):
25705         Replace the deleted eieio--class-v with cl--find-class.
25707 2015-07-03  Martin Rudalics  <rudalics@gmx.at>
25709         Fix some issues with `window-divider-mode'
25710         * lisp/frame.el (window-divider-default-places): New option.
25711         (window-divider-mode): Remove option.
25712         (window-divider-mode): Make it a "regular" minor mode.
25713         (window-divider-width-valid-p): Drop frame- prefix.
25714         (window-divider-mode-apply): New argument ENABLE.  Drop frame-
25715         prefix.  Handle `window-divider-default-places'.
25716         (frame--window-divider-mode-set-and-apply): Remove.
25717         (window-divider-default-bottom-width)
25718         (window-divider-default-right-width): Drop :group entries.
25719         * lisp/menu-bar.el (menu-bar-bottom-and-right-window-divider)
25720         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
25721         (menu-bar-no-window-divider): Set `window-divider-default-places'
25722         and call `window-divider-mode'.
25723         * doc/emacs/frames.texi (Window Dividers): Document
25724         `window-divider-default-places'.
25726 2015-07-02  Xue Fuqiao  <xfq.free@gmail.com>
25728         * doc/emacs/display.texi (Displaying Boundaries):
25729         * doc/emacs/search.texi (Word Search): Add cross references.
25731 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
25733         -batch should not affect ‘’ -> `' display
25734         * lisp/startup.el (command-line): Do the ‘’ -> `' check even if
25735         -batch (Bug#20926).
25737 2015-07-02  Stefan Monnier  <monnier@iro.umontreal.ca>
25739         * lisp/emacs-lisp/eieio-core.el (eieio--class-v): Remove
25740         * lisp/emacs-lisp/eieio-core.el, lisp/emacs-lisp/eieio.el:
25741         * lisp/emacs-lisp/eieio-opt.el, lisp/emacs-lisp/eieio-compat.el:
25742         Use cl--find-class instead.
25744         * lisp/term/xterm.el (xterm--query): Fix paren typo (bug#20951).
25746 2015-07-02  Martin Rudalics  <rudalics@gmx.at>
25748         Some further fixes in Change Window node (Bug#20183)
25749         * doc/emacs/windows.texi (Change Window): Replace "rearranging"
25750         by "resizing" in section title.  Add some concept indices.
25751         Suggested by N. Jackson (Bug#20183).
25753         * doc/emacs/windows.texi (Change Window): Reference window
25754         dividers.
25756         Document new `window-divider-mode'.
25757         * lisp/frame.el (window-divider-mode): Fix doc-string.
25758         * doc/emacs/frames.texi (Window Dividers): New section.
25760         Improve accessibility of window dividers (Bug#20183)
25761         * lisp/faces.el (window-divider)
25762         (window-divider-first-pixel, window-divider-last-pixel): Change
25763         membership from `frames' to `window-divider' customization group.
25764         * lisp/frame.el (window-divider): New customization group.
25765         (window-divider-mode): New minor mode.
25766         (window-divider-default-bottom-width)
25767         (window-divider-default-right-width): New options.
25768         (frame--window-divider-previous-mode): New variable.
25769         (frame-window-divider-width-valid-p)
25770         (frame--window-divider-mode-apply)
25771         (frame--window-divider-mode-set-and-apply): New functions.
25772         * lisp/menu-bar.el (menu-bar-options-save): Save
25773         window-divider-mode settings.
25774         (menu-bar-window-divider-customize)
25775         (menu-bar-bottom-and-right-window-divider)
25776         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
25777         (menu-bar-no-window-divider): New functions.
25778         (menu-bar-showhide-window-divider-menu): New variable.
25779         (menu-bar-showhide-menu): Show/hide window divider menu.
25780         * lisp/mouse.el (mouse-split-window-vertically)
25781         (mouse-split-window-horizontally): Replace `error' by
25782         `user-error'.  Bind `window-combination-resize' to nil.
25783         (top-level): Add/reorder mouse key bindings on mode- and
25784         vertical-line.
25786 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
25788         Don't display ‘’ as `' under X in en_GB
25789         The curved quote setup code invokes (char-displayable-p ?‘),
25790         but this isn’t reliable until after the X frame replaces the
25791         terminal frame (Bug#20926).
25792         * lisp/international/mule-cmds.el (set-locale-environment):
25793         Move curved quote setup code from here ...
25794         * lisp/startup.el (command-line): ... to here, after creating
25795         the X frame.
25797 2015-07-01  Nicolas Richard  <youngfrog@members.fsf.org>
25799         * lisp/emacs-lisp/seq.el (seq-difference): Fix typo in docstring.
25801         * lisp/ido.el (ido-restrict-to-matches): Add an optional argument
25802         to reverse the meaning (Bug#15631).
25804 2015-07-01  Eli Zaretskii  <eliz@gnu.org>
25806         Be more tolerant to fonts named "Foobar-12"
25807         * src/frame.c (x_set_font): If font_spec_from_name returns nil,
25808         don't barf; instead, request a new fontset to be generated.  This
25809         avoids unnecessarily rejecting fonts named against XLFD rules.  See
25810         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html,
25811         for the description of the original problem.
25812         * lisp/faces.el (set-face-attribute): Don't be fooled too easily
25813         by a hyphen in a font's name.
25815         Fix value of posn-at-pont in R2L lines
25816         * src/keyboard.c (Fposn_at_x_y, Fposn_at_point): Allow X pixel
25817         coordinate of -1, for a newline in a right-to-left line that
25818         overflowed into the left fringe.
25820 2015-07-01  Stefan Monnier  <monnier@iro.umontreal.ca>
25822         (cl--copy-slot-descriptor): Copy the `props' alist as well
25823         * lisp/emacs-lisp/cl-preloaded.el (cl--copy-slot-descriptor-1):
25824         Rename from cl--copy-slot-descriptor.
25825         (cl--copy-slot-descriptor): New function.  Copy the alist (bug#20914).
25827 2015-06-30  Stefan Monnier  <monnier@iro.umontreal.ca>
25829         * lisp/term/xterm.el (xterm--query): Avoid generating garbage
25830         (xterm-query-timeout): New var.
25831         (xterm--query): Use it.  Fallback on async method if we timeout before
25832         getting the first byte of the reply (bug#12354).
25834 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
25836         Spelling fixes
25837         * lisp/character-fold.el (character-fold-search):
25838         * lisp/emacs-lisp/package.el (package-hidden-regexps):
25839         Fix typos.
25841 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
25843         * doc/emacs/frames.texi (Frame Commands): Typo fix.  (Bug#20946)
25845 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
25847         In strings, prefer plain ` and ' to \` and \'
25848         * lisp/allout.el (allout-insert-listified):
25849         * lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
25850         * lisp/ls-lisp.el (ls-lisp-UCA-like-collation)
25851         (ls-lisp-string-lessp):
25852         * lisp/menu-bar.el (menu-bar-open):
25853         * lisp/obsolete/otodo-mode.el (todo-top-priorities):
25854         * lisp/progmodes/compile.el (compile):
25855         * lisp/progmodes/etags.el (tags-loop-scan):
25856         * lisp/progmodes/make-mode.el (makefile-browser-insert-continuation):
25857         * lisp/subr.el (posn-actual-col-row):
25858         * lisp/term/pc-win.el (x-list-fonts):
25859         * lisp/textmodes/texinfmt.el (texinfmt-version):
25860         * lisp/textmodes/texnfo-upd.el (texinfo-master-menu):
25861         * lisp/time.el (display-time-world-list):
25862         * lisp/tmm.el (tmm-menubar):
25863         * src/buffer.c (syms_of_buffer):
25864         * src/fileio.c (syms_of_fileio):
25865         Omit unnecessary and confusing backslash before quote.
25866         * lisp/erc/erc.el (erc-cmd-LASTLOG):
25867         * lisp/progmodes/flymake.el (flymake-fix-file-name):
25868         * lisp/progmodes/vhdl-mode.el (vhdl-in-extended-identifier-p):
25869         Fix string that was intended to escape a backslash and not a quote.
25871 2015-06-30  Glenn Morris  <rgm@gnu.org>
25873         * leim/Makefile.in, lisp/Makefile.in: Add missing EXEEXT definition.
25875         * lisp/Makefile.in (MH_E_SRC, TRAMP_SRC, CAL_SRC):
25876         Replace hard-coded lists with wildcard + filter-out.
25878         * configure.ac (system-configuration-features): Add X11, NS.
25880         Improve reproducibility of generated loaddefs file
25881         * lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
25882         Make the return value the modtime of the input file (if no autoloads).
25883         (update-directory-autoloads): In the "no autoloads" section,
25884         use "most recent modtime" rather than "current time".
25886 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
25888         * lisp/emacs-lisp/package.el (package--remove-hidden): Fix logic.
25889         (Bug#20930)
25891 2015-06-30  Nicolas Petton  <nicolas@petton.fr>
25893         * doc/lispref/sequences.texi: Add documentation for seq-min and seq-max.
25895         Add seq-min and seq-max
25896         Bump version number.
25897         * lisp/emacs-lisp/seq.el (seq-min, seq-max): New functions.
25898         * test/automated/seq-tests.el: Add tests for seq-min and seq-max.
25900 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
25902         Make sure sleep-for always delays for as long as it's told
25903         * src/dispnew.c (Fsleep_for): Call wait_reading_process_output in
25904         a loop, to ensure we always wait exactly the required amount of
25905         time.  (Bug#15990)
25907 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
25909         Fix pointer signedness glitch
25910         * src/font.c (font_load_for_lface): Use SSDATA, not SDATA.
25912 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
25914         Don't block changes in mouse pointer inside 'track-mouse'
25915         * etc/NEWS:
25916         * doc/lispref/frames.texi (Mouse Tracking): Document the special
25917         effect of setting 'track-mouse' to 'dragging'.
25918         * lisp/textmodes/artist.el (artist-mouse-draw-continously):
25919         * lisp/ruler-mode.el (ruler-mode-mouse-drag-any-column-iteration):
25920         * lisp/mouse-drag.el (mouse-drag-throw):
25921         * lisp/mouse.el (mouse-drag-line): Set 'track-mouse' to 'dragging'
25922         to avoid changes in the shape of the mouse pointer.
25923         * src/xdisp.c (define_frame_cursor1): Don't change the mouse
25924         pointer shape when do_mouse_tracking has the value of 'dragging',
25925         not just any non-nil value.  (Bug#20934)
25926         (syms_of_xdisp): DEFSYM 'dragging'.
25928 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
25930         * lisp/isearch.el (isearch-toggle-word): Fix toggle.
25932         * lisp/emacs-lisp/package.el (package-compute-transaction):
25933         Don't assume version sorting.
25935         * lisp/emacs-lisp/package.el (package--save-selected-packages):
25936         Don't save before init time, to avoid overwriting configurations.
25937         (Bug#20855)
25939 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
25941         * doc/emacs/display.texi (Standard Faces, Fringes): Add cross
25942         references.
25944 2015-06-29  Ted Zlatanov  <tzz@lifelogs.com>
25946         Update for the upcoming CFEngine 3.7 release: support macros and
25947         quoted context strings; reformat JSON; indent promise attributes 2
25948         units by default; give function parameter descriptions in the eldoc
25949         glue.
25950         * lisp/progmodes/cfengine.el: Update version and docs and fix name.
25951         Autoload `json-pretty-print'.  Support new features in 3.7.
25952         (cfengine-parameters-indent): Set default promise attribute indent to
25953         2 more than the promise itself.
25954         (cfengine3-macro-regex): New variable to match the new macro syntax.
25955         (cfengine3-font-lock-keywords): Use it to highlight macros.
25956         (cfengine3-indent-line): Use it to indent macros to column 0.
25957         (cfengine3-class-selector-regex): Update for the new quoted strings
25958         format.
25959         (cfengine3-reformat-json-string): New function to reformat a JSON
25960         string using `json-pretty-print'.
25961         (cfengine3-format-function-docstring): Use function parameter
25962         description if it's provided by the cf-promises syntax dump.
25964 2015-06-29  Michael R. Mauger  <michael@mauger.com>
25966         Cygwin emacsclient handles w32 file names
25967         * lisp/server.el (server-process-filter): Allow Cygwin's
25968         emacsclient to be used as a file handler on MS-Windows.
25970 2015-06-29  Katsumi Yamaoka  <yamaoka@jpl.org>
25972         * lisp/isearch.el (isearch-exit): Don't call isearch-done twice
25973         (bug#20925).
25975 2015-06-29  Eli Zaretskii  <eliz@gnu.org>
25977         * doc/lispref/text.texi (Sticky Properties): Improve wording.
25978         (Bug#20924)
25980         Allow font names that end in "-NN", where NN is a number
25981         * src/font.c (font_load_for_lface): If the font-spec didn't match
25982         any available fonts, try again without interpreting trailing "-NN"
25983         as the font size.  For the description of the original problem, see
25984         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html
25986         .gdbinit followup to changes in !USE_LSB_TAG
25987         * src/.gdbinit (xgetsym): Don't left-shift $ptr even under
25988         !USE_LSB_TAG, as Emacs no longer does.
25990 2015-06-29  Wolfgang Jenkner  <wjenkner@inode.at>
25992         * lisp/calc-store.el (calc-insert-permanent-variable): Heed case.
25993         Otherwise `s p' of f and F will stomp on each other's value.
25994         (Bug#20916)
25996 2015-06-29  Artur Malabarba  <bruce.connor.am@gmail.com>
25998         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
25999         Don't block remember-pos if buffer isn't displayed.  (Bug#20921)
26001 2015-06-29  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
26003         * lisp/emacs-lisp/package.el (describe-package): Use symbol-at-point
26004         as additional guess.
26006         * lisp/emacs-lisp/package.el (describe-package): Convert the guess
26007         to a string.
26009 2015-06-28  Paul Eggert  <eggert@cs.ucla.edu>
26011         apropos-library quoting fix
26012         * lisp/apropos.el (apropos-library): Quote library consistently
26013         with the rest of the quoting used by apropos.
26015         Clarify interpreter-mode-alist doc
26016         * lisp/files.el (interpreter-mode-alist):
26017         Reword to avoid confusing quoting that wasn't working anyway.
26019 2015-06-28  Michael Albinus  <michael.albinus@gmx.de>
26021         Sync with Tramp 2.2.12
26022         * doc/misc/trampver.texi:
26023         * lisp/net/trampver.el: Update release number.
26024         * test/automated/tramp-tests.el (tramp-test13-make-directory):
26025         Fix cleanup.
26027 2015-06-28  Artur Malabarba  <bruce.connor.am@gmail.com>
26029         * lisp/isearch.el (isearch-mode): Don't char-fold regexps (bug#20913).
26031 2015-06-27  Dmitry Gutov  <dgutov@yandex.ru>
26033         Bind grep-highlight-matches around the rgrep call
26034         * lisp/progmodes/grep.el (zrgrep): Bind grep-highlight-matches
26035         around the rgrep call (bug#20728).
26037         Put "--color" before the other options in grep-command
26038         * lisp/progmodes/grep.el (grep-compute-defaults): Put "--color"
26039         before the other options in grep-command (bug#20912).
26041         Add --color Grep option to the command dynamically
26042         * lisp/progmodes/grep.el (grep-template, grep-find-template):
26043         Update the description for <C>.  (Bug#20728)
26044         (grep-compute-defaults): Don't add the --color option to
26045         grep-options.  Only add it to grep-command.
26046         (grep-expand-keywords): Expand the env value opts into <C>.
26047         (grep-expand-template): Replace cf in the env with the opts list,
26048         that can include -i and --color.
26049         * lisp/progmodes/xref.el (xref-collect-matches): Do not remove
26050         "--color=always" from the template, because we don't have to.
26052 2015-06-27  Paul Eggert  <eggert@cs.ucla.edu>
26054         cl-extra fixes for most-negative-fixnum
26055         * lisp/emacs-lisp/cl-extra.el (cl-gcd, cl-lcm, cl-random):
26056         Don't mishandle an argument equal to most-negative-fixnum,
26057         whose absolute value equals itself.
26058         (cl-gcd, cl-lcm): Use dolist rather than doing it by hand.
26060         Initialize cl--gensym-counter to 0
26061         Previously it was initialized to a random value, which made it
26062         harder to reproduce earlier Emacs runs.  The need for a random
26063         value went away when Emacs introduced and used the #: syntax for
26064         uninterned symbols (Bug#20862).
26065         * doc/misc/cl.texi (Creating Symbols, Common Lisp Compatibility):
26066         Document that cl--gensym-counter now starts with 0.
26067         * lisp/emacs-lisp/cl-lib.el (cl--gensym-counter): Remove.
26068         (cl--random-time): Move to near only remaining use.
26069         * lisp/emacs-lisp/cl-macs.el (cl--gensym-counter): Initialize to 0.
26071         Improve docstring for macroexp-let2
26072         * lisp/emacs-lisp/macroexp.el (macroexp-let2):
26073         Improve as per suggestion by RMS in:
26074         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00621.html
26075         Also, rename args to match new doc string.
26077 2015-06-27  Eli Zaretskii  <eliz@gnu.org>
26079         Fix VC test suite on MS-Windows
26080         * lisp/vc/vc-svn.el (vc-svn-create-repo): Make sure the file: URL
26081         always starts with 3 slashes after the colon.
26082         * test/automated/vc-tests.el (vc-test--create-repo-function): Use
26083         'w32-application-type' to invoke CVS on MS-Windows with properly
26084         formatted CVSROOT directory name.
26086         Add a new function w32-application-type
26087         * src/w32proc.c (Fw32_application_type): New function.
26089         Avoid error in TLS connections due to incorrect format
26090         * src/gnutls.c (Fgnutls_boot): Use the %x conversion specifier in
26091         the call to 'error', instead of the unsupported %u.  Reported by
26092         lo2net <fangtao0901@gmail.com>.  (Bug#20908)
26094 2015-06-26  Artur Malabarba  <bruce.connor.am@gmail.com>
26096         * lisp/replace.el (replace-search): Fix regexp case (bug#20901).
26098 2015-06-26  Leo Liu  <sdl.web@gmail.com>
26100         * lisp/emacs-lisp/cl-indent.el: Fix indentation for
26101         `with-output-to-string' in elisp.
26103         Revert "lisp/emacs-lisp/cl-indent.el: Fix indent of
26104         with-output-to-string".
26105         This reverts commit 659199f2ca5f283fb246faa78a244e5ca25f53dd.
26107 2015-06-26  Eli Zaretskii  <eliz@gnu.org>
26109         Minor corrections in ELisp manual
26110         * doc/lispref/nonascii.texi (Character Properties): Correct
26111         inaccuracies in description of values of the Unicode properties.
26113         Fix invisible mouse pointers on Windows.
26114         * src/w32fns.c: Include windowsx.h.
26115         (w32_wnd_proc): If the mouse moved and the mouse pointer is
26116         invisible, make it visible again even when the main (Lisp)
26117         thread is busy.
26118         * src/w32term.c (w32_toggle_invisible_pointer): Rather then
26119         garbaging the frame have the input thread call SetCursor.
26121 2015-06-26  Martin Rudalics  <rudalics@gmx.at>
26123         Provide invisible mouse pointers on Windows (Bug#6105) (Bug#12922)
26124         * src/w32fns.c (w32_wnd_proc): Handle f->pointer_invisible
26125         for WM_SETCURSOR and WM_EMACS_SETCURSOR cases.
26126         * src/w32term.c (w32_hide_hourglass): Handle f->pointer_invisible.
26127         (w32_toggle_invisible_pointer): New function.
26128         (w32_create_terminal): Add w32_toggle_invisible_pointer as
26129         toggle_invisible_pointer_hook for this terminal.
26131 2015-06-25  Xue Fuqiao  <xfq.free@gmail.com>
26133         Doc fix for deletion commands
26134         'delete-char' does not respect the value of 'delete-active-region'.
26135         * doc/emacs/killing.texi (Deletion):
26136         Fix documentation for some single-char deletion commands.
26138         * doc/emacs/help.texi (Apropos):
26139         Improve documentation of 'apropos-do-all'.
26141         * doc/emacs/help.texi (Help Summary):
26142         Improve documentation of 'describe-mode'.
26144 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
26146         Fix submake dependency bug with .h files
26147         * src/Makefile.in ($(libsrc)/make-docfile$(EXEEXT)):
26148         Depend on $(lib)/libgnu.a, so that we build $(lib)/*/*.h
26149         before the submake in $(libsrc) would spin off a subsubmake
26150         for $(lib) in parallel with our submake for $(lib) (Bug#20894).
26152 2015-06-25  Artur Malabarba  <bruce.connor.am@gmail.com>
26154         * lisp/character-fold.el (character-fold-table): Reuse `table'.
26156 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
26158         Translate undisplayable ‘ to `
26159         * doc/lispref/help.texi (Keys in Documentation):
26160         * lisp/international/mule-cmds.el (set-locale-environment):
26161         * lisp/term/w32console.el (terminal-init-w32console):
26162         * src/doc.c (Fsubstitute_command_keys, Vhelp_quote_translation):
26163         If ‘ is not displayable, transliterate it to `, not to '.  See:
26164         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00542.html
26166         Fix C99 incompatibilities in Cairo code
26167         * src/image.c (xpm_load) [USE_CAIRO]:
26168         * src/xterm.c (x_cr_accumulate_data) [USE_CAIRO]:
26169         Fix pointer signedness problem.
26171 2015-06-25  Oleh Krehel  <ohwoeowho@gmail.com>
26173         lisp/emacs-lisp/cl-indent.el: Fix indent of with-output-to-string
26174         * lisp/emacs-lisp/cl-indent.el (common-lisp-indent-function):
26175         `with-output-to-string' should have the same indent as `progn'.
26176         This is in line with the declaration of `with-output-to-string'.
26178 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
26180         Get ‘./configure; make -C src emacs’ to work
26181         Without this fix, lib/fcntl.h isn't built in time (Bug#20894).
26182         * lib-src/Makefile.in (../lib/libgnu.a):
26183         * src/Makefile.in ($(lib)/libgnu.a): Build all, not libgnu.a.
26185 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
26187         Fix GC bugs --with-wide-int and Qnil == 0
26188         Use the same alignment for the !USE_LSB_TAG case as for the
26189         more-typical USE_LSB_TAG case.  The attempt to support arbitrary
26190         alignments with !USE_LSB_TAG had subtle bugs in garbage collection
26191         once we changed the representation of symbols so that Qnil == 0.
26192         Problem reported by Eli Zaretskii (Bug#20862).
26193         * src/alloc.c (XMALLOC_HEADER_ALIGNMENT) [XMALLOC_OVERRUN_CHECK]:
26194         * src/alloc.c (vector_alignment, union aligned_Lisp_Symbol)
26195         (union aligned_Lisp_Misc, maybe_lisp_pointer, pure_alloc):
26196         Use same alignment for !USE_LSB_TAG as for USE_LSB_TAG.
26197         * src/alloc.c (POINTERS_MIGHT_HIDE_IN_OBJECTS): Remove.
26198         This optimization in the !USE_LSB_TAG case is no longer valid when
26199         symbols are represented via offsets.  Change the only use to
26200         assume that pointers might hide in objects.
26201         * src/lisp.h (alignas) [!USE_LSB_TAG]:
26202         Require support in this case, too.
26203         (TAG_SYMOFFSET, XSYMBOL) [!USE_LSB_TAG]: Do not shift the offset.
26204         This is OK, because the !USE_LSB_TAG case now applies only when
26205         Lisp_Object is wider than void *, so there's no longer any need
26206         to shift the offset.  Not shifting the offset means that
26207         symbol representations have the same alignment as pointers,
26208         which the GC assumes.
26210 2015-06-24  Xue Fuqiao  <xfq.free@gmail.com>
26212         * doc/lispintro/emacs-lisp-intro.texi (Data types):
26213         Improve documentation of 'substring'.
26215 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
26217         * lisp/character-fold.el (character-fold-table): Fix table generation.
26219 2015-06-24  Glenn Morris  <rgm@gnu.org>
26221         * nextstep/Makefile.in (all): Make it the first target.
26222         (../src/emacs${EXEEXT}): Add rule for making it.
26224 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
26226         * etc/NEWS: Fix mention to old function name.
26228         * lisp/character-fold.el: New file (Bug#20887)
26229         (character-fold-to-regexp): New function.
26230         * lisp/replace.el (replace-search): Check value of
26231         `character-fold-search'.
26232         * lisp/isearch.el: Move character-folding code to
26233         character-fold.el
26234         (isearch-toggle-character-fold): New command.
26235         (isearch-mode-map): Bind it to "\M-sf".
26236         (isearch-mode): Check value of `character-fold-search'.
26238 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
26240         lisp/subr.el (remove-from-invisibility-spec): Handle the t case
26241         * lisp/subr.el (remove-from-invisibility-spec): Make sure `element'
26242         is visible even if it's not yet in buffer-invisibility-spec (bug#20468).
26244         * lisp/progmodes/xref.el (xref-location-group, xref-location-marker)
26245         (xref--insert-xrefs, xref-collect-references): Avoid init-args in oref.
26247 2015-06-24  Glenn Morris  <rgm@gnu.org>
26249         * Makefile.in (install-arch-dep): Don't set sticky bit on the binary.
26251 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
26253         lisp/gnus/nnmaildir.el: Silence lexical warnings
26254         * lisp/gnus/nnmaildir.el (nnmaildir--prepare): Use a more
26255         functional style.
26256         (nnmaildir--update-nov): Remove unused var `numdir'.
26257         (nnmaildir-request-type, nnmaildir--scan, nnmaildir-request-newgroups)
26258         (nnmaildir-request-group, nnmaildir-request-create-group)
26259         (nnmaildir-request-post, nnmaildir-request-move-article)
26260         (nnmaildir-request-accept-article, nnmaildir-active-number):
26261         Mark unused args.
26262         (nnmaildir-get-new-mail, nnmaildir-group-alist)
26263         (nnmaildir-active-file): Declare.
26264         (nnmaildir-request-scan): Remove unused vars `group' and `grp-dir'.
26265         (nnmaildir-request-update-info): Remove unused vars `dotfile', `num',
26266         `mark', `end', `new-mark', and `mark-sym'.
26267         (nnmaildir-retrieve-headers): Remove unused args `srv-dir', `dir',
26268         `nlist2'.
26269         (nnmaildir-request-expire-articles):
26270         Remove unused vars `article', `stop' and `nlist2'.
26271         (nnmaildir-request-set-mark): Remove unused vars `begin', `article' and
26272         `end'.  Use nnmaildir--article when dyn-binding is needed.
26273         Give the value directly in the `let' for `del-mark', `del-action',
26274         `add-action', and `set-action'.  Don't use `add-to-list' on a local var.
26275         (nnmaildir-close-server): Declare those local vars that need to be
26276         dyn-bound.
26278 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
26280         * src/keyboard.h (kbd_buffer_store_event_hold): Remove unused local.
26282         Port selection info fix to clang
26283         * src/keyboard.h (kbd_buffer_store_event_hold):
26284         Don't assume C11 semantics for alignof (Bug#20756).
26286         Fix bug that munged selection info
26287         On some optimizing C compilers, copying a structure did not
26288         copy the padding bytes between elements, and the type punning
26289         between struct input_data and struct selection_input_data did
26290         not work.  Change the C code to use a proper union type instead.
26291         Problem reported by YAMAMOTO Mitsuharu (Bug#20756).
26292         * src/keyboard.c (kbd_buffer, kbd_fetch_ptr, kbd_store_ptr)
26293         (readable_events, discard_mouse_events, kbd_buffer_events_waiting)
26294         (kbd_buffer_get_event, process_special_events, stuff_buffered_input)
26295         (mark_kboards):
26296         Use union buffered_input_event, not struct input_event.
26297         (clear_event, deliver_input_available_signal, process_special_events):
26298         Remove unnecessary forward decls.
26299         (kbd_buffer_store_buffered_event): New function, mostly just the
26300         old kbd_buffer_store_event_hold, except its argument is of type
26301         union buffered_input_event, not struct input_event.
26302         (kbd_buffer_unget_event): Define only if HAVE_X11, since it's
26303         not needed otherwise.  Argument is now of type
26304         struct selection_input_event *, not struct input_event *.
26305         All callers changed.
26306         (clear_event): Arg is now of type union buffered_input_event *,
26307         not struct input_event *.  All callers changed.
26308         * src/keyboard.h [HAVE_X11]: Include "xterm.h".
26309         (union buffered_input_event): New type.
26310         (kbd_buffer_store_event_hold): Now an inline function,
26311         defined here.
26312         * src/termhooks.h (EVENT_KIND_WIDTH): New constant.
26313         (struct input_event): Use it.
26314         * src/xselect.c (struct selection_event_queue):
26315         Make elements be of type struct selection_input_event,
26316         not struct input_event.
26317         (selection_input_event_equal): New static function.
26318         (x_queue_event): Use it.
26319         (x_queue_event, x_decline_selection_request)
26320         (x_selection_current_request, x_reply_selection_request)
26321         (x_handle_selection_request, x_handle_selection_clear)
26322         (x_handle_selection_event): Use struct selection_input_event,
26323         not struct input_event.  All callers changed.
26324         (x_convert_selection): Omit unused first arg.  All callers changed.
26325         (Fx_disown_selection_internal): Omit unnecessary union.
26326         * src/xterm.c (handle_one_xevent): Use new union buffered_input_event
26327         rather than rolling our own equivalent.  Prefer sie.kind when
26328         setting up that kind of structure.
26329         Call kbd_buffer_store_buffered_event, not kbd_buffer_store_event_hold.
26330         * src/xterm.h (struct selection_input_event: Use EVENT_KIND_WIDTH.
26331         (SELECTION_EVENT_DISPLAY, SELECTION_EVENT_DPYINFO)
26332         (SELECTION_EVENT_REQUESTOR, SELECTION_EVENT_SELECTION)
26333         (SELECTION_EVENT_TARGET, SELECTION_EVENT_PROPERTY)
26334         (SELECTION_EVENT_TIME, x_handle_selection_event):
26335         Arg is now of type struct selection_input_event *)
26336         not struct input_event *.  All callers changed.
26338 2015-06-23  Glenn Morris  <rgm@gnu.org>
26340         * Makefile.in (install-arch-dep): Simplify with Make conditionals.
26342 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
26344         * lisp/isearch.el: Fold many unicode characters to ASCII.
26345         (isearch-character-fold-search, isearch--character-fold-extras)
26346         (isearch--character-fold-table): New variable.
26347         (isearch--character-folded-regexp): New function.
26348         (isearch-search-fun-default): Use them.
26349         * lisp/replace.el (replace-character-fold): New variable.
26350         (replace-search): Use it.
26351         * etc/NEWS: Document it.
26353 2015-06-23  Glenn Morris  <rgm@gnu.org>
26355         Check for an input event before showing a dialog box.  (Bug#20813)
26356         * lisp/subr.el (y-or-n-p):
26357         * src/fns.c (Fyes_or_no_p): Check last-input-event as well
26358         as last-nonmenu-event.
26360 2015-06-23  Jürgen Hartmann  <juergen_hartman_@hotmail.com>  (tiny change)
26362         Respect ‘switch-to-visible-buffer’ more rigidly.  (Bug#20861)
26363         * lisp/window.el (switch-to-visible-buffer): Doc adjustment.
26364         (switch-to-prev-buffer, switch-to-next-buffer): Respect
26365         switch-to-visible-buffer independent of the windows history.
26367 2015-06-23  Paul Eggert  <eggert@cs.ucla.edu>
26369         * src/keyboard.c (last_timer_event): Remove unused var.
26371 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
26373         * test/automated/package-test.el (package-test-update-listing):
26374         Fix test.
26376 2015-06-23  Glenn Morris  <rgm@gnu.org>
26378         Revert 2014-06-25 nextstep/Makefile change.
26379         * nextstep/Makefile.in (${ns_appbindir}): Remove rule.
26380         (${ns_appbindir}/Emacs, links): Create ns_appbindir in the rule,
26381         not as an order-only prerequisite.
26383         * configure.ac (--with-ns): Enable by default on OS X.
26385 2015-06-23  Leo Liu  <sdl.web@gmail.com>
26387         Fix shell-for/backward-command to exclude spaces
26388         * lisp/shell.el (shell-forward-command, shell-backward-command):
26389           Handle the 'move case from re-search-forward/backward.
26390           fixes debbugs:20873
26392 2015-06-22  Juri Linkov  <juri@linkov.net>
26394         * lisp/replace.el (query-replace-read-from): Add separator to
26395         the local binding of text-property-default-nonsticky.  (Bug#20690)
26397         * lisp/simple.el (shell-command-on-region): Replace 'error' with 'user-error'.
26398         (Bug#20785)
26400 2015-06-22  Ken Brown  <kbrown@cornell.edu>
26402         Enable CPU profiling on Cygwin
26403         * src/syssignal.h [CYGWIN] (PROFILER_CPU_SUPPORT): Revert previous
26404         change that undefined this.
26405         (SIGEV_SIGNAL): Ensure that this is defined as a macro.
26406         * src/profiler.c [CYGWIN] (timer_getoverrun): Define as a macro on
26407           Cygwin.
26409         Improve diagnostics of profiler-cpu-start
26410         * src/profiler.c (setup_cpu_timer): Change return type to 'int';
26411         return -1 if the sampling interval is invalid.
26412         (Fprofiler_cpu_start): Improve error message if 'setup_cpu_timer'
26413         fails.  (Bug#20843)
26415 2015-06-22  Artur Malabarba  <bruce.connor.am@gmail.com>
26417         * lisp/emacs-lisp/package.el: Exclude packages by name.
26418         (package-hidden-regexps): New variable.
26419         (package-menu--refresh): Use it.
26420         (package-menu-hide-package): New command.
26422         * lisp/emacs-lisp/package.el: Rename hide-obsolete to toggle-hiding.
26424 2015-06-22  Eli Zaretskii  <eliz@gnu.org>
26426         Fix debug-timer-check on systems without HAVE_TIMERFD
26427         * src/atimer.c (Fdebug_timer_check) [!HAVE_TIMERFD]: Actively run
26428         the expired timers, since wait_reading_process_output doesn't.
26429         (debug_timer_callback): Enlarge the tolerance to 20 msec.
26431         Fix RCS crashes in vc-test
26432         * lisp/vc/vc-rcs.el (vc-rcs-register): Avoid crashes with some old
26433         ports of 'ci' on MS-Windows by always passing the -t- switch.
26435 2015-06-22  Glenn Morris  <rgm@gnu.org>
26437         * doc/emacs/package.texi (Packages):
26438         * doc/emacs/trouble.texi (Known Problems): Remove faq cross-references.
26440         * doc/misc/efaq-w32.texi (Downloading): Copyedits.  (Bug#20851)
26442 2015-06-22  Paul Eggert  <eggert@cs.ucla.edu>
26444         Port tests to help-quote-translation
26445         * test/automated/ert-x-tests.el (ert-test-describe-test):
26446         * test/automated/package-test.el (package-test-describe-package)
26447         (package-test-signed): Allow straight quotes, too.
26449 2015-06-22  Dmitry Gutov  <dgutov@yandex.ru>
26451         Make find-function-on-key use the current window
26452         * lisp/emacs-lisp/find-func.el (find-function-on-key-do-it):
26453         Extract from `find-function-on-key', add a second argument.
26454         (find-function-on-key): Use it (bug#19679).
26455         (find-function-on-key-other-window)
26456         (find-function-on-key-other-frame): New commands.
26458 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
26460         Revert "Define `map-elt' as a generalized variable"
26461         This reverts commit 8b6d82d3ca86f76ed964063b3941a7c6ab0bf1c6.
26463 2015-06-21  Ken Brown  <kbrown@cornell.edu>
26465         Drop support for CPU profiling on Cygwin
26466         * src/syssignal.h (PROFILER_CPU_SUPPORT): Don't define on Cygwin.
26467         (Bug#20843)
26469 2015-06-21  Paul Eggert  <eggert@cs.ucla.edu>
26471         Fix some “nested” quoting confusion in doc strings
26472         * lisp/emacs-lisp/advice.el (ad-map-arglists):
26473         * lisp/kermit.el (kermit-clean-on):
26474         * lisp/mh-e/mh-comp.el (mh-repl-group-formfile):
26475         * src/keyboard.c (Frecursive_edit):
26476         Use curved quotes when quoting text containing apostrophe,
26477         so that the apostrophe isn't curved in the output.
26479 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
26481         Define `map-elt' as a generalized variable
26482         * lisp/emacs-lisp/map.el (map-elt): Define a gv-expander.
26483         * lisp/emacs-lisp/map.el (map--dispatch): Tighten the code.
26484         * lisp/emacs-lisp/map.el (map-put): Redefine it as a function using a
26485         `setf' with `map-elt'.
26486         * test/automated/map-tests.el: Comment out `test-map-put-literal'.
26488 2015-06-21  Michael Albinus  <michael.albinus@gmx.de>
26490         Improve error handling in tramp-adb.el
26491         * lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy):
26492         Improve error handling.
26494 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
26496         Reuse `alist-get' in map.el
26497         * lisp/emacs-lisp/map.el (map-elt): Use `alist-get' to retrieve alist
26498         elements.
26500 2015-06-21  Eli Zaretskii  <eliz@gnu.org>
26502         Fix bytecomp-tests--warnings when $TMPDIR has a long name
26503         * test/automated/bytecomp-tests.el (bytecomp-tests--warnings):
26504         Allow the warning to begin on the 3rd, not only 2nd line, which
26505         happens if temporary-file-directory has a very long name.
26507         Expect 2 icalendar tests to fail on MS-Windows
26508         * test/automated/icalendar-tests.el (icalendar-import-with-timezone)
26509         (icalendar-real-world): Make them expected failures on MS-Windows.
26511 2015-06-20  Paul Eggert  <eggert@cs.ucla.edu>
26513         Improve port of settings UI to older displays
26514         * lisp/cus-start.el (standard): Don't assume curved quotes are
26515         easily distinguishable when users are tinkering with a setting
26516         that affects how curved quotes are generated.
26518         Fix quoting in electric-quote-mode doc string
26519         * lisp/electric.el (electric-quote-mode): Fix quoting.
26520         This is a fallout from the recent change introducing
26521         ‘help-quote-translation’.
26523         Spelling fix
26525         * doc/misc/texinfo.tex, lib/set-permissions.c: Merge from gnulib.
26527         * src/doc.c (syms_of_doc): Remove unused symbols.
26529 2015-06-20  Martin Rudalics  <rudalics@gmx.at>
26531         * lisp/window.el (window-state-put): Undedicate target window
26532         before putting STATE into it.  (Bug#20848)
26534 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
26536         Merge from origin/emacs-24
26537         a5e6f33 Fixes: debbugs:20832
26538         b9f02cf Fixes: debbugs:20832
26540 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
26542         Fix file-in-directory-p when the directory is UNC
26543         * lisp/files.el (file-in-directory-p): Support files and
26544         directories that begin with "//".  (Bug#20844)
26546 2015-06-19  Stephen Berman  <stephen.berman@gmx.net>
26548         * lisp/calendar/todo-mode.el (todo-show): Don't visit todo file
26549         in the minibuffer.  (Bug#20832)
26551 2015-06-19  Nicolas Richard  <youngfrog@members.fsf.org>
26553         * lisp/calendar/todo-mode.el (todo-show): Signal an error if buffer
26554         for adding new todo file is empty but modified.  (Bug#20832)
26556 2015-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
26558         (filepos-to-bufferpos): Further tweaks to the utf-16 code
26559         * lisp/international/mule-util.el (filepos-to-bufferpos):
26560         Fix typo.  Move non-exact check to the utf-16 branch (the only one
26561         affected).  Don't use byte-to-position for the utf-16 case.
26563 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
26565         Minor fixes in filepos-to-bufferpos
26566         * lisp/international/mule-util.el (filepos-to-bufferpos): Remove
26567         test for utf-8-emacs.  Exempt single-byte encodings from the
26568         'use-exact' path when QUALITY is 'exact'.  Test UTF-16 encodings
26569         for BOM before subtracting 2 bytes.  Use 'identity' when adjusting
26570         UTF-16 encoded files for CR-LF EOLs.
26572 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
26574         Improve the optional translation of quotes
26575         Fix several problems with the recently-added custom variable
26576         help-quote-translation where the code would quote inconsistently
26577         in help buffers.  Add support for quoting 'like this', which
26578         is common in other GNU programs in ASCII environments.  Change
26579         help-quote-translation to use more mnemonic values: values are now the
26580         initial quoting char, e.g., (setq help-quote-translation ?`) gets the
26581         traditional Emacs help-buffer quoting style `like this'.  Change the
26582         default behavior of substitute-command-keys to match what's done in
26583         set-locale-environment, i.e., quote ‘like this’ if displayable,
26584         'like this' otherwise.
26585         * doc/lispref/help.texi (Keys in Documentation): Document
26586         new behavior of substitute-command-keys, and document
26587         help-quote-translation.
26588         * doc/lispref/tips.texi (Documentation Tips):
26589         Mention the effect of help-quote-translation.
26590         * etc/NEWS: Mention new behavior of substitute-command-keys,
26591         and merge help-quote-translation news into it.
26592         When talking about doc strings, mention new ways to type quotes.
26593         * lisp/cedet/mode-local.el (overload-docstring-extension):
26594         Revert my recent change to this function, which shouldn't be
26595         needed as the result is a doc string.
26596         * lisp/cedet/mode-local.el (mode-local-print-binding)
26597         (mode-local-describe-bindings-2):
26598         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
26599         * lisp/cus-theme.el (describe-theme-1):
26600         * lisp/descr-text.el (describe-text-properties-1, describe-char):
26601         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
26602         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
26603         (eieio-help-constructor):
26604         * lisp/emacs-lisp/package.el (describe-package-1):
26605         * lisp/faces.el (describe-face):
26606         * lisp/help-fns.el (help-fns--key-bindings)
26607         (help-fns--compiler-macro, help-fns--parent-mode)
26608         (help-fns--obsolete, help-fns--interactive-only)
26609         (describe-function-1, describe-variable):
26610         * lisp/help.el (describe-mode):
26611         Use substitute-command-keys to ensure a more-consistent quoting
26612         style in help buffers.
26613         * lisp/cus-start.el (standard):
26614         Document new help-quote-translation behavior.
26615         * lisp/emacs-lisp/lisp-mode.el (lisp-fdefs):
26616         * lisp/help-mode.el (help-xref-symbol-regexp, help-xref-info-regexp)
26617         (help-xref-url-regexp):
26618         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
26619         * lisp/wid-edit.el (widget-documentation-link-regexp):
26620         Also match 'foo', in case we're in a help buffer generated when
26621         help-quote-translation is ?'.
26622         * src/doc.c: Include disptab.h, for DISP_CHAR_VECTOR.
26623         (LEFT_SINGLE_QUOTATION_MARK, uLSQM0, uLSQM1, uLSQM2, uRSQM0)
26624         (uRSQM1, uRSQM2, LSQM, RSQM): New constants.
26625         (Fsubstitute_command_keys): Document and implement new behavior.
26626         (Vhelp_quote_translation): Document new behavior.
26628 2015-06-18  Glenn Morris  <rgm@gnu.org>
26630         * lisp/cus-start.el (help-quote-translation): Add :version.
26632         * src/doc.c (Fsubstitute_command_keys): Make previous change compile.
26634 2015-06-18  Alan Mackenzie  <acm@muc.de>
26636         Make translation of quotes to curly in doc strings optional.
26637         * src/doc.c (traditional, prefer-unicode): New symbols.
26638         (help-quote-translation): New variable.
26639         (Fsubstitute_command_keys): Make translation of quotes dependent on
26640         `help-quote-translation'; also translate curly quotes back to ASCII
26641         ones.
26642         * lisp/cus-start.el (top-level): Add a customization entry for
26643         `help-quote-translation'.
26645 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
26647         * lisp/emacs-lisp/package.el: Don't always propagate async errors
26648         (package--with-work-buffer-async): Only propagate the error if the
26649         callback returns non-nil.
26650         (package--download-one-archive): Return nil on the signature
26651         checking callback if we accept unsigned.
26652         (package--download-and-read-archives): Return non-nil on the
26653         archive download callback.
26655 2015-06-18  Martin Rudalics  <rudalics@gmx.at>
26657         Set image_cache_refcount before x_default_parameter calls.  (Bug#20802)
26658         * src/nsfns.m (Fx_create_frame):
26659         * src/xfns.c (Fx_create_frame, x_create_tip_frame): Move setting
26660         image_cache_refcount before first x_default_parameter call.
26662 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
26664         Improve and extend filepos-to-bufferpos
26665         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
26666         Don't barf if F returns nil for some argument.
26667         (filepos-to-bufferpos): Expand to support UTF-16 and not assume
26668         that every encoding of type 'charset' is single-byte.
26670 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
26672         * lisp/emacs-lisp/package.el (package-menu--perform-transaction):
26673         Properly delete packages.  (Bug#20836)
26675 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
26677         Update data files from just-released Unicode 8.0
26678         * etc/NEWS: Update wording since Unicode 8.0 is no longer in draft
26679         status.
26680         * test/BidiCharacterTest.txt: Update from Unicode 8.0.
26681         * admin/unidata/BidiMirroring.txt:
26682         * admin/unidata/BidiBrackets.txt:
26683         * admin/unidata/UnicodeData.txt: Update from Unicode 8.0.
26685 2015-06-18  Paul Eggert  <eggert@cs.ucla.edu>
26687         Document curved quotes a bit better
26688         * doc/emacs/basic.texi (Inserting Text):
26689         Mention C-x 8.  Change example to use curved quote rather
26690         than infinity, as this lets us give more ways to do it.
26691         * doc/emacs/mule.texi (International Chars): Mention C-x 8 shortcuts
26692         and quotation marks.
26693         * doc/emacs/text.texi (Quotation Marks):
26694         * doc/lispref/tips.texi (Documentation Tips):
26695         Add "curly quotes" and "curved quotes" to the index.
26696         * doc/emacs/text.texi (Quotation Marks):
26697         Give the C-x 8 shorthands for curved quotes.
26698         Cross-reference to "Quotation Marks".
26700 2015-06-17  Daiki Ueno  <ueno@gnu.org>
26702         Add pinentry.el for better GnuPG integration
26703         * lisp/pinentry.el: New file.
26704         * etc/NEWS: Add entry about pinentry.el.
26705         * lisp/epg.el (epg--start): Set INSIDE_EMACS envvar.
26706         (Bug#20550)
26708 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
26710         * lisp/emacs-lisp/package.el: Slightly better error reporting.
26712 2015-06-17  Stefan Monnier  <monnier@iro.umontreal.ca>
26714         (define-minor-mode): Use setq-default for :global minor modes
26715         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
26716         Use setq-default for :global minor modes (bug#20712).
26718 2015-06-17  Eli Zaretskii  <eliz@gnu.org>
26720         Avoid infloop in redisplay with tall images
26721         * src/xdisp.c (try_scrolling): Prevent an infloop when scrolling
26722         down near ZV.  (Bug#20808)
26723         Call bidi_unshelve_cache to avoid memory leaks.  Use IT_CHARPOS
26724         instead of CHARPOS.
26726 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
26728         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
26729         Fix error reporting.
26731         * lisp/emacs-lisp/let-alist.el: Move to lisp/emacs-lisp/let-alist.el
26733         * lisp/emacs-lisp/package.el: Revert buffer after any operation
26734         Call `package-menu--post-refresh' after any operation that changes
26735         the package database (`package-install' and `package-delete').  To
26736         avoid performance issues in large transactions, these functions
26737         add `post-refresh' to `post-command-hook' instead of calling it
26738         immediately.
26739         (package-menu--mark-or-notify-upgrades): New function.
26740         (list-packages): Add it to `package--post-download-archives-hook'.
26741         (package-menu--post-refresh): Lose the upgrade-checking code, add
26742         code to remove itself from `post-command-hook'.
26743         (package-install, package-delete): Add it to `post-command-hook'.
26744         (package-menu-execute): Don't call `package-menu--post-refresh'.
26746 2015-06-17  Stephen Leake  <stephen_leake@stephe-leake.org>
26748         Add missing function xref-location-group for elisp-mode.
26749         * lisp/progmodes/elisp-mode.el: Add missing function xref-location-group.
26751 2015-06-17  Wolfgang Jenkner  <wjenkner@inode.at>
26753         * src/editfns.c (Fbyte_to_position): Fix bytepos not at char boundary.
26754         The behavior now matches the description in the manual.  (Bug#20783)
26756 2015-06-17  Xue Fuqiao  <xfq.free@gmail.com>
26758         * etc/tutorials/TUTORIAL.cn: Update; synchronize with TUTORIAL.
26760 2015-06-17  Glenn Morris  <rgm@gnu.org>
26762         Generate char-script-table from Unicode source.  (Bug#20789)
26763         * admin/unidata/Makefile.in (AWK): New, set by configure.
26764         (all): Add charscript.el.
26765         (blocks): New variable.
26766         (charscript.el, ${unidir}/charscript.el): New targets.
26767         (extraclean): Also remove generated charscript.el.
26768         * admin/unidata/blocks.awk: New script.
26769         * admin/unidata/Blocks.txt: New data file, from unicode.org.
26770         * lisp/international/characters.el: Load charscript.
26771         * src/Makefile.in (charscript): New variable.
26772         (${charscript}): New target.
26773         (${lispintdir}/characters.elc): Depend on charscript.elc.
26774         (temacs$(EXEEXT)): Depend on charscript.
26776         * lisp/international/characters.el (char-script-table): Tweak
26777         some ranges to better match the source.  (Bug#20789#17)
26779         Remove "no-byte-compile: t" from a few files.
26780         * lisp/obsolete/bruce.el, lisp/obsolete/keyswap.el:
26781         * lisp/obsolete/patcomp.el: No reason not to compile these.
26783 2015-06-16  Glenn Morris  <rgm@gnu.org>
26785         Fix some typos in copied Unicode data.  (Bug#20789)
26786         * lisp/international/characters.el (char-script-table):
26787         * lisp/international/fontset.el (script-representative-chars)
26788         (setup-default-fontset): Fix typos.
26790         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
26791         Don't print filename twice (it's in the prefix now).
26793         * lisp/emacs-lisp/pcase.el (pcase--u1): Revert earlier workaround.
26794         No longer needed.
26796         Address a compilation warning.
26797         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defalias):
26798         Replace 't' with '_' in pcase.
26800         Address some check-declare warnings.
26801         * lisp/simple.el (tabulated-list-print):
26802         * lisp/progmodes/elisp-mode.el (xref-collect-matches):
26803         * lisp/term/ns-win.el (ns-selection-owner-p, ns-selection-exists-p)
26804         (ns-get-selection): Update declarations.
26806         Address some compilation warnings.
26807         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
26808         * lisp/vc/vc-git.el (vc-git-file-type-as-string):
26809         Replace 't' with '_' in pcase.
26811         Address some compilation warnings.
26812         * lisp/face-remap.el (text-scale-adjust):
26813         * lisp/menu-bar.el (popup-menu-normalize-position):
26814         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand):
26815         * lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-warn):
26816         * lisp/emacs-lisp/generator.el (cps--transform-1):
26817         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all):
26818         * lisp/obsolete/vc-arch.el (vc-arch-mode-line-string):
26819         * lisp/progmodes/octave.el (octave-goto-function-definition)
26820         (octave-find-definition-default-filename):
26821         Replace 't' with '_' in pcase.
26823         * lisp/emacs-lisp/pcase.el (pcase--u1):
26824         Paper-over today's bootstrap failure.
26826 2015-06-16  Nicolas Petton  <nicolas@petton.fr>
26828         * lisp/emacs-lisp/seq.el: Fix a byte-compiler warnings related to pcase.
26830         * lisp/emacs-lisp/map.el (map-into): Fix a byte-compiler warning.
26832         Better confirmation message in `find-alternate-file' (Bug#20830)
26833         * lisp/files.el (find-alternate-file'): Improve the confirmation
26834         message to show the buffer name.
26836         Better docstring for null.  (Bug#20815)
26837         * src/data.c (null): Improves the docstring, saying what null returns
26838         when OBJECT is non-nil.
26840 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
26842         * lisp/net/newst-treeview.el: Use lexical-binding.
26844         (filepos-to-bufferpos): Add missing cases.  Make sure it terminates.
26845         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
26846         New auxiliary function, extracted from filepos-to-bufferpos.
26847         Make sure it terminates.
26848         (filepos-to-bufferpos): Use it to fix the latin-1-dos case.
26849         Add support for the `exact' quality.
26851 2015-06-16  Cédric Chépied  <cedric.chepied@gmail.com>
26853         Identify feeds in newsticker treeview with :nt-feed property
26854         * lisp/net/newst-treeview.el:
26855         (newsticker--treeview-nodes-eq): Use property :nt-feed instead of :tag.
26857 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
26859         * lisp/emacs-lisp/pcase.el: Improve docs and error handling.
26860         (pcase--self-quoting-p): Floats aren't self-quoting.
26861         (pcase): Tweak docstring.
26862         (pcase--u1): Deprecate the t pattern.  Improve error detection for
26863         the nil pattern.
26864         (\`): Tweak docstring.  Signal an error for unrecognized cases.
26865         (bug#20784)
26867 2015-06-16  Eli Zaretskii  <eliz@gnu.org>
26869         Fix infloop in filepos-to-bufferpos
26870         * lisp/international/mule-util.el (filepos-to-bufferpos): Fix EOL
26871         offset calculation, and make it conditional on the eol-type of the
26872         file's encoding.  (Bug#20825)
26874 2015-06-16  Martin Rudalics  <rudalics@gmx.at>
26876         Fix handling of image cache refcounts.  (Bug#20802)
26877         This backports Eli Zaretskii's solution of this problem for W32
26878         to X and NS.
26879         * src/nsfns.m (image_cache_refcount): Define unconditionally.
26880         (unwind_create_frame): If the image cache's reference count
26881         hasn't been updated yet, do that now.
26882         (Fx_create_frame): Set image_cache_refcount unconditionally.
26883         * src/xfns.c (image_cache_refcount): Define unconditionally.
26884         (unwind_create_frame): If the image cache's reference count
26885         hasn't been updated yet, do that now.
26886         (Fx_create_frame, x_create_tip_frame): Set image_cache_refcount
26887         unconditionally.
26888         * src/w32fns.c (image_cache_refcount): Make it a ptrdiff_t as on
26889         X and NS.
26891 2015-06-16  Nils Ackermann  <nils@ackermath.info>
26893         Improve reftex-label-regexps default value
26894         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Make
26895         keyvals label regexp more strict to better cope with unbalanced
26896         brackets common in math documents.
26898 2015-06-16  Glenn Morris  <rgm@gnu.org>
26900         * doc/emacs/calendar.texi (Format of Diary File):
26901         Move "nonmarking" from here...
26902         (Displaying the Diary): ... to here.
26904         * doc/emacs/calendar.texi (Format of Diary File, Displaying the Diary):
26905         Swap the order of these nodes.
26906         * doc/emacs/emacs.texi: Update detailed menu for the above change.
26908         * doc/emacs/calendar.texi (Specified Dates, Special Diary Entries):
26909         Update date of examples.
26910         (Diary, Format of Diary File): Move example from former to latter.
26911         Reduce duplication.
26913         No need for cp51932.el, eucjp-ms.el to not be compiled any more.
26914         * admin/charsets/cp51932.awk, admin/charsets/eucjp-ms.awk:
26915         Don't set no-byte-compile in the outputs.
26916         * lisp/loadup.el: Don't specify uncompiled cp51932, eucjp-ms.
26918 2015-06-15  Glenn Morris  <rgm@gnu.org>
26920         * lisp/calendar/calendar.el (diary-file): Use locate-user-emacs-file.
26921         * doc/emacs/calendar.texi (Diary, Format of Diary File):
26922         Update for above diary-file change.
26924         * lisp/macros.el (name-last-kbd-macro, kbd-macro-query)
26925         (apply-macro-to-region-lines): Use user-error.
26927         * lisp/textmodes/page-ext.el (add-new-page, pages-directory)
26928         (pages-directory-for-addresses): Doc fixes.
26930 2015-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
26932         * lisp/info.el: Cleanup bytepos/charpos issues
26933         * lisp/international/mule-util.el: Use lexical-binding.
26934         (filepos-to-bufferpos): New function.
26935         * lisp/info.el (Info-find-in-tag-table-1): Use 0-based file positions.
26936         (Info-find-node-2): Use filepos-to-bufferpos (bug#20704).
26937         (Info-read-subfile, Info-search): Use 0-based file positions.
26939         * lisp/progmodes/perl-mode.el: Refine handling of /re/ and y/abc/def/
26940         (perl--syntax-exp-intro-keywords): New var.
26941         (perl--syntax-exp-intro-regexp, perl-syntax-propertize-function): Use it.
26942         (bug#20800).
26944 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
26946         Fix quoting when making derived mode docstring
26947         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
26948         Nest regexp-quote inside format, not the reverse.
26949         Problem reported by Artur Malabarba in:
26950         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00206.html
26952 2015-06-15  Eli Zaretskii  <eliz@gnu.org>
26954         Fix current-iso639-language on MS-Windows
26955         * lisp/international/mule-cmds.el (set-locale-environment):
26956         Downcase the locale name before interning it.  This is so the
26957         'current-iso639-language' on MS-Windows matches the ':lang'
26958         property of font-spec objects.
26960         Limit Symbola usage some more
26961         * lisp/international/fontset.el (setup-default-fontset): Limit
26962         Symbol coverage of Currency Symbols to u+20B6..u+20CF.
26963         (Bug#20727)
26965 2015-06-15  Nicolas Petton  <nicolas@petton.fr>
26967         * lisp/emacs-lisp/map.el (map-let): Better docstring.
26969 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
26971         * test/automated/help-fns.el (abc\\\[universal-argument\]b\`c\'d\\e\"f):
26972         (help-fns-test-funny-names): Spelling fixes.
26974 2015-06-14  Glenn Morris  <rgm@gnu.org>
26976         * lisp/version.el (emacs-repository-version-git): Demote errors.
26977         Check result is a hash.
26979 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
26981         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
26982         Catch errors that happen before going async.  (Bug#20809)
26984 2015-06-14  Eli Zaretskii  <eliz@gnu.org>
26986         Another improvement of documentation of set-fontset-font
26987         * doc/lispref/display.texi (Fontsets): Say explicitly that
26988         CHARACTER can be a single codepoint.
26989         * src/fontset.c (Fset_fontset_font): Doc fix.
26991         Another improvement for symbol and punctuation characters
26992         * lisp/international/fontset.el (setup-default-fontset): Exclude
26993         from Symbola character ranges for symbols and punctuation covered
26994         well by popular Unicode fonts.  Prefer fixed-misc Unicode font, if
26995         installed and where its coverage of symbols and punctuation is
26996         known to be good.  (Bug#20727)
26998 2015-06-14  Christoph Wedler  <christoph.wedler@sap.com>
27000         Some generic support for multi-mode indentation.
27001         * lisp/progmodes/prog-mode.el (prog-indentation-context):
27002         New variable.
27003         (prog-first-column, prog-widen): New convenience functions.
27005 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
27007         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
27008         Don't assume that `tabulated-list-printer' will leave point at the
27009         end of the buffer.  (Bug#20810)
27011 2015-06-13  Glenn Morris  <rgm@gnu.org>
27013         Tweaks for getting repository version; a bit more like it was for bzr
27014         * lisp/version.el (emacs-repository-version-git)
27015         (emacs-repository--version-git-1): New functions,
27016         split from emacs-repository-get-version.
27017         (emacs-repository-get-version): Make the second argument meaningful.
27019         * lisp/startup.el (command-line-1): Inform if skipping relative
27020         file names due to deleted PWD.
27022         * src/xsmfns.c (x_session_initialize): Avoid libSM crash
27023         when starup directory is missing.  (Bug#18851)
27024         (errno.h): Include it.
27026 2015-06-13  Paul Eggert  <eggert@cs.ucla.edu>
27028         Better fix for documenting `X as "`X"
27029         Fix suggested by Stefan Monnier.
27030         * lisp/help-fns.el (help-fns--signature):
27031         Insert "`X", not "(\` X)", when documenting `X (Bug#20759).
27032         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
27033         Don't treat `X specially, as help-fns--signature now handles this.
27035 2015-06-13  Eli Zaretskii  <eliz@gnu.org>
27037         Improve the default fontset when Symbola is not installed
27038         * lisp/international/fontset.el (setup-default-fontset): Only
27039         prepend Symbola and FreeMono font specs for symbols and
27040         punctuation; do not replace the default spec for them.  This
27041         should have better results when Symbola/FreeMono are not
27042         installed.  (Bug#20727)
27044         Improve documentation of ':lang' in font specs
27045         * src/font.c (Ffont_spec): Doc fix: elaborate on the values and
27046         use of the ':lang' property of the font spec.
27047         * doc/emacs/frames.texi (Fonts): Document the language names that
27048         can be in the STYLE part of XLFD.
27049         * doc/lispref/display.texi (Low-Level Font): Document the ':lang'
27050         property.
27052         * nt/README: Don't advertise the (obsolescent) w32 FAQ.
27054         * nt/README.W32: Don't advertise the (obsolescent) w32 FAQ.
27056         Revert last change in fontset.el
27057         * lisp/international/fontset.el (setup-default-fontset): Revert
27058         the change "Configure Symbola font only if installed", since font
27059         search is evidently not yet set up when this function is called.
27060         (Bug#20727)
27062 2015-06-12  Glenn Morris  <rgm@gnu.org>
27064         Ensure early startup warnings are visible at the end.  (Bug#20792)
27065         * lisp/emacs-lisp/warnings.el (display-warning):
27066         If startup isn't complete, delay the warning.
27067         * lisp/startup.el (normal-top-level, command-line):
27068         Let display-warning automatically handle the needed delays.
27069         Run delayed-warnings-hook.
27071         * lisp/version.el (emacs-repository-get-version):
27072         Avoid calling external executable if possible.  (Bug#20799)
27074 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
27076         Document `X as "`X", not as "(` X)"
27077         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
27078         Document (backquote FOO) as "`FOO", not as "(` FOO)" (Bug#20759).
27080         * src/print.c (print_object): Minor simplification.
27082 2015-06-12  Glenn Morris  <rgm@gnu.org>
27084         * src/buffer.c (init_buffer): Add final newline to message.
27086 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
27088         Configure Symbola font only if installed
27089         * lisp/international/fontset.el (setup-default-fontset):
27090         Don't specify the Symbola font if it's not installed.
27091         Likewise for FreeMono.  (Bug#20727)
27093 2015-06-12  Eli Zaretskii  <eliz@gnu.org>
27095         Configure Symbola font only for symbols and punctuation
27096         * lisp/international/fontset.el (setup-default-fontset): Leave
27097         only symbols and punctuation in the fontset setup for Symbola
27098         font; remove "Greek and Coptic" and "Cyrillic Supplement".
27099         (Bug#20798)
27101 2015-06-12  Andreas Schwab  <schwab@linux-m68k.org>
27103         Fix crash in fontset-info
27104         * src/fontset.c (Ffontset_info): Check that the RFONT-DEF elt is
27105         non-nil.
27107 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
27109         Port to Solaris 10 sparc + Sun C 5.13
27110         * configure.ac (SETUP_SLAVE_PTY) [sol2* | unixware]:
27111         Adjust to process.c change.
27112         * src/process.c (create_process): Declare volatile variables at
27113         top level of this function, so that they're less likely to be
27114         reused later in the function in the code executed by the vforked
27115         child.  Do not declare locals used only in the vforked child, as
27116         they might share memory with locals still live in the parent.
27117         Instead, use the same variables in the child as in the parent.
27118         This works around a subtle bug that causes a garbage collector
27119         crash when Emacs is built with Sun C 5.13 sparc on Solaris 10.
27121 2015-06-12  Glenn Morris  <rgm@gnu.org>
27123         * lisp/startup.el (normal-top-level): Don't let *Messages* get
27124         a nil default-directory.
27126 2015-06-11  Glenn Morris  <rgm@gnu.org>
27128         * lisp/startup.el (normal-top-level): Use delay-warning.  (Bug#20792)
27130         Some progress towards starting with PWD deleted.  (Bug#18851)
27131         * src/buffer.c (init_buffer): Handle get_current_dir_name failures.
27132         * lisp/startup.el (normal-top-level, command-line-1):
27133         * lisp/minibuffer.el (read-file-name-default):
27134         Handle default-directory being nil.
27136 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
27138         Fix "not a tty" bug on Solaris 10
27139         * configure.ac (PTY_OPEN): Define to plain 'open'
27140         on SVR4-derived hosts, so that the O_CLOEXEC flag isn't set.
27141         * src/process.c (allocate_pty): Set the O_CLOEXEC flag after
27142         calling PTY_TTY_NAME_SPRINTF, for the benefit of SVR4-derived
27143         hosts that call grantpt which does its work via a setuid subcommand
27144         (Bug#19191, Bug#19927, Bug#20555, Bug#20686).
27145         Also, set O_CLOEXEC even if PTY_OPEN is not defined, since it
27146         seems relevant in that case too.
27148 2015-06-11  Juri Linkov  <juri@linkov.net>
27150         * lisp/bindings.el (debug-ignored-errors): Add mark-inactive.
27151         * lisp/simple.el (kill-region): Replace 'error' with 'user-error'.
27152         (Bug#20785)
27154 2015-06-11  Glenn Morris  <rgm@gnu.org>
27156         * lisp/international/characters.el (char-script-table): Fix typo.
27158 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
27160         Fix quoting of help for functions with odd names
27161         While investigating Bug#20759, I discovered other quoting problems:
27162         C-h f mishandled characters like backslash and quote in function names.
27163         This fix changes the behavior so that 'C-h f pcase RET' now
27164         generates "... (\` QPAT) ..." instead of "... (` QPAT) ...",
27165         because '(format "%S" '(` FOO))' returns "(\\` FOO)".  A comment
27166         in src/lread.c's read1 function says that the backslash will be
27167         needed starting in Emacs 25, which implies that 'format' is
27168         correct and the old pcase documention was wrong to omit the backslash.
27169         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
27170         * lisp/help-fns.el (help-fns--signature):
27171         * lisp/help.el (help-add-fundoc-usage):
27172         * lisp/progmodes/elisp-mode.el (elisp-function-argstring):
27173         Use help--make-usage-docstring rather than formatting
27174         help-make-usage.
27175         * lisp/emacs-lisp/pcase.el (pcase--make-docstring):
27176         Return raw docstring.
27177         * lisp/help-fns.el (help-fns--signature): New arg RAW, to return
27178         raw docstring.  Take more care to distinguish raw from cooked dstrings.
27179         (describe-function-1): Let help-fns--signature substitute
27180         command keys.
27181         * lisp/help.el (help--docstring-quote): New function.
27182         (help-split-fundoc): Use it, to quote funny characters more
27183         systematically.
27184         (help--make-usage): Rename from help-make-usage, since this
27185         should be private.  Leave an obsolete alias for the old name.
27186         (help--make-usage-docstring): New function.
27187         * test/automated/help-fns.el (help-fns-test-funny-names): New test.
27189 2015-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
27191         * lisp/thingatpt.el (in-string-p): Revert last change,
27192         since in-string-p is not used in thingatpt.el but only from outside.
27193         Also, use lexical binding.
27195 2015-06-11  Artur Malabarba  <bruce.connor.am@gmail.com>
27197         * lisp/emacs-lisp/let-alist.el (let-alist--deep-dot-search): Fix cons.
27198         * test/automated/let-alist.el (let-alist-cons): Test it.
27200 2015-06-11  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
27202         * src/syntax.c (Fbackward_prefix_chars): Reword docstring.
27204 2015-06-10  Glenn Morris  <rgm@gnu.org>
27206         * build-aux/gitlog-to-emacslog: Also ignore pointless merge commits.
27208         Improve generated ChangeLog for gitmerge.el commits.  (Bug#20717)
27209         * build-aux/gitlog-to-changelog: Handle gitmerge.el skipped commits.
27210         * admin/gitmerge.el (gitmerge-commit-message):
27211         Exclude "skipped" messages from ChangeLog once again.
27213         Slight namespace cleanup for thingatpt.el.
27214         * lisp/thingatpt.el (thing-at-point--in-string-p)
27215         (thing-at-point--end-of-sexp, thing-at-point--beginning-of-sexp)
27216         (thing-at-point--read-from-whole-string): Rename from
27217         old versions without "thing-at-point--" prefix.
27218         Keep old versions as obsolete aliases.  Update all uses.
27220         * lisp/emacs-lisp/checkdoc.el (checkdoc-get-keywords):
27221         Move requiring of finder from here...
27222         (checkdoc-package-keywords): ... to here.
27224         Use 'user-error' in a few calendar files.
27225         * lisp/calendar/appt.el (appt-add):
27226         * lisp/calendar/calendar.el (calendar-absolute-from-gregorian)
27227         (calendar-generate):
27228         * lisp/calendar/diary-lib.el (diary-mail-entries, diary-cyclic):
27229         Replace 'error' with 'user-error'.
27231         * lisp/progmodes/f90.el (f90-backslash-not-special): Use user-error.
27233         * lisp/files-x.el (add-file-local-variable):
27234         Special-case 'lexical-binding'.  (Bug#20641)
27236         * lisp/progmodes/executable.el (executable-self-display): Obsolete.
27237         No longer autoload.
27238         * doc/misc/autotype.texi (Executables):
27239         Undocument executable-self-display.
27241         * lisp/progmodes/executable.el (executable-self-display):
27242         Use non-obsolete tail syntax.  (Bug#20779)
27243         (executable-self-display): Doc update.
27245 2015-06-10  Stefan Monnier  <monnier@iro.umontreal.ca>
27247         * lisp/emacs-lisp/checkdoc.el: Use lexical-binding
27248         (finder-known-keywords): Silence byte-compiler.
27250 2015-06-09  Stefan Monnier  <monnier@iro.umontreal.ca>
27252         * lisp/simple.el (eval-expression): Macroexpand before evaluating
27253         (bug#20730).
27255         * lisp/progmodes/sh-script.el: Better handle nested quotes.
27256         (sh-here-doc-open-re): Don't mis-match the <<< operator (bug#20683).
27257         (sh-font-lock-quoted-subshell): Make sure double quotes within single
27258         quotes don't mistakenly end prematurely the surrounding string.
27260         * lisp/progmodes/elisp-mode.el: Require cl-lib for cl-defstruct.
27262 2015-06-09  Glenn Morris  <rgm@gnu.org>
27264         * test/automated/Makefile.in (ELFILES): Sort.
27266         * Makefile.in (SUBDIR_MAKEFILES):
27267         * lwlib/Makefile.in (WARN_CFLAGS):
27268         Use built-in Make functions rather than echo+sed.
27270 2015-06-09  Eli Zaretskii  <eliz@gnu.org>
27272         Update char-script-table
27273         * lisp/international/characters.el (char-script-table): Update
27274         from Unicode 8.0 Draft.
27276         Improve font selection for punctuation and other symbols
27277         * src/fontset.c (face_for_char): If the character's script is
27278         'symbol', and the font used for ASCII face has a glyph for it, use
27279         the font for the ASCII face instead of searching the fontsets.
27280         This comes instead of NS-specific code that used the current
27281         face's font instead, which is now disabled due to undesirable
27282         consequences.  (Bug#20727)
27284 2015-06-08  Dmitry Gutov  <dgutov@yandex.ru>
27286         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
27287         Skip past `#' to find BEG (bug#20771).
27288         * test/automated/elisp-mode-tests.el
27289         (elisp-completes-functions-after-hash-quote): New test.
27291 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
27293         Fix compilation warning/error in --without-x builds
27294         * src/xdisp.c (append_space_for_newline): Condition GUI-specific
27295         code on HAVE_WINDOW_SYSTEM.
27297         Improve the default fontset wrt symbols
27298         * lisp/international/fontset.el (setup-default-fontset): Better
27299         setup of fontset-default for symbols: use Symbola and FreeMono.
27300         (Bug#20727)
27302 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
27304         Add new command checkdoc-package-keywords
27305         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
27306         New defcustom.
27307         (checkdoc-list-of-strings-p): Add doc.
27308         (checkdoc-current-buffer): When `checkdoc-package-keywords-flag' is
27309         non-nil, call `checkdoc-package-keywords'.
27310         (checkdoc-get-keywords): New defun.
27311         (checkdoc-package-keywords): New command.  Warns if the current file
27312         has package.el-style keywords that aren't in `finder-known-keywords'.
27313         * etc/NEWS: Add entry.
27315 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
27317         Avoid crashes when key-binding is called from a timer
27318         * src/keymap.c (Fkey_binding): Don't segfault if called with an
27319         empty vector as KEY.  (Bug#20705)
27321         Fix a thinko in arc-mode.el
27322         * lisp/arc-mode.el (archive-zip-summarize): Fix last change in the
27323         non-Zip64 case.  (Bug#20769)
27325 2015-06-08  Artur Malabarba  <bruce.connor.am@gmail.com>
27327         * lisp/emacs-lisp/package.el (package-delete): Make interactive.
27329 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
27331         * lisp/emacs-lisp/checkdoc.el (checkdoc-file): New function.
27332         (checkdoc-error): When `checkdoc-diagnostic-buffer' is set to
27333         "*warn*", print the warning to the standard output.  (bug#20754)
27335 2015-06-07  Glenn Morris  <rgm@gnu.org>
27337         * admin/update_autogen (changelog_files): Remove gitlog-to-emacslog.
27339         * src/font.c (syms_of_font) <font-log>: Doc fix.
27341         Remove the obsolete leading "*" from some C doc strings.
27342         * src/coding.c (syms_of_coding):
27343         * src/font.c (syms_of_font): Remove leading "*" from docs.
27344         * lisp/cus-start.el (enable-character-translation): Add it.
27346 2015-06-07  Paul Eggert  <eggert@cs.ucla.edu>
27348         Move gen_origin from program to data
27349         That way, 'make change-history' needs to change only ChangeLog.2,
27350         instead of having to change two files.
27351         * ChangeLog.2: Add commit info for range that this file covers.
27352         * Makefile.in (new_commit_regexp): New macro.
27353         (change-history-nocommit): Simplify, by putting what used to be
27354         the gen_origin value into the data (ChangeLog.2) rather than
27355         into the program (gitlog-to-emacslog).
27356         * build-aux/gitlog-to-emacslog (gen_origin): Calculate from
27357         the input file (e.g., ChangeLog.2) rather than by having a
27358         constant in the program.  Substitute it into the output.
27360 2015-06-07  Dmitry Gutov  <dgutov@yandex.ru>
27362         * lisp/help-fns.el (help-fns--signature): Quote any quotes in the
27363         function name (bug#20759).
27365 2015-06-07  Eli Zaretskii  <eliz@gnu.org>
27367         Adapt 'struct timespec' to next release of MinGW runtime
27368         * nt/inc/ms-w32.h (struct timespec): Don't declare if
27369         __struct_timespec_defined is defined.
27371 2015-06-06  Paul Eggert  <eggert@cs.ucla.edu>
27373         Merge from gnulib
27374         This incorporates:
27375         2015-06-06 acl-permissions: pacify -Wsuggest-attribute=const
27376         2015-06-05 stdio: Don't redefine gets when using C++
27377         2015-06-05 acl-permissions: port to AIX, C89 HP-UX
27378         2015-06-02 file-has-acl: fix build on Mac OS X 10
27379         2015-06-01 gnulib-tool: concatenate lib_SOURCES to a single line
27380         2015-06-01 pthread_sigmask: discount system version if a simple macro
27381         2015-05-31 readlinkat: avoid OS X 10.10 trailing slash bug
27382         * doc/misc/texinfo.tex, lib/acl-internal.h, lib/get-permissions.c:
27383         * lib/readlinkat.c, lib/set-permissions.c, lib/stdio.in.h:
27384         * m4/acl.m4, m4/pthread_sigmask.m4, m4/readlinkat.m4: Copy from gnulib.
27385         * lib/gnulib.mk: Regenerate.
27387 2015-06-06  Juri Linkov  <juri@linkov.net>
27389         * lisp/progmodes/grep.el (zrgrep): Let-bind grep-highlight-matches
27390         before calling grep-compute-defaults because now it affects the
27391         command lines computed in grep-compute-defaults.  (Bug#20728)
27393 2015-06-06  Glenn Morris  <rgm@gnu.org>
27395         Address some compilation warnings.
27396         * lisp/international/mule-cmds.el (w32-get-console-codepage)
27397         (w32-get-console-output-codepage):
27398         * lisp/progmodes/elisp-mode.el (xref-collect-references):
27399         * lisp/version.el (cairo-version-string): Declare.
27400         * lisp/erc/erc.el (erc-nickname-in-use): Fix typo.
27402 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
27404         Fix display when a font claims large values of ascent and descent
27405         This fixes bug#20628.
27406         * src/xdisp.c (get_phys_cursor_geometry): Correct the Y
27407         coordinate of a hollow cursor glyph when the original glyph's
27408         ascent is too small.
27409         (get_font_ascent_descent, normal_char_ascent_descent)
27410         (normal_char_height): New functions.
27411         (handle_single_display_spec, append_space_for_newline)
27412         (calc_pixel_width_or_height, produce_stretch_glyph)
27413         (calc_line_height_property): Use normal_char_ascent_descent and
27414         normal_char_height.
27415         (x_produce_glyphs): When font-global values of ascent and descent
27416         are too large, use per-character glyph metrics instead, if
27417         possible.  But don't allow the glyph row's ascent and descent
27418         values become smaller than the values from the metrics of the
27419         font's "normal" character.
27420         * src/xftfont.c (xftfont_draw):
27421         * src/w32font.c (w32font_draw): Correct the values of ascent and
27422         descent used to draw glyphless characters' hex code in a box.
27423         * src/xterm.c (x_draw_glyph_string_background):
27424         * src/xdisp.c (x_produce_glyphs):
27425         * src/w32term.c (x_draw_glyph_string_background):
27426         * src/nsterm.m (ns_maybe_dumpglyphs_background): Use FONT_TOO_HIGH
27427         to detect fonts whose global ascent and descent values are too
27428         large to be used in layout decision, and redraw the background
27429         when that happens.
27430         * src/dispextern.h (FONT_TOO_HIGH): New macro.
27431         (get_font_ascent_descent): Add prototype.
27432         * src/xterm.c (x_new_font):
27433         * src/w32term.c (x_new_font):
27434         * src/nsterm.m (x_new_font):
27435         * src/font.c (font_open_entity):
27436         * src/composite.c (composition_gstring_width):
27437         Use get_font_ascent_descent to obtain reasonable values for ascent
27438         and descent of a font.
27440 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
27442         Add assertion in adjust_point_for_property
27443         * src/keyboard.c (adjust_point_for_property): Add eassert for
27444         current buffer being shown in selected window.
27446 2015-06-06  Dmitry Gutov  <dgutov@yandex.ru>
27448         Replace uses of in-string-p; make it obsolete
27449         * lisp/thingatpt.el (in-string-p): Declare obsolete (bug#20732).
27450         (end-of-sexp, beginning-of-sexp): Use syntax-ppss instead.
27452 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
27454         Fix Dired display of an explicit list of files by ls-lisp.el
27455         * lisp/ls-lisp.el (ls-lisp-uid-d-fmt, ls-lisp-uid-s-fmt)
27456         (ls-lisp-gid-d-fmt, ls-lisp-gid-s-fmt): Make the initial values be
27457         correct for when displaying individual files separately, not as
27458         part of listing a directory, in which case these values are not
27459         recomputed by 'ls-lisp-insert-directory', but used verbatim.
27461         * lisp/dired.el (dired): Doc fix.  (Bug#20739)
27463 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
27465         Do not adjust point in a non-selected window
27466         * src/keyboard.c (command_loop_1): Do not adjust point when
27467         current buffer is not shown in selected window (Bug#20590).
27469         * etc/DEBUG: Mention 'maybe_call_debugger'
27471 2015-06-05  Nicolas Petton  <nicolas@petton.fr>
27473         Fix a unit test for map.el
27474         * test/automated/map-tests.el (test-map-let): Fix the test to work
27475         with the new syntax of `map-let'.
27477         * lisp/emacs-lisp/map.el (map-let): Better docstring.
27479         Better syntax for the map pcase pattern
27480         * lisp/emacs-lisp/map.el: Improves the map pcase pattern to take
27481         bindings of the form (KEY PAT) or SYMBOL.  KEY is not quoted.
27483         * lisp/emacs-lisp/map.el (map--dispatch): Better docstring.
27485         Fix a byte-compiler error in map-put and map-delete
27486         * lisp/emacs-lisp/map.el (map-put, map-delete): Ensure that `setq' is
27487         called with a symbol.
27489 2015-06-05  Glenn Morris  <rgm@gnu.org>
27491         * admin/gitmerge.el (gitmerge-commit-message):
27492         Revert to including "skipped" messages in ChangeLog once again.
27494 2015-06-05  Tassilo Horn  <tsdh@gnu.org>
27496         Use string> instead of equiv lambda with string<
27497         * lisp/help.el (view-emacs-news): Use string> instead of equivalent
27498         lambda with string<.
27500 2015-06-05  Glenn Morris  <rgm@gnu.org>
27502         * lisp/emacs-lisp/map.el (map--dispatch): Move before use.
27503         (map--delete-array): Fix typo.
27505         * test/automated/map-tests.el: Replace "assert" with "should".
27507         * lisp/Makefile.in (SUBDIRS): Rename from SUBDIRS_ABS.
27508         (SUBDIRS_REL): Derive from SUBDIRS.
27510         Tweak some build messages.
27511         * lisp/Makefile.in ($(lisp)/loaddefs.el):
27512         * lisp/cus-dep.el (custom-make-dependencies):
27513         * lisp/finder.el (finder-compile-keywords): Say what we are doing.
27514         * lisp/international/titdic-cnv.el (batch-titdic-convert):
27515         Don't say how to compile.
27517 2015-06-05  Paul Eggert  <eggert@cs.ucla.edu>
27519         Omit U+0332 COMBINING LOW LINE in previous change
27520         It turns out that it does not work on Ubuntu 15.04.
27522         Fix transliteration of Bahá'í months
27523         * lisp/calendar/cal-bahai.el (calendar-bahai-month-name-array):
27524         Improve quality of Latin transliteration of Bahá'í month names.
27526         Fix curved quotes in a few places
27527         * lisp/calc/calc-misc.el (calc-help): Fix quoting.
27528         The strings in question are not doc strings, so this partially
27529         undoes the recent change that assumed they were doc strings.
27530         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
27531         * lisp/info.el (Info-finder-find-node):
27532         Use curved quotes.
27533         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
27534         Also allow curved quotes in doc strings.
27536 2015-06-04  Glenn Morris  <rgm@gnu.org>
27538         * lisp/Makefile.in (AM_V_at): Add missing definition.
27540         * lisp/Makefile.in: Quieten output a bit.
27541         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el):
27542         Don't echo directories, since the commands we invoke print them.
27544         * lisp/Makefile.in: Replace shell fragments in variables with $(shell).
27545         (SUBDIRS_REL, SUBDIRS_ABS, SUBDIRS_ALMOST, SUBDIRS_FINDER)
27546         (SUBDIRS_SUBDIRS): New variables.
27547         (setwins, setwins_almost, setwins_finder, setwins_for_subdirs):
27548         Remove.
27549         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el, $(lisp)/loaddefs.el)
27550         (update-subdirs, compile-main, compile-clean):
27551         Replace "setwins" usage with new "SUBDIRS" variables.
27553         * lisp/vc/compare-w.el (compare-windows-get-window-function):
27554         Fix :version tag.
27556 2015-06-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
27558         * src/ftfont.c (ftfont_open2): Round divisions by upEM.
27560         Undo removal of x_clear_area call on expose for GTK3 or cairo
27561         * src/xterm.c (handle_one_xevent) [HAVE_GTK3 || USE_CAIRO]:
27562         Clear exposed area.  (Bug#20677)
27564 2015-06-04  Glenn Morris  <rgm@gnu.org>
27566         * doc/lispref/hash.texi (Creating Hash): Remove obsolete makehash.
27568         * lisp/Makefile.in (check-defun-dups): Also skip ldefs-boot.
27570         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
27571         Rename from quail-lao-update-translation, since lao.el defines that.
27573 2015-06-04  Dmitry Gutov  <dgutov@yandex.ru>
27575         Handle new-style advice in find-funct
27576         * lisp/emacs-lisp/find-func.el (find-function-advised-original):
27577         Handle new-style advice.  Return the symbol's function definition.
27578         (Bug#20718)
27579         (find-function-library): Update accordingly.
27581 2015-06-04  Nicolas Petton  <nicolas@petton.fr>
27583         Merge branch 'map'
27585         * lisp/emacs-lisp/map.el: Better docstring for the map pcase macro.
27587         Add new function string-greaterp
27588         * lisp/subr.el (string-greaterp): New function.  Also aliased to
27589         `string>'.
27590         * test/automated/subr-tests.el (string-comparison-test): Add unit
27591         tests for `string>'and `string<'.
27592         * src/fns.c (string-lessp): Better docstring.
27594 2015-06-04  Eli Zaretskii  <eliz@gnu.org>
27596         Fix timezone-related functions on MS-Windows
27597         * src/editfns.c (set_time_zone_rule) [WINDOWSNT]: Always call
27598         'xputenv', even if no reallocation of tzvalbuf was necessary.
27599         This fixes a bug in timezone-related functions on MS-Windows.
27600         Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
27602 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
27604         Don't pass raw directory name to 'error'
27605         * lisp/files.el (basic-save-buffer-2): Avoid format error if
27606         a directory name contains a string like "%s".
27608 2015-06-03  Dmitry Gutov  <dgutov@yandex.ru>
27610         Override 'grep --color=always'
27611         * lisp/progmodes/xref.el (xref-collect-matches):
27612         Override --color=always in grep-find-template.
27614 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
27616         Fix error introduced recently in file-notify-tests.el
27617         * test/automated/file-notify-tests.el
27618         (file-notify--test-remote-enabled): Do not use `file-notify--test-desc'.
27619         (file-notify--deftest-remote): Revert previous patch, not
27620         necessary anymore.
27622 2015-06-03  Wolfgang Jenkner  <wjenkner@inode.at>
27624         * src/indent.c (Fvertical_motion): Amend motion by 0 lines.
27625         Starting from a display string after a newline, point went to the
27626         previous line.  Also, fix an inadvertent use of a buffer position
27627         with FETCH_BYTE.  (Bug#20701)
27629 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
27631         Instrument file-notify-test.el in order to catch hydra error
27632         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
27633         Wrap body by `ignore-case', in order to trap non-local errors.
27635 2015-06-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
27637         Undo previous changes in non-toolkit scroll bar drawing
27638         * src/xterm.c (x_scroll_bar_set_handle, x_scroll_bar_expose)
27639         [!USE_TOOLKIT_SCROLL_BARS]: Draw into scroll bar window.  (Bug#20668)
27641 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
27643         * .gitignore: Also ignore doc/*/*/*.html and .ps.
27645         Support quotes 'like this' in info files
27646         This is possible when 'makeinfo --disable-encoding' is used
27647         in Texinfo 5.
27648         * lisp/calc/calc-help.el (calc-describe-thing):
27649         * lisp/gnus/gnus-art.el (gnus-button-alist):
27650         * lisp/info.el (Info-find-index-name):
27651         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
27652         Also support quotes 'like this'.
27653         * lisp/calc/calc-help.el (calc-describe-thing): Simplify.
27654         * lisp/finder.el (finder-font-lock-keywords): Remove var that
27655         hasn't been used in years, instead of bothering to fix its quoting.
27657 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
27659         * .gitignore: Remove !test/etags/html-src/*.html.
27660         It's no longer needed, since *.html was removed.  Sort.
27662 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
27664         Restore <D> instead of '.' in grep-find-template
27665         * lisp/cedet/semantic/symref/grep.el
27666         (semantic-symref-grep-use-template): Update a comment.
27667         * lisp/progmodes/grep.el (grep-compute-defaults): Restore <D>
27668         instead of '.' in grep-find-template (bug#20719).
27669         (rgrep): Pass nil as the directory to rgrep-default-command.
27670         * lisp/progmodes/grep.el (grep-expand-keywords): Use '.' as the
27671         default value for DIR.
27672         * lisp/progmodes/xref.el (xref-collect-matches): Drop the
27673         workaround.
27675 2015-06-02  Glenn Morris  <rgm@gnu.org>
27677         * configure.ac (emacs_config_features): Add X toolkit and scroll-bars.
27679         * configure.ac (emacs_config_features): Add Cairo.
27681         * configure.ac [HAVE_GTK3]: Remove USE_CAIRO that gets reset later.
27683 2015-06-02  Michael Albinus  <michael.albinus@gmx.de>
27685         Ensure that autorevert works for remote files in file-notify-tests.el
27686         * test/automated/file-notify-tests.el (file-notify--test-desc):
27687         New defvar.
27688         (file-notify--test-remote-enabled)
27689         (file-notify-test00-availability, file-notify-test01-add-watch)
27690         (file-notify-test02-events): Use it.
27691         (file-notify--test-event-test): Check proper descriptor.
27692         (file-notify-test03-autorevert): Ensure that
27693         `visited-file-modtime' has changed.  (Bug#20392)
27695 2015-06-02  Nicolas Petton  <nicolas@petton.fr>
27697         Add a pcase pattern for maps and `map-let' based on it
27698         * lisp/emacs-lisp/map.el (map-let): New macro.
27699         (map--make-pcase-bindings, map--make-pcase-patterns): New functions.
27700         * test/automated/map-tests.el: New test for `map-let'.
27702 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
27704         Reuse rgrep mechanics in xref-find-regexp
27705         * lisp/progmodes/grep.el (rgrep-default-command):
27706         Extract from `rgrep'.
27707         * lisp/progmodes/xref.el (xref-collect-references): Split from
27708         `xref-collect-matches'.  Only handle the case of symbol search.
27709         (xref-collect-matches): Instead of Semantic Symref, use
27710         `rgrep-default-command', to take advantage of its directory and
27711         file ignore settings.
27712         (xref--collect-match): Remove the last argument, leaving the
27713         regexp construction up to the caller.
27714         * lisp/progmodes/elisp-mode.el (elisp--xref-find-matches):
27715         Change to take the xref-collect- function to use as an argument.
27716         (elisp-xref-find): Update accordingly.
27717         * lisp/progmodes/etags.el (etags--xref-find-matches)
27718         (etags-xref-find): Same.
27720         Move xref-elisp-location to elisp-mode.el
27721         * lisp/progmodes/xref.el (xref-elisp-location)
27722         (xref-make-elisp-location, xref-location-marker): Remove here.
27723         (xref--xref): Don't limit the type of the location slot.
27724         * lisp/progmodes/elisp-mode.el (xref-elisp-location):
27725         Define as a cl-struct here.
27726         (xref-location-marker): Move here.
27728 2015-06-02  Eli Zaretskii  <eliz@gnu.org>
27730         Minor tweaks for .gitignore
27731         * .gitignore: Don't ignore versioned *.html and *.ps files.
27732         Don't ignore admin/notes/tags that might be ignored as TAGS
27733         on case-insensitive filesystems.  (Bug#20710)
27735 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
27737         Generate curved quotes in ert doc
27738         * lisp/emacs-lisp/ert.el (ert--print-test-for-ewoc)
27739         (ert-results-mode-menu)
27740         (ert-results-pop-to-backtrace-for-test-at-point)
27741         (ert-results-pop-to-messages-for-test-at-point)
27742         (ert-results-pop-to-should-forms-for-test-at-point)
27743         (ert-describe-test):
27744         Quote ‘like this’, not `like this', when generating doc strings
27745         and the like.
27746         * test/automated/ert-x-tests.el (ert-test-describe-test):
27747         Allow quoting ‘like this’.
27749 2015-06-02  Nicolas Richard  <youngfrog@members.fsf.org>
27751         Add test for previous commit
27752         * test/automated/replace-tests.el: New file.
27753         (query-replace--split-string-tests): Add test for previous commit.
27755         Avoid confusion in query-replace history when replacing NUL chars
27756         * lisp/replace.el (query-replace--split-string): New function.
27757         (query-replace-read-from): Rely on the 'separator' property
27758         instead of searching for the NUL character (Bug#20690).
27760 2015-06-02  Glenn Morris  <rgm@gnu.org>
27762         Merge from origin/emacs-24
27763         8b5f2f4 * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
27765         * admin/gitmerge.el (gitmerge-commit-message):
27766         Exclude "skipped" messages from ChangeLog.
27768 2015-06-01  Michael Albinus  <michael.albinus@gmx.de>
27770         Sync with Tramp repository
27771         * lisp/net/tramp.el (tramp-message): Dump connection buffer error
27772         messages.
27773         (tramp-handle-make-auto-save-file-name): When calling
27774         `make-auto-save-file-name' internally, make sure it uses Unix-like
27775         behavior, not Windows-like behavior.
27776         * lisp/net/tramp-sh.el (tramp-set-file-uid-gid): Add a timeout for
27777         the local case, because "chown" might fail on w32.
27778         * lisp/net/trampver.el (tramp-repository-get-version): Don't run
27779         for XEmacs.
27781 2015-06-01  Eli Zaretskii  <eliz@gnu.org>
27783         MS-Windows followup for batch stdout/stderr output changes
27784         * lisp/international/mule-cmds.el (set-locale-environment):
27785         In batch mode, use console codepages for keyboard and terminal
27786         encoding.  (Bug#20545)
27788         Update .gitattributes for DOS EOL files
27789         * .gitattributes: Use "whitespace=cr-at-eol" for files with DOS
27790         CRLF end-of-line format.
27792         NS equivalents of xterm.c and w32term.c changes
27793         * src/nsterm.m (ns_maybe_dumpglyphs_background): Force redraw of
27794         glyph string background also when the font in use claims
27795         preposterously large global height value.  Helps to remove
27796         artifacts left from previous displays when glyphless characters
27797         are displayed as hex code in a box.
27798         (x_new_font): Call get_font_ascent_descent to obtain a reasonable
27799         value for FRAME_LINE_HEIGHT, even when a font claims very large
27800         value for its height.
27802 2015-06-01  Paul Eggert  <eggert@cs.ucla.edu>
27804         Avoid grave accent quoting in stderr diagnostics
27805         A few Emacs diagnostics go directly to stderr, and so can't easily
27806         contain curved quotes (as non-UTF-8 locales might mishandle them).
27807         Instead of bothering to add support for this rarity, reword the
27808         diagnostics so that they don't use grave accent to quote.
27809         * src/alloc.c (mark_memory): Fix comment.
27810         * src/buffer.c (init_buffer):
27811         * src/dispnew.c (init_display):
27812         * src/emacs.c (main, sort_args):
27813         * src/lread.c (dir_warning):
27814         * src/term.c (init_tty):
27815         * src/unexmacosx.c (unexec):
27816         * src/xfns.c (select_visual):
27817         * src/xterm.c (cvt_string_to_pixel, x_io_error_quitter):
27818         Reword stderr diagnostics to avoid quoting `like this'.
27819         * src/unexmacosx.c: Include errno.h.
27820         * src/xfns.c (select_visual): Encode value for locale.
27822 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
27824         Treat batch stdout/stderr like standard display
27825         Calls like (print FOO) could generate improperly encoded or
27826         hard-to-read output if FOO contains characters outside the system
27827         locale.  Fix this by treating batch stdout and stderr like
27828         interactive standard display, when it comes to transliterating and
27829         encoding characters (Bug#20545).
27830         * doc/emacs/mule.texi (Communication Coding):
27831         * doc/lispref/display.texi (Active Display Table):
27832         * doc/lispref/nonascii.texi (Locales):
27833         * etc/NEWS:
27834         * src/coding.c (syms_of_coding):
27835         * src/dispnew.c (syms_of_display):
27836         Document this.
27837         * src/print.c: Include disptab.h.
27838         (printchar_to_stream): New function, with much of the guts of the
27839         old Fexternal_debugging_output, except this one also uses the
27840         standard display table.
27841         (printchar, strout, Fexternal_debugging_output): Use it.
27843 2015-05-31  Glenn Morris  <rgm@gnu.org>
27845         * src/emacs.c (syms_of_emacs) <system-configuration-features>: Doc fix.
27847 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
27849         Remove DEFSYMs that aren't used at the C level.  Also:
27850         * src/decompress.c (Qzlib_dll):
27851         * src/font.c (Qunicode_sip):
27852         * src/frame.c (Qtip_frame):
27853         * src/ftfont.c (Qserif):
27854         * src/gnutls.c (Qgnutls_dll):
27855         * src/xml.c (Qlibxml2_dll):
27856         Move from here ...
27857         * src/w32fns.c (syms_of_w32fns): ... to here,
27858         as these are used only on MS-Windows.
27860 2015-05-31  Michael Albinus  <michael.albinus@gmx.de>
27862         Use another default value for tramp-histfile-override
27863         * lisp/net/tramp-sh.el (tramp-histfile-override):
27864         Use ".tramp_history" as default.
27865         Fixes bug#20446
27867 2015-05-29  Nicolas Petton  <nicolas@petton.fr>
27869         * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
27871 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
27873         * etc/NEWS: Add an entry about map.el.
27875         Improve the docstring of functions in map.el
27876         Since a map is not a data structure but a concept, adding information
27877         about the possible types of maps can be useful information.
27878         * lisp/emacs-lisp/map.el: Add documentation about the type of MAP to
27879         each public function.
27881 2015-04-29  Nicolas Petton  <nicolas@petton.fr>
27883         * lisp/emacs-lisp/map.el (map-empty-p): Faster implementation using
27884         specific tests depending on the type of the map.
27886         * lisp/emacs-lisp/map.el: Better docstrings.
27888 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
27890         * lisp/emacs-lisp/map.el (map-pairs): Dump redundant lambda.
27892 2015-04-25  Nicolas Petton  <nicolas@petton.fr>
27894         * lisp/emacs-lisp/map.el (map--elt-list): Better docstring.
27896         * lisp/emacs-lisp/map.el (map--elt-list): Minor refactoring.
27898         Fix a false negative in `map-elt' with alists and values being nil
27899         * lisp/emacs-lisp/map.el (map-elt): If map is an alist and key is
27900         found but its associated value is nil, do not return the default
27901         value.
27902         * test/automated/map-tests.el: Add a regression test.
27904 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
27906         * lisp/emacs-lisp/map.el (map--dispatch): Improve the docstring.
27908         Do not signal an error when trying to delete a key from an array
27909         * lisp/emacs-lisp/map.el (map-delete): When map is an array, check if
27910         the key is present to avoid signaling an error.
27911         * test/automated/map-tests.el: Add a test for deleting non-existing
27912         keys from maps.
27914         * lisp/emacs-lisp/map.el: Better docstring.
27916         Minor improvement in map-elt
27917         * lisp/emacs-lisp/map.el (map-elt): Do not use `ignore-errors' when
27918         doing a lookup in arrays, but check the boundaries of the array
27919         instead.
27920         * test/automated/map-tests.el: Adds a test for `map-elt' with arrays
27921         and a negative integer as key.
27923 2015-04-21  Nicolas Petton  <nicolas@petton.fr>
27925         * test/automated/map-tests.el: Refactoring of test methods.
27927         * test/automated/map-tests.el: Renamed from map-test.el.
27929 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
27931         * lisp/emacs-lisp/map.el (map-into): Better error message.
27933         * lisp/emacs-lisp/map.el: Remove byte-compilation warnings.
27935         Throw an error when converting a map into an unknown map type
27936         * lisp/emacs-lisp/map.el (map-into): Throw an error if type is
27937         not valid.
27938         * test/automated/map-tests.el: Add a regression test.
27940         New library map.el similar to seq.el but for mapping data structures.
27941         * test/automated/map-tests.el: New file.
27942         * lisp/emacs-lisp/map.el: New file.
27944 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
27946         * lisp/progmodes/etags.el (tag-implicit-name-match-p): Make sure
27947         there's no explicit tag name (bug#20629).
27949 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
27951         Remove format2
27952         * src/editfns.c, src/lisp.h (format2): Remove.
27953         It is more trouble than it's worth, now that we have CALLN.
27954         This is just a minor refactoring.
27955         * src/buffer.c (Fkill_buffer):
27956         * src/dbusbind.c (XD_OBJECT_TO_STRING):
27957         * src/fileio.c (barf_or_query_if_file_exists):
27958         Adjust to format2 going away.
27960         Don't misencode C-generated messages
27961         Also, be more consistent about calls to 'Fmessage' vs 'message'.
27962         * src/alloc.c (Fgc_status):
27963         Prefer AUTO_STRING to build_string for Fmessage call.
27964         * src/data.c (Fmake_variable_buffer_local)
27965         (Fmake_local_variable, Fmake_variable_frame_local):
27966         * src/doc.c (store_function_docstring):
27967         Use Fmessage, not message, since the argument can contain
27968         non-ASCII characters, and this can cause the resulting message
27969         to be incorrectly encoded for the current environment.
27970         * src/fns.c (maybe_resize_hash_table):
27971         * src/xselect.c (x_clipboard_manager_save_all):
27972         Use message, not Fmessage, since Fmessage's power isn't needed here.
27973         * src/process.c (Fmake_network_process): Reword message to avoid %s.
27974         * src/xdisp.c (vmessage): Document restrictions on message contents.
27975         (message_nolog) [false]: Remove unused code.
27977         Use \r rather than ^M in string literals
27978         This is less likely to cause problems on platforms that
27979         use CRLF (or CR!) termination for lines.
27981         Update .gitattributes to match current sources
27982         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00879.html
27983         * .gitattributes: Accommodate tests that insist on DOS format.
27984         Remove test/automated/data/decompress/foo-gzipped.
27985         Add etc/e/eterm-color.
27987 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
27989         * doc/emacs/mule.texi (Modifying Fontsets):
27990         Document face-ignored-fonts.  (Bug#20628)
27992         Add etags test for the new -Q option
27993         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
27994         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
27995         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
27996         test-case changes below.
27997         * test/etags/ETAGS.good_6: New file.
27998         * test/etags/cp-src/x.cc: New file.
27999         * test/etags/Makefile (CPSRC): Add x.cc.
28000         (check): Add one more test, for -Q.
28002 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
28004         Use list for the tags completion table, not obarray
28005         * lisp/progmodes/etags.el (etags-tags-completion-table): Return a
28006         list instead of an obarray
28007         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00876.html).
28008         (tags-completion-table): Combine those lists.
28009         (tags-completion-table): Update the docstring.
28011 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
28013         Restore EOL format testing in etags
28014         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
28015         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
28016         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
28017         test-case changes below.
28018         * test/etags/html-src/algrthms.html: Convert back to DOS EOL format.
28019         * test/etags/cp-src/c.C (B): Add back stray CR character.
28020         * test/etags/c-src/dostorture.c: Add back.
28021         * test/etags/Makefile (CSRC): Add back c-src/dostorture.c.
28023 2015-05-30  Vitaly Takmazov  <vitalyster@gmail.com>  (tiny change)
28025         Declare Emacs on MS-Windows to be DPI-aware
28026         * nt/emacs-x86.manifest (asmv3:windowsSettings): Add dpiAware.
28027         * nt/emacs-x64.manifest (asmv3:windowsSettings): Add dpiAware.
28028         This avoids Windows entering compatibility mode for Emacs,
28029         which causes fonts to look less nice.
28031 2015-05-30  Michael Albinus  <michael.albinus@gmx.de>
28033         Improve Tramp traces
28034         * lisp/net/trampver.el (tramp-repository-get-version): New defun.
28035         * lisp/net/tramp.el (tramp-debug-message): Use it.
28037 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
28039         backup-buffer minor reworking of internals
28040         * lisp/files.el (backup-buffer): Rework to avoid a couple of
28041         unused locals inadvertently introduced in the previous change.
28043         backup-buffer now reports .emacs.d/%backup% ills
28044         * lisp/files.el (backup-buffer): If the write to .emacs.d/%backup%
28045         fails due to disk space exhaustion or whatever, do not pretend
28046         that it succeeded.  More generally, do a better job of checking
28047         for I/O failures, and limit the scope of the condition-case to
28048         just the operations where file errors should be caught and ignored
28049         (Bug#20595).  Also, don't bother trying to delete later backups if
28050         an earlier deletion fails, as this is a sign of trouble and it's
28051         better to stop when there's trouble.
28053         copy-file now truncates output after writing
28054         * src/fileio.c (Fcopy_file): Truncate output after writing rather
28055         than before.  This is more likely to work than truncation before
28056         writing, if the file system is out of space or the user is over
28057         disk quota (Bug#20595).  Also, check for read errors.
28059 2015-05-29  Artur Malabarba  <bruce.connor.am@gmail.com>
28061         * lisp/emacs-lisp/package.el (package-load-all-descriptors):
28062         Don't load descriptors from directories above the package directories.
28064 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
28066         Merge from gnulib
28067         This incorporates the following (Bug#20681):
28068         2015-05-29 acl-permissions: Fix build on Mac OS X and older AIX
28069         2015-05-29 acl-permissions: Fix build on Solaris and Cygwin
28070         * lib/set-permissions.c: Copy from gnulib.
28072 2015-05-29  Michael Albinus  <michael.albinus@gmx.de>
28074         Improve Tramp traces
28075         * lisp/net/tramp.el (tramp-call-process-region): New defun.
28076         * lisp/net/tramp-sh.el (tramp-get-inline-coding): Use it.
28078 2015-05-29  Glenn Morris  <rgm@gnu.org>
28080         * test/automated/vc-tests.el: Try enabling tests on hydra.nixos.org.
28082 2015-05-29  Wolfgang Jenkner  <wjenkner@inode.at>
28084         * src/xfns.c (x_set_menu_bar_lines): Fix calls to x_clear_area.
28085         The signature was changed in the cairo branch, merged on 2015-05-23.
28086         This oversight broke compiling only the non-toolkit X version.
28088 2015-05-29  Samer Masterson  <samer@samertm.com>
28090         * doc/lispref/os.texi: Update initial-buffer-choice docs.
28092 2015-05-29  Glenn Morris  <rgm@gnu.org>
28094         * test/automated/vc-tests.el (vc-test-rcs04-checkout-model):
28095         Mark as an expected failure.
28097 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
28099         Change package test to look for curved quotes
28100         * test/automated/package-test.el (package-test-describe-package)
28101         (package-test-signed): Search for curved single quotes as well as
28102         for grave accent and apostrophe.
28104 2015-05-28  Katsumi Yamaoka  <yamaoka@jpl.org>
28106         * lisp/gnus/gnus-art.el (gnus-button-alist): Re-revert last change.
28107         cf. <http://news.gmane.org/group/gmane.emacs.devel/thread=186896>
28109 2015-05-28  Samer Masterson  <samer@samertm.com>
28111         Show files when `initial-buffer-choice' is non-nil
28112         * lisp/startup.el (command-line-1): When Emacs is given a file as an
28113         argument and `initial-buffer-choice' is non-nil, display both the file
28114         and `initial-buffer-choice'.  For more than one file, show
28115         `initial-buffer-choice' and *Buffer List*.  Refactor display-changing
28116         commands out of the command line arg parser.
28117         (initial-buffer-choice): Clarify docstring.
28119 2015-05-28  Eli Zaretskii  <eliz@gnu.org>
28121         Fix last commit
28122         * nt/gnulib.mk (libgnu_a_SOURCES): Add get-permissions.c back.
28123         (gnulib module qcopy-acl): Add back, as it is harmless.  This
28124         minimizes differences wrt lib/gnulib.mk.
28126         Fix the MS-Windows build as followup to gnulib update
28127         * nt/gnulib.mk (libgnu_a_SOURCES): Remove get-permissions.c and
28128         set-permissions.c, as they don't compile on MinGW.
28129         (gnulib module qcopy-acl): Remove, as it needs set-permissions.c.
28131 2015-05-28  Paul Eggert  <eggert@cs.ucla.edu>
28133         Revert my change to gnus-art.el
28134         * lisp/gnus/gnus-art.el (gnus-button-alist): Revert last change.
28135         It wasn't that important, and it caused a Gnus build to fail.  See:
28136         http://www.randomsample.de:4456/builders/emacs-devel/builds/734
28138         New minor mode Electric Quote
28139         This lets you easily insert quotes ‘like this’ by typing
28140         quotes `like this', and similarly you can easily insert
28141         quotes “like this” by typing quotes ``like this'' (Bug#20545).
28142         * doc/emacs/basic.texi (Inserting Text):
28143         * doc/emacs/modes.texi (Minor Modes):
28144         * etc/NEWS: Document it.
28145         * doc/emacs/text.texi (Quotation Marks): New section.
28146         * lisp/electric.el (electric-quote-comment)
28147         (electric-quote-string, electric-quote-paragraph):
28148         New custom vars.
28149         (electric--insertable-p)
28150         (electric-quote-post-self-insert-function): New functions.
28151         (electric-quote-mode, electric-quote-local-mode): New minor modes.
28152         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
28153         Add curved single quotes to electric-pair-text-pairs.
28154         Set electric-quote-string in this buffer.
28156         A few more doc string fixes (Bug#20385)
28158         Accept curved quotes in doc strings
28159         * lisp/info-look.el (info-lookup-guess-custom-symbol):
28160         (info-lookup-alist): Treat ‘’ like `' when parsing help buffers etc.
28162         Generate curved quotes in pseudo-info nodes
28163         * lisp/info.el (Info-virtual-index-find-node)
28164         (Info-virtual-index, Info-apropos-find-node, info-apropos):
28165         Quote ‘like this’, not `like this', when generating pseudo-info nodes.
28167         Fix minor quoting problems in doc strings
28168         Most of these fixes involve escaping grave accents that are
28169         actually intended to be grave accents, not left quotes.
28170         (Bug#20385)
28172         Support curved quotes in doc strings
28173         Emacs's traditional doc string style has been to quote symbols
28174         `like this'.  This worked well on now-obsolete terminals where
28175         ` and ' were symmetric quotes, but nowadays curved quotes
28176         ‘like this’ look better.  Support quoting the new way too.
28177         (Bug#20385)
28178         * doc/lispref/tips.texi (Documentation Tips): Symbols can be quoted
28179         ‘like-this’ as well as `like-this'.
28180         * etc/NEWS: Mention this.
28181         * lisp/cedet/mode-local.el (overload-docstring-extension)
28182         (mode-local-print-binding, mode-local-describe-bindings-2):
28183         * lisp/cus-theme.el (describe-theme-1):
28184         * lisp/descr-text.el (describe-text-properties-1, describe-char):
28185         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
28186         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
28187         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
28188         (eieio-help-constructor):
28189         * lisp/emacs-lisp/package.el (describe-package-1):
28190         * lisp/faces.el (describe-face):
28191         * lisp/help-fns.el (help-fns--key-bindings)
28192         (help-fns--compiler-macro, help-fns--parent-mode, help-fns--obsolete):
28193         (help-fns--interactive-only, describe-function-1):
28194         (describe-variable):
28195         * lisp/help.el (describe-mode):
28196         * lisp/international/mule-cmds.el (describe-input-method)
28197         (describe-language-environment):
28198         * lisp/international/mule-diag.el (describe-character-set)
28199         (print-coding-system-briefly, list-input-methods)
28200         (list-input-methods-1):
28201         Insert curved quotes rather than grave accent and apostrophe.
28202         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
28203         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
28204         (checkdoc-proper-noun-region-engine):
28205         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
28206         (lisp-cl-font-lock-keywords-2):
28207         * lisp/finder.el (finder-font-lock-keywords):
28208         * lisp/gnus/gnus-art.el (gnus-button-alist):
28209         * lisp/help-fns.el (help-do-arg-highlight)
28210         (describe-function-1, describe-variable):
28211         * lisp/help-mode.el (help-xref-symbol-regexp)
28212         (help-xref-info-regexp, help-xref-url-regexp):
28213         * lisp/help.el (describe-mode):
28214         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
28215         * lisp/wid-edit.el (widget-documentation-link-regexp):
28216         Parse symbols quoted ‘like-this’ as well as `like-this'.
28217         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
28218         Add "‘" and "’" to electric-pair-text-pairs.
28219         (elisp--form-quoted-p): Also allow "‘" as a quoting char.
28220         (elisp-completion-at-point, elisp--preceding-sexp):
28221         Also treat "‘" and "’" as quoting chars.
28223         substitute-command-keys now curves quotes
28224         So, for example, it turns "`abc'" into "‘abc’" (Bug#20385).
28225         * doc/lispref/help.texi (Keys in Documentation):
28226         * etc/NEWS: Document this.
28227         * src/doc.c (Fsubstitute_command_keys): Implement it.
28229 2015-05-28  Glenn Morris  <rgm@gnu.org>
28231         * lisp/mail/rmailsum.el (rmail-summary-by-recipients)
28232         (rmail-summary-by-topic, rmail-summary-by-senders):
28233         No longer strip leading/trailing whitespace.
28235         * lisp/progmodes/f90.el (f90-type-def-re): Add "type, extends".
28236         (f90-no-block-limit): Add "enum".  (Bug#20680)
28237         * test/automated/f90.el (f90-test-bug20680, f90-test-bug20680b):
28238         New tests.
28240 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
28242         * lisp/isearch.el (isearch--current-buffer): Give a default value.
28243         Un-revert changes mistakenly dropped by f9fabb2b.
28245 2015-05-27  Paul Eggert  <eggert@cs.ucla.edu>
28247         Merge from gnulib
28248         This incorporates:
28249         2015-05-27 qacl: Reimplement qset_acl and qcopy_acl (Bug#20666)
28250         2015-05-27 file-has-acl: Split feature tests again (Bug#20667)
28251         2015-05-27 string: fix build failure on BSD/OSX with FORTIFY_SOURCE
28252         2015-05-26 stdio: limit __gnu_printf__ witness to gcc 4.4+
28253         2015-05-26 inttypes: force correct mingw PRIdMAX even without <stdio.h>
28254         2015-05-26 stdio: fix probe on mingw under gcc 5.1
28255         * admin/merge-gnulib (GNULIB_MODULES):
28256         Replace qacl with qcopy-acl, since we don't need the rest of qacl.
28257         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
28258         * lib/inttypes.in.h, lib/qcopy-acl.c, lib/qset-acl.c:
28259         * lib/string.in.h, m4/acl.m4, m4/stdio_h.m4:
28260         Get latest versions from gnulib.
28261         * lib/get-permissions.c, lib/set-permissions.c: New files.
28262         * lib/gnulib.mk, m4/gnulib-comp.m4:
28263         Regenerate.
28264         * nt/gnulib.mk: Merge lib/gnulib.mk changes by hand.
28266 2015-05-27  Dmitry Gutov  <dgutov@yandex.ru>
28268         * lisp/vc/vc-dispatcher.el (vc-setup-buffer): Delete the old
28269         process here.
28270         (vc-do-command): Rather than here (bug#20608).
28272 2015-05-27  Ivan Shmakov  <ivan@siamics.net>
28274         Avoid gratuitous delete-dups in face-at-point
28275         * lisp/faces.el (face-at-point): Do not compute the properly
28276         ordered, duplicate-free list if only a single value is
28277         requested anyway.  (Bug#20519)
28279         Show the exact C-x 8 RET invocation in describe-char
28280         * lisp/descr-text.el (describe-char): Show the exact C-x 8 RET
28281         invocation instead of a template.  (Bug#20522)
28283 2015-05-27  Artur Malabarba  <bruce.connor.am@gmail.com>
28285         * lisp/emacs-lisp/package.el: Don't erase tags on refresh.
28286         (package-menu--post-refresh): Call `tabulated-list-print' with the
28287         UPDATE argument.  This only affects the refresh action, the revert
28288         action still erases tags.
28289         (package-menu-get-status): Change `assq' to `assoc'.
28290         (package-menu--mark-upgrades-1): New function.
28291         (package-menu--mark-upgrades-pending): New variable.
28292         (package-menu-mark-upgrades): Use them to delay marking until
28293         after refresh is done.
28294         (package-menu--post-refresh): Call mark-upgrades-1 if
28295         mark-upgrades-pending is non-nil.
28297 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
28299         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
28300         Fix typo in "Improve tramp-handle-make-auto-save-file-name"
28301         (commit 3953c4be2816537be95520605d45b866dc731f4b).
28303 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
28305         * lisp/isearch.el (isearch--current-buffer): New var.
28306         (isearch-update): Set cursor-sensor-inhibit here.
28307         (isearch-done): Unset cursor-sensor-inhibit in the right buffer
28308         (bug#20532).
28310         Change inhibit-point-motion-hooks to t
28311         * src/textprop.c (syms_of_textprop): Default Vinhibit_point_motion_hooks
28312         to t and document it as obsolete.
28314 2015-05-27  Eli Zaretskii  <eliz@gnu.org>
28316         Support ZIP files that use Zip64 extensions
28317         * lisp/arc-mode.el (archive-zip-summarize): Handle the new ZIP
28318         format of central directory offsets used by Zip64 extensions.
28319         (Bug#20665)
28321 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
28323         New test tramp-test30-make-auto-save-file-name
28324         * test/automated/tramp-tests.el
28325         (tramp-test30-make-auto-save-file-name): New test.
28326         (tramp-test31-special-characters)
28327         (tramp-test31-special-characters-with-stat)
28328         (tramp-test31-special-characters-with-perl)
28329         (tramp-test31-special-characters-with-ls, tramp-test32-utf8)
28330         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
28331         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
28332         (tramp-test34-recursive-load, tramp-test35-unload): Rename.
28334         Improve tramp-handle-make-auto-save-file-name
28335         * lisp/net/tramp.el (tramp-auto-save-directory): Add :tags.
28336         (tramp-handle-make-auto-save-file-name): Let native
28337         `make-auto-save-file-name' use `auto-save-file-name-transforms',
28338         if `tramp-auto-save-directory' is not set.
28340 2015-05-27  Glenn Morris  <rgm@gnu.org>
28342         No longer set dired-directory in eshell.  (Bug#16477)
28343         * lisp/eshell/esh-mode.el (eshell-mode):
28344         * lisp/eshell/em-dirs.el (eshell/cd): No longer set dired-directory.
28346         * lisp/mail/sendmail.el (mail-position-on-field): Doc fix.
28348         Make c-submit-bug-report file reports at debbugs.gnu.org.  (Bug#15784)
28349         * lisp/progmodes/cc-mode.el (c-mode-help-address):
28350         Change to submit@debbugs.
28351         (c-mode-bug-package): New constant.
28352         (mail-position-on-field): Declare.
28353         (c-submit-bug-report): Insert X-Debbugs-Package header.
28354         * doc/misc/cc-mode.texi (Mailing Lists and Bug Reports):
28355         Mention debbugs.gnu.org.
28357 2015-05-26  Glenn Morris  <rgm@gnu.org>
28359         * lisp/mail/rmailsum.el: Commas no longer separate regexps.  (Bug#19026)
28360         (rmail-summary-by-recipients, rmail-summary-by-topic)
28361         (rmail-summary-by-senders): No longer use mail-comma-list-regexp.
28362         * doc/emacs/rmail.texi (Rmail Make Summary): Update for this change.
28364 2015-05-26  Paul Eggert  <eggert@cs.ucla.edu>
28366         Handle curved quotes in info files
28367         * lisp/calc/calc-help.el (calc-describe-thing):
28368         * lisp/info.el (Info-find-index-name)
28369         (Info-try-follow-nearest-node, Info-fontify-node):
28370         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
28371         In info files, process quotes ‘like this’ the same way we process
28372         quotes `like this'.  This catches a few places we missed earlier.
28374 2015-05-26  Dmitry Gutov  <dgutov@yandex.ru>
28376         xref-prompt-for-identifier: Use a list value
28377         * lisp/progmodes/xref.el (xref-prompt-for-identifier): Allow list
28378         value, to be interpreted as a list of commands.
28379         (xref--prompt-p): New function.
28380         (xref--read-identifier): Use it.
28382 2015-05-26  Eli Zaretskii  <eliz@gnu.org>
28384         Teach MS-Windows font back-end return per-glyph ascent/descent
28385         * src/w32font.h (struct w32_metric_cache): Add ascent and descent
28386         values.
28387         * src/w32font.c (w32font_text_extents): Compute, cache, and
28388         accumulate per-glyph ascent and descent values, instead of copying
28389         global values from the font.  If the values are not available from
28390         the font data, i.e., non-TTF fonts, fall back on font-global values.
28391         (compute_metrics): Compute and return per-glyph ascent and descent
28392         values, if returned by GetGlyphOutlineW, falling back on
28393         font-global values.  (Bug#20628)
28394         * src/w32term.c (w32_draw_rectangle): Add 1 pixel to width and
28395         height of rectangle to be drawn, to be compatible with
28396         XDrawRectangle.  Fixes glyphless-char display as hex codes in a
28397         box, when per-glyph ascent/descent values are used.
28399 2015-05-26  Artur Malabarba  <bruce.connor.am@gmail.com>
28401         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
28402         Don't sort if sorter is nil.
28404 2015-05-26  Michael Albinus  <michael.albinus@gmx.de>
28406         Fix Bug#20621
28407         * lisp/net/tramp-sh.el (tramp-set-auto-save): Remove it.  There
28408         are major modes which set `auto-save-mode' on their own rules;
28409         Tramp shall not overwrite such settings.
28411 2015-05-26  Glenn Morris  <rgm@gnu.org>
28413         * lisp/desktop.el: If modes aren't autoloaded, try simple guesswork.
28414         (desktop-load-file): Guess that "foobar" defines "foobar-mode".
28415         (desktop-buffer-mode-handlers, desktop-minor-mode-handlers):
28416         Doc updates.
28417         (vc-dir-mode): Remove unnecessary autoload.
28419 2015-05-25  Philipp Stephani  <phst@google.com>
28421         * lisp/term/xterm.el: Add gui-get-selection support via OSC-52.
28422         (xterm--extra-capabilities-type): Add `getSelection'.
28423         (xterm--query): Add `no-async' argument.
28424         (xterm--init-activate-get-selection): New function.
28425         (terminal-init-xterm): Use it.
28426         (xterm--init-modify-other-keys): Rename from
28427         terminal-init-xterm-modify-other-keys.
28428         (xterm--init-bracketed-paste-mode): Rename from
28429         terminal-init-xterm-bracketed-paste-mode.
28430         (xterm--init-activate-set-selection): Rename from
28431         terminal-init-xterm-activate-set-selection.
28432         (xterm--selection-char): New function.
28433         (gui-backend-set-selection): Use it.  Use the &context to only apply
28434         this method in terminals where we enabled the feature.
28435         (gui-backend-get-selection): New method.
28437 2015-05-25  Daniel Colascione  <dancol@dancol.org>
28439         * lisp/progmodes/cc-langs.el (c-constant-kwds): Add C-language
28440         keyword constants to C++.
28442 2015-05-25  Paul Eggert  <eggert@cs.ucla.edu>
28444         Make TAGS files more portable to MS-Windows
28445         * etc/NEWS: Document this.
28446         * lib-src/etags.c (readline_internal) [DOS_NT]:
28447         Don't treat CRs differently from GNUish hosts.
28448         * lisp/progmodes/etags.el (etags-goto-tag-location):
28449         Adjust STARTPOS to account for the skipped CRs in dos-style files.
28451 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
28453         Improve fix of bug#20634 in tramp-sh.el
28455 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
28457         Fix a typo in last commit
28458         * lib-src/etags.c (C_entries): Fix a typo.
28459         * test/etags/ETAGS.good_1:
28460         * test/etags/ETAGS.good_2:
28461         * test/etags/ETAGS.good_3:
28462         * test/etags/ETAGS.good_4:
28463         * test/etags/ETAGS.good_5:
28464         * test/etags/CTAGS.good: Update due to the change in etags.c.
28466         Fix tagging of class members in C-like OO languages
28467         * lib-src/etags.c (longopts): Add new option --class-qualify and
28468         its shorthand -Q.
28469         (print_help): Add help text for --class-qualify.
28470         (main): Add handling of -Q.
28471         (consider_token, C_entries) <omethodparm>: Append argument types
28472         to Objective C methods only if --class-qualify was specified.
28473         Qualify C++, Objective C, and Java class members with their class
28474         names only if --class-qualify was specified.
28475         (C_entries): If --class-qualify was not specified, remove the
28476         namespace and class qualifiers from tag names of C++ methods.
28477         This allows to use etags.el as xref back-end without the
28478         tag-symbol-match-p method, which greatly increases the number of
28479         potentially false positives.  (Bug#20629)
28480         * doc/man/etags.1: Update to document the new --class-qualify
28481         option.
28482         * test/etags/ETAGS.good_1:
28483         * test/etags/ETAGS.good_2:
28484         * test/etags/ETAGS.good_3:
28485         * test/etags/ETAGS.good_4:
28486         * test/etags/ETAGS.good_5:
28487         * test/etags/CTAGS.good: Update due to changes in etags.c.
28489 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
28491         (cl-generic-define-method): Side effects are evil (bug#20644)
28492         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method): Don't reuse
28493         cons-cells that might be used as keys in an `equal' hash-table.
28495 2015-05-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
28497         Make erc timestamps visible again
28498         * lisp/erc/erc-stamp.el (erc-munge-invisibility-spec):
28499         Make timestamps visible again (if requested).
28501 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
28503         Fix last change in etags.c that broke tagging compresed files
28504         * lib-src/etags.c (process_file_name) [MSDOS || DOS_NT]: Fix
28505         quoting of decompression shell command for MS-Windows/MS-DOS.
28507 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
28509         * lisp/emacs-lisp/cl-macs.el (cl-tagbody): Scope cl--tagbody-alist.
28510         (Bug#20639)
28512 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
28514         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer):
28515         Fix typo in "Inhibit `epa-file-handler' in Tramp"
28516         (commit 89035e247591c8d688fce922b7079881aa110f33).
28518 2015-05-25  Orivej Desh  <orivej@gmx.fr>  (tiny change)
28520         Fix IPv6 addresses in Tramp
28521         * lisp/net/tramp-sh.el (tramp-make-copy-program-file-name):
28522         Add square brackets around host name.
28524 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
28526         Inhibit `epa-file-handler' in Tramp (Bug#20634)
28527         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer)
28528         (tramp-sh-handle-insert-file-contents-literally): Inhibit also
28529         `epa-file-handler'.
28531 2015-05-24  Stefan Monnier  <monnier@iro.umontreal.ca>
28533         * lisp/emacs-lisp/pcase.el: Use PAT rather than UPAT in docstring.
28534         (pcase-let): Document the behavior in case the pattern doesn't match.
28536 2015-05-24  Artur Malabarba  <bruce.connor.am@gmail.com>
28538         * lisp/emacs-lisp/tabulated-list.el: New optional print method.
28539         (tabulated-list-print): New optional argument, UPDATE.  If
28540         non-nil, the list is printed by only adding and deleting the
28541         changed entries, instead of erasing the whole buffer.  This method
28542         is much faster when few or no entries have changed.
28543         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
28544         * etc/NEWS: Document it.
28546         * lisp/emacs-lisp/tabulated-list.el: Improve printing.
28547         (tabulated-list--get-sorter): New function.
28548         (tabulated-list-print): Restore window-line when remember-pos is
28549         passed and optimize away the `nreverse'.
28551 2015-05-24  Paul Eggert  <eggert@cs.ucla.edu>
28553         Simpilify etags TEX mode scanning
28554         * lib-src/etags.c (TEX_mode, TEX_esc, TEX_opgrp, TEX_clgrp):
28555         Remove static vars.
28556         (TeX_commands): Deduce escapes here instead.
28557         (TEX_LESC, TEX_SESC, TEX_mode): Remove; all uses removed.
28558         This removes the need for a reset_input call.
28560         Improve etags I/O error reporting
28561         * lib-src/etags.c:
28562         Don't include sys/types.h and sys/stat.h; no longer needed.
28563         (infilename): New static var.
28564         (process_file_name): Don't call 'stat'.  Instead, just open the
28565         file for reading and report any errors.  Don't bother making
28566         a copy of the file argument; it's not needed.  Be more careful to
28567         use the failing errno when reporting an error.
28568         Quote the real name better (though no perfectly)
28569         when passing it to the shell.
28570         (reset_input): New function, which reports I/O errors.
28571         All uses of 'rewind' changed to use this function.
28572         (perhaps_more_input): New function, which also checks for
28573         I/O errors.  All uses of 'feof' changed to use this function.
28574         (analyze_regex): Report an error if fclose fails.
28575         (readline_internal): Report an error if getc fails.
28576         (etags_mktmp): Return an error if close fails.
28578         etags.c: avoid side effects in 'if'
28579         * lib-src/etags.c (process_file_name, Perl_functions)
28580         (TEX_decode_env): Hoist side effects into previous statement.
28582         .gitignore tweaks
28583         * .gitignore: Ignore all *.stamp files.  Sort.
28584         Ignore [0-9]*.txt (commonly used name for git patches)
28585         and /vc-dwim-log-* (vc-dwim temporary).
28587 2015-05-24  Eli Zaretskii  <eliz@gnu.org>
28589         Fix last change in etags.c, which failed the test suite
28590         * lib-src/etags.c (intoken): Add '$' to the set, as it was there
28591         before the last change.
28593 2015-05-23  Glenn Morris  <rgm@gnu.org>
28595         Remove charset map files from repository, generate in first bootstrap
28596         * admin/charsets/Makefile.in (${srcdir}/charsets.stamp): New.
28597         (all): Create the stamp file.
28598         (extraclean): Delete the stamp file.
28599         * src/Makefile.in (lispintdir, charsets): New variables.
28600         (${lispintdir}/cp51932.el, ${lispintdir}/eucjp-ms.el, ${charsets}):
28601         New rules.
28602         (emacs$(EXEEXT), temacs$(EXEEXT)): Depend on $charsets.
28603         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
28604         * etc/charsets/*.map: Remove from repository.
28606 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
28608         Cleanup etags.c to use locale-independent code
28609         Although this doesn't alter behavior (as etags doesn't use
28610         setlocale), the new version is more clearly locale-independent and
28611         the executable is a bit smaller on my platform.
28612         * lib-src/etags.c: Include <limits.h>, for UCHAR_MAX.
28613         Include <c-ctype.h> instead of <ctype.h>.
28614         (CHARS, CHAR, init, _wht, _nin, _itk, _btk, _etk, white, nonam, endtk)
28615         (begtk, midtk):
28616         Remove; no longer needed.
28617         (iswhite, ISALNUM, ISALPHA, ISDIGIT, ISLOWER, lowcase): Remove.
28618         All callers changed to use c_isspace, c_isalnum, c_isalpha, c_isdigit,
28619         c_islower, c_tolower, respectively.
28620         (notinname, begtoken, intoken, endtoken): Rewrite as functions
28621         instead of macros, and initialize the tables at compile-time
28622         rather than at run-time.
28624         Put default action first in src/Makefile
28625         * src/Makefile.in (all): Put this rule before lisp.mk.
28626         That way, plain 'make' works in the src directory again.
28628 2015-05-23  Glenn Morris  <rgm@gnu.org>
28630         * Makefile.in: Fix extraclean rule.
28631         (extraclean_dirs): New.
28632         (extraclean): Use it.
28634 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
28636         Avoid compiler warning in image.c on MS-Windows
28637         * src/w32term.h (x_query_color): Add prototype, to avoid compiler
28638         warning in image.c.
28640 2015-05-23  Glenn Morris  <rgm@gnu.org>
28642         Fix --without-toolkit-scroll-bars builds.
28643         * src/xterm.c (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]:
28644         Add new argument to x_clear_area1.
28645         (XTset_horizontal_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
28646         Update x_clear_area arguments.
28648         * admin/charsets/glibc/: New directory, imported from glibc 2.21.
28649         * admin/charsets/Makefile.in (GLIBC_CHARMAPS):
28650         Change to included version.
28651         (LOCAL, local, totalclean): Remove.
28652         (extraclean): Delete all generated files.
28654 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
28656         * lisp/pcmpl-cvs.el (pcmpl-cvs-entries): Don't assume
28657         CVS/Entries exists.
28659         * lisp/progmodes/xref.el (xref-find-apropos): Use read-string.
28661         * lisp/progmodes/etags.el (tags-completion-at-point-function):
28662         Don't trust the find-tag function.
28664 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
28666         Pacify --enable-gcc-warnings
28667         * src/frame.h (x_query_color): Remove redundant extern decl.
28668         * src/ftcrfont.c (ftcrfont_glyph_extents, ftcrfont_list)
28669         (ftcrfont_match, ftcrfont_open, ftcrfont_close)
28670         (ftcrfont_text_extents, ftcrfont_draw):
28671         * src/xterm.c (x_set_window_size_1, *x_color_cells, x_update_end)
28672         (XTframe_up_to_date, x_clear_area1, x_clear_frame)
28673         (x_ins_del_lines, frame_highlight, frame_unhighlight)
28674         (x_new_focus_frame, x_focus_changed, XTframe_rehighlight)
28675         (x_draw_hollow_cursor, x_draw_bar_cursor, x_flush, x_update_begin)
28676         (x_update_window_begin, x_connection_closed)
28677         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
28678         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
28679         (*x_gc_get_ext_data, x_extension_initialize)
28680         (x_cr_accumulate_data):
28681         Remove redundant static decl.  Many of these GCC doesn't complain
28682         about, but we might as well clean out the duplication while we're
28683         in the neighborhood.
28684         * src/xterm.c (x_fill_trapezoid_for_relief):
28685         Remove decl of nonexistent function.
28687 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
28689         Replace gui-method macros with cl-generic with &context
28690         * lisp/frame.el (gui-method--name, gui-method, gui-method-define)
28691         (gui-method-declare, gui-call): Remove.
28692         (frame-creation-function): Use cl-defgeneric.
28693         (make-frame): Adjust callers.
28694         * lisp/menu-bar.el (menu-bar-edit-menu):
28695         Use gui-backend-selection-exists-p.
28696         * lisp/select.el (x-get-clipboard): Use gui-backend-get-selection.
28697         (gui-backend-get-selection): New cl-generic to replace
28698         gui-get-selection method.
28699         (gui-backend-set-selection): New cl-generic to replace
28700         gui-set-selection method.
28701         (gui-selection-owner-p): New cl-generic to replace
28702         gui-selection-owner-p method.
28703         (gui-backend-selection-exists-p): New cl-generic to replace
28704         gui-selection-exists-p method.  Adjust all callers.
28705         * lisp/server.el (server-create-window-system-frame): Don't ignore
28706         window-system spec even when unsupported.
28707         * lisp/simple.el (deactivate-mark): Use new gui-backend-* functions.
28708         * lisp/startup.el (handle-args-function, window-system-initialization):
28709         Use cl-defgeneric.
28710         (command-line): Adjust calls accordingly.
28711         * lisp/term/ns-win.el (ns-window-system-initialization): Turn into
28712         a window-system-initialization method.
28713         (handle-args-function, frame-creation-function): Use cl-defmethod.
28714         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
28715         (gui-get-selection): Use cl-defmethod on the new functions instead.
28716         * lisp/term/pc-win.el (w16-get-selection-value): Turn into
28717         a gui-backend-get-selection method.
28718         (gui-selection-exists-p, gui-selection-owner-p, gui-set-selection):
28719         Use cl-defmethod on the new functions instead.
28720         (msdos-window-system-initialization): Turn into
28721         a window-system-initialization method.
28722         (frame-creation-function, handle-args-function): Use cl-defmethod.
28723         * lisp/term/w32-win.el (w32-window-system-initialization): Turn into
28724         a window-system-initialization method.
28725         (handle-args-function, frame-creation-function): Use cl-defmethod.
28726         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
28727         (gui-get-selection): Use cl-defmethod on the new functions instead.
28728         * lisp/term/x-win.el (x-window-system-initialization): Turn into
28729         a window-system-initialization method.
28730         (handle-args-function, frame-creation-function): Use cl-defmethod.
28731         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
28732         (gui-get-selection): Use cl-defmethod on the new functions instead.
28733         * lisp/term/xterm.el (xterm--set-selection): Turn into
28734         a gui-backend-set-selection method.
28735         * src/nsselect.m (Fns_selection_exists_p): Remove unused arg `terminal'.
28736         (Fns_selection_owner_p): Remove unused arg `terminal'.
28737         (Fns_get_selection): Remove unused args `time_stamp' and `terminal'.
28739 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
28741         Revert "Fix etags Bug#20629 that broke C++ support"
28742         This reverts commit 13dd9d4f7e75d2c78aa5537cef09de03663e9748.
28744 2015-05-23  Jan D  <jan.h.d@swipnet.se>
28746         Fix etags Bug#20629 that broke C++ support
28747         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
28748         Revert commit from Sun May 10 (Bug#20629).
28750         Merge branch 'cairo'.
28751         Main work done by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
28752         Small fixes and image work by Jan D. <jan.h.d@swipnet.se>.
28754         Merge branch 'master' into cairo
28756         Fixes to compile cairo branch without cairo
28757         * src/gtkutil.c (xg_update_scrollbar_pos): x_clear_area takes frame as
28758         first argument.
28759         * src/xterm.c (handle_one_xevent): Surround x_cr_destroy_surface with
28760         USE_CAIRO.
28762 2015-05-23  Artur Malabarba  <bruce.connor.am@gmail.com>
28764         * lisp/emacs-lisp/package.el: Always update selected-packages.
28765         (package--update-selected-packages): New function.
28766         (package-menu-execute): Use it before starting the transaction,
28767         this way the list of selected packages is updated even when the
28768         transaction fails.
28769         (package-menu--perform-transaction): Don't edit selected-packages.
28771 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
28773         Fix etags reading of compressed files
28774         * lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]: Define.
28775         Include fcntl.h, for O_CLOEXEC.
28776         (process_file_name): Don't use 'popen', whose streams cannot be
28777         rewound.  Instead, uncompress the file to a temporary file,
28778         created by 'etags_mktmp', and read from that as usual.
28779         (etags_mktmp): New function.
28780         * test/etags/ETAGS.good_1:
28781         * test/etags/ETAGS.good_2:
28782         * test/etags/ETAGS.good_3:
28783         * test/etags/ETAGS.good_4:
28784         * test/etags/ETAGS.good_5: Update to be consistent with latest
28785         changes in etags.c regarding reading compressed files.
28787         Improve documentation of 'set-fontset-font'
28788         * doc/lispref/display.texi (Fontsets): Document the value of nil
28789         for the 3rd argument of 'set-fontset-font'.
28791         Fix documentation of forward-line
28792         * src/cmds.c (Fforward_line): Clarify the return value if the line
28793         at end of accessible portion of the buffer has no newline.
28794         * doc/lispref/positions.texi (Text Lines): Document what happens
28795         if the line at end of accessible portion of buffer has no newline.
28796         (Bug#20587)
28798 2015-05-22  Glenn Morris  <rgm@gnu.org>
28800         * admin/charsets/Makefile.in (TRANS_TABLE): Add short aliases.
28802         * admin/charsets/mapconv (LC_ALL): Set to C.
28804         * Makefile.in: Add admin/charsets into top-level clean rules.
28805         (clean): Add admin/charsets.
28806         (maybeclean_dirs): New variable.
28807         (distclean, bootstrap-clean, maintainer-clean): Use $maybeclean_dirs.
28809         * admin/charsets/Makefile.in (LOCAL, local): Fix members.
28811 2015-05-22  Artur Malabarba  <bruce.connor.am@gmail.com>
28813         * lisp/emacs-lisp/package.el (package-selected-packages): Fix doc.
28815 2015-05-22  Glenn Morris  <rgm@gnu.org>
28817         Generate admin/charsets Makefile via configure, and make more portable
28818         * configure.ac (SUBDIR_MAKEFILES): Add admin/charsets/Makefile.
28819         (admin/charsets/Makefile): Generate it.
28820         * admin/charsets/Makefile.in: Rename from Makefile.
28821         (AWK, srcdir, top_srcdir, AM_DEFAULT_VERBOSITY):
28822         New variables, set by configure.
28823         (charsetdir, lispintdir, mapfiledir, AM_V_GEN, am__v_GEN_)
28824         (am__v_GEN_0, am__v_GEN_1, AM_V_at, am__v_at_, am__v_at_0)
28825         (am__v_at_1, LOCAL, mapconv, run_mapconv, big5, compact, cp51932)
28826         (cp932, eucjp_ms, gb180302, gb180304, kuten): New variables.
28827         (TRANS_TABLE, CHARSETS): Add directory prefix to value.
28828         (all): Declare PHONY.
28829         (local): New PHONY target.
28830         (map_template): New template.  Use to define short PHONY aliases.
28831         (*.map): Add directory prefixes to targets and prerequisites.
28832         Respect make verbosity.
28833         (JISC6226.map): Replace non-portable sed append without newline.
28834         (install): Remove rule.
28835         (clean): Only delete temporary sedscript.
28836         (bootstrap-clean, distclean, maintainer-clean, extraclean)
28837         (totalclean): New PHONY rules.
28838         * admin/charsets/mapconv (BASE): Replace basename with expr.
28839         (FILE): Add "mapfiles" subdirectory.
28840         (AWK): New variable.  Use throughout in place of "awk".
28841         (main): Use "gunzip -c" in place of "zcat".
28842         Don't leave whitespace before "p", for older sed.
28843         * admin/charsets/mapfiles/PTCP154: Add final newline,
28844         to make older sed versions happy.
28846 2015-05-22  Stefan Monnier  <monnier@iro.umontreal.ca>
28848         * lisp/autorevert.el: Use lexical-binding.  Fix hook usage.
28849         (global-auto-revert-ignore-buffer, auto-revert-notify-modified-p)
28850         (auto-revert-notify-watch-descriptor): Use defvar-local.
28851         (find-file-hook, auto-revert-tail-mode)
28852         (auto-revert-notify-add-watch): Use setq-local.
28853         (auto-revert-notify-add-watch): Don't call make-local-variable on
28854         kill-buffer-hook (bug#20601).
28856 2015-05-21  Stefan Monnier  <monnier@iro.umontreal.ca>
28858         Change defgeneric so it doesn't completely redefine the function
28859         * lisp/emacs-lisp/cl-generic.el (cl-generic-define): Don't throw away
28860         previously defined methods.
28861         (cl-generic-define-method): Let-bind purify-flag instead of
28862         using `fset'.
28863         (cl--generic-prefill-dispatchers): Only define during compilation.
28864         (cl-method-qualifiers): Remove redundant alias.
28865         (help-fns-short-filename): Silence byte-compiler.
28866         * test/automated/cl-generic-tests.el:
28867         Adjust to new defgeneric semantics.
28869 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
28871         * lisp/emacs-lisp/package.el (package-menu-execute):
28872         Remove reference to remove-dups.
28874 2015-05-21  kwhite  <kwhite@gnu.org>
28876         * lisp/erc/erc.el: Hide network/channel messages.
28877         (erc-network-hide-list, erc-channel-hide-list): New lists to define
28878         message types per network/channel.
28879         (erc-add-targets): New function to parse list of targets.
28880         (erc-hide-current-message-p): Modify to check for new targets.
28882 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
28884         Don't quote nil and t in doc strings
28885         This is as per "Tips for Documentation Strings" in the elisp manual.
28886         For consistency, do the same in diagnostics and comments.
28888 2015-05-21  Eli Zaretskii  <eliz@gnu.org>
28890         Fix a minor problem with mouse-face on mode line
28891         * src/xdisp.c (note_mode_line_or_margin_highlight): Reset the
28892         mouse face also if the mouse pointer hovers above mode-line glyphs
28893         that don't come from any Lisp string.  (Bug#20620)
28895 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
28897         * lisp/emacs-lisp/package.el: Fix selected-package logic.
28898         (package-menu-execute): Mark as selected all non-upgrade packages
28899         being installed.
28900         (package-menu--perform-transaction): Don't mark anything.
28902         * lisp/emacs-lisp/package.el: Mode-line progress report.
28903         (package-menu--transaction-status): New variable.
28904         (package-menu-mode, package-menu--perform-transaction): Use it.
28906         * lisp/emacs-lisp/package.el: Better transaction messages.
28907         (package-menu--partition-transaction): New function.
28908         (package-menu--prompt-transaction-p, package-menu-execute):
28909         Use it.
28910         (package-menu--perform-transaction): Don't do any messaging.
28912         * lisp/emacs-lisp/package.el: Revert async package transactions.
28913         (package-menu-async): Update doc.
28914         (package-install-from-archive, package-download-transaction)
28915         (package-install, package-menu--perform-transaction)
28916         (package-menu-execute): Remove asynchronous functionality.
28918 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
28920         Revert doc string changes to f90.el
28921         Problem reported by Glenn Morris in:
28922         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00596.html
28923         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
28924         Revert recent changes to doc strings, as it's intended that they
28925         use grave accent, not quote.
28927 2015-05-20  Bozhidar Batsov  <bozhidar@batsov.com>
28929         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p):
28930         Improve parameter name.
28932         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p): New inline function.
28934 2015-05-20  Paul Eggert  <eggert@cs.ucla.edu>
28936         Don't require help-fns when not needed
28937         * lisp/emacs-lisp/autoload.el, lisp/emacs-lisp/advice.el:
28938         * lisp/emacs-lisp/elint.el:
28939         Don't require help-fns at the top level
28940         * lisp/emacs-lisp/advice.el (ad-arglist):
28941         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
28942         Don't require help-fns.  (Bug#17001)
28944 2015-05-20  Eli Zaretskii  <eliz@gnu.org>
28946         Fix slash collapsing in etags on MS-Windows
28947         * lib-src/etags.c (canonicalize_filename) [DOS_NT]: Separate the
28948         MS-Windows code from the Posix code, and support collapsing both
28949         forward- and back-slashes on MS-Windows.  Fixes a regression found
28950         by the test suite.
28952         Improve documentation of glyphless-char-display
28953         * doc/lispref/display.texi (Glyphless Chars): Improve
28954         documentation of glyphless character display.
28956         Fix "acronym" display of glyphless characters on w32
28957         * src/w32term.c (x_draw_glyphless_glyph_string_foreground): Don't
28958         ignore "acronym" substitutes of 1 character for glyphless characters.
28960 2015-05-20  Oleh Krehel  <ohwoeowho@gmail.com>
28962         Add an automated test for let-when-compile
28963         * test/automated/subr-tests.el (let-when-compile): New test.
28965         Add let-when-compile macro instead of using pcase-let
28966         * lisp/subr.el (let-when-compile): New let-like macro that makes its
28967         bindings known to macros like `eval-when-compile' in the body.
28968         * lisp/emacs-lisp/lisp-mode.el: Change the top-level `pcase-let' to
28969         a `let-when-compile'.  Also comment out the unused lexical var
28970         `el-kws-re'.
28971         The change greatly improves readability, while providing almost the
28972         same (even shorter) byte code: instead of pre-evaluating 10 variables,
28973         tossing them into a list, and destructuring that list a full screen
28974         page later, the variables are simply bound as they are evaluated,
28975         wrapped individually in `eval-when-compile'.
28977 2015-05-20  Artur Malabarba  <bruce.connor.am@gmail.com>
28979         * lisp/emacs-lisp/package.el: "Delete" button in Help buffer.
28980         (package-delete-button-action): New function.
28981         (describe-package-1): Add Delete button.
28983         * lisp/emacs-lisp/package.el: Better dependency description.
28984         (package--used-elsewhere-p): New optional arg, ALL, and return
28985         package-desc objects instead of names.
28986         (package-delete): Update accordingly.
28987         (describe-package-1): Describe which packages require the package.
28989 2015-05-20  Martin Rudalics  <rudalics@gmx.at>
28991         Fix handling and doc-string of FRAME arg of `other-buffer' (Bug#20533)
28992         * src/buffer.c (Fother_buffer): Argument FRAME must denote a live frame.
28993         Fix doc-string.
28995         Improve `switch-to-buffer' in strongly dedicated windows (Bug#20472)
28996         * lisp/window.el (switch-to-buffer-in-dedicated-window): New option.
28997         (switch-to-buffer): If the selected window is strongly dedicated
28998         to its buffer, signal error before prompting for buffer name.
28999         Handle `switch-to-buffer-in-dedicated-window'.
29000         * doc/lispref/windows.texi (Switching Buffers):
29001         Document `switch-to-buffer-in-dedicated-window'.
29003 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
29005         Prefer "this" to “this” in doc strings
29006         This mostly just straightens quotes introduced in my previous patch.
29007         Suggested by Dmitry Gutov in:
29008         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00565.html
29009         * lisp/faces.el, lisp/gnus/gnus-group.el, lisp/ldefs-boot.el:
29010         * lisp/mail/supercite.el, lisp/net/tramp.el, lisp/recentf.el:
29011         * lisp/textmodes/artist.el, lisp/textmodes/rst.el:
29012         * lisp/textmodes/tildify.el, lisp/vc/ediff-util.el:
29013         * lisp/vc/log-edit.el, lisp/xt-mouse.el:
29014         Prefer straight double quotes to curved double quotes in doc strings.
29016         Fix minor quoting problems in doc strings
29017         These were glitches regardless of how or whether we tackle the
29018         problem of grave accent in doc strings.
29019         * lisp/calc/calc-aent.el (math-restore-placeholders):
29020         * lisp/ido.el (ido-ignore-buffers, ido-ignore-files):
29021         * lisp/leim/quail/cyrillic.el ("bulgarian-alt-phonetic"):
29022         * lisp/leim/quail/hebrew.el ("hebrew-new")
29023         ("hebrew-biblical-sil"):
29024         * lisp/leim/quail/thai.el ("thai-kesmanee"):
29025         * lisp/progmodes/idlw-shell.el (idlwave-shell-file-name-chars):
29026         Used curved quotes to avoid ambiguities like ‘`''’ in doc strings.
29027         * lisp/calendar/calendar.el (calendar-month-abbrev-array):
29028         * lisp/cedet/semantic/mru-bookmark.el (semantic-mrub-cache-flush-fcn):
29029         * lisp/cedet/semantic/symref.el (semantic-symref-tool-baseclass):
29030         * lisp/cedet/semantic/tag.el (semantic-tag-copy)
29031         (semantic-tag-components):
29032         * lisp/cedet/srecode/cpp.el (srecode-semantic-handle-:cpp):
29033         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
29034         * lisp/emacs-lisp/byte-opt.el (byte-optimize-all-constp):
29035         * lisp/emacs-lisp/checkdoc.el (checkdoc-message-text-engine):
29036         * lisp/emacs-lisp/generator.el (iter-next):
29037         * lisp/gnus/gnus-art.el (gnus-treat-strip-list-identifiers)
29038         (gnus-article-mode-syntax-table):
29039         * lisp/net/rlogin.el (rlogin-directory-tracking-mode):
29040         * lisp/net/soap-client.el (soap-wsdl-get):
29041         * lisp/net/telnet.el (telnet-mode):
29042         * lisp/org/org-compat.el (org-number-sequence):
29043         * lisp/org/org.el (org-remove-highlights-with-change)
29044         (org-structure-template-alist):
29045         * lisp/org/ox-html.el (org-html-link-org-files-as-html):
29046         * lisp/play/handwrite.el (handwrite-10pt, handwrite-11pt)
29047         (handwrite-12pt, handwrite-13pt):
29048         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
29049         * lisp/progmodes/idlwave.el (idlwave-mode, idlwave-check-abbrev):
29050         * lisp/progmodes/verilog-mode.el (verilog-tool)
29051         (verilog-string-replace-matches, verilog-preprocess)
29052         (verilog-auto-insert-lisp, verilog-auto-insert-last):
29053         * lisp/textmodes/makeinfo.el (makeinfo-options):
29054         * src/font.c (Ffont_spec):
29055         Fix minor quoting problems in doc strings, e.g., missing quote,
29056         ``x'' where `x' was meant, etc.
29057         * lisp/erc/erc-backend.el (erc-process-sentinel-2):
29058         Fix minor quoting problem in other string.
29059         * lisp/leim/quail/ethiopic.el ("ethiopic"):
29060         * lisp/term/tvi970.el (tvi970-set-keypad-mode):
29061         Omit unnecessary quotes.
29062         * lisp/faces.el (set-face-attribute, set-face-underline)
29063         (set-face-inverse-video, x-create-frame-with-faces):
29064         * lisp/gnus/gnus-group.el (gnus-group-nnimap-edit-acl):
29065         * lisp/mail/supercite.el (sc-attribs-%@-addresses)
29066         (sc-attribs-!-addresses, sc-attribs-<>-addresses):
29067         * lisp/net/tramp.el (tramp-methods):
29068         * lisp/recentf.el (recentf-show-file-shortcuts-flag):
29069         * lisp/textmodes/artist.el (artist-ellipse-right-char)
29070         (artist-ellipse-left-char, artist-vaporize-fuzziness)
29071         (artist-spray-chars, artist-mode, artist-replace-string)
29072         (artist-put-pixel, artist-text-see-thru):
29073         * lisp/vc/ediff-util.el (ediff-submit-report):
29074         * lisp/vc/log-edit.el (log-edit-changelog-full-paragraphs):
29075         Use double-quotes rather than TeX markup in doc strings.
29076         * lisp/skeleton.el (skeleton-pair-insert-maybe):
29077         Reword to avoid the need for grave accent and apostrophe.
29078         * lisp/xt-mouse.el (xterm-mouse-tracking-enable-sequence):
29079         Don't use grave and acute accents to quote.
29081 2015-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
29083         * lisp/emacs-lisp/generator.el (cps--gensym, cps--transform-1):
29084         Silence compiler.
29086 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
29088         Try to port new etags tests to MS-Windows
29089         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
29090         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
29091         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
29092         Adjust to test-case changes below.
29093         * test/etags/Makefile (CSRC): Remove dostorture.c.
29094         Whatever it was trying to test, wasn't working portably.
29095         (LC_ALL): Remove.  Apparently there wasn't an encoding problem,
29096         just a line-ending problem.
29097         * test/etags/c-src/dostorture.c: Remove.
29098         * test/etags/cp-src/c.C: Remove stray CR.
29099         * test/etags/html-src/algrthms.html: Remove trailing CRs.
29100         State UTF-8 as the encoding.  The file is ASCII so it doesn't matter,
29101         but if someone edits it later it should stay UTF-8-compatible.
29103 2015-05-19  Eli Zaretskii  <eliz@gnu.org>
29105         Fix display of overlapping window-specific overlays
29106         * src/keyboard.c (adjust_point_for_property): When adjusting point
29107         due to display strings, ignore overlays that are specific to
29108         windows other than the currently selected one.
29109         * src/xdisp.c (handle_single_display_spec): If the display
29110         property comes from an overlay, arrange for buffer iteration to
29111         resume only after the end of that overlay.  (Bug#20607)
29113 2015-05-19  Dmitry Gutov  <dgutov@yandex.ru>
29115         New command icomplete-force-complete-and-exit
29116         * lisp/icomplete.el (icomplete-force-complete-and-exit):
29117         New command
29118         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00461.html)
29119         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00516.html).
29120         (icomplete-minibuffer-map): Bind C-j to it.
29121         (icomplete-forward-completions, icomplete-backward-completions):
29122         Mention the new command in the docstring.
29123         * lisp/minibuffer.el (minibuffer-force-complete-and-exit):
29124         Revert the previous fix for bug#17545.
29126 2015-05-19  Martin Rudalics  <rudalics@gmx.at>
29128         Fix last commit
29130         In Elisp manual explain how to override window manager positioning
29131         (Bug#20552)
29132         * doc/lispref/frames.texi (Position Parameters): Give example of
29133         how to override a window manager positioning decision.
29135         Clarify concept of "surrogate minibuffer frames" (Bug#20538)
29136         * src/frame.c (Fdelete_frame): In doc-string mention that frame
29137         can't be deleted if it has a surrogate minibuffer.
29138         * doc/lispref/frames.texi (Minibuffers and Frames)
29139         (Deleting Frames): Explain "surrogate minibuffer frames".
29141         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 19/12 MB.
29143 2015-05-18  Glenn Morris  <rgm@gnu.org>
29145         Add option to ignore commit lines matching a pattern in ChangeLog
29146         * build-aux/gitlog-to-changelog: Add --ignore-line option.
29147         * build-aux/gitlog-to-emacslog: Ignore lines matching '^; '.
29149 2015-05-18  Paul Eggert  <eggert@cs.ucla.edu>
29151         Don't skip new etags tests on non-UTF-8 hosts
29152         Problem reported by Eli Zaretskii for MS-Windows.
29153         * test/etags/Makefile (UTF8_LOCALE, UTF8_ENCODING): Remove.
29154         (LC_ALL): Set to C if the current locale isn't UTF-8.
29155         (.PHONY): Remove ediff_1 thru ediff_5.
29156         (check): Always run.
29158 2015-05-18  Glenn Morris  <rgm@gnu.org>
29160         * lisp/calculator.el (calculator-funcall):
29161         * lisp/textmodes/artist.el (artist-spray-random-points):
29162         Use standard degree/radian conversion utilities.
29164         Further lisp-complete-symbol related cleanup.
29165         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol):
29166         Unadvertise non-functional argument.  Replace obsolete alias.
29168 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
29170         Add a test case for Maven warning ouput
29171         * test/automated/compile-tests.el
29172         (compile-tests--test-regexps-data): Add a case for Maven warning
29173         ouput.
29174         (compile--test-error-line): Check the compilation message type, if
29175         it's specified in the test data.
29177 2015-05-18  Paul Pogonyshev  <pogonyshev@gmail.com>
29179         Update Maven compilation-mode entry to distinguish warnings
29180         * lisp/progmodes/compile.el
29181         (compilation-error-regexp-alist-alist): Update Maven entry to
29182         distinguish warnings (bug#20556).
29184 2015-05-18  Przemysław Wojnowski  <esperanto@cumego.com>
29186         * test/automated/sgml-mode-tests.el: New file.
29188 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
29190         Improve handling of the first Git revision
29191         * lisp/vc/log-view.el (log-view-toggle-entry-display): When
29192         there's no next entry, delete until the end of the buffer.
29193         (log-view-end-of-defun-1): Stop at eob.
29194         * lisp/vc/vc-annotate.el
29195         (vc-annotate-show-diff-revision-at-line-internal): Don't give up
29196         when previous-revision is nil.
29197         * lisp/vc/vc-git.el (vc-git-expanded-log-entry): End the arguments
29198         with `--' to avoid ambiguity.
29199         (vc-git-annotate-extract-revision-at-line): Exclude `^' from the
29200         returned revision string.
29201         (vc-git-annotate-time): Expect `^' before the first revision.
29202         * lisp/vc/vc-git.el (vc-git-diff): Diff against an empty tree if
29203         REV1 is nil, and REV2 is not.
29204         * lisp/vc/vc.el: Update the description of the `diff' function.
29206 2015-05-18  Oleh Krehel  <ohwoeowho@gmail.com>
29208         Allow checkdoc to be called in batch
29209         * lisp/emacs-lisp/checkdoc.el (checkdoc-error): When `noninteractive'
29210         is non-nil, echo the error with `warn'.
29211         How it can be used in -batch:
29212         (with-current-buffer (find-file "checkdoc.el")
29213           (checkdoc-current-buffer t))
29215 2015-05-18  Glenn Morris  <rgm@gnu.org>
29217         * lisp/calendar/solar.el (solar-ecliptic-coordinates): Use float-pi.
29219 2015-05-17  Paul Eggert  <eggert@cs.ucla.edu>
29221         * admin/notes/unicode: New section "binary files".
29223         Change new etags test to use UTF-8 encoding
29224         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
29225         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
29226         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
29227         * test/etags/html-src/index.shtml, test/etags/html-src/software.html:
29228         * test/etags/html-src/softwarelibero.html:
29229         Switch to UTF-8 encoding.
29230         * test/etags/Makefile (SRCS): Adjust to switch to UTF-8.
29231         Remove Makefile, as it's too incestuous to have the test input
29232         include the build procedure.
29233         (UTF8_LOCALE, UTF_ENCODING): New macros.
29234         (LC_ALL): If possible, set to a UTF-8 encoding if not already UTF-8.
29235         (check): Skip if not UTF-8.
29236         (.PHONY): New rule.
29237         (FRC): Remove, as superseded by .PHONY.  All uses removed.
29238         (regexfile): Prefer printf to echo when outputting oddball chars.
29239         (.PRECIOUS): Remove, as these files are not built.
29241         Rename 'foo-gzipped' to 'foo.gz'
29242         * test/automated/data/decompress/foo.gz:
29243         Rename from test/automated/data/decompress/foo-gzipped,
29244         to make it easier for other tools to tell that it's compressed.
29245         * test/automated/zlib-tests.el (zlib--decompress):
29246         Adjust to renamed file.
29248 2015-05-17  Dmitry Gutov  <dgutov@yandex.ru>
29250         Set up default-directory
29251         * lisp/vc/vc-annotate.el (vc-annotate-mode-map): Remove duplicate
29252         binding for `v'.
29253         (vc-annotate-show-changeset-diff-revision-at-line): Set up an
29254         appropriate value for default-directory.
29256 2015-05-17  Samer Masterson  <samer@samertm.com>
29258         * lisp/eshell/em-term.el (eshell-term-sentinel):
29259         No-op by default, only kills term buffer if
29260         `eshell-destroy-buffer-when-process-dies' is non-nil.  (Bug#18108)
29261         (eshell-destroy-buffer-when-process-dies): New custom to preserve
29262         previous behavior.
29264         eshell: Introduce new buffer syntax
29265         The new buffer syntax '#<buffer-name>' is equivalent to '#<buffer
29266         buffer-name>'.  Remove `eshell-buffer-shorthand', as it is no longer
29267         needed (Bug#19319).
29268         * lisp/eshell/esh-io.el (eshell-buffer-shorthand): Remove.
29269         (eshell-get-target): Remove shorthand-specific code.
29270         * lisp/eshell/esh-arg.el (eshell-parse-special-reference): Parse
29271         '#<buffer-name>'.
29273 2015-05-17  Jan D  <jan.h.d@swipnet.se>
29275         Merge branch 'master' into cairo
29277 2015-04-26  Jan D  <jan.h.d@swipnet.se>
29279         Merge branch 'master' into cairo
29281         Add PBM support for cairo
29282         * src/image.c (xcolor_to_argb32): New function.
29283         (get_spec_bg_or_alpha_as_argb): Call xcolor_to_argb32.
29284         (pbm_load, png_load_body, jpeg_load_body, gif_load): Only use
29285         XImagePtr if ! USE_CAIRO.
29286         (pbm_load): Add cairo support.
29288 2015-04-12  Jan D  <jan.h.d@swipnet.se>
29290         * src/xterm.c (x_free_cr_resources): Rename from x_prepare_for_xlibdraw.
29291         (x_cr_draw_frame, x_cr_export_frames, x_shift_glyphs_for_insert)
29292         (x_free_frame_resources): Rename x_prepare_for_xlibdraw to
29293         x_free_cr_resources.
29295         Handle specified bg in images.  Use generic libpng code for PNGs.
29296         * src/image.c (get_spec_bg_or_alpha_as_argb)
29297         (create_cairo_image_surface): New functions when USE_CAIRO.
29298         (xpm_load): Call the above functions.  Handle XPM without mask
29299         when USE_CAIRO.
29300         (png_load_body): Handle USE_CAIRO case.
29301         (png_load): Remove USE_CAIRO specific fuction, modify png_load_body
29302         instead.
29303         (jpeg_load_body): Call create_cairo_image_surface.
29304         (gif_load, svg_load_image): Handle specified background, call
29305         create_cairo_image_surface.
29306         * src/xterm.c (x_draw_image_glyph_string): Add missing USE_CAIRO.
29308 2015-04-11  Jan D  <jan.h.d@swipnet.se>
29310         Support GIF and TIFF with cairo
29311         * configure.ac: Allow jpeg with cairo.
29312         Allow tiff and gif with cairo.
29313         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
29314         (tiff_load): Create cairo image surface if USE_CAIRO.
29315         (gif_load): Ditto.
29317         Support JPEG with USE_CAIRO
29318         * configure.ac: Allow jpeg with cairo.
29319         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
29321 2015-04-05  Jan D  <jan.h.d@swipnet.se>
29323         Support RSVG and cairo
29324         * configure.ac: Allow rsvg with cairo.  Move back HAVE_RSVG.
29325         * src/dispextern.h (struct image): Add cr_data2 if cairo.
29326         * src/image.c: #undef COLOR_TABLE_SUPPORT when USE_CAIRO.
29327         (x_clear_image): Free cr_data and cr_data2 if set.
29328         (xpm_load): Assign data to cr_data2.
29329         (svg_load_image): Convert from GdkPixbuf to CAIRO_FORMAT_ARGB32.
29331 2015-04-03  Jan D  <jan.h.d@swipnet.se>
29333         Introduce limited Xpm support (32 bit ZPixmap) for Cairo
29334         * configure.ac (HAVE_RSVG): Move after cairo.
29335         (USE_CAIRO): Disable rsvg, don't disable Xpm.
29336         * src/image.c (prepare_image_for_display): Don't load if USE_CAIRO.
29337         (x_clear_image): If USE_CAIRO, also free possible img->ximg->obdata and
29338         don't return early.
29339         (ALLOC_XPM_COLORS): Don't define when USE_CAIRO.
29340         (xpm_load): Convert simple Xpms (32 bit ZPixmap) to CAIRO_FORMAT_ARGB32
29341         and create a surface.
29343         Tool tips for menus did not show any text.
29344         * src/xterm.c (x_update_begin): Don't create any surface for non-visible
29345         tip frames, the geometry may be wrong.
29347         Merge branch 'master' into cairo, fixes tooltips not shown.
29349         Merge branch 'master' into cairo
29351         Add CAIRO_CFLAGS to lwlib/Makefile.in
29352         * Makefile.in (CAIRO_CFLAGS): Add.
29354 2015-02-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
29356         * src/ftcrfont.c (ftcrfont_draw): Don't flush when drawing to screen.
29358 2015-02-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
29360         Draw outermost line using black relief and erase corners also for cairo.
29361         * src/xterm.c [USE_CAIRO]: Include math.h.
29362         (enum corners) [USE_CAIRO]: New enum.
29363         (x_erase_corners_for_relief) [USE_CAIRO]: New function.
29364         (x_draw_relief_rect) [USE_CAIRO]: Use it.  If box width is larger
29365         than 1, draw the outermost line using the black relief.
29367         * src/xterm.c (x_fill_trapezoid_for_relief):
29368         Remove unnecessary cairo_close_path.
29370 2015-02-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
29372         * src/xterm.c (x_draw_relief_rect) [USE_CAIRO]: Reset clipping.
29374         * src/xterm.c (x_draw_stretch_glyph_string):
29375         Call x_reset_clip_rectangles instead of XSetClipMask.
29377         Use int instead of unsigned int for width and height args.
29378         * src/xterm.c (x_cr_draw_image, x_fill_rectangle, x_draw_rectangle)
29379         (x_fill_trapezoid_for_relief): Use int instead of unsigned int for
29380         width and height args.
29382         Modernize k&r cairo-related function declarations.
29383         * src/gtkutil.c (xg_page_setup_dialog, xg_get_page_setup, draw_page)
29384         (xg_print_frames_dialog): Modernize k&r declarations.
29385         * src/xfns.c (Fx_export_frames, Fx_page_setup_dialog, Fx_get_page_setup)
29386         (Fx_print_frames_dialog): Modernize k&r declarations.
29387         * src/xterm.c (x_gc_get_ext_data, x_extension_initialize)
29388         (x_begin_cr_clip, x_end_cr_clip, x_set_cr_source_with_gc_foreground)
29389         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
29390         (x_cr_destroy_fringe_bitmap, x_cr_draw_frame, x_cr_accumulate_data)
29391         (x_cr_destroy, x_cr_export_frames, x_prepare_for_xlibdraw)
29392         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
29393         (x_draw_rectangle, x_clear_window, x_fill_trapezoid_for_relief)
29394         (x_clear_area): Modernize k&r declarations.
29396         Implement wave-style variant of underlining for cairo.
29397         * src/xterm.c (x_draw_horizontal_wave) [USE_CAIRO]: New function.
29398         (x_draw_underwave) [USE_CAIRO]: Use it.
29400         * src/xterm.c (x_draw_window_divider): Use x_fill_rectangle
29401         instead of XFillRectangle.
29403 2015-02-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
29405         Fix fringe bitmap initialization for cairo
29406         * src/fringe.c (init_fringe_bitmap) [USE_CAIRO]: Adjust bitmap
29407         data for cairo image surface.
29408         * src/xterm.c (x_cr_define_fringe_bitmap):
29409         Call cairo_surface_mark_dirty.
29411 2015-02-11  Jan D  <jan.h.d@swipnet.se>
29413         Add cairo drawing
29414         * configure.ac (with-cairo): New option.
29415         (USE_CAIRO): Default to yes for Gtk+ 3.  Add code to test for cairo,
29416         set CAIRO_CFLAGS, CAIRO_LIBS.  Add ftcrfonto to FONT_OBJ if cairo.
29417         Output "Does Emacs use cairo?".
29418         * lisp/version.el (emacs-version): Add cairo version.
29419         * src/Makefile.in (CAIRO_CFLAGS, CAIRO_LIBS): New variables.
29420         (FONT_OBJ): Add comment about ftcrfont.
29421         (ALL_CFLAGS): Add CAIRO_CFLAGS.
29422         (LIBES): Add CAIRO_LIBS.
29423         * src/dispextern.h (struct image): Add cr_data for cairo.
29424         (x_cr_init_fringe): Declare.
29425         * src/font.c (syms_of_font): Call syms_of_ftcrfont for cairo.
29426         * src/font.h (ftcrfont_driver, syms_of_ftcrfont): Declare
29427         * src/fringe.c (x_cr_init_fringe): New function name that shares code
29428         with w32_init_fringe.
29429         * src/ftcrfont.c: New font driver for cairo, based on the ftfont driver.
29430         * src/ftfont.c (ftfont_info_size); New global variable.
29431         (ftfont_open2): New extern function almost the same as old ftfont_open,
29432         but takes the font_object as argument.
29433         (ftfont_open): Build font object and call ftfont_open2.
29434         * src/ftfont.h (ftfont_open2, ftfont_info_size): Declare.
29435         * src/gtkutil.c (xg_clear_under_internal_border)
29436         (xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos):
29437         Only queue_draw if not cairo.  Change args to x_clear_area.
29438         (xg_get_font): Use Qftcr when using cairo, Qxft otherwise.
29439         (xg_page_setup_dialog, xg_get_page_setup, draw_page)
29440         (xg_print_frames_dialog): New functions for printing.
29441         * src/gtkutil.h (xg_page_setup_dialog, xg_get_page_setup)
29442         (xg_print_frames_dialog): Declare.
29443         * src/image.c: Add defined (USE_CAIRO) for PNG.
29444         Add !defined USE_CAIRO for W32 PNG code.
29445         (x_clear_image): If cairo, destroy the surface in cr_data.
29446         (png_load): Add new cairo compatible implementation.
29447         (lookup_image_type): Add defined (USE_CAIRO) for define png_type.
29448         * src/xfns.c: New section Printing.
29449         (x-export-frames, x-page-setup-dialog, x-get-page-setup)
29450         (x-print-frames-dialog): New printing functions.
29451         (Fx_create_frame, x_create_tip_frame): Register ftcrfont if cairo.
29452         (syms_of_xfns): Defsym Qorientation, Qtop_margin, Qbottom_margin,
29453         Qportrait, Qlandscape, Qreverse_portrait, Qreverse_landscape).
29454         (syms_of_xfns): Provide cairo and defvar cairo-version-string.
29455         defsubr Sx_page_setup_dialog, Sx_get_page_setup, Sx_print_frames_dialog.
29456         * src/xterm.c (x_clear_area1, x_prepare_for_xlibdraw)
29457         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
29458         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
29459         (x_gc_get_ext_data, x_extension_initialize, x_cr_accumulate_data):
29460         Declare.
29461         (FRAME_CR_CONTEXT, FRAME_CR_SURFACE): New macros.
29462         (max_fringe_bmp, fringe_bmp): New variables.
29463         (x_gc_get_ext_data, x_extension_initialize)
29464         (x_cr_destroy_surface, x_begin_cr_clip, x_end_cr_clip)
29465         (x_set_cr_source_with_gc_foreground)
29466         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
29467         (x_cr_destroy_fringe_bitmap, x_cr_draw_image, x_cr_draw_frame)
29468         (x_cr_accumulate_data, x_cr_destroy, x_cr_export_frames)
29469         (x_prepare_for_xlibdraw, x_set_clip_rectangles)
29470         (x_reset_clip_rectangles, x_fill_rectangle, x_draw_rectangle)
29471         (x_clear_window, x_fill_trapezoid_for_relief): New functions.
29472         (x_update_begin): Create cairo surface if needed.
29473         (x_draw_vertical_window_border): Call x_fill_rectangle for cairo.
29474         (x_update_end): Paint cairo drawing surface to xlib surface.
29475         (x_clear_under_internal_border, x_after_update_window_line): Adjust
29476         arguments to x_clear_area.
29477         (x_draw_fringe_bitmap): Call x_fill_rectangle.  Get GC values and
29478         call x_cr_draw_image for cairo.  Call x_reset_clip_rectangles instead
29479         of XSetClipMask.
29480         (x_set_glyph_string_clipping)
29481         (x_set_glyph_string_clipping_exactly): Use x_set_clip_rectangles
29482         instead of XSetClipRectangles.
29483         (x_clear_glyph_string_rect, x_draw_glyph_string_background):
29484         Use x_fill_rectangle instead of XFillRectangle.
29485         (x_draw_glyph_string_foreground)
29486         (x_draw_composite_glyph_string_foreground)
29487         (x_draw_glyphless_glyph_string_foreground): Use x_draw_rectangle
29488         instead of XDrawRectangle.
29489         (x_draw_relief_rect): Add code for USE_CAIRO.
29490         Call x_reset_clip_rectangles instead of XSetClipMask.
29491         (x_draw_box_rect): x_set_clip_rectangles instead of XSetClipRectangles,
29492         x_fill_rectangle instead of XFillRectangle, x_reset_clip_rectangles
29493         instead of XSetClipMask.
29494         (x_draw_image_foreground, x_draw_image_foreground_1):
29495         x_draw_rectangle instead of XDrawRectangle.
29496         (x_draw_glyph_string_bg_rect): x_fill_rectangle instead of
29497         XFillRectangle.
29498         (x_draw_image_glyph_string): If img has cr_data, use it as
29499         a cairo surface.
29500         (x_draw_stretch_glyph_string): x_set_clip_rectangles instead of
29501         XSetClipRectangles, x_fill_rectangle instead of XFillRectangle.
29502         (x_draw_glyph_string): x_fill_rectangle instead of XFillRectangle.,
29503         x_reset_clip_rectangles instead of XSetClipMask.
29504         (x_shift_glyphs_for_insert): Call x_prepare_for_xlibdraw.
29505         (x_clear_area1): New function that calls XClearArea.
29506         (x_clear_area): Takes frame as parameter, calls x_clear_area1 for
29507         non-cairo.
29508         (x_clear_frame): x_clear_window instead of XClearWindow.
29509         (x_scroll_run): Set frame garbaged if cairo.
29510         (XTmouse_position): Initialize *part to 0.
29511         (x_scroll_bar_create): Adjust arguments to x_clear_area.
29512         (x_scroll_bar_set_handle): x_clear_area1 instead of x_clear_area,
29513         x_fill_rectangle instead of XFillRectangle.
29514         (XTset_vertical_scroll_bar, XTset_horizontal_scroll_bar): Adjust
29515         arguments to x_clear_area.
29516         (x_scroll_bar_expose): x_draw_rectangle instead of XDrawRectangle.
29517         (handle_one_xevent): Adjust arguments to x_clear_area.
29518         Destroy cairo surface for frame if ConfigureNotify.
29519         (x_clip_to_row): x_set_clip_rectangles instead of XSetClipRectangles.
29520         (x_draw_hollow_cursor): x_draw_rectangle instead of XDrawRectangle,
29521         x_reset_clip_rectangles instead of XSetClipMask.
29522         (x_draw_bar_cursor): x_fill_rectangle instead of XFillRectangle,
29523         x_reset_clip_rectangles instead of XSetClipMask.
29524         (x_clear_frame_area): Adjust arguments to x_clear_area.
29525         (x_free_frame_resources): Call x_prepare_for_xlibdraw.
29526         (x_term_init): Call x_extension_initialize if cairo.
29527         (x_redisplay_interface): Add x_cr_define_fringe_bitmap,
29528         x_cr_destroy_fringe_bitmap for cairo.
29529         (x_initialize): Call x_cr_init_fringe for cairo.
29530         * src/xterm.h: Add include of cairo header files.
29531         (x_bitmap_record): Add img if cairo.
29532         (x_gc_ext_data): New struct for cairo.
29533         (x_display_info): Add ext_codes for cairo.
29534         (x_output): Add cr_context and cr_surface for cairo.
29535         (x_clear_area): Change arguments from Display*/Window to frame pointer.
29536         (x_query_color, x_begin_cr_clip, x_end_cr_clip)
29537         (x_set_cr_source_with_gc_foreground, x_set_cr_source_with_gc_background)
29538         (x_cr_draw_frame, x_cr_export_frames): Declare.
29540 2015-05-17  Johan Bockgård  <bojohan@gnu.org>
29542         Fix integer-valued `mouse-highlight' (Bug#20590)
29543         * src/xterm.c (handle_one_xevent) [USE_GTK]: Fix ifdef scope.
29545 2015-05-17  Eli Zaretskii  <eliz@gnu.org>
29547         MS-Windows followup for ASCIIfication of curved quotes
29548         * lisp/term/w32console.el (terminal-init-w32console): Repeat the
29549         test for curved quotes being displayable, after switching the
29550         terminal encoding.  (Bug#20545)
29552 2015-05-17  Jan D  <jan.h.d@swipnet.se>
29554         Add comment that x_shift_glyphs_for_insert is never called
29555         * src/xterm.c (x_shift_glyphs_for_insert, x_redisplay_interface):
29556         Add comment that this function is never called.
29558 2015-05-16  Glenn Morris  <rgm@gnu.org>
29560         * src/lisp.mk: Remove from repository and generate at build-time.
29561         * src/Makefile.in (lisp.mk): New rule to generate from loadup.el.
29562         (shortlisp_filter): New variable.
29563         (emacs$(EXEEXT), $(etc)/DOC): Depend on lisp.mk.
29564         (distclean): Remove lisp.mk.
29565         * Makefile.in ($(MAKEFILE_NAME)): No longer depend on src/lisp.mk.
29566         * lisp/loadup.el: Tweak layout to make it easier to parse.
29567         * make-dist: Do not distribute src/lisp.mk.
29569 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
29571         Display shorter dates in Git annotate output
29572         * lisp/vc/vc-git.el (vc-git-annotate-command): Use the short date
29573         format (when not overridden with vc-git-annotate-switches).
29574         (vc-git-annotate-time): Support the short format, as well as ISO
29575         8601 that has been used until now (bug#5428).
29577 2015-05-16  Paul Eggert  <eggert@cs.ucla.edu>
29579         ASCIIfy curved quotes on displays lacking them
29580         * lisp/international/mule-cmds.el (set-locale-environment):
29581         If curved quotes don't work, display straight ASCII approximations
29582         (Bug#20545).
29584 2015-05-16  Glenn Morris  <rgm@gnu.org>
29586         Small src/Makefile simplification
29587         * src/lisp.mk (shortlisp): Rename from lisp, remove $lispsource prefix.
29588         * src/Makefile.in (lisp): Derive from shortlisp.
29589         ($(etc)/DOC): Use $shortlisp rather than parsing lisp.mk.
29591 2015-05-16  Eli Zaretskii  <eliz@gnu.org>
29593         * lisp/help-mode.el (help-go-forward): Doc fix.
29594         (Bug#20577)
29596         * doc/lispref/debugging.texi (Profiling): Improve indexing.
29597         (Bug#20576)
29599 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
29601         * lisp/vc/vc-git.el (vc-git-resolve-when-done): Use `unless' to
29602         have one fewer `not'.
29604         * lisp/vc/vc-git.el (vc-git-diff-switches)
29605         (vc-git-annotate-switches, vc-git-resolve-conflicts)
29606         (vc-git-program, vc-git-root-log-format): Remove the redundant
29607         :group declarations.
29609 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
29611         Removes the predicate from lisp-complete-symbol (Bug#20456)
29612         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol): Do not use predicate
29613         and remove it from the docstring.
29615 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
29617         Add new option vc-git-resolve-conflicts
29618         * lisp/vc/vc-git.el (vc-git-resolve-conflicts): New variable.
29619         (vc-git-find-file-hook): Add to after-save-hook only when the
29620         above is non-nil.
29621         (vc-git-resolve-when-done): Update to honor the new variable.
29622         (Bug#20292)
29624 2015-05-16  Artur Malabarba  <bruce.connor.am@gmail.com>
29626         * lisp/emacs-lisp/tabulated-list.el: Don't error on null header-string.
29627         (tabulated-list-init-header): Document new behavior.
29628         (tabulated-list-print-fake-header): Do nothing if
29629         `tabulated-list--header-string' is nil.
29630         (tabulated-list--header-string): Add a docstring.
29631         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
29632         * etc/NEWS: Document it.
29634 2015-05-15  Leo Liu  <sdl.web@gmail.com>
29636         Revert "Fix cps--gensym"
29637         * lisp/emacs-lisp/generator.el (cps--gensym): Revert commit
29638         fbda511ab8069d0115eafca411a43353b85431b1 on 2015-05-14.
29640 2015-05-15  Glenn Morris  <rgm@gnu.org>
29642         Replace AC_SUBST_FILE in configure with include in Makefiles
29643         * configure.ac (DEPDIR, MKDEPDIR, deps_frag, lwlib_deps_frag)
29644         (oldxmenu_deps_frag, lisp_frag): Remove output variables/files.
29645         (AUTO_DEPEND): New output variable.
29646         * lwlib/Makefile.in (AUTO_DEPEND): New, set by configure.
29647         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
29648         (lwlib_deps_frag): Replace by conditional include.
29649         * lwlib/autodeps.mk: Remove file.
29650         * oldXMenu/Makefile.in (AUTO_DEPEND): New, set by configure.
29651         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
29652         (oldxmenu_deps_frag): Replace by conditional include.
29653         * oldXMenu/autodeps.mk: Remove file.
29654         * src/Makefile.in (AUTO_DEPEND): New, set by configure.
29655         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
29656         (lisp_frag): Replace by an include.
29657         (deps_frag): Replace by conditional include.
29658         * src/autodeps.mk: Remove file.
29660         Tweak japanese.el's loading of dependencies
29661         * lisp/loadup.el: Explicitly load cp51932 and eucjp-ms.
29662         * lisp/language/japanese.el: Use require rather than load.
29663         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
29664         Provide a feature.
29665         * admin/charsets/eucjp-ms.awk, admin/charsets/cp51932.awk:
29666         Provide a feature in the generated file.
29668 2015-05-15  Jan D  <jan.h.d@swipnet.se>
29670         Fix NS warnings
29671         * src/nsmenu.m (ns_popup_dialog)
29672         * src/nsimage.m (initFromXBM:width:height:fg:bg:)
29673         * src/nsfns.m (Fx_create_frame): Remove unused variables.
29674         (Fns_read_file_name): Initialize fname, remove ret.
29675         * src/nsterm.m (ns_draw_window_cursor): Handle DEFAULT_CURSOR in switch.
29676         (ns_get_color, ns_set_horizontal_scroll_bar, keyDown):
29677         Remove unused variable.
29678         (init): Add parantesis in if.
29679         (ns_create_terminal): Assign set_horizontal_scroll_bar_hook.
29681 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
29683         Fix a enum conversion warning in macfont.m
29684         * src/macfont.h (CharacterCollection): Typedef to NSCharacterCollection.
29685         (MAC_CHARACTER_COLLECTION_*): Use the NS variants.
29687 2015-05-15  Eli Zaretskii  <eliz@gnu.org>
29689         * lisp/textmodes/ispell.el (ispell-aspell-find-dictionary):
29690         Support Aspell dictionaries with names like "de-alt".  (Bug#20581)
29692 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
29694         * lisp/cus-start.el: Add ns-confirm-quit.
29696         Fix warnings on OSX 10.10
29697         * src/nsfns.m (MODAL_OK_RESPONSE): New define for different
29698         OSX versions.
29699         (Fns_read_file_name): Check against MODAL_OK_RESPONSE.
29700         (compute_tip_xy): Use convertRectToScreen for OSX >= 10.7
29701         * src/nsmenu.m (initWithContentRect:styleMask:backing:defer:)
29702         * src/nsimage.m (allocInitFromFile, setPixmapData): Only call
29703         setScalesWhenResized for OSX < 10.6.
29704         * src/nsterm.h (EmacsScroller): Declare scrollerWidth.
29705         * src/nsterm.m (ns_copy_bits): New function that does not use
29706         deprecated NSCopyBits.
29707         (ns_scroll_run, ns_shift_glyphs_for_insert): Call ns_copy_bits.
29708         (runAlertPanel): New function.
29709         (applicationShouldTerminate:): Call runAlertPanel.
29710         (initFrameFromEmacs, toggleFullScreen:): Only call
29711         useOptimizedDrawing for OSX < 10.10.
29712         (initFrameFromEmacs:): Only call allocateGState for OSX < 10.10.
29713         (windowWillUseStandardFrame:defaultFrame:): Cast arg to abs to int.
29714         (draggingEntered:): Returns NSDragOperation.
29715         (scrollerWidth): Use scrollerWidthForControlSize for OSX >= 10.7.
29717 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
29719         * lisp/emacs-lisp/package.el: Don't ensure-init during startup.
29720         (package--init-file-ensured): New variable.
29721         (package-initialize, package--ensure-init-file): Use it.
29723 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
29725         Honor :fore/background for XBM on NS (Bug#14969)
29726         * src/nsterm.h (EmacsImage): Add xbm_fg, remove initFromSkipXBM,
29727         initFromXBM takes bg, fg args, remove flip arg.
29728         (ns_image_from_XBM): Add bg, fg args.
29729         * src/image.c (x_create_bitmap_from_data)
29730         (Create_Pixmap_From_Bitmap_Data): ns_image_from_XBM takes bg, fg args.
29731         * src/nsimage.m (ns_image_from_XBM): Add fg, bg args, pass to
29732         initFromXBM.  Remove flip arg.
29733         (initFromSkipXBM): Move code to initFromXBM.
29734         (initFromXBM): Actually set fg and bg, instead of playing alpha games.
29735         Use fg, bg from args (Bug#14969).  Remove if (length) section, was
29736         always false.
29737         Remove bit flipping (bitPat, swt), generated incorrect images when
29738         width/height wasn't a multiple of 8.
29739         (setXBMColor:): Modify planes by comparing to saved xbm_fg.
29740         * src/nsterm.m (ns_draw_fringe_bitmap): initFromXBM takes fg, bg args,
29741         remove flip arg.
29743 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
29745         * lisp/emacs-lisp/package.el: Be more careful with the init file.
29746         (package--ensure-init-file): Check that user-init-file is set,
29747         exists, is readable, and is writable.  (Bug#20584)
29748         Also expand the docstring.
29750 2015-05-14  Wilson Snyder  <wsnyder@wsnyder.org>
29752         Sync with upstream verilog-mode revision 6232468
29753         * lisp/progmodes/verilog-mode.el
29754         (verilog-font-lock-grouping-keywords-face)
29755         (verilog-highlight-grouping-keywords): Fix use of face when
29756         `verilog-highlight-grouping-keywords' set.  Reported by Jeff Pompa.
29757         (verilog-auto-reset): Fix AUTORESET to ignore member resets if
29758         parent is reset, bug906.  Reported by Ken Schmidt.
29759         (verilog-auto-inout-module): Add fourth regexp argument to
29760         AUTOINOUTMODULE and AUTOINOUTCOMP for signals to not match, bug856.
29761         Reported by John Tillema.
29762         (verilog-auto-inst-port): Fix AUTOINST interfaces to not show
29763         modport if signal attachment is itself a modport.  Reported by
29764         Matthew Lovell.
29765         (verilog-auto-reset, verilog-auto-sense-sigs): Fix AUTORESET with
29766         always_comb and always_latch, bug844.  Reported by Greg Hilton.
29767         (verilog-at-constraint-p, verilog-beg-of-statement-1): Fix hanging
29768         with many curly-bracket pairs, bug663.
29769         (verilog-set-auto-endcomments): Fix end comments for functions of
29770         type void, etc.  Reported by Alex Reed.
29771         (verilog-do-indent): Fix electric tab deleting form-feeds.  Note
29772         caused by indent-line-to deleting tabls pre 24.5.
29773         (verilog-nameable-item-re): Fix nameable items that can have an
29774         end-identifier to include endchecker, endgroup, endprogram,
29775         endproperty, and endsequence.  Reported by Alex Reed.
29776         (verilog-label-be): When auto-commenting a buffer, consider
29777         auto-comments on all known keywords (not just a subset thereof).
29778         Reported by Alex Reed.
29779         (verilog-auto-end-comment-lines-re)
29780         (verilog-end-block-ordered-re, verilog-set-auto-endcomments):
29781         Automatically comment property/endproperty blocks to match other
29782         similar blocks like sequence/endsequence, function/endfunction, etc.
29783         Reported by Alex Reed.
29784         (verilog-set-auto-endcomments): Detect the function- or task-name
29785         when auto-commenting blocks that lack an explicit portlist.
29786         Reported by Alex Reed.
29787         (verilog-auto, verilog-auto-insert-last): Add AUTOINSERTLAST to
29788         allow post-AUTO user fixups, bug826.  Reported by Dennis Muhlestein.
29789         (verilog-no-indent-begin-re): When `verilog-indent-begin-after-if'
29790         is nil, fix indenting initial/final to match always statements,
29791         bug825.  Reported by Tim Clapp.
29792         (verilog-extended-complete-re): Fix indentation of DPI-C imports
29793         with c_identifiers, and DPI-C imports, bug557.  Reported by ZeDong
29794         Mao and Jason Forkey.
29795         (verilog-read-decls): Fix parsing typed interfaces.  Fix
29796         AUTOINOUTMODPORT missing types.  Reported by Stephan Bourduas.
29797         Fix localparam not being ignored in AUTOINSTPARAM,
29798         bug889.  Reported by Shannon Hill.
29799         (verilog-auto-output-every): Add regexp to AUTOOUTPUTEVERY,
29800         bug793.  Reported by Pierre-David Pfister.
29801         (verilog-auto-arg-format, verilog-auto-arg-ports):
29802         Add verilog-auto-arg-format to support newlines in AUTOARG.
29803         Reported by Jie Xiao.
29804         (verilog-batch-execute-func): Do not batch re-auto files loaded by
29805         Local Variables.  Fix printing "no changes to be saved" with
29806         verilog-batch.  Reported by Dan Dever.
29807         (verilog-auto-inout-module): Fix AUTOINOUTMODULE not inserting
29808         interface-only modules, bug721.  Reported by Dean Hoyt.
29809         Author: Alex Reed <acreed4@gmail.com>
29810         * lisp/progmodes/verilog-mode.el (verilog-beg-of-statement):
29811         Don't treat '<keyword>:<identifier>' as the start of a labeled
29812         statement, bug905.  Reported by Enzo Chi.
29813         (verilog-directive-re, verilog-compiler-directives)
29814         (verilog-keywords): Match full set of IEEE 2012-1800 compiler
29815         directives (plus some extras) when determining indentation, bug
29816         901.  Reported by Bernd Beuster.
29817         (verilog-at-constraint-p): Fix indentation of coverpoint bins if
29818         iff expression doesn't start with word-character, bug900.
29819         (verilog-optional-signed-range-re, verilog-optional-signed-re):
29820         Fix incorrect indentation/alignment of unsigned declarations,
29821         bug897.
29822         (verilog-looking-back, verilog-in-attribute-p): Fix labeling of
29823         always constructs, bug895.
29824         (verilog-calc-1): Fix verilog-mode constraint indentation, bug324.
29825         Reported by Eric Mastromarchi.
29826         (verilog-beg-of-statement): Fix indenting for some forms of
29827         constraintsm bug433.  Reported by Brad Parker.  Fix indentation of
29828         continued assignment incorrect if first line ends with ']', bug437.
29829         Reported by Dan Dever.  Fix indention of cover inside an
29830         ifdef, bug 862.  Reported by Bernd Beuster.  Fix labeling do-while
29831         blocks, bug842.
29832         (verilog-preprocessor-re): Fix fork/end UNMATCHED warning, bug859.
29833         Reported by Kaushal Modi.
29834         (verilog-set-auto-endcomments): Fix endlabel end comments, bug888.
29835         (verilog-backward-token): Fix indenting sensitivity lists with
29836         named events, bug840.  Reed.
29837         (verilog-no-indent-begin-re): Fix `verilog-indent-begin-after-if'
29838         nil not honoring 'forever', 'foreach', and 'do' keywords.
29840 2015-05-14  Paul Eggert  <eggert@cs.ucla.edu>
29842         Check for invalid GTK+ monitor scales
29843         * src/gtkutil.c (xg_get_gdk_scale): Return 1 for invalid scales,
29844         INT_MAX for too-large scales.  All callers changed to assume the
29845         result is valid (Bug#20432).
29846         (xg_frame_set_char_size, xg_update_scrollbar_pos):
29847         Calculate scale only if needed.
29848         Show ASCII approximations instead.
29850 2015-05-14  Eli Zaretskii  <eliz@gnu.org>
29852         Fix daemon crashes when linum-mode is turned on early on
29853         * src/window.c (Fwindow_end): Don't try calling display engine
29854         functions on initial-frame frame.  (Bug#20565)
29856         Fix selective diff browsing in Ediff
29857         * lisp/vc/ediff-util.el (ediff-focus-on-regexp-matches):
29858         Go to the beginning of the region before searching for the
29859         ediff-regexp-focus-* regexps.  (Bug#20568)
29861 2015-05-14  Jan D  <jan.h.d@swipnet.se>
29863         Fixes bug#20142
29864         * src/gtkutil.c (delete_cb): Don't send delete event here, it does
29865         arrive in the main loop, even for Gtk 3 (Bug#20142).
29867         Don't access display after i/o error (Bug#19147).
29868         * src/xterm.c (x_connection_closed): Add third arg ioerror.
29869         If ioerror, set display to 0 (Bug#19147).
29870         (x_error_quitter): Call x_connection_closed with third arg false.
29871         (x_io_error_quitter): Call x_connection_closed with third arg true.
29873         Handle GTK_SCALE, fixes Bug#20432.
29874         * src/gtkutil.c (xg_get_gdk_scale): New function.
29875         (xg_frame_set_char_size)
29876         (x_wm_set_size_hint, xg_get_default_scrollbar_width)
29877         (xg_get_default_scrollbar_height)
29878         (xg_update_horizontal_scrollbar_pos): Take GTK_SCALE in to account
29879         when setting sizes (Bug#20432).
29881 2015-05-13  Leo Liu  <sdl.web@gmail.com>
29883         * lisp/emacs-lisp/generator.el (cps--gensym): Fix.
29885 2015-05-13  Glenn Morris  <rgm@gnu.org>
29887         Fix bootstrap (void function cl-member).
29888         * lisp/emacs-lisp/cl-lib.el: Load cl-seq if no cl-loaddefs file.
29889         * lisp/emacs-lisp/cl-seq.el: Provide a feature.
29891 2015-05-13  Stefan Monnier  <monnier@iro.umontreal.ca>
29893         * lisp/loadup.el ("emacs-lisp/cl-generic"): Preload
29894         * src/lisp.mk (lisp): Add emacs-lisp/cl-generic.elc.
29895         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method):
29896         Avoid defalias for closures which are not immutable.
29897         (cl--generic-prefill-dispatchers): New macro.  Use it to prefill
29898         the dispatchers table with various entries.
29899         * lisp/emacs-lisp/ert.el (emacs-lisp-mode-hook):
29900         * lisp/emacs-lisp/seq.el (emacs-lisp-mode-hook): Use add-hook.
29902 2015-05-13  Eli Zaretskii  <eliz@gnu.org>
29904         Improve tagging of C bindings in DEFVAR_*
29905         * src/Makefile.in (TAGS): Add --regex options to tag the C binding
29906         from DEFVAR_*.
29908 2015-05-13  Paul Eggert  <eggert@cs.ucla.edu>
29910         * src/editfns.c (Fformat): Fix use-after-free bug (Bug#20548).
29912 2015-05-12  Glenn Morris  <rgm@gnu.org>
29914         * lisp/progmodes/tcl.el (tcl-filter):
29915         Handle comint-prompt-read-only like gud.el does.  (Bug#20549)
29917         Add basic VC push support
29918         * lisp/vc/vc.el (vc-push): New autoloaded command.
29919         * lisp/vc/vc-hooks.el (vc-prefix-map, vc-menu-map): Add vc-push.
29920         * lisp/vc/vc-bzr.el (vc-bzr--pushpull): New, factored from vc-bzr-pull.
29921         (vc-bzr-pull): Reimplement using vc-bzr--pushpull.
29922         (vc-bzr-push): New.
29923         * lisp/vc/vc-git.el (vc-git--pushpull): New, factored from vc-git-pull.
29924         (vc-git-pull): Reimplement using vc-git--pushpull.
29925         (vc-git-push): New.
29926         * lisp/vc/vc-hg.el (vc-hg--pushpull): New, factored from vc-hg-pull.
29927         (vc-hg-pull, vc-hg-push): Reimplement using vc-hg--pushpull.
29928         * doc/emacs/maintaining.texi (Pulling / Pushing):
29929         Rename from "VC Pull".  Mention pushing.
29930         (VC With A Merging VCS, VC Change Log): Update xrefs.
29931         (Branches): Update menu.
29932         * doc/emacs/emacs.texi: Update menu.
29933         * etc/NEWS: Mention this.
29935 2015-05-12  Nicolas Petton  <nicolas@petton.fr>
29937         Improve the seq pcase pattern and the `seq-let' macro
29938         * lisp/emacs-lisp/seq.el: The pcase pattern now matches only if the
29939         object is a sequence, and binds each element of ARGS to the
29940         corresponding element of the sequence.
29942 2015-05-12  Eli Zaretskii  <eliz@gnu.org>
29944         Fix tags created from DEFVAR_* declarations in C
29945         * src/Makefile.in (TAGS): Improve the --regex argument to etags,
29946         to make tags extracted from DEFVAR_* declarations more accurate.
29948         Add a test suite for etags
29949         * test/etags/: New test suite, adapted from
29950         http://fly.isti.cnr.it/pub/software/unix/etags-regression-test.tar.bz2,
29951         whose original author is Francesco Potortì <pot@gnu.org>.
29953         Fix tagging of symbols in C enumerations
29954         * lib-src/etags.c (consider_token): Don't tag symbols in
29955         expressions that assign values to enum constants.  See
29956         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00291.html
29957         for details.
29958         (C_entries): Reset fvdef to fvnone after processing a preprocessor
29959         conditional and after a comma outside of parentheses.
29961 2015-05-12  Glenn Morris  <rgm@gnu.org>
29963         * lisp/url/url-handlers.el (url-file-name-completion)
29964         (url-file-name-all-completions): Silence compiler.
29966         * lisp/emacs-lisp/chart.el (chart-axis-draw): Replace obsolete alias.
29968         * lisp/play/dunnet.el (dun-dos-boot-msg): Fix time.  (Bug#20554)
29970 2015-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
29972         * lisp/emacs-lisp/cl-generic.el: Add dispatch on &context arguments
29973         (cl--generic-mandatory-args): Remove.
29974         (cl--generic-split-args): New function.
29975         (cl-generic-define, cl--generic-lambda): Use it.
29976         (cl-generic-define-method): Use it as well, and add support for
29977         context args.
29978         (cl--generic-get-dispatcher): Handle &context dispatch.
29979         (cl--generic-cache-miss): `dispatch-arg' can now be a
29980         context expression.
29981         (cl--generic-dispatchers): Pre-fill.
29982         * test/automated/cl-generic-tests.el (sm-generic-test-12-context):
29983         New test.
29985 2015-05-11  Glenn Morris  <rgm@gnu.org>
29987         * make-dist: Abort if "make ChangeLog" fails.  Add "--no-changelog".
29989 2015-05-11  Stefan Monnier  <monnier@iro.umontreal.ca>
29991         * lisp/term/xterm.el: Fix xterm-paste handling for rxvt
29992         * lisp/term/rxvt.el: Require term/xterm.
29993         (rxvt-function-map): Use xterm-rxvt-function-map.
29994         (rxvt-standard-colors): Move before first use.
29995         (terminal-init-rxvt): Use xterm--push-map and
29996         xterm-register-default-colors.
29997         (rxvt-rgb-convert-to-16bit, rxvt-register-default-colors): Remove.
29998         * lisp/term/xterm.el (xterm-rxvt-function-map): New var.
29999         Move shared bindings between rxvt and xterm to it.
30000         (xterm-function-map): Use it.  Move the xterm-paste binding to
30001         xterm-rxvt-function-map (bug#20444).
30002         (xterm-standard-colors): Move before first use.
30003         (xterm--push-map): New function.
30004         (xterm-register-default-colors): Take standard colors as argument.
30005         (terminal-init-xterm): Use it.  Adjust call to
30006         xterm-register-default-colors.
30008 2015-05-11  Glenn Morris  <rgm@gnu.org>
30010         * lisp/term/x-win.el: Quieten --without-x compilation.
30011         (x-own-selection-internal, x-disown-selection-internal)
30012         (x-selection-owner-p, x-selection-exists-p, x-get-selection-internal):
30013         Declare.
30015         * Makefile.in (emacslog): Remove srcdir.
30016         (ChangeLog): Update for the above.
30018 2015-05-10  Fabián Ezequiel Gallina  <fgallina@gnu.org>
30020         python.el: better limit for looking-back calls
30021         * lisp/progmodes/python.el (python-shell-accept-process-output):
30022         Use last comint prompt start as limit for looking-back.
30024 2015-05-10  Stefan Monnier  <monnier@iro.umontreal.ca>
30026         CEDET (srecode-insert-fcn): Fix use of oref on a class
30027         * lisp/cedet/srecode/insert.el (srecode-insert-fcn): Fix use of oref
30028         on a class.  Reported by Pierre Lorenzon.
30029         (srecode-template-inserter-point): Remove declaration.
30031         CEDET (srecode-create-dictionary): Avoid obsolete object name
30032         * lisp/cedet/srecode/dictionary.el (srecode-create-dictionary):
30033         Don't use a symbol as an object name.  Reported by Pierre Lorenzon.
30035 2015-05-10  Paul Eggert  <eggert@cs.ucla.edu>
30037         C-x 8 shorthands for curved quotes, Euro, etc.
30038         Although C-x 8 lets you insert arbitrary Unicode characters,
30039         it's awkward to use this to insert commonly used symbols such as curved
30040         quotes, the Euro symbol, etc.  This patch adds simpler sequences for
30041         characters commonly found in English text and in basic math.
30042         For example, assuming the Alt key works on your keyboard and iso-transl
30043         is loaded, one can now type "A-[" instead of "A-RET LEFT SIN TAB RET"
30044         to get the character "‘" (U+2018 LEFT SINGLE QUOTATION MARK).
30045         (Bug#20499)
30046         * doc/emacs/mule.texi (Unibyte Mode):
30047         A few other printing characters now work too.
30048         * etc/NEWS: Document this.
30049         * lisp/international/iso-transl.el (iso-transl-char-map):
30050         Also support the following characters:
30051         ‐ ‑ ‒ – — ― ‘ ’ “ ” † ‡ • ′ ″ € № ← → ↔ − ≈ ≠ ≤ ≥
30053 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
30055         Add xref-find-regexp
30056         * lisp/progmodes/xref.el (xref-find-function): Describe the
30057         `matches' action.
30058         (xref-find-regexp): New command, using it.
30059         (xref-collect-references): Rename to xref-collect-matches.
30060         (xref--collect-reference): Rename to xref--collect-match.
30061         (xref-collect-matches, xref--collect-match): Accept new argument,
30062         KIND.  Update accordingly.
30063         (xref--regexp-to-extended): New function.
30064         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Support the
30065         `matches' action.
30066         (elisp--xref-find-matches): Accept new argument.  Resolve a FIXME.
30067         * lisp/progmodes/etags.el (etags-xref-find):
30068         Support the `matches' action.
30069         (etags--xref-find-matches): New function.
30071 2015-05-10  Glenn Morris  <rgm@gnu.org>
30073         * Makefile.in: Fixes for recent change-history changes.
30074         (change-history-nocommit): Update footer regexp.
30075         Ensure output script stays executable.
30077 2015-05-10  Nicolas Petton  <nicolas@petton.fr>
30079         New version of `seq-let' based on a pcase pattern
30080         * lisp/emacs-lisp/seq.el (seq-let): Define the macro in terms of a
30081         pcase pattern if `pcase-defmacro' is defined (Emacs>=25.1).
30083 2015-05-10  Przemysław Wojnowski  <esperanto@cumego.com>
30085         Add basic HTML5 tags and a template
30086         * lisp/textmodes/sgml-mode.el: Basic HTML5 support.
30087         (html-tag-alist): Add HTML5 tags.
30088         (html-tag-help): Add new tags descriptions.
30089         (html-navigational-links): Template for nav links.
30090         (html-html5-template): Template for a HTML5 page.
30092 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
30094         semantic/symref/grep: Don't use word boundaries
30095         * lisp/cedet/semantic/symref/grep.el
30096         (semantic-symref-perform-search): Instead of wrapping input in
30097         word boundaries, check that the characters before and after are
30098         not word constituents.
30100         semantic/symref/grep: Support regexp search
30101         * lisp/cedet/semantic/symref.el
30102         (semantic-symref-hit-to-tag-via-buffer): Don't regexp-quote when
30103         the search type is regexp.
30104         * lisp/cedet/semantic/symref/grep.el
30105         (semantic-symref-perform-search): Support the regexp search type.
30106         Pass -E to Grep when it's used.
30108         semantic-symref-regexp: Allow to input an arbitrary string
30109         * lisp/cedet/semantic/symref/list.el (semantic-symref-regexp):
30110         Allow to input an arbitrary string interactively.
30112         Remove tag-symbol-match-p from etags-xref-find-definitions-tag-order
30113         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
30114         Remove tag-symbol-match-p from the default value
30115         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00292.html).
30117         Declare find-tag obsolete
30118         * lisp/progmodes/etags.el (find-tag): Declare obsolete in favor of
30119         xref-find-definitions.
30121 2015-05-10  Jan D  <jan.h.d@swipnet.se>
30123         Draw composite string correctly (Bug#20537)
30124         * src/nsterm.m (ns_draw_composite_glyph_string_foreground):
30125         New function.
30126         (ns_draw_glyph_string): Call it.
30128 2015-05-09  Eli Zaretskii  <eliz@gnu.org>
30130         Avoid infloop in ERC
30131         * lisp/simple.el (line-move-to-column): Ignore field boundaries
30132         while computing line beginning position.  (Bug#20498)
30134 2015-05-08  Glenn Morris  <rgm@gnu.org>
30136         * Makefile.in (ChangeLog): No longer pass "srcprefix"; cd instead.
30137         * build-aux/gitlog-to-emacslog: Check called from right directory.
30138         (srcprefix): Remove.
30140         * build-aux/gitlog-to-emacslog: Get rid of "distprefix".
30141         * Makefile.in (ChangeLog): No longer pass "distprefix".
30142         * make-dist: Update "make ChangeLog" syntax for the above change.
30144         * build-aux/gitlog-to-emacslog: Don't hard-code "ChangeLog.2".
30145         * Makefile.in (ChangeLog): Pass -n to gitlog-to-emacslog.
30147         * build-aux/gitlog-to-emacslog: Add "for earlier changes" to footer.
30149         Add command-line option-parsing to gitlog-to-emacslog
30150         * build-aux/gitlog-to-emacslog: Add command-line options.
30151         By default, refuse to remove an existing output file.
30152         * Makefile.in (CHANGELOG): Update default.
30153         (ChangeLog): Do not test for existing file.
30154         (change-history-nocommit): Ensure temp file does not exist.
30156         Quieten --without-x compilation
30157         * lisp/term/common-win.el: Provide a feature.
30158         * lisp/term/x-win.el (term/common-win): Require it.
30160         * lisp/dired-aux.el (dired-do-print): Require lpr.
30162         Quieten compilation, eg in --without-x builds
30163         * lisp/dired-aux.el (lpr-printer-switch):
30164         * lisp/frame.el (tool-bar-height):
30165         * lisp/linum.el (font-info):
30166         * lisp/window.el (font-info, overflow-newline-into-fringe)
30167         (tool-bar-height):
30168         * lisp/emacs-lisp/package-x.el (tar-data-buffer):
30169         * lisp/gnus/gnus-util.el (iswitchb-mode):
30170         * lisp/mail/rmailmm.el (libxml-parse-html-region):
30171         * lisp/net/nsm.el (gnutls-peer-status)
30172         (gnutls-peer-status-warning-describe):
30173         * lisp/net/shr.el (libxml-parse-xml-region):
30174         * lisp/url/url-http.el (gnutls-peer-status): Declare.
30176 2015-05-08  Stefan Monnier  <monnier@iro.umontreal.ca>
30178         CEDET (srecode-pop, srecode-peek): Don't use `subclass'
30179         * lisp/cedet/srecode/insert.el (srecode-pop, srecode-peek): Don't use
30180         `subclass' since they're never called with a class.
30181         (srecode-insert-method, srecode-insert-subtemplate): Avoid obsolete
30182         srecode-dictionary-child-p.
30184 2015-05-08  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
30186         * lisp/help.el (help--binding-locus): Document argument POSITION.
30187         (Bug#20530)
30189 2015-05-08  Paul Eggert  <eggert@cs.ucla.edu>
30191         Merge from gnulib
30192         * doc/misc/texinfo.tex: Get latest version.
30194 2015-05-08  Oleh Krehel  <ohwoeowho@gmail.com>
30196         ffap.el (ffap-read-file-or-url): Fix completing-read call
30197         * lisp/ffap.el (ffap-read-file-or-url): The HIST argument of
30198         `completing-read' should be a symbol.
30200 2015-05-08  Eli Zaretskii  <eliz@gnu.org>
30202         Verify file modifications by other programs
30203         * src/filelock.c (lock_file): Check whether the file was modified
30204         since it was visited even if 'create-lockfiles' is nil.  (Bug#18828)
30206         Fix keyboard macros that include function keys
30207         * src/keyboard.c (read_char_minibuf_menu_prompt): Record function
30208         keys in the macro before returning.  (Bug#20454)
30210 2015-05-08  Glenn Morris  <rgm@gnu.org>
30212         * build-aux/gitlog-to-changelog: Treat "Tiny-change" like
30213         "Copyright-paperwork-exempt".  (Bug#20324)
30215         * lisp/vc/log-edit.el: Handle "(tiny change)".  (Bug#20324)
30216         (log-edit-rewrite-tiny-change): New variable.
30217         (log-edit-insert-changelog): Maybe add "Copyright-paperwork-exempt".
30218         (log-edit-changelog-ours-p): Set log-edit-author to a cons.
30219         * etc/NEWS: Mention this.
30221         * lisp/calc/calc.el (math-zerop): Declare.
30223         * lisp/emacs-lisp/eieio-opt.el (help-fns-short-filename): Declare.
30225 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
30227         * lisp/emacs-lisp/subr-x.el (if-let): Fix debug spec.
30228         Support the case when BINDINGS is a single tuple.  (Bug#20525)
30230         * etc/NEWS: Fix typo in previous commit
30231         (14bb519f1034ddb38ce375cbad7095d9b07f8b26).
30233 2015-05-07  Jan D  <jan.h.d@swipnet.se>
30235         * configure.ac: Warn for multiple display crash for all Gtk+ versions.
30236         Output URL to Gtk+ bug (Bug#20452).
30238         * lisp/term/ns-win.el (ns-paste-secondary): Use gui-get-selection.
30240 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
30242         * lisp/emacs-lisp/package.el: New "external" package status.
30243         An external package is any installed package that's not built-in
30244         and not from `package-user-dir', which usually means it's from an
30245         entry in `package-directory-list'.  They are treated much like
30246         built-in packages, in that they cannot be through the Package Menu
30247         deleted and are not considered for upgrades.
30248         (package-desc-status): Identify if a package is installed outside
30249         `package-user-dir'.
30250         (package-menu--print-info-simple)
30251         (package-menu--status-predicate): Add support for it.
30252         * etc/NEWS: Document it.
30254 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
30256         * lisp/mail/rmail.el: Use lexical-binding.
30257         (rmail-bury): Remove unused var `buffer-to-bury'.
30258         (rmail-get-new-mail): Remove unused vars `opoint' and `success'.
30259         (rmail-parse-url): Remove unused var `proto', `user', and `host'.
30260         (rmail-unrmail-new-mail-maybe): Remove unused var `new-file'.
30261         (rmail-insert-inbox-text): Remove unused var `movemail'.
30262         (rmail-add-mbox-headers): Remove unused var `limit'.
30263         (rmail-undelete-previous-message): Remove unused var `value'.
30264         (rmail-reply): Remove unused vars `resent-to', `resent-cc',
30265         `resent-reply-to'.
30266         (rmail-mime-mbox-buffer, rmail-mime-view-buffer): Declare.
30267         (rmail-restore-desktop-buffer): Rename arguments.
30269 2015-05-06  Glenn Morris  <rgm@gnu.org>
30271         * Makefile.in (change-history-commit): Add missing piece of previous.
30273         Avoid unnecessary bumping of Makefile.in's timestamp
30274         * Makefile.in (gen_origin): Move to gitlog-to-emacslog.
30275         (emacslog): New variable.
30276         (ChangeLog): Use $emacslog.  Don't pass $gen_origin.
30277         (unchanged-history-files): Use $emacslog rather than Makefile.in.
30278         (change-history-nocommit): Store hash in $emacslog.
30279         * build-aux/gitlog-to-emacslog (gen_origin): Move default here.
30280         * admin/update_autogen (changelog_files): Update for the above.
30282         * Makefile.in: Don't always insist on removing existing "ChangeLog".
30283         (CHANGELOG): New variable.
30284         (no-ChangeLog): Remove.
30285         (ChangeLog): Replace "no-ChangeLog"; pass output file to script.
30286         (change-history-nocommit): Use a temp file rather than insisting
30287         on deletion of any existing "ChangeLog".
30289         * build-aux/gitlog-to-emacslog: Allow specification of output.
30291         * admin/update_autogen: Add option to update ChangeLog.
30292         (usage): Mention -H.
30293         (changelog_flag, changelog_n, changelog_files): New variables.
30294         (main): Check for -H, and maybe run change-history-nocommit.
30296 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
30298         * lisp/subr.el (delete-dups): Pre-size the hashtable.
30300         * lisp/emacs-lisp/cl.el (define-modify-macro): Make sure
30301         cl--arglist-args is defined (bug#20517).
30303 2015-05-06  Glenn Morris  <rgm@gnu.org>
30305         * Makefile.in (change-history-nocommit): New.
30307 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
30309         * lisp/cedet/pulse.el (pulse-momentary-unhighlight): Only cancel
30310         timer when it is non-nil
30311         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00223.html).
30313 2015-05-06  Glenn Morris  <rgm@gnu.org>
30315         Quieten CEDET compilation
30316         * lisp/cedet/semantic/db-el.el (semanticdb-elisp-sym->tag):
30317         Invert fboundp test to quieten on current Emacs.
30318         * lisp/cedet/ede/config.el (ede-shell-run-something)
30319         (semanticdb-file-table-object, semanticdb-needs-refresh-p)
30320         (semanticdb-refresh-table): Declare.
30321         (ede-preprocessor-map): Require semantic/db.
30323         Quieten cc-mode compilation
30324         * lisp/progmodes/cc-awk.el (c-forward-sws):
30325         * lisp/progmodes/cc-cmds.el (c-forward-subword, c-backward-subword):
30326         Declare.
30328 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
30330         * lisp/subr.el (delete-dups): Avoid nreverse.
30332 2015-05-06  Artur Malabarba  <bruce.connor.am@gmail.com>
30334         * lisp/subr.el (delete-dups): Make it destructive again.
30336 2015-05-06  Paul Eggert  <eggert@cs.ucla.edu>
30338         * doc/lispref/sequences.texi (Sequence Functions): Fix quoting.
30340 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
30342         * lisp/emacs-lisp/testcover.el: Don't use edebug--read (bug#20487).
30343         * lisp/emacs-lisp/testcover.el: Use lexical-binding.
30344         (testcover--read): Rename from testcover-read.  Change calling
30345         convention.  Use edebug-read-and-maybe-wrap-form now that edebug-read
30346         is gone.
30347         (testcover-start): Use add-function.  Move edebug-all-defs binding to
30348         testcover--read.
30349         (testcover-this-defun): Tighten scope of edebug-all-defs binding.
30350         (testcover-mark): Remove unused var `item'.
30351         * src/lread.c (syms_of_lread): Default load-read-function to `read'.
30353 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
30355         * lisp/subr.el (delete-dups): When there are more than 100 candidates,
30356           use a hash table.  This can result in ~500 times speed-up for typical
30357           collections of size 5000, like that of `load-library'.
30359 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
30361         CEDET: Avoid `oref' on classes in a few more cases
30362         * lisp/cedet/ede/generic.el (ede-find-target):
30363         * lisp/cedet/ede.el (ede-project-forms-menu): Avoid `oref' on classes.
30364         * lisp/cedet/semantic/bovine/gcc.el (semantic-gcc-setup): Remove unused
30365         var `prefix'.
30367         * lisp/cedet/semantic/symref/grep.el: Fix unused var warnings.
30368         (grepflags, greppattern): Declare.
30369         (semantic-symref-perform-search): Remove unused var `pat'.
30371         CEDET (srecode-compile-inserter): Avoid `oref' on classes
30372         * lisp/cedet/srecode/compile.el (srecode-compile-inserter):
30373         Avoid `oref' on classes (bug#20491).
30374         (srecode-compile-split-code): Remove unused var `key'.
30376 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
30378         Clean up pulse.el a little
30379         * lisp/cedet/pulse.el (pulse): Remove.
30380         (pulse-momentary-timer): Save instead of the stop time.
30381         (pulse-momentary-highlight-overlay):
30382         Call pulse-momentary-unhighlight first thing.
30383         Treat pulse-momentary-overlay as a single value, not a list.
30384         Save the created timer.  Only pass the stop time to the timer.
30385         (pulse-tick): Update accordingly.
30386         (pulse-momentary-unhighlight): Treat pulse-momentary-overlay as a
30387         single value.  Cancel the timer.
30389 2015-05-06  Tassilo Horn  <tsdh@gnu.org>
30391         * lisp/textmodes/reftex-cite.el (reftex-format-bib-entry):
30392         Support the biblatex journaltitle field.
30394 2015-05-05  Glenn Morris  <rgm@gnu.org>
30396         Minor declare-function improvement
30397         * lisp/emacs-lisp/bytecomp.el
30398         (byte-compile-macroexpand-declare-function):
30399         Handle declarations after calls.  (Bug#20509)
30401         * lisp/progmodes/js.el (js--optimize-arglist): Remove declaration.
30403         * lisp/w32-fns.el (w32-shell-name): Silence compiler.
30405 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
30407         Pulse using a timer
30408         * lisp/cedet/pulse.el (pulse-momentary-stop-time): New variable.
30409         (pulse-momentary-highlight-overlay): Set up the timer instead of
30410         calling `pulse'
30411         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/).
30412         (pulse-tick): New function.
30413         (pulse-momentary-unhighlight): Cut off the stop time.
30414         (pulse-delay): Update the docstring WRT to not using sit-for.
30416         Add semantic/symref/grep file patterns for ruby-mode
30417         * lisp/cedet/semantic/symref/grep.el
30418         (semantic-symref-filepattern-alist): Add patterns for ruby-mode.
30419         Clarify the docstring.
30421         Don't require match
30422         * lisp/progmodes/xref.el (xref--read-identifier): Don't require
30423         match.  That doesn't work for every command, and some identifier
30424         completion tables are bound to be imperfect anyway.
30426 2015-05-05  Stefan Monnier  <monnier@iro.umontreal.ca>
30428         * lisp/cedet/semantic/grammar.el: Fix compiler warnings (bug#20505).
30429         (semantic-grammar--template-expand): New function.
30430         (semantic-grammar-header, semantic-grammar-footer): Use it.
30431         (semantic-grammar--lex-block-specs): Remove unused var `block-spec'.
30432         (semantic-grammar-file-regexp): Refine regexp.
30433         (semantic-grammar-eldoc-get-macro-docstring):
30434         Use elisp-get-fnsym-args-string when available.
30435         (semantic-idle-summary-current-symbol-info): Use new elisp-* names
30436         instead of the old eldoc-* names.
30437         * lisp/emacs-lisp/eldoc.el (eldoc-docstring-format-sym-doc): Move back
30438         from elisp-mode.el.  Tweak calling convention.
30439         * lisp/progmodes/elisp-mode.el (package-user-dir): Declare.
30440         (elisp-get-fnsym-args-string): Add `prefix' argument.  Rename from
30441         elisp--get-fnsym-args-string.
30442         (elisp--highlight-function-argument): Add `prefix' arg.
30443         (elisp-get-var-docstring): Rename from elisp--get-var-docstring.
30444         (elisp--docstring-format-sym-doc): Move back to eldoc.el.
30446 2015-05-05  Glenn Morris  <rgm@gnu.org>
30448         * lisp/help-fns.el (describe-function-1):
30449         Handle builtins with advertised calling conventions.  (Bug#20479)
30451 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
30453         Merge branch 'seq-let'
30455         Update `seq-let' documentation
30456         * doc/lispref/sequences.texi: Update the documentation of `seq-let'
30457         with the support of  `&rest'.
30459         Add support for &rest in `seq-let'
30460         * lisp/emacs-lisp/seq.el (seq--make-bindings): Add support for `&rest'
30461         in the argument list.
30462         * test/automated/seq-tests.el: Add a test for parsing and binding
30463         `&rest' in `seq-let'.
30465 2015-05-05  Pierre Lorenzon  <devel@pollock-nageoire.net>  (tiny change)
30467         * lisp/emacs-lisp/eieio-custom.el (eieio-object-value-get):
30468         Add missing increment (Bug#20467).
30469         (eieio-object-value-create): Adjust to new slots representation
30470         (Bug#20467).
30471         (eieio-object-value-create): Fix missed adjustment to new
30472         representation of slots metadata.
30474 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
30476         * lisp/emacs-lisp/seq.el (seq--make-bindings): Improve the docstring.
30478 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
30480         Work around "Attempt to modify read-only object"
30481         * lisp/progmodes/elisp-mode.el (elisp--xref-format): Extract from
30482         elisp--xref-find-definitions, to work around "Attempt to modify
30483         read-only object" error.
30485         Only skip some variables that have function counterparts
30486         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
30487         Only skip minor-mode-named variable if it's defined in a Lisp
30488         file, and it's in minor-mode-list (bug#20506).
30489         * test/automated/elisp-mode-tests.el
30490         (elisp-xref-finds-both-function-and-variable)
30491         (elisp-xref-finds-only-function-for-minor-mode): New tests.
30493 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
30495         * lisp/progmodes/xref.el (xref--location-at-point): Revert the
30496         previous change.
30497         (xref--insert-xrefs): Buttonize the whole line, including the
30498         number at the beginning.
30500         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
30501         Make sure we're inside the let bindings.
30502         * test/automated/elisp-mode-tests.el
30503         (elisp-completes-functions-after-let-bindings): New test.
30505 2015-05-04  Glenn Morris  <rgm@gnu.org>
30507         * lisp/cedet/semantic/grammar.el (eldoc-function-argstring)
30508         (eldoc-docstring-format-sym-doc, eldoc-last-data-store)
30509         (eldoc-get-fnsym-args-string, eldoc-get-var-docstring):
30510         Remove outdated declarations.
30512         Replace instances of "(eval-when-compile (autoload ...))"
30513         * lisp/gnus/gnus-art.el (nneething-get-file-name):
30514         Declare rather than autoload.
30515         * lisp/gnus/gnus-async.el (gnus-html-prefetch-images):
30516         Remove pointless autoload.
30517         * lisp/gnus/gnus-sync.el (gnus-group-topic): Autoload at run-time.
30518         (gnus-topic-create-topic, gnus-topic-enter-dribble):
30519         Declare rather than autoload.
30520         * lisp/gnus/mm-archive.el (gnus-recursive-directory-files)
30521         (mailcap-extension-to-mime): Autoload at run-time.
30522         * lisp/gnus/mm-util.el (latin-unity-massage-name)
30523         (latin-unity-maybe-remap, latin-unity-representations-feasible-region)
30524         (latin-unity-representations-present-region):
30525         Declare rather than autoload.
30526         * lisp/gnus/mml-smime.el (epg-make-context)
30527         (epg-passphrase-callback-function): Autoload at run-time.
30528         (epg-context-set-signers, epg-context-result-for)
30529         (epg-new-signature-digest-algorithm)
30530         (epg-verify-result-to-string, epg-list-keys, epg-verify-string)
30531         (epg-sign-string, epg-encrypt-string)
30532         (epg-context-set-passphrase-callback, epg-sub-key-fingerprint)
30533         (epg-configuration, epg-expand-group, epa-select-keys):
30534         Declare rather than autoload.
30535         * lisp/gnus/nnir.el (nnimap-change-group, nnimap-make-thread-query):
30536         Autoload at run-time.
30537         (gnus-group-topic-name, nnimap-buffer, nnimap-command)
30538         (gnus-registry-get-id-key, gnus-registry-action):
30539         Declare rather than autoload.
30540         * lisp/gnus/nnmail.el (mail-send-and-exit): Autoload at run-time.
30541         * lisp/gnus/spam.el (spam-stat-buffer-change-to-non-spam)
30542         (spam-stat-buffer-change-to-spam, spam-stat-buffer-is-non-spam)
30543         (spam-stat-buffer-is-spam, spam-stat-load, spam-stat-save)
30544         (spam-stat-split-fancy): Remove pointless autoloads.
30545         * lisp/net/mairix.el: Load gnus-util when compiling.
30546         (gnus-group-read-ephemeral-group, gnus-summary-toggle-header)
30547         (message-field-value): Declare rather than autoload.
30548         (mairix-gnus-ephemeral-nndoc, mairix-gnus-fetch-field):
30549         Check gnus-alive-p is fbound.
30550         (vm-quit, vm-visit-folder, vm-select-folder-buffer)
30551         (vm-check-for-killed-summary, vm-error-if-folder-empty)
30552         (vm-get-header-contents, vm-select-marked-or-prefixed-messages):
30553         Declare rather than autoload.
30555         * lisp/gnus/mm-view.el (epg-decrypt-string): Autoload.
30557         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
30558         (epg-sub-key-capability, epg-sub-key-validity): Fix declarations.
30560         * lisp/progmodes/elisp-mode.el (xref-collect-references): Declare.
30562         * lisp/emacs-lisp/debug.el (help-xref-interned): Update declaration.
30564         * lisp/allout.el (epg-user-id-string, epg-key-user-id-list):
30565         * lisp/emacs-lisp/package.el (epg-signature-status):
30566         Fix declarations.
30568         * lisp/play/gametree.el (gametree-show-children-and-entry)
30569         (gametree-apply-layout, gametree-mouse-show-subtree)
30570         (gametree-mouse-hide-subtree): Replace obsolete outline aliases.
30572         * lisp/emacs-lisp/check-declare.el (check-declare-verify):
30573         Handle cl-defgeneric, cl-defmethod.
30575 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
30577         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions):
30578         Highlight both type and symbol name.
30580         Insert, highlight and align line numbers in xref output
30581         * lisp/progmodes/etags.el (xref-location-line): Specialize for
30582         xref-etags-location.
30583         * lisp/progmodes/xref.el (xref-location-line): New generic method.
30584         (xref-file-location): Add reader for the line slot.
30585         (xref--location-at-point): Skip to the `xref-location' property.
30586         (xref--collect-reference): Drop the line number from description.
30587         (xref--insert-xrefs): Insert, highlight and align line numbers.
30589 2015-05-04  Daniel Colascione  <dancol@dancol.org>
30591         * lisp/simple.el (save-mark-and-excursion--save)
30592         (save-mark-and-excursion--restore): Fix previous commit
30593         (255a011f0ecf004b31c59945b10154b10fac3af1).
30595 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
30597         Don't pulse the indentation, or the newline
30598         * lisp/cedet/pulse.el (pulse-lighten-highlight)
30599         (pulse-reset-face): Fall back to the inherited background
30600         attribute in FACE.
30601         (pulse-momentary-highlight-region): Add autoload cookie.
30602         * lisp/progmodes/xref.el (xref--maybe-pulse): Don't highlight the
30603         indentation, or the newline, if the line's non-empty
30604         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00118.html).
30606 2015-05-04  Daniel Colascione  <dancol@dancol.org>
30608         Add `save-mark-and-excursion', which has the old
30609         `save-excursion' behavior
30610         * doc/lispref/positions.texi (Excursions):
30611         Document `save-mark-and-excursion'.
30612         * lisp/font-lock.el (font-lock-fontify-block):
30613         Use `save-mark-and-excursion' instead of `save-excursion',
30614         restoring Emacs 24 behavior.
30615         * lisp/simple.el (save-mark-and-excursion--save)
30616         (save-mark-and-excursion--restore): New functions.
30617         (save-mark-and-excursion): New user macro.
30618         * src/editfns.c (Fsave_excursion): Mention `save-mark-and-excursion'
30619         in `save-excursion' documentation.
30621 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
30623         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
30624         Classify lone symbol inside let varlist as variable.
30625         * test/automated/elisp-mode-tests.el
30626         (completest-variables-in-let-bindings): New test.
30628         Add xref-pulse-on-jump
30629         * lisp/cedet/pulse.el (pulse-momentary-highlight-one-line):
30630         Add autoload cookie.
30631         * lisp/progmodes/xref.el (xref-pulse-on-jump): New option.
30632         (xref--maybe-pulse): New function.
30633         (xref-pop-marker-stack, xref--pop-to-location)
30634         (xref--display-position): Use it.
30635         (xref--location-at-point): Use back-to-indentation.
30637 2015-05-04  Stefan Monnier  <monnier@iro.umontreal.ca>
30639         lisp/org/org-{macs,list}.el: Fix lexical warnings
30640         * lisp/org/org-list.el (org-list-struct): Remove unused var `ind'.
30641         (org-list-get-next-item, org-list-get-prev-item)
30642         (org-list-get-children): Mark unused arg `struct'.
30643         (org-list-use-alpha-bul-p): Remove unused var `bul'.
30644         (org-toggle-checkbox): Mark unused var.
30645         (org-update-checkbox-count): Remove unused var `box-num'.
30646         (org-adapt-indentation): Declare.
30647         (org-list-parse-list): Declare var instead of adding a dummy duplicate.
30648         (org-list-send-list): Remove unused var `txt'.
30649         (org-list-to-latex, org-list-to-texinfo): Mark unused arg `params'.
30650         (org-list-to-subtree): Add prefix to dyn-bind var, and declare them.
30651         * lisp/org/org-macs.el: Use `declare'.
30652         (org-with-limited-levels): Declare dyn-bound vars.
30654 2015-05-04  Eli Zaretskii  <eliz@gnu.org>
30656         Fix minor issues with CEDET on MS-Windows
30657         * lisp/cedet/semantic/symref/idutils.el
30658         (semantic-symref-parse-tool-output-one-line): Fix the search
30659         regexp to match MS-Windows file names with drive letters.
30660         (Bug#19468)
30661         * lisp/cedet/semantic/symref/grep.el
30662         (semantic-symref-grep-use-template): Remove "--color=always" from
30663         Grep switches on MS-Windows.
30664         (semantic-symref-grep-shell): Use shell-file-name as the default
30665         value, so this works not only on Posix platforms.
30666         (semantic-symref-perform-search): Use shell-quote-argument instead
30667         of literal '..' for portable quoting of Grep command-line
30668         argument.  Use shell-command-switch instead of a literal "-c".
30669         * lisp/cedet/semantic/bovine/gcc.el
30670         (semantic-gcc-get-include-paths): Use file-name-absolute-p to test
30671         for an absolute file name in a portable way.
30673 2015-05-04  Artur Malabarba  <bruce.connor.am@gmail.com>
30675         * lisp/emacs-lisp/package.el: Remove `package--silence' variable.
30676         (package-import-keyring, package-refresh-contents)
30677         (package-compute-transaction, package--save-selected-packages)
30678         (package-install-from-archive, package-delete)
30679         (package-menu--perform-transaction): Use `inhibit-message' instead.
30680         (package--compile): Set `warning-minimum-level' to :error.
30682 2015-05-03  Stefan Monnier  <monnier@iro.umontreal.ca>
30684         * lisp/term/screen.el (xterm-screen-extra-capabilities): New custom.
30685         (terminal-init-screen): Use it (bug#20356).
30686         * lisp/term/xterm.el: Provide `term/xterm' instead of `xterm'.
30687         (xterm--extra-capabilities-type): New const.
30688         (xterm-extra-capabilities): Use it.
30689         (xterm--version-handler): Lower the pseudo-version for `screen'.
30691 2015-05-03  Dmitry Gutov  <dgutov@yandex.ru>
30693         * lisp/progmodes/xref.el (xref--insert-xrefs): Tweak the faces.
30694         Always insert a newline at the end (to avoid mouse-face background
30695         tail at the last line).
30697         elisp-completion-at-point: Prioritize being quoted over funpos
30698         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
30699         Only consider function position when not inside quoted form
30700         (bug#20425).
30701         * test/automated/elisp-mode-tests.el: New file.
30703         Stop vc-print-log from jumping to the top
30704         * lisp/vc/vc.el (vc-print-log-internal): Pass nil
30705         GOTO-LOCATION-FUNC to vc-log-internal-common when WORKING-REVISION
30706         is not specified.
30707         (vc-incoming-outgoing-internal): Always pass nil.
30708         (vc-log-internal-common): When GOTO-LOCATION-FUNC is nil, don't
30709         call it, and don't set vc-sentinel-movepoint (bug#15322).
30710         (vc-print-root-log): Don't fetch the root working revision, nor
30711         pass it to vc-print-log-internal.
30713 2015-05-02  Michael Vehrs  <Michael.Burschik@gmx.de>
30715         Fix display of keyboard layouts for right-to-left scripts
30716         * lisp/international/quail.el (quail-insert-kbd-layout):
30717         Force left-to-right paragraph direction.
30719 2015-05-02  K. Handa  <handa@gnu.org>
30721         * src/cmds.c (internal_self_insert): When we insert spaces for
30722         padding, set point before the padding spaces, not after them.
30724 2015-05-02  Nicolas Petton  <nicolas@petton.fr>
30726         * lisp/emacs-lisp/seq.el (seq-p): New alias to `sequencep'.
30728 2015-05-02  Dmitry Gutov  <dgutov@yandex.ru>
30730         Fix etags-xref-find for references
30731         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
30732         Use `cl-mapcan'.
30733         * lisp/progmodes/etags.el (etags-xref-find): Ditto.  Prompt for
30734         directory if no tags tables are loaded (bug#19468).
30736 2015-05-02  Philipp Stephani  <phst@google.com>
30738         Update the options in whitespace-style defcustom
30739         * lisp/whitespace.el (whitespace-style): Use `set' instead of a
30740         `repeat' because the option is really set-like.  Add missing
30741         options.  Reorder options to match the order in the
30742         documentation.  (Bug#20346)
30744 2015-05-02  Eli Zaretskii  <eliz@gnu.org>
30746         Fix error diagnostics of c-macro-expand
30747         * lisp/progmodes/cmacexp.el (c-macro-expansion): Don't bail out
30748         too early if no start-marker string was found -- that generally
30749         means cpp exited abnormally, and we still want to show its error
30750         messages to the user.
30752         Don't require Texinfo 5.0 for Emacs documentation
30753         * doc/emacs/docstyle.texi: Use "@set txicodequoteundirected" and
30754         "@set txicodequotebacktick" instead of "@codequotebacktick on" and
30755         "@codequoteundirected on", respectively, to avoid requiring
30756         Texinfo 5.x for Emacs documentation.
30758 2015-05-01  Simen Heggestøyl  <simenheg@gmail.com>
30760         * lisp/files.el (pwd):
30761         When called with a prefix argument, insert the current default
30762         directory at point.
30764 2015-05-01  Stefan Monnier  <monnier@iro.umontreal.ca>
30766         * lisp/isearch.el (isearch-mode-map): Allow backspace remapping
30767         * lisp/isearch.el (isearch-mode-map): Don't inhibit
30768         function-key-map remapping for backspace (bug#20466).
30770 2015-05-01  Dmitry Gutov  <dgutov@yandex.ru>
30772         Implement xref-find-references in etags and elisp-mode
30773         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references): New function.
30774         (elisp-xref-find): Use it.
30775         * lisp/progmodes/etags.el (etags-xref-find): Use `xref-collect-references'.
30776         * lisp/progmodes/xref.el (xref-collect-references):
30777         (xref--collect-reference): New functions.
30779 2015-05-01  Paul Eggert  <eggert@cs.ucla.edu>
30781         Prefer plain characters to Texinfo circumlocutions
30782         For example, prefer 'François' to 'Fran\c{c}ois', 'Fran\c cois',
30783         'Fran@,{c}ois' or 'Francois' (all of which were used!) in Texinfo sources.
30785         Fix single-quoting style in PDF manuals
30786         The PDF versions of the GNU manuals used curved single quotes to
30787         represent grave accent and apostrophe, which made it a pain to cut
30788         and paste code examples from them.  Fix the PDF versions to use
30789         grave accent and apostrophe for Lisp source code, keystrokes, etc.
30790         This change does not affect the info files, nor does it affect
30791         ordinary uses of curved single quotes in PDF.
30792         * doc/emacs/docstyle.texi: New file, which specifies treatment for
30793         grave accent and apostrophe, as well as the document encoding.
30794         * doc/emacs/emacs-xtra.texi, doc/emacs/emacs.texi:
30795         * doc/lispintro/emacs-lisp-intro.texi:
30796         * doc/lispref/back.texi, doc/lispref/book-spine.texi:
30797         * doc/lispref/elisp.texi, doc/lispref/lay-flat.texi:
30798         * doc/misc/ada-mode.texi, doc/misc/auth.texi:
30799         * doc/misc/autotype.texi, doc/misc/bovine.texi, doc/misc/calc.texi:
30800         * doc/misc/cc-mode.texi, doc/misc/cl.texi, doc/misc/dbus.texi:
30801         * doc/misc/dired-x.texi, doc/misc/ebrowse.texi, doc/misc/ede.texi:
30802         * doc/misc/ediff.texi, doc/misc/edt.texi, doc/misc/efaq-w32.texi:
30803         * doc/misc/efaq.texi, doc/misc/eieio.texi, doc/misc/emacs-gnutls.texi:
30804         * doc/misc/emacs-mime.texi, doc/misc/epa.texi, doc/misc/erc.texi:
30805         * doc/misc/ert.texi, doc/misc/eshell.texi, doc/misc/eudc.texi:
30806         * doc/misc/eww.texi, doc/misc/flymake.texi, doc/misc/forms.texi:
30807         * doc/misc/gnus-coding.texi, doc/misc/gnus-faq.texi:
30808         * doc/misc/gnus.texi, doc/misc/htmlfontify.texi:
30809         * doc/misc/idlwave.texi, doc/misc/ido.texi, doc/misc/info.texi:
30810         * doc/misc/mairix-el.texi, doc/misc/message.texi, doc/misc/mh-e.texi:
30811         * doc/misc/newsticker.texi, doc/misc/nxml-mode.texi:
30812         * doc/misc/octave-mode.texi, doc/misc/org.texi, doc/misc/pcl-cvs.texi:
30813         * doc/misc/pgg.texi, doc/misc/rcirc.texi, doc/misc/reftex.texi:
30814         * doc/misc/remember.texi, doc/misc/sasl.texi, doc/misc/sc.texi:
30815         * doc/misc/semantic.texi, doc/misc/ses.texi, doc/misc/sieve.texi:
30816         * doc/misc/smtpmail.texi, doc/misc/speedbar.texi:
30817         * doc/misc/srecode.texi, doc/misc/todo-mode.texi, doc/misc/tramp.texi:
30818         * doc/misc/url.texi, doc/misc/vhdl-mode.texi, doc/misc/vip.texi:
30819         * doc/misc/viper.texi, doc/misc/widget.texi, doc/misc/wisent.texi:
30820         * doc/misc/woman.texi:
30821         Use it instead of '@documentencoding UTF-8', to lessen the need for
30822         global changes like this in the future.
30823         * doc/emacs/Makefile.in (EMACS_XTRA):
30824         * doc/lispintro/Makefile.in (srcs):
30825         * doc/lispref/Makefile.in (srcs):
30826         Add dependency on docstyle.texi.
30827         * doc/misc/Makefile.in (style): New macro.
30828         (${buildinfodir}/%.info, %.dvi, %.pdf, %.html)
30829         (${buildinfodir}/ccmode.info, ${buildinfodir}/efaq%.info, gnus_deps):
30830         Use it.
30832 2015-05-01  Glenn Morris  <rgm@gnu.org>
30834         * test/automated/cl-lib-tests.el (cl-lib-adjoin-test): Fix it.
30836         * lisp/emacs-lisp/pcase.el (get-edebug-spec, edebug-match)
30837         (help-fns--signature): Declare.
30839         * lisp/emacs-lisp/pcase.el (pcase--make-docstring): Require help-fns.
30841 2015-05-01  Nicolas Petton  <nicolas@petton.fr>
30843         New macro seq-let, providing destructuring support to seq.el
30844         * lisp/emacs-lisp/seq.el (seq-let): New macro.  `seq-let' is similar
30845         to `cl-destructuring-bind' but works on all sequence types supported
30846         by `seq.el'.  Bump version number to 1.6.
30847         * test/automated/seq-tests.el: Add tests for seq-let.
30848         * doc/lispref/sequences.texi: Add documentation for seq-let.
30850 2015-05-01  Pontus Michael  <m.pontus@gmail.com>
30852         * lisp/simple.el (blink-matching-open): Better behavior in minibuffer.
30854 2015-05-01  Glenn Morris  <rgm@gnu.org>
30856         * lisp/emacs-lisp/ert.el (ert--special-operator-p): Fix previous.
30858 2015-05-01  Artur Malabarba  <bruce.connor.am@gmail.com>
30860         * lisp/emacs-lisp/bytecomp.el: Revert "Silence noninteractive compilations"
30861         This reverts commit 9a7ddde977378cb5276a81476ae458889c403267.
30862         This reverts commit 3c0ea587daf8b17960b90603a70e3ac4057d883d.
30863         With message: "* lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'".
30864         (Bug#20445).
30866 2015-05-01  K. Handa  <handa@gnu.org>
30868         * lisp/international/mule-cmds.el (input-method-use-echo-area):
30869         Change :type to 'boolean.
30871 2015-05-01  Lars Magne Ingebrigtsen  <larsi@gnus.org>
30873         Start using proportional fonts in eww by default
30874         * lisp/net/shr.el (shr-use-fonts): Switch the default to t, since
30875         it seems to work well.
30877         Fix links in tables in shr
30878         * lisp/net/shr.el: Remove `shr-inhibit-decoration', because that
30879         makes (some) links in tables not work.
30881 2015-05-01  Jan D  <jan.h.d@swipnet.se>
30883         * lisp/term/ns-win.el (ns-get-cut-buffer-internal): Remove this alias.
30885 2015-04-30  Glenn Morris  <rgm@gnu.org>
30887         * lisp/emacs-lisp/ert.el (ert--special-operator-p):
30888         Update for 2015-02-08 change to indirect-function.
30890         * lisp/term/ns-win.el (ns-get-selection-internal):
30891         Remove declaration for function deleted 2014-10-21.
30893         * lisp/dom.el: Load subr-x when compiling, for when-let.
30895         Silence some compilation warnings
30896         * lisp/emacs-lisp/check-declare.el (compilation-forget-errors):
30897         * lisp/emulation/cua-base.el (delete-active-region):
30898         * lisp/net/net-utils.el (w32-get-console-output-codepage):
30899         * lisp/term/ns-win.el (ns-own-selection-internal)
30900         (ns-disown-selection-internal, ns-selection-owner-p)
30901         (ns-selection-exists-p, ns-get-selection):
30902         Declare for compiler.
30904         Function declaration updates prompted by 'make check-declare'
30905         * lisp/emacs-lisp/package.el (lm-homepage):
30906         * lisp/gnus/gnus-util.el (iswitchb-read-buffer):
30907         * lisp/gnus/mm-decode.el (libxml-parse-html-region):
30908         * lisp/gnus/mml.el (libxml-parse-html-region):
30909         * lisp/gnus/nnrss.el (libxml-parse-html-region):
30910         * lisp/net/eww.el (libxml-parse-html-region):
30911         * lisp/net/shr.el (libxml-parse-html-region):
30912         * lisp/vc/vc-bzr.el (vc-annotate-convert-time):
30913         * lisp/vc/vc-cvs.el (vc-annotate-convert-time):
30914         * lisp/vc/vc-git.el (vc-annotate-convert-time):
30915         * lisp/vc/vc-hg.el (vc-annotate-convert-time):
30916         * lisp/vc/vc-mtn.el (vc-annotate-convert-time):
30917         * lisp/vc/vc-rcs.el (vc-annotate-convert-time):
30918         Update declaration.
30920         Remove compatibility code for 20-year old function renaming
30921         * lisp/progmodes/idlw-shell.el (idlwave-shell-comint-filter):
30922         Make it an obsolete alias.
30923         (idlwave-shell-filter): Change all uses to comint-output-filter.
30925 2015-04-30  Tassilo Horn  <tsdh@gnu.org>
30927         Add ace-window face config
30928         * etc/themes/tsdh-light-theme.el (tsdh-light): Add ace-window face
30929         configuration.
30931 2015-04-30  Paul Eggert  <eggert@cs.ucla.edu>
30933         Unclutter 'make doc' output a bit
30934         * Makefile.in ($(DOCS), $(INSTALL_DOC), $(UNINSTALL_DOC)):
30935         Use make subst rather than sh IFS to split target string apart.
30936         This makes 'make' output easier to follow.
30938         Merge from gnulib
30939         * doc/misc/texinfo.tex: Update from gnulib.
30941 2015-04-30  Artur Malabarba  <bruce.connor.am@gmail.com>
30943         * lisp/emacs-lisp/package.el: Some speed optimizations on menu refresh.
30944         (package-menu--print-info): Obsolete.
30945         (package-menu--print-info-simple): New function.
30946         (package-menu--refresh): Use it, simplify code, and improve
30947         performance.
30948         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-entry):
30949         Tiny performance improvement.
30951         * lisp/emacs-lisp/package.el (package--message): inhibit-message.
30953 2015-04-29  Paul Eggert  <eggert@cs.ucla.edu>
30955         Omit -Wstrict-overflow workaround in GCC 5
30956         * src/process.c: Remove workaround for GCC -Wstrict-overflow bug
30957         if it's GCC 5 or later, as the bug appears to be fixed in GCC 5.1.
30959         Merge from gnulib
30960         This incorporates:
30961         2015-04-29 extern-inline: no need for workaround in GCC 5.1
30962         2015-04-26 file-has-acl: port to CentOS 6
30963         * m4/acl.m4, m4/extern-inline.m4: Update from gnulib.
30965 2015-04-29  Helmut Eller  <eller.helmut@gmail.com>
30967         Set next-error-* in xref--xref-buffer-mode
30968         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
30969         Set `next-error-function' and `next-error-last-buffer'.
30970         (xref--next-error-function): New function.
30971         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01311.html)
30973 2015-04-29  Fabián Ezequiel Gallina  <fgallina@gnu.org>
30975         python.el: Fix warnings on looking-back calls missing LIMIT
30976         * lisp/progmodes/python.el (python-shell-accept-process-output):
30977         Pass LIMIT arg to looking-back.
30979 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
30981         * lisp/emacs-lisp/package.el: Use pushnew for downloads in progress.
30982         (package--download-and-read-archives): Use pushnew instead of
30983         append.  If something terrible happened during a previous
30984         download, simply refreshing should now make things work again.
30986 2015-04-29  Dmitry Gutov  <dgutov@yandex.ru>
30988         Introduce etags-xref-find-definitions-tag-order
30989         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
30990         New variable.
30991         (etags--xref-find-definitions): Use it (bug#19468).
30993 2015-04-29  Eli Zaretskii  <eliz@gnu.org>
30995         PATH- and completion-related fixes in Eshell on MS-Windows
30996         * lisp/eshell/esh-ext.el (eshell-search-path): When running on
30997         MS-Windows, prepend "." to list of directories produced from PATH,
30998         as Windows always implicitly searches the current directory first.
30999         (eshell-force-execution): Make it have a non-nil default value on
31000         MS-Windows and MS-DOS.
31001         * lisp/eshell/em-cmpl.el (eshell-complete-commands-list): If
31002         eshell-force-execution is non-nil, complete on readable files and
31003         directories, not only executables.  When running on MS-Windows,
31004         prepend "." to list of directories produced from PATH, as Windows
31005         always implicitly searches the current directory first.
31007 2015-04-29  Sam Steingold  <sds@gnu.org>
31009         Bury RCIRC buffers when there is no activity
31010         * lisp/net/rcirc.el (rcirc-non-irc-buffer): Remove.
31011         (rcirc-bury-buffers): New function.
31012         (rcirc-next-active-buffer): When there is no new activity, use
31013         `rcirc-bury-buffers' to hide all RCIRC buffers.
31015 2015-04-29  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
31017         Fix DBUS query result parsing for secrets-search-items
31018         * lisp/net/secrets.el (secrets-search-items): Fix DBUS query result
31019         parsing.  The function assumed that return value of the
31020         SearchItems method called on a collection is a list of two lists,
31021         however this is true only when no collection is specified.  GNOME
31022         had used to incorrectly return a list of two lists in both cases,
31023         but this was already fixed:
31024         https://bugzilla.gnome.org/show_bug.cgi?id=695115 .  Also fix an
31025         incorrect information in the secrets-search-items’ docstring.
31026         (Bug#20449)
31028 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
31030         * lisp/emacs-lisp/bytecomp.el (byte-compile--message):
31031         Use `inhibit-message' instead of hiding the previous message
31032         with (message nil).
31034 2015-04-29  Oleh Krehel  <ohwoeowho@gmail.com>
31036         Remove the deprecated INTERNAL_FIELD macro by expanding it
31037         * src/lisp.h (INTERNAL_FIELD): Remove.
31038         (DEFVAR_KBOARD): Modify accordingly.
31039         * src/alloc.c, src/buffer.c, src/buffer.h, src/category.c:
31040         * src/keyboard.c, src/keyboard.h, src/syntax.c: Adjust users.
31041         * src/buffer.c (compact_buffer): Use BVAR.
31043 2015-04-29  Glenn Morris  <rgm@gnu.org>
31045         Replace an obsolete function alias
31046         * lisp/isearch.el (isearch-yank-x-selection):
31047         * lisp/mouse-copy.el (mouse-drag-secondary-pasting)
31048         (mouse-drag-secondary-moving):
31049         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
31050         Replace obsolete alias x-get-selection with gui-get-selection.
31052 2015-04-29  Stefan Monnier  <monnier@iro.umontreal.ca>
31054         * lisp/mail/rmailsum.el: Use lexical-binding.
31056 2015-04-29  Glenn Morris  <rgm@gnu.org>
31058         * test/automated/package-test.el (package-test-update-archives-async):
31059         Skip test on hydra.nixos.org.
31061 2015-04-28  Glenn Morris  <rgm@gnu.org>
31063         * lisp/foldout.el: Update for 2015-01-30 outline.el changes.
31064         (foldout-zoom-subtree, foldout-exit-fold, foldout-mouse-show)
31065         (foldout-mouse-hide-or-exit): Use new names for outline functions.
31067         * lisp/cedet/semantic/bovine/c.el (semantic-c-do-lex-if):
31068         Update for 2014-06-26 hideif.el change.
31070         * lisp/mail/rmailsum.el: Fix search for encoded subjects.  (Bug#19088)
31071         (rmail--decode-and-apply): New function.
31072         (rmail-message-regexp-p-1, rmail-message-subject-p): Use it.
31074         * lisp/mail/rmail.el (rmail-highlighted-headers): Fix :type.
31076 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
31078         * lisp/emacs-lisp/package.el: Fix priority-hiding corner case
31079         (package-menu--refresh): Delegate obsolete-hiding to
31080         `package--remove-hidden'.
31081         (package--remove-hidden): Disregard high-priority package if it is
31082         older than the installed one.
31084 2015-04-28  Paul Eggert  <eggert@cs.ucla.edu>
31086         Update source file encoding list
31087         Update admin/notes/unicode, along with coding system cookies in
31088         other files, so that the two match each other better.
31089         * admin/notes/unicode: lisp/language/ethio-util.el and
31090         lisp/language/ethiopic.el also use utf-8-emacs.
31091         * admin/notes/hydra, doc/misc/dbus.texi, doc/misc/org.texi:
31092         * doc/misc/remember.texi, etc/refcards/cs-dired-ref.tex:
31093         * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
31094         * etc/refcards/sk-dired-ref.tex, etc/refcards/sk-refcard.tex:
31095         * etc/refcards/sk-survival.tex:
31096         Add "coding: utf-8" so that this file is not mishandled in a
31097         Latin-1 or Big-5 locale.
31098         * lisp/international/robin.el, lisp/org/ox-ascii.el:
31099         Specify utf-8, not utf-8-emacs, as these are plain UTF-8 files.
31100         * lisp/language/ethio-util.el: Fix trailer.
31102 2015-04-28  Eli Zaretskii  <eliz@gnu.org>
31104         Fix synchronous invocation of Ispell
31105         * lisp/textmodes/ispell.el (ispell-init-process): Assign a non-nil
31106         value to ispell-process-directory before calling ispell-init-process.
31107         Don't call set-process-coding-system if ispell-async-processp is nil.
31108         (Bug#20448)
31110 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
31112         * lisp/emacs-lisp/package.el: Skip space and comments in init file
31113         (package--ensure-init-file): Insert snippet at first
31114         non-whitespace non-comments line.  Respects local-vars at the top
31115         of the file.
31117 2015-04-28  Glenn Morris  <rgm@gnu.org>
31119         * lisp/mail/rmail.el (rmail-copy-headers):
31120         Handle rmail-nonignored-headers being nil.  (Bug#18878)
31122         * lisp/subr.el (delay-mode-hooks): Fix doc typo.
31124         * lisp/vc/vc-bzr.el (vc-bzr-after-dir-status):
31125         Don't get confused by a bzrlib version mismatch warning.
31127 2015-04-27  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
31129         Change default location of EUDC options file
31130         * etc/NEWS: Document change to EUDC options file's default location.
31131         * lisp/net/eudc-vars.el (eudc-options-file): Use
31132         `locate-user-emacs-file' to change default options file location.
31134 2015-04-27  Glenn Morris  <rgm@gnu.org>
31136         * test/automated/package-test.el (package-test-update-archives-async):
31137         Try to handle the test server script dying.
31139 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
31141         * lisp/saveplace.el (save-place-mode): New minor mode.
31142         (save-place): Redefine as an obsolete alias.
31144         * lisp/midnight.el: Make it a minor mode.  Allow predicates.
31145         * lisp/midnight.el: Use lexical-binding.
31146         (midnight-mode): Make it a proper minor mode.
31147         (midnight-buffer-display-time): Make arg non-optional.
31148         (midnight-find): Remove.
31149         (clean-buffer-list-kill-never-regexps)
31150         (clean-buffer-list-kill-regexps): Tweak type for new function choice.
31151         (clean-buffer-list-delay): Allow clean-buffer-list-kill-regexps to
31152         contain functions.
31153         (clean-buffer-list): Use cl-find.
31154         Allow clean-buffer-list-kill-never-regexps to contain functions.
31156 2015-04-27  Nicolas Petton  <nicolas@petton.fr>
31158         Bump version of seq.el to 1.5
31159         * lisp/emacs-lisp/seq.el (seq-doseq): Remove undocumented return value
31160         from seq-doseq.  Bump version number of seq.el.
31162 2015-04-27  Glenn Morris  <rgm@gnu.org>
31164         * lisp/mail/rmail.el (rmail-reply):
31165         Decode subject before matching "Re:" prefix.  (Bug#20396)
31167 2015-04-27  Artur Malabarba  <bruce.connor.am@gmail.com>
31169         * lisp/emacs-lisp/package.el: Small improvements
31170         (package--with-work-buffer-async): More informative error.
31171         (package-install-user-selected-packages): Rename to
31172         `package-install-selected-packages'.
31174 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
31176         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last
31177         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last change.
31178         (eieio--class-make): Remove leftover `tag'.
31180 2015-04-27  Glenn Morris  <rgm@gnu.org>
31182         * lisp/gnus/message.el (gnus-extract-address-components):
31183         Remove bogus declaration that was masking previous problem.
31185 2015-04-27  Nicolas Graner  <nicolas.graner@u-psud.fr>  (tiny change)
31187         * lisp/gnus/message.el (message-insert-formatted-citation-line):
31188         Fix typo.  (Bug#20318)
31190 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
31192         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Reuse oldc.
31194         * lisp/textmodes/reftex-toc.el: Improve multi-frame behavior
31195         * lisp/textmodes/reftex-toc.el (reftex-toc-revert): Avoid displaying
31196         the buffer in yet another frame.
31197         (reftex-toc-visit-location): Make sure toc-window has focus at the end
31198         when `final' is nil.
31199         (reftex--rebuilding-toc): Defvar to avoid `boundp' and
31200         silence warnings.  Use `--' to clarify that it's internal.
31201         (reftex-toc-next, reftex-toc-previous, reftex-toc-demote)
31202         (reftex-toc-promote): Clarify unused argument.
31203         (reftex--pro-or-de, reftex--start-line, reftex--mark-line):
31204         Add `reftex--' prefix.  Fix all users.
31205         (reftex-toc-promote-prepare): Use _ for dummy variable.
31206         (reftex-toc-restore-region): Rename `m.
31208 2015-04-27  Eli Zaretskii  <eliz@gnu.org>
31210         Fix a typo in bibtex.el
31211         * lisp/textmodes/bibtex.el (bibtex-insert-kill): Fix a typo from
31212         last change.  (Bug#20429)
31214         Fix redisplay of frame after loading new fonts
31215         * src/xdisp.c (redisplay_internal): When retrying redisplay of
31216         a frame because new fonts were loaded, disable all redisplay
31217         optimizations on that frame by calling SET_FRAME_GARBAGED.
31218         (Bug#20410)
31220 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
31222         * lisp/info.el (Info-menu): Properly provide the `default'
31223         (Bug#20391)
31225         * lisp/progmodes/elisp-mode.el (elisp--get-fnsym-args-string):
31226         Catch errors from documentation (bug#20418).
31227         (emacs-lisp-mode-abbrev-table): Remove redundant defvar.
31229 2015-04-26  Stefan Monnier  <monnier@iro.umontreal.ca>
31231         * lisp/emacs-lisp/package.el: Move variables to silence byte-compiler.
31232         Remove redundant ":group 'package".
31234 2015-04-26  Eli Zaretskii  <eliz@gnu.org>
31236         Fix a typo in rmail.el
31237         * lisp/mail/rmail.el (rmail-ensure-blank-line): Fix a typo in the
31238         last commit.  (Bug#20429)
31240 2015-04-26  Dmitry Gutov  <dgutov@yandex.ru>
31242         Introduce xref-prompt-for-identifier
31243         * lisp/progmodes/xref.el (xref-prompt-for-identifier): New option.
31244         (xref--read-identifier): Use it
31245         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01205.html).
31247 2015-04-26  João Távora  <joaotavora@gmail.com>
31249         `tex-insert-quote' after single `'' opens quotes instead of closing
31250         Without this, it's very hard to precede double quotes with the
31251         apostrophe character, i.e. insert the sequence '``
31252         (quote-backquote-backquote), commonly useful in portuguese, for
31253         instance.
31254         * lisp/textmodes/tex-mode.el (tex-insert-quote): Add ?' to the list of
31255         preceding chars making `tex-insert-quote' be in the "opening" context.
31257 2015-04-25  Dmitry Gutov  <dgutov@yandex.ru>
31259         Pass `id' to `completing-read' as def instead of initial input
31260         * lisp/progmodes/xref.el (xref--read-identifier): Pass `id' to
31261         `completing-read' as the default value instead of initial input
31262         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01182.html).
31264 2015-04-25  Paul Eggert  <eggert@cs.ucla.edu>
31266         Don't freeze with unreadable processes
31267         Don't freeze if an exiting process can't be read from.  (Bug#19860).
31268         This fixes a bug I introduced in
31269         2014-07-08T07:24:07Z@eggert@cs.ucla.edu
31270         "* process.c: Add sanity checks for file descriptors."
31271         Dmitry Gutov did most of the legwork in finding the problem.
31272         * src/process.c (wait_reading_process_output):
31273         Treat non-running processes that can't be read from
31274         the same as other non-running processes.
31276 2015-04-25  Alan Mackenzie  <acm@muc.de>
31278         Fix change from 2015-04-22 "On C-y, stop some text property entries ..."
31279         * lisp/subr.el (remove-yank-excluded-properties): Put
31280         `with-silent-modifications' around only the last three lines of code.
31282 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
31284         * lisp/emacs-lisp/package.el (package-all-keywords): Don't cache
31285         (package--all-keywords): Deleted variable.
31287         * etc/NEWS: Document package-hiding functionality.
31289 2015-04-25  Eli Zaretskii  <eliz@gnu.org>
31291         * lisp/window.el (recenter-last-op): Doc fix.  (Bug#20419)
31293         Clarify the doc string of 'replace-regexp-in-string'
31294         * lisp/subr.el (replace-regexp-in-string): Doc fix.  (Bug#20395)
31296         Improve doc string of 'insert-buffer-substring'
31297         * src/editfns.c (Finsert_buffer_substring): Doc fix.  (Bug#20421)
31299         MS-Windows followup for the recent gnulib update
31300         * nt/gnulib.mk (libgnu_a_SOURCES): Replace file-has-acl.c with
31301         acl-internal.c.
31303 2015-04-24  Paul Eggert  <eggert@cs.ucla.edu>
31305         Spelling fixes
31307         Merge from gnulib
31308         This incorporates:
31309         2015-04-24 file-has-acl: new module, split from acl
31310         2015-04-24 manywarnings: add GCC 5.1 warnings
31311         2015-04-21 lstat: fix cross-compilation 'ln -s' problem
31312         2015-04-15 qacl: Simplify HP-UX acl_nontrivial check
31313         2015-04-15 acl: On Linux, check for acls without libacl
31314         2015-04-14 tempname: avoid unused parameter warnings (trivial)
31315         * lib/acl-internal.c: New file, from gnulib.
31316         * lib/file-has-acl.c: Remove; no longer imported from gnulib.
31317         * lib/acl-internal.h, lib/gnulib.mk, lib/qcopy-acl.c, lib/tempname.c:
31318         * m4/acl.m4, m4/gnulib-comp.m4, m4/lstat.m4, m4/manywarnings.m4:
31319         Update from gnulib.
31321         Port --enable-gcc-warnings to GCC 5.1 x86-64
31322         * lib-src/ebrowse.c (dump_sym):
31323         * lib-src/hexl.c (main):
31324         * src/ccl.c (ccl_driver):
31325         * src/character.c (string_escape_byte8):
31326         * src/dbusbind.c (xd_retrieve_arg, xd_add_watch):
31327         * src/gnutls.c (Fgnutls_boot):
31328         * src/gtkutil.c (xg_check_special_colors):
31329         * src/image.c (x_build_heuristic_mask):
31330         * src/print.c (safe_debug_print, print_object):
31331         * src/term.c (produce_glyphless_glyph):
31332         * src/xdisp.c (get_next_display_element)
31333         (produce_glyphless_glyph):
31334         * src/xterm.c (x_draw_glyphless_glyph_string_foreground):
31335         Don't use a signed format to print an unsigned integer, or vice
31336         versa.  GCC 5.1's new -Wformat-signedness option warns about this.
31337         * src/image.c (png_load_body, jpeg_load_body):
31338         Silence a bogus setjump diagnostic from GCC 5.1 (GCC bug 54561).
31340 2015-04-24  Tassilo Horn  <tsdh@gnu.org>
31342         Add new faces to tsdh-light-theme
31343         * etc/themes/tsdh-light-theme.el (tsdh-light): New face
31344         definitions for Info-quoted, ace-jump-face-foreground,
31345         hl-paren-face, show-paren-match, and show-paren-mismatch.
31347 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
31349         * lisp/emacs-lisp/seq.el (seq-doseq): Fix the macro.
31351 2015-04-24  Glenn Morris  <rgm@gnu.org>
31353         * build-aux/gitlog-to-emacslog:
31354         Use raw log format rather than wrapped one.
31356 2015-04-24  Stefan Monnier  <monnier@iro.umontreal.ca>
31358         * lisp/emacs-lisp/seq.el (seq-doseq): Tighten the code.
31359         (seq-doseq): Fix out-of-scope binding.
31360         Don't call `seq-length at every iteration.
31361         Reduce `if's from 3 to 2 per iteration.
31362         (emacs-lisp-mode-hook): Don't tweak in Emacs≥25.
31364 2015-04-24  Glenn Morris  <rgm@gnu.org>
31366         * lisp/textmodes/text-mode.el (text-mode-hook):
31367         Move text-mode-hook-identify to default.
31369         * lisp/mouse.el (minor-mode-menu-from-indicator):
31370         Handle non-function members of minor-mode-map-alist.  (Bug#20201)
31372         * lisp/help-fns.el (describe-function): More type checking.
31373         (describe-function-1): Handle changed symbol-function.  (Bug#20201)
31375         * build-aux/gitlog-to-emacslog: Convert "Fixes:" to "(Bug#)".
31376         (Bug#20325)
31378 2015-04-24  Andreas Schwab  <schwab@linux-m68k.org>
31380         shr: strip leading whitespace when expanding URLs
31381         * lisp/net/shr.el (shr-expand-url): Strip leading whitespace from URL.
31383 2015-04-24  Eli Zaretskii  <eliz@gnu.org>
31385         Clarify "co-authored" some more
31387         * CONTRIBUTE: Clarify "co-authored-by".  (Bug#20400)
31389         Clarify doc strings of functions that search for properties
31390         * src/textprop.c (Fnext_char_property_change)
31391         (Fprevious_char_property_change)
31392         (Fnext_single_char_property_change)
31393         (Fprevious_single_char_property_change, Fnext_property_change)
31394         (Fnext_single_property_change, Fprevious_property_change)
31395         (Fprevious_single_property_change): Clarify doc strings wrt return
31396         value and the optional LIMIT argument.  (Bug#20411)
31398 2015-04-24  Glenn Morris  <rgm@gnu.org>
31400         * test/automated/message-mode-tests.el (message-mode-propertize):
31401         Handle non-writable HOME; eg on hydra.nixos.org.
31403 2015-04-23  Eli Zaretskii  <eliz@gnu.org>
31405         Avoid starting threads by w32-shell-execute
31406         * src/w32fns.c (Fw32_shell_execute): Convert "file:///" URLs into
31407         local file names, before invoking ShellExecute.  (Bug#20220)
31409 2015-04-23  Martin Rudalics  <rudalics@gmx.at>
31411         Fix following doc-links in `widget-documentation-link-action'
31412         * lisp/wid-edit.el (widget-documentation-link-action): Make
31413         following doc-links less simplistic (Bug#20398).
31415 2015-04-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
31417         Improve EUDC manual
31418         * doc/misc/eudc.texi (Troubleshooting):
31419         New LDAP troubleshooting subsection.
31421 2015-04-22  Paul Eggert  <eggert@cs.ucla.edu>
31423         Omit needless "\ " after multibyte then newline
31424         * src/print.c: Include <c-ctype.h>, for c_isxdigit.
31425         (print_object): When print-escape-multibyte is non-nil and a
31426         multibyte character is followed by a newline or formfeed, followed
31427         by a hex digit, don't output a needless "\ " before the hex digit.
31428         * test/automated/print-tests.el (print-hex-backslash): New test.
31430 2015-04-22  Oleh Krehel  <ohwoeowho@gmail.com>
31432         Add a new `inhibit-message' variable
31433         * src/xdisp.c (syms_of_xdisp): Define a boolean `inhibit_message'.
31434         (message3): Don't call `message3_nolog' (i.e. use the Echo Area) when
31435         `inhibit_message' is non-zero.
31436         * etc/NEWS: Add an entry.
31437         * doc/lispref/display.texi: Add an entry for `inhibit-message',
31438         mention it in `message'.
31440 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
31442         Fix last fix in `display-buffer-record-window'.
31443         * lisp/window.el (display-buffer-record-window): Fix last fix.
31445 2015-04-22  Eli Zaretskii  <eliz@gnu.org>
31447         Minor edits in CONTRIBUTE
31448         * CONTRIBUTE: Rearrange instructions about log messages.
31449         Use "Git" capitalized all over.
31450         Use 2 spaces between sentences.
31452 2015-04-22  Artur Malabarba  <bruce.connor.am@gmail.com>
31454         * lisp/files.el (basic-save-buffer): Fix argument.
31456         * lisp/cus-edit.el (custom-file): Consider init-file-had-error.
31457         In case `(and (null custom-file) init-file-had-error)' do the same
31458         thing we'd do if `(null user-init-file)', which is to either error out
31459         or return nil.  This is in line with `custom-save-all' which would
31460         throw an error in that situation.  (Bug#20355)
31462         * lisp/emacs-lisp/package.el: Hide lower-priority packages in menu.
31463         (package-menu-hide-low-priority): New variable, see its doc.
31464         (package-archive-priorities): Update doc.
31465         (package-desc-priority): New function.
31466         (package-desc-priority-version): Use it.
31467         (package--remove-hidden): New function.
31468         (package-menu--refresh): Use it.
31470         * lisp/emacs-lisp/package.el: Implement displaying obsolete packages.
31471         (package-menu--hide-obsolete): New variable.
31472         (package--remove-hidden): Use it.
31473         (package-menu-hide-obsolete): New interactive function to toggle
31474         the variable.
31475         (package--quick-help-keys): Document it.
31476         (package-menu-async): Add :version tag.
31477         (package-menu-mode-map): Bind package-menu-hide-obsolete.
31478         (package-desc-status): Indicate non-installed obsolete packages as
31479         avail-obso.
31480         (package-menu-mark-install): Allow installation of avail-obso.
31481         (package-menu--status-predicate): Sort avail-obso with available.
31483 2015-04-22  Alan Mackenzie  <acm@muc.de>
31485         On C-y, stop some text property entries being written into buffer-undo-list
31486         * lisp/subr.el (remove-yank-excluded-properties): Enclose the code in
31487         `with-silent-modifications'.
31489 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
31491         In display-buffer-record-window record selected window if necessary
31492         * lisp/window.el (display-buffer-record-window): Store selected window
31493         if it differs from 3rd element of 'quit-restore' parameter (Bug#20353).
31495 2015-04-22  Tassilo Horn  <tsdh@gnu.org>
31497         Fix reftex-citation bug
31498         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
31499         Fix `wrong-type-argument stringp nil' error that occurs when AUCTeX
31500         integration is enabled and there are no citations in the document
31501         so far.
31503 2015-04-21  Dmitry Gutov  <dgutov@yandex.ru>
31505         Add or reset based on the presence of MERGE_HEAD
31506         * lisp/vc/vc-git.el (vc-git-find-file-hook): Add
31507         `vc-git-resolve-when-done' to `after-save-hook' in either case.
31508         (vc-git-conflicted-files): Add a TODO.
31509         (vc-git-resolve-when-done): Depending on the presence of
31510         MERGE_HEAD, either update the resolved file in the index, or
31511         remove it from there.  (Bug#20292)
31513 2015-04-21  Glenn Morris  <rgm@gnu.org>
31515         * lisp/custom.el (custom-declare-group): No need to purecopy
31516         custom-current-group-alist members following recent change to set
31517         it to nil before dumping.
31519         * build-aux/gitlog-to-emacslog: Get footer from ChangeLog.2.
31520         (Bug#20399)
31522 2015-04-21  Daniel Colascione  <dancol@dancol.org>
31524         Unbreak no-op buffer save message
31525         * lisp/files.el (basic-save-buffer): Accept called-interactively as
31526         an argument instead of directly invoking called-interactively-p,
31527         which will always yield nil in that context.
31529 2015-04-21  Alan Mackenzie  <acm@muc.de>
31531         CC Mode: Do nothing in before/after-change-functions for text
31532         property changes
31533         Fixes bug#20266.
31534         * lisp/progmodes/cc-mode.el (c-basic-common-init): Make
31535         yank-handled-properties buffer local, and remove 'category from it.
31536         (c-called-from-text-property-change-p): New function.
31537         (c-before-change): Don't do anything if a call of the new function
31538         returns non-nil.
31539         (c-after-change): Don't do much if a call of the new function returns
31540         non-nil.
31541         (c-extend-after-change-region): Put changes to text property 'fontified
31542         inside c-save-buffer-state.
31544 2015-04-20  Stefan Monnier  <monnier@iro.umontreal.ca>
31546         Fix byte-compiler warnings about looking-back
31547         * lisp/vc/log-view.el (log-view-end-of-defun-1):
31548         * lisp/textmodes/tex-mode.el (latex-forward-sexp-1):
31549         * lisp/textmodes/reftex-ref.el (reftex-goto-label):
31550         * lisp/textmodes/bibtex.el (bibtex-insert-kill):
31551         * lisp/progmodes/sh-script.el (sh--maybe-here-document):
31552         * lisp/progmodes/ruby-mode.el (ruby-end-of-defun):
31553         * lisp/progmodes/ada-mode.el (ada-in-numeric-literal-p):
31554         * lisp/org/org.el (org-insert-heading, org-sort-entries):
31555         * lisp/org/org-mouse.el (org-mouse-end-headline)
31556         (org-mouse-context-menu):
31557         * lisp/org/org-clock.el (org-clock-cancel):
31558         * lisp/man.el (Man-default-man-entry):
31559         * lisp/mail/rmail.el (rmail-get-new-mail, rmail-insert-inbox-text)
31560         (rmail-ensure-blank-line):
31561         * lisp/mail/footnote.el (Footnote-delete-footnote):
31562         * lisp/mail/emacsbug.el (report-emacs-bug):
31563         * lisp/info.el (Info-follow-reference, Info-fontify-node):
31564         * lisp/info-look.el (info-lookup-guess-custom-symbol):
31565         * lisp/help-fns.el (help-fns--key-bindings):
31566         * lisp/files.el (hack-local-variables):
31567         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-cmd-complete)
31568         (viper-get-ex-pat, ex-expand-filsyms, viper-get-ex-file)
31569         (viper-complete-filename-or-exit):
31570         * lisp/emulation/viper-cmd.el (viper-backward-indent):
31571         * lisp/emacs-lisp/lisp-mode.el (calculate-lisp-indent):
31572         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
31573         * lisp/cus-edit.el (custom-face-edit-value-create):
31574         * lisp/calendar/todo-mode.el (todo-set-item-priority)
31575         (todo-filter-items-1, todo-convert-legacy-files)
31576         (todo-prefix-overlays): Add explicit second arg to looking-back.
31578 2015-04-20  Glenn Morris  <rgm@gnu.org>
31580         Avoid non-nil current-load-list at startup
31581         * src/process.c (init_process_emacs): Move Fprovide statement...
31582         (syms_of_process): ... to here.
31584         * lisp/loadup.el (custom-current-group-alist): Reset before dumping.
31586         * lisp/startup.el (command-line) <site-run-file>: Avoid rogue value
31587         in emacs -Q.
31589 2015-04-20  Ludovic Courtès  <ludo@gnu.org>
31591         * lisp/loadup.el (exec-path): Avoid storing build-time PATH in binary.
31592         (Bug#20330)
31594 2015-04-20  Glenn Morris  <rgm@gnu.org>
31596         * lisp/cus-start.el (exec-path): Set standard value, to avoid rogue.
31598         Tweak exec-path in uninstalled case
31599         * src/callproc.c (init_callproc): If running uninstalled, do not
31600         include eventual installation libexec directory in exec-path.
31602 2015-04-20  Artur Malabarba  <bruce.connor.am@gmail.com>
31604         * lisp/emacs-lisp/package.el: Filter by multiple keywords and
31605         cache keywords.
31606         (package-menu-filter): Accept a list of keywords.
31607         (package--all-keywords): New variable to cache known keywords.
31608         (package-all-keywords): Populate it if necessary.
31609         (package-refresh-contents): Reset it.
31611         * lisp/emacs-lisp/package.el: Make archive and status pseudo-keywords
31612         (package--has-keyword-p): Understand "arc:xxxx" and "status:xxxx"
31613         as special keywords which match agains package archive and status
31614         respectively.
31615         * etc/NEWS: Document it.
31617 2015-04-20  Eli Zaretskii  <eliz@gnu.org>
31619         Describe and index "empty overlays".
31620         * doc/lispref/display.texi (Overlays): Improve indexing.
31621         (Managing Overlays): Describe "empty" overlays.
31622         (Overlay Properties, Finding Overlays): Add cross-reference to
31623         where empty overlays are described.
31625 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
31627         Spelling fixes
31629         Quote 'like this' in top-level files
31630         * CONTRIBUTE, INSTALL, Makefile.in, README, configure.ac, make-dist:
31631         Prefer to single-quote 'like this' (instead of the older style
31632         `like this').
31633         * configure.ac: Fix some space-before-tab problems that 'git commit'
31634         complained about.
31636         Use bool for boolean in textprop.c, undo.c
31637         * src/textprop.c (soft, hard): Now constants instead of macros.
31638         (validate_plist): Rewrite to avoid need for boolean local.
31639         (interval_has_all_properties, interval_has_some_properties)
31640         (interval_has_some_properties_list, add_properties)
31641         (remove_properties, get_char_property_and_overlay)
31642         (Fnext_single_char_property_change)
31643         (Fprevious_single_char_property_change, add_text_properties_1)
31644         (Fremove_text_properties, Fremove_list_of_text_properties)
31645         (copy_text_properties):
31646         * src/tparam.c (tparam1):
31647         * src/undo.c (record_change, record_property_change)
31648         (syms_of_undo):
31649         Use 'true' and 'false' for booleans.
31651 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
31653         * lisp/vc/vc-git.el (vc-git-find-file-hook):
31654         Call `smerge-start-session' even when dealing with a stash
31655         conflict (bug#20292).
31657 2015-04-19  Vibhav Pant  <vibhavp@gmail.com>
31659         Add option to eshell/clear to clear scrollback.
31660         * lisp/eshell/esh-mode.el (eshell/clear-scrollback): New function.
31661         (eshell/clear): Add an optional SCROLLBACK argument.  If non-nil,
31662         scrollback contents are cleared.
31663         * etc/NEWS: Describe change.
31664         * doc/misc/eshell.texi: Add entry for `clear'.
31666 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
31668         * src/widget.c (set_frame_size): Prefer 'int' to 'unsigned'
31669         where either will do.
31671 2015-04-19  Steve Purcell  <steve@sanityinc.com>
31673         Assume package archive-contents are UTF8-encoded
31674         * lisp/emacs-lisp/package.el (package--read-archive-file):
31675         Set `coding-system-for-read' explicitly to 'utf-8 when reading the
31676         downloaded and cached archive-contents files, so that non-ASCII
31677         characters in package descriptions are displayed correctly in the
31678         `list-packages' menu.  (Bug#20231)
31680 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
31682         Abort when looking at stashed changes
31683         * lisp/vc/vc-git.el (vc-git-find-file-hook): Abort when looking at
31684         stashed changes (bug#20292).
31686 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
31688         Refactor low-level printing for simplicity
31689         * src/print.c (PRINTDECLARE): Remove.  Move its contents into
31690         PRINTPREPARE; doable now that we assume C99.  All callers changed.
31691         (PRINTCHAR): Remove, as it adds more mystery than clarity.
31692         All callers changed.
31693         (strout): Assume that caller computes length.  All callers changed.
31694         (print_c_string): New function.
31695         (write_string, write_string_1): Compute length instead of asking
31696         the caller to compute it.  All callers changed.
31697         (write_string): Simplify by using write_string_1.
31698         (write_string_1): Simplify by using print_c_string.
31699         (Fterpri): Compute default val more clearly.
31700         (Fprin1_to_string, print_object):
31701         Assume C99 to avoid unnecessary nesting.
31702         (print_object): Prefer print_c_string to multiple printchar, or
31703         to calling strout with -1 length.  Coalesce into sprintf when
31704         this is easy.
31706 2015-04-18  Paul Eggert  <eggert@cs.ucla.edu>
31708         Prefer "Bug#1234" in commit messages (Bug#20325)
31709         * .dir-locals.el (log-edit-mode): Don't rewrite Bug#,
31710         as this isn't useful for Git.
31711         * CONTRIBUTE: Suggest "Bug#1234" instead of "Fixes: debbugs:1234".
31713 2015-04-18  Glenn Morris  <rgm@gnu.org>
31715         * lisp/files.el (auto-mode-alist): Use conf mode for gitconfig, hgrc.
31716         (Bug#19506)
31718 2015-04-18  Tom Willemse  <tom@ryuslash.org>  (tiny change)
31720         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
31721         Do not use `chomp' as a function.  (Bug#19505)
31723 2015-04-18  Glenn Morris  <rgm@gnu.org>
31725         * lisp/net/browse-url.el (browse-url, browse-url-at-point): Doc fixes.
31727         * doc/emacs/misc.texi (Sorting): Small edit.
31728         (Bug#19896)
31730         * admin/admin.el (make-manuals): Add emacs-xtra in pdf and ps.
31732 2015-04-18  Simen Heggestøyl  <simenheg@gmail.com>
31734         css-mode.el: Support multi-line comment filling
31735         (Bug#20256)
31736         * lisp/textmodes/css-mode.el (css-fill-paragraph): Support multi-line
31737         comment filling.
31738         (css-adaptive-fill): New function.
31739         (css-mode): Set `adaptive-fill-function'.
31740         (scss-mode): Set `comment-continue'.
31742 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
31744         * lisp/emacs-lisp/seq.el (seq-concatenate, seq-into):
31745         Better error messages.
31747 2015-04-18  Ivan Radanov Ivanov  <ivanradanov@yahoo.co.uk>  (tiny change)
31749         Minor improvements in Bulgarian input methods
31750         * lisp/leim/quail/cyrillic.el (bulgarian-phonetic, bulgarian-bds):
31751         Replace U+042C with U+045D, as the former character is not used in
31752         the modern Bulgarian language.
31753         (Bug#20350)
31755 2015-04-17  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
31757         Improve EUDC manual
31758         * doc/misc/eudc.texi (LDAP Configuration): Mention simple and SASL
31759         authentication schemes.  Add index items.  Shorten example server
31760         name.
31762 2015-04-17  Dmitry Gutov  <dgutov@yandex.ru>
31764         Don't show both feature and function with the same name
31765         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
31766         Don't show both feature and function with the same name.
31768         (elisp--xref-identifier-location): Skip variable, if it's also
31769         a function
31770         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
31771         Avoid returning both the variable and the function for the same
31772         minor mode.
31774 2015-04-17  Wolfgang Jenkner  <wjenkner@inode.at>
31776         Fix fontification of keywords clobbered by the prompt
31777         * lisp/comint.el (comint-output-filter): Remove the uses of
31778         with-silent-modifications I introduced as part of the last change.
31779         This fixes, e.g., erratically missing highlighting when running
31780         ./configure --help; ./configure in a shell-mode buffer with
31781         compilation-shell-minor-mode turned on.
31783 2015-04-17  Glenn Morris  <rgm@gnu.org>
31785         * admin/authors.el (authors-valid-file-names)
31786         (authors-renamed-files-alist): Additions.
31788 2015-04-17  Stefan Monnier  <monnier@iro.umontreal.ca>
31790         * lisp/indent.el (indent-region): Don't deactivate the mark.
31791         (Bug#20357)
31793 2015-04-17  Sam Steingold  <sds@gnu.org>
31795         * lisp/net/rcirc.el (defun-rcirc-command): Mark `target' as ignorable.
31797 2015-04-16  Leo Liu  <sdl.web@gmail.com>
31799         * lisp/progmodes/xref.el (xref-push-marker-stack): Add optional arg.
31801 2015-04-16  Stefan Monnier  <monnier@iro.umontreal.ca>
31803         * lisp/erc/erc-pcomplete.el (erc-pcomplete):
31804         Don't use `pcomplete' any more.
31806 2015-04-16  Glenn Morris  <rgm@gnu.org>
31808         * admin/authors.el (authors-lax-changelogs): Update for erc changes.
31810 2015-04-16  Eli Zaretskii  <eliz@gnu.org>
31812         Don't link with -ljpeg on MS-Windows, to avoid dependency on DLL
31813         * configure.ac (LIBJPEG): Leave it empty for MinGW.
31815 2015-04-16  Glenn Morris  <rgm@gnu.org>
31817         * lisp/replace.el (query-replace-from-to-separator):
31818         Delay initialization to avoid rogue setting after startup.
31820 2015-04-16  Paul Eggert  <eggert@cs.ucla.edu>
31822         Pre-4.6 GCC succeeds with unknown option
31823         * configure.ac (emacs_cv_prog_cc_nopie): Port to pre-4.6 GCC.
31824         (Bug#20338)
31826 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
31828         '[:graph:]' now excludes whitespace, not just ' '
31829         * doc/lispref/searching.texi (Char Classes):
31830         * lisp/emacs-lisp/rx.el (rx): Document [:graph:] to be [:print:]
31831         sans whitespace (not sans space).
31832         * src/character.c (graphicp): Exclude all Unicode whitespace chars,
31833         not just space.
31834         * src/regex.c (ISGRAPH): Exclude U+00A0 (NO-BREAK SPACE).
31836 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
31838         * lisp/subr.el (substitute-key-definition-key, special-form-p)
31839         (macrop): Drop deprecated second arg to indirect-function.
31840         (looking-back): Make the second arg non-optional.
31842         * lisp/org/org-clock.el (org-x11idle-exists-p): Be honest about which
31843         command is actually sent to the shell.
31845 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
31847         Port jpeg configuration to Solaris 10 with Sun C
31848         * configure.ac: Check for jpeglib 6b by trying to link it, instead
31849         of relying on cpp magic that has problems in practice.  Check for
31850         both jpeglib.h and jerror.h features.  Remove special case for
31851         mingw32, which should no longer be needed (and if it were needed,
31852         should now be addressable by hotwiring emacs_cv_jpeglib).
31853         (Bug#20332)
31855 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
31857         Move some Elisp-specific code from lisp-mode.el to elisp-mode.el
31858         * lisp/emacs-lisp/lisp-mode.el (lisp--el-font-lock-flush-elisp-buffers):
31859         Move to elisp-mode.el.
31860         (lisp-mode-variables): (Re)move elisp-specific settings.
31861         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Add settings removed
31862         from lisp-mode-variables.
31863         (elisp--font-lock-flush-elisp-buffers): New function, moved from
31864         lisp-mode.el.
31866         * lisp/emacs-lisp/lisp-mode.el (lisp--el-non-funcall-position-p):
31867         Avoid pathological slowdown at top-level in large file.
31869 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
31871         Standardize names of ChangeLog history files
31872         Suggested by Glenn Morris in:
31873         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
31874         * Makefile.in (install-man): Don't treat ChangeLog.1 as a man page.
31875         * doc/man/ChangeLog.1: Rename back from doc/man/ChangeLog.01.
31876         * lisp/erc/ChangeLog.1: New file, containing the old contents of ...
31877         * lisp/erc/ChangeLog.01, lisp/erc/ChangeLog.02, lisp/erc/ChangeLog.03:
31878         * lisp/erc/ChangeLog.04, lisp/erc/ChangeLog.05, lisp/erc/ChangeLog.06:
31879         * lisp/erc/ChangeLog.07, lisp/erc/ChangeLog.08, lisp/erc/ChangeLog.09:
31880         Remove.
31882         Split top-level entries into pre- and post-April 7
31883         This more clearly distingiushes pre-April-7 ChangeLog entries (which
31884         are for top-level files only) from post-April-7 entries (which are
31885         about files at all levels.  Problem reported by Glenn Morris in:
31886         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
31887         * ChangeLog.1: Move post-April-7 entries from here ...
31888         * ChangeLog.2: ... to this new file.
31889         * Makefile.in (CHANGELOG_HISTORY_INDEX_MAX): Bump to 2.
31891 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
31893         Fix recent cus-start changes that added customize-rogues
31894         * lisp/cus-start.el (custom-delayed-init-variables): Initialize the
31895         vars early.
31896         * lisp/loadup.el ("cus-start"): Move to the end to reduce
31897         customize-rogue.
31899 2015-04-15  Nicolas Petton  <nicolas@petton.fr>
31901         Define cl-concatenate as an alias to seq-concatenate
31902         * lisp/emacs-lisp/cl-extra.el (cl-concatenate): Removes duplicated
31903           code by making cl-concatenate an alias to seq-concatenate.
31905 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
31907         * src/lread.c (intern_1): Make sure we'd find the symbol we add
31908         (Bug#20334)
31909         * src/xfaces.c (resolve_face_name): Don't use `intern' with
31910         Lisp_Strings.
31912 2015-04-15  Glenn Morris  <rgm@gnu.org>
31914         * doc/lispref/sequences.texi (Sequence Functions): Fix typo in previous.
31916 2015-04-15  Lars Magne Ingebrigtsen  <larsi@gnus.org>
31918         Clean up gnus-uu saving code slightly
31919         * lisp/gnus/gnus-uu.el (gnus-uu-save-article): Make the
31920         save-restriction/widen calls make more sense.
31922 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
31924         Make [:graph:] act like [:print:] sans space
31925         In POSIX [[:print:]] is equivalent to [ [:graph:]], so change
31926         [:graph:] so that it matches everything that [:print:] does,
31927         except for space.
31928         * doc/lispref/searching.texi (Char Classes):
31929         * etc/NEWS:
31930         * lisp/emacs-lisp/rx.el (rx):
31931         Document [:graph:] to be [:print:] sans ' '.
31932         * src/character.c, src/character.h (graphicp): New function.
31933         * src/regex.c (ISGRAPH) [emacs]: Use it.
31934         (BIT_GRAPH): New macro.
31935         (BIT_PRINT): Increase to 0x200, to make room for BIT_GRAPH.
31936         (re_wctype_to_bit) [! WIDE_CHAR_SUPPORT]:
31937         Return BIT_GRAPH for RECC_GRAPH.
31938         (re_match_2_internal) [emacs]: Use ISGRAPH if BIT_GRAPH,
31939         and ISPRINT if BIT_PRINT.
31941 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
31943         automated/eieio-test-methodinvoke.el (make-instance) <(subclass C)>:
31944         Don't use call-next-method in a cl-defmethod.
31946         * lisp/emacs-lisp/eieio-core.el (eieio--class): Derive from cl--class
31947         (eieio--class-p): Remove, provided by cl-defstruct.
31949 2015-04-14  Nicolas Petton  <nicolas@petton.fr>
31951         Add seq-intersection and seq-difference to the seq library
31952         * lisp/emacs-lisp/seq.el (seq-intersection, seq-difference):
31953         New functions.
31954         * test/automated/seq-tests.el: Add tests for seq-intersection and
31955         seq-difference.
31956         * doc/lispref/sequences.texi: Add documentation for seq-intersection
31957         and seq-difference.
31959 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
31961         * lisp/emacs-lisp/eieio-core.el (class-abstract-p): Don't inline,
31962         to avoid leaking internals.
31964 2015-04-14  Sam Steingold  <sds@gnu.org>
31966         package--ensure-init-file: widen requires save-restriction
31968 2015-04-14  Eli Zaretskii  <eliz@gnu.org>
31970         Improve the commit-msg Git hook for unibyte environments
31971         * build-aux/git-hooks/commit-msg: Set LC_ALL=C, before running Awk
31972         in unibyte environments.  (Suggested by Paul Eggert
31973         <eggert@cs.ucla.edu>.)  Use a more accurate approximation to
31974         [:print:], based on UTF-8 sequences of the unprintable characters.
31976         Describe problems with cursor caused by Windows Magnifier
31977         * etc/PROBLEMS: Describe the problem with cursor shape on
31978         MS-Windows due to Windows Magnifier.
31979         (Bug#20271)
31981         Make [:print:] support non-ASCII characters correctly
31982         * src/regex.c (ISPRINT): Call 'printablep' for multibyte characters.
31983         (BIT_PRINT): New bit mask.
31984         (re_wctype_to_bit): Return BIT_PRINT for RECC_PRINT.
31985         * src/character.c (printablep): New function.
31986         * src/character.h (printablep): Add prototype.
31987         * lisp/emacs-lisp/rx.el (rx): Doc fix: document the new behavior
31988         of 'print', 'alnum', and 'alphabetic'.
31989         * doc/lispref/searching.texi (Char Classes): Document the new
31990         behavior of [:print:].
31991         * etc/NEWS: Mention the new behavior of [:print:].
31993         Assign correct general-category and names to surrogates
31994         * admin/unidata/unidata-gen.el (unidata-setup-list): Don't ignore
31995         surrogates.  This avoids assigning them the default
31996         general-category of 'Cn', i.e. unassigned codepoints.
31997         (unidata-get-name): Give surrogates synthetic names.
31999 2015-04-14  Paul Eggert  <eggert@cs.ucla.edu>
32001         Assume C89 offsetof in xterm.c, xlwmenu.c
32002         * lwlib/xlwmenu.c (offset):
32003         * src/xterm.c (cvt_string_to_pixel_args):
32004         Use offsetof, not XtOffset.
32006 2015-04-14  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
32008         Assume C89 offsetof in widget.c
32009         * src/widget.c (XtOffset): Remove; no longer needed.
32010         (offset): Implement via offsetof instead of via pre-C89 XtOffset hack.
32012         Fix think-o in previous patch
32013         * src/window.c (count_windows, get_leaf_windows):
32014         Don't optimize count_windows incorrectly.
32016 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
32018         Avoid some int overflows in window.c
32019         * src/print.c (print_object):
32020         * src/window.c (sequence_number):
32021         * src/window.h (struct window.sequence_number):
32022         Don't assume window sequence number fits in int.
32023         * src/window.c (window_select_count):
32024         * src/window.h (struct window.use_time, window_select_count):
32025         Don't assume window use time fits in int.
32026         * src/window.c (Fsplit_window_internal):
32027         Don't assume user-supplied integer, or sum, fits in int.
32028         (Fset_window_configuration, count_windows, get_leaf_windows)
32029         (save_window_save, Fcurrent_window_configuration):
32030         Use ptrdiff_t for object counts.
32031         (Fset_window_configuration): Omit unused local 'n'.
32032         (count_windows): Simplify by writing in terms of get_leaf_windows.
32033         (get_leaf_windows): Don't store through FLAT if it's null.
32034         (extract_dimension): New static function.
32035         (set_window_margins, set_window_fringes, set_window_scroll_bars):
32036         Use it to avoid undefined behavior when converting user-supplied
32037         integer to 'int'.
32039 2015-04-13  Glenn Morris  <rgm@gnu.org>
32041         Minor doc copyedits
32042         * doc/emacs/custom.texi (Init Examples): Tweak example, replace typo.
32043         * doc/lispintro/emacs-lisp-intro.texi (condition-case): Typo fix.
32045 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
32047         [Gnus] Catch the invalid-operation that idna.el will issue
32048         * lisp/gnus/gnus-art.el (gnus-use-idna):
32049         * lisp/gnus/gnus-sum.el (gnus-summary-idna-message):
32050         * lisp/gnus/message.el (message-use-idna):
32051         Catch the invalid-operation that idna.el will issue.
32053 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
32055         * doc/lispref/processes.texi (Shell Arguments): Prefer diff -u.
32057 2015-04-13  Sam Steingold  <sds@gnu.org>
32059         package--ensure-init-file: widen before looking for
32060         "(package-initialize)"
32062 2015-04-13  Dmitry Gutov  <dgutov@yandex.ru>
32064         Change diff-switches default to `-u' (Bug#20290)
32065         * doc/emacs/files.texi (Comparing Files): Document the new default
32066         value of `diff-switches'.
32067         * doc/emacs/trouble.texi (Sending Patches): Document the preference
32068         for unified diff format.  Escape the plus in the suggested `-F' regexp
32069         value.
32070         * lisp/vc/diff.el (diff-switches): Change the default to `-u'.
32072 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
32074         (gnus-group--setup-tool-bar-update): Fix last change
32075         * lisp/gnus/gnus-group.el (gnus-group--setup-tool-bar-update):
32076         cursor-sensor-functions should be a list of functions.
32078 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
32080         * lisp/gnus/gnus-topic.el (gnus-topic-mode):
32081         Use gmm-called-interactively-p.
32083 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
32085         * lisp/loadup.el ("cus-start"): Load it after loaddefs.el
32086         (Bug#20321)
32087         * lisp/cus-start.el (read-buffer-function): Don't advertise
32088         iswitchb-read-buffer any more.
32089         (iswitchb): Don't tweak this obsolete group any more.
32091 2015-04-13  Artur Malabarba  <bruce.connor.am@gmail.com>
32093         * lisp/emacs-lisp/package.el: Fix package--ensure-init-file.
32095         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Implement docstrings.
32096         Adding a string after a constructor's argument list will use
32097         that string as the constructor function docstring.  If this string
32098         is absent but the struct itself was given a docstring, use that as
32099         the constructor's docstring.
32100         Fixes bug#17284.
32102 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
32104         Deprecate `intangible' and `point-entered' properties
32105         * lisp/emacs-lisp/cursor-sensor.el: New file.
32106         * lisp/simple.el (pre-redisplay-functions): New hook.
32107         (redisplay--pre-redisplay-functions): New function.
32108         (pre-redisplay-function): Use it.
32109         (minibuffer-avoid-prompt): Mark obsolete.
32110         (redisplay--update-region-highlight): Adapt it to work as a function on
32111         pre-redisplay-functions.
32112         * lisp/cus-start.el (minibuffer-prompt-properties--setter): New fun.
32113         (minibuffer-prompt-properties): Use it.  Use cursor-intangible rather
32114         than point-entered to make the prompt intangible.
32115         * lisp/forms.el: Move `provide' calls to the end.
32116         (forms-mode): Don't use `run-hooks' on a local var.
32117         (forms--make-format, forms--make-format-elt-using-text-properties):
32118         Use cursor-intangible rather than `intangible'.
32119         (forms-mode): Enable cursor-intangible-mode.
32120         * lisp/isearch.el (isearch-mode): Use defvar-local.
32121         (cursor-sensor-inhibit): Declare.
32122         (isearch-mode): Set cursor-sensor-inhibit.
32123         (isearch-done): Set it back.
32124         (isearch-open-overlay-temporary, isearch-open-necessary-overlays)
32125         (isearch-close-unnecessary-overlays): Don't bother with `intangible'
32126         any more.
32127         * lisp/ses.el (ses-localvars): Remove `mode-line-process'.
32128         (ses-sym-rowcol, ses-cell-value, ses-col-width, ses-col-printer):
32129         Add Edebug spec.
32130         (ses-goto-print, ses-print-cell, ses-adjust-print-width)
32131         (ses-goto-data, ses-setup, ses-copy-region): Don't let-bind
32132         inhibit-point-motion-hooks any more.
32133         (ses--cell-at-pos, ses--curcell): New functions, extracted from
32134         ses-set-curcell.
32135         (ses-set-curcell): Use them.
32136         (ses-print-cell, ses-setup): Use cursor-intangible instead of
32137         `intangible'.  Make sure cursor-intangible isn't sticky at BOB.
32138         (ses-print-cell-new-width, ses-reprint-all, ses-recalculate-all):
32139         Use ses--cell-at-pos.
32140         (ses--mode-line-process, ses--cursor-sensor-highlight): New functions,
32141         extracted from ses-command-hook.  Make them work with multiple windows
32142         displaying the same buffer.
32143         (ses-mode): Use them via mode-line-process and pre-redisplay-functions.
32144         Enable cursor-intangible-mode.
32145         (ses-command-hook): Remove cell highlight and mode-line update code.
32146         (ses-forward-or-insert, ses-copy-region-helper, ses-sort-column):
32147         Update for new name of text-property holding the cell name.
32148         (ses-rename-cell): Don't mess with mode-line-process.
32149         * lisp/erc/erc-stamp.el (erc-add-timestamp): Use the new
32150         cursor-sensor-functions property instead of point-entered.
32151         (erc-insert-timestamp-right, erc-format-timestamp):
32152         Use cursor-intangible rather than `intangible'.
32153         (erc-munge-invisibility-spec): Use add-to-invisibility-spec and
32154         remove-from-invisibility-spec.  Enable cursor-intangible-mode and
32155         cursor-sensor-mode if needed.
32156         (erc-echo-timestamp): Adapt to calling convention of
32157         cursor-sensor-functions.
32158         (erc-insert-timestamp-right): Remove unused vars `current-window' and
32159         `indent'.
32160         * lisp/gnus/gnus-group.el (gnus-tmp-*): Declare.
32161         (gnus-update-group-mark-positions): Remove unused `topic' var.
32162         (gnus-group-insert-group-line): Remove unused var `header'.
32163         (gnus-group--setup-tool-bar-update): New function.
32164         (gnus-group-insert-group-line): Use it.
32165         (gnus-group-update-eval-form): Declare local
32166         dynamically-bound variables.
32167         (gnus-group-unsubscribe-group): Use \` and \' to match string bounds.
32168         * lisp/gnus/gnus-topic.el (gnus-topic-jump-to-topic)
32169         (gnus-group-prepare-topics, gnus-topic-update-topic)
32170         (gnus-topic-change-level, gnus-topic-catchup-articles)
32171         (gnus-topic-remove-group, gnus-topic-delete, gnus-topic-indent):
32172         Use inhibit-read-only.
32173         (gnus-topic-prepare-topic): Use gnus-group--setup-tool-bar-update.
32174         (gnus-topic-mode): Use define-minor-mode and derived-mode-p.
32175         * lisp/textmodes/reftex-index.el (reftex-display-index):
32176         Use cursor-intangible-mode if available.
32177         (reftex-index-post-command-hook): Check cursor-intangible.
32178         * lisp/textmodes/reftex-toc.el (reftex-toc):
32179         Use cursor-intangible-mode if available.
32180         (reftex-toc-recenter, reftex-toc-post-command-hook):
32181         Check cursor-intangible.
32182         * lisp/textmodes/sgml-mode.el: Use lexical-binding.
32183         (sgml-tag): Use cursor-sensor-functions instead of point-entered.
32184         (sgml-tags-invisible): Use with-silent-modifications and
32185         inhibit-read-only.  Enable cursor-sensor-mode.
32186         (sgml-cursor-sensor): Rename from sgml-point-entered and adjust to
32187         calling convention of cursor-sensor-functions.
32188         * lisp/textmodes/table.el (table-cell-map-hook, table-load-hook)
32189         (table-point-entered-cell-hook, table-point-left-cell-hook):
32190         Don't autoload.
32191         (table-cell-entered-state): Remove var.
32192         (table--put-cell-point-entered/left-property)
32193         (table--remove-cell-properties):
32194         Use cursor-sensor-functions rather than point-entered/left.
32195         (table--point-entered/left-cell-function): Merge
32196         table--point-entered-cell-function and table--point-left-cell-function
32197         and adjust to calling convention of cursor-sensor-functions.
32199         Update ldef-boots.el
32201         * lisp/emacs-lisp/pcase.el (pcase-dolist): Autoload as well.
32203         * doc/misc/eieio.texi: Don't advertise now obsolete constructs
32205         Collapse successive char deletions in the undo log
32206         * src/cmds.c (remove_excessive_undo_boundaries): New function,
32207         extracted from Fself_insert_command.
32208         (Fdelete_char, Fself_insert_command): Use it.
32209         * src/fileio.c (Fmake_symbolic_link): Rename arg to `target'.
32210         * src/keyboard.c (syms_of_keyboard): `top-level' shouldn't be special.
32212         xterm and OSC 52: Add NEWS entry, and tweak the code
32213         * lisp/term/xterm.el (gui-set-selection) <nil>: Move method definition
32214         to top-level.
32215         (terminal-init-xterm-activate-set-selection): Set a terminal property.
32216         (xterm--set-selection): Use it instead of checking the value of
32217         `terminal-initted'.  Don't use string-bytes.
32219 2015-04-13  Philipp Stephani  <p.stephani2@gmail.com>
32221         xterm.el: Implement OSC-52 functionality for setting the X selection
32222         * lisp/term/xterm.el (xterm-max-cut-length): New var.
32223         (xterm--set-selection, terminal-init-xterm-activate-set-selection):
32224         New funs.
32225         (terminal-init-xterm, xterm--version-handler): Use them.
32227 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
32229         Remove left over code from when we used an obsolete/loaddefs.el file
32230         * lisp/subr.el (do-after-load-evaluation): Remove left over code from
32231         when we used an obsolete/loaddefs.el file.
32233         * lisp/cedet/semantic/fw.el (semantic-exit-on-input)
32234         (semanticdb-without-unloaded-file-searches): Use declare.
32235         (semantic-fw-add-edebug-spec): Remove.
32237         * lisp/completion.el (completion-lisp-mode-hook):
32238         Use completion-separator-chars rather than local key binding.
32240         * src/*.c: Set deactivate_mark buffer-locally
32241         (Bug#20260)
32242         * src/insdel.c (prepare_to_modify_buffer_1):
32243         * src/fileio.c (Finsert_file_contents): Set deactivate_mark
32244         buffer-locally.
32246 2015-04-12  Fabián Ezequiel Gallina  <fgallina@gnu.org>
32248         python.el: Keep symmetry on sexp navigation with parens
32249         (Bug#19954)
32250         * lisp/progmodes/python.el
32251         (python-nav--forward-sexp): Add argument skip-parens-p.
32252         (python-nav-forward-sexp, python-nav-backward-sexp)
32253         (python-nav-forward-sexp-safe)
32254         (python-nav-backward-sexp-safe): Use it.
32255         * test/automated/python-tests.el
32256         (python-nav-forward-sexp-1): Fix test.
32258 2015-04-12  João Távora  <joaotavora@gmail.com>
32260         Don't use `setq-local' in Gnus code
32261         This might break upstream builds with older Emacsen
32262         * lisp/gnus/message.el (message-mode): Use `set' and
32263         `make-local-variable' instead of `setq-local'.
32265 2015-04-12  Paul Eggert  <eggert@cs.ucla.edu>
32267         Update Makefile.in's .PHONY dependencies
32268         * Makefile.in (change-history-commit, master-branch-is-current)
32269         (no-ChangeLog): Now phony.
32271         Remove configure's --with-mmdf option
32272         * configure.ac (MAIL_USE_MMDF): Remove.
32273         * etc/NEWS: Document this.
32274         * lib-src/movemail.c: Assume MAIL_USE_MMDF is not defined.
32275         (Bug#20308)
32277         * doc/man/ChangeLog.01: Rename from doc/man/ChangeLog.1.
32278         That way, 'make install' won't think it's a man page.
32279         Reported by Ashish SHUKLA in:
32280         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00656.html
32282         Improve 'make change-history' prereq tests
32283         * Makefile.in (gen_origin): Fix to match what's in the master branch.
32284         (no-ChangeLog, master-branch-is-current): New rules.
32285         (change-history): Depend on them, to avoid similar future problems.
32286         Escape the local-variables string to pacify Emacs when editing
32287         Makefile.in.
32289 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
32291         * test/automated/package-test.el (with-package-test):
32292         Kill Packages buffer.
32294         * lisp/emacs-lisp/package.el: Improve transaction y-or-n prompt.
32295         (package-menu--prompt-transaction-p): Prompt for "Delete" first,
32296         "Upgrade" last, and use capitalized instead of all-caps.
32298         * lisp/emacs-lisp/package.el: Completely silence async operations.
32299         (package--make-autoloads-and-stuff): Silence autoloads.
32300         (package--save-selected-packages): New function, silences
32301         `customize-save-variable'.
32302         (package--user-selected-p, package-install-from-buffer)
32303         (package-delete, package-install): Use it.
32304         (package-install-from-archive)
32305         (package-menu--perform-transaction): Silence.
32306         (package-menu-execute): Feedback when operation starts.
32308         Use delay-mode-hooks when visiting the init-file
32309         * lisp/emacs-lisp/package.el (package--ensure-init-file):
32310         delay-mode-hooks.
32311         * lisp/cus-edit.el (custom-save-all): delay-mode-hooks.
32313         * lisp/files.el: Only message when saving if save-silently is nil.
32314         (save-silently): New variable.
32315         (files--message): New function.
32316         (find-file-noselect, save-buffer, basic-save-buffer)
32317         (basic-save-buffer-2, save-some-buffers, not-modified)
32318         (append-to-file): Use them.
32320 2015-04-12  Johan Bockgård  <bojohan@gnu.org>
32322         Support debug declarations in pcase macros
32323         * lisp/emacs-lisp/pcase.el (pcase-MACRO): New edebug spec.
32324         (pcase-UPAT): Use it.  Remove "`".
32325         (pcase--edebug-match-macro): New function.
32326         (pcase-defmacro): Support debug declarations.
32327         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
32328         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>:
32329         * lisp/emacs-lisp/pcase.el (\`): <pcase-defmacro>:
32330         Add debug declaration.
32332         pcase.el: Edebug support for `app' and vector patterns
32333         * lisp/emacs-lisp/pcase.el (pcase-FUN): New edebug spec.
32334         (pcase-UPAT): Use it.  Support `app' patterns.
32335         (pcase-QPAT): Support vector patterns.
32337         edebug.el: Disambiguate vector specifications
32338         * lisp/emacs-lisp/edebug.el (edebug-match-list): Always treat
32339         `(vector ...)' as a vector specification, not as a sublist.
32341         (gnus-summary-refer-thread): Don't clobber unread articles
32342         This fixes a bug where `A T' causes "random" articles to become marked
32343         as read.
32344         * lisp/gnus/gnus-sum.el (gnus-summary-refer-thread): Make sure
32345         gnus-newsgroup-unreads remains sorted.
32347         mouse-sel.el: Fix mouse-sel-get-selection-function
32348         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
32349         Use gui--last-selected-text-primary instead of no longer existing
32350         gui-last-selected-text.
32352         * lisp/rect.el (delete-whitespace-rectangle-line): Don't cross EOL.
32354         * lisp/net/nsm.el (nsm-query-user): Use cursor-in-echo-area.
32356 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
32358         * lisp/emacs-lisp/package.el (list-packages): Avoid redundant generate.
32360         * lisp/emacs-lisp/package.el (list-packages): Call refresh in
32361         right buffer.
32363         * lisp/emacs-lisp/bytecomp.el: Silence noninteractive compilations.
32364         (byte-compile--interactive): New var.
32365         (byte-compile--message): New function.
32366         (byte-compile-log-1, byte-force-recompile)
32367         (byte-recompile-directory, byte-recompile-file)
32368         (byte-compile-file, compile-defun)
32369         (byte-compile-file-form-defmumble, byte-compile)
32370         (byte-compile-file-form-defalias, display-call-tree): Use it.
32372         * lisp/files.el: Don't message when nothing happened.
32373         (save-some-buffers, basic-save-buffer): Before messaging to say
32374         "nothing was saved" check if (called-interactively-p 'any).
32376 2015-04-12  João Távora  <joaotavora@gmail.com>
32378         Summary: Improve sexp-based movement in message-mode
32379         Works by giving citations and smileys a different syntax.  This helps
32380         modes like `show-paren-mode', `electric-pair-mode', and C-M-*
32381         sexp-based movement.
32382         * lisp/gnus/message.el (message--syntax-propertize): New function.
32383         (message-mode): Set syntax-related vars.
32384         (message-smileys): New variable.
32385         * test/automated/message-mode-tests.el: New file
32387 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
32389         Use bool for boolean in window.c
32390         * src/window.c: Omit unnecessary static function decls.
32391         (adjust_window_count, select_window, Fselect_window)
32392         (window_body_width, Fwindow_body_height, Fwindow_body_width)
32393         (set_window_hscroll, check_window_containing, Fwindow_at)
32394         (Fwindow_end, Fset_window_start, Fpos_visible_in_window_p)
32395         (unshow_buffer, replace_window, recombine_windows)
32396         (add_window_to_list, candidate_window_p, next_window)
32397         (Fnext_window, Fprevious_window, window_loop, check_all_windows)
32398         (Fget_buffer_window, Fdelete_other_windows_internal)
32399         (replace_buffer_in_windows_safely, set_window_buffer)
32400         (Fset_window_buffer, Fforce_window_update)
32401         (temp_output_buffer_show, make_parent_window)
32402         (window_resize_check, window_resize_apply, Fwindow_resize_apply)
32403         (resize_frame_windows, Fsplit_window_internal)
32404         (Fdelete_window_internal, grow_mini_window, shrink_mini_window)
32405         (Fresize_mini_window_internal, mark_window_cursors_off)
32406         (window_scroll, window_scroll_pixel_based)
32407         (window_scroll_line_based, scroll_command, Fscroll_other_window)
32408         (Fscroll_left, Fscroll_right, displayed_window_lines, Frecenter)
32409         (Fmove_to_window_line, Fset_window_configuration)
32410         (delete_all_child_windows, apply_window_adjustment)
32411         (set_window_fringes, set_window_scroll_bars)
32412         (Fset_window_vscroll, foreach_window, foreach_window_1)
32413         (compare_window_configurations, Fcompare_window_configurations):
32414         Prefer 'bool', 'true', and 'false' for booleans.
32415         * src/window.h (WINDOW_MODE_LINE_LINES)
32416         (WINDOW_HEADER_LINE_LINES): Omit unnecessary "!!" on bool value.
32418 2015-04-11  Artur Malabarba  <bruce.connor.am@gmail.com>
32420         Speed up byte-compilation and autoload generation by avoiding mode-hooks
32421         This prevents emacs-lisp-mode-hook from being run everytime an
32422         autoload file is generated, which can account for a fraction of
32423         package installation time depending on the hooks the user has
32424         configured.
32425         * lisp/emacs-lisp/bytecomp.el (byte-compile-file): Use delay-mode-hooks.
32426         * lisp/emacs-lisp/autoload.el (autoload-find-file)
32427         (autoload-find-generated-file): Use delay-mode-hooks.
32429         * lisp/emacs-lisp/package.el: Improve `package-menu-refresh'.
32430         (package-menu-refresh): Respect async and do new package checking.
32431         (list-packages): Use `package-menu-refresh' instead of repeating code.
32433         * lisp/emacs-lisp/package.el: Improve package-menu-quick-help.
32434         (package--quick-help-keys): New variable.
32435         (package--prettify-quick-help-key): New function.
32436         (package-menu-quick-help): Use it.
32438         * lisp/emacs-lisp/package.el: Fix initially wrong compat table.
32439         (package--build-compatibility-table): Require finder.
32441         * test/automated/package-test.el: Fix new test.
32443         * lisp/emacs-lisp/package.el: Silence async operations.
32444         (package--silence): New variable.
32445         (package--message): New function.
32446         (package-import-keyring, package-refresh-contents)
32447         (package-compute-transaction, package-install, package-delete)
32448         (package-menu--perform-transaction, package-menu-execute): Use it.
32450         * test/automated/package-test.el: Test async functionality.
32451         (package-test-update-archives-async): New test.
32453 2015-04-11  Daiki Ueno  <ueno@gnu.org>
32455         Utilize `make-process' in epg.el
32456         * lisp/epg.el (epg-error-output): Abolish.
32457         (epg-context): New slot `error-buffer'.
32458         (epg--start): Use `make-process' and `make-pipe-process'.
32459         (epg--process-filter): Remove code separating stderr from stdout.
32460         (epg-wait-for-completion): Simplify `error-output' handling.
32461         (epg-reset): Dispose error buffer.
32463 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
32465         * .gitignore: Ignore doc temps and outputs.
32467         Port commit-msg to MSYS Bash+Gawk
32468         See Eli Zaretskii in:
32469         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00610.html
32470         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format)
32471         (cent_sign, print_at_sign, at_sign): Revert previous change.
32472         (print_at_sign): Prepend "BEGIN".
32473         (at_sign): Redirect from /dev/null to be safer with pre-POSIX awk.
32475         Port commit-msg to broken MS-Windows shell
32476         * build-aux/git-hooks/commit-msg (cent_sign):
32477         Just use UTF-8 here rather than ASCII + printf, as the latter fails
32478         on a broken MS-Windows shell.  Reported by Eli Zaretskii in:
32479         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00592.html
32481 2015-04-11  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
32483         Support GnuTLS v3.4 and later on MS-Windows
32484         * src/gnutls.c (syms_of_gnutls) <libgnutls-version>: New DEFSYM.
32485         * lisp/term/w32-win.el (dynamic-library-alist): Determine which
32486         GnuTLS DLL to load according to value of libgnutls-version.
32487         (Bug#20294)
32489 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
32491         Minor quoting etc. fixes to misc manuals
32492         Fix some minor quoting and spacing issues.  Distinguish more
32493         clearly among grave accent and apostrophe (which are ASCII) and
32494         single quote (which is not).  Prefer the standard terms
32495         "apostrophe" and "grave accent" to alternative names that can be
32496         confusing.  Use apostrophes to single-quote ASCII text.
32497         * doc/misc/remember.texi: Spell the mystic's pseudonym in UTF-8
32498         rather than approximating it in ASCII with grave accent.
32500 2015-04-11  Daiki Ueno  <ueno@gnu.org>
32502         Respect more keyword args in `make-process'
32503         * src/process.c (Fmake_process): Respect `:sentinel' and `:filter'
32504         keywords as documented.
32506 2015-04-10  Dmitry Gutov  <dgutov@yandex.ru>
32508         Extract ChangeLog entries when committing a directory
32509         * lisp/vc/vc-dispatcher.el (vc-log-edit): Update FIXME comment.
32510         * lisp/vc/log-edit.el (log-edit-changelog-insert-entries):
32511         Add a FIXME comment.
32512         (log-edit-changelog-entries): Extract from
32513         `log-edit-changelog-entries', handle FILE being a directory
32514         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00555.html).
32516 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
32518         Fix problems found by --enable-gcc-warnings
32519         * src/process.c (create_process, Fmake_pipe_process)
32520         (Fmake_network_process): Omit unused locals.
32522         Fix commit-msg to handle scissors lines
32523         * build-aux/git-hooks/commit-msg:
32524         Ignore every line after a scissors line, such as a line generated
32525         by 'git commit -v'.  Problem reported by Johan Bockgård in:
32526         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00580.html
32528         port commit-msg to Gawk 3.0.4 (1999)
32529         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format, cent_sign)
32530         (print_at_sign, at_sign): New vars.  Use them to avoid problems
32531         Eli Zaretskii encountered with Gawk 3.0.4 (1999) on MSYS.  See:
32532         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
32534         Have commit-msg report commit failure
32535         * build-aux/git-hooks/commit-msg: If the commit is aborted,
32536         say so.  Simplify by doing this at the end.  Problem reported
32537         by Eli Zaretskii in:
32538         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
32540 2015-04-10  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
32542         Clean up LDAP Configuration section of EUDC manual
32543         * doc/misc/eudc.texi: Combine indices.
32544         (LDAP Configuration): Use command markup.  Add index entries.
32545         Change formatting.  Wrap long lines.  Add noindent markup.
32547 2015-04-10  Daiki Ueno  <ueno@gnu.org>
32549         Add facility to collect stderr of async subprocess
32550         * src/w32.h (register_aux_fd): New function declaration.
32551         * src/w32.c (register_aux_fd): New function.
32552         * src/process.h (struct Lisp_Process): New member stderrproc.
32553         * src/process.c (PIPECONN_P): New macro.
32554         (PIPECONN1_P): New macro.
32555         (Fdelete_process, Fprocess_status, Fset_process_buffer)
32556         (Fset_process_filter, Fset_process_sentinel, Fstop_process)
32557         (Fcontinue_process): Handle pipe process specially.
32558         (create_process): Respect p->stderrproc.
32559         (Fmake_pipe_process): New function.
32560         (Fmake_process): Add new keyword argument :stderr.
32561         (wait_reading_process_output): Specially handle a pipe process when
32562         it gets an EOF.
32563         (syms_of_process): Register Qpipe and Smake_pipe_process.
32564         * doc/lispref/processes.texi (Asynchronous Processes): Document
32565         `make-pipe-process' and `:stderr' keyword of `make-process'.
32566         * lisp/subr.el (start-process): Suggest to use `make-process' handle
32567         standard error separately.
32568         * test/automated/process-tests.el (process-test-stderr-buffer)
32569         (process-test-stderr-filter): New tests.
32570         * etc/NEWS: Mention new process type `pipe' and its usage with the
32571         `:stderr' keyword of `make-process'.
32573 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
32575         Minor quoting etc. fixes to lispref manual
32576         * doc/lispref/tips.texi (Documentation Tips):
32577         Distinguish more clearly among grave accent, apostrophe,
32578         and single quote.
32579         * doc/lispref/README, doc/lispref/buffers.texi:
32580         * doc/lispref/commands.texi, doc/lispref/control.texi:
32581         * doc/lispref/customize.texi, doc/lispref/display.texi:
32582         * doc/lispref/elisp.texi, doc/lispref/files.texi:
32583         * doc/lispref/frames.texi, doc/lispref/hash.texi:
32584         * doc/lispref/help.texi, doc/lispref/internals.texi:
32585         * doc/lispref/loading.texi, doc/lispref/makefile.w32-in:
32586         * doc/lispref/markers.texi, doc/lispref/modes.texi:
32587         * doc/lispref/nonascii.texi, doc/lispref/objects.texi:
32588         * doc/lispref/os.texi, doc/lispref/positions.texi:
32589         * doc/lispref/strings.texi, doc/lispref/syntax.texi:
32590         * doc/lispref/text.texi, doc/lispref/tips.texi:
32591         * doc/lispref/two-volume-cross-refs.txt, doc/lispref/windows.texi:
32592         Use American-style double quoting in ordinary text,
32593         and quote 'like this' when single-quoting in ASCII text.
32594         Also, fix some minor spacing issues.
32596 2015-04-10  Michael Albinus  <michael.albinus@gmx.de>
32598         Handle symlinked test directory in tramp-tests.el
32599         * test/automated/tramp-tests.el (tramp-test18-file-attributes)
32600         (tramp--test-check-files): Use `file-truename' for directories.
32602 2015-04-10  Eli Zaretskii  <eliz@gnu.org>
32604         Fix 'recenter' when visual-line-mode is turned on
32605         * src/window.c (Frecenter): Use the same code for GUI and TTY
32606         frames alike; use vmotion only for "initial" frames.  This is
32607         because vmotion doesn't support visual-line-mode.  Rewrite the
32608         'iarg >= 0' case to use move_it_* functions instead of using
32609         vmotion, for the same reason.  Fix the clipping of the argument
32610         value to support scroll-margin in all cases and avoid unwarranted
32611         recentering.  Reported by Milan Stanojević <milanst@gmail.com> in
32612         http://lists.gnu.org/archive/html/help-gnu-emacs/2015-04/msg00092.html,
32613         which see.
32615 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
32617         * lisp/abbrev.el (define-abbrev-table): Refine last change.
32619         * lisp/emacs-lisp/cl-lib.el: Partial revert of "2015-04-05 Rationalize
32620         use of c[ad]+r", so as to keep the "cl-" prefix on all
32621         cl-lib definitions.
32623         * lisp/progmodes/vhdl-mode.el (vhdl-prepare-search-2):
32624         Use inhibit-point-motion-hooks.
32626         * lisp/cedet/semantic: Remove some dead code.
32627         * lisp/cedet/semantic/util-modes.el
32628         (semantic-stickyfunc-header-line-format): Emacs<22 is not supported
32629         any more.
32630         * lisp/cedet/semantic/fw.el (semantic-buffer-local-value): Emacs<21 is
32631         not supported any more.
32632         (semantic-safe): Use `declare'.
32633         * lisp/cedet/semantic/decorate.el (semantic-set-tag-intangible)
32634         (semantic-tag-intangible-p): Remove unused functions.
32635         * lisp/cedet/semantic/complete.el (semantic-displayor-window-edges):
32636         Remove unused function.
32638         * lisp/gnus/gnus-art.el (gnus-hidden-properties): Simplify.
32639         (gnus-article-hide-text, gnus-article-unhide-text)
32640         (gnus-article-unhide-text-type): Remove special handling of
32641         `intangible' since that property is not used any more.
32642         (gnus-article-treat-body-boundary): Use gnus-hidden-properties.
32644 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
32646         Use the VC root in `log-edit-listfun'
32647         * lisp/vc/vc-dispatcher.el (vc-log-edit): Use the VC root in
32648         `log-edit-listfun'.
32650 2015-04-09  Jay Belanger  <jay.p.belanger@gmail.com>
32652         Fix description of Unix time, mention new function.
32653         * lisp/calc/calc-forms.el (calcFunc-unixtime): Fix adjustment for
32654         Unix time.
32655         * doc/misc/calc.texi (Date Forms): Fix description of Unix time.
32656         (Basic Operations on Units): Mention `calc-convert-exact-units'.
32658 2015-04-09  Artur Malabarba  <bruce.connor.am@gmail.com>
32660         * lisp/emacs-lisp/package.el: Use mode-line-process for notification.
32662 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
32664         * lisp/vc/log-edit.el (log-edit-insert-changelog-entries):
32665         Don't add newline after the last entry.
32667 2015-04-09  Simen Heggestøyl  <simenheg@gmail.com>
32669         css-mode.el: Add "not" pseudo-class
32670         (Bug#20267)
32671         * lisp/textmodes/css-mode.el (css-pseudo-class-ids): Add "not" to
32672         list of CSS pseudo-classes.
32674 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
32676         * etc/NEWS: Add missing entry for "Stop messing with the EMACS env var".
32678 2015-04-09  Michael Albinus  <michael.albinus@gmx.de>
32680         Stop messing with the EMACS env var
32681         * doc/emacs/misc.texi (Interactive Shell): Remove description of
32682         EMACS env var.
32684 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
32686         Adapt 'make change-history' to coding cookie
32687         * Makefile.in (change-history): Adjust to change of format of
32688         ChangeLog file, which now has a coding cookie before an indented
32689         copyright notice.
32691 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
32693         Adapt 'make change-history' to coding cookie
32694         * Makefile.in (change-history): Adjust to change of format of
32695         ChangeLog file, which now has a coding cookie before an indented
32696         copyright notice.
32698         gitlog-to-changelog coding cookie and mv -i
32699         * build-aux/gitlog-to-emacslog: Use ChangeLog.1, not Makefile.in,
32700         for copyright notice prototype, so that we get a proper "coding:"
32701         cookie.  Use 'mv -i' to avoid unconditionally overwriting an
32702         existing ChangeLog.  Problems reported by Eli Zaretskii in:
32703         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00504.html
32705         Merge from gnulib
32706         * build-aux/gitlog-to-changelog: Update from gnulib, incorporating:
32707         2015-04-09 gitlog-to-changelog: port to MS-Windows
32709 2015-04-09  Boruch Baum  <boruch_baum@gmx.com>  (tiny change)
32711         * lisp/bookmark.el (bookmark-bmenu-goto-bookmark): Don't inf-loop.
32712         (Bug#20212)
32714 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
32716         Stop messing with the EMACS env var
32717         (Bug#20202)
32718         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
32719         * lisp/comint.el (comint-exec-1):
32720         * lisp/term.el (term-exec-1): Don't set EMACS envvar.
32721         * lisp/progmodes/compile.el (compilation-start): Same and bring
32722         INSIDE_EMACS's format in line with other users.
32724         css-mode.el (css-smie-rules): Fix indentation after complex selectors
32725         (Bug#20282)
32726         * lisp/textmodes/css-mode.el (css-smie-rules): Don't get confused by
32727         inner structure of selectors.
32729 2015-04-08  Fabián Ezequiel Gallina  <fgallina@gnu.org>
32731         python.el: Indent docstring lines to base-indent
32732         (Bug#19595)
32733         Thanks to immerrr <immerrr@gmail.com> for reporting and providing
32734         an initial patch.
32735         * lisp/progmodes/python.el
32736         (python-indent-context): Add :inside-docstring context.
32737         (python-indent--calculate-indentation): Handle :inside-docstring.
32738         (python-indent-region): Re-indent docstrings.
32739         * test/automated/python-tests.el (python-indent-region-5)
32740         (python-indent-inside-string-2): Fix tests.
32742         python.el: Increase native completion robustness
32743         (Bug#19755)
32744         Thanks to Carlos Pita <carlosjosepita@gmail.com> for reporting
32745         this and providing useful ideas.
32746         * lisp/progmodes/python.el
32747         (python-shell-completion-native-output-timeout): Increase value.
32748         (python-shell-completion-native-try-output-timeout): New var.
32749         (python-shell-completion-native-try): Use it.
32750         (python-shell-completion-native-setup): New readline setup avoids
32751         polluting current context, ensures output when no-completions are
32752         available and includes output end marker.
32753         (python-shell-completion-native-get-completions): Trigger with one
32754         tab only.  Call accept-process-output until output end is found or
32755         python-shell-completion-native-output-timeout is exceeded.
32757 2015-04-08  Samer Masterson  <samer@samertm.com>
32759         * lisp/eshell: Make backslash a no-op in front of normal chars
32760         (Bug#8531)
32761         * lisp/eshell/esh-arg.el (eshell-parse-argument-hook): Update comment.
32762         (eshell-parse-backslash): Return escaped character after backslash
32763         if it is special.  Otherwise, if the backslash is not in a quoted
32764         string, ignore the backslash and return the character after; if
32765         the backslash is in a quoted string, return the backslash and the
32766         character after.
32767         * test/automated/eshell.el (eshell-test/escape-nonspecial)
32768         (eshell-test/escape-nonspecial-unicode)
32769         (eshell-test/escape-nonspecial-quoted)
32770         (eshell-test/escape-special-quoted): Add tests for new
32771         `eshell-parse-backslash' behavior.
32773 2015-04-08  Gustav Hållberg  <gustav@gmail.com>  (tiny change)
32775         * lisp/vc/diff-mode.el (diff-hunk-file-names): Don't require a TAB
32776         after the file name.
32777         (Bug#20276)
32779 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
32781         Minor quoting etc. fixes to Emacs manual
32782         * doc/emacs/Makefile.in, doc/emacs/ack.texi, doc/emacs/building.texi:
32783         * doc/emacs/calendar.texi, doc/emacs/cmdargs.texi:
32784         * doc/emacs/custom.texi, doc/emacs/dired.texi, doc/emacs/emacs.texi:
32785         * doc/emacs/files.texi, doc/emacs/glossary.texi, doc/emacs/gnu.texi:
32786         * doc/emacs/indent.texi, doc/emacs/macos.texi:
32787         * doc/emacs/maintaining.texi, doc/emacs/makefile.w32-in:
32788         * doc/emacs/programs.texi, doc/emacs/rmail.texi:
32789         * doc/emacs/search.texi, doc/emacs/trouble.texi:
32790         * doc/emacs/vc1-xtra.texi:
32791         Use American-style double quoting in ordinary text,
32792         and quote 'like this' when single-quoting in ASCII text.
32793         Also, fix some minor spacing issues.
32795         Minor quoting etc. fixes to elisp intro
32796         * doc/lispintro/emacs-lisp-intro.texi: Consistently use
32797         American-style double quoting in ordinary text.  In ASCII text,
32798         consistently quote 'like this' instead of `like this', unless
32799         Emacs requires the latter.
32801 2015-04-08  Dmitry Gutov  <dgutov@yandex.ru>
32803         * CONTRIBUTE: Mention log-edit-insert-changelog.
32805         * CONTRIBUTE: Emphasize creating the top-level ChangeLog file manually.
32807 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
32809         * doc/misc/calc.texi (Summary): Avoid '@:' when usurped.
32811 2015-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
32813         * lisp/emacs-lisp/eieio-core.el (eieio-copy-parents-into-subclass):
32814         Fix inheritance of initargs.  (Bug#20270)
32816 2015-04-08  Artur Malabarba  <bruce.connor.am@gmail.com>
32818         * lisp/emacs-lisp/package.el (package-menu-mode): Mode-line notification
32819         while dowloading information.
32821         * lisp/emacs-lisp/package.el: More conservative `ensure-init-file'
32822         (package--ensure-init-file): Check file contents before visiting.
32823         (package-initialize): Call it.
32824         (package-install-from-buffer, package-install): Don't call it.
32826 2015-04-08  Eli Zaretskii  <eliz@gnu.org>
32828         * src/eval.c (init_eval_once): Bump max_lisp_eval_depth to 800.
32829         (Bug#17517)
32831 2015-04-08  Michael Albinus  <michael.albinus@gmx.de>
32833         * lisp/net/tramp-cache.el (tramp-flush-file-property):
32834         Fix nasty scoping bug.
32836 2015-04-08  Tassilo Horn  <tsdh@gnu.org>
32838         Add notice to visual commands section
32839         * doc/misc/eshell.texi (Input/Output): Add notice that some tools
32840         such as git call less with its -F option which omits pagination if
32841         the contents is less than one page long.  This interferes with
32842         eshell's visual (sub-)commands.
32844 2015-04-07  Dmitry Gutov  <dgutov@yandex.ru>
32846         * lisp/ffap.el (ffap-string-at-point-mode-alist): Support
32847         environment variable expansion in file names.  (Bug#19839)
32849 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
32851         Prefer double-quote to accent-grave in man pages
32853 2015-04-07  Stefan Monnier  <monnier@iro.umontreal.ca>
32855         (Bug#20257)
32856         * lisp/files.el (set-visited-file-name): Clear auto-save if nil.
32858 2015-04-07  Ivan Shmakov  <ivan@siamics.net>
32860         Update etc/PROBLEMS.
32861         * etc/PROBLEMS: Mention visible-cursor; a few more mentions of
32862         ~/.Xresources and xrdb(1); refer to 'GNU Coreutils' and
32863         'X Window System' or 'X' (were: 'GNU Fileutils' and 'X Windows',
32864         respectively); other minor updates and tweaks.  (Bug#20011)
32866 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
32868         Add doc strings for some Isearch state vars
32869         * lisp/misearch.el (multi-isearch-buffer-list)
32870         (multi-isearch-file-list): Add doc strings.
32871         (Bug#20232)
32873 2015-04-07  Alan Mackenzie  <acm@muc.de>
32875         Always mark "<" and ">" in #include directives with text properties.
32876         * lisp/progmodes/cc-fonts.el (c-cpp-matchers): Replace a font-lock
32877         "anchored matcher" with an invocation of
32878         c-make-font-lock-search-function to allow fontification when there's
32879         no trailing space on an "#include <..>" line.
32881 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
32883         Generate a ChangeLog file from commit logs
32884         * .gitignore: Add 'ChangeLog'.
32885         * build-aux/gitlog-to-changelog: New file, from Gnulib.
32886         * build-aux/gitlog-to-emacslog: New file.
32887         * CONTRIBUTE: Document the revised workflow.
32888         * Makefile.in (clean): Remove *.tmp and etc/*.tmp*
32889         instead of just special cases.
32890         (CHANGELOG_HISTORY_INDEX_MAX, CHANGELOG_N, gen_origin): New vars.
32891         (ChangeLog, unchanged-history-files, change-history)
32892         (change-history-commit): New rules.
32893         * admin/admin.el (make-manuals-dist--1):
32894         Don't worry about doc/ChangeLog.
32895         * admin/authors.el: Add a FIXME.
32896         * admin/make-tarball.txt:
32897         * lisp/calendar/icalendar.el:
32898         * lisp/gnus/deuglify.el:
32899         * lisp/obsolete/gulp.el:
32900         * lwlib/README:
32901         Adjust to renamed ChangeLog history files.
32902         * admin/merge-gnulib (GNULIB_MODULES): Add gitlog-to-changelog.
32903         * admin/notes/repo: Call it 'master' a la Git, not 'trunk' a la Bzr.
32904         Remove obsolete discussion of merging ChangeLog files.
32905         New section "Maintaining ChangeLog history".
32906         * build-aux/git-hooks/pre-commit:
32907         Reject attempts to commit files named 'ChangeLog'.
32908         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
32909         * make-dist: Make and distribute top-level ChangeLog if there's a
32910         .git directory.  Distribute the new ChangeLog history files
32911         instead of scattered ChangeLog files.  Distribute the new files
32912         gitlog-to-changelog and gitlog-to-emacslog.
32913         (Bug#19113)
32915         Rename ChangeLogs for gitlog-to-changelog
32916         This patch was implemented via the following shell commands:
32917         find * -name ChangeLog |
32918         sed 's,.*,git mv & &.1,
32919         s, lisp/ChangeLog\.1$, lisp/ChangeLog.17,
32920         s, lisp/erc/ChangeLog\.1$, lisp/erc/ChangeLog.09,
32921         s, lisp/gnus/ChangeLog\.1$, lisp/gnus/ChangeLog.3,
32922         s, lisp/mh-e/ChangeLog\.1$, lisp/mh-e/ChangeLog.2,
32923         s, src/ChangeLog\.1$, src/ChangeLog.13,' |
32924         sh
32925         git commit -am"[this commit message]"
32927 This file records repository revisions from
32928 commit 9d56a21e6a696ad19ac65c4b405aeca44785884a (exclusive) to
32929 2016-03-04a00c6cfb5f3cafbad92bd4584a0f50343a568 (inclusive).
32930 2016-02-15decb15e0496cec0c48d980c88a5a9d7cc00da (inclusive).
32931 2016-02-04b6d89ff9288a49099f041752908b5eb9613e (inclusive).
32932 commit ba1422e12f80ae1eb2aa9d0ce80c14e3ee4b3950 (inclusive).
32933 See ChangeLog.1 for earlier changes.
32935 ;; Local Variables:
32936 ;; coding: utf-8
32937 ;; End:
32939   Copyright (C) 2015-2016 Free Software Foundation, Inc.
32941   This file is part of GNU Emacs.
32943   GNU Emacs is free software: you can redistribute it and/or modify
32944   it under the terms of the GNU General Public License as published by
32945   the Free Software Foundation, either version 3 of the License, or
32946   (at your option) any later version.
32948   GNU Emacs is distributed in the hope that it will be useful,
32949   but WITHOUT ANY WARRANTY; without even the implied warranty of
32950   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
32951   GNU General Public License for more details.
32953   You should have received a copy of the GNU General Public License
32954   along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.