1 2018-07-01 Paul Eggert <eggert@cs.ucla.edu>
3 * etc/HISTORY: Cite Brinkhoff on early history.
5 2018-07-01 Martin Rudalics <rudalics@gmx.at>
7 Document internal use of 'above-suspended' z-group frame parameter
9 * src/w32fns.c (w32_dialog_in_progress, x_set_z_group):
10 * src/xterm.c (x_set_z_group): Clarify the internal use of
11 'above-suspended' when setting a frame's 'z-group' parameter.
13 2018-06-30 Gemini Lasswell <gazally@runbox.com>
15 Increase max-lisp-eval-depth adjustment while in debugger (bug#31919)
17 * src/eval.c (call_debugger): Increase the amount of extra Lisp
18 evaluation depth given to the debugger to allow it to call cl-print.
19 * lisp/emacs-lisp/debug.el (debugger-setup-buffer): Add a comment
20 to suggest updating call_debugger when changing print-level.
22 2018-06-30 Eli Zaretskii <eliz@gnu.org>
24 Improve on last change in replace-buffer-contents
26 * src/editfns.c (Freplace_buffer_contents): Call modification
27 hooks only for the actual region where changes are made.
30 2018-06-30 Eli Zaretskii <eliz@gnu.org>
32 Fix a factual error in Introduction to Emacs Lisp
34 * doc/lispintro/emacs-lisp-intro.texi (Buffer Names): Update the
35 key that exits the splash screen. (Bug#32019)
37 2018-06-30 Eli Zaretskii <eliz@gnu.org>
39 Minor improvements in documentation of imenu.el
41 * lisp/imenu.el (imenu-generic-skip-comments-and-strings)
42 (imenu--generic-function): Doc fixes. (Bug#31962)
44 2018-06-30 Eli Zaretskii <eliz@gnu.org>
46 Avoid errors with recentering in 'skeleton-insert'
48 * lisp/skeleton.el (skeleton-insert): Don't recenter if we are
49 running in a buffer other than the one displayed in the selected
52 2018-06-29 Paul Eggert <eggert@cs.ucla.edu>
54 * src/lisp.h: Omit obsolete comment re bytecode stack.
56 2018-06-29 Eli Zaretskii <eliz@gnu.org>
58 Speed up replace-buffer-contents
60 * src/editfns.c (EXTRA_CONTEXT_FIELDS): Add a_unibyte and
62 (rbc_quitcounter): New static variable.
63 (Freplace_buffer_contents): Initialize a_unibyte, b_unibyte, and
64 rbc_quitcounter. Inhibit modification hooks if they were not
65 already inhibited. Use rarely_quit to allow user to quit, to
66 avoid calling maybe_quit too frequently (which hurts performance).
67 Remove redundant assertions (which hurt performance too much).
68 Call signal_after_change and update_compositions after all the
70 (buffer_chars_equal): Remove redundant assertions (which hurt
71 performance). Avoid using BUF_FETCH_CHAR_AS_MULTIBYTE, which
72 hurts performance by referencing Lisp symbols; instead, use
73 lower-level macros with explicit tests to select which macro to
76 2018-06-27 Dmitry Gutov <dgutov@yandex.ru>
78 Remove extra process call from vc-git-find-file-hook
80 * lisp/vc/vc-git.el (vc-git-find-file-hook): Resolve FIXMEs.
82 2018-06-27 Dmitry Gutov <dgutov@yandex.ru>
84 Speed up vc-git-dir-status-files
86 * lisp/vc/vc-git.el (vc-git-dir-status-goto-stage): Call 'git
87 ls-files -u' for the ls-files-conflict stage
88 (https://lists.gnu.org/archive/html/emacs-devel/2018-06/msg00885.html).
90 2018-06-27 Eli Zaretskii <eliz@gnu.org>
92 Avoid compiler warning using coding.h
94 * src/coding.h: Add INLINE_HEADER_BEGIN..INLINE_HEADER_END, since
95 this header now has an extern INLINE function.
97 2018-06-27 Michael Albinus <michael.albinus@gmx.de>
99 Sync with Tramp 2.3.4. Do not merge with master
101 * doc/misc/trampver.texi:
102 * lisp/net/trampver.el: Change version to "2.3.4".
104 * lisp/net/tramp-smb.el (tramp-smb-handle-delete-directory):
105 Check, that the directory has been removed indeed.
107 * test/lisp/net/tramp-tests.el (tramp-test21-file-links): Adapt test.
108 (tramp--test-emacs25-p): New defun.
109 (tramp-test34-vc-registered): Use it.
111 2018-06-27 Martin Rudalics <rudalics@gmx.at>
113 * src/xdisp.c (Vmouse_autoselect_window): Clarify doc-string (Bug#31975)
115 2018-06-26 Noam Postavsky <npostavs@gmail.com>
117 Detect a non-list package archive content properly (Bug#22311)
119 * lisp/emacs-lisp/package.el (package--download-one-archive): Use
120 `read' instead of `read-from-string'; the latter always returns a
121 cons, so the `listp' check on its return value doesn't make sense. It
122 was changed from `read' to `read-from-string' in 2015-04-01 "*
123 emacs-lisp/package.el: Implement asynchronous refreshing", but that
124 change was not needed because `read' works fine on strings as well as
127 2018-06-25 Christophe Junke <junke.christophe@gmail.com> (tiny change)
129 Add ido-fallback special variable (Bug#31707)
131 Before ido.el switch to lexical-binding, it was possible for other
132 packages to modify the 'fallback' variables declared inside
133 'ido-file-internal' and 'ido-buffer-internal'.
134 * lisp/ido.el (ido-fallback): New variable.
135 (ido-buffer-internal, ido-file-internal): Reset ido-fallback to nil
136 before prompting user. Use ido-fallback when ido-exit is 'fallback'.
137 (ido-fallback-command): Add optional FALLBACK-COMMAND argument.
139 2018-06-25 Karl Fogel <kfogel@red-bean.com>
141 Tighten a cross-reference in documentation
143 * doc/lispref/internals.texi (Writing Emacs Primitives): Switch to
144 a simple parenthetical cross-reference, following up to my
145 commit 9a53b6d426 of 2018-06-24.
149 https://lists.gnu.org/archive/html/emacs-devel/2018-06/msg00826.html
151 Subject: Re: [Emacs-diffs] \
152 emacs-26 9a53b6d: Say how to override a primitive interactive spec
154 CC: Stefan Monnier, Emacs Devel
155 Date: Mon, 25 Jun 2018 17:41:53 +0300
156 Message-Id: <83r2kvrkr2.fsf@gnu.org>
158 2018-06-25 Michael Albinus <michael.albinus@gmx.de>
160 Fix last change in tramp-sh.el
162 * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-directly):
163 Use "-R" rather than "-r" for recursive copy of directories.
165 2018-06-24 Paul Eggert <eggert@cs.ucla.edu>
167 Revert previous patch; comment was OK after all.
169 2018-06-24 Paul Eggert <eggert@cs.ucla.edu>
171 Fix lead comment for count_trailing_zero_bits
173 * src/data.c (count_trailing_zero_bits): Fix comment to match code.
175 2018-06-24 Noam Postavsky <npostavs@gmail.com>
177 * lisp/emacs-lisp/regexp-opt.el (regexp-opt): Fix docstring quotes.
179 2018-06-24 Simen Heggestøyl <simenheg@gmail.com>
181 Make a minor update to the CSS mode docstring
183 * lisp/textmodes/css-mode.el (css-mode): Mention 'fill-paragraph'.
185 2018-06-24 Karl Fogel <kfogel@red-bean.com>
187 Say how to override a primitive interactive spec
189 * doc/lispref/internals.texi (Writing Emacs Primitives): Mention that
190 the `interactive-form' property can be used to override a primitive
191 interactive specification, and refer to the detailed documentation
192 for setting that property.
194 From this thread on Emacs Devel:
196 https://lists.gnu.org/archive/html/emacs-devel/2018-03/msg00923.html
199 CC: Juri Linkov, Emacs Devel
200 Subject: Re: [Emacs-diffs] \
201 master b88e7c8: Make transpose-regions interactive (Bug#30343)
202 Date: Thu, 29 Mar 2018 14:38:15 +0300
203 Message-Id: <834lkzdsd4.fsf@gnu.org>
205 2018-06-24 Michael Albinus <michael.albinus@gmx.de>
209 * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file): In case of
210 FILENAME being a directory, check whether `copy-directory' could
211 be avoided. Suggested by Stephen Nutt <stnutt@gmail.com>. (Bug#31941)
212 (tramp-do-copy-or-rename-file-directly): Call "cp" with "-r".
214 2018-06-23 Leo Liu <sdl.web@gmail.com>
216 Fix previous change in minibuffer-default-add-dired-shell-commands
218 The mailcap minibuffer completion used dynamic binding. Locally set
220 * lisp/dired-aux.el (minibuffer-default-add-dired-shell-commands):
221 Store list of files in 'minibuffer-completion-table'. (Bug#31794)
223 2018-06-23 Eli Zaretskii <eliz@gnu.org>
225 * src/editfns.c (Fformat): Make %x easier to spot in doc string. (Bug#31945)
227 2018-06-23 Eli Zaretskii <eliz@gnu.org>
229 Improve responsiveness while in 'replace-buffer-contents'
231 * src/editfns.c (buffer_chars_equal): Avoid calling
232 buf_charpos_to_bytepos when the buffer is plain-ASCII.
233 Suggested by Milan Stanojević <mstanojevic@janestreet.com>.
234 Call maybe_quit to improve responsiveness.
235 (Freplace_buffer_contents): Call maybe_quit. Warn in the doc
236 string that the function could be slow. (Bug#31888)
238 2018-06-23 Eli Zaretskii <eliz@gnu.org>
240 Improve documentation of 'server-start' and friends
242 * lisp/server.el (server-start, server-running-p): Document how to
243 reliably check that the current Emacs process started the server.
246 2018-06-23 Eli Zaretskii <eliz@gnu.org>
248 Clarify wording about functions' argument lists
250 * doc/lispref/functions.texi (Argument List): Clarify the
253 2018-06-23 Eli Zaretskii <eliz@gnu.org>
255 * lisp/doc-view.el: Fix typos in the commentary. (Bug#31937)
257 2018-06-22 Eli Zaretskii <eliz@gnu.org>
259 Fix a typo in emacs-lisp-intro.texi
261 * doc/lispintro/emacs-lisp-intro.texi (kill-ring-yank-pointer):
262 Add a missing quote. Reported by Jean-Christophe Helary
263 <brandelune@gmail.com> in emacs-devel.
265 2018-06-22 Paul Eggert <eggert@cs.ucla.edu>
267 Fix doc typo: missing double-quote
269 2018-06-22 Eli Zaretskii <eliz@gnu.org>
271 Avoid segfaults in replace-buffer-contents with large buffers
273 * src/editfns.c (Freplace_buffer_contents): Don't release
274 malloc'ed memory as long as we are using it. (Bug#31888)
276 2018-06-22 Robert Pluim <rpluim@gmail.com>
278 Adjust for scaling for mode-line popup menus (Bug#31880)
280 * src/xmenu.c (menu_position_func) [HAVE_GTK3]: Take scaling
281 into account when calculating screen size.
283 2018-06-21 Simen Heggestøyl <simenheg@gmail.com>
285 Change name of `seqp' argument (Bug#26411)
287 * lisp/emacs-lisp/seq.el (seqp): Change argument name.
289 * doc/lispref/sequences.texi: Update the documentation for seqp.
291 2018-06-20 Noam Postavsky <npostavs@gmail.com>
293 Change index of ";" to better reflect it's usage (Bug#31623)
295 * doc/lispref/objects.texi (Comments): "; for commenting" fits better
296 with the following text about how a semicolon begins a comment. Also
297 mention that only unescaped semicolons start a comment.
299 2018-06-20 Tak Kunihiro <tkk@misasa.okayama-u.ac.jp>
301 Fix bug of 'mouse-drag-and-drop-region' to detect edges of region (Bug#31905)
303 * lisp/mouse.el (mouse-drag-and-drop-region): Detect both the
304 beginning and the end of character of region during dragging
307 2018-06-19 Noam Postavsky <npostavs@gmail.com>
309 Fix #'fun handling inside `labels' (Bug#31792)
311 * lisp/emacs-lisp/cl.el (labels): Apply the equivalent of the
312 cl-labels change from 2015-01-16 "* lisp/emacs-lisp/cl-macs.el: Fix
314 * test/lisp/emacs-lisp/cl-tests.el (labels-function-quoting): New
316 * lisp/emacs-lisp/cl-macs.el (cl-flet, cl-labels): Improve docstring,
317 link to relevant manual page.
318 * doc/misc/cl.texi (Function Bindings): Don't imply that function
319 cells of symbols are modified by cl-flet. Don't claim that cl-flet or
320 cl-labels affect references of the form (quote FUNC).
322 2018-06-18 Eli Zaretskii <eliz@gnu.org>
324 Fix vertical-motion with 'visual' line-number display
326 * src/indent.c (Fvertical_motion): Don't exempt 'visual' sty;e of
327 line-number display from X coordinate adjustments. (Bug#31875)
329 2018-06-17 Alan Third <alan@idiocy.org>
331 Handle NSAttributedString inputs (bug#29837)
334 * src/nsterm.m (EmacsView::insertText): Handle NSAttributedString.
336 2018-06-17 Philipp Stephani <phst@google.com>
338 Allow inserting non-BMP characters
340 * src/coding.h (UTF_16_HIGH_SURROGATE_P, UTF_16_LOW_SURROGATE_P): Move
341 from coding.c and document.
342 (surrogates_to_codepoint): New function.
344 * src/nsterm.m (insertText:): Properly handle surrogate pairs.
346 (cherry picked from commit 703ac3ea1c1ce381f385469a0e88bc29d3fe83c2)
348 2018-06-17 Aaron Jensen <aaronjensen@gmail.com>
350 Prevent errant scroll on mouse click (Bug#31546)
352 * src/nsterm.m (ns_mouse_position): Use correct frame when determining
354 * lisp/mouse.el (mouse-drag-track): Only account for mode-line height
355 if `mode-line-format' is non-nil.
357 2018-06-17 Eli Zaretskii <eliz@gnu.org>
359 Minor documentation fix
361 * doc/lispref/windows.texi (Window Start and End): Improve
362 documentation and indexing of window-end.
364 2018-06-16 Eli Zaretskii <eliz@gnu.org>
366 * lisp/window.el (window-toggle-side-windows): Doc fix. (Bug#31858)
368 2018-06-16 Paul Eggert <eggert@Penguin.CS.UCLA.EDU>
370 Fix byte compilation of (eq foo 'default)
372 Backport from master.
373 Do not use the symbol ‘default’ as a special marker.
374 Instead, use a value that cannot appear in the program,
375 improving on a patch proposed by Robert Cochran (Bug#31718#14).
376 * lisp/emacs-lisp/bytecomp.el (byte-compile--default-val):
378 (byte-compile-cond-jump-table-info)
379 (byte-compile-cond-jump-table): Use it instead of 'default.
380 * test/lisp/emacs-lisp/bytecomp-tests.el:
381 (byte-opt-testsuite-arith-data): Add a test for the bug.
383 2018-06-16 Michael Albinus <michael.albinus@gmx.de>
385 Fix Bug#31846. Do not merge with master
387 * lisp/net/secrets.el (secrets-search-items)
388 (secrets-create-item): Fix format of :dict-entry values. (Bug#31846)
390 2018-06-16 Eli Zaretskii <eliz@gnu.org>
392 Fix documentation of ':propertize' in mode-line-format
394 * doc/lispref/modes.texi (Mode Line Data): Make the description of
395 ':propertize' more accurate. (Bug#26291)
397 2018-06-15 Eli Zaretskii <eliz@gnu.org>
399 Reject invalid 5-byte sequences when detecting UTF-8 encoding
401 * src/coding.c (detect_coding_utf_8): Reject multibyte sequences
402 whose leading byte is greater than MAX_MULTIBYTE_LEADING_CODE.
404 * src/character.h (MAX_MULTIBYTE_LEADING_CODE): Add commentary
405 about the connection between the value of this macro and MAX_CHAR.
407 2018-06-15 Eli Zaretskii <eliz@gnu.org>
409 Fix 'replace-buffer-contents' in multibyte buffers
411 * src/editfns.c (buffer_chars_equal): Pass a byte position to
412 BUF_FETCH_CHAR_AS_MULTIBYTE, not a character position.
415 * test/src/editfns-tests.el (replace-buffer-contents-bug31837):
418 2018-06-15 Robert Pluim <rpluim@gmail.com>
420 Update etc/NEWS for mail-source-movemail-program change
422 * etc/NEWS: Describe change in how we search for
423 mail-source-movemail-program.
425 2018-06-15 Robert Pluim <rpluim@gmail.com>
427 Improve movemail default
429 * lisp/gnus/mail-source.el (mail-source-movemail-program):
430 Change default to "movemail".
431 (mail-source-movemail): Pass just mail-source-movemail-program to
432 call-process instead of fully specifying it relative to
433 exec-directory. Ensures that we will find Mailutils movemail if
434 it is installed. (Bug#31737)
436 2018-06-15 Eli Zaretskii <eliz@gnu.org>
438 Delete description of deleted Customize functions
440 * doc/lispref/customize.texi (Variable Definitions): Remove the
441 description of 'custom-initialize-safe-set' and
442 'custom-initialize-safe-default', which were deleted in Emacs
443 23.2, and replace with the description of
444 'custom-initialize-delay'.
446 2018-06-14 Noam Postavsky <npostavs@gmail.com>
448 Keep vc-print-log from putting point at buffer end (Bug#31764)
450 * lisp/vc/vc.el (vc-print-log-internal): Use `save-excursion' around
451 `vc-print-log-setup-buttons'.
453 2018-06-14 Paul Eggert <eggert@cs.ucla.edu>
455 Don’t set EMACS=t if Bash is 4.4 or newer
457 (Backport from master.)
458 (Thanks to Stefan Monnier for improvements to this patch.)
459 * lisp/term.el (term--bash-needs-EMACS-status): New var.
460 (term--bash-needs-EMACSp): New function.
461 (term-exec-1): Use it instead of always setting EMACS.
463 2018-06-14 Eli Zaretskii <eliz@gnu.org>
465 Improve commentary in info.el
467 * lisp/info.el: Explain in commentary why some commands start with
468 "info-" and others with "Info-". See also
469 http://lists.gnu.org/archive/html/emacs-devel/2017-11/msg00482.html.
471 2018-06-13 Michael Albinus <michael.albinus@gmx.de>
473 Fix wording in tramp.texi
475 * doc/misc/tramp.texi (Frequently Asked Questions):
476 Fix wording for abbreviations.
478 2018-06-13 Michael Albinus <michael.albinus@gmx.de>
480 * doc/misc/tramp.texi (Remote shell setup): Fix typo.
482 2018-06-12 Sam Steingold <sds@gnu.org>
484 Finish the Bug#11728 work: hg & git
486 * lisp/vc/vc-git.el (vc-git--pushpull): Make `extra-args' a list.
487 Do not set `compilation-error-regexp-alist', this is done in
488 `vc-compilation-mode'.
489 (vc-git-error-regexp-alist): Tweak the regexp.
490 * lisp/vc/vc-hg.el (vc-hg-error-regexp-alist): Make non-trivial.
491 (vc-hg--pushpull): Accept `post-processing' argument.
492 Call them after the `command'.
493 (vc-hg-pull): Pass the `post-processing' commands that show which
494 are to be modified by the `update', and then run `update'.
496 2018-06-12 Sam Steingold <sds@gnu.org>
498 Fix Bug#11728: show files updated by git
500 * lisp/vc/vc-git.el (vc-git--pushpull): Accept extra-args and set
501 `compilation-error-regexp-alist' to `vc-git-error-regexp-alist'.
502 (vc-git-pull): Pass "--stat" as `extra-args' to `vc-git--pushpull'.
503 (vc-git-push): Pass "" as `extra-args' to `vc-git--pushpull'.
505 2018-06-12 Noam Postavsky <npostavs@gmail.com>
507 Make 'tags' targets respect --with-silent-rules (Bug#31744)
509 * lwlib/Makefile.in (TAGS):
510 * lisp/Makefile.in (TAGS):
511 * src/Makefile.in (TAGS): Use AM_V_GEN and AM_V_at.
512 * src/Makefile.in: Note that TAGS are generated in build dir.
514 2018-06-11 Thomas Fitzsimmons <fitzsim@fitzsim.org>
515 Noam Postavsky <npostavs@gmail.com>
517 soap-client: Add byte-code compatibility function (Bug#31742)
519 * lisp/net/soap-client.el: Bump version to 3.1.4.
520 (soap-type-of): New function.
521 (soap-resolve-references, soap-decode-type)
522 (soap-encode-attributes, soap-encode-value): Replace aref
523 calls with calls to soap-type-of.
525 * lisp/net/soap-inspect.el (soap-sample-value, soap-inspect):
526 Replace aref calls with calls to soap-type-of.
529 Backport: (cherry picked from commit
530 1feb2e221349f26ec26bc684e0cce2acecbed3ca)
532 2018-06-11 Eli Zaretskii <eliz@gnu.org>
534 * doc/lispref/files.texi (Unique File Names): Fix a typo. (Bug#31784)
536 2018-06-10 Noam Postavsky <npostavs@gmail.com>
538 Fix term.el cursor movement at bottom margin (Bug#31690)
540 * lisp/term.el (term-handle-ansi-escape) <\E[B cud>: Allow moving the
541 cursor to the bottom margin line, rather than stopping one line
544 2018-06-10 Reuben Thomas <rrt@sc3d.org>
546 Call enchant-lsmod correctly when Enchant is installed with a suffix
548 * lisp/textmodes/ispell.el (ispell--call-enchant-lsmod): Cope with a
549 version suffix on the binary name, so enchant-2 is converted to
550 enchant-lsmod-2, not enchant-2-lsmod. (Bug#31761)
552 (cherry picked from commit a402d9aacbecf4bf0b9afde592a3b90c71f96832)
554 2018-06-09 Eli Zaretskii <eliz@gnu.org>
556 Enlarge DUMPED_HEAP_SIZE for 64-bit Windows builds
558 * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 23MB. Reported by
559 Andy Moreton <andrewjmoreton@gmail.com>.
561 2018-06-09 Eli Zaretskii <eliz@gnu.org>
563 Update Unicode data files to version 11.0.0 of Unicode
565 * admin/unidata/UnicodeData.txt:
566 * admin/unidata/SpecialCasing.txt:
567 * admin/unidata/NormalizationTest.txt:
568 * admin/unidata/copyright.html:
569 * admin/unidata/BidiMirroring.txt:
570 * admin/unidata/BidiBrackets.txt: Import from Unicode 11.0.
571 * admin/notes/unicode: Update the URL for OTF script tags.
573 * lisp/international/mule-cmds.el (ucs-names): Update unused ranges.
574 * lisp/international/fontset.el (script-representative-chars): Add
575 hanifi-rohingya, old-sogdian, sogdian, dogra, gunjala-gondi,
576 makasar, and medefaidrin.
577 (otf-script-alist): Add old-hungarian.
578 * lisp/international/characters.el (tbl): Add syntax entries for
579 Supplemental Mathematical Operators, Miscellaneous Symbols and
580 Arrows, and Supplemental Punctuation.
581 Update the list of wide characters.
583 * test/lisp/international/ucs-normalize-tests.el
584 (ucs-normalize-tests--failing-lines-part2): Update to match
585 admin/unidata/NormalizationTest.txt.
587 * doc/lispref/nonascii.texi (Character Properties): Update the
588 reference to the Unicode Standard.
589 * doc/misc/efaq.texi (New in Emacs 26):
590 * etc/NEWS: Mention compatibility with Unicode 11.0.
592 2018-06-09 Eli Zaretskii <eliz@gnu.org>
594 * etc/NEWS: Belatedly call out vc-hg changes in v26.1. (Bug#31759)
596 2018-06-09 Eli Zaretskii <eliz@gnu.org>
598 Clarify the documentation of 'dired-recursive-deletes'
600 * doc/emacs/dired.texi (Dired Deletion): Clarify text regarding
601 recursive deletion of non-empty directories. (Bug#31529)
603 2018-06-08 Eli Zaretskii <eliz@gnu.org>
605 Clarify doc string of 'update-glyphless-char-display'
607 * lisp/international/characters.el
608 (update-glyphless-char-display): Doc fix. (Bug#31730)
610 2018-06-08 Eli Zaretskii <eliz@gnu.org>
612 Clarify subtle issues with 'eq' in byte-compiled code
614 * doc/lispref/objects.texi (Equality Predicates): Explain why
615 byte-compiled code might compare literal objects with identical
616 contents as 'eq'. (Bug#31688)
618 2018-06-07 Gemini Lasswell <gazally@runbox.com>
620 Make cl-print respect print-quoted (bug#31649)
622 * lisp/emacs-lisp/cl-print.el (cl-print-object) <cons>: Observe
623 print-quoted when printing quote and its relatives. Add printing of
626 2018-06-07 Martin Rudalics <rudalics@gmx.at>
628 Fix unexpected jumps of window-point in 'set-window-configuration' (Bug#31695)
630 * src/window.c (Fset_window_configuration): Prevent that the
631 fix for Bug#12208 affects restoration of window points when
632 using separate minibuffer frames (Bug#31695).
634 2018-06-06 Nicolas Petton <nicolas@petton.fr>
636 * etc/emacs.appdata.xml: Update Emacs screenshot.
638 2018-06-06 Eli Zaretskii <eliz@gnu.org>
640 Fix cursor movement by 'next-logical-line' after 'next-line'
642 * src/indent.c (Fvertical_motion): Adjust TO_X when line-numbers
643 are being displayed. Remove unneeded "correction" of TO_X at the
646 * lisp/simple.el (last--line-number-width): Remove unneeded
648 (line-move-visual): Account for line-number display width by
649 adjusting the pixel X coordinate that gets converted into
650 canonical columns passed to vertical-motion, instead of adjusting
651 temporary-goal-column (which then affects next commands, including
652 next-logical-line). (Bug#31723)
654 2018-06-05 Allen Li <darkfeline@felesatra.moe>
656 Fix prompt in bookmark.el (Bug#24726)
658 * lisp/bookmark.el (bookmark-set-internal): Conform to the standard
659 default prompt format (per `minibuffer-electric-default-mode') which
660 does not use a colon.
662 2018-06-05 Basil L. Contovounesios <contovob@tcd.ie>
664 Improve documentation of 'empty' whitespace-style
666 * doc/emacs/display.texi (Useless Whitespace): Clarify that the
667 'empty' whitespace-style option highlights empty lines only at
668 BOB/EOB, as per the docstring of whitespace-style. (bug#31713)
670 2018-06-05 Paul Eggert <eggert@cs.ucla.edu>
672 Port FC_COLOR change to older fontconfig
674 Problem reported by John ff in:
675 https://lists.gnu.org/r/emacs-devel/2018-04/msg00058.html
676 * src/ftfont.c (ftfont_spec_pattern) [!FC_COLOR]:
677 Don’t use FC_COLOR on older fontconfigs that don’t have it.
679 2018-06-05 Robert Pluim <rpluim@gmail.com>
681 Ignore color fonts when using Xft
683 * src/font.c (syms_of_font): New configuration variable
684 xft-ignore-color-fonts, default t.
685 * src/ftfont.c (ftfont_spec_pattern): Tell fontconfig to ignore
686 color fonts if xft-ignore-color-fonts is t. (Bug#30874, Bug#30045)
687 * etc/NEWS: Document xft-ignore-color-fonts.
689 2018-06-04 Noam Postavsky <npostavs@gmail.com>
691 Fix comint-get-old-input-default for output field case (Bug#25028)
693 * lisp/comint.el (comint-get-old-input-default): Don't return whole
694 field when point was on an output field.
696 2018-06-04 Eli Zaretskii <eliz@gnu.org>
698 Prevent infloop in 'delete-trailing-whitespace'
700 * lisp/simple.el (delete-trailing-whitespace): Avoid inflooping
701 when some region of trailing whitespace is unmodifiable.
704 2018-06-04 Gemini Lasswell <gazally@runbox.com>
706 Make cl-print respect print-level and print-length (bug#31559)
708 * lisp/emacs-lisp/cl-print.el (cl-print--depth): New variable.
709 (cl-print-object) <cons>: Print ellipsis if printing depth greater
710 than 'print-level' or length of list greater than 'print-length'.
711 (cl-print-object) <vector>: Truncate printing with ellipsis if
712 vector is longer than 'print-length'.
713 (cl-print-object) <cl-structure-object>: Truncate printing with
714 ellipsis if structure has more slots than 'print-length'.
715 (cl-print-object) <:around>: Bind 'cl-print--depth'.
716 * test/lisp/emacs-lisp/cl-print-tests.el
717 (cl-print-tests-3, cl-print-tests-4): New tests.
719 (cherry picked from commit 0f48d18fd2a30f29cc3592a835d2a2254c9b0afb)
721 2018-06-03 Phil Sainty <psainty@orcon.net.nz>
723 Fix remote-host directory tracking for shells in `term' buffers
725 * lisp/term.el (term-handle-ansi-terminal-messages): Use an explicit
726 tramp method when constructing the tramp path for a non-local host,
727 as this is now mandatory. "-" is a pseudo-method for the user's
728 `tramp-default-method'. (Bug#31355)
730 Specify the remote username explicitly in all cases, as
731 `tramp-default-user' and `tramp-default-user-alist' could cause the
732 previous logic to fail.
734 Minor related improvements to the commentary.
736 2018-06-03 Eli Zaretskii <eliz@gnu.org>
738 Update doc string of 'rx'
740 * lisp/emacs-lisp/rx.el (rx): Update the description of some
743 2018-06-03 Stefan Monnier <monnier@iro.umontreal.ca>
745 Fix bug#30846, along with misc cleanups found along the way
747 * test/src/data-tests.el (data-tests-kill-all-local-variables): New test.
749 * src/buffer.c (swap_out_buffer_local_variables): Remove.
750 Fuse the body of its loop into that of reset_buffer_local_variables.
751 (Fkill_buffer, Fkill_all_local_variables): Don't call it any more.
752 (reset_buffer_local_variables): Make sure the buffer's local binding
753 is swapped out before removing it from the alist (bug#30846).
754 Call watchers before actually killing the var.
756 * src/data.c (Fmake_local_variable): Simplify.
757 Use swap_in_global_binding to swap out any local binding, instead of
758 a mix of find_symbol_value followed by messing with where&found.
759 Don't call swap_in_symval_forwarding since the currently swapped
760 binding is never one we've modified.
761 (Fkill_local_variable): Use swap_in_global_binding rather than messing
762 with where&found to try and trick find_symbol_value into doing the same.
764 * src/alloc.c (mark_localized_symbol): 'where' can't be a frame any more.
766 (cherry picked from commit 3ddff080341580eb6fc18d907181e9cc2301f62d)
768 2018-06-03 Jay Kamat <jaygkamat@gmail.com>
770 esh-opt.el: Fix improper parsing of first argument (Bug#28323)
772 Examples of broken behavior:
776 ls -I '*.txt' /dev/null
777 Errors with: *.txt: No such file or directory
779 * lisp/eshell/esh-opt.el (eshell--process-args): Refactor usage of
780 args to eshell--args, as we rely on modifications from
781 eshell--process-option and vice versa. These modifications were not
782 being propogated in the (if (= ai 0)) case, since popping the first
783 element of a list doesn't destructively modify the underlying list
786 (cherry picked from commit 92a8230e49a65be48442ee95cf50c90514e48f99)
788 2018-06-03 Noam Postavsky <npostavs@gmail.com>
790 * lisp/epa.el (epa-decrypt-file): Apply epa-pinentry-mode (Bug#30363).
792 (cherry picked from commit 217202c084232f36d4fa0fead0f3aca21396d074)
794 2018-06-03 Noam Postavsky <npostavs@gmail.com>
796 Fix cl-print for circular sublists (Bug#31146)
798 * lisp/emacs-lisp/cl-print.el (cl-print-object) <cons>: Push each
799 element of list being printed onto cl-print--currently-printing.
800 * test/lisp/emacs-lisp/cl-print-tests.el (cl-print-circle-2): New
803 (cherry picked from commit b8aa7ecf54c9b164a59f1b0e9f9fe90531dadd20)
805 2018-06-03 Lars Ingebrigtsen <larsi@gnus.org>
807 Revert "Make mail-extract-address-components return the user name more"
809 This reverts commit 8b50ae8b2284b5652c2843a9d0d076f4f657be28.
811 According to tests in bug#27656 by OGAWA Hirofumi, this patch
812 led to wrong results when binding
814 (dolist (addr '("Rasmus <rasmus@gmx.us>" "Rasmus <mbox@gmx.us>"))
815 (dolist (ignore-single '(t nil))
816 (dolist (ignore-same '(t nil))
817 (let ((mail-extr-ignore-single-names ignore-single)
818 (mail-extr-ignore-realname-equals-mailbox-name ignore-same))
819 (message "%s" (mail-extract-address-components addr))))))
823 (cherry picked from commit a3a9d5434d56f8736cc47e379a1d011d4c779b7c)
825 2018-06-03 Paul Eggert <eggert@cs.ucla.edu>
827 Centralize Bug#30931 fix
829 * src/marker.c (detach_marker): New function.
830 * src/editfns.c (save_restriction_restore):
831 * src/insdel.c (signal_before_change): Use it.
833 (cherry picked from commit 6f66a43d7ad6cada2b7dbb6d07efe36be1dc7ecb)
835 2018-06-03 Noam Postavsky <npostavs@gmail.com>
837 Fix another case of freed markers in the undo-list (Bug#30931)
839 * src/alloc.c (free_marker): Remove.
840 * src/editfns.c (save_restriction_restore):
841 * src/insdel.c (signal_before_change): Detach the markers from the
842 buffer when we're done with them instead of calling free_marker on
844 * test/src/editfns-tests.el (delete-region-undo-markers-1)
845 (delete-region-undo-markers-2): New tests.
847 (cherry picked from commit 96b8747d5c5d747af13fd84d8fe0308ef2a0ea7a)
849 2018-06-03 Paul Eggert <eggert@cs.ucla.edu>
851 Fix CHECK_ALLOCATED_AND_LIVE abort during GC
853 * src/editfns.c (save_restriction_restore):
854 Wait for the GC to free the temporary markers (Bug#30931).
856 (cherry picked from commit 670f2ffae718046c0fb37313965a51c040ed096f)
858 2018-06-03 Noam Postavsky <npostavs@gmail.com>
860 Don't wait for visible frames to become visible
862 For discussion, see thread starting at
863 https://lists.gnu.org/archive/html/emacs-devel/2018-03/msg00807.html.
864 * src/xterm.c (x_make_frame_visible): Check FRAME_VISIBLE_P before
865 calling x_wait_for_event.
867 (cherry picked from commits 2a192e21cf3b04b7f830b4971c1508c611e13a3c
868 and 00c1f771f2a51ffa675ec5a07ea330f2605cd302)
870 2018-06-03 Tino Calancha <tino.calancha@gmail.com>
872 query-replace undo: Handle when user edits the replacement string
874 * lisp/replace.el (perform-replace): Update the replacement string
875 after the user edit it (Fix Bug#31538).
877 * test/lisp/replace-tests.el (query-replace-undo-bug31538): New test.
879 Backport: (cherry picked from commits
880 ea133e04f49afa7928e49a3ac4a85b47f6f13f01
882 7dcfdf5b14325ae7996f272f14c72810d7c84944)
884 2018-06-03 Tino Calancha <tino.calancha@gmail.com>
886 Backport: Fix corner case in query-replace-regexp undo
888 This commit fixes Bug#31492.
889 * lisp/replace.el (replace-match-maybe-edit): Preserve match data.
891 * test/lisp/replace-tests.el (query-replace-undo-bug31492): Add test.
893 (cherry picked from commit bab73230d1be1fe394b7269c1365ef6fb1a5d9b3)
895 2018-06-03 Tino Calancha <tino.calancha@gmail.com>
897 Backport: Preserve case in query-replace undo
899 If the user query and replaces 'foo' with 'BAR', then
900 undo must comeback to 'foo', not to 'FOO' (Bug#31073).
901 * lisp/replace.el (perform-replace): Bind nocasify to non-nil
902 value during undo/undo-all actions.
903 * test/lisp/replace-tests.el (query-replace-undo-bug31073): Add test.
905 (cherry picked from commit 32dc0cb1b5ae895d237c7118ccaeb084715934fd)
907 2018-06-02 Alan Third <alan@idiocy.org>
909 Set accessibility subroles for child frame (bug#31324)
912 * src/nsterm.m (x_set_parent_frame): Set subrole depending on whether
913 frame is a child or not.
915 2018-06-02 Alan Third <alan@idiocy.org>
917 Fix redefinition of child frames on NS
919 * src/nsterm.m (x_set_parent_frame): If the NSWindow has an existing
920 parent frame, remove it.
922 2018-06-02 Eli Zaretskii <eliz@gnu.org>
924 Improve ELisp documentation of 'clone-indirect-buffer'
926 * doc/lispref/buffers.texi (Indirect Buffers): Be more explicit
927 about the value of DISPLAY-FLAG in interactive usage. (Bug#31648)
929 2018-06-02 Eli Zaretskii <eliz@gnu.org>
931 Improve documentation of 'inhibit-message'
933 * src/xdisp.c (syms_of_xdisp) <inhibit-message>: Warn against
934 setting it non-nil globally. (Bug#31627)
936 2018-06-02 Eli Zaretskii <eliz@gnu.org>
938 Improve documentation of comment styles
940 * doc/lispref/syntax.texi (Syntax Flags): Define the "a" style.
943 2018-06-02 Eli Zaretskii <eliz@gnu.org>
945 Documentation improvements in newcomment.el
947 * lisp/newcomment.el (uncomment-region)
948 (uncomment-region-default): Doc fixes. (Bug#31615)
950 2018-06-02 Eli Zaretskii <eliz@gnu.org>
952 Imp[rove documentation of 'with-silent-modifications'
954 * doc/lispref/buffers.texi (Buffer Modification): Document
955 'with-silent-modifications'. (Bug#31613)
956 * doc/lispref/text.texi (Changing Properties): Add a
957 cross-reference to "Buffer Modification". Improve wording.
959 2018-06-02 Eli Zaretskii <eliz@gnu.org>
961 Fix decoding of directories when "~" includes non-ASCII chars
963 * src/fileio.c (Fexpand_file_name): Don't build multibyte strings
964 from unibyte non-ASCII strings when NAME and DEFAULT_DIRECTORY
965 have different multibyteness, as this adds bytes to the byte
966 sequence, and in some situations, e.g., when the home directory
967 includes non-ASCII characters, can fail file APIs. (Bug#30755)
969 * lisp/startup.el (normal-top-level): Make sure default-directory
970 is set to a multibyte string when decoded on MS-Windows.
972 (cherry picked from commit 3aab8626ba5080bb04d0fdae52d99c850a842a52)
974 2018-06-02 Eli Zaretskii <eliz@gnu.org>
976 Don't remove highlight of misspelled word on pdict save
978 * lisp/textmodes/ispell.el (ispell-pdict-save): Don't restart
979 flyspell-mode, as bug#11963, which this was supposed to fix, is
980 fixed better by ispell-command-loop, when the user types 'i' or
981 'a'. Restarting Flyspell mode when the personal dictionary is
982 saved caused bug#31372 as side effect.
983 (ispell-command-loop): Test 'flyspell-mode', not whether
984 flyspell-unhighlight-at is fboundp, to determine whether Flyspell
985 mode is turned on in the current buffer.
986 (flyspell-unhighlight-at): Add declare-function form for it.
988 (cherry picked from commit 91e582a31ada28fab5ae55bdbf959a9d30796587)
990 2018-06-02 Ari Roponen <ari.roponen@gmail.com>
992 Fix some problems in the Cairo build
994 * src/xterm.c (x_begin_cr_clip): Create image surface.
995 (x_update_end) [USE_CAIRO]: Remove GTK3-specific code.
996 (x_scroll_run) [USE_CAIRO]: Implement scrolling.
997 * src/image.c (lookup_rgb_color) [USE_CAIRO]: Support Cairo.
998 (jpeg_load_body) [USE_CAIRO]: Support Cairo. Use USE_CAIRO
999 instead of CAIRO for #ifdef's.
1000 (imagemagick_load_image) [USE_CAIRO]: Support Cairo.
1003 (cherry picked from commit 2d0eff42b8f1122e00f948759ed01a3be1a8c3fc)
1005 2018-06-02 Eli Zaretskii <eliz@gnu.org>
1007 Avoid infloops in font_open_entity
1009 * src/font.c (font_open_entity): Fail after 15 iterations through
1010 the loop that looks for a font whose average_width and height are
1011 both positive. This avoids infinite loops for fonts that, e.g.,
1012 report average_width of zero for any possible size we try.
1015 (cherry picked from commit e2879c1f837059335af89022b2a9ac9bc861e96d)
1017 2018-06-02 Eli Zaretskii <eliz@gnu.org>
1019 Fix encoding of characters when using GB18030 fonts
1021 * lisp/international/fontset.el (font-encoding-alist): Fix the
1022 GB18030 entry to encode characters correctly when passing them to
1023 the xfont back-end. (Bug#31315) See also
1024 http://lists.gnu.org/archive/html/emacs-devel/2008-01/msg00754.html.
1026 (cherry picked from commit bbe2cadc544e63e9378350621887f8fb9bbcc236)
1028 2018-06-02 Eli Zaretskii <eliz@gnu.org>
1030 Fix C-p and C-n when wrap-prefix is too wide
1032 * src/xdisp.c (move_it_in_display_line_to): Avoid looping in
1033 previous/next-line when wrap-prefix is set to a too-wide
1034 stretch of whitespace. (Bug#30432)
1036 (cherry picked from commit 842b3d7412eaed6b2c9f90c3361abb4932ec0b1d)
1038 2018-06-02 Eli Zaretskii <eliz@gnu.org>
1040 Avoid redisplay problems with too wide wrap-prefix
1042 * src/xdisp.c (display_line): Avoid looping in redisplay when
1043 wrap-prefix is set to a too-wide stretch of whitespace.
1046 (cherry picked from commit 2a1fe08307402d6217d073f8ab7737750d253dd4)
1048 2018-06-02 Eli Zaretskii <eliz@gnu.org>
1050 Fix 'posn-at-point' when line numbers are displayed
1052 * src/xdisp.c (pos_visible_p): For the leftmost glyph, adjust the X
1053 coordinate due to line-number display. (Bug#30834)
1055 (cherry picked from commit 4a20174d7949028f66b18a92a75d6b74194242a8)
1057 2018-06-02 Eli Zaretskii <eliz@gnu.org>
1059 Another followup to fixing 'window-text-pixel-width'
1061 * src/xdisp.c (Fwindow_text_pixel_size): Adjust the return value
1062 when we stop one buffer position short of TO. (Bug#30746)
1064 (cherry picked from commit 33cba5405c724566673cf023513bfb1faa963bea)
1066 2018-06-02 Eli Zaretskii <eliz@gnu.org>
1068 Fix mouse-set-point when line numbers are displayed
1070 * src/xdisp.c (move_it_to): Initialize the line_number_produced_p
1071 flag before iterating on a new line. (Bug#30818)
1073 (cherry picked from commit 5c585b8b994aad4e6844f8eed80bdfbb396e91bf)
1075 2018-06-02 Eli Zaretskii <eliz@gnu.org>
1077 * src/xdisp.c (Fwindow_text_pixel_size): Fix last change.
1079 (cherry picked from commit 06911714ef66ea81380b1eda75a9f7cfbc9e0b65)
1081 2018-06-02 Eli Zaretskii <eliz@gnu.org>
1083 Fix 'window-text-pixel-size' when display properties are around
1085 * src/xdisp.c (Fwindow_text_pixel_size): Correct the result when
1086 there's a display property at the TO position, and the call to
1087 move_it_to overshoots. (Bug#30746)
1089 (cherry picked from commit 50e2c0fb5180a757d8d533518f68837ffe5909be)
1091 2018-06-02 Eli Zaretskii <eliz@gnu.org>
1093 Fix display of TABs in hscrolled windows with line numbers
1095 * src/dispextern.h (struct it): New members tab_offset and
1096 line_number_produced_p.
1097 * src/xdisp.c (display_line): Don't set row->x to a negative value
1098 if line numbers are being displayed. (Bug#30582)
1099 Reset the line_number_produced_p flag before laying out the glyph
1101 (x_produce_glyphs): Use the line_number_produced_p flag to decide
1102 whether to offset the X coordinate due to line-number display.
1103 Use the tab_offset member to restore the original TAB width for
1105 (move_it_in_display_line_to): Don't produce line numbers when moving
1106 in hscrolled window to the left of first_visible_x.
1107 (maybe_produce_line_number): Set the line_number_produced_p flag.
1109 * src/term.c (produce_glyphs): Correct TAB width only when
1110 line_number_produced_p flag is set.
1112 (cherry picked from commit 1ac190553886ff20817d3dd218464e2fc6f9e42a)
1114 2018-06-02 Matthias Dahl <matthias.dahl@binary-island.eu>
1116 Fix wait_reading_process_output wait_proc hang
1118 * src/process.c (read_process_output): Track bytes read from
1120 (wait_reading_process_output): If called recursively through
1121 timers and/or process filters via accept-process-output, it is
1122 possible that the output of wait_proc has already been read by
1123 one of those recursive calls, leaving the original call hanging
1124 forever if no further output arrives through that fd and no
1125 timeout has been set. Fix that by using the process read
1126 accounting to keep track of how many bytes have been read and
1127 use that as a condition to break out of the infinite loop and
1128 return to the caller as well as to calculate the proper return
1129 value (if a wait_proc is given that is).
1131 * src/process.h (struct Lisp_Process): Add nbytes_read to track
1132 bytes read from a process.
1134 (cherry picked from commit 4ba32858d61eee16f17b51aca01c15211a0912f8)
1136 2018-06-02 Eli Zaretskii <eliz@gnu.org>
1138 Fix posn-at-point in Flycheck buffers
1140 * src/dispnew.c (buffer_posn_from_coords): Improve commentary.
1142 * src/xdisp.c (move_it_in_display_line_to): Don't exit the loop
1143 under truncate-lines if the glyph at TO_CHARPOS was not yet
1144 produced. This avoids bailing out too early when we are at
1145 TO_CHARPOS, but didn't yet produce glyphs for that buffer
1146 position, because the last call to PRODUCE_GLYPHS at this position
1147 was for an object other than the buffer. For further details, see
1148 http://lists.gnu.org/archive/html/emacs-devel/2018-01/msg00537.html.
1150 (cherry picked from commit c0154ac7c3423f68d8f3a2e85a756c9759219039)
1152 2018-06-02 Martin Rudalics <rudalics@gmx.at>
1154 * etc/PROBLEMS: Document stickyness problem with FVWM (Bug#31650)
1156 2018-06-01 Eli Zaretskii <eliz@gnu.org>
1158 Update Emacs Lisp Intro to match current behavior
1160 * doc/lispintro/emacs-lisp-intro.texi (Wrong Type of Argument)
1161 (debug, debug-on-entry, Void Function, Void Variable): Update the
1162 *Backtrace* buffer display to current Emacs. (Bug#31654)
1164 2018-06-01 Robert Pluim <rpluim@gmail.com>
1168 * doc/emacs/files.texi (Interlocking): Two spaces at end of sentence
1170 2018-06-01 Ville Skyttä <ville.skytta@iki.fi> (tiny change)
1172 Fix typos in several manuals (Bug#31610)
1174 2018-06-01 Robert Pluim <rpluim@gmail.com>
1176 Add detailed documentation about lock files
1178 * doc/emacs/files.texi (Interlocking): Point user at detailed
1179 file locking description in lisp reference manual. Add index
1180 entry for '.#' to improve disoverability of information about locking.
1182 * doc/lispref/files.texi (File Locks): Describe in detail what
1183 the form of the lock file is. Add index entry for '.#' to
1184 improve disoverability of information about locking.
1186 * src/filelock.c (create-lockfiles): Add cross reference to
1187 file locking in user manual and to 'lock-buffer'. Add string
1188 '.#' to help users find the doc string.
1190 2018-06-01 Eli Zaretskii <eliz@gnu.org>
1192 Add commentary for subtle aspect of frame.el
1194 * lisp/frame.el: Explain why we use symbol-function when adding
1195 watchers for certain variables that need to trigger redisplay.
1197 2018-06-01 Eli Zaretskii <eliz@gnu.org>
1199 Improve documentation of 'directory-files-and-attributes'
1201 * doc/lispref/files.texi (Contents of Directories): Fix inaccurate
1202 description of the return value of directory-files-and-attributes.
1204 * src/dired.c (Fdirectory_files_and_attributes): Describe the
1205 function's value in more detail.
1207 2018-05-30 Katsumi Yamaoka <yamaoka@jpl.org>
1209 * lisp/gnus/message.el (message-remove-header): Don't remove things
1210 not looking like header (bug#31651).
1212 2018-05-30 Eli Zaretskii <eliz@gnu.org>
1214 Adapt hexl-mode to native line-number display
1216 * lisp/hexl.el (hexl-mode-ruler): When display-line-numbers is in
1217 effect, adjust offsets and columns to account for the line-number
1218 display. (Bug#31595)
1220 2018-05-30 Michael Albinus <michael.albinus@gmx.de>
1222 Fix example in Tramp manual
1224 * doc/misc/tramp.texi (Frequently Asked Questions): Fix wording
1225 for the zsh example.
1227 2018-05-29 Robert Pluim <rpluim@gmail.com>
1229 Handle case where Xft is found but not XRender
1231 * configure.ac (XFT_LIBS): Ensure that HAVE_XFT is no if
1232 XRender is not found. (Bug#31634)
1234 2018-05-29 Michael Albinus <michael.albinus@gmx.de>
1236 * doc/misc/tramp.texi (Frequently Asked Questions): Adapt zsh example.
1238 2018-05-29 Damien Cassou <damien@cassou.me>
1240 Improve read-multiple-choice docstring (Bug#31628)
1242 * lisp/emacs-lisp/rmc.el (read-multiple-choice): Improve docstring.
1244 2018-05-29 Michael Albinus <michael.albinus@gmx.de>
1246 * doc/misc/tramp.texi (All): Use @code instead of @option for user options.
1248 2018-05-29 Michael Albinus <michael.albinus@gmx.de>
1252 * doc/misc/tramp.texi (All): Add @vindex entries for
1253 environment variables.
1254 (Remote shell setup): New items `tramp-terminal-type' and
1255 "Determining a Tramp session".
1256 (Frequently Asked Questions): Adapt zsh example. (Bug#31605)
1258 2018-05-29 Michael Albinus <michael.albinus@gmx.de>
1260 Sync with Tramp 2.3.4-pre
1262 * doc/misc/trampver.texi: Change version to "2.3.4-pre
1264 * lisp/net/tramp.el (tramp-mode, tramp-verbose)
1265 (tramp-backup-directory-alist, tramp-auto-save-directory)
1266 (tramp-encoding-shell, tramp-encoding-command-switch)
1267 (tramp-encoding-command-interactive, tramp-default-method)
1268 (tramp-default-method-alist, tramp-default-user)
1269 (tramp-default-user-alist, tramp-default-host)
1270 (tramp-default-host-alist, tramp-default-proxies-alist)
1271 (tramp-save-ad-hoc-proxies, tramp-restricted-shell-hosts-alist)
1272 (tramp-local-end-of-line, tramp-rsh-end-of-line)
1273 (tramp-login-prompt-regexp, tramp-shell-prompt-pattern)
1274 (tramp-password-prompt-regexp, tramp-wrong-passwd-regexp)
1275 (tramp-yesno-prompt-regexp, tramp-yn-prompt-regexp)
1276 (tramp-terminal-prompt-regexp)
1277 (tramp-operation-not-permitted-regexp, tramp-copy-failed-regexp)
1278 (tramp-process-alive-regexp, tramp-chunksize)
1279 (tramp-process-connection-type, tramp-connection-timeout)
1280 (tramp-connection-min-time-diff)
1281 (tramp-completion-reread-directory-timeout):
1282 * lisp/net/tramp-adb.el (tramp-adb-program)
1283 (tramp-adb-connect-if-not-connected, tramp-adb-prompt):
1284 * lisp/net/tramp-cache.el (tramp-connection-properties)
1285 (tramp-persistency-file-name):
1286 * lisp/net/tramp-gvfs.el (tramp-gvfs-methods)
1287 (tramp-gvfs-zeroconf-domain, tramp-bluez-discover-devices-timeout):
1288 * lisp/net/tramp-sh.el (tramp-inline-compress-start-size)
1289 (tramp-copy-size-limit, tramp-terminal-type)
1290 (tramp-histfile-override, tramp-use-ssh-controlmaster-options)
1291 (tramp-remote-path, tramp-remote-process-environment)
1292 (tramp-sh-extra-args):
1293 * lisp/net/tramp-smb.el (tramp-smb-program, tramp-smb-acl-program)
1294 (tramp-smb-conf, tramp-smb-winexe-program)
1295 (tramp-smb-winexe-shell-command)
1296 (tramp-smb-winexe-shell-command-switch):
1297 Dont't require 'tramp. (Bug#31558)
1299 * lisp/net/tramp.el (tramp-accept-process-output):
1300 * lisp/net/tramp-adb.el (tramp-adb-handle-start-file-process):
1301 * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band)
1302 (tramp-sh-handle-start-file-process):
1303 * lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory)
1304 (tramp-smb-handle-file-acl, tramp-smb-handle-process-file)
1305 (tramp-smb-handle-set-file-acl)
1306 (tramp-smb-handle-start-file-process): Suppress timers.
1308 * lisp/net/tramp-adb.el (tramp-adb-handle-write-region):
1309 * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-write-region):
1310 * lisp/net/tramp-sh.el (tramp-sh-handle-write-region):
1311 * lisp/net/tramp-smb.el (tramp-smb-handle-write-region):
1312 Write proper message.
1314 * lisp/net/tramp-cmds.el (tramp-change-syntax):
1315 Use `customize-set-variable'.
1317 * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
1318 Ensure proper EOL handling for Darwin.
1319 (tramp-find-inline-compress): Improve command quoting for w32.
1320 Reported by Chris Zheng <chriszheng99@gmail.com>.
1321 (tramp-open-connection-setup-interactive-shell): Wrap both echo
1322 calls in parentheses, in order to avoid double prompt.
1324 * lisp/net/tramp-smb.el (tramp-smb-errors):
1325 Add "NT_STATUS_RESOURCE_NAME_NOT_FOUND".
1327 * lisp/net/tramp.el (tramp-default-user-alist)
1328 (tramp-default-host-alist): Fix docstring.
1329 (tramp-dissect-file-name): Adapt docstring. (Bug#30904)
1330 (tramp-make-tramp-file-name): Check, that method is
1331 not empty. (Bug#30038)
1332 (tramp-message-show-message): Change default.
1334 * lisp/net/trampver.el: Change version to "2.3.4-pre".
1336 * test/lisp/net/tramp-tests.el (ert-x): Require it.
1337 (tramp-test10-write-region): Extend test.
1338 (tramp--test-emacs27-p, tramp--test-windows-nt): New defuns.
1339 (tramp-test11-copy-file, tramp-test12-rename-file)
1340 (tramp-test21-file-links, tramp-test24-file-acl)
1341 (tramp-test25-file-selinux, tramp--test-check-files): Use them.
1342 (tramp-test21-file-links): Do not call `make-symbolic-link' on w32.
1343 Fix file name quoting test.
1344 (tramp-test32-environment-variables-and-port-numbers):
1345 Adapt check for systems which do not support "echo -n". (Bug#29712)
1346 (tramp-test36-find-backup-file-name): Call also
1347 `convert-standard-filename' due to w32.
1348 (tramp-test41-asynchronous-requests):
1349 Use $REMOTE_PARALLEL_PROCESSES. Flush cache prior file operations.
1350 (tramp-test42-auto-load, tramp-test42-delay-load)
1351 (tramp-test42-recursive-load, tramp-test42-remote-load-path):
1352 Quote command due to w32.
1354 2018-05-28 Eli Zaretskii <eliz@gnu.org>
1356 Bump Emacs version to 26.1.50
1361 * README: Bump Emacs version to 26.1.50.
1363 2018-05-27 Thien-Thi Nguyen <ttn@gnu.org>
1365 Mention pcase as a fifth conditional form
1367 * doc/lispref/control.texi (Conditionals): ...here,
1368 in first para, w/ xref to "Pattern-Matching Conditional".
1370 2018-05-27 Thien-Thi Nguyen <ttn@gnu.org>
1372 Overhaul pcase documentation
1374 Suggested by Drew Adams (Bug#31311).
1376 * doc/lispref/control.texi (Control Structures):
1377 Add "Pattern-Matching Conditional" to menu, before "Iteration".
1378 (Conditionals): Delete menu.
1379 (Pattern matching case statement): Delete node/subsection,
1380 by actually moving, renaming, and overhauling it to...
1381 (Pattern-Matching Conditional): ...new node/section.
1382 (pcase Macro): New node/subsection.
1383 (Extending pcase): Likewise.
1384 (Backquote Patterns): Likewise.
1385 * doc/lispref/elisp.texi (Top) In @detailmenu, add
1386 "Pattern-Matching Conditional" under "Control Structures"
1387 section and delete "Conditionals" section.
1388 * lisp/emacs-lisp/pcase.el (pcase): Rewrite docstring.
1389 (pcase-defmacro \` (qpat) ...): Likewise.
1391 2018-05-27 Thien-Thi Nguyen <ttn@gnu.org>
1393 Use EXPVAL in docstrings of patterns defined using pcase-defmacro
1395 Suggested by Drew Adams (Bug#31311).
1397 * lisp/emacs-lisp/cl-macs.el (cl-struct): ...here.
1398 * lisp/emacs-lisp/eieio.el (eieio): Likewise.
1399 * lisp/emacs-lisp/radix-tree.el (radix-tree-leaf): Likewise.
1400 * lisp/emacs-lisp/rx.el (rx): Likewise.
1402 2018-05-27 Thien-Thi Nguyen <ttn@gnu.org>
1404 Introduce EXPVAL for pcase, pcase-defmacro docstrings
1406 Suggested by Drew Adams (Bug#31311).
1408 * lisp/emacs-lisp/pcase.el (pcase): Use EXPVAL in
1409 docstring to stand for the result of evaluating EXP.
1410 (pcase-defmacro): Add (fn ...) form in docstring
1411 that includes [DOC], and the EXPVAL convention.
1413 2018-05-27 Thien-Thi Nguyen <ttn@gnu.org>
1415 Ensure pcase doc shows `QPAT first among extensions
1417 * lisp/emacs-lisp/pcase.el (pcase--make-docstring):
1418 Split extensions display into two phases, collection
1419 and display, separated by a reordering step that
1420 ensures backquote is the first.
1422 2018-05-25 Nicolas Petton <nicolas@petton.fr>
1424 * etc/HISTORY: Update for Emacs 26.1 release.
1426 * etc/AUTHORS: Update.
1428 2018-05-25 Noam Postavsky <npostavs@gmail.com>
1430 Note caveat for backward regexp searching in docstring (Bug#31584)
1432 * src/search.c (Fre_search_backward): Emphasize that backwards
1433 searches may give shorter than expected matches.
1434 * doc/lispref/searching.texi (Regexp Search): Add an anchor for
1435 re-search-backward to reference.
1437 2018-05-25 Eli Zaretskii <eliz@gnu.org>
1439 Update backtrace in Emacs Lisp Intro
1441 * doc/lispintro/emacs-lisp-intro.texi (Making Errors): Update the
1442 backtrace to match Emacs 26. (Bug#31589)
1444 2018-05-24 Roland Winkler <winkler@gnu.org>
1446 Move window-point in bibtex-search-entry
1448 * lisp/textmodes/bibtex.el (bibtex-search-entry): Move window-point
1451 2018-05-24 Eli Zaretskii <eliz@gnu.org>
1453 More fixes of Intro to Emacs Lisp
1455 * doc/lispintro/emacs-lisp-intro.texi (Finding More): Tell the
1456 reader how to invoke 'M-.' without a tags table. Add a
1457 cross-reference to the Emacs manual for when a tags table does
1459 (append save-excursion): Rephrase a confusing sentence.
1462 2018-05-24 Eli Zaretskii <eliz@gnu.org>
1464 Add a footnote to Emacs Lisp Intro
1466 * doc/lispintro/emacs-lisp-intro.texi (Run a Program): Describe
1467 the detailed output of integer value evaluation in a footnote, to
1468 prevent confusion. (Bug#31579)
1470 2018-05-24 Eli Zaretskii <eliz@gnu.org>
1472 * lisp/help.el (with-help-window): Doc fix. (Bug#31574)
1474 2018-05-23 Eli Zaretskii <eliz@gnu.org>
1476 Fix some cross-references in emacs-lisp-intro.texi
1478 * doc/lispintro/emacs-lisp-intro.texi (List Processing)
1479 (Determining the Element, graph-body-print): Fix cross-references
1480 to subsections that don't exist in the printed version of the
1483 2018-05-23 Eli Zaretskii <eliz@gnu.org>
1485 Minor copyedits in Emacs manual in macos.texi
1487 * doc/emacs/macos.texi (Mac / GNUstep Basics)
1488 (Mac / GNUstep Events): Fix markup and capitalization.
1491 2018-05-23 Noam Postavsky <npostavs@gmail.com>
1493 Clarify when to use advice-add vs add-function
1495 * lisp/emacs-lisp/nadvice.el (add-function): Note in docstring that
1496 advice-add should be used for named functions.
1498 2018-05-22 Eli Zaretskii <eliz@gnu.org>
1500 Minor formatting tweak in the Emacs manual
1502 * doc/emacs/custom.texi (Directory Variables): Don't have 2
1503 footnotes back to back, it looks bad in HTML. (Bug#31555)
1505 2018-05-22 Eli Zaretskii <eliz@gnu.org>
1507 Update comments in Intro to Emacs Lisp
1509 * doc/lispintro/emacs-lisp-intro.texi: Explain in the comments
1510 what are roman page numbers in Preface about. (Bug#31541)
1512 2018-05-21 Noam Postavsky <npostavs@gmail.com>
1514 * etc/NEWS: Mention change in `edebug-prin1-to-string'.
1516 2018-05-21 Eli Zaretskii <eliz@gnu.org>
1518 Another attempt to fix sql.el
1520 * lisp/progmodes/sql.el (sql-product-interactive): Fix calculation
1521 of the SQL buffer name. (Bug#31446)
1523 2018-05-21 Eli Zaretskii <eliz@gnu.org>
1525 Update binding of 'M-.' in Intro to Emacs Lisp
1527 * doc/lispintro/emacs-lisp-intro.texi (On Reading this Text)
1528 (Finding More, Buffer Related Review, Buffer Exercises)
1529 (Find a File, Conclusion): 'M-.' is now bound to
1530 'xref-find-definitions'. (Bug#31542)
1532 2018-05-21 Eli Zaretskii <eliz@gnu.org>
1534 Fix a typo in last change in sql.el
1536 * lisp/progmodes/sql.el (sql-product-interactive): Use 'null',
1537 not 'zerop'. (Bug#31446)
1539 2018-05-20 Eli Zaretskii <eliz@gnu.org>
1541 Fix capitalization of mail headers
1543 * doc/emacs/sending.texi (Mail Format, Mail Headers)
1544 (Mail Aliases, Header Editing): Use consistent capitalization of
1545 CC, BCC, and FCC. (Bug#31532)
1547 2018-05-20 Eli Zaretskii <eliz@gnu.org>
1549 Fix buffer names in sql.el
1551 * lisp/progmodes/sql.el (sql-product-interactive): Fix the way the
1552 buffer name is determined by prefix arg. (Bug#31446)
1554 2018-05-20 Eli Zaretskii <eliz@gnu.org>
1556 Minor fixes in the Emacs manual
1558 * doc/emacs/misc.texi (Gnus Group Buffer): Fix a typo. (Bug#31534)
1559 (Single Shell): Rephrase an unclear sentence. (Bug#31535)
1560 (Remote Host): Use @command where appropriate. (Bug#31536)
1562 2018-05-19 Eli Zaretskii <eliz@gnu.org>
1564 Fix a typo in rmail.texi
1566 * doc/emacs/rmail.texi (Rmail Summary Edit): Add markup to 'nil'.
1569 2018-05-18 Paul Eggert <eggert@cs.ucla.edu>
1571 * etc/PROBLEMS: Document Bug#31305.
1573 2018-05-18 Lars Ingebrigtsen <larsi@gnus.org>
1575 (gnus-blocked-images): Clarify privacy implications
1577 * lisp/gnus/gnus-art.el (gnus-blocked-images): Clarify the privacy
1578 implication of altering the value of this variable.
1580 (cherry picked from commit f4d9fd3dd45f767eca33fbf1beee40da790fa74e)
1582 2018-05-18 Eli Zaretskii <eliz@gnu.org>
1584 Fix a typo in describing input methods
1586 * lisp/help-mode.el (help-make-xrefs): Fix a typo. (Bug#31448)
1588 2018-05-14 Eli Zaretskii <eliz@gnu.org>
1590 Clarify the mode-line indicators in CC Mode
1592 * doc/emacs/programs.texi (Electric C): Explain '*' and '/' in the
1593 CC Mode mode-line. (Bug31445)
1595 2018-05-12 João Távora <joaotavora@gmail.com>
1597 Fix filesystem littering by Flymake's legacy backend
1599 The Flymake legacy "proc" backend, which is active by default will try
1600 to syntax-check foo.c/foo.cpp and many other types of files, but on
1601 failing to find a suitable Makefile target, will fail. There's
1602 nothing wrong with that except that it used to leave behind the
1603 foo_flymake.c and foo_flymake.cpp auxiliary files behind, littering
1606 * lisp/progmodes/flymake-proc.el (flymake-proc-legacy-flymake):
1607 Call init-function inside of the unwind-protect.
1609 2018-05-12 Paul Eggert <eggert@cs.ucla.edu>
1611 * doc/emacs/help.texi: Fix paren typo.
1613 2018-05-11 Eli Zaretskii <eliz@gnu.org>
1615 More minor changes in shell-related nodes of Emacs manual
1617 * doc/emacs/misc.texi (Interactive Shell): Clarify how the window
1618 that displays "*shell*" is selected.
1619 (Shell Prompts): Fix a typo. Reported by Jorge
1620 <jorge+list@disroot.org> in emacs-manual-bugs.
1622 2018-05-11 Eli Zaretskii <eliz@gnu.org>
1624 Fix inaccuracies in "Shell Ring" node of Emacs manual
1626 * doc/emacs/misc.texi (Shell Ring): Don't mention 'M-s' and don't
1627 insist on Shell history commands being "jsut like" similar
1628 commands that operate on minibuffer history. Reported by Jorge
1629 <jorge+list@disroot.org> in emacs-manual-bugs.
1631 2018-05-11 Eli Zaretskii <eliz@gnu.org>
1633 Improve documentation of kmacro commands and variables.
1635 * lisp/kmacro.el (kmacro-start-macro-or-insert-counter)
1636 (kmacro-counter, kmacro-set-format, kmacro-set-counter)
1637 (kmacro-add-counter, kmacro-counter-format)
1638 (kmacro-insert-counter): Clarify and improve the doc strings.
1641 2018-05-11 Noam Postavsky <npostavs@gmail.com>
1643 * doc/man/emacs.1.in: Document --fg-daemon and --bg-daemon.
1645 2018-05-08 Noam Postavsky <npostavs@gmail.com>
1647 Don't check non-X frames for z order (Bug#31373)
1649 * src/xfns.c (x_frame_list_z_order): Only use frames with
1650 `output_method' set to `output_x_window'.
1652 2018-05-07 Alan Third <alan@idiocy.org>
1654 Check NSWindow is actually a frame
1656 * src/nsfns.m (Fns_frame_list_z_order): Check NSWindow is an instance
1657 of EmacsView before treating it as one.
1659 2018-05-06 Xu Chunyang <mail@xuchunyang.me>
1661 Fix gud-statement for pdb
1663 * lisp/progmodes/gud.el (pdb): Fix the gud-print implementation.
1666 2018-05-04 Eli Zaretskii <eliz@gnu.org>
1668 Document 'custom-group'
1670 * doc/lispref/customize.texi (Group Definitions): Document the
1671 'custom-group' property.
1673 2018-05-04 Eli Zaretskii <eliz@gnu.org>
1675 A minor addition to etc/DEBUG
1677 * etc/DEBUG: Add a note for macOS users who get error messages
1678 when trying to run GDB.
1680 2018-05-04 Daniel Pittman <slippycheeze@google.com> (tiny change)
1682 Avoid errors in ispell.el when Enchant returns empty extra chars
1684 * lisp/textmodes/ispell.el (ispell--get-extra-word-characters):
1685 Handle the case of empty extra characters returned by the
1686 Enchant '-lsmod' command. (Bug#31344)
1688 2018-05-04 Eli Zaretskii <eliz@gnu.org>
1690 Make 'ispell-initialize-spellchecker-hook' work again
1692 * lisp/textmodes/ispell.el (ispell-base-dicts-override-alist):
1693 Defvar it to allow dynamic binding. (Bug#31341)
1695 2018-05-04 Noam Postavsky <npostavs@gmail.com>
1697 Handle selected_window change in prepare_menu_bars (Bug#31312)
1699 * src/xdisp.c (redisplay_internal): Check selected_window after
1700 calling prepare_menu_bars, since it can call lisp hooks.
1702 2018-05-03 Eli Zaretskii <eliz@gnu.org>
1704 Fix report-emacs-bug via mailclient on MS-Windows
1706 * lisp/net/browse-url.el (browse-url-default-windows-browser):
1707 On MS-Windows, call url-unhex-string only for file:// URLs.
1710 2018-05-02 Paul Eggert <eggert@cs.ucla.edu>
1712 Port collation tests to glibc 2.27
1714 * test/src/fns-tests.el (fns-tests-collate-strings)
1715 (fns-tests-collate-sort): Don’t make unportable assumptions
1716 about how en_US.UTF-8 collation works. These assumptions
1717 are not true on Fedora 28, which ships with glibc 2.27.
1719 2018-05-01 Paul Eggert <eggert@cs.ucla.edu>
1721 Port --enable-gcc-warnings to GCC 8
1723 Backport from master.
1724 * lib-src/emacsclient.c (fail):
1725 Do not dereference a null pointer.
1726 * src/frame.c (delete_frame):
1727 Add a decl with UNINIT to work around GCC bug 85563.
1728 * src/menu.h (finish_menu_items):
1729 Do not use attribute const.
1730 * src/regex.c (analyze_first): Use FALLTHROUGH, not a comment.
1732 2018-04-30 Paul Eggert <eggert@cs.ucla.edu>
1734 Advise CFLAGS= operand, not in environment, when configuring
1736 Backport from master.
1738 2018-04-28 Eli Zaretskii <eliz@gnu.org>
1740 Update the Emacs FAQ
1742 * doc/misc/efaq.texi (Latest version of Emacs): Update versions.
1743 (New in Emacs 26): New node.
1745 * admin/release-process: Mention the FAQ update as part of the
1748 2018-04-28 Eli Zaretskii <eliz@gnu.org>
1750 * etc/DEBUG: Minor copyedits.
1752 2018-04-26 Alan Third <alan@idiocy.org>
1754 Clarify wording of NS drag n drop documentation
1756 * doc/emacs/macos.texi (Mac / GNUstep Events): Clarify wording of
1757 ns-drag-n-drop description.
1759 2018-04-25 Basil L. Contovounesios <contovob@tcd.ie>
1761 Improve kill-related documentation (bug#31209)
1763 * doc/lispref/text.texi (Low-Level Kill Ring): Fix typo under
1764 current-kill. Mention interprogram-paste-function under kill-new
1766 * lisp/simple.el (save-interprogram-paste-before-kill, kill-new)
1767 (kill-append-merge-undo, kill-append): Touch-up docstrings.
1769 2018-04-24 Stefan Monnier <monnier@iro.umontreal.ca>
1771 * lisp/simple.el (region-extract-function): Don't hide the 'nil' case.
1773 2018-04-22 Karl Otness <karl@karlotness.com> (tiny change)
1775 Fix pre- and post-command-hook errors in term.el
1777 Before this patch, after the terminal process dies the command
1778 hooks added in term-mode's char mode would produce errors.
1779 This fix removes these hooks when the process dies.
1780 * lisp/term.el (term-handle-exit): Remove pre-command-hook and
1781 post-command-hook because the process is dead. (Bug#31236)
1783 2018-04-22 Charles A. Roelli <charles@aurox.ch>
1785 * doc/lispref/display.texi (Glyphless Chars): Fix grammar.
1787 2018-04-21 Alan Third <alan@idiocy.org>
1789 Fix macOS drag n drop event documentation
1791 * doc/emacs/macos.texi (Mac / GNUstep Customization): Remove
1792 references to color panel.
1793 (Mac / GNUstep Events): Remove ns-drag-file, and add ns-drag-n-drop.
1795 2018-04-20 Eli Zaretskii <eliz@gnu.org>
1797 Update the documentation of 'perform-replace'
1799 * doc/lispref/searching.texi (Search and Replace): Update the
1800 documentation of 'perform-replace'.
1802 2018-04-20 Martin Rudalics <rudalics@gmx.at>
1804 * etc/NEWS: Another fix for the last change (noted by Juri Linkov)
1806 2018-04-19 Eli Zaretskii <eliz@gnu.org>
1808 Fix use of @key in Texinfo manuals
1810 * doc/misc/efaq-w32.texi (Location of init file):
1811 * doc/misc/org.texi (Editing source code, Export settings)
1812 (Closing items, Drawers, Structure editing):
1813 * doc/misc/gnus.texi (Spam and Ham Processors, Terminology):
1814 * doc/misc/calc.texi (Keypad Functions Menu, Keypad Binary Menu)
1815 (Keypad Vectors Menu, Keypad Main Menu, Basic Arithmetic)
1817 * doc/misc/sc.texi (Electric References):
1818 * doc/misc/info.texi (Help-^L):
1819 * doc/misc/reftex.texi (Reference Styles):
1820 * doc/misc/idlwave.texi (Troubleshooting, Examining Variables)
1821 (Lesson III---User Catalog, Using the Shell):
1822 * doc/misc/eshell.texi (Bugs and ideas):
1823 * doc/misc/ada-mode.texi (Automatic Casing):
1824 * doc/misc/ediff.texi (Selective Browsing):
1825 * doc/misc/vip.texi (Customizing Constants):
1826 * doc/misc/pcl-cvs.texi (Selected files):
1827 * doc/misc/efaq.texi (Replying to the sender of a message)
1828 (Basic keys, No Meta key, Matching parentheses)
1829 (Origin of the term Emacs, Installing Texinfo documentation)
1830 (Learning how to do something, Emacs manual, Extended commands):
1831 * doc/misc/viper.texi (Rudimentary Changes):
1832 * doc/misc/tramp.texi (Frequently Asked Questions):
1833 * doc/emacs/kmacro.texi (Basic Keyboard Macro):
1834 * doc/emacs/frames.texi (Frame Commands):
1835 * doc/emacs/msdos.texi (Windows Keyboard):
1836 * doc/emacs/search.texi (Query Replace):
1837 * doc/lispintro/emacs-lisp-intro.texi (Keybindings)
1839 * doc/lispref/tips.texi (Key Binding Conventions): Fix use of
1840 @key. For the details, see
1841 http://lists.gnu.org/archive/html/emacs-devel/2018-04/msg00390.html.
1843 2018-04-19 Eli Zaretskii <eliz@gnu.org>
1845 Improve documentation of actual arglist
1847 * doc/lispref/functions.texi (Function Documentation): Advise
1848 against using '(fn ARGLIST)' method of advertising a calling
1849 convention when the old calling convention is deprecated.
1852 2018-04-18 Noam Postavsky <npostavs@gmail.com>
1854 Don't assume term-current-row cache is valid (Bug#31193)
1856 * lisp/term.el (term-down): Call `term-current-row' instead of
1857 directly accessing the variable `term-current-row. Following a resize
1858 of the terminal's window, `term-current-row' is reset to nil, so it is
1859 not safe to assume it is a number.
1861 2018-04-17 Eli Zaretskii <eliz@gnu.org>
1863 Fix flyspell-auto-correct-previous-word broken by recent change
1865 * lisp/textmodes/flyspell.el (flyspell-auto-correct-word): Keep
1866 flyspell-auto-correct-region also when repeatedly invoking
1867 flyspell-auto-correct-previous-word. (Bug#31188)
1869 2018-04-17 Eli Zaretskii <eliz@gnu.org>
1871 * test/src/lread-tests.el (lread-test-bug-31186): New test.
1873 2018-04-17 Andreas Schwab <schwab@suse.de>
1875 Fix undefined behaviour while looking for lexical-binding file variable (bug 31186)
1877 * src/lread.c (lisp_file_lexically_bound_p): Reset
1878 beg_end_state before reading variable or value.
1880 2018-04-15 Eli Zaretskii <eliz@gnu.org>
1882 Minor wording improvement in "Bookmarks"
1884 * doc/emacs/regs.texi (Bookmarks): Improve wording. Suggested by
1885 "Siraphob (Ben) Phipathananunth" <siraben@disroot.org>.
1887 2018-04-14 Eli Zaretskii <eliz@gnu.org>
1889 Fix building etc/DOC in the MSDOS port
1891 * msdos/sed1v2.inp (lisp.mk): Fix escaping in Sed commands.
1893 2018-04-14 Eli Zaretskii <eliz@gnu.org>
1895 * lisp/select.el (gui-get-selection): Doc fix.
1897 2018-04-13 Alan Mackenzie <acm@muc.de>
1899 Complete documentation of syntax flags by adding `c'
1901 * doc/lispref/syntax.texi ("Syntax Table Internals"): Add entry for `c'
1904 2018-04-13 Eli Zaretskii <eliz@gnu.org>
1906 Fix typos and minor wording issues in ELisp manual
1908 * doc/lispref/internals.texi (Writing Emacs Primitives):
1909 * doc/lispref/display.texi (Temporary Displays): Fix typos.
1910 * doc/lispref/text.texi (Filling, Changing Properties)
1911 (Transposition): Clarify and fix typos.
1912 * doc/lispref/positions.texi (Screen Lines): Improve wording.
1913 * doc/lispref/modes.texi (Minor Mode Conventions)
1914 (Font Lock Multiline): Fix typos.
1915 * doc/lispref/variables.texi (Dynamic Binding Tips): Fix a
1916 cross-reference. Fix a typo.
1917 * doc/lispref/sequences.texi (Sequence Functions): Fix typos.
1920 2018-04-13 Eli Zaretskii <eliz@gnu.org>
1922 Avoid segfault in processes of type 'pipe'
1924 * src/process.c (Fmake_pipe_process): Set up the decoding and
1925 encoding buffers. For the details, see
1926 http://lists.gnu.org/archive/html/emacs-devel/2018-04/msg00295.html.
1928 2018-04-13 Robert Pluim <rpluim@gmail.com>
1930 Remove repetitions in documentation strings
1932 * lisp/bindings.el (right-word): Remove repetition
1933 (left-word): Likewise.
1935 * lisp/image-mode.el (image-mode-as-hex): Likewise.
1937 * lisp/cedet/semantic/tag-ls.el (semantic-tag-similar-p): Likewise.
1939 * lisp/textmodes/reftex-vars.el (reftex-view-crossref-extra): Likewise
1941 2018-04-12 Eli Zaretskii <eliz@gnu.org>
1943 * lisp/image.el (image-load-path): Doc fix.
1945 2018-04-09 Nicolas Petton <nicolas@petton.fr>
1947 * etc/AUTHORS: Regenerate.
1949 2018-04-09 Charles A. Roelli <charles@aurox.ch>
1951 * lisp/files.el (kept-new-versions): Improve documentation string.
1953 2018-04-09 Eli Zaretskii <eliz@gnu.org>
1955 Fix a minor mistake in the ELisp manual
1957 * doc/lispref/files.texi (Reading from Files): Fix copy/paste
1958 mistake. (Bug#31107)
1960 2018-04-06 Eli Zaretskii <eliz@gnu.org>
1962 * lisp/files.el (find-file-literally): Doc fix.
1964 2018-04-05 Eli Zaretskii <eliz@gnu.org>
1966 Fix typos in doc strings
1968 * lisp/simple.el (undo-auto--boundary-timer)
1969 (undo-auto--boundary-ensure-timer): Fix typos in doc strings.
1971 2018-04-05 Nicolas Petton <nicolas@petton.fr>
1973 Bump Emacs version to 26.1
1978 * nt/README.W32: Bump Emacs version to 26.1.
1980 2018-04-05 Stefan Monnier <monnier@iro.umontreal.ca>
1982 * lisp/emacs-lisp/inline.el: Clarify apparent typos
1984 2018-04-04 Ted Zlatanov <tzz@lifelogs.com>
1986 Allow sexp customization type in auth-sources
1988 * lisp/auth-source.el (auth-sources): Allow sexp customization type.
1989 Update the :version tag.
1991 (cherry picked from commit 447da5b0d49b7aa14fa5d6969015770fdf9b9f92)
1993 2018-04-03 Nicolas Petton <nicolas@petton.fr>
1995 * etc/NEWS: Remove temporary markup.
1997 * etc/AUTHORS: Update.
1999 * ChangeLog.3: Update.
2001 2018-04-03 Michael Albinus <michael.albinus@gmx.de>
2005 * lisp/cus-start.el (temporary-file-directory): Suppress file name
2006 handlers when calling `shell-command-to-string'. (Bug#31022)
2008 2018-04-03 Paul Eggert <eggert@cs.ucla.edu>
2010 Update "Calendrical Calculations" cites
2012 * lisp/calendar/calendar.el: Update citations to the book
2013 "Calendrical Calculations" and its predecessors.
2015 2018-04-02 Noam Postavsky <npostavs@gmail.com>
2017 Fix term.el rendering following a window resize (Bug#30544)
2019 * lisp/term.el (term-reset-size): Reset cached row and column values
2020 before changing point.
2022 2018-04-02 Philipp Stephani <phst@google.com>
2024 * lisp/files.el (auto-save-visited-mode): Don't prompt for filenames.
2026 2018-04-01 Philipp Stephani <phst@google.com>
2028 Quote a few backticks in docstrings.
2030 * lisp/emacs-lisp/macroexp.el (macroexp-progn, macroexp-let*)
2031 (macroexp-if): Quote backtick in docstrings.
2033 2018-04-01 Eli Zaretskii <eliz@gnu.org>
2035 Minor copyedits of completion-at-point-functions documentation
2037 * lisp/minibuffer.el (completion-at-point-functions):
2038 * doc/lispref/minibuf.texi (Completion in Buffers): Fix wording
2041 (cherry picked from commit a8ddd05d7d32946b892b9faaba6c9736ed2ad847)
2043 2018-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
2045 (completion-at-point-functions): Improve doc
2047 (cherry picked from commit b56c56f203f8b066dd71e6ae6a254121b3ac3f08)
2049 2018-04-01 Eli Zaretskii <eliz@gnu.org>
2051 * lisp/net/shr.el (shr-browse-url): Doc fix. (Bug#30957)
2053 2018-03-31 Hong Xu <hong@topbug.net>
2055 Mention `key-description' as inverse of `kbd' (Bug#30942)
2057 * lisp/subr.el (kbd): Add `key-description' as inverse of `kbd' in the
2060 2018-03-31 Noam Postavsky <npostavs@gmail.com>
2062 Document return value of pcase (Bug#30425)
2064 * doc/lispref/control.texi (Pattern matching case statement):
2065 * lisp/emacs-lisp/pcase.el (pcase): State that pcase returns nil if no
2067 (pcase-exhaustive): State that an error is signaled if no patterns
2070 2018-03-31 Paul Eggert <eggert@cs.ucla.edu>
2072 * doc/emacs/macos.texi: Tweak grammar and capitalization.
2074 2018-03-31 Richard Stallman <rms@gnu.org>
2076 Distinguish free from non-free OSes
2078 2018-03-28 Glenn Morris <rgm@gnu.org>
2080 * doc/emacs/misc.texi (Amusements): Avoid non-printing character.
2082 2018-03-28 Glenn Morris <rgm@gnu.org>
2084 Fix xrefs in pdf Emacs manual
2086 * doc/emacs/fortran-xtra.texi (ForIndent Cont, ForIndent Num)
2088 * doc/emacs/picture-xtra.texi (Rectangles in Picture):
2089 Fix recent changes that neglected the splitting of the pdf manuals.
2091 2018-03-28 Michael Albinus <michael.albinus@gmx.de>
2093 * doc/misc/org.texi (Installation): Fix clone commands.
2095 2018-03-27 Rasmus <rasmus@gmx.us>
2097 Update Org to v9.1.9
2099 Please note this is a bugfix release. See etc/ORG-NEWS for details.
2101 2018-03-27 Michael Heerdegen <michael_heerdegen@web.de>
2103 De-obsolete `if-let' and `when-let'
2105 For the following release it is planned to make `if-let*' and
2106 `when-let*' aliases for `if-let' and `when-let'. For now we revert
2107 declaring `if-let' and `when-let' obsolete and tweak the docstrings.
2109 * lisp/emacs-lisp/subr-x.el (if-let*, when-let*): Make docstrings
2110 refer to those of `if-let' and `when-let'.
2111 (if-let, when-let): De-obsolete. Rewrite documentation.
2113 2018-03-26 Glenn Morris <rgm@gnu.org>
2115 * lisp/htmlfontify.el (hfy-begin-span-handler): Doc fix.
2117 2018-03-26 Eli Zaretskii <eliz@gnu.org>
2119 * doc/lispref/functions.texi (Defining Functions): Improve indexing.
2121 2018-03-25 Aaron Jensen <aaronjensen@gmail.com>
2123 Fix crash after frame is freed on macOS (bug#30800)
2125 * src/nsterm.m (x_free_frame_resources): Clear represented_frame.
2128 2018-03-25 Michael Albinus <michael.albinus@gmx.de>
2132 * doc/emacs/basic.texi:
2133 * doc/emacs/calendar.texi:
2134 * doc/emacs/display.texi:
2135 * doc/emacs/mini.texi:
2136 * doc/emacs/misc.texi:
2137 * doc/emacs/picture-xtra.texi:
2138 * doc/misc/info.texi: Prefer <PageDown> and <PageUp> over
2139 <next> and <prior>. Add missing @kindex entries.
2141 * doc/emacs/custom.texi (Function Keys): Fix and add missing
2144 2018-03-25 Michael Albinus <michael.albinus@gmx.de>
2146 Minor manual changes changes
2148 * doc/emacs/misc.texi (FFAP): Complete commands.
2149 (Amusements): Add some @cindex entries. Add "M-x butterfly".
2151 2018-03-24 Glenn Morris <rgm@gnu.org>
2153 * lisp/calculator.el (calculator-paste-decimals): Add version.
2155 2018-03-23 Eli Zaretskii <eliz@gnu.org>
2157 More proofreading of the Emacs manual
2159 * doc/emacs/trouble.texi (DEL Does Not Delete): Improve wording.
2160 (Screen Garbled): Mention the command name.
2161 (Bug Criteria): Mention that problems in packages should first be
2162 reported to the respective maintainers.
2163 (Checklist): Fix wording.
2164 (Contributing, Copyright Assignment): Minor copyedits.
2165 * doc/emacs/misc.texi (Amusements): Remove Landmark.
2166 * doc/emacs/picture-xtra.texi (Tabs in Picture): Improve wording.
2167 (Rectangles in Picture): Add a cross-reference to "Registers".
2168 * doc/emacs/misc.texi (Gnus Group Buffer, Gnus Summary Buffer):
2169 Mention command names in parentheses.
2170 (Gnus Summary Buffer): Document "M-r".
2171 (Network Security): Document that current NSM works with TLS
2172 encryption. Fix markup.
2173 (Document View): Improve wording and fix a typo.
2174 (DocView Conversion): Rephrase description of
2175 doc-view-cache-directory.
2176 (Single Shell): Mention variables that control when shell output
2177 appears in the echo area.
2178 (Shell Mode): Improve wording.
2179 (Shell Prompts): Fix a typo.
2180 (Shell Ring, Term Mode): Mention command names.
2181 (History References): Add a cross-reference to "Rebinding".
2182 (Remote Host): Mention SSH.
2183 (TCP Emacs server): Improve wording.
2184 (emacsclient Options): Minor improvements.
2185 (PostScript): Fix wording.
2186 (PostScript Variables): Mention that ps-font-size could be a cons.
2187 (Sorting): Minor improvements. Suggested by Michael Albinus
2188 <michael.albinus@gmx.de> in emacs-manual-bugs@gnu.org
2190 2018-03-23 Noam Postavsky <npostavs@gmail.com>
2192 * src/lisp.h (struct Lisp_Buffer_Local_Value): Update commentary.
2194 * doc/emacs/trouble.texi: Fix location of `emacs-version' index.
2196 2018-03-23 Noam Postavsky <npostavs@gmail.com>
2198 Explain more about (defvar foo) form (Bug#18059)
2200 * doc/lispref/variables.texi (Defining Variables)
2201 (Using Lexical Binding):
2202 * doc/lispref/compile.texi (Compiler Errors): Emphasize that omitting
2203 VALUE for `defvar' marks the variable special only locally.
2204 * doc/lispref/variables.texi (Using Lexical Binding): Add example of
2205 using `defvar' without VALUE.
2207 2018-03-22 Charles A. Roelli <charles@aurox.ch>
2209 * doc/lispref/buffers.texi (Buffer List): Fix grammar.
2211 * doc/lispref/anti.texi (Antinews): Fix grammar.
2213 2018-03-22 Glenn Morris <rgm@gnu.org>
2215 * lisp/org/ob-lisp.el (org-babel-lisp-eval-fn): Tweak type.
2217 Avoids type mismatch when relevant library is not present/loaded.
2219 2018-03-22 Glenn Morris <rgm@gnu.org>
2221 sql.el defcustom fixes
2223 * lisp/progmodes/sql.el (sql-login-params): Update.
2224 Avoids type mismatch with postgres and sqlite login params.
2225 (sql-postgres-login-params): Bump version.
2227 2018-03-22 Eli Zaretskii <eliz@gnu.org>
2229 Document DEFUN attributes
2231 * doc/lispref/internals.texi (Writing Emacs Primitives): Document
2232 specification of function attributes in DEFUN.
2234 2018-03-22 Nicolas Petton <nicolas@petton.fr>
2236 * etc/NEWS: Add an entry for auth-source-pass.
2238 2018-03-22 Eli Zaretskii <eliz@gnu.org>
2242 * msdos/sed2v2.inp (HAVE_SBRK): Define to 1.
2244 2018-03-22 Eric Abrahamsen <eric@ericabrahamsen.net>
2246 Improve warning and error messages
2248 * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read,
2249 (eieio-persistent-validate/fix-slot-value): Indicate exactly what
2252 2018-03-22 Eric Abrahamsen <eric@ericabrahamsen.net>
2254 Adjust eieio persistence tests for expected failure
2256 * test/lisp/emacs-lisp/eieio-tests/eieio-test-persist.el
2257 (eieio-test-persist-hash-and-vector,
2258 eieio-test-persist-interior-lists): Persistence does not currently
2259 handle deeply-nested objects. Expect current failures, and mark for
2262 2018-03-22 Eric Abrahamsen <eric@ericabrahamsen.net>
2264 Let eieio-persistent-read read what object-write has written
2266 * lisp/emacs-lisp/eieio-base.el (eieio-persistent-validate/fix-slot-value):
2267 `object-write' may quote lists inside hash tables and vectors, so
2268 unquote those lists here.
2270 This patch allows the eieio-persistent write/restore process to
2271 perform a clean round trip. It only handles a very specific and
2272 limited range of object structures, but at least the write and read
2275 2018-03-22 Eric Abrahamsen <eric@ericabrahamsen.net>
2277 Handle possible classtype values in eieio-persistent-read
2279 * lisp/emacs-lisp/eieio-base.el (eieio-persistent-validate/fix-slot-value):
2280 The function `eieio-persistent-slot-type-is-class-p' could return
2281 either a single class, or a list of classes.
2283 2018-03-22 Pierre Téchoueyres <pierre.techoueyres@free.fr>
2285 Add new tests for eieio persistence
2287 * test/lisp/emacs-lisp/eieio-tests/eieio-test-persist.el:
2288 (hash-equal): New comparison test for hash-tables.
2289 (persist-test-save-and-compare): Use test for hash-tables.
2290 (eieio-test-persist-hash-and-vector,
2291 eieio-test-persist-interior-lists): New tests.
2293 2018-03-22 Glenn Morris <rgm@gnu.org>
2295 * lisp/gnus/gnus-cloud.el (gnus-cloud-synced-files): Fix doc & type.
2297 * lisp/ibuf-ext.el (ibuffer-never-search-content-mode): Fix type.
2299 2018-03-21 Glenn Morris <rgm@gnu.org>
2301 * doc/lispref/windows.texi (Selecting Windows): Fix a typo.
2303 2018-03-21 Charles A. Roelli <charles@aurox.ch>
2305 * doc/lispref/internals.texi (Writing Emacs Primitives): Fix grammar.
2307 2018-03-21 Alan Mackenzie <acm@muc.de>
2309 Firm up documentation of generalized variables
2311 * doc/lispref/variables.texi (Generalized Variables)
2312 (Setting Generalized Variables): Define a generalized variable as something
2313 setf can write to. Remove the insinuation that hackers have poor memories.
2314 State explicitly that the list of GVs given is complete. Remove the
2315 suggestion that `setf' has superseded, or is in the process of superseding,
2316 `setq'. Make minor corrections to the English.
2318 2018-03-21 Eli Zaretskii <eliz@gnu.org>
2320 Improve documentation of Auto-Revert mode
2322 * doc/emacs/files.texi (Reverting): Mention that Aut-Revert
2323 applies to Dired buffers as well. Suggested by Michael Albinus
2324 <michael.albinus@gmx.de> in emacs-manual-bugs@gnu.org.
2326 2018-03-21 Eli Zaretskii <eliz@gnu.org>
2328 Improvements in dired.texi
2330 * doc/emacs/dired.texi (Dired): Mention that Dired works with
2332 (Dired Enter): ls-lisp is used on some remote systems as well.
2333 (Dired Navigation): Mention and index the command names.
2334 (Dired Deletion): Document the 'always' value of
2335 dired-recursive-deletes. Mention the alternative deletion method.
2336 (Marks vs Flags): Fix spelling of Auto-Revert mode. Document what
2337 marking does on a subdirectory header line.
2338 (Operating on Files): Document that 'Z' uses gzip or compress.
2339 (Comparison in Dired): Mention ediff-files.
2340 (Misc Dired Features): Fix a typo. Suggested by Michael Albinus
2341 <michael.albinus@gmx.de> in emacs-manual-bugs@gnu.org.
2343 2018-03-21 Noam Postavsky <npostavs@gmail.com>
2345 Revert "Support all perl variable declarators and prefixes"
2347 It highlights normal variable names in perl programs (Bug#30812).
2348 * lisp/progmodes/perl-mode.el (perl-imenu-generic-expression)
2349 (perl-font-lock-keywords-2): Restore values prior to Bug#27613 fix.
2351 Don't merge to master, we will fix Bug#27613 properly there (it's too
2352 close to release to do that on emacs-26).
2354 2018-03-20 Paul Eggert <eggert@cs.ucla.edu>
2356 Port to 32-bit sparc64
2358 Backport from master.
2359 Problem reported by Ulrich Mueller; fix suggested by Eli Zaretskii
2360 and Andreas Schwab (Bug#30855).
2361 * src/alloc.c (mark_memory): Call mark_maybe_object only on
2362 pointers that are properly aligned for Lisp_Object.
2364 2018-03-20 Robert Pluim <rpluim@gmail.com>
2366 Correct Info link markup
2368 * lisp/gnus/gnus-agent.el (gnus-agent-auto-agentize-methods):
2369 Correct markup for Info link.
2370 * src/minibuf.c (Fcompleting_read): Likewise.
2372 2018-03-20 Nick Helm <nick@tenpoint.co.nz>
2374 Improve documentation of 'with-help-window'
2376 * doc/lispref/help.texi (Help Functions): Change variable name
2377 to 'buffer-or-name'.
2379 * lisp/help.el (with-help-window): Change variable name to
2380 'buffer-or-name' and rewrite the doc string, adding reference
2381 to 'help-window-setup'. (Bug#30792)
2383 2018-03-20 Eli Zaretskii <eliz@gnu.org>
2385 Minor improvements in building.texi
2387 * doc/emacs/building.texi (Compilation Shell): Mention that this
2388 section is for local compilation buffers.
2389 (Compilation, Compilation Mode): Mention that 'g' is bound to
2390 'recompile' in compilation buffers.
2391 (Grep Searching): Add a cross-reference to "Compilation Mode".
2392 Suggested by Michael Albinus <michael.albinus@gmx.de> in
2393 emacs-manual-bugs@gnu.org.
2395 2018-03-20 Alex Branham <branham@utexas.edu>
2397 * lisp/textmodes/bibtex.el (bibtex-mark-entry): activate mark
2399 2018-03-19 Eli Zaretskii <eliz@gnu.org>
2401 * doc/emacs/building.texi (Starting GUD): Mention 'guiler'.
2403 2018-03-19 Eli Zaretskii <eliz@gnu.org>
2405 Yet more proofreading of the Emacs manual
2407 * doc/emacs/building.texi (Compilation, Grep Searching)
2408 (Debuggers, GUD Customization, Source Buffers)
2409 (Breakpoints Buffer, Threads Buffer): Minor fixes and updates.
2410 Suggested by Michael Albinus <michael.albinus@gmx.de> in
2411 emacs-manual-bugs@gnu.org.
2413 2018-03-19 Paul Eggert <eggert@cs.ucla.edu>
2415 * doc/emacs/rmail.texi: Fix broken link.
2417 2018-03-19 Paul Eggert <eggert@cs.ucla.edu>
2419 Fix recently-added POP doc glitch
2421 * doc/emacs/rmail.texi (Remote Mailboxes):
2422 POP3 → POP, when talking about POP in general.
2424 2018-03-19 Eli Zaretskii <eliz@gnu.org>
2426 More proofreading of the Emacs manual
2428 * doc/emacs/macos.texi (Mac / GNUstep Basics): Fix typos. Improve
2430 (Mac / GNUstep Basics, Mac / GNUstep Customization)
2431 (Mac / GNUstep Events): Improve indexing.
2433 * doc/emacs/rmail.texi (Rmail): Mention Gnus.
2434 (Rmail Basics, Rmail Scrolling): Improve cross-references and
2436 (Rmail Motion): Minor improvements.
2437 (Rmail Inbox): Remove outdated text about Babyl format.
2438 (Rmail Files): Formatting changes. Comment out
2439 set-rmail-inbox-list in the table of commands, as it is commented
2440 out in the text that follows.
2441 (Rmail Output, Rmail Labels, Rmail Reply, Rmail Make Summary):
2443 (Rmail Summary Edit): Document
2444 rmail-summary-scroll-between-messages.
2445 (Rmail Editing): Improve indexing.
2446 (Movemail): Fix typos.
2447 (Remote Mailboxes): Use "POP3" rather than "POP".
2449 2018-03-19 Simen Heggestøyl <simenheg@gmail.com>
2451 Fix typo in the Emacs manual's VC chapter
2453 * doc/emacs/maintaining.texi (VC Directory Buffer): Fix a typo.
2455 2018-03-19 Basil L. Contovounesios <contovob@tcd.ie>
2457 Pass json-readtable-error data as a list (bug#30489)
2459 * lisp/json.el (json-readtable-dispatch): Fix error data.
2460 * test/lisp/json-tests.el (test-json-read): Check error data is a
2463 2018-03-17 Noam Postavsky <npostavs@gmail.com>
2465 Improve word motion docs (Bug#30815)
2467 * doc/lispref/positions.texi (Word Motion): Fix reference to
2468 `char-script-table'.
2469 * lisp/simple.el (backward-word):
2470 * src/syntax.c (forward-word): Mention `char-script-table' and add
2471 link to the 'Word Motion' manual section.
2473 2018-03-15 Michael Albinus <michael.albinus@gmx.de>
2475 Replace "carriage-return" by "carriage return" in manuals
2477 * doc/emacs/msdos.texi:
2478 * doc/emacs/mule.texi:
2479 * doc/emacs/screen.texi:
2480 * doc/lispref/nonascii.texi:
2481 * doc/misc/calc.texi: Replace "carriage-return" by "carriage
2482 return". Suggested by Richard Stallman <rms@gnu.org> in
2483 emacs-manual-bugs@gnu.org.
2485 2018-03-15 Eli Zaretskii <eliz@gnu.org>
2487 Minor copyedits in mule.texi
2489 * doc/emacs/mule.texi (Recognize Coding, Fontsets): Minor changes
2490 in wording. Suggested by Richard Stallman <rms@gnu.org> in
2491 emacs-manual-bugs@gnu.org.
2493 2018-03-14 Eli Zaretskii <eliz@gnu.org>
2495 Fix problems caused by fontconfig-2.13.0
2497 * src/xterm.c (x_term_init): Call fixup_locale after
2498 xg_initialize, to countermand the call to setlocale in some
2499 versions of fontconfig. (Bug#30788)
2501 2018-03-13 Glenn Morris <rgm@gnu.org>
2503 Fix some allout.el aliases
2505 * lisp/allout.el (allout-passphrase-verifier-string)
2506 (allout-passphrase-hint-string): Fix alias.
2508 2018-03-13 Glenn Morris <rgm@gnu.org>
2510 * lisp/progmodes/ada-mode.el (ada-clean-buffer-before-saving): Doc fix.
2512 2018-03-13 Glenn Morris <rgm@gnu.org>
2514 Doc fixes re obsolete items
2516 * doc/emacs/mini.texi (Completion Commands): Small update re mouse.
2517 * doc/misc/htmlfontify.texi (Customization): Replace obsolete alias.
2519 2018-03-13 Glenn Morris <rgm@gnu.org>
2521 Replace an obsolete alias in tpu-mapper
2523 * lisp/obsolete/tpu-mapper.el (tpu-map-key, tpu-mapper):
2524 Replace obsolete alias.
2526 2018-03-13 Glenn Morris <rgm@gnu.org>
2528 Doc fixes re obsolete items
2530 * doc/emacs/maintaining.texi (VC Undo):
2531 * doc/misc/efaq-w32.texi (Font names): Replace obsolete aliases.
2532 * doc/misc/url.texi (Customization):
2533 Don't mention url-temporary-directory, it essentially does nothing.
2535 (highlight-changes-global-changes-existing-buffers): Doc fix.
2537 2018-03-13 Eli Zaretskii <eliz@gnu.org>
2539 Minor changes in mule.texi
2541 * doc/emacs/mule.texi (International, Coding Systems)
2542 (Bidirectional Editing): Minor wording changes and typo fixes.
2543 Suggested by Michael Albinus <michael.albinus@gmx.de> in
2544 emacs-manual-bugs@gnu.org.
2546 2018-03-13 Eli Zaretskii <eliz@gnu.org>
2548 Avoid assertion violation under visual-order-cursor-movement
2550 * src/xdisp.c (Fmove_point_visually): Don't let point exceed the
2551 BEGV..ZV range. Signal Beginning of buffer error when there's a
2552 before-string at BEGV. (Bug#30787)
2554 2018-03-13 Glenn Morris <rgm@gnu.org>
2556 Stop mentioning options.el in doc
2558 * doc/misc/calc.texi (Customizing Embedded Mode):
2559 Remove mentions of the obsolete (since 22.1) options.el.
2560 * lisp/progmodes/meta-mode.el: Comment fix.
2562 2018-03-12 Charles A. Roelli <charles@aurox.ch>
2564 * lisp/vc/vc-dir.el (vc-dir-unmark): Fix documentation.
2566 2018-03-12 Eli Zaretskii <eliz@gnu.org>
2568 * lisp/minibuffer.el (completion-cycle-threshold): Doc fix.
2570 2018-03-12 Eli Zaretskii <eliz@gnu.org>
2572 Fix last change in Xref documentation
2574 * doc/emacs/maintaining.texi (Looking Up Identifiers): More
2575 accurate wording for the description of xref-etags-mode.
2577 2018-03-11 Eli Zaretskii <eliz@gnu.org>
2579 More changes in the Emacs manual
2581 * doc/emacs/text.texi (Words, Foldout, Table Conversion): Clarify
2582 text. Reported by Gijs Hillenius <gijs@hillenius.net> in
2583 emacs-manual-bugs@gnu.org.
2585 * doc/emacs/msdos.texi (Windows Keyboard):
2586 * doc/emacs/msdos-xtra.texi (MS-DOS Keyboard):
2587 * doc/emacs/macos.texi (Mac / GNUstep Basics):
2588 * doc/emacs/glossary.texi (Glossary):
2589 * doc/emacs/custom.texi (Function Keys, Init Syntax):
2590 * doc/emacs/commands.texi (User Input):
2591 * doc/emacs/basic.texi (Arguments): Fix capitalization of "Meta".
2592 * doc/emacs/msdos.texi (Windows Keyboard):
2593 * doc/emacs/dired.texi (Dired Updating):
2594 * doc/emacs/custom.texi (Init Rebinding): Fix misuses of @key.
2595 Suggested by Richard Stallman <rms@gnu.org>.
2597 2018-03-11 Eli Zaretskii <eliz@gnu.org>
2599 Improve documentation of Xref
2601 * doc/emacs/maintaining.texi (Looking Up Identifiers): Document
2604 2018-03-11 Paul Eggert <eggert@cs.ucla.edu>
2606 Fix create_process bug breaking eudc-expand-inline
2608 Problem reported by Thomas Fitzsimmons (Bug#30762).
2609 * src/process.c (create_process) [HAVE_PTYS]:
2610 Call setsid even if !PTY_FLAG.
2612 2018-03-10 Noam Postavsky <npostavs@gmail.com>
2614 Clarify that nil doesn't match itself as a cl-case clause (Bug#30749)
2616 * lisp/emacs-lisp/cl-macs.el (cl-case): Mention that the ATOM
2617 => (ATOM) short form is only for non-nil ATOMs.
2619 2018-03-10 Charles A. Roelli <charles@aurox.ch>
2621 Improve SVG documentation
2623 * doc/lispref/display.texi (ImageMagick Images): Remove an
2624 outdated comment that references a fixed bug.
2625 (SVG Images): Fix grammar, and call functions functions (there are
2626 no commands in lisp/svg.el).
2628 2018-03-10 Eli Zaretskii <eliz@gnu.org>
2630 Document the "URL" keyword in library headers
2632 * doc/lispref/tips.texi (Library Headers): "URL" is an alias for
2633 "Homepage". Suggested by Peter Oliver <p.d.oliver@mavit.org.uk>.
2636 2018-03-09 Glenn Morris <rgm@gnu.org>
2638 * test/lisp/international/mule-tests.el:
2639 Avoid local variables confusion.
2641 2018-03-09 Bill Wohler <wohler@newt.com>
2643 Add missing findex entries for recently removed kindex entries
2645 * doc/misc/mh-e.texi:
2647 (cherry picked from commit a56a3fc6849b89a71c9a00afcb088021ccbe94e5)
2649 2018-03-09 Glenn Morris <rgm@gnu.org>
2651 Replace the obsolete process-kill-without-query in documentation
2653 * lisp/comint.el (comint-exec-hook):
2654 * lisp/term.el (term-exec-hook):
2655 * lisp/eshell/esh-proc.el (eshell-exec-hook):
2656 Doc fixes re the obsolete process-kill-without-query.
2658 2018-03-08 Michael Albinus <michael.albinus@gmx.de>
2660 Minor change in the manual
2662 * doc/emacs/display.texi (Useless Whitespace):
2663 Don't upcase "TAB" and "SPC" when alluding to characters.
2665 2018-03-08 Eli Zaretskii <eliz@gnu.org>
2667 More minor changes in the manual
2669 * doc/emacs/display.texi (Useless Whitespace): Don't upcase "TAB"
2670 and "SPC" when alluding to characters. Suggested by Richard
2671 Stallman <rms@gnu.org>.
2673 * doc/emacs/buffers.texi (Misc Buffer): Clarify what "read-only"
2675 (Buffers): Define and describe "buffer contents". Suggested by
2676 Richard Stallman <rms@gnu.org>. (Bug#30685)
2678 2018-03-07 Glenn Morris <rgm@gnu.org>
2680 Replace some obsolete aliases in code
2682 * lisp/net/eudc-bob.el (eudc-bob-mail-keymap):
2683 * lisp/textmodes/reftex-toc.el (reftex-make-separate-toc-frame):
2684 Replace obsolete aliases.
2686 2018-03-07 Glenn Morris <rgm@gnu.org>
2688 Replace some obsolete aliases in documentation
2690 * doc/misc/efaq-w32.texi (Incoming mail with Rmail):
2691 * doc/misc/speedbar.texi (Major Display Modes):
2692 * lisp/mh-e/mh-folder.el (mh-restore-desktop-buffer):
2693 Doc fixes re obsolete aliases.
2695 2018-03-07 Eli Zaretskii <eliz@gnu.org>
2697 Minor improvements in manuals
2699 * doc/lispref/variables.texi (Local Variables): Make more clear
2700 that local bindings of 'let' are in effect only within the body.
2701 Suggested by Marcin Borkowski <mbork@mbork.pl>, see
2702 http://lists.gnu.org/archive/html/emacs-devel/2018-03/msg00217.html
2705 * doc/emacs/programs.texi (Matching): Fix a typo. Reported by
2706 Alex Branham <alex.branham@gmail.com> in emacs-manual-bugs@gnu.org.
2709 2018-03-07 Eli Zaretskii <eliz@gnu.org>
2711 Minor copyedits in display.texi
2713 * doc/emacs/display.texi (Highlight Interactively)
2714 (Useless Whitespace, Line Truncation, Visual Line Mode): Minor
2715 changes of wording and typo corrections. Suggested by Michael
2716 Albinus <michael.albinus@gmx.de> in emacs-manual-bugs@gnu.org.
2718 2018-03-07 Glenn Morris <rgm@gnu.org>
2720 Remove some unused spam.el variables
2722 * lisp/gnus/spam.el (spam-ifile-path, spam-ifile-database-path)
2723 (spam-bogofilter-path, spam-bsfilter-path)
2724 (spam-spamassassin-path, spam-sa-learn-path):
2725 Remove variables that are described as obsolete, but are
2726 really completely unused, and have been for years.
2728 2018-03-07 Glenn Morris <rgm@gnu.org>
2730 Replace some obsolete aliases in code
2732 * lisp/emulation/viper.el (viper-set-hooks):
2733 * lisp/epa-hook.el (auto-encryption-mode):
2734 * lisp/term/pc-win.el (set-frame-font): Replace obsolete aliases.
2735 * lisp/net/quickurl.el (quickurl--assoc-function): New.
2736 (quickurl-assoc-function): Use it.
2738 2018-03-07 Glenn Morris <rgm@gnu.org>
2740 Replace some obsolete aliases in documentation
2742 * doc/emacs/text.texi (Nroff Mode):
2743 * doc/misc/efaq.texi (How to add fonts):
2744 * lisp/gnus/nnheader.el (nnheader-insert-file-contents):
2745 * lisp/progmodes/pascal.el (pascal-outline-mode):
2746 Doc fixes re obsolete aliases.
2748 2018-03-06 Glenn Morris <rgm@gnu.org>
2750 Obsolete eshell-cmpl-suffix-list
2752 * lisp/eshell/em-cmpl.el (eshell-cmpl-suffix-list):
2753 Make obsolete, to match pcomplete-suffix-list.
2755 2018-03-06 Eli Zaretskii <eliz@gnu.org>
2757 More minor changes in the Glossary of the Emacs manual
2759 * doc/emacs/glossary.texi (Glossary): Improve cross-references for
2760 modifier keys. Fix typos. Suggested by Gijs Hillenius
2761 <gijs@hillenius.net> in emacs-manual-bugs@gnu.org.
2763 2018-03-06 Michael Heerdegen <michael_heerdegen@web.de>
2767 This reverts commit af4697faa1f5b643f63a9ea61aa205a4c1432e23. It's
2768 too late for this to be in the release.
2770 2018-03-06 Michael Heerdegen <michael_heerdegen@web.de>
2772 Define if-let* and derivatives as aliases for if-let etc
2774 This commit reverts declaring `if-let' and `when-let' obsolete in
2775 favor of the new `if-let*' and `when-let*' versions because of the
2776 compiler warning mess (Bug#30039). Instead we make foo-let* aliases
2777 for foo-let. The old single-tuple variable spec case is still
2778 supported for backward compatibility.
2779 * lisp/emacs-lisp/subr-x.el (if-let, when-let): Don't declare
2780 obsolete. Tweak edebug specs.
2781 (and-let): Renamed from `and-let*' for compatibility with the names
2782 `if-let' and `when-let'.
2783 (if-let*, when-let*, and-let*): Define as aliases for `if-let',
2784 `when-let' and `and-let'.
2785 * test/lisp/emacs-lisp/subr-x-tests.el (if-let-single-tuple-case-test)
2786 (when-let-single-tuple-case-test): New tests for the single-binding
2788 In the whole file, prefer the names without "*".
2790 2018-03-05 Eli Zaretskii <eliz@gnu.org>
2792 Minor fix in Emacs manual's Glossary
2794 * doc/emacs/glossary.texi (Glossary): Fix outdated text about
2795 primary selection. Reported by Gijs Hillenius
2796 <gijs@hillenius.net> in emacs-manual-bugs@gnu.org.
2798 2018-03-03 Juri Linkov <juri@linkov.net>
2800 * lisp/progmodes/grep.el (zrgrep):
2802 Let-bind grep-use-null-filename-separator to nil (bug#30559).
2804 2018-03-03 Eli Zaretskii <eliz@gnu.org>
2806 Minor copyedits in doc/emacs/text.texi
2808 * doc/emacs/text.texi (TeX Mode): Use @code for command markup.
2809 (HTML Mode): Add a note about "C-x C-v" binding in HTML mode.
2811 2018-03-03 Eli Zaretskii <eliz@gnu.org>
2813 Remove outdated comment in syntax.el
2815 * lisp/emacs-lisp/syntax.el (syntax-ppss-toplevel-pos): Remove
2816 outdated comment. (Bug#30617)
2818 2018-03-03 Eli Zaretskii <eliz@gnu.org>
2820 Prevent Flyspell from changing unrelated words
2822 * lisp/textmodes/flyspell.el (flyspell-auto-correct-word): Avoid
2823 using stale cached data from previous invocations of this command.
2826 2018-03-03 Eli Zaretskii <eliz@gnu.org>
2828 Avoid errors in flymake in builds --without-x
2830 * lisp/progmodes/flymake.el: Require 'mwheel'. (Bug#28732)
2832 2018-03-03 Eli Zaretskii <eliz@gnu.org>
2834 More improvements of the Emacs manual
2836 * doc/emacs/rmail.texi (Rmail Reply, Rmail Sorting): Improve
2837 wording. Suggested by Daniel Chakraborty
2838 <danielmchakraborty@gmail.com>.
2840 * doc/emacs/glossary.texi (Glossary): Add cross-references.
2841 Improve and clarify wording. Suggested by Gijs Hillenius
2842 <gijs@hillenius.net> in emacs-manual-bugs@gnu.org.
2844 * doc/emacs/text.texi (Org Authoring): Add more supported formats
2846 (TeX Print): Improve wording. Slightly rearrange stuff.
2847 (TeX Misc): Mention doctex-mode-hook.
2848 (Two-Column): Minor rearrangement of text. Suggested by Michael
2849 Albinus <michael.albinus@gmx.de> in emacs-manual-bugs@gnu.org.
2851 * doc/emacs/misc.texi (Saving Emacs Sessions):
2852 * doc/emacs/programs.texi (Program Modes): Remove redundant text
2855 2018-03-03 Dmitry Gutov <dgutov@yandex.ru>
2857 Backport: xref--next-error-function: Move xref's window point
2859 * lisp/progmodes/xref.el (xref--next-error-function): Move
2860 xref's window point if it's visible. When we don't do that,
2861 navigation can start looping after a while.
2863 (cherry picked from commit 108ce84432d597f92637ea74bd0a094224d157de)
2865 2018-03-02 Glenn Morris <rgm@gnu.org>
2867 mwheel minor consistency fix
2869 * lisp/mwheel.el (mwheel-scroll-left-function)
2870 (mwheel-scroll-right-function):
2871 Change from defcustom to defvar, for consistency with pre-existing.
2873 2018-03-02 Eli Zaretskii <eliz@gnu.org>
2875 * src/window.c (Frecenter): Improve commentary.
2877 2018-03-02 Eli Zaretskii <eliz@gnu.org>
2879 Fix downloading non-text files in EWW
2881 * lisp/net/eww.el (eww-download-callback): Bind
2882 coding-system-for-read to 'no-conversion', to avoid any code- or
2883 EOL-conversions in downloaded files. (Bug#30664)
2885 2018-03-02 Tak Kunihiro <tkk@misasa.okayama-u.ac.jp>
2887 Rename some mwheel options, for consistency
2889 * lisp/mwheel.el (mouse-wheel-tilt-scroll)
2890 (mouse-wheel-flip-direction): Rename from mwheel-tilt-scroll-p,
2891 mwheel-flip-direction.
2892 (mwheel-scroll): Update for option renaming.
2893 * doc/emacs/frames.texi (Mouse Commands):
2894 Update for option renaming.
2896 2018-03-01 Glenn Morris <rgm@gnu.org>
2898 * lisp/vc/add-log.el (add-change-log-entry): Replace obsolete alias.
2900 2018-03-01 Eli Zaretskii <eliz@gnu.org>
2902 Improve the Emacs manual
2904 * doc/emacs/xresources.texi (Table of Resources): Mention that
2905 some resources are ignored by toolkit builds.
2906 * doc/emacs/custom.texi (Key Bindings): Improve indexing.
2909 2018-03-01 Eli Zaretskii <eliz@gnu.org>
2911 * lisp/dired-aux.el (dired-do-create-files): Doc fix. (Bug#30634)
2913 2018-03-01 Michael Albinus <michael.albinus@gmx.de>
2915 Further improvements on manuals
2917 * doc/emacs/xresources.texi:
2918 * doc/lispref/display.texi:
2919 * doc/lispref/keymaps.texi:
2920 * doc/misc/dbus.texi:
2921 * doc/misc/efaq-w32.texi: Use "GTK+" where applicable.
2923 * doc/emacs/xresources.texi (Resources): Mention several use
2925 (Table of Resources) [verticalScrollBars]: Add reference to Scroll Bars.
2927 2018-03-01 Paul Eggert <eggert@cs.ucla.edu>
2929 Require a larger stack size for threads on macOS (bug#30364)
2931 * src/systhread.c (sys_thread_create)
2932 [THREADS_ENABLED && HAVE_PTHREAD && DARWIN_OS]:
2933 Require at least 8MB stack size for x64 and 4MB for x86 on macOS.
2934 Do not merge to master.
2936 2018-02-28 Glenn Morris <rgm@gnu.org>
2938 * doc/lispref/streams.texi (Output Variables): Fix previous.
2940 2018-02-28 Michael Albinus <michael.albinus@gmx.de>
2942 Use "GTK+" where applicable in the manual
2944 * doc/emacs/display.texi (Standard Faces, Standard Faces):
2945 * doc/emacs/emacs.texi (Top):
2946 * doc/emacs/files.texi (Visiting):
2947 * doc/emacs/frames.texi (Scroll Bars):
2948 * doc/emacs/xresources.texi: Use "GTK+" where applicable.
2950 2018-02-28 Paul Eggert <eggert@cs.ucla.edu>
2952 Document print-escape-control-characters
2954 * doc/lispref/streams.texi, etc/NEWS: Add doc.
2956 2018-02-27 Eli Zaretskii <eliz@gnu.org>
2958 * doc/emacs/killing.texi (Rectangles): Don't use @key for characters.
2960 2018-02-27 Glenn Morris <rgm@gnu.org>
2962 * lisp/emulation/viper.el: Unbreak it.
2964 Since 2017-03-19, M-x viper failed with function void cl-member-if.
2965 Perhaps it isn't used much.
2967 2018-02-27 Eli Zaretskii <eliz@gnu.org>
2969 More fixes in the Emacs manual
2971 * doc/emacs/xresources.texi (Table of Resources, Lucid Resources):
2973 (Lucid Resources): Add cross-references.
2974 (GTK Resource Basics): Fix wording.
2975 (GTK styles): Add empty lines in a @table. Suggested by Michael
2976 Albinus <michael.albinus@gmx.de> in emacs-manual-bugs@gnu.org.
2978 2018-02-27 Eli Zaretskii <eliz@gnu.org>
2980 Avoid aborts in 'md5'
2982 * src/fns.c (extract_data_from_object): Don't crash if called with
2983 an invalid object. (Bug#30627)
2985 2018-02-26 Michael Albinus <michael.albinus@gmx.de>
2987 Mark keys consistently in manuals
2989 * doc/emacs/killing.texi:
2990 * doc/lispintro/emacs-lisp-intro.texi:
2991 * doc/misc/calc.texi:
2992 * doc/misc/cc-mode.texi:
2993 * doc/misc/dired-x.texi:
2994 * doc/misc/ede.texi:
2995 * doc/misc/edt.texi:
2996 * doc/misc/efaq.texi:
2997 * doc/misc/erc.texi:
2998 * doc/misc/eshell.texi:
2999 * doc/misc/gnus-faq.texi:
3000 * doc/misc/gnus-news.texi:
3001 * doc/misc/idlwave.texi:
3002 * doc/misc/ido.texi:
3003 * doc/misc/mairix-el.texi:
3004 * doc/misc/message.texi:
3005 * doc/misc/mh-e.texi:
3006 * doc/misc/newsticker.texi:
3007 * doc/misc/org.texi:
3008 * doc/misc/pcl-cvs.texi:
3009 * doc/misc/ses.texi:
3010 * doc/misc/sieve.texi:
3011 * doc/misc/smtpmail.texi:
3012 * doc/misc/speedbar.texi:
3013 * doc/misc/srecode.texi:
3014 * doc/misc/vhdl-mode.texi:
3015 * doc/misc/vip.texi:
3016 * doc/misc/viper.texi: Mark keys consistently.
3018 2018-02-26 Michael Albinus <michael.albinus@gmx.de>
3020 Remove @key{} markups from @kindex entries in manuals
3022 * doc/emacs/basic.texi:
3023 * doc/emacs/buffers.texi:
3024 * doc/emacs/building.texi:
3025 * doc/emacs/calendar.texi:
3026 * doc/emacs/custom.texi:
3027 * doc/emacs/dired.texi:
3028 * doc/emacs/display.texi:
3029 * doc/emacs/files.texi:
3030 * doc/emacs/frames.texi:
3031 * doc/emacs/help.texi:
3032 * doc/emacs/indent.texi:
3033 * doc/emacs/killing.texi:
3034 * doc/emacs/kmacro.texi:
3035 * doc/emacs/mark.texi:
3036 * doc/emacs/mini.texi:
3037 * doc/emacs/misc.texi:
3038 * doc/emacs/modes.texi:
3039 * doc/emacs/msdos-xtra.texi:
3040 * doc/emacs/msdos.texi:
3041 * doc/emacs/mule.texi:
3042 * doc/emacs/picture-xtra.texi:
3043 * doc/emacs/programs.texi:
3044 * doc/emacs/regs.texi:
3045 * doc/emacs/rmail.texi:
3046 * doc/emacs/screen.texi:
3047 * doc/emacs/search.texi:
3048 * doc/emacs/sending.texi:
3049 * doc/emacs/text.texi:
3050 * doc/emacs/trouble.texi:
3051 * doc/misc/calc.texi:
3052 * doc/misc/cc-mode.texi:
3053 * doc/misc/ediff.texi:
3054 * doc/misc/ert.texi:
3055 * doc/misc/eww.texi:
3056 * doc/misc/forms.texi:
3057 * doc/misc/gnus.texi:
3058 * doc/misc/idlwave.texi:
3059 * doc/misc/info.texi:
3060 * doc/misc/message.texi:
3061 * doc/misc/mh-e.texi:
3062 * doc/misc/newsticker.texi:
3063 * doc/misc/org.texi:
3064 * doc/misc/pcl-cvs.texi:
3065 * doc/misc/rcirc.texi:
3066 * doc/misc/reftex.texi:
3068 * doc/misc/sieve.texi:
3069 * doc/misc/vhdl-mode.texi:
3070 * doc/misc/vip.texi:
3071 * doc/misc/viper.texi:
3072 * doc/misc/woman.texi: Remove @key{} markups from @kindex entries.
3074 2018-02-25 Eli Zaretskii <eliz@gnu.org>
3076 * doc/emacs/display.texi (Standard Faces): Fix markup of index entry.
3078 2018-02-25 Michael Albinus <michael.albinus@gmx.de>
3080 Fix @kindex entries in manuals
3082 * doc/emacs/basic.texi:
3083 * doc/emacs/buffers.texi:
3084 * doc/emacs/building.texi:
3085 * doc/emacs/calendar.texi:
3086 * doc/emacs/custom.texi:
3087 * doc/emacs/dired.texi:
3088 * doc/emacs/display.texi:
3089 * doc/emacs/files.texi:
3090 * doc/emacs/frames.texi:
3091 * doc/emacs/help.texi:
3092 * doc/emacs/indent.texi:
3093 * doc/emacs/killing.texi:
3094 * doc/emacs/kmacro.texi:
3095 * doc/emacs/mark.texi:
3096 * doc/emacs/mini.texi:
3097 * doc/emacs/misc.texi:
3098 * doc/emacs/modes.texi:
3099 * doc/emacs/msdos-xtra.texi:
3100 * doc/emacs/msdos.texi:
3101 * doc/emacs/mule.texi:
3102 * doc/emacs/picture-xtra.texi:
3103 * doc/emacs/programs.texi:
3104 * doc/emacs/regs.texi:
3105 * doc/emacs/rmail.texi:
3106 * doc/emacs/screen.texi:
3107 * doc/emacs/search.texi:
3108 * doc/emacs/sending.texi:
3109 * doc/emacs/text.texi:
3110 * doc/emacs/trouble.texi:
3111 * doc/lispref/files.texi:
3112 * doc/misc/calc.texi:
3113 * doc/misc/cc-mode.texi:
3114 * doc/misc/ediff.texi:
3115 * doc/misc/epa.texi:
3116 * doc/misc/ert.texi:
3117 * doc/misc/eww.texi:
3118 * doc/misc/forms.texi:
3119 * doc/misc/gnus.texi:
3120 * doc/misc/info.texi:
3121 * doc/misc/mairix-el.texi:
3122 * doc/misc/message.texi:
3123 * doc/misc/mh-e.texi:
3124 * doc/misc/newsticker.texi:
3125 * doc/misc/org.texi:
3126 * doc/misc/pcl-cvs.texi:
3127 * doc/misc/rcirc.texi:
3129 * doc/misc/sieve.texi:
3130 * doc/misc/vhdl-mode.texi:
3131 * doc/misc/vip.texi:
3132 * doc/misc/viper.texi:
3133 * doc/misc/woman.texi: Fix @kindex entries. Mark keys consistently.
3135 2018-02-24 Michael Albinus <michael.albinus@gmx.de>
3137 Fix @cindex entries in manuals
3139 * doc/emacs/custom.texi:
3140 * doc/emacs/dired.texi:
3141 * doc/emacs/display.texi:
3142 * doc/emacs/files.texi:
3143 * doc/emacs/frames.texi:
3144 * doc/emacs/killing.texi:
3145 * doc/emacs/maintaining.texi:
3146 * doc/emacs/misc.texi:
3147 * doc/emacs/msdos-xtra.texi:
3148 * doc/emacs/msdos.texi:
3149 * doc/emacs/search.texi:
3150 * doc/emacs/text.texi:
3151 * doc/emacs/trouble.texi:
3152 * doc/lispintro/emacs-lisp-intro.texi:
3153 * doc/lispref/strings.texi:
3154 * doc/lispref/text.texi:
3155 * doc/misc/cc-mode.texi:
3156 * doc/misc/efaq.texi:
3157 * doc/misc/eieio.texi:
3158 * doc/misc/emacs-mime.texi:
3159 * doc/misc/gnus.texi:
3160 * doc/misc/htmlfontify.texi:
3161 * doc/misc/idlwave.texi:
3162 * doc/misc/message.texi:
3163 * doc/misc/mh-e.texi:
3164 * doc/misc/sem-user.texi:
3165 * doc/misc/ses.texi:
3166 * doc/misc/tramp.texi:
3167 * doc/misc/vhdl-mode.texi: Fix @cindex entries.
3169 2018-02-24 Michael Albinus <michael.albinus@gmx.de>
3171 Fix @cindex entries in org.texi
3173 * doc/misc/org.texi: Fix @cindex entries. Use consistently
3174 @code{} for keywords.
3176 2018-02-24 Eli Zaretskii <eliz@gnu.org>
3178 Document reserved keys
3180 * doc/emacs/custom.texi (Key Bindings): Mention keys reserved for
3183 2018-02-24 Michael Albinus <michael.albinus@gmx.de>
3185 * doc/misc/ebrowse.texi: Use @key{} for keys.
3187 2018-02-24 Eli Zaretskii <eliz@gnu.org>
3189 * src/keyboard.c (syms_of_keyboard): Doc fix. (Bug#30588)
3191 2018-02-24 Eli Zaretskii <eliz@gnu.org>
3193 Improve documentation of X resources
3195 * doc/emacs/xresources.texi (Table of Resources): Add menu-related
3196 resources. Add cross-references to "GTK Resources".
3198 2018-02-23 Glenn Morris <rgm@gnu.org>
3200 * lisp/international/mule.el (keyboard-coding-system): Doc fix.
3202 Since multi-tty, this is always set.
3204 2018-02-23 Paul Eggert <eggert@cs.ucla.edu>
3206 Minor doc fixes, mostly for timestamp issues
3208 2018-02-23 Eli Zaretskii <eliz@gnu.org>
3210 * doc/emacs/mini.texi (Completion Styles): Improve indexing.
3212 2018-02-23 Michael Albinus <michael.albinus@gmx.de>
3214 Fix @findex and @vindex entries in manuals
3216 * doc/emacs/building.texi:
3217 * doc/emacs/calendar.texi:
3218 * doc/emacs/cmdargs.texi:
3219 * doc/emacs/mini.texi:
3220 * doc/emacs/misc.texi:
3221 * doc/emacs/trouble.texi:
3222 * doc/emacs/windows.texi:
3223 * doc/lispintro/emacs-lisp-intro.texi:
3224 * doc/lispref/edebug.texi:
3225 * doc/lispref/frames.texi:
3226 * doc/lispref/os.texi:
3227 * doc/lispref/windows.texi:
3228 * doc/misc/cc-mode.texi:
3229 * doc/misc/dired-x.texi:
3230 * doc/misc/ediff.texi:
3231 * doc/misc/mh-e.texi:
3232 * doc/misc/pcl-cvs.texi:
3233 * doc/misc/reftex.texi:
3235 * doc/misc/vhdl-mode.texi:
3236 * doc/misc/viper.texi: Fix @findex and @vindex entries.
3238 2018-02-22 Alan Mackenzie <acm@muc.de>
3240 Document, in the Elisp manual, how to get a character's raw syntax descriptor
3242 * doc/lispref/syntax.texi (Syntax Table internals): mention the use of `aref'
3243 to get a character's raw syntax descriptor.
3245 2018-02-22 Eli Zaretskii <eliz@gnu.org>
3247 Improvements in the Emacs manual
3249 * doc/emacs/custom.texi (Customization Groups)
3250 (Changing a Variable, Browsing Custom, Customizing Faces): Fix
3252 (Changing a Variable, Saving Customizations): Update the
3253 description of buttons in the Custom buffer.
3254 (Face Customization): More accurate description.
3255 (Specific Customization, Examining, Locals): Add blank lines in
3256 the @table. Reported by Michael Albinus <michael.albinus@gmx.de>
3257 in emacs-manual-bugs@gnu.org.
3259 2018-02-22 Glenn Morris <rgm@gnu.org>
3261 Tiny doc/misc markup fixes
3263 * doc/misc/ediff.texi (Patch and Diff Programs):
3264 * doc/misc/viper.texi (File and Buffer Handling): Fix markup typos.
3266 2018-02-22 Martin Rudalics <rudalics@gmx.at>
3268 Skip mouse-face overlap check when mouse-face is hidden (Bug#30519)
3270 * src/xdisp.c (note_mouse_highlight): Skip check whether
3271 mouse-face highlighting overlay overlaps other mouse-face
3272 overlays when mouse-face highlighting is hidden (Bug#30519).
3274 2018-02-22 Eli Zaretskii <eliz@gnu.org>
3276 Fix capitalization of "Mail-Followup-To"
3278 * doc/emacs/sending.texi (Header Editing, Mail Headers):
3279 Standardize on "Mail-Followup-To" as the capitalization.
3281 2018-02-21 Juri Linkov <juri@linkov.net>
3283 * lisp/progmodes/grep.el (grep-compute-defaults):
3285 Add grep-use-null-filename-separator to grep-host-defaults-alist.
3288 2018-02-21 Charles A. Roelli <charles@aurox.ch>
3290 Semantic manual fixes
3292 * doc/misc/semantic.texi (Tools): Fix wording and grammar, and
3293 remove a reference to "document-vars.el" which, in the Emacs
3294 repository, is part of lisp/cedet/srecode/document.el.
3296 2018-02-21 Eli Zaretskii <eliz@gnu.org>
3298 More improvements in the Emacs manual
3300 * doc/emacs/help.texi (Misc Help):
3301 * doc/emacs/m-x.texi (M-x):
3302 * doc/emacs/mini.texi (Minibuffer File, Repetition): Prevent
3303 breaking of command sequences between lines. Reported by Wojciech
3304 Politarczyk <w.politarczyk@gmail.com> in emacs-manual-bugs@gnu.org.
3306 * doc/emacs/sending.texi (Header Editing): Fix capitalization.
3308 2018-02-21 tino calancha <tino.calancha@gmail.com>
3310 * doc/misc/viper.texi (File and Buffer Handling): Add missing '@'
3312 2018-02-21 Eli Zaretskii <eliz@gnu.org>
3314 Fix documentation of 'x-underline-at-descent-line'
3316 * doc/emacs/display.texi (Display Custom):
3317 * src/nsterm.m (syms_of_nsterm):
3318 * src/xterm.c (syms_of_xterm):
3319 * src/w32term.c (syms_of_w32term): Mention the effect of
3320 'line-spacing' on the underline position. (Bug#30553)
3322 2018-02-21 Glenn Morris <rgm@gnu.org>
3324 * lisp/textmodes/flyspell.el (flyspell-get-word): Doc fix.
3326 2018-02-20 Robert Pluim <rpluim@gmail.com>
3328 Correct variable markup in manuals
3330 * doc/lispref/minibuf.texi (Completion in Buffers): Fix markup.
3331 * doc/lispref/text.texi (Filling): Likewise.
3332 * doc/misc/dired-x.texi (Advanced Mark Commands): Likewise.
3333 * doc/misc/epa.texi (Encrypting/decrypting gpg files): Likewise.
3334 (Encrypting/decrypting gpg files): Likewise.
3335 * doc/misc/tramp.texi (External methods): Likewise.
3336 (Default Method): Likewise.
3337 * doc/misc/viper.texi (Editing in Insert State): Likewise.
3338 (File and Buffer Handling): Likewise.
3339 * doc/misc/gnus.texi (Mail Source Customization): Likewise.
3340 * doc/misc/url.texi (Customization): Likewise. Note obsolete
3341 status of url-temporary-directory.
3343 2018-02-20 Eli Zaretskii <eliz@gnu.org>
3345 Improve the "Sending Mail" chapter of Emacs manual
3347 * doc/emacs/sending.texi (Mail Format, Header Editing)
3348 (Mail Aliases): Fix capitalization of mail headers.
3349 (Mail Aliases): Use ~/.mailrc consistently.
3350 (Mail Misc): More accurate description of disposition. Suggested
3351 by Michael Albinus <michael.albinus@gmx.de> in
3352 emacs-manual-bugs@gnu.org.
3354 2018-02-20 Eli Zaretskii <eliz@gnu.org>
3356 Fix documentation of 'flyspell-auto-correct-word'
3358 * lisp/textmodes/flyspell.el (flyspell-get-word): Elaborate in the
3359 doc string on how the function looks for the word to spell-check.
3360 (flyspell-word, flyspell-auto-correct-word): Refer to
3361 'flyspell-get-word' for details about finding the word.
3364 2018-02-19 Robert Pluim <rpluim@gmail.com>
3366 * doc/emacs/misc.texi (Saving Emacs Sessions): Fix markup.
3368 2018-02-19 Eli Zaretskii <eliz@gnu.org>
3370 More changes in the Emacs manuals
3372 * doc/emacs/custom.texi (Customization Groups, Browsing Custom)
3373 (Custom Themes, Keymaps, Prefix Keymaps, Modifier Keys)
3374 (Function Keys, Named ASCII Chars, Mouse Buttons, Init Examples):
3375 Fix punctuation. Suggested by Stefan Kamphausen
3376 <stefan.kamphausen@acrolinx.com> in emacs-manual-bugs@gnu.org.
3378 * doc/emacs/basic.texi (Arguments, Repeating): Avoid breaking
3379 commands between lines. Reported by Wojciech Politarczyk
3380 <w.politarczyk@gmail.com> in emacs-manual-bugs@gnu.org.
3382 * doc/emacs/custom.texi (Init Rebinding): Move index entries about
3383 rebinding keys from "Init File". (Bug#30528)
3385 2018-02-18 Eli Zaretskii <eliz@gnu.org>
3387 More fixes in the Emacs manual
3389 * doc/emacs/abbrevs.texi (Defining Abbrevs, Expanding Abbrevs)
3390 (Editing Abbrevs, Saving Abbrevs): Insert blank lines between
3392 (Expanding Abbrevs): Add 'unexpand-abbrev' to the list of
3393 commands. Suggested by Michael Albinus <michael.albinus@gmx.de>
3394 in emacs-manual-bugs@gnu.org.
3396 2018-02-18 Eli Zaretskii <eliz@gnu.org>
3398 * src/data.c (Faref): Fix a typo in the doc string. (Bug#30510)
3400 2018-02-18 Michael Albinus <michael.albinus@gmx.de>
3402 Minor edit in tramp.texi
3404 * doc/misc/tramp.texi (Remote shell setup, Windows setup hints):
3405 Improve @cindex entries.
3407 2018-02-17 Eli Zaretskii <eliz@gnu.org>
3409 More improvements in the Emacs manual
3411 * doc/emacs/maintaining.texi (Xref Commands, Identifier Search)
3412 (List Identifiers): Insert blank lines between @item's in a
3414 (Etags Regexps): More accurate description of escape sequences.
3415 (Select Tags Table): Prefer "~/emacs.d/init.el" to "~/.emacs".
3416 Suggested by Michael Albinus <michael.albinus@gmx.de> in
3417 emacs-manual-bugs@gnu.org.
3419 2018-02-17 Eli Zaretskii <eliz@gnu.org>
3421 Improve documentation of 'electric-pair-mode'
3423 * lisp/elec-pair.el (electric-pair-mode):
3424 * doc/emacs/programs.texi (Matching): Document the operation of
3425 electric-pair-mode when there's an active region. (Bug#30502)
3427 2018-02-17 Charles A. Roelli <charles@aurox.ch>
3429 lisp/vc/: documentation fixes
3431 * lisp/vc/vc.el (vc-region-history): Clarify documentation.
3432 * lisp/vc/add-log.el (change-log-get-method-definition):
3433 Indent documentation.
3435 2018-02-17 Robert Pluim <rpluim@gmail.com>
3437 Document 'desktop-files-not-to-save'
3439 * doc/emacs/misc.texi (Saving Emacs Sessions): Add description
3440 of 'desktop-files-not-to-save'.
3442 * lisp/desktop.el (desktop-files-not-to-save): Explain that
3443 the default value excludes buffers visiting remote files.
3445 2018-02-17 Eli Zaretskii <eliz@gnu.org>
3447 Improve documentation of Profiling features
3449 * doc/lispref/debugging.texi (Profiling): Improve the description
3450 of elp.el. Improve wording of the rest of the section. (Bug#30491)
3452 * lisp/emacs-lisp/elp.el (elp-instrument-list): Make the
3453 interactive invocation work. Doc fix.
3455 2018-02-17 Eli Zaretskii <eliz@gnu.org>
3457 Improve indexing of "performance" in ELisp manual
3459 * doc/lispref/debugging.texi (Profiling):
3460 * doc/lispref/edebug.texi (Coverage Testing): Improve indexing of
3461 features useful for performance analysis. (Bug#30490)
3463 2018-02-17 Eli Zaretskii <eliz@gnu.org>
3465 Minor change in Emacs manual's VC chapter
3467 * doc/emacs/maintaining.texi (Log Buffer): Mention the "Summary"
3468 header. Suggested by Michael Albinus <michael.albinus@gmx.de> in
3469 emacs-manual-bugs@gnu.org.
3471 2018-02-17 Noam Postavsky <npostavs@gmail.com>
3473 Avoid memory corruption with specpdl overflow + edebug (Bug#30481)
3475 If grow_specpdl fails due to outgrowing max_specpdl_size, it will
3476 signal an error *before* growing the specpdl array. Therefore, when
3477 handling the signal, specpdl_ptr points past the end of the specpdl
3478 array and any further use of of specpdl before unwinding (e.g., if
3479 edebug binds signal-hook-function) will cause memory corruption.
3480 * src/eval.c (signal_or_quit): Don't call `signal-hook-function' if
3481 the specpdl_ptr is already past the end of the specpdl array.
3482 * test/src/eval-tests.el (eval-tests--exceed-specbind-limit)
3483 (eval-exceed-specbind-with-signal-hook): New test & helper function.
3485 2018-02-17 Noam Postavsky <npostavs@gmail.com>
3487 Document comment-fill-column in the manual (Bug#11636)
3489 * doc/emacs/programs.texi (Comment Commands)
3490 (Options for Comments): Mention comment-fill-column.
3492 2018-02-17 Glenn Morris <rgm@gnu.org>
3494 * doc/emacs/dired.texi (Marks vs Flags): Copyedits.
3496 2018-02-16 Eli Zaretskii <eliz@gnu.org>
3498 More fixes for the Emacs manual
3500 * doc/emacs/vc1-xtra.texi (Customizing VC): Update the list of
3502 * doc/emacs/maintaining.texi (Version Control): Add SRC to the
3503 list of VCS. Remove the description of vc-state-refresh.
3504 (Version Control Systems): Update the description of CVS.
3505 (VC Change Log): Amend the list of VCS that don't support
3507 (VCS Changesets, VCS Repositories, Advanced C-x v v)
3508 (VC Change Log): Mention SRC with RCS where appropriate.
3509 (VC Directory Commands): More accurate description of
3510 vc-dir-hide-up-to-date. Suggested by Michael Albinus
3511 <michael.albinus@gmx.de> in emacs-manual-bugs@gnu.org.
3513 2018-02-16 Robert Cochran <robert@cochranmail.com>
3515 Make 'byte-compile-error-on-warn' a safe file variable
3517 * lisp/emacs-lisp/bytecomp.el (byte-compile-error-on-warn): Mark
3518 as a safe local variable for boolean values.
3520 2018-02-16 Eli Zaretskii <eliz@gnu.org>
3522 Fix the doc string of flyspell-auto-correct-word
3524 * lisp/textmodes/flyspell.el (flyspell-auto-correct-word): Doc
3527 2018-02-16 Eli Zaretskii <eliz@gnu.org>
3529 Improve the MS-Windows appendix of the Emacs manual
3531 * doc/emacs/msdos.texi (Windows Startup): Describe the pinned
3532 shortcuts for starting Emacs.
3533 (Text and Binary): Minor wording changes.
3534 (Windows Files): Mention 'read-file-name-completion-ignore-case'.
3535 (ls in Lisp): Update the list of supported 'ls' switches.
3536 Document 'ls-lisp-use-string-collate' and
3537 'ls-lisp-UCA-like-collation'.
3538 (Windows HOME): Mention warnings displayed at startup when
3539 deprecated locations of HOME and/or deprecated names for init
3541 (Windows Keyboard): Mention delete-selection-mode.
3543 2018-02-16 Eli Zaretskii <eliz@gnu.org>
3545 Fix 'vc-git--program-version'
3547 * lisp/vc/vc-git.el (vc-git--program-version): Fix the function to
3548 work with Git for Windows.
3550 2018-02-16 Eli Zaretskii <eliz@gnu.org>
3552 Fix typos and wording in the Emacs manual
3554 * doc/emacs/dired.texi (Marks vs Flags, Hiding Subdirectories):
3555 * doc/emacs/maintaining.texi (Tag Syntax):
3556 * doc/emacs/building.texi (Commands of GUD, Threads Buffer)
3558 * doc/emacs/windows.texi (Temporary Displays): Fix typos.
3559 * doc/emacs/files.texi (Backup Copying): Fix wording. Reported by
3560 Stefan Kamphausen <stefan.kamphausen@acrolinx.com> in
3561 emacs-manual-bugs@gnu.org.
3563 2018-02-16 Michael Albinus <michael.albinus@gmx.de>
3565 * doc/emacs/programs.texi (Semantic): Order programming languages.
3567 2018-02-15 Eli Zaretskii <eliz@gnu.org>
3569 More improvements for the Emacs manual
3571 * doc/emacs/programs.texi (Basic Indent, Comment Commands): Fix
3573 * doc/emacs/text.texi (TeX Print, HTML Mode, Enriched Faces): Fix
3575 * doc/emacs/help.texi (Help Files): Improve @uref usage. Reported
3576 by Stefan Kamphausen <stefan.kamphausen@acrolinx.com> in
3577 emacs-manual-bugs@gnu.org.
3579 * doc/emacs/fortran-xtra.texi (ForIndent Commands): Fix a typo.
3580 (ForIndent Commands, Fortran Columns): Add empty lines between
3582 (ForIndent Cont, ForIndent Num, Fortran Columns): Mention
3583 'column-number-indicator-zero-based'.
3584 (ForIndent Vars): Fix a typo.
3585 (Fortran Comments): Fix punctuation.
3586 (ForIndent Cont, Fortran Autofill): Fix markup of keyboard input.
3587 * doc/emacs/programs.texi (Comments): Fix a typo.
3588 (Comment Commands): More accurate description of the commands.
3589 (Options for Comments): Don't mention "hook".
3590 (Man Page): Prefer "M-x man" if available.
3591 (Hideshow): Fix the command key sequence.
3592 (Semantic): Update supported languages.
3593 (Semantic, Hungry Delete, Other C Commands): Fix markup of
3595 (Misc for Programs): Fix a typo.
3596 (Electric C, Hungry Delete): More accurate description of
3597 mode-line lighters of CC submodes.
3598 (Asm Mode): Add empty lines between @items in a @table.
3599 * doc/emacs/programs.texi (Program Modes): Add a few more modes.
3600 Reported by Michael Albinus <michael.albinus@gmx.de> in
3601 emacs-manual-bugs@gnu.org.
3603 * doc/emacs/msdos.texi (Windows Misc): A minor rewording.
3604 Suggested by Isaac Carter <icarter1391@gmail.com> in
3605 emacs-manual-bugs@gnu.org.
3607 2018-02-14 Eli Zaretskii <eliz@gnu.org>
3609 Minor wording change in Emacs manual
3611 * doc/emacs/killing.texi (Accumulating Text): Fix spelling.
3612 Reported by lyr3 <lyr3@protonmail.com> in
3613 emacs-manual-bugs@gnu.org.
3615 2018-02-14 Eli Zaretskii <eliz@gnu.org>
3617 Another set of changes for the manual
3619 * doc/emacs/programs.texi (Program Indent): Add a cross-reference
3620 to elisp's description of 'pp'.
3621 (Program Modes): Add a few more programming modes. Add index
3623 (Basic Indent, Multi-line Indent, C Indent, Comment Commands)
3624 (Manipulating Comments): Fix markup of keyboard commands.
3625 * doc/emacs/search.texi (Regexps): Add an example with non-ASCII
3626 characters. Suggested by Michael Albinus <michael.albinus@gmx.de>
3627 in emacs-manual-bugs@gnu.org.
3629 * doc/lispref/display.texi (Display Tables): Fix the description
3630 of the 5th extra slot of the display table. (Bug#13473)
3632 * doc/emacs/regs.texi (Registers): Simplify wording.
3634 * doc/emacs/custom.texi (Init Non-ASCII): Remove outdated text
3635 about perils of encoded keyboard input.
3637 2018-02-14 Michael Albinus <michael.albinus@gmx.de>
3639 Improvements on tramp.texi
3641 * doc/misc/tramp.texi: Use Tramp version in title. Further
3642 improvements on user option indexing. Finish command examples
3643 with @key{RET} where appropriate.
3644 (Remote processes): Use 'M-&' for invocation of async shell.
3645 (Frequently Asked Questions): Add example with simplified syntax.
3647 2018-02-13 Paul Eggert <eggert@cs.ucla.edu>
3649 Tramp minor doc fixes
3651 * doc/misc/tramp.texi (Remote processes): Spelling fix and minor
3652 wording improvement.
3654 2018-02-13 Eli Zaretskii <eliz@gnu.org>
3656 More changes in the Emacs manual
3658 * doc/emacs/search.texi (Regexp Backslash): Say that
3659 symbol-constituent characters are determined by the syntax table.
3660 (Lax Search): Fix example of case-insensitive search. Fix a
3662 (Unconditional Replace): Improve wording.
3663 (Regexp Replace): More consistent wording. Reported by Michael
3664 Albinus <michael.albinus@gmx.de> in emacs-manual-bugs@gnu.org.
3666 * doc/emacs/msdos.texi (Windows HOME): Avoid enumerating all the
3667 Windows versions. Reported by Isaac Carter
3668 <icarter1391@gmail.com> in emacs-manual-bugs@gnu.org.
3670 2018-02-13 Andreas Schwab <schwab@suse.de>
3672 * lisp/vc/vc.el (vc-deduce-backend): Use ignore-errors.
3674 2018-02-13 Andreas Schwab <schwab@suse.de>
3676 Don't signal error in vc-deduce-backend
3678 * lisp/vc/vc.el (vc-deduce-backend): Return nil if
3679 vc-responsible-backend signals an error.
3681 2018-02-13 Michael Albinus <michael.albinus@gmx.de>
3683 * doc/misc/tramp.texi: Index more user options.
3685 2018-02-13 Eli Zaretskii <eliz@gnu.org>
3687 Minor change in the Emacs manual
3689 * doc/emacs/building.texi (Lisp Libraries): Explain why nil in
3690 load-path is not a good idea. Suggested by James Yoo
3691 <james.yoo@gmail.com> in emacs-manual-bugs@gnu.org.
3693 2018-02-13 Eli Zaretskii <eliz@gnu.org>
3695 NEWS update about 'string-trim'
3697 * etc/NEWS: Mention changes in string-trim family of functions.
3700 2018-02-13 Noam Postavsky <npostavs@gmail.com>
3702 Clarify TRAMP process-environment interaction (Bug#30419)
3704 * doc/misc/tramp.texi (Remote processes): Index the
3705 tramp-remote-process-environment description. Clarify the effects of
3706 let-binding process-environment and the motivation for that behavior.
3708 2018-02-12 Juri Linkov <juri@linkov.net>
3710 * lisp/progmodes/grep.el (grep-num-matches-found): New variable.
3712 (grep-mode-line-matches): New defconst.
3713 (grep-mode-font-lock-keywords): Update the regexp for “Grep finished”
3714 to include the number of matches found.
3715 (grep-process-setup): Set grep-num-matches-found to 0.
3716 (grep-exit-message): New function with body moved from lambda
3717 in grep-process-setup. Use grep-num-matches-found to return
3718 the number of matches found.
3719 (grep-filter): Increment grep-num-matches-found.
3720 (grep-mode): Set compilation-mode-line-errors to grep-mode-line-matches.
3721 (Bug#30397, bug#14017)
3723 2018-02-12 Eli Zaretskii <eliz@gnu.org>
3725 Avoid aborts in cm.c due to too small TTY frame
3727 * src/frame.c (frame_windows_min_size): Limit TTY frames to a
3728 minimum height large enough to allow for a menu bar, the mode
3729 line, one text line and one echo-area line. This avoids aborts in
3730 cm.c:cmcheckmagic. (Bug#30320)
3732 2018-02-12 Eli Zaretskii <eliz@gnu.org>
3734 Another set of improvements in the Emacs manual
3736 * doc/emacs/msdos-xtra.texi (MS-DOS Keyboard):
3737 * doc/emacs/msdos.texi (Windows Keyboard):
3738 * doc/emacs/mark.texi (Using Region):
3739 * doc/emacs/frames.texi (Menu Mouse Clicks):
3740 * doc/emacs/macos.texi (Mac / GNUstep Basics): Fix spelling of
3741 keys. Reported by Michael Albinus <michael.albinus@gmx.de> in
3742 emacs-manual-bugs@gnu.org.
3744 * doc/emacs/glossary.texi (Glossary): Document that "c.f." is a
3745 misspelling. Reported by Robert Pluim <rpluim@gmail.com>.
3746 Various minor wording improvements. Suggested by Toon Claes
3747 <toon@iotcl.com> in emacs-manual-bugs@gnu.org.
3748 More minor changes. Suggested by Michael Albinus
3749 <michael.albinus@gmx.de> in emacs-manual-bugs@gnu.org.
3751 * doc/emacs/cmdargs.texi (Title X): Improve wording.
3753 * doc/emacs/building.texi (Grep Searching, Compilation): Avoid
3756 * doc/emacs/basic.texi (Moving Point): Move the description of the
3757 bidi-related effects of the arrow keys from here ...
3758 * doc/emacs/mule.texi (Bidirectional Editing): ... to here.
3759 Explain the behavior of arrow keys between paragraphs.
3761 2018-02-12 Michael Albinus <michael.albinus@gmx.de>
3763 Fix help in mode-line-mode-menu
3765 * lisp/bindings.el (mode-line-mode-menu) [auto-revert-tail-mode]:
3768 2018-02-11 Eli Zaretskii <eliz@gnu.org>
3770 Improve documentation of desktop restoring
3772 * doc/emacs/misc.texi (Saving Emacs Sessions): Document
3773 'desktop-auto-save-timeout', 'desktop-load-locked-desktop', and
3774 how to restore desktop in daemon mode. (Bug#30421)
3776 2018-02-11 Eli Zaretskii <eliz@gnu.org>
3778 Improve the Emacs manual's chapter "Frames"
3780 * doc/emacs/frames.texi (Creating Frames): Add a cross-reference
3781 to where frame visibility is described.
3782 (Word and Line Mouse): Clarify wording.
3783 (Scroll Bars): Qualify scroll-bar behavior. Reported by Dmitry
3784 Gutov <dgutov@yandex.ru> in emacs-manual-bugs@gnu.org.
3786 2018-02-10 Andreas Schwab <schwab@linux-m68k.org>
3788 Fix unbound mm-uu-entry in mm-uu
3790 * lisp/gnus/mm-uu.el (mm-uu-dissect): Rename entry to mm-uu-entry.
3792 2018-02-10 Eli Zaretskii <eliz@gnu.org>
3794 Improve Emacs user manual in fixit.texi
3796 * doc/emacs/fixit.texi (Undo): Clarify inaccurate description of
3798 (Transpose): Describe explicitly what happens at EOL.
3799 (Spelling): Use "spell-checking" consistently. Clarify wording.
3800 Suggested by Toon Claes <toon@iotcl.com> in
3801 emacs-manual-bugs@gnu.org.
3803 2018-02-10 Eli Zaretskii <eliz@gnu.org>
3805 Another minor change in the manual
3807 * doc/emacs/glossary.texi (Glossary): Add popular Latin
3808 abbreviations, such as "e.g.".
3810 2018-02-10 Eli Zaretskii <eliz@gnu.org>
3812 More minor changes in the Emacs manual
3814 * doc/emacs/xresources.texi (GTK resources):
3815 * doc/emacs/trouble.texi (Contributing):
3816 * doc/emacs/frames.texi (Fonts): Use HTTPS URLs instead of HTTP.
3818 * doc/emacs/docstyle.texi: Add a few @hyphenation directives,
3819 based on reports in emacs-manual-bugs@gnu.org about incorrect
3822 2018-02-10 Eli Zaretskii <eliz@gnu.org>
3824 Avoid printing garbled error message from image.el
3826 * lisp/image.el (image--get-imagemagick-and-warn): Don't use
3827 apostrophe in the error message, as that message is shown from a
3828 unibyte buffer, and will run afoul of the default style of showing
3829 quote characters. (Bug#30405)
3831 2018-02-09 Eli Zaretskii <eliz@gnu.org>
3833 Doc string fix in latin-alt.el
3835 * lisp/leim/quail/latin-alt.el ("dutch"): Doc fix. Reported by
3836 Robert Pluim <rpluim@gmail.com>.
3838 2018-02-09 Eli Zaretskii <eliz@gnu.org>
3840 Minor improvements in package.texi
3842 * doc/emacs/package.texi (Package Menu): Minor wording change.
3843 (Package Installation): Use HTTPS. A better @xref to GnuPG
3844 manual. Suggested by Michael Albinus <michael.albinus@gmx.de> in
3845 emacs-manual-bugs@gnu.org.
3847 2018-02-09 Eli Zaretskii <eliz@gnu.org>
3849 Minor improvement in Emacs user manual
3851 * doc/emacs/files.texi (Directories): Document that
3852 'directory-free-space-program' and 'directory-free-space-args' are
3853 only for local filesystems. Suggested by Michael Albinus
3854 <michael.albinus@gmx.de> in emacs-manual-bugs@gnu.org.
3856 2018-02-09 Michael Albinus <michael.albinus@gmx.de>
3858 * doc/lispref/anti.texi (Antinews): Replace 25.2 with 25.3.
3860 2018-02-09 Eli Zaretskii <eliz@gnu.org>
3862 Improve documentation of mini-window resizing
3864 * doc/lispref/minibuf.texi (Minibuffer Windows): Mention
3865 'message-truncate-lines' for preventing resizing of minibuffer
3866 windows. (Bug#19045)
3867 (Minibuffer Misc): Remove redundant description of
3868 'max-mini-window-height'.
3869 * doc/lispref/display.texi (Echo Area Customization): Adjust
3872 2018-02-09 Eli Zaretskii <eliz@gnu.org>
3874 More changes in the Emacs manual
3876 * doc/emacs/fixit.texi (Undo): Mention 'revert-buffer'.
3877 (Fixing Case): Fix punctuation.
3878 (Spelling): Fix a typo. Suggested by Toon Claes <toon@iotcl.com>
3879 in emacs-manual-bugs@gnu.org.
3881 * doc/emacs/modes.texi (Major Modes): Break a long sentence into
3882 2. Reported by Stefan Kamphausen <stefan.kamphausen@acrolinx.com>
3883 in emacs-manual-bugs@gnu.org.
3885 * doc/emacs/indent.texi (Just Spaces): Yet another minor
3888 * doc/emacs/building.texi (Watch Expressions): Improve wording.
3889 (Multithreaded Debugging): Spell "tool bar" as 2 words. Reported
3890 by Alberto Sartori <alberto.sartori@sissa.it> in
3891 emacs-manual-bugs@gnu.org.
3892 (Grep Searching): Mention the effect of
3893 'compilation-mode-line-errors'. (Bug#30397)
3895 * doc/emacs/basic.texi (Moving Point): Minor reformatting and
3896 rewording of what <LEFT> and <RIGHT> do.
3898 2018-02-09 Noam Postavsky <npostavs@gmail.com>
3900 Clarify that text-quoting-style doesn't affect *Info* (Bug#24519)
3902 * src/doc.c (syms_of_doc) <text-quoting-style>: Clarify that info
3903 manual display is unaffected.
3905 2018-02-09 Noam Postavsky <npostavs@gmail.com>
3907 Mention that shell quoting of % on w32 may fail (Bug#19350)
3909 * doc/lispref/os.texi (Security Considerations): Mention that quoting
3910 of '%' assumes no '^' in variable names.
3911 * test/lisp/subr-tests.el (shell-quote-argument-%-on-w32): New test,
3912 demonstrating what doesn't work.
3914 2018-02-09 Noam Postavsky <npostavs@gmail.com>
3916 Fix --no-build-details for w32 and macOS
3918 * src/w32term.c (w32_initialize_display_info): Handle nil system-name.
3919 * lisp/term/ns-win.el (window-system-initialization): Don't pass nil
3920 to `x-open-connection'.
3922 2018-02-09 Paul Eggert <eggert@cs.ucla.edu>
3924 * doc/lispref/anti.texi (Antinews): Add some more antinews.
3926 2018-02-08 Paul Eggert <eggert@cs.ucla.edu>
3928 Fix crashes when run with --no-build-details
3930 * src/xrdb.c (get_environ_db):
3931 * src/xterm.c (same_x_server, x_term_init):
3932 Don’t assume Fsystem_name returns a string.
3934 2018-02-08 Eli Zaretskii <eliz@gnu.org>
3936 More changes for the manual
3938 * doc/emacs/anti.texi (Antinews): Replace 25.2 with 25.3.
3939 Reported by Michael Albinus <michael.albinus@gmx.de> in
3940 emacs-manual-bugs@gnu.org.
3942 * doc/emacs/custom.texi (Function Keys): Improve wording.
3943 Suggested by clemens.radermacher@posteo.de in
3944 emacs-manual-bugs@gnu.org.
3946 * doc/emacs/misc.texi (History References): Improve punctuation.
3947 (Terminal emulator): Fix a typo.
3948 (Term Mode): Remove redundant repeated text.
3949 (Invoking emacsclient): Improve wording. Suggested by Alberto
3950 Sartori <alberto.sartori@sissa.it> in emacs-manual-bugs@gnu.org.
3952 * doc/emacs/files.texi (Visiting): Fix last change.
3954 2018-02-08 Noam Postavsky <npostavs@gmail.com>
3956 Doc fixes for process functions (Bug#30349)
3958 * doc/lispref/processes.texi (Asynchronous Processes): Explain what
3959 the 'stopped' state means for a pipe process.
3960 * src/process.c (Fmake_process, Fmake_pipe_process)
3961 (Fmake_serial_process, Fmake_network_process):
3962 * lisp/subr.el (start-process):
3963 * lisp/net/tls.el (open-tls-stream):
3964 * lisp/net/starttls.el (starttls-open-stream):
3965 * lisp/net/gnutls.el (open-gnutls-stream): Remove meaningless phrase
3966 "specify an output stream" phrase from docstring.
3968 2018-02-07 Basil L. Contovounesios <contovob@tcd.ie>
3970 Fix shr and CSS 4 color maps
3972 * lisp/net/shr-color.el (shr-color-html-colors-alist): Fix typos.
3974 * lisp/textmodes/css-mode.el (css--color-map): Add fuchsia-magenta
3975 and aqua-cyan aliases.
3976 * test/lisp/textmodes/css-mode-tests.el (css-test-property-values):
3979 2018-02-07 Eli Zaretskii <eliz@gnu.org>
3981 Yet another round of improvements in the manual
3983 * doc/emacs/misc.texi (Document View): Improve wording. Reported
3984 by lyr3 <lyr3@protonmail.com> in emacs-manual-bugs@gnu.org.
3986 * doc/emacs/files.texi (Recover): Fix a typo. Reported by Jorge
3987 <jorge+list@disroot.org> in emacs-manual-bugs@gnu.org.
3989 * doc/emacs/anti.texi (Antinews): Fix typos. Reported by Justin
3990 Heyes-Jones <justinhj@gmail.com> in emacs-manual-bugs@gnu.org.
3992 * doc/emacs/mini.texi (Basic Minibuffer): Clarify wording.
3993 Reported by Vivishek Sudhir <vivishek.sudhir@gmail.com> in
3994 emacs-manual-bugs@gnu.org.
3996 * doc/emacs/cmdargs.texi (MS-Windows Registry): Improve wording
3997 regarding registry keys.
3999 * doc/emacs/macos.texi (Mac OS / GNUstep): Sayu "NeXT Inc."
4000 Reported by Cena Mayo <cenazoic@gmail.com> in
4001 emacs-manual-bugs@gnu.org.
4003 * doc/emacs/screen.texi (Screen): More accurate wording.
4004 Suggested by Miloš Polakovič <milos@alphamail.org> in
4005 emacs-manual-bugs@gnu.org.
4007 * doc/emacs/indent.texi (Just Spaces): Minor wording change.
4008 Suggested by David Bonnafous <dbonnafo@gmail.com> in
4009 emacs-manual-bugs@gnu.org.
4011 * doc/emacs/text.texi (TeX Mode, TeX Editing): Improve and
4012 simplify wording. Suggested by root@vxid.pw <root@vxid.pw> in
4013 emacs-manual-bugs@gnu.org.
4015 * doc/emacs/cmdargs.texi (Window Size X): Minor wording change.
4017 * doc/emacs/display.texi (Highlight Interactively): Fill text.
4018 (Optional Mode Line): Fix typos. Suggested by Alberto Sartori
4019 <alberto.sartori@sissa.it> in emacs-manual-bugs@gnu.org.
4021 * doc/emacs/building.texi (Debugger Operation): Clarify wording.
4023 * doc/emacs/files.texi (Directories, Comparing Files, Diff Mode)
4024 (Remote Files, File Names, Visiting, Backup Deletion)
4025 (Customize Save, Interlocking): Improve wording and accuracy of
4027 * doc/emacs/maintaining.texi (VC With A Merging VCS): Don't say
4029 * doc/emacs/arevert-xtra.texi (Auto Reverting Dired): Minor
4031 (Supporting additional buffers): Moved to ...
4032 * doc/lispref/backups.texi (Reverting): ... here.
4033 * doc/emacs/emacs.texi (Top): Remove "Supporting additional
4034 buffers" from master menu.
4035 * doc/emacs/files.texi (Reverting): Mention use of file
4036 notifications. Suggested by Michael Albinus
4037 <michael.albinus@gmx.de> in emacs-manual-bugs@gnu.org.
4039 * doc/emacs/rmail.texi (Rmail Motion): Clarify what '-' does to
4040 'M-s'. Suggested by Arthur Milchior <arthur@milchior.fr> in
4041 emacs-manual-bugs@gnu.org.
4043 * doc/emacs/cmdargs.texi (Initial Options): Capitalize "Emacs".
4044 (Action Arguments): Fix a typo.
4045 (Emacs Invocation): Replace em-dash with a comma. Suggested by
4046 Justin Heyes-Jones <justinhj@gmail.com> in
4047 emacs-manual-bugs@gnu.org.
4049 * doc/emacs/m-x.texi (M-x): Add an example. Suggested by Alberto
4050 Sartori <alberto.sartori@sissa.it> in emacs-manual-bugs@gnu.org.
4052 * doc/emacs/calendar.texi (Calendar/Diary, Calendar Unit Motion):
4053 Minor wording changes.
4055 2018-02-04 Juri Linkov <juri@linkov.net>
4057 * lisp/vc/vc-git.el (vc-git-print-log): Restrict file scope to a single file
4059 when vc-git-print-log-follow is non-nil (bug#19045).
4060 (vc-git-print-log-follow): Doc fix.
4062 * etc/NEWS: Mention 'vc-git-print-log-follow'.
4064 2018-02-04 Michael Albinus <michael.albinus@gmx.de>
4066 * doc/emacs/misc.texi (Interactive Shell): Refer to node "Minibuffer File"
4068 for hints how to type remote file names effectively.
4070 2018-02-04 Eli Zaretskii <eliz@gnu.org>
4072 Yet another round of fixing the Emacs manual
4074 * doc/emacs/cmdargs.texi (Action Arguments): Rearrange text
4075 describing what happens when Emacs is invoked with several file
4076 arguments. Suggested by Grant Rettke <gcr@wisdomandwonder.com> in
4077 emacs-manual-bugs@gnu.org.
4079 * doc/emacs/xresources.texi (GTK styles):
4080 * doc/emacs/mini.texi (Passwords):
4081 * doc/emacs/frames.texi (Scroll Bars): Use "cannot" instead of
4084 * doc/emacs/macos.texi (Mac / GNUstep Basics): Clarify the effect
4085 of ns-right-alternate-modifier when its value is 'none'.
4086 Suggested by Wanderson Ferreira <iagwanderson@gmail.com> in
4087 emacs-manual-bugs@gnu.org.
4089 * doc/emacs/calendar.texi (Importing Diary, Appointments): Now
4090 sub-sections of Diary.
4091 * doc/emacs/emacs.texi (Top):
4092 * doc/emacs/calendar.texi (Diary): Adjust menus to the above
4093 change. Suggested by Isaac Carter <icarter1391@gmail.com> in
4094 emacs-manual-bugs@gnu.org.
4096 * doc/emacs/anti.texi (Antinews): Fix grammar.
4098 2018-02-04 Alan Mackenzie <acm@muc.de>
4100 * etc/NEWS: Expunge the solecism "allow(s)" + infinitive
4102 2018-02-04 Martin Rudalics <rudalics@gmx.at>
4104 Two minor fixes in Antinews
4106 * doc/emacs/anti.texi (Antinews): Two minor fixes.
4108 2018-02-03 Juri Linkov <juri@linkov.net>
4110 * etc/NEWS: Rename image-dired-thumb-job-limit
4112 to image-dired-queue-active-limit (bug#30279)
4114 2018-02-03 Basil L. Contovounesios <contovob@tcd.ie>
4116 * lisp/simple.el (async-shell-command, shell-command): Fix grammar
4118 2018-02-03 Basil L. Contovounesios <contovob@tcd.ie>
4120 Fix deferred display of async shell-command buffers
4122 * lisp/simple.el (shell-command): Display async shell buffer on
4123 process output for every, not just first, command invocation. Check
4124 buffer liveness, not name, before displaying. (bug#30213, bug#30280)
4126 2018-02-03 Eli Zaretskii <eliz@gnu.org>
4128 Mention remote file name completion in Emacs manual
4130 * doc/emacs/mini.texi (Minibuffer File): Describe the behavior of
4131 "//" with remote file names. (Bug#29149)
4133 2018-02-03 Eli Zaretskii <eliz@gnu.org>
4135 Yest another round of manual copyedits
4137 * doc/emacs/fixit.texi (Transpose, Spelling): Minor stylistic
4138 changes. Suggested by myq larson <myqlarson@gmail.com> in
4139 emacs-manual-bugs@gnu.org.
4141 * doc/emacs/calendar.texi (Appointments, Time Intervals): Mention
4142 relevant Org features. Suggested by Alex Branham
4143 <alex.branham@gmail.com> in emacs-manual-bugs@gnu.org.
4145 * doc/emacs/dired.texi (Operating on Files)
4146 (Shell Commands in Dired, Image-Dired): Minor stylistic edits.
4147 Suggested by Francis Wright <f.j.wright@live.co.uk> in
4148 emacs-manual-bugs@gnu.org.
4150 * doc/emacs/commands.texi (User Input): Explain "C-M-a".
4151 Suggested by Martin Luethi <martin.luethi@geo.uzh.ch> in
4152 emacs-manual-bugs@gnu.org.
4154 2018-02-03 Eli Zaretskii <eliz@gnu.org>
4156 Update xdisp.c commentary
4158 * src/xdisp.c: Update commentary regarding "asynchronous" entry
4159 into redisplay. (Bug#30182)
4161 2018-02-03 Michael Albinus <michael.albinus@gmx.de>
4165 * lisp/net/rlogin.el (rlogin, rlogin-directory-tracking-mode):
4166 Adapt to changed remote file name syntax. (Bug#30324)
4168 2018-02-03 Glenn Morris <rgm@gnu.org>
4170 Recognize Org as builtin package (bug#30310)
4172 * lisp/org/org.el: Add Version header so detected as builtin package.
4173 * test/lisp/org/org-tests.el: New file.
4175 2018-02-02 Eli Zaretskii <eliz@gnu.org>
4177 Another round of manual fixups
4179 * doc/emacs/killing.texi (Killing by Lines): Clarify wording.
4180 Reported by David Bonnafous <dbonnafo@gmail.com> in
4181 emacs-manual-bugs@gnu.org.
4183 * doc/emacs/windows.texi (Other Window): Improve wording.
4184 Reported by Rasmus Sjostrom <ras.sjostrom@gmail.com> in
4185 emacs-manual-bugs@gnu.org.
4187 * doc/emacs/display.texi (Display Custom): Mention that line
4188 numbers are not displayed in the minibuffer and tooltips.
4190 * doc/emacs/mini.texi (Basic Minibuffer): Improve wording.
4191 * doc/emacs/regs.texi (Registers): More comma removal. Suggested
4192 by "root@vxid.pw root@vxid.pw" <root@vxid.pw> in
4193 emacs-manual-bugs@gnu.org.
4195 * doc/emacs/display.texi (Auto Scrolling): Fix a typo. Reported
4196 by Kevin Foley <kfoley15@gmail.com> in emacs-manual-bugs@gnu.org.
4198 * doc/emacs/display.texi (Scrolling): Fix grammar.
4199 (Horizontal Scrolling): Mention reasonable limits for hscroll-step
4200 float values. Suggested by Jerome Truong <jerometruong@gmail.com>
4201 in emacs-manual-bugs@gnu.org.
4203 * doc/emacs/mini.texi (Minibuffer Edit): Add a missing comma.
4204 * doc/emacs/basic.texi (Position Info, Arguments, Repeating):
4205 Remove redundant commas. Suggested by oldgaro
4206 <oldgaro@protonmail.com> in emacs-manual-bugs@gnu.org.
4208 * doc/emacs/kmacro.texi (Save Keyboard Macro): Clarify wording.
4209 Suggested by clemens.radermacher@posteo.de in
4210 emacs-manual-bugs@gnu.org.
4212 * doc/emacs/building.texi (Compilation Mode): Improve and simplify
4213 wording. Suggested by drone <yoorobot@gmail.com> in
4214 emacs-manual-bugs@gnu.org.
4216 * doc/emacs/dired.texi (Dired Enter): Clarify wording.
4217 (Dired Deletion): Fix a typo.
4218 (Marks vs Flags): Mention that M-DEL in Dired asks for the mark
4219 character. Fix typos.
4220 * doc/emacs/basic.texi (Moving Point, Erasing, Basic Undo)
4221 (Arguments): Some additional information about keys. Reported by
4222 Francis Wright <f.j.wright@live.co.uk> in
4223 emacs-manual-bugs@gnu.org.
4225 2018-02-02 Basil L. Contovounesios <contovob@tcd.ie> (tiny change)
4227 * doc/lispref/customize.texi (Custom Themes): Clarify .el preference.
4230 https://lists.gnu.org/archive/html/emacs-devel/2018-01/msg00824.html.
4232 2018-02-02 Eli Zaretskii <eliz@gnu.org>
4234 * doc/emacs/entering.texi (Entering Emacs): Another wording fix.
4236 2018-02-02 Noam Postavsky <npostavs@gmail.com>
4238 * doc/lispref/functions.texi (Inline Functions): Fix typo (Bug#30238).
4240 * lisp/imenu.el (imenu-generic-expression): Rephrase doc (Bug#30294).
4242 2018-02-01 Eli Zaretskii <eliz@gnu.org>
4244 Fix last change of @key markup
4246 * doc/lispref/display.texi (Specified Space):
4247 * doc/emacs/programs.texi (C Modes):
4248 * doc/emacs/killing.texi (Rectangles):
4249 * doc/emacs/emacs.texi (Top):
4250 * doc/emacs/display.texi (Useless Whitespace): Don't use @key
4251 markup for characters and commands, only for keys.
4253 2018-02-01 Eli Zaretskii <eliz@gnu.org>
4255 * doc/emacs/entering.texi (Entering Emacs): Fix markup.
4257 2018-02-01 Michael Albinus <michael.albinus@gmx.de>
4259 Revert a1bbc49015 (Bug#30243), do not merge
4262 * test/lisp/net/tramp-tests.el: Revert a1bbc49015. (Bug#30243)
4264 2018-01-31 Michael Albinus <michael.albinus@gmx.de>
4266 Use @key{} where it is missing in the manuals
4268 2018-01-31 Eli Zaretskii <eliz@gnu.org>
4270 Another round of manual fixes from proofreading
4272 * doc/emacs/search.texi (Incremental Search)
4273 (Nonincremental Search): Mention the menu bar and fix typos.
4274 Reported by David Bonnafous <dbonnafo@gmail.com> in
4275 emacs-manual-bugs@gnu.org.
4276 * doc/emacs/building.texi (Compilation): Improve wording.
4277 Suggested by drone <yoorobot@gmail.com> in
4278 emacs-manual-bugs@gnu.org.
4279 * doc/emacs/kmacro.texi (Basic Keyboard Macro): Clarify text.
4280 Suggested by Robert Pluim <rpluim@gmail.com> in
4281 emacs-manual-bugs@gnu.org.
4282 * doc/emacs/display.texi (Highlight Interactively, Fringes):
4283 Improve wording. Suggested by Justin Heyes-Jones
4284 <justinhj@gmail.com> in emacs-manual-bugs@gnu.org.
4285 * doc/emacs/commands.texi (User Input, Commands): Add missing
4287 * doc/emacs/screen.texi (Menu Bar): Mention keyboard keys to
4288 navigate menus. Suggested by oldgaro <oldgaro@protonmail.com> in
4289 emacs-manual-bugs@gnu.org.
4290 * doc/emacs/search.texi (Not Exiting Isearch): Fix a typo.
4291 Reported by "Kocken, I.J. (Ilja)" <I.J.Kocken@uu.nl> in
4292 emacs-manual-bugs@gnu.org.
4293 * doc/emacs/basic.texi (Inserting Text): Mention one more label of
4294 RET. Suggested by Francis Wright <f.j.wright@live.co.uk> in
4295 emacs-manual-bugs@gnu.org.
4296 * doc/emacs/text.texi (Paragraphs): Clarify text. Reported by
4297 Marcin Borkowski <mbork@mbork.pl> in emacs-manual-bugs@gnu.org.
4298 * doc/emacs/maintaining.texi (Introduction to VC)
4299 (Why Version Control?, VCS Merging): Fix typos and section
4300 capitalization. Suggested by "R. P. Dillon"
4301 <rpdillon@killring.org> in emacs-manual-bugs@gnu.org.
4302 * doc/emacs/modes.texi (Major Modes, Choosing Modes): Fix typos.
4303 Reported by clemens.radermacher@posteo.de in
4304 emacs-manual-bugs@gnu.org.
4306 2018-01-31 Eli Zaretskii <eliz@gnu.org>
4308 * doc/emacs/entering.texi (Entering Emacs): Fix last change.
4310 2018-01-31 Martin Rudalics <rudalics@gmx.at>
4312 Document 'window-at-side-p' in the Elisp manual
4314 * doc/lispref/windows.texi (Windows and Frames): Document
4317 2018-01-31 Noam Postavsky <npostavs@gmail.com>
4319 Document external-debugging-output in the Elisp Manual (Bug#24051)
4321 * doc/lispref/streams.texi (Output Streams): List
4322 external-debugging-output.
4323 * src/print.c (Fexternal_debugging_output): Quote `print' in
4326 2018-01-31 Noam Postavsky <npostavs@gmail.com>
4328 Fix scroll-margin docstring (Bug#13791)
4330 * src/xdisp.c (syms_of_xdisp) <scroll-margin>: Explain that entering
4331 the margin may trigger any sort of auto scrolling, not recentering
4334 2018-01-31 Noam Postavsky <npostavs@gmail.com>
4336 Clarify that `ansi-term' is almost the same as `term' (Bug#18106)
4338 * lisp/term.el (ansi-term): Clarify that it's almost the same as `term'.
4340 2018-01-31 Noam Postavsky <npostavs@gmail.com>
4342 Update manual description of locate-file (Bug#23650)
4344 * doc/lispref/files.texi (Locating Files): Add example of predicate
4345 when searching for a directory.
4347 2018-01-31 Noam Postavsky <npostavs@gmail.com>
4349 Clarify effect of print-gensym (Bug#27776)
4351 * src/print.c (syms_of_print) <print-gensym>: Clarify that use of #N#
4352 and #N= constructs depends on the value of `print-circle'.
4354 2018-01-31 Noam Postavsky <npostavs@gmail.com>
4356 * lisp/custom.el (defcustom): Fix docstring (Bug#27891).
4358 2018-01-31 Noam Postavsky <npostavs@gmail.com>
4360 Define cl-type-definition button type as needed (Bug#28899)
4362 * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor): Require
4363 `cl-extra' before using the `cl-type-definition' button type.
4365 2018-01-31 Noam Postavsky <npostavs@gmail.com>
4367 Emphasize that GPG passphrase caching is temporary (Bug#29907)
4369 * doc/misc/epa.texi (Caching Passphrases): Clarify that caching is
4371 (GnuPG version compatibility): Fix typo.
4373 2018-01-30 Alan Mackenzie <acm@muc.de>
4375 Fix @examples in cc-mode.info, where lines were getting glued together.
4377 This happened because of false @c's in macro lines.
4379 * doc/misc/cc-mode.texi (Line-up Functions): Remove the unneeded @c from
4380 macros sssTBasicOffset, sssTsssTBasicOffset, and hereFn.
4382 2018-01-30 Eli Zaretskii <eliz@gnu.org>
4384 Minor change in "Mode Line" section of Emacs manual
4386 * doc/emacs/screen.texi (Mode Line): Mention tooltips shown when
4387 hovering the mouse over the mode line. Suggested by Eduardo
4388 Mercovich <eduardo@mercovich.net> in emacs-manual-bugs@gnu.org.
4390 2018-01-30 Eli Zaretskii <eliz@gnu.org>
4392 More fixes in the Emacs manual
4394 * doc/emacs/screen.texi (Mode Line): Fix markup and
4396 (Menu Bar): Correct inaccurate description.
4397 * doc/emacs/macos.texi (Mac OS / GNUstep, Mac / GNUstep Events):
4398 * doc/emacs/frames.texi (Scroll Bars):
4399 * doc/emacs/emacs.texi (Top):
4400 * doc/emacs/ack.texi (Acknowledgments): Fix spelling of "macOS".
4401 * doc/emacs/misc.texi (Invoking emacsclient)
4402 (emacsclient Options): Fix markup of 'emacsclient'. Suggested by
4403 Michael Albinus <michael.albinus@gmx.de> in
4404 emacs-manual-bugs@gnu.org.
4406 2018-01-30 Eli Zaretskii <eliz@gnu.org>
4408 Minor copyedits in "Distribution" chapter of the Emacs manual
4410 * doc/emacs/emacs.texi (Distrib): Minor wording changes.
4411 Suggested by oldgaro <oldgaro@protonmail.com> in
4412 emacs-manual-bugs@gnu.org.
4414 2018-01-30 Eli Zaretskii <eliz@gnu.org>
4416 Minor copyedits in "Entering" chapter of Emacs manual.
4418 * doc/emacs/entering.texi (Entering Emacs): Add a cross-reference
4419 to MS-Windows startup procedures. Clarify wording. Suggested by
4420 Francis Wright <f.j.wright@live.co.uk> in emacs-manual-bugs@gnu.org.
4422 2018-01-30 Eli Zaretskii <eliz@gnu.org>
4424 Minor wording change in the Emacs manual
4426 * doc/emacs/screen.texi (Screen): Minor wording change. Suggested
4427 by Wesley Ellis <ellisgen@gmail.com> in emacs-manual-bugs@gnu.org.
4429 2018-01-30 Eli Zaretskii <eliz@gnu.org>
4431 Fix a typo in the Emacs manual
4433 * doc/emacs/custom.texi (Customization Groups): Fix a typo.
4434 Reported by Jonathan Kyle Mitchell <kyle@jonathanmitchell.org> in
4435 emacs-manual-bugs@gnu.org.
4437 2018-01-30 Eli Zaretskii <eliz@gnu.org>
4439 Improve the "Basic" chapter of the Emacs manual
4441 * doc/emacs/basic.texi (Inserting Text): De-confuse text.
4442 (Position Info): Add a cross-reference to where
4443 display-line-numbers-mode is described. Reported by Joshua
4444 Branson <jbranso@fastmail.com> in emacs-manual-bugs@gnu.org.
4446 2018-01-30 Eli Zaretskii <eliz@gnu.org>
4448 Resurrect lost text in lispref
4450 * doc/lispref/files.texi (File Attributes): Resurrect
4451 inadvertently lost text.
4453 2018-01-30 Philipp Stephani <phst@google.com>
4455 * lisp/emacs-lisp/rx.el (rx): Fix the definition of 'blank'.
4457 2018-01-29 Paul Eggert <eggert@cs.ucla.edu>
4459 Proofread os.texi and files.texi
4461 2018-01-29 Eli Zaretskii <eliz@gnu.org>
4463 Minor improvements in the "International" chapter of Emacs manual
4465 * doc/emacs/mule.texi (File Name Coding): Stop enumerating all the
4466 versions of MS-Windows.
4467 (Modifying Fontsets, Unibyte Mode, Bidirectional Editing): Improve
4468 wording. Reported by Francis Wright <f.j.wright@live.co.uk> in
4469 emacs-manual-bugs@gnu.org.
4471 2018-01-29 Eli Zaretskii <eliz@gnu.org>
4473 Minor improvement in "Text" chapter of Emacs manual
4475 * doc/emacs/text.texi (Words): Improve wording. Reported by
4476 Marcin Borkowski <mbork@mbork.pl> in
4477 http://lists.gnu.org/archive/html/emacs-devel/2018-01/msg00784.html.
4479 2018-01-28 Martin Rudalics <rudalics@gmx.at>
4481 Fix some issues in the emacs/lispref manuals
4483 * doc/emacs/basic.texi (Continuation Lines):
4484 * doc/emacs/building.texi (GDB User Interface Layout):
4485 * doc/emacs/dired.texi (Misc Dired Features):
4486 * doc/emacs/maintaining.texi (Identifier Search):
4487 * doc/emacs/mark.texi (Using Region):
4488 * doc/emacs/misc.texi (Document View, DocView Conversion):
4489 * doc/emacs/modes.texi (Major Modes):
4490 * doc/emacs/mule.texi (Input Methods, Unibyte Mode):
4491 * doc/emacs/sending.texi (Mail Methods): Replace @code by
4493 * doc/emacs/frames.texi (Text-Only Mouse):
4494 * doc/lispref/maps.texi (Standard Keymaps): Replace @kbd by
4496 * doc/lispref/compile.texi (Compiler Errors): Write
4497 non-@code{nil} instead of non-nil.
4498 * doc/lispref/debugging.texi (Internals of Debugger):
4499 'backtrace' is not a command. 'debugger-stack-frame-as-list'
4501 * doc/lispref/display.texi (Size of Displayed Text):
4502 'window-lines-pixel-dimensions' has a last argument 'left'.
4503 * doc/lispref/display.texi (Attribute Functions):
4504 'set-face-underline' and 'set-face-inverse-video' are
4506 (Tooltips): 'tooltip-frame-parameters' is an option.
4507 (Bidirectional Display): 'bidi-paragraph-direction' is an
4509 * doc/lispref/frames.texi (Cursor Parameters): 'cursor-type'
4511 (Input Focus): Argument FRAME of 'x-focus-frame' is not
4513 (Child Frames): Both arguments of 'frame-ancestor-p' are
4514 non-optional. 'iconify-child-frame' is an option.
4515 * doc/lispref/os.texi (Killing Emacs):
4516 'kill-emacs-query-functions' is an option.
4517 * doc/lispref/windows.texi (Mouse Window Auto-selection):
4518 'mouse-autoselect-window' is an option.
4520 2018-01-28 Eli Zaretskii <eliz@gnu.org>
4522 Fix multiple spaces in Emacs manual
4524 * doc/emacs/search.texi (Lax Search): Fix multiple consecutive
4525 spaces in printed manual.
4527 2018-01-28 Eli Zaretskii <eliz@gnu.org>
4529 * lisp/files.el (save-some-buffers): Doc fix. (Bug#30215)
4531 2018-01-28 Eli Zaretskii <eliz@gnu.org>
4533 Adjudicate comments to "International" chapter of Emacs manual
4535 * doc/emacs/mule.texi (International Chars)
4536 (Language Environments, Input Methods, Defining Fontsets)
4537 (Modifying Fontsets): Minor wording changes and typo fixes.
4538 Reported by Francis Wright <f.j.wright@live.co.uk> in
4539 emacs-manual-bugs@gnu.org.
4541 2018-01-28 Noam Postavsky <npostavs@gmail.com>
4543 Revert "Signal error for symbol names with strange quotes (Bug#2967)"
4545 That commit did not make the corresponding change to printing, thus
4546 breaking the (eq (read (prin1-to-string SYM)) SYM) invariant for those
4547 symbols. It's too late in the release cycle to change printing
4548 behavior, therefore revert the reader change.
4550 Don't merge to master, the print function will be updated there (see
4551 "Fix round tripping of read->print for symbols with strange quotes").
4553 2018-01-27 Alan Mackenzie <acm@muc.de>
4555 Allow read-passwd to hide characters inserted by C-y. (Security fix.)
4557 This fixes bug #30186. The with-silent-modifications was there to prevent
4558 records of text property manipulations being put into buffer-undo-list. These
4559 had been causing a significant slowdown in CC Mode with C-_ after a large
4560 C-y. This CC Mode problem has since been solved by a different workaround.
4562 * lisp/subr.el (remove-yank-excluded-properties): Remove the invocation of
4563 with-silent-modifications around the text property manipulations.
4565 2018-01-27 Eli Zaretskii <eliz@gnu.org>
4567 * etc/PROBLEMS: Document issues with double-buffering. (Bug#30088)
4569 2018-01-27 Charles A. Roelli <charles@aurox.ch>
4571 * lisp/window.el (window-largest-empty-rectangle): Fix grammar.
4573 2018-01-27 Eli Zaretskii <eliz@gnu.org>
4575 Minor changes in the Emacs manual
4577 * doc/emacs/search.texi (Search Customizations): Minor wording
4579 * doc/emacs/files.texi (Customize Save): Add a cross-reference
4582 2018-01-27 Eli Zaretskii <eliz@gnu.org>
4584 Improve the "Files" chapter of the Emacs manual
4586 * doc/emacs/files.texi (File Shadowing): Rearrange text to explain
4587 the notion of shadowing before describing the commands. Suggested
4588 by Will Korteland <emacs-devel@korte.land> in
4589 emacs-manual-bugs@gnu.org.
4591 2018-01-27 Eli Zaretskii <eliz@gnu.org>
4593 Improve the "Search" chapter of the Emacs manual
4595 * doc/emacs/search.texi (Regexps, Regexp Backslash): Improve and
4597 (Search Customizations): Fix a typo. Reported by Will Korteland
4598 <emacs-devel@korte.land> in emacs-manual-bugs@gnu.org.
4600 2018-01-27 Eli Zaretskii <eliz@gnu.org>
4602 * src/indent.c (Findent_to): Doc fix. (Bug#30260)
4604 2018-01-27 Eli Zaretskii <eliz@gnu.org>
4606 Improve documentation of 'edebug-defun'
4608 * doc/lispref/edebug.texi (Instrumenting): Document a workaround
4609 for a failure to instrument due to unknown macros. (Bug#30243)
4612 2018-01-27 Eli Zaretskii <eliz@gnu.org>
4614 Mention crashes due to Noto Serif Kannada fonts
4616 * etc/PROBLEMS: Mention crashes due to Noto Serif Kannada fonts,
4617 and the respective workarounds. (Bug#30193)
4619 2018-01-27 Noam Postavsky <npostavs@gmail.com>
4621 * doc/lispref/searching.texi: Document regexp repetition limit.
4623 * src/syntax.c (char-syntax): Warn about ignoring text properties (Bug#22765).
4625 2018-01-27 Noam Postavsky <npostavs@gmail.com>
4627 Load mm-util as needed for url-file and url-data (Bug#30258)
4629 * lisp/url/url-file.el (url-file):
4630 * lisp/url/url-misc.el (url-data): Require `mm-util' before calling
4631 `mm-disable-multibyte'.
4632 * test/lisp/url/url-file-resources/file.txt:
4633 * test/lisp/url/url-file-tests.el:
4634 * test/lisp/url/url-misc-tests.el: New tests.
4636 2018-01-26 Eli Zaretskii <eliz@gnu.org>
4638 Another minor copyedit in the manual's "Scroll Bars"
4640 * doc/emacs/frames.texi (Scroll Bars): Mention that up/down and
4641 left/right buttons may be absent from the toolkit scroll bars.
4642 Reported by Robert Pluim <rpluim@gmail.com> in
4643 emacs-manual-bugs@gnu.org.
4645 2018-01-26 Eli Zaretskii <eliz@gnu.org>
4647 Minor fix in documentation of 'equal'
4649 * doc/lispref/objects.texi (Equality Predicates): Correct the
4650 conditions for equality of unibyte and multibyte strings.
4653 2018-01-26 Eli Zaretskii <eliz@gnu.org>
4655 * lisp/dired-x.el (dired-guess-shell-alist-user): Doc fix. (Bug#30192)
4657 2018-01-26 Eli Zaretskii <eliz@gnu.org>
4659 Minor rewording in Emacs manual's "Help Mode" node
4661 * doc/emacs/help.texi (Help Mode): Minor rewording of description
4662 of 'help-follow-symbol'. Suggested by Richard Stallman
4663 <rms@gnu.org> in emacs-manual-bugs@gnu.org.
4665 2018-01-26 Eli Zaretskii <eliz@gnu.org>
4667 Fixes for Emacs manual in frames.texi
4669 * doc/emacs/frames.texi (Scroll Bars, Mouse Commands)
4670 (Window Dividers): Minor clarifications and spelling/markup
4671 changes. Suggested by Robert Pluim <rpluim@gmail.com> in
4672 emacs-manual-bugs@gnu.org.
4674 2018-01-24 Glenn Morris <rgm@gnu.org>
4676 * doc/misc/cl.texi (Efficiency Concerns): Fix 2012-10-27 typo.
4678 2018-01-24 Robert Pluim <rpluim@gmail.com>
4680 Fix a few issues with latest GTK scaling changes
4682 * src/xfns.c (Fx_display_monitor_attributes_list): Call
4683 gdk_screen_get_monitor_scale_factor only for GTK versions
4685 * src/xterm.c (x_set_offset): Call xg_get_scale for GTK only.
4687 2018-01-24 Robert Pluim <rpluim@gmail.com>
4689 Use scaled coordinates when calling into GTK
4691 This is part two of a two part fix for the GTK scaling
4692 problems. See the thread starting at
4693 http://lists.gnu.org/archive/html/emacs-devel/2018-01/msg00372.html
4694 for an explanation of why it has been added to Emacs 26.
4696 * src/gtkutil.c (xg_set_geometry): Scale down the coordinates that we
4697 pass to gtk_window_move and to gtk_window_parse_geometry.
4698 * src/xterm.c (x_set_offset): Likewise.
4700 2018-01-24 Robert Pluim <rpluim@gmail.com>
4702 Scale monitor dimensions obtained from GTK
4704 This is part one of a two part fix for the GTK scaling
4705 problems. See the thread starting at
4706 http://lists.gnu.org/archive/html/emacs-devel/2018-01/msg00372.html
4707 for an explanation of why it has been added to Emacs 26.
4709 * src/xfns.c (Fx_display_monitor_attributes_list): Take scaling factor
4710 into account when using GTK to query the monitor dimensions, which
4711 allows frameset-restore to position frames correctly.
4713 2018-01-22 Rasmus <rasmus@gmx.us>
4715 Update Org to v9.1.6
4717 Please note this is a bugfix release. See etc/ORG-NEWS for details.
4719 2018-01-22 Aaron Jensen <aaronjensen@gmail.com>
4721 Use text-pixels values only when saving framesets (Bug#30141)
4723 * lisp/frameset.el (frameset-persistent-filter-alist): Specify
4724 that text-pixels values are by default only saved by framesets
4725 so the parameter is not set when restoring (Bug#30141).
4727 2018-01-21 Eli Zaretskii <eliz@gnu.org>
4729 Minor improvement in section "Pages" of the usere manual
4731 * doc/emacs/text.texi (Pages): Improve wording. Suggested by Will
4732 Korteland <emacs-devel@korte.land> in emacs-manual-bugs@gnu.org.
4734 2018-01-21 Eli Zaretskii <eliz@gnu.org>
4736 Minor improvements in user manual
4738 * doc/emacs/trouble.texi (Emergency Escape, Contributing): Clarify
4739 text. Suggested by Jonathan Kyle Mitchell <kyle@jonathanmitchell.org>
4740 in emacs-manual-bugs@gnu.org
4742 2018-01-21 Eli Zaretskii <eliz@gnu.org>
4744 Improve the "Mark" chapter of the user manual
4746 * doc/emacs/mark.texi (Setting Mark, Marking Objects): Improve and
4747 clarify wording. Suggested by John Cummings <john@rootabega.net>
4748 in emacs-manual-bugs@gnu.org.
4750 2018-01-21 Eli Zaretskii <eliz@gnu.org>
4752 Improve the "Buffers" chapter of the user manual
4754 * doc/emacs/buffers.texi (Several Buffers): Correct description of
4755 prefix arguments. Clarify "bury".
4756 (Buffer Menus): Clarify wording. Reported by John Cummings
4757 <john@rootabega.net> in emacs-manual-bugs@gnu.org.
4759 2018-01-21 tino calancha <tino.calancha@gmail.com>
4761 * lisp/term.el (term-send-input): Fix text duplication in docstring
4763 2018-01-20 Eli Zaretskii <eliz@gnu.org>
4765 Improve "Buffers" in the user manual
4767 Suggested by John Cummings <john@rootabega.net> in
4768 emacs-manual-bugs@gnu.org:
4769 * doc/emacs/buffers.texi (Select Buffer): Add cross-references to
4770 "Windows" and "Frames".
4771 (Misc Buffer, Kill Buffer): Use BUFFER consistently in commands
4772 that accept buffer names.
4773 (Select Buffer): Improve description of "M-g M-g". Improve
4775 (Misc Buffer, Kill Buffer): Improve wording.
4776 (Kill Buffer): Fix the response required by kill-some-buffers.
4777 Mention customizable options that control what clean-buffer-list
4779 (Several Buffers): More detail about
4780 'Buffer-menu-unmark-all-buffers'.
4782 2018-01-20 Eli Zaretskii <eliz@gnu.org>
4784 Don't mention 'vc-stay-local' in the user manual
4786 * doc/emacs/vc1-xtra.texi (CVS Options):
4787 * doc/emacs/maintaining.texi (VC Directory Buffer): Remove
4788 references to 'vc-stay-local', which no longer exists.
4791 2018-01-20 Eli Zaretskii <eliz@gnu.org>
4793 Fix a typo in calendar.texi
4795 * doc/emacs/calendar.texi (Writing Calendar Files): Capitalize
4796 "Filofax". Reported by Will Korteland <emacs-devel@korte.land>
4797 in emacs-manual-bugs@gnu.org.
4799 2018-01-20 Eli Zaretskii <eliz@gnu.org>
4801 Minor improvement in wording of the Emacs manual
4803 * doc/emacs/killing.texi (CUA Bindings): Improve wording.
4804 Suggested by Will Korteland <emacs-devel@korte.land> in
4805 emacs-manual-bugs@gnu.org.
4807 2018-01-20 Eli Zaretskii <eliz@gnu.org>
4809 Revert "Fix tempfile creation when byte compiling"
4811 This reverts commit 4fd446e9f65e5531b18d4a0c5e08a6eeabc292d8:
4812 * lisp/emacs-lisp/bytecomp.el (byte-compile-file):
4813 Put tempfile next to the target file, as was the original intent.
4815 2018-01-19 Paul Eggert <eggert@cs.ucla.edu>
4817 Fix tempfile creation when byte compiling
4819 This improves on the recent fix for master failing to build
4820 on FreeBSD. Suggested by Stefan Monnier in:
4821 https://lists.gnu.org/r/emacs-devel/2018-01/msg00600.html
4822 * lisp/emacs-lisp/bytecomp.el (byte-compile-file):
4823 Put tempfile next to the target file, as was the original intent.
4825 2018-01-19 Eli Zaretskii <eliz@gnu.org>
4827 Improve the Emacs manual as suggested in emacs-manual-bugs
4829 * doc/emacs/killing.texi (Deletion and Killing): Add
4830 cross-reference to "Kill Ring".
4831 * doc/emacs/help.texi (Help Mode, Package Keywords): Improve
4832 wording. Suggested by Will Korteland <emacs-devel@korte.land> in
4833 emacs-manual-bugs@gnu.org.
4835 2018-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
4837 * lisp/emacs-lisp/bytecomp.el: Tweak last change
4839 (byte-compile-file): Move comment closer to the code it describes.
4841 2018-01-19 Eli Zaretskii <eliz@gnu.org>
4843 Unbreak building Emacs on FreeBSD
4845 * lisp/emacs-lisp/bytecomp.el (byte-compile-file): Don't create
4846 the temporary file under temporary-file-directory if the file
4847 being compiled is specified by an absolute file name. This avoids
4848 problems with ACL copying from temporary-file-directory on
4849 FreeBSD. For the details, see
4850 http://lists.gnu.org/archive/html/emacs-devel/2018-01/msg00513.html.
4852 2018-01-19 Eli Zaretskii <eliz@gnu.org>
4854 Don't unnecessarily use non-ASCII characters in C sources
4856 * src/xwidget.c (webkit_javascript_finished_cb):
4857 * src/gtkutil.c (xg_check_special_colors):
4858 * src/emacs-module.c (module_make_string):
4859 * src/alloc.c (SET_STACK_TOP_ADDRESS): Don't use non-ASCII quote
4862 2018-01-19 Eli Zaretskii <eliz@gnu.org>
4864 Portability fixes in emacs-module-tests
4866 * test/Makefile.in (abs_top_srcdir): Add variable, needed by
4868 * test/data/emacs-module/mod-test.c: Include <limits.h>.
4869 (pT, pZ, T_TYPE, Z_TYPE): Compatibility macros, for systems that
4870 don't support %td and %zu format specs.
4871 (emacs_module_init): Use compatibility macros to make the error
4872 messages print meaningful values (and avoid compiler warnings).
4874 2018-01-19 Noam Postavsky <npostavs@gmail.com>
4876 Add tests for term.el
4878 * lisp/term.el (term-mode): Add `name' attribute to
4879 window-adjust-process-window-size-function value, so that it can be
4880 removed easily by tests.
4881 * test/lisp/term-tests.el: New tests.
4883 2018-01-19 Callum Cameron <cjcameron7@gmail.com> (tiny change)
4885 Handle split AnSiT messages for term.el (Bug#17231)
4887 Check to see if there is an incomplete command at the end of
4888 term-emulate-terminal's input string, and, if so, save it so the whole
4889 command can be processed when the next string arrives.
4890 * lisp/term.el (term-partial-ansi-terminal-message): New variable.
4891 (term-mode): Make it buffer local.
4892 (term-handle-ansi-terminal-messages): Prepend it to the received
4893 message, and set it if a partial message was received.
4896 Do not merge to master, it will be solved differently there, see
4897 "Switch term.el to lexical binding, and clean up code a bit".
4899 2018-01-19 Glenn Morris <rgm@gnu.org>
4901 * configure.ac (emacs_config_features): Add threads.
4903 2018-01-18 Noam Postavsky <npostavs@gmail.com>
4905 Handle case-insensitive filenames for load-path shadows (Bug#5845)
4907 * lisp/emacs-lisp/shadow.el (load-path-shadows-find): Check for
4908 shadowing with case-insensitive matching for files of case-insensitive
4909 directories (as determined by `file-name-case-insensitive-p').
4910 * test/lisp/emacs-lisp/shadow-tests.el: New test.
4911 * test/lisp/emacs-lisp/shadow-resources/p1/foo.el:
4912 * test/lisp/emacs-lisp/shadow-resources/p2/FOO.el: New test files.
4914 2018-01-18 Alan Mackenzie <acm@muc.de>
4916 CC Mode: stop distinguishing brace blocks from defun blocks by content.
4918 Don't merge to master; this is a quick fix for the emacs-26 branch. This is
4919 essentially a reversion of the patch from 2017-11-10 which attempted to handle
4920 C99's compound literals.
4922 The bug here was triggered when a defun block contained a declaration ending
4923 in a comma, yet without a semicolon.
4925 * lisp/progmodes/cc-engine.el (c-guess-basic-syntax): At the CASE 9 test,
4926 remove from the `or' form the test of a block's contents.
4928 2018-01-17 Philipp Stephani <phst@google.com>
4930 Use recommended long options syntax in man page
4932 * doc/man/emacs.1.in: Specify equals sign for long options, as
4933 recommended in the manual.
4935 2018-01-17 Glenn Morris <rgm@gnu.org>
4937 An overdue update of GNUstep emacs.tiff
4939 * nextstep/GNUstep/Emacs.base/Resources/emacs.tiff:
4940 Update to the Emacs 25 icon.
4941 Converted from hicolor/scalable/apps/emacs.svg using Gimp.
4942 * nextstep/GNUstep/Emacs.base/Resources/README: Update.
4944 2018-01-17 Glenn Morris <rgm@gnu.org>
4946 Add some test skip conditions
4948 * test/lisp/vc/vc-bzr-tests.el (vc-bzr-test-bug9726)
4949 (vc-bzr-test-bug9781): Skip if bzr is faulty.
4950 * test/src/thread-tests.el: Skip if not compiled with threads.
4952 2018-01-17 Lars Ingebrigtsen <larsi@gnus.org>
4954 Add documentation to ecomplete.el
4956 * lisp/ecomplete.el: Add doc strings and document the format.
4958 2018-01-17 Glenn Morris <rgm@gnu.org>
4960 * admin/authors.el (authors-aliases): Tighten more entries.
4962 2018-01-17 Glenn Morris <rgm@gnu.org>
4964 Small startup fix for current-load-list
4966 * lisp/startup.el (command-line):
4967 Avoid current-load-list being non-nil after startup ends.
4969 2018-01-17 Glenn Morris <rgm@gnu.org>
4971 authors-aliases is based on regexps, not literals
4973 * admin/authors.el (authors-aliases): Replace overly-broad entries.
4975 2018-01-15 Charles A. Roelli <charles@aurox.ch>
4977 Remove incorrect documentation in comint.el
4979 * lisp/comint.el (comint-interrupt-subjob, comint-kill-subjob)
4980 (comint-quit-subjob, comint-stop-subjob): Remove incorrect
4981 documentation. (Bug#30079)
4983 2018-01-15 Glenn Morris <rgm@gnu.org>
4985 An overdue update of src/emacs-icon.h
4987 * src/emacs-icon.h: Update to the Emacs 25 icon. (Bug#30047)
4988 Converted from hicolor/scalable/apps/emacs.svg using Gimp.
4990 2018-01-14 Eli Zaretskii <eliz@gnu.org>
4992 Minor copyedit in ELisp manual
4994 * doc/lispref/variables.texi (File Local Variables): Improve
4995 wording of last change.
4997 2018-01-14 Shuguang Sun <shuguang@gmail.com>
4999 Fix Bug#29149 in dired-aux.el
5001 * lisp/dired-aux.el (dired-shell-stuff-it): Handle remote
5002 commands on w32 properly. (Bug#29149)
5004 2018-01-14 Michael Albinus <michael.albinus@gmx.de>
5006 Fix Bug#29149 in shell.el
5008 * lisp/shell.el (shell): Change order of `file-local-name' and
5009 `expand-file-name' calls. Otherwise, the local file name
5010 would be extended by a drive letter, even when it is a remote
5011 file, seen from w32. (Bug#29149)
5013 2018-01-13 Stefan Monnier <monnier@iro.umontreal.ca>
5015 * doc/lispref/variables.texi (File Local Variables): Fix last change
5017 2018-01-13 Nicolas Petton <nicolas@petton.fr>
5019 * ChangeLog.3: Update
5023 2018-01-13 Nicolas Petton <nicolas@petton.fr>
5025 Fix an entry in authors-aliases
5027 * admin/authors.el (authors-aliases): Replace regexp from "Max", which
5028 is too broad, to an email address ("mu@magi.net.ru").
5030 2018-01-13 Eli Zaretskii <eliz@gnu.org>
5032 Mention trace.el facilities in the ELisp manual
5034 * doc/lispref/debugging.texi (Debugging): Mention the trace.el
5037 2018-01-13 Eli Zaretskii <eliz@gnu.org>
5039 Improve documentation of safe values of variables
5041 * doc/lispref/variables.texi (File Local Variables): Mention the
5042 autoload cookie as a means of defining safe values for variables.
5043 See http://lists.gnu.org/archive/html/emacs-devel/2018-01/msg00261.html
5045 * doc/lispref/compile.texi (Compiler Errors): Document
5046 'byte-compile-error-on-warn'.
5048 2018-01-13 Eli Zaretskii <eliz@gnu.org>
5050 Improve the Emacs manual's "Misc" node
5052 * doc/emacs/misc.texi (Gnus): A more descriptive section name.
5053 (Invoking emacsclient): Mention how to avoid errors when there's
5055 (EWW, Embedded WebKit Widgets): Now subsections under
5056 "Hyperlinking and Web Navigation Features".
5057 (Amusements): Add "games" to the section name. Suggested by Alex
5058 Branham <alex.branham@gmail.com> in emacs-manual-bugs@gnu.org.
5060 * doc/emacs/emacs.texi (Top): Adjust the top-level menus to the
5063 * doc/lispref/os.texi (Security Considerations): Fix typos.
5065 2018-01-13 Martin Rudalics <rudalics@gmx.at>
5067 In nsterm.m use FRAME_NS_P instead of FRAME_X_P (Bug#30019)
5069 * src/nsterm.m (x_set_parent_frame): Call FRAME_NS_P instead
5070 of FRAME_X_P (Bug#30019).
5072 2018-01-12 Nicolas Petton <nicolas@petton.fr>
5074 Bump Emacs version to 26.0.91
5079 * nt/README.W32: Bump Emacs version.
5081 2018-01-12 Nicolas Petton <nicolas@petton.fr>
5083 * ChangeLog.3: Update
5085 2018-01-12 Nicolas Petton <nicolas@petton.fr>
5089 * admin/authors.el (authors-aliases, authors-valid-file-names): Additions.
5090 * etc/AUTHORS: Update AUTHORS file.
5092 2018-01-12 Katsumi Yamaoka <yamaoka@jpl.org>
5094 * lisp/gnus/message.el (message-do-auto-fill): Prevent do-auto-fill from
5095 adding extra citation mark (bug#29767, but it is a different bug).
5097 2018-01-11 Eli Zaretskii <eliz@gnu.org>
5099 Improve documentation of etags
5101 * doc/emacs/maintaining.texi (Tag Syntax, Create Tags Table):
5102 Improve documentation of etags options and of source language
5105 2018-01-11 Eli Zaretskii <eliz@gnu.org>
5107 Teach etags new interpreters for some languages
5109 * lib-src/etags.c (Erlang_interpreters, Lua_interpreters)
5110 (Prolog_interpreters, Python_interpreters, Ruby_interpreters): New
5112 (lang_names): Use them to set interpreters for Erlang, Lua,
5113 Prolog, Python, and Ruby.
5114 (find_entries): Support "/usr/bin/env FOO" form of specifying an
5117 * test/manual/etags/perl-src/htlmify-cystic: Modify the has-bang
5118 line to test the "env FOO" interpreter spec. (Bug#30075)
5119 * test/manual/etags/ETAGS.good_1:
5120 * test/manual/etags/ETAGS.good_2:
5121 * test/manual/etags/ETAGS.good_3:
5122 * test/manual/etags/ETAGS.good_4:
5123 * test/manual/etags/ETAGS.good_5:
5124 * test/manual/etags/ETAGS.good_6: Adapt to latest changes in test
5127 2018-01-11 Stefan Monnier <monnier@iro.umontreal.ca>
5129 * lisp/emacs-lisp/generator.el (iter-defun): Add 'doc-string' prop.
5131 * lisp/emacs-lisp/syntax.el (syntax-propertize): Fix bug#29767
5133 2018-01-10 Charles A. Roelli <charles@aurox.ch>
5135 Improve documentation of fill-separate-heterogeneous-words-with-space
5137 * lisp/textmodes/fill.el
5138 (fill-separate-heterogeneous-words-with-space): Fix grammar.
5140 2018-01-10 Eli Zaretskii <eliz@gnu.org>
5142 Fix documentation of some x-* functions
5144 * lisp/term/pc-win.el (x-display-pixel-width)
5145 (x-display-pixel-height, x-display-planes)
5146 (x-display-color-cells, x-server-max-request-size)
5147 (x-server-vendor, x-server-version, x-display-screens)
5148 (x-display-mm-height, x-display-mm-width)
5149 (x-display-backing-store, x-display-visual-class): Provide doc
5150 strings, so that 'makedoc' produces non-empty documentation in
5151 etc/DOC for these functions. (Bug#30068)
5153 2018-01-10 Philipp Stephani <phst@google.com>
5155 Inherit query-on-exit flag to stderr process (Bug#30031)
5157 * src/process.c (Fmake_process): Have the pipe process honor the
5158 parent's query-on-exit flag.
5160 * test/src/process-tests.el (make-process/noquery-stderr): New test.
5162 2018-01-10 Michael Albinus <michael.albinus@gmx.de>
5166 * test/lisp/filenotify-tests.el (file-notify--test-tmpdir): New defvar.
5167 (file-notify--test-cleanup, file-notify--test-make-temp-name)
5168 (file-notify-test01-add-watch, file-notify-test03-events)
5169 (file-notify-test05-file-validity)
5170 (file-notify-test09-watched-file-in-watched-dir)
5171 (file-notify-test10-sufficient-resources): Use it. (Bug#30057)
5173 2018-01-10 Glenn Morris <rgm@gnu.org>
5175 Tag some unstable tests, and skip by default (bug#24503)
5177 * Makefile.in (check-all): New phony target.
5178 * test/Makefile.in (SELECTOR_DEFAULT, SELECTOR_EXPENSIVE):
5179 Also skip unstable tests.
5180 (SELECTOR_ALL): New variable.
5181 (check-all): New phony target.
5182 * test/lisp/emacs-lisp/eieio-tests/eieio-test-methodinvoke.el
5183 (eieio-test-method-order-list-6):
5184 * test/lisp/emacs-lisp/eieio-tests/eieio-tests.el
5185 (eieio-test-37-obsolete-name-in-constructor):
5186 Mark as unstable rather than skipping on hydra.nixos.org.
5188 2018-01-10 Paul Eggert <eggert@cs.ucla.edu>
5193 2018-01-05 maint: Add encoding marker for Emacs to non-ASCII sources
5194 2018-01-04 update-copyright: Handle use of ©
5195 2018-01-04 pthread_sigmask: Avoid compilation error on mingw
5196 2018-01-02 stat-time: silence -Wunused-parameter regression
5197 * build-aux/config.guess, build-aux/config.sub:
5198 * build-aux/update-copyright, doc/misc/texinfo.tex, lib/gnulib.mk.in:
5199 * lib/md5.c, lib/md5.h, lib/sha1.c, lib/sha1.h, lib/sha256.c:
5200 * lib/sha256.h, lib/sha512.c, lib/sha512.h, lib/signal.in.h:
5201 * lib/stat-time.h: Copy from Gnulib, or regenerate.
5203 2018-01-09 Glenn Morris <rgm@gnu.org>
5205 * lisp/epg.el (epg-start-sign): Replace obsolete functions.
5207 2018-01-09 Glenn Morris <rgm@gnu.org>
5209 Small fix for erc-logging-enabled
5211 * lisp/erc/erc-log.el (erc-logging-enabled):
5212 Respect buffer-locality of erc-enable-logging variable.
5214 2018-01-09 Glenn Morris <rgm@gnu.org>
5216 Quieten semantic normal usage
5218 * lisp/cedet/semantic/lex.el (semantic-flex): Mark obsolete at
5219 compile time in the normal way, not at run-time. (Bug#30035)
5221 2018-01-08 Eli Zaretskii <eliz@gnu.org>
5223 Avoid irrelevant hyperlink in doc string of 'epa-pinentry-mode'
5225 * lisp/epa.el (epa-pinentry-mode): Doc fix. (Bug#30025)
5227 2018-01-08 Michael Albinus <michael.albinus@gmx.de>
5229 * doc/misc/tramp.texi (Remote processes): Mention gdb restrictions with I/O.
5231 2018-01-08 Noam Postavsky <npostavs@gmail.com>
5233 Query background for gnome terminal version 3.22 (Bug#29716)
5235 * lisp/term/xterm.el (xterm--version-handler): Use
5236 xterm--report-background-handler for terminals reporting minor version
5239 2018-01-07 Tak Kunihiro <tkk@misasa.okayama-u.ac.jp>
5241 Make pixel-wise scrolling less laggy
5243 * lisp/pixel-scroll.el (pixel-dead-time, pixel-last-scroll-time):
5245 (pixel-scroll-up, pixel-scroll-down): Invoke 'scroll-up' or
5246 'scroll-down' when called within 'pixel-dead-time'. (Bug#29737)
5248 2018-01-07 Alan Third <alan@idiocy.org>
5250 Fix child frame placement issues (bug#29953)
5252 * src/nsterm.h (NS_PARENT_WINDOW_LEFT_POS):
5253 (NS_PARENT_WINDOW_TOP_POS): Get the parent frame through the frame
5254 struct as invisible child windows are detached from their parents in
5256 * src/nsterm.m (x_set_offset): Offscreen frames have `nil' screen
5257 value, so handle that gracefully. Child frames with negative left and
5258 top should be positioned relative to the bottom right of the parent
5261 2018-01-06 Alan Mackenzie <acm@muc.de>
5263 Describe the precise interaction of complex primitives with the change hooks
5265 * doc/lispref/text.texi (Change Hooks): Document that most buffer changing
5266 primitives call before- and after-change-functions in balanced pairs, but that
5267 some complex primitives call b-c-f once, and a-c-f zero, one, or several
5270 2018-01-06 Eli Zaretskii <eliz@gnu.org>
5272 Fix valgrind report in call-interactively
5274 * src/callint.c (Fcall_interactively): Don't try to access more
5275 bytes than are available in the interactive spec. (Bug#30004)
5277 2018-01-06 Eli Zaretskii <eliz@gnu.org>
5279 * src/editfns.c (Fsave_excursion): Doc fix. (Bug#30001)
5281 2018-01-06 Alan Mackenzie <acm@muc.de>
5283 Fix mark-defun when there's no spaces between successive defuns.
5285 The problem was a parse-partial-sexp call which tried to use the STOPBEFORE
5286 argument to detect non-syntactic WS. This fails on a "}", which does not
5289 * lisp/emacs-lisp/lisp.el (beginning-of-defun--in-emptyish-line-p): Enhance to
5290 handle BOL being in a string.
5291 (beginning-of-defun-comments): Call the above function in place of the call
5292 to parse-partial-sexp.
5294 2018-01-06 Eli Zaretskii <eliz@gnu.org>
5296 Fix Dired display and operations on file names with raw bytes
5298 * src/coding.c (decode_coding): When flushing remaining raw bytes
5299 from multibyte text, copy 2-byte forms of eight-bit-*
5300 characters as single characters, not as 2 raw bytes. (Bug#29189)
5302 2018-01-05 Eli Zaretskii <eliz@gnu.org>
5304 Improve documentation of 'gdb-many-windows'
5306 * doc/emacs/building.texi (GDB User Interface Layout): Add advice
5307 for using a separate frame for 'gdb-many-windows'.
5309 2018-01-05 Eli Zaretskii <eliz@gnu.org>
5311 Fix failures in smerge-mode on MS-Windows
5313 * lisp/vc/smerge-mode.el (smerge--refine-chopup-region): Use
5314 utf-8-emacs-unix, not emacs-internal, to make the forced EOL
5315 convention explicit.
5316 (smerge-refine-regions): Use utf-8-emacs instead of
5317 emacs-internal, to allow decoding of non-Unix EOL conventions.
5320 2018-01-04 Stephen Leake <stephen_leake@stephe-leake.org>
5322 Fix description of 'struct' generic function specializer
5325 * doc/lispref/functions.texi (Generic Functions): Fix description of
5326 'struct' specializer; it must be the named struct or a child, not a
5329 (cherry picked from commit b6add8c7cfc6d36f9dd8ad99be06bd8ab41cc6f8)
5331 2018-01-04 Charles A. Roelli <charles@aurox.ch>
5333 * etc/DEBUG (Getting control to the debugger): Fix grammar.
5335 2018-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
5337 * lisp/vc/vc.el (vc-region-history): log-view-vc-fileset holds a list!
5339 2018-01-03 Noam Postavsky <npostavs@gmail.com>
5341 Don't bind dframe events on load (Bug#29599)
5343 * lisp/dframe.el (dframe-setup-hook): New hook.
5344 (dframe-set-special-events): New function, containing previous
5345 top-level key binding code.
5346 (top-level): Add it to dframe-setup-hook.
5347 (dframe-frame-mode): Run the hook.
5349 2018-01-02 Eli Zaretskii <eliz@gnu.org>
5351 * lisp/textmodes/picture.el (picture-mode-exit): Doc fix. (Bug#29949)
5353 * lisp/textmodes/picture.el (picture-open-line): Doc fix. (Bug#29948)
5355 2018-01-01 Eli Zaretskii <eliz@gnu.org>
5357 Fix description of 'emacs-internal'
5359 * doc/lispref/nonascii.texi (Coding System Basics): Correct
5360 inaccuracy in description of 'emacs-internal'. (Bug#29916)
5362 2018-01-01 Eli Zaretskii <eliz@gnu.org>
5364 Update PROBLEMS with selection-related issues
5366 * etc/PROBLEMS: Update the entry about large selections and
5367 klipper. (Bug#29661)
5369 2018-01-01 Ross Donaldson <gastove@gmail.com> (tiny change)
5371 New customization variable for python-mode indentation (Bug#28475)
5373 * lisp/progmodes/python.el (python-indent-def-block-scale): New variable.
5374 (python-indent--calculate-indentation): Let it control how many indent
5375 levels are inserted for multi-line function signatures.
5377 2018-01-01 Alan Third <alan@idiocy.org>
5379 Fix menu keyboard shortcuts on macOS (Bug#29595)
5381 * src/nsmenu.m (addItemWithWidgetValue)[NS_IMPL_COCOA]: It looks like
5382 macOS 10.13 no longer ignores long modifier strings, so explicitly use
5385 2018-01-01 Paul Eggert <eggert@cs.ucla.edu>
5387 Fix copyright years by hand
5389 These are dates that admin/update-copyright did not update, or
5390 updated incorrectly.
5392 2018-01-01 Paul Eggert <eggert@cs.ucla.edu>
5394 Update copyright year to 2018
5396 Run admin/update-copyright.
5398 2018-01-01 Paul Eggert <eggert@cs.ucla.edu>
5403 2018-01-01 maint: Run 'make update-copyright'
5404 2017-12-29 Add cross-compilation results for GNU/Hurd.
5405 2017-12-12 explicit_bzero: port to macOS + Clang 9.0.0
5407 2017-12-31 Gemini Lasswell <gazally@runbox.com>
5409 Don't add empty keyboard macro to macro ring (Bug#24992)
5411 * lisp/kmacro.el (kmacro-end-call-mouse): Don't save a newly defined
5412 macro if it is empty.
5414 * test/lisp/kmacro-tests.el (kmacro-tests-end-and-call-macro-mouse):
5415 Remove expected failure tag.
5417 2017-12-31 Eli Zaretskii <eliz@gnu.org>
5419 Allow customization of decoding of "man" command
5421 * lisp/man.el (Man-coding-system): New defcustom.
5422 (Man-start-calling): Use it, and also pay attention to user
5423 overriding coding-system-for-read. (Bug#29872)
5425 2017-12-31 Daiki Ueno <ueno@gnu.org>
5427 * etc/NEWS: Add security consideration note on passphrase input
5429 2017-12-29 Eli Zaretskii <eliz@gnu.org>
5431 Fix subtle problem with scroll-down when scroll-margin is nonzero
5433 * src/window.c (window_scroll_pixel_based): Account for
5434 scroll-margin when scrolling down, i.e. moving window-start
5435 towards the beginning of the buffer. Reported by zhang cc
5436 <ccsmile2008@outlook.com> in
5437 http://lists.gnu.org/archive/html/emacs-devel/2017-12/msg00894.html.
5439 2017-12-29 Eli Zaretskii <eliz@gnu.org>
5441 Fix problems with indexing in User manual
5443 * doc/emacs/basic.texi (Continuation Lines, Inserting Text)
5445 * doc/emacs/help.texi (Help Echo, Package Keywords, Help Mode):
5446 * doc/emacs/trouble.texi (Quitting):
5447 * doc/emacs/mark.texi (Setting Mark, Disabled Transient Mark):
5448 * doc/emacs/custom.texi (Modifier Keys, Init Examples)
5449 (Creating Custom Themes):
5450 * doc/emacs/programs.texi (Program Modes, Expressions, Hideshow)
5451 (Basic Indent, Info Lookup, Symbol Completion):
5452 * doc/emacs/screen.texi (Echo Area):
5453 * doc/emacs/xresources.texi (Table of Resources, GTK Names in Emacs):
5454 * doc/emacs/display.texi (Line Truncation, Cursor Display):
5455 * doc/emacs/files.texi (File Names, Backup, File Archives):
5456 * doc/emacs/dired.texi (Operating on Files, Dired Enter):
5457 * doc/emacs/commands.texi (User Input):
5458 * doc/emacs/mule.texi (International, Unibyte Mode)
5459 (International Chars):
5460 * doc/emacs/vc1-xtra.texi (RCS and SCCS, Version Headers)
5462 * doc/emacs/modes.texi (Major Modes, Minor Modes):
5463 * doc/emacs/indent.texi (Just Spaces):
5464 * doc/emacs/frames.texi (Mouse Avoidance, Mode Line Mouse)
5466 * doc/emacs/cmdargs.texi (Initial Options):
5467 * doc/emacs/abbrevs.texi (Dabbrev Customization):
5468 * doc/emacs/mini.texi (Completion Example, Completion Commands):
5469 * doc/emacs/calendar.texi (Writing Calendar Files, Calendar Unit Motion)
5470 (From Other Calendar):
5471 * doc/emacs/regs.texi (Text Registers, Bookmarks):
5472 * doc/emacs/buffers.texi (Several Buffers, Select Buffer):
5473 * doc/emacs/maintaining.texi (Xref Commands):
5474 * doc/emacs/windows.texi (Pop Up Window):
5475 * doc/emacs/text.texi (Text, Org Mode):
5476 * doc/emacs/killing.texi (Other Kill Commands):
5477 * doc/emacs/misc.texi (Document View, Gnus Group Buffer)
5478 (Gnus Summary Buffer, Shell Mode):
5479 * doc/emacs/cal-xtra.texi (Sexp Diary Entries): Remove or reword
5480 redundant identical index entries.
5481 * doc/emacs/custom.texi (Mouse Buttons)
5482 * doc/emacs/files.texi (Reverting): Fix hyphenation.
5483 * doc/emacs/emacs.texi (Top): Improve wording of Index menu items.
5484 * doc/emacs/files.texi (File Conveniences):
5485 * doc/emacs/programs.texi (MixedCase Words): Make entries that
5486 belong to Concept Index be indexed with @cindex. (Bug#29888)
5488 2017-12-29 Alan Mackenzie <acm@muc.de>
5490 * lisp/help.el (describe-key): Only (copy-sequence elt) when elt is a list.
5492 2017-12-28 Stefan Monnier <monnier@iro.umontreal.ca>
5494 * src/buffer.c (Frestore_buffer_modified_p): Fix bug#29846
5496 Don't mess with the lock file when inhibit_modification_hooks is set,
5497 just like we do in prepare_to_modify_buffer_1.
5499 2017-12-28 Eli Zaretskii <eliz@gnu.org>
5501 Improve documentation of 'inhibit-modification-hooks' and friends
5503 * src/buffer.c (Fset_buffer_modified_p)
5504 (Frestore_buffer_modified_p): Doc fixes.
5505 * src/insdel.c (syms_of_insdel) <inhibit-modification-hooks>:
5506 Document in the doc string that this variable also inhibits file
5507 locks and active region handling. (Bug#29846)
5509 2017-12-28 David Pathakjee <dpathakjee@gmail.com> (tiny change)
5511 Fix doc string of 'enable-recursive-minibuffers'
5513 * src/minibuf.c (syms_of_minibuf) <enable-recursive-minibuffers>:
5514 Doc fix. (Bug#29873)
5516 2017-12-27 Eli Zaretskii <eliz@gnu.org>
5518 Fix documentation of delsel and of killing text
5520 * doc/emacs/killing.texi (Appending Kills): Make sure the text
5521 with 2 spaces is not broken between 2 lines.
5522 * doc/emacs/mark.texi (Using Region): Remove the sentence about
5523 delsel mode that describes behavior which exists even without
5524 delsel mode turned on. Suggested by Petteri Hintsanen
5525 <petterih@iki.fi> in emacs-manual-bugs@gnu.org.
5527 * lisp/delsel.el (delete-selection-mode): Doc fix.
5529 2017-12-27 Glenn Morris <rgm@gnu.org>
5531 * doc/lispref/strings.texi (Case Conversion):
5532 Use a TeX font that support ligatures.
5534 2017-12-27 Charles A. Roelli <charles@aurox.ch>
5536 * doc/misc/speedbar.texi (Top): Fix grammar.
5538 * lisp/subr.el (with-silent-modifications): Doc fixes.
5540 2017-12-26 Eli Zaretskii <eliz@gnu.org>
5542 Fix curved quotes in printed manual
5544 * doc/emacs/text.texi (Quotation Marks): Fix curved quote
5545 characters in the printed version of the manual.
5547 2017-12-25 Paul Eggert <eggert@cs.ucla.edu>
5549 Say that "gnus-cloud" is a parody name
5551 2017-12-25 Eli Zaretskii <eliz@gnu.org>
5553 More improvements for text.texi
5555 * doc/emacs/text.texi (Outline Motion): Avoid unneeded
5556 repetition. Suggested by Petteri Hintsanen <petterih@iki.fi> in
5557 emacs-manual-bugs@gnu.org.
5559 2017-12-24 Eli Zaretskii <eliz@gnu.org>
5561 Adjudicate review comments for the "Text" chapter of user manual
5563 * doc/emacs/text.texi (Text): Rearrange text for clarity. Add
5564 cross-reference to the Org manual. Make the cross-reference to
5565 Outline Mode appear in online manuals as well (the conditional was
5566 a forgotten remnant from time immemoriam).
5567 (Paragraphs): Add a note that 'paragraph-start' and
5568 'paragraph-separate' should not be anchored.
5569 (Auto Fill): Remove redundant text. Suggested by Petteri
5570 Hintsanen <petterih@iki.fi> in emacs-manual-bugs@gnu.org.
5572 2017-12-24 Andreas Schwab <schwab@linux-m68k.org>
5574 * lisp/url/url-http.el
5575 (url-http-wait-for-headers-change-function): Change message to
5578 2017-12-24 Alan Mackenzie <acm@muc.de>
5580 In C-h k <mouse-n>, alert user to existence of any matching down-mouse-event
5582 , and instruct her to hold the mouse button to display its documentation.
5584 * lisp/help.el (help-downify-mouse-event-type): New function.
5585 (help-read-key-sequence, describe-key): handle double-click-time being nil or
5587 (describe-key): Print out instructions for displaying documentation of
5588 matching mouse down key sequence command when such exists.
5590 2017-12-23 Andreas Schwab <schwab@linux-m68k.org>
5592 * net/eww.el (eww): Handle URLs without host part.
5594 2017-12-23 Alan Mackenzie <acm@muc.de>
5596 Make C-h c/k S-mouse-1 display message for mouse-appearance-menu, etc.
5598 Currently, C-h c/k for S-mouse-1 reports that S-mouse-1 is unbound, ignoring
5599 that S-down-mouse-1 is bound. We fix this by reporting on the "latest" mouse
5600 event of a sequence which is bound.
5602 * lisp/help.el (help-read-key-sequence): Save all encountered mouse events in
5603 a list. Return the latest one which has a binding.
5605 2017-12-23 Eli Zaretskii <eliz@gnu.org>
5607 Avoid crashes when ':eval' deletes our frame
5609 * src/xdisp.c (display_mode_element): Signal an error if
5610 ':eval' somehow deletes the frame whose window we are
5611 redisplaying. (Bug#29726)
5613 2017-12-23 Tak Kunihiro <tkk@misasa.okayama-u.ac.jp>
5615 Fix scrolling up in pixel-scroll.el
5617 * lisp/pixel-scroll.el (pixel-scroll-up): Do not try to move cursor
5618 down when EOB is shown at the top. This function is reverted to
5619 commit 1bda71ec3b11eeb4d06c3da094a3cb21bac18d5c. (bug#29737)
5621 2017-12-23 Eli Zaretskii <eliz@gnu.org>
5623 Fix problems with ligatures in PDF version of ELisp manual
5625 * doc/lispref/strings.texi (Case Conversion): Avoid problems with
5626 ligatures in printed versions of the manual. (Bug#29818)
5628 2017-12-22 Stefan Monnier <monnier@iro.umontreal.ca>
5630 (elisp-flymake-byte-compile): Handle killed buffer in sentinel
5632 * lisp/progmodes/elisp-mode.el (elisp-flymake-byte-compile):
5633 Don't burp if the source-buffer has been killed.
5635 2017-12-22 Glenn Morris <rgm@gnu.org>
5637 Avoid some overfull lines in PDF lispref
5639 * doc/lispref/commands.texi (Reading One Event):
5640 * doc/lispref/display.texi (SVG Images):
5641 * doc/lispref/frames.texi (Size Parameters):
5642 * doc/lispref/syntax.texi (Categories):
5643 * doc/lispref/windows.texi (Frame Layouts with Side Windows):
5644 Avoid overfull lines.
5646 2017-12-22 Glenn Morris <rgm@gnu.org>
5648 Avoid some overfull lines in PDF manual
5650 * doc/emacs/display.texi (Display Custom):
5651 * doc/emacs/search.texi (Other Repeating Search):
5652 * doc/emacs/text.texi (Quotation Marks): Avoid overfull lines.
5654 2017-12-22 Glenn Morris <rgm@gnu.org>
5656 * doc/emacs/arevert-xtra.texi (Auto Reverting the Buffer Menu):
5659 2017-12-22 Eli Zaretskii <eliz@gnu.org>
5661 * lisp/emacs-lisp/inline.el (define-inline): Add a doc string.
5663 2017-12-22 Eli Zaretskii <eliz@gnu.org>
5665 Fix doc string of 'footnote-style-alist'
5667 * lisp/mail/footnote.el (footnote-style-alist): Remove a reference
5668 to non-existing files from doc string. (Bug#29759)
5670 2017-12-22 Eli Zaretskii <eliz@gnu.org>
5672 Improve documentation of selecting windows
5674 * doc/lispref/windows.texi (Basic Windows, Selecting Windows):
5675 Clarify what selecting a window means for keyboard input, and that
5676 input focus may need to be considered when selecting windows on
5678 http://lists.gnu.org/archive/html/emacs-devel/2017-12/msg00372.html
5681 2017-12-22 Eli Zaretskii <eliz@gnu.org>
5683 Improve documentation of records
5685 * doc/lispref/Makefile.in (srcs): Add the forgotten records.texi.
5686 * doc/lispref/records.texi (Records): Recommend that record type
5687 names use package-naming conventions.
5689 * etc/NEWS: Add the naming convention recommendation for record
5692 2017-12-22 Eli Zaretskii <eliz@gnu.org>
5694 * etc/NEWS: Mention the removal of pinentry.el. (Bug#27445)
5696 2017-12-22 Eli Zaretskii <eliz@gnu.org>
5698 Fix interactive spec of 'semantic-ia-show-variants'
5700 * lisp/cedet/semantic/ia.el (semantic-ia-show-variants): Fix the
5701 interactive spec to match the function's expectations. (Bug#29770)
5703 2017-12-22 Eli Zaretskii <eliz@gnu.org>
5705 Fix documentation of 'mouse-drag-and-drop-region' and friends
5707 * doc/emacs/frames.texi (Drag and Drop): Index
5708 'mouse-drag-and-drop-region-cut-when-buffers-differ',
5709 'mouse-drag-and-drop-region-show-tooltip', and
5710 'mouse-drag-and-drop-region-show-cursor'.
5712 * etc/NEWS: Fix the format of the related entries.
5714 2017-12-22 Eli Zaretskii <eliz@gnu.org>
5716 Improve detection of speller version in ispell.el
5718 * lisp/textmodes/ispell.el (ispell-check-version): Accept more
5719 general forms of version numbers for Aspell, Hunspell, and
5720 Enchant, to include various beta and prereleases. (Bug#29801)
5722 2017-12-22 Tak Kunihiro <tkk@misasa.okayama-u.ac.jp>
5724 Document 'mouse-drag-and-drop-region' options and mention them in NEWS
5726 * doc/emacs/frames.texi (Drag and Drop):
5727 * etc/NEWS (times): Document options for
5728 'mouse-drag-and-drop-region' and mention them in NEWS.
5730 2017-12-22 Martin Rudalics <rudalics@gmx.at>
5732 Fix uses of 'nil' and 'non-nil' in manuals and a few more minor issues
5734 * doc/emacs/building.texi (Grep Searching): Fix doc of
5735 'grep-save-buffers'.
5736 (Drag and Drop): Reorder paragraphs. Fix doc of
5737 'mouse-drag-and-drop-region'.
5738 * doc/emacs/frames.texi (Word and Line Mouse):
5739 * doc/emacs/search.texi (Other Repeating Search):
5740 * doc/lispref/compile.texi (Compilation Functions):
5741 * doc/lispref/files.texi (Directory Names):
5742 * doc/lispref/functions.texi (Advising Named Functions):
5743 * doc/lispref/keymaps.texi (Controlling Active Maps):
5744 * doc/lispref/lists.texi (Association Lists):
5745 * doc/lispref/windows.texi (Quitting Windows): Fix uses of
5746 'non-nil' and 'nil'.
5748 2017-12-21 Philipp Stephani <phst@google.com>
5750 Document that mode commands should be idempotent.
5752 * doc/lispref/modes.texi (Major Mode Conventions, Minor Mode
5753 Conventions): Document that the mode commands should be idempotent.
5755 2017-12-21 Alan Mackenzie <acm@muc.de>
5757 Fontify a CPP construct correctly when a comment follows without spaces
5759 Do this by removing a broken optimization in the state cache which put
5760 category text properties on a character between the end of the CPP construct
5761 and the beginning of the comment. This can't work when there's no such
5764 * lisp/progmodes/cc-defs.el (c-cpp-delimiter, c-set-cpp-delimiters)
5765 (c-clear-cpp-delimiters, c-comment-out-cpps, c-with-cpps-commented-out)
5766 (c-with-all-but-one-cpps-commented-out): Remove.
5768 * lisp/progmodes/cc-engine.el (c-no-comment-end-of-macro): Return the comment
5769 start position rather than one character before it.
5770 (c-invalidate-state-cache, c-parse-state): Remove the invocations of
5771 c-with-all-but-one-cpps-commented-out and c-with-cpps-commented-out.
5773 * lisp/progmodes/cc-mode.el (c-neutralize-syntax-in-and-mark-CPP): Rename to
5774 c-neutralize-syntax-in-CPP and remove the bits which applied category
5777 * lisp/progmodes/cc-langs.el (c-before-font-lock-functions): Incorporate the
5778 new name of the function c-neutralize-syntax-in-CPP.
5780 2017-12-21 Eli Zaretskii <eliz@gnu.org>
5782 Prevent infloop in redisplay on TTY frames
5784 * src/xdisp.c (extend_face_to_end_of_line): Avoid infloop when
5785 filling up display margins with the default face's background.
5788 2017-12-21 Alan Mackenzie <acm@muc.de>
5790 Fix loss of documentation face in certain CC Mode doc comment situations
5792 * lisp/progmodes/cc-fonts.el (c-font-lock-doc-comments): Take into account
5793 the possibility of font-lock-comment-delimiter-face. Test rigorously for
5794 "/**" (etc.) being itself inside a literal, rather than just depending on the
5795 face of the previous character.
5797 2017-12-21 Daiki Ueno <ueno@gnu.org>
5801 * lisp/epg.el (epg--start): Remove the use of pinentry.el.
5802 * lisp/net/pinentry.el: Remove (bug#27445).
5804 2017-12-21 Ted Zlatanov <tzz@lifelogs.com>
5806 Special-case %DUMBFW for GnuTLS between 3.2.5 and 3.5.1
5808 * src/gnutls.c: Introduce HAVE_GNUTLS_EXT__DUMBFW for GnuTLS >= 3.2.5.
5809 (Fgnutls_available_p): Use it.
5811 2017-12-21 Andy Moreton <andrewjmoreton@gmail.com>
5813 Work around GnuTLS version issues with %DUMBFW (tiny change)
5815 * src/gnutls.c: Introduce HAVE_GNUTLS_EXT_GET_NAME and use it.
5816 (init_gnutls_functions): Use it.
5817 (Fgnutls_available_p): Use it (Bug#25061). Fix Vlibrary_cache bug.
5819 2017-12-20 Dmitry Gutov <dgutov@yandex.ru>
5821 Merge branch 'widen-less' into emacs-26
5823 2017-12-20 Glenn Morris <rgm@gnu.org>
5825 * lisp/erc/erc.el (erc-shorten-server-name): Silence compiler warning.
5827 2017-12-20 Glenn Morris <rgm@gnu.org>
5829 Fix some more aliases to user options
5831 * lisp/cus-edit.el (custom-mode-hook):
5832 * lisp/erc/erc.el (erc-default-coding-system):
5833 * lisp/progmodes/python.el (python-indent, python-guess-indent)
5834 (python-shell-virtualenv-path)
5835 (python-shell-completion-module-string-code)
5836 (python-shell-completion-pdb-string-code, python-use-skeletons):
5837 Define aliases to user options before the options are defined.
5839 2017-12-20 Glenn Morris <rgm@gnu.org>
5841 Fix some flymake aliases
5843 * lisp/progmodes/flymake-proc.el (flymake-xml-program)
5844 (flymake-compilation-prevents-syntax-check, flymake-master-file-dirs)
5845 (flymake-master-file-count-limit, flymake-allowed-file-name-masks):
5846 * lisp/progmodes/flymake.el (flymake-start-syntax-check-on-find-file):
5847 Define aliases to user options before the options are defined.
5849 2017-12-20 Glenn Morris <rgm@gnu.org>
5851 Unbreak a fileio test on non-Mac OS X systems
5853 * test/src/fileio-tests.el (fileio-tests--symlink-failure):
5854 Don't use an undefined coding system.
5856 2017-12-20 Robert Pluim <rpluim@gmail.com>
5858 Fix updating scrollbar sizes when scaling is in effect
5860 * src/gtkutil.c (xg_update_scrollbar_pos): Update width of
5861 scrollbar when scaling is in effect.
5862 (xg_update_horizontal_scrollbar_pos): Update scrollbar size
5863 when scaling is in effect.
5865 2017-12-20 Dmitry Gutov <dgutov@yandex.ru>
5867 Widen in indent-for-tab-command in the normal case, too
5869 Fixing this obvious omission.
5870 * lisp/indent.el (indent--funcall-widened): New function.
5871 (indent-for-tab-command): Use it.
5873 2017-12-19 Ted Zlatanov <tzz@lifelogs.com>
5875 Collect GnuTLS extensions and use them to set %DUMBFW if supported
5877 * lisp/net/gnutls.el (gnutls-boot-parameters): Use it to set %DUMBFW
5878 only when it's supported as "ClientHello Padding" (Bug#25061).
5880 * src/gnutls.c (Fgnutls_available_p): Get extension names and
5881 put them in the GnuTLS capabilities, using a hard-coded limit
5882 of 100 since GnuTLS MAX_EXT_TYPES is not exported.
5884 2017-12-18 Stefan Monnier <monnier@iro.umontreal.ca>
5886 * test/lisp/emacs-lisp/derived-tests.el: Fix copy&paste leftovers
5888 2017-12-18 Stefan Monnier <monnier@iro.umontreal.ca>
5890 * lisp/subr.el (delayed-after-hook-functions): Rename from ...-forms
5892 (run-mode-hooks): `funcall` the functions instead of `eval`ing the forms.
5893 * lisp/emacs-lisp/derived.el (define-derived-mode): Push functions
5894 rather than forms (bug#29679).
5896 2017-12-18 Katsumi Yamaoka <yamaoka@jpl.org>
5898 * lisp/net/shr.el (shr-string-pixel-width): Return pixel-width,
5899 not position (bug#29734).
5901 2017-12-18 Dmitry Gutov <dgutov@yandex.ru>
5903 Replace the mention of c-indent-defun with js-indent-line
5905 * doc/lispref/text.texi (Mode-Specific Indent):
5906 Avoid mentioning c-indent-defun in the context of multi-mode
5909 2017-12-17 Charles A. Roelli <charles@aurox.ch>
5913 * lisp/progmodes/python.el (python-shell-accept-process-output):
5914 (python-shell-comint-end-of-output-p):
5915 (python-shell-first-prompt-hook):
5916 (python-info-beginning-of-backslash): Doc fixes.
5918 2017-12-17 Tak Kunihiro <tkk@misasa.okayama-u.ac.jp>
5920 Make 'mouse-drag-and-drop-region' more robust and customizable
5923 (mouse-drag-and-drop-region-cut-when-buffers-differ): New option
5924 to permit 'mouse-drag-and-drop-region' to cut text also when source
5925 and destination buffers differ.
5926 (mouse-drag-and-drop-region-show-tooltip): New option to toggle
5927 display of tooltip during mouse dragging on graphic displays.
5928 (mouse-drag-and-drop-region-show-cursor): New option to toggle
5929 moving point with mouse cursor during mouse dragging of region.
5930 (mouse-drag-and-drop-region): New face to highlight original
5931 text while dragging.
5932 (mouse-drag-and-drop-region): Make use of new options and face.
5933 Ignore errors during tracking.
5935 2017-12-17 Oscar Fuentes <ofv@wanadoo.es>
5937 Backport: Don't compare arguments that can be nil (Bug#28039)
5939 copy-region-as-kill can be called passing nil as `beg' and
5940 `end'. Magit does that, which caused an error when this advice was in
5943 * lisp/ses.el (ses--advice-copy-region-as-kill): avoid comparison
5944 unless `beg' and `end' are non-nil.
5946 2017-12-17 Noam Postavsky <npostavs@gmail.com>
5948 Don't mess up syntax-ppss cache in electric-pair (Bug#29710)
5950 In Emacs 25 and above, calling `scan-sexps', `parse-partial-sexp', or
5951 similar may update the syntax-ppss cache if
5952 `parse-sexp-lookup-properties' is non-nil. Therefore, when calling
5953 any of these functions with a different than normal syntax-table, the
5954 cache must be cleaned afterwards.
5955 * lisp/elec-pair.el (electric-pair--with-uncached-syntax): New macro.
5956 (electric-pair--syntax-ppss, electric-pair--balance-info): Use it.
5958 2017-12-17 Glenn Morris <rgm@gnu.org>
5960 * etc/emacs.appdata.xml: Update file format.
5962 2017-12-16 Alan Third <alan@idiocy.org>
5964 Use utf-8-hfs-unix on macOS (Bug#29712)
5966 This is a quick fix for the Emacs 26 release. Do not merge to master.
5968 * test/src/fileio-tests.el (fileio-tests--symlink-failure): Override
5969 file-name-coding-system to utf-8-hfs-unix to prevent test failure.
5971 2017-12-16 Alan Mackenzie <acm@muc.de>
5973 * lisp/progmodes/cc-defs.el (c-version): Update to 5.33.1.
5975 2017-12-16 Michael Albinus <michael.albinus@gmx.de>
5977 Improve fix for Bug#29712
5979 * test/lisp/net/tramp-tests.el
5980 (tramp-test32-environment-variables-and-port-numbers):
5981 Adapt check for systems which do not support "echo -n". (Bug#29712)
5983 2017-12-16 Eli Zaretskii <eliz@gnu.org>
5985 * doc/lispref/sequences.texi (Sequence Functions): Improve indexing.
5987 2017-12-16 Eli Zaretskii <eliz@gnu.org>
5989 Avoid reordering of output in 'shr-insert-document'
5991 * lisp/net/shr.el (shr-string-pixel-width): Preserve point across
5992 shr-pixel-column invocations. (Bug#29734)
5994 2017-12-16 Eli Zaretskii <eliz@gnu.org>
5996 Improve documentation of 'invisible-p'
5998 * doc/lispref/display.texi (Invisible Text): Document the return
5999 value of 'invisible-p'.
6001 * src/xdisp.c (Finvisible_p): Rename the argument POS. Doc fix.
6004 2017-12-16 Martin Rudalics <rudalics@gmx.at>
6006 Remove one more check that Vframe_list is non-nil
6008 * src/dispnew.c (check_glyph_memory): Remove no-longer-needed
6009 check that Vframe_list is non-nil, as FOR_EACH_FRAME no longer
6012 2017-12-16 Simen Heggestøyl <simenheg@gmail.com>
6014 Fix off-by-one error in 'css--hex-color'
6016 * lisp/textmodes/css-mode.el (css--hex-color): Fix off-by-one error.
6018 * test/lisp/textmodes/css-mode-tests.el (css-test-hex-color): New test
6019 for 'css--hex-color'.
6021 2017-12-16 Aaron Jensen <aaronjensen@gmail.com>
6023 Save and restore text-pixel height and width of frames (Bug#28442)
6025 * lisp/frameset.el (frameset--record-relationships): Record
6026 text-pixel-height and text-pixel-width of frame.
6027 (frameset--restore-frame): Restore text-pixel-height and
6028 text-pixel-width of frame if available. (Bug#28442)
6030 2017-12-16 Noam Postavsky <npostavs@gmail.com>
6032 Partially revert "Mention new strictness for &optional, &rest..."
6034 The changes to cl argument parsing are not backwards compatible, and
6035 cause inconvenience when writing macros (e.g., instead of doing '&aux
6036 ,@auxargs', some more complicated conditionals would be required).
6037 The `cl-defstruct' macro makes use of this convenience when defining
6038 empty structs (Bug#29728).
6039 * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
6040 (cl--do-&aux, cl--do-arglist): Undo strict checking of &rest, &key,
6042 * test/lisp/emacs-lisp/cl-macs-tests.el (cl-macs-bad-arglist): Remove
6045 2017-12-15 Glenn Morris <rgm@gnu.org>
6047 * lisp/vc/smerge-mode.el (smerge-refine): Respect font-lock-mode.
6049 * lisp/vc/smerge-mode.el (smerge-refine): Replace obsolete alias.
6051 2017-12-15 Paul Eggert <eggert@cs.ucla.edu>
6053 FOR_EACH_FRAME no longer assumes frame-list
6055 This cleans up a recent fix related to Bug#29661.
6056 Suggested by Stefan Monnier in:
6057 https://lists.gnu.org/r/emacs-devel/2017-12/msg00544.html
6058 * src/frame.c (next_frame, prev_frame, delete_frame):
6059 Restore debugging checks that Vframe_list is non-nil,
6060 as FOR_EACH_FRAME no longer has these checks.
6061 (delete_frame): Remove no-longer-needed checks that Vframe_list is
6062 non-nil, as FOR_EACH_FRAME no longer assumes that.
6063 * src/frame.h (FOR_EACH_FRAME): Do not assume Vframe_list is non-nil.
6065 2017-12-15 Eli Zaretskii <eliz@gnu.org>
6067 * src/font.c (Ffont_info): Doc fix. (Bug#29682)
6069 2017-12-15 Basil L. Contovounesios <contovob@tcd.ie>
6071 Modernise message.el face spec syntax
6073 * lisp/gnus/message.el (message-header-to, message-header-cc)
6074 (message-header-subject, message-header-newsgroups)
6075 (message-header-other, message-header-name, message-header-xheader)
6076 (message-separator, message-cited-text, message-mml):
6077 Use (DISPLAY . PLIST) face spec syntax as recommended in
6078 `(elisp) Defining Faces'. (Bug#29405)
6080 2017-12-15 Basil L. Contovounesios <contovob@tcd.ie>
6082 Update message.el obsolete face aliases
6084 * lisp/gnus/message.el: (message-header-to, message-header-cc)
6085 (message-header-subject, message-header-newsgroups)
6086 (message-header-other, message-header-name, message-header-xheader)
6087 (message-separator, message-cited-text, message-mml):
6088 Use define-obsolete-face-alias. (Bug#29405)
6090 2017-12-15 Eli Zaretskii <eliz@gnu.org>
6092 Improve documentation of TERM environment variable
6094 * doc/emacs/trouble.texi (Checklist):
6095 * doc/emacs/building.texi (Compilation Shell):
6096 * doc/emacs/misc.texi (Shell Options): Improve indexing of TERM.
6097 * doc/emacs/building.texi (Compilation Shell): Mention
6098 'comint-terminfo-terminal' in conjunction with the TERM value.
6100 2017-12-15 Allen Li <darkfeline@felesatra.moe>
6102 Add option to configure comint TERM
6104 * lisp/comint.el (comint-terminfo-terminal): New defcustom.
6105 (comint-term-environment): New function for setting terminal options
6106 (comint-exec-1): Use comint-term-environment. (Bug#29583)
6107 * lisp/progmodes/compile.el (compilation-start): Use comint-term-environment.
6110 * doc/emacs/misc.texi (Shell Options): Document the new option.
6112 2017-12-15 Eli Zaretskii <eliz@gnu.org>
6114 Better support utf-8-with-signature and utf-8-hfs in XML/HTML
6116 * lisp/international/mule.el (sgml-xml-auto-coding-function):
6117 Support UTF-8 with BOM and utf-8-hfs as variants of UTF-8, and
6118 obey the buffer's encoding if it is one of these variants, instead
6119 of re-encoding in UTF-8 proper. (Bug#20623)
6121 2017-12-15 Eli Zaretskii <eliz@gnu.org>
6123 * lisp/menu-bar.el (menu-bar-mode): Doc fix.
6125 2017-12-15 Michael Albinus <michael.albinus@gmx.de>
6127 Fix Bug#29712 in tramp-tests.el
6129 * test/lisp/net/tramp-tests.el
6130 (tramp-test32-environment-variables-and-port-numbers):
6131 Skip for macOS. (Bug#29712)
6133 2017-12-15 Martin Rudalics <rudalics@gmx.at>
6135 Don't run FOR_EACH_FRAME when there's no frame left (Bug#29961)
6137 This does not fix Bug#29961 but avoids that Emacs segfaults when
6138 trying to shut down because it lost connection to the X server.
6140 * src/dispnew.c (check_glyph_memory):
6141 * src/frame.c (delete_frame): Don't run FOR_EACH_FRAME when
6142 there's no frame left (Bug#29961).
6144 2017-12-15 Glenn Morris <rgm@gnu.org>
6146 * lisp/textmodes/tex-mode.el: Ensure uncompiled file is loadable.
6148 2017-12-15 Ted Zlatanov <tzz@lifelogs.com>
6150 Remember password change for IMAP in Gnus (Bug#29692)
6152 Reported by Trey Jackson <trey_jackson@mentor.com>.
6154 * lisp/gnus/mail-source.el (mail-source-fetch-imap): Check
6155 `mail-source-password-cache' for password.
6157 2017-12-15 Ted Zlatanov <tzz@lifelogs.com>
6159 Add %DUMBFW to the default GnuTLS priority strings
6161 * lisp/net/gnutls.el (gnutls-boot-parameters): Add %DUMBFW to
6162 the default priority strings (Bug#25061).
6164 * etc/NEWS: Mention it.
6166 * doc/misc/emacs-gnutls.texi (Help For Users): Point to the
6167 GnuTLS priority string documentation URL.
6169 2017-12-15 Glenn Morris <rgm@gnu.org>
6171 Small fixes prompted by make check-declare
6173 * lisp/frame.el (x-focus-frame): Update declaration.
6174 (ns-mouse-absolute-pixel-position): Fix declaration.
6175 * lisp/vc/diff-mode.el (diff-refine-hunk):
6176 Use smerge-refine-regions rather than obsolete alias.
6177 (smerge-refine-subst): Remove declaration, no longer relevant.
6179 2017-12-15 Glenn Morris <rgm@gnu.org>
6181 Fix some custom groups
6183 * lisp/vc/vc-hooks.el (vc-faces): Rename from vc-state-faces.
6184 * lisp/vc/cvs-status.el (cvs-status): Unused, remove.
6186 2017-12-14 Alan Mackenzie <acm@muc.de>
6188 Fix fontification of first declaration within a C++ lambda form.
6190 * lisp/progmodes/cc-engine.el (c-looking-at-or-maybe-in-bracelist): Cease
6191 spuriously recognizing the braces of a lambda form as a brace list when there
6192 is an "=" preceding the introductory brackets.
6194 2017-12-14 Charles A. Roelli <charles@aurox.ch>
6196 * src/data.c (Fadd_variable_watcher): Doc fix.
6198 2017-12-14 Alan Mackenzie <acm@muc.de>
6200 Fix misfontification of C++ member initialization list after "throw"
6202 * lisp/progmodes/cc-engine.el (c-forward-type): Stop recognizing a "type"
6203 starting with "throw", by using c-opt-type-modifier-prefix-key.
6205 * lisp/progmodes/cc-langs.el (c-type-modifier-prefix-kwds): New lang const
6206 which, in C++, doesn't contain "throw", otherwise like c-type-modifier-kwds.
6207 (c-opt-type-modifier-prefix-key): New lang const and var, a regexp matching
6208 any keyword in the previous lang const.
6210 2017-12-14 Dmitry Gutov <dgutov@yandex.ru>
6212 Consolidate 'widen' calls
6214 * lisp/progmodes/prog-mode.el (prog-indentation-context):
6215 Un-document all elements but the first.
6216 (prog-widen): Remove.
6217 (http://lists.gnu.org/archive/html/emacs-devel/2017-12/msg00321.html)
6219 * doc/lispref/text.texi (Mode-Specific Indent): Update.
6221 * lisp/progmodes/ruby-mode.el (ruby-calculate-indent):
6224 * lisp/progmodes/python.el
6225 (python-indent-guess-indent-offset)
6226 (python-info-current-defun): Replace prog-widen with widen;
6227 these functions are not called during indentation.
6228 (python-indent-context)
6229 (python-indent--calculate-indentation)
6230 (python-info-dedenter-opening-block-message)
6231 (python-info-line-ends-backslash-p)
6232 (python-info-beginning-of-backslash)
6233 (python-info-continuation-line-p)
6234 (python-info-current-defun): Remove 'widen' calls.
6236 * lisp/indent.el (indent-according-to-mode)
6237 (indent-for-tab-command, indent-region): Move them here.
6239 * lisp/textmodes/mhtml-mode.el (mhtml-indent-line):
6240 Bind prog-indentation-context to one-element list.
6242 2017-12-14 Martin Rudalics <rudalics@gmx.at>
6244 Fix doc-string of Fbuffer_list
6246 * src/buffer.c (Fbuffer_list): Fix doc-string.
6248 2017-12-14 Basil L. Contovounesios <contovob@tcd.ie>
6250 Don't raise an extraneous frame (bug#29696)
6252 * lisp/gnus/gnus-art.el (gnus-article-read-summary-keys): Lookup
6253 summary buffer keys from article buffer without affecting window
6254 configuration (bug#29696).
6256 2017-12-13 Noam Postavsky <npostavs@gmail.com>
6258 Mention new strictness for &optional, &rest in arglists (Bug#29165)
6260 * etc/NEWS: Explain that '&optional' not followed by a variable is now
6262 * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda, cl--do-&aux)
6263 (cl--do-arglist): Also reject '&optional', '&rest', or '&aux' not
6264 followed by a variable for consistency.
6265 * test/lisp/emacs-lisp/cl-macs-tests.el (cl-macs-bad-arglist): New
6268 2017-12-13 Alan Mackenzie <acm@muc.de>
6270 Don't misfontify "foo ()" inside C++ initialization parentheses as a type
6272 Also recognize and handle function names introduced by "extern" inside a
6275 * lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): Add a new element to
6276 the result list which is t when our declaration is, or is to be treated as,
6279 * lisp/progmodes/cc-fonts.el (c-get-fontification-context): Detect being
6280 inside a C++ uniform initialization and return (not-decl nil) for this case.
6281 (c-font-lock-declarations): Use the new element 4 of the result of
6282 c-forward-decl-or-cast-1.
6284 * lisp/progmodes/cc-langs.el (c-make-top-level-kwds, c-make-top-level-key):
6285 New lang consts/vars.
6287 2017-12-13 Glenn Morris <rgm@gnu.org>
6289 Fixes for defcustoms, prompted by cus-test-opts
6291 * lisp/files.el (save-some-buffers-default-predicate):
6292 * lisp/time.el (display-time-world-list):
6293 * lisp/gnus/gnus-art.el (gnus-article-show-cursor):
6294 * lisp/progmodes/cc-vars.el (c-noise-macro-with-parens-names):
6295 * lisp/progmodes/verilog-mode.el (verilog-auto-wire-type):
6296 * lisp/textmodes/less-css-mode.el (less-css-output-directory)
6297 (less-css-output-file-name, less-css-input-file-name):
6298 * lisp/vc/emerge.el (emerge-metachars):
6299 * lisp/vc/vc-hg.el (vc-hg-symbolic-revision-styles):
6301 * lisp/net/newst-backend.el (newsticker-url-list-defaults): Fix url.
6303 2017-12-13 Glenn Morris <rgm@gnu.org>
6305 * lisp/net/newst-backend.el (newsticker--raw-url-list-defaults):
6308 * lisp/htmlfontify.el (hfy-which-etags): Fix it.
6310 2017-12-13 Glenn Morris <rgm@gnu.org>
6312 Add missing :version tags revealed by cusver-check
6314 * lisp/comint.el (comint-move-point-for-matching-input):
6315 * lisp/epa.el (epa-replace-original-text):
6316 * lisp/image-dired.el (image-dired-cmd-optipng-program)
6317 (image-dired-cmd-optipng-options):
6318 * lisp/emacs-lisp/bytecomp.el (byte-compile-cond-use-jump-table):
6319 * lisp/gnus/gnus-cloud.el (gnus-cloud-storage-method)
6320 (gnus-cloud-interactive):
6321 * lisp/net/mailcap.el (mailcap-user-mime-data):
6322 * lisp/progmodes/cc-vars.el (c-asymmetry-fontification-flag)
6323 (c-noise-macro-names, c-noise-macro-with-parens-names):
6324 * lisp/progmodes/flymake.el (flymake-start-on-flymake-mode)
6325 (flymake-wrap-around):
6326 * lisp/progmodes/grep.el (grep-use-null-filename-separator):
6327 * lisp/progmodes/js.el (js-indent-align-list-continuation):
6328 * lisp/progmodes/perl-mode.el (perl-flymake-command):
6329 * lisp/progmodes/python.el (python-flymake-command)
6330 (python-flymake-command-output-pattern, python-flymake-msg-alist):
6331 * lisp/progmodes/ruby-mode.el (ruby-flymake-use-rubocop-if-available)
6332 (ruby-rubocop-config):
6333 * lisp/textmodes/less-css-mode.el (less-css):
6334 * lisp/textmodes/tex-mode.el (tex-chktex-program)
6335 (tex-chktex-extra-flags): Add missing :version tags.
6337 2017-12-13 Glenn Morris <rgm@gnu.org>
6339 Escape column-zero doc parens
6341 * lisp/htmlfontify.el (hfy-display-class):
6342 * lisp/calendar/icalendar.el (icalendar--do-create-ical-alarm):
6343 * lisp/net/shr.el (shr-external-rendering-functions):
6344 * lisp/progmodes/cc-vars.el (c-asymmetry-fontification-flag):
6345 * lisp/textmodes/tildify.el (tildify-tildify):
6346 Escape column-zero doc parens. A shame bug#21871 remains unfixed.
6348 2017-12-12 Alan Third <alan@idiocy.org>
6350 Remove ObjC blocks (Bug#23753)
6352 * src/macfont.m (macfont_get_glyph_for_character):
6353 (mac_font_get_glyphs_for_variants): Inline Objective-C blocks.
6355 (cherry picked from commit 4590f1d768adbb2120a2b02c614f7ed3b21a4a3e)
6357 2017-12-12 Eli Zaretskii <eliz@gnu.org>
6359 Import the latest IVD_Sequences.txt
6361 * admin/unidata/IVD_Sequences.txt: New version from
6362 http://www.unicode.org/ivd/, the 2017-12-12 version of the Unicode
6363 Ideographic Variation Database.
6365 * src/macuvs.h: Regenerated.
6367 2017-12-11 Max <mu@magi.net.ru> (tiny change)
6369 Fix dired-do-compress when tar doesn't default to stdin (Bug#29094)
6371 * lisp/dired-aux.el (dired-compress-file-suffixes): Use argument '-f-'
6372 to write to stdout rather than relying on the default (the choice of
6373 default is decided when compiling tar, BSD systems usually set it to a
6374 tape drive). Drop '-v', since the output is not used anywhere.
6376 2017-12-11 Noam Postavsky <npostavs@gmail.com>
6378 Suppress warnings during elisp completion macroexpansion
6380 Errors are already suppressed, therefore it is logical to suppress
6381 warnings as well. Some macros (e.g., use-package) may produce
6382 warnings when given the `elisp--witness--lisp' symbol.
6383 * lisp/progmodes/elisp-mode.el (elisp--local-variables): Let-bind
6384 warning-minimum-log-level to :emergency.
6386 2017-12-11 Chunyang Xu <xuchunyang.me@gmail.com>
6388 * lisp/progmodes/verilog-mode.el (verilog-mode): Fix typo (Bug#24410).
6390 2017-12-11 Michael Albinus <michael.albinus@gmx.de>
6392 Make tramp-interrupt-process more robust
6394 * lisp/net/tramp.el (tramp-interrupt-process): Fall back to
6395 the default implementation if there's no success.
6397 2017-12-11 Katsumi Yamaoka <yamaoka@jpl.org>
6399 Make quail-input-method work when inhibit-read-only is non-nil (bug#29504)
6401 * lisp/international/quail.el (quail-input-method): Work not only
6402 when buffer-read-only is nil but also when inhibit-read-only is non-nil
6405 2017-12-10 Eli Zaretskii <eliz@gnu.org>
6407 Fix 'fontset-name-p'
6409 * lisp/international/fontset.el (fontset-name-p): Make the
6410 function work with full fontset names and fontset alias names.
6412 2017-12-10 Eli Zaretskii <eliz@gnu.org>
6414 Fix fontset documentation inconsistencies for bug#29630
6416 * doc/lispref/display.texi (Face Attributes): Don't document
6417 :family as accepting a fontset. Document that :font accepts a
6420 * lisp/faces.el (set-face-attribute): Doc fix.
6422 2017-12-10 Martin Rudalics <rudalics@gmx.at>
6424 Remove sentence from child frames section in Elisp manual
6426 * doc/lispref/frames.texi (Child Frames): Remove one sentence.
6427 Suggested by Bob Weiner <rsw@gnu.org>.
6429 2017-12-10 Eli Zaretskii <eliz@gnu.org>
6431 Avoid crashes in 'font-at' after 'set-fontset-font'
6433 * src/fontset.c (free_realized_fontsets): Call
6434 recompute_basic_faces, so that the basic faces are available to
6435 any Lisp that calls this function, e.g. via set-fontset-font.
6438 2017-12-10 Ted Zlatanov <tzz@lifelogs.com>
6440 * lisp/files-x.el (connection-local-set-profile-variables): Fix docstring.
6442 2017-12-09 Ted Zlatanov <tzz@lifelogs.com>
6444 Add /etc/ssl/cert.pem to gnutls-trustfiles for macOS
6446 Problem reported by Mark Ferlatte (Bug#28603).
6447 * lisp/net/gnutls.el (gnutls-trustfiles): Add /etc/ssl/cert.pem for macOS.
6449 2017-12-09 Eli Zaretskii <eliz@gnu.org>
6451 Fix tool-tip display when display margins are non-zero by default
6453 * src/buffer.h (bset_left_margin_cols, bset_right_margin_cols):
6454 New inline functions.
6455 * src/xfns.c (Fx_show_tip):
6456 * src/w32fns.c (Fx_show_tip): Force display margins of the tip
6457 buffer to zero, as it will be displayed in a pseudo-window, which
6458 doesn't support display margins. (Bug#29627)
6460 2017-12-09 Eric Abrahamsen <eric@ericabrahamsen.net>
6462 Handle hash tables and vectors when reading/writing EIEIO objects
6464 * lisp/emacs-lisp/eieio.el (eieio-override-prin1): EIEIO objects
6465 printed with `prin1' can no longer be read with `read'. Make sure
6466 they are printed with object-write instead, even when they're inside
6467 hash tables and vectors.
6468 * lisp/emacs-lisp/eieio-base.el (eieio-persistent-validate/fix-slot-value):
6469 Check for written representations of objects inside hash tables and
6470 vectors, and reconstruct them.
6472 2017-12-09 Eli Zaretskii <eliz@gnu.org>
6474 Improve interactive debugging commands in xdisp.c
6476 * src/xdisp.c (Fdump_glyph_row, Fdump_tool_bar_row): Allow to
6477 specify ROW via prefix argument. Fix the doc strings.
6479 2017-12-09 Eli Zaretskii <eliz@gnu.org>
6481 Fix calculation of continuation_pixel_width in display engine
6483 * src/xdisp.c (display_line): Remove incorrect increment of
6484 it->continuation_pixel_width when word-wrap is used. (Bug#29594)
6486 2017-12-09 Eli Zaretskii <eliz@gnu.org>
6488 Improve documentation of 'save-abbrevs'.
6490 * doc/emacs/abbrevs.texi (Saving Abbrevs): Document the 'silently'
6491 value of 'save-abbrevs'. Suggested by Alex Branham
6492 <alex.branham@gmail.com> in emacs-manual-bugs@gnu.org.
6494 2017-12-09 Eli Zaretskii <eliz@gnu.org>
6496 Improve documentation of Dired
6498 * doc/emacs/dired.texi (Dired): Mention that the Dired buffer can
6499 be made modifiable in Wdired. Suggested by Alex Branham
6500 <alex.branham@gmail.com> in emacs-manual-bugs@gnu.org.
6502 2017-12-09 Eli Zaretskii <eliz@gnu.org>
6504 * lisp/bookmark.el (bookmark-alist): Doc fix. (Bug#29551)
6506 2017-12-08 Michael Albinus <michael.albinus@gmx.de>
6510 * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file):
6511 Fix a bug when renaming.
6513 * test/lisp/net/tramp-tests.el (tramp-test21-file-links): Extend test.
6514 (tramp-test42-delay-load, tramp-test42-remote-load-path):
6515 Skip unless Emacs >= 26.
6517 2017-12-08 Glenn Morris <rgm@gnu.org>
6519 * lisp/help-mode.el (help-function-def):
6520 Allow help-make-xrefs to call with one argument. (Bug#29611)
6522 2017-12-07 Martin Rudalics <rudalics@gmx.at>
6524 Fix doc-string of 'display-buffer-in-side-window'
6526 * lisp/window.el (display-buffer-in-side-window): In doc-string
6527 clarify why the window returned gets dedicated to its buffer.
6529 2017-12-06 Michael Albinus <michael.albinus@gmx.de>
6533 * lisp/files.el (file-name-non-special):
6534 Inhibit `file-name-handler-alist' only for some operations.
6535 Add missing operations. (Bug#29579)
6537 * lisp/net/tramp-compat.el (tramp-compat-file-name-quote):
6538 Do not quote if it is quoted already.
6540 * lisp/net/tramp-smb.el (tramp-smb-handle-insert-directory):
6541 Use `copy-tree' but `copy-sequence'.
6543 * lisp/net/tramp.el (tramp-handle-file-truename): Handle several
6544 trailing slashes correctly.
6546 * test/lisp/net/tramp-tests.el (tramp-test11-copy-file)
6547 (tramp-test12-rename-file, tramp-test24-file-acl)
6548 (tramp-test25-file-selinux, tramp--test-check-files):
6549 Handle also quoted file names.
6550 (tramp-test21-file-links): Fix file name quoting test.
6551 (tramp-test24-file-acl): Be more robust for "smb" method.
6552 (tramp-test35-make-auto-save-file-name): Enable hidden test cases.
6554 2017-12-06 Rasmus <rasmus@gmx.us>
6556 Backport: Update Org to v9.1.4
6558 Please note this is a bugfix release. See etc/ORG-NEWS for details.
6560 (cherry picked from commit 567b5efe1f338c10c574758fb968915c5c34c909)
6562 2017-12-06 Martin Rudalics <rudalics@gmx.at>
6564 In windows.texi mention special splitting behavior of side and atomic windows
6566 * doc/lispref/windows.texi (Splitting Windows): Add note about
6567 and links to side and atomic windows.
6569 2017-12-05 Katsumi Yamaoka <yamaoka@jpl.org>
6571 * lisp/gnus/gnus-group.el (gnus-group-mode-map):
6572 Bind [follow-link] to mouse-face, not 'mouse-face (bug#29538).
6574 2017-12-04 Eli Zaretskii <eliz@gnu.org>
6576 Avoid compilation warning in xterm.c
6578 * src/xterm.c (x_draw_underwave): Move the declaration of
6579 'thickness' to the non-USE_CAIRO branch, to avoid compiler
6580 warning. (Bug#29567)
6582 2017-12-04 Eli Zaretskii <eliz@gnu.org>
6584 * README: Document all the top-level directories. (Bug#29558)
6586 2017-12-04 Glenn Morris <rgm@gnu.org>
6588 Don't enable erc modules on simply loading erc.el
6590 * lisp/erc/erc.el (erc-modules): Use default :initialize. (Bug#29417)
6592 2017-12-03 Lars Ingebrigtsen <larsi@gnus.org>
6594 Allow shr to use data: URLs without encoding
6596 * lisp/net/shr.el (shr-image-from-data): Don't bug out on
6597 image data: URLs that have no base64 encoding like
6598 (shr-image-from-data
6599 "text/html,%3Ch1%3EHello%2C%20World!%3C%2Fh1%3E").
6601 2017-12-03 E. Choroba <choroba@matfyz.cz> (tiny change)
6603 Don't add newlines in minibuffer history
6605 * lisp/simple.el (next-line-or-history-element): Bind
6606 next-line-add-newlines to nil. (Bug#29529)
6608 2017-12-03 Syohei YOSHIDA <syohex@gmail.com>
6610 modhelp.py: Support Python 3 (Bug#24954)
6612 * modules/modhelp.py: 'print' statement was removed in Python
6613 3. 'print' function should be used instead of 'print' statement.
6615 2017-12-03 Noam Postavsky <npostavs@gmail.com>
6617 Use forward slashes for python w32 config example (Bug#21656)
6619 * lisp/progmodes/python.el: Use forward slashes for Windows path
6620 example, it doesn't require doubling of slashes which reduces chances
6623 2017-12-03 Paul Eggert <eggert@cs.ucla.edu>
6625 Fix bug in i18n/l10n optimization
6627 This fixes a off-by-one buffer overrun bug introduced in
6628 2017-06-04T15:39:37Z!eggert@cs.ucla.edu. Problem uncovered by an
6629 experimental version of Emacs built with -fcheck-pointer-bounds
6630 and running on Intel MPX hardware.
6631 * src/editfns.c (styled_format): Avoid overrunning internal buffers.
6633 2017-12-02 Noam Postavsky <npostavs@gmail.com>
6635 Let autoload-compute-prefix be set file-locally (Bug#29471)
6637 * lisp/emacs-lisp/autoload.el (autoload-compute-prefixes): Mark
6638 boolean values as safe.
6640 2017-12-02 Noam Postavsky <npostavs@gmail.com>
6642 Improve edit-kbd-macro prompting in case of remapped keys (Bug#29399)
6644 * lisp/edmacro.el (edit-kbd-macro): Use substitute-command-keys to
6645 present the current bindings in the prompt. Check the the
6646 non-remapped binding of the entered key sequence as well.
6648 2017-12-02 Lele Gaifax <lele@metapensiero.it>
6650 Add tests on electric-indentation and Python multiline strings (Bug#29305)
6652 * test/lisp/progmodes/python-tests.el
6653 (python-indent-electric-comma-inside-multiline-string,
6654 python-indent-electric-comma-after-multiline-string): New tests.
6656 2017-12-02 Noam Postavsky <npostavs@gmail.com>
6658 Disable electric indent for python strings (Bug#29305)
6660 * lisp/progmodes/python.el (python-indent-post-self-insert-function):
6661 Do nothing when point or beginning of line is in string.
6663 2017-12-02 Yuuki Harano <masm-emacs@masm11.ddo.jp> (tiny change)
6665 Fix buffer overflow in fontname conversion (Bug#29523)
6667 * src/nsterm.m (ns_xlfd_to_fontname): Fix sscanf format.
6669 2017-12-02 Eli Zaretskii <eliz@gnu.org>
6671 Fix byte compilation of files with leading directories
6673 * lisp/emacs-lisp/bytecomp.el (byte-compile-file): Pass basename
6674 of target-file to make-temp-file, in case target-file includes a
6675 leading directory that might not exist under TMPDIR. See
6676 http://lists.gnu.org/archive/html/emacs-devel/2017-11/msg00680.html
6679 2017-12-02 Michael Albinus <michael.albinus@gmx.de>
6681 * lisp/files.el (make-backup-file-name-1): Fix scoping error.
6683 2017-12-02 Michael Albinus <michael.albinus@gmx.de>
6685 Revert Tramp commit from 2017-11-20
6687 * lisp/net/tramp.el (tramp-drop-volume-letter)
6688 (tramp-handle-find-backup-file-name): Revert change from
6689 2017-11-20. Emacs' `make-backup-file-name-1' handles this
6692 2017-12-02 Eli Zaretskii <eliz@gnu.org>
6694 Improve documentation of buffer-list commands and features
6696 * doc/emacs/buffers.texi (List Buffers): Add a cross-reference to
6697 "Several Buffers", to establish a relation between the two
6699 (Buffer Menus): Expand on customizability of alternative buffer
6700 menu offered by bs.el. Mention IBuffer.
6701 Suggested by Alex Branham <alex.branham@gmail.com> in
6702 emacs-manual-bugs@gnu.org.
6704 2017-12-02 Eli Zaretskii <eliz@gnu.org>
6706 Fix backing up remote files in local directories on MS-Windows
6708 * lisp/files.el (make-backup-file-name-1): Support remote file
6709 names correctly when they are backed up into a local directory on
6710 MS-Windows and MS-DOS. (Bug#29440)
6712 2017-12-02 Glenn Morris <rgm@gnu.org>
6714 * doc/emacs/mule.texi (Output Coding): Clarify sendmail coding.
6716 2017-12-01 John Wiegley <johnw@newartisans.com>
6718 Revert "Fix backing up remote files in local directories on MS-Windows"
6720 This reverts commit 8c8b6732882248df4ca3b687e0a4b4e5e4ab3777.
6722 2017-12-01 Eli Zaretskii <eliz@gnu.org>
6724 Fix a typo in ELisp manual
6726 * doc/lispref/sequences.texi (Sequence Functions): Fix the example
6727 of using 'seq-uniq'. (Bug#29524)
6729 2017-12-01 Eli Zaretskii <eliz@gnu.org>
6731 * lisp/composite.el (find-composition): Fix a typo in the doc string.
6733 2017-12-01 Eli Zaretskii <eliz@gnu.org>
6735 Fix backing up remote files in local directories on MS-Windows
6737 * lisp/files.el (make-backup-file-name-1): Support remote file
6738 names correctly when they are backed up into a local directory on
6739 MS-Windows and MS-DOS. (Bug#29440)
6741 2017-12-01 Tak Kunihiro <tkk@misasa.okayama-u.ac.jp>
6743 Fix vertical cursor motion in pixel-scroll.el
6745 * lisp/pixel-scroll.el (pixel-scroll-up): Move cursor down
6746 regardless of whether EOB is shown at the top.
6747 (pixel-scroll-down) Move cursor up regardless of whether BOB
6748 is shown at the top. (Bug#29374)
6750 2017-12-01 Basil L. Contovounesios <contovob@tcd.ie>
6752 Fix typos in doc strings of message.el
6754 * lisp/gnus/message.el (message-header-to)
6755 (message-header-subject, message-header-newsgroups)
6756 (message-header-other): Fix typos in doc strings. (Bug#29405)
6758 2017-12-01 Eli Zaretskii <eliz@gnu.org>
6760 Fix a typo in the Emacs manual
6762 * doc/emacs/abbrevs.texi (Abbrev Concepts): Fix a typo. Reported
6763 by clemens.radermacher@posteo.de in emacs-manual-bugs@gnu.org.
6765 2017-12-01 Eli Zaretskii <eliz@gnu.org>
6767 Improve the documentation of 'table-insert-sequence'
6769 * doc/emacs/text.texi (Table Misc): Fix the description of
6770 'table-insert-sequence'. Reported by jack <jackh@gmx.co.uk> in
6771 emacs-manual-bugs@gnu.org.
6773 2017-12-01 Paul Eggert <eggert@cs.ucla.edu>
6777 Problem reported by Elad Lahav on emacs-devel.
6778 * configure.ac: On QNX, default CC to qcc (a GCC wrapper),
6779 and default LDFLAGS to -N2MB so that the initial stack size
6780 is not too small. Also, fix misspelling of ‘qnxnto’.
6782 2017-11-30 Michael Albinus <michael.albinus@gmx.de>
6784 Make tramp-test42-auto-load more robust
6786 * test/lisp/net/tramp-tests.el (tramp-test42-auto-load):
6787 Make it more robust. Don't skip.
6789 2017-11-30 Eli Zaretskii <eliz@gnu.org>
6791 Avoid assertions in find-composition
6793 * src/font.c (font_range): If called with STRING non-nil and FACE
6794 a NULL pointer, compute face by calling face_at_string_position.
6797 * lisp/composite.el (find-composition): Doc fix.
6799 2017-11-29 Glenn Morris <rgm@gnu.org>
6801 Restore obsolete method of changing byte-compile-dest-file
6803 * lisp/emacs-lisp/bytecomp.el (byte-compile-dest-file):
6804 Restore seven-year obsolete feature that was removed for six months,
6805 since automake uses it.
6807 2017-11-29 Michael Albinus <michael.albinus@gmx.de>
6809 Some minor Tramp corrections
6811 * lisp/net/tramp.el (tramp-handle-directory-file-name):
6812 Handle several trailing slashes correctly.
6813 (tramp-handle-file-selinux-context): New defun.
6815 * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
6816 * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
6817 * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist):
6818 Use `tramp-handle-file-selinux-context'.
6820 * test/lisp/net/tramp-tests.el (tramp-test06-directory-file-name):
6822 (tramp-test17-insert-directory): Make check more robust.
6823 (tramp-test42-auto-load): Combine several let forms.
6824 (tramp-test42-delay-load, tramp-test42-recursive-load)
6825 (tramp-test42-remote-load-path, tramp-test43-unload): Rename.
6827 2017-11-29 Tino Calancha <tino.calancha@gmail.com>
6829 * doc/misc/url.texi (http/https): Fix typo
6831 2017-11-29 Glenn Morris <rgm@gnu.org>
6833 Remove some bogus definition-prefixes from loaddefs
6835 * lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
6836 Don't register a definition prefix from define-erc-module,
6837 which adds an erc- prefix to its argument.
6839 2017-11-28 Robert Pluim <rpluim@gmail.com>
6841 Shell-quote wildcards when invoking 'vc-git-grep'
6843 * lisp/vc/vc-git.el (vc-git-grep): Apply shell quoting to
6844 filename wildcards to ensure globbing is done by git rather
6845 than the shell. (Bug#29303)
6847 2017-11-28 Kaushal Modi <kaushal.modi@gmail.com>
6849 Update documentation of '.dir-locals-2.el'
6851 See https://lists.gnu.org/r/emacs-devel/2017-11/msg00649.html
6853 * lisp/files.el (dir-locals-file-2): Remove unused constant.
6854 * lisp/files.el (dir-locals-file): Mention ".dir-locals-2.el" in
6856 * doc/lispref/variables.texi (Directory Local Variables): Mention
6858 * etc/NEWS: Replace `dir-locals-file-2' mention with
6861 2017-11-27 Noam Postavsky <npostavs@gmail.com>
6863 * src/w32heap.c (DUMPED_HEAP_SIZE) [_WIN64]: Bump to 22 MiB.
6865 2017-11-27 Glenn Morris <rgm@gnu.org>
6867 A few small doc fixes for bytecomp.el
6869 * lisp/emacs-lisp/bytecomp.el (emacs-lisp-file-regexp)
6870 (byte-compile-dest-file-function, byte-compile-dest-file): Doc fixes.
6872 2017-11-27 Stefan Monnier <monnier@iro.umontreal.ca>
6874 * src/lread.c (syms_of_lread): Fix thinko in commit b1573a97e17b5
6876 2017-11-27 Glenn Morris <rgm@gnu.org>
6878 * lisp/tree-widget.el (tree-widget-end-guide): Escape it. (Bug#27797)
6880 2017-11-27 Eli Zaretskii <eliz@gnu.org>
6882 Fix ELisp "Warning Tips"
6884 * doc/lispref/tips.texi (Warning Tips): Clarify when to use
6885 'require' wrapped by 'eval-when-compile'. (Bug#29462)
6887 2017-11-27 Michael Albinus <michael.albinus@gmx.de>
6891 * lisp/net/tramp.el (tramp-autoload-file-name-regexp):
6892 Do not use "\\'" in regexp. (Bug#29163)
6893 (top) Do not run (tramp-register-autoload-file-name-handlers)
6894 when loading tramp.el.
6896 * test/lisp/net/tramp-tests.el (tramp--test-mock-p): New defun.
6897 (tramp-test32-environment-variables-and-port-numbers)
6898 (tramp-test41-asynchronous-requests): Use it.
6899 (tramp-test42-auto-load): New test.
6900 (tramp-test43-recursive-load, tramp-test44-remote-load-path)
6901 (tramp-test45-delay-load, tramp-test46-unload): Rename.
6903 2017-11-27 Paul Eggert <eggert@union>
6905 Harden exec_byte_code against redefining 'error'
6907 Problem discovered by configuring with --enable-gcc-warnings on
6908 Ubuntu 17.10 x86-64 with gcc (Ubuntu 7.2.0-8ubuntu3).
6909 * src/bytecode.c (exec_byte_code): Call the C error function
6910 instead of the Lisp one, so that the Emacs interpreter does not go
6911 haywire if the user redefines the Lisp error function.
6913 2017-11-27 Gemini Lasswell <gazally@runbox.com>
6915 Fix Edebug specs for if-let* and and-let* (Bug#29236)
6917 * test/lisp/emacs-lisp/subr-x-tests.el (if-let*, if-let):
6918 Change Edebug spec to cause Edebug to instrument tests the
6919 results of which are not bound to symbols (the (VALUEFORM)
6921 (and-let*): Change Edebug spec to allow empty body.
6923 *test/lisp/emacs-lisp/subr-x-tests.el:
6924 (subr-x-and-let*-test-group-1): Add missing quote to erroneous
6925 form so Edebug will work on this test.
6927 2017-11-26 Gemini Lasswell <gazally@runbox.com>
6929 Fix Edebug's handling of dotted specs (bug#6415)
6931 * lisp/emacs-lisp/cl-macs.el (cl-destructuring-bind): Use
6932 cl-macro-list1 instead of cl-macro-list in Edebug spec.
6934 * lisp/emacs-lisp/edebug.el (edebug-after-dotted-spec): Delete
6936 (edebug-dotted-spec): Add docstring.
6937 (edebug-match-specs): Allow &optional and &rest specs to
6938 match nothing at the tail of a dotted form. Handle matches of
6939 dotted form tails which return non-lists.
6941 * test/lisp/emacs-lisp/edebug-tests.el (edebug-tests-dotted-forms):
6944 * test/lisp/emacs-lisp/edebug-resources/edebug-test-code.el:
6945 (edebug-test-code-use-destructuring-bind): New function.
6947 2017-11-26 Eli Zaretskii <eliz@gnu.org>
6949 Improve documentation of "constant" symbols
6951 * src/font.c (syms_of_font) <font-weight-table, font-slant-table>
6953 * src/data.c (syms_of_data) <most-positive-fixnum>
6954 <most-negative-fixnum>:
6955 * src/buffer.c (syms_of_buffer) <enable-multibyte-characters>:
6956 Mention in the doc strings that these variables are read-only.
6958 * doc/lispref/variables.texi (Creating Buffer-Local): Document
6959 that making a constant variable buffer-local signals an error.
6960 * doc/lispref/variables.texi (Constant Variables):
6961 * doc/lispref/errors.texi (Standard Errors): More accurate and
6962 up-to-date documentation of which symbols cannot be assigned
6965 2017-11-26 Paul Eggert <eggert@cs.ucla.edu>
6967 maint: shorten https://lists.gnu.org/archive/html/... links
6969 2017-11-26 Paul Eggert <eggert@cs.ucla.edu>
6974 2017-11-23 stat: work around Solaris bug with tv_nsec < 0
6975 2017-11-12 maint: shorten https://lists.gnu.org/archive/html/... links
6976 * build-aux/config.sub, doc/misc/texinfo.tex, lib/allocator.h:
6977 * lib/fstatat.c, lib/intprops.h, lib/lstat.c, lib/signal.in.h:
6978 * lib/stat-time.h, lib/stdio-impl.h, lib/stdio.in.h:
6979 * lib/timespec.h, m4/alloca.m4, m4/extern-inline.m4:
6980 * m4/faccessat.m4, m4/fstatat.m4, m4/gnulib-common.m4:
6981 * m4/lstat.m4, m4/std-gnu11.m4, m4/sys_types_h.m4:
6985 2017-11-26 Paul Eggert <eggert@cs.ucla.edu>
6987 Work around GCC bug 80776 on Fedora 27 x86
6989 * src/buffer.c (Fgenerate_new_buffer_name): Pacify GCC 7.2.1
6990 20170915 (Red Hat 7.2.1-2) on i686 with -Wformat-overflow -O2 by
6991 using XINT rather than XFASTINT and by adding an eassume. This
6992 works around GCC bug 80776.
6994 2017-11-25 Paul Eggert <eggert@cs.ucla.edu>
6996 Tweak copy-file, rename-file doc
6998 * src/fileio.c (Fcopy_file, Frename_file): Tweak the recent change
6999 slightly, as NEWNAME is treated as a directory name depending only
7000 on the contents of the NEWNAME string, and independently of
7001 whether NEWNAME names a directory (i.e., whether the directory
7002 exists) (Bug#29362).
7004 2017-11-25 Tom Tromey <tom@tromey.com>
7006 Change font-lock-extend-region-multiline handling in mhtml-mode
7009 * lisp/textmodes/mhtml-mode.el (mhtml-mode): Remove
7010 font-lock-extend-region-multiline from
7011 font-lock-extend-region-functions.
7012 (mhtml--extend-font-lock-region): Call font-lock-extend-region-multiline.
7014 2017-11-25 Michael Albinus <michael.albinus@gmx.de>
7016 Minor cleanup in tramp-gvfs-handle-file-local-copy
7018 * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-local-copy):
7019 Move error message up.
7021 2017-11-25 Michael Albinus <michael.albinus@gmx.de>
7023 Add test for Bug#29423 in Tramp.
7025 * test/lisp/net/tramp-tests.el (tramp-test17-insert-directory):
7026 Add test for Bug#29423.
7028 2017-11-25 Eli Zaretskii <eliz@gnu.org>
7030 Avoid jumbled order in HTML rendered by shr.el
7032 * lisp/net/shr.el (shr-render-td): Preserve point, as
7033 shr-render-td-1 might move it as a side effect of
7034 save-window-excursion. (Bug#29348)
7036 2017-11-25 Eli Zaretskii <eliz@gnu.org>
7038 Make sure 'dired-filename' property is always put by ls-lisp
7040 * lisp/ls-lisp.el (ls-lisp-classify): Do not put the
7041 'dired-filename' text property on the file name here...
7042 (ls-lisp-classify-file): ...put it here instead. (Bug#29423)
7044 2017-11-24 Eli Zaretskii <eliz@gnu.org>
7046 A better solution for bug#29347
7048 * src/thread.c (really_call_select): Don't try to take the global
7049 lock if the same thread is already holding it. (Bug#29347)
7051 2017-11-24 Eli Zaretskii <eliz@gnu.org>
7053 Avoid a hang after C-g while sit-for on a Unix TTY
7055 * src/thread.c (acquire_global_lock): Don't try to take the global
7056 lock if the same thread is already holding it. (Bug#29347)
7058 2017-11-24 Eli Zaretskii <eliz@gnu.org>
7060 Improve the doc string of 'list-packages'
7062 * lisp/emacs-lisp/package.el (list-packages): Describe in the doc
7063 string the columns shown by the command. (Bug#29420)
7065 2017-11-24 Eli Zaretskii <eliz@gnu.org>
7067 Improve discoverability of 'defvar' for suppressing warnings
7069 * doc/lispref/compile.texi (Compiler Errors): Add index entries.
7070 * doc/lispref/variables.texi (Defining Variables): Mention that
7071 defvar with no value is used for suppressing compiler warnings.
7074 2017-11-24 Eli Zaretskii <eliz@gnu.org>
7076 Improve discoverability of 'read-buffer-completion-ignore-case'
7078 * lisp/window.el (switch-to-buffer)
7079 (switch-to-buffer-other-window, switch-to-buffer-other-frame):
7080 Mention 'read-buffer' in the doc string. (Bug#29389)
7082 * doc/emacs/buffers.texi (Select Buffer): Add a cross-reference to
7083 where 'read-buffer-completion-ignore-case' is documented.
7085 2017-11-24 Eli Zaretskii <eliz@gnu.org>
7087 Improve documentation of self-insert-uses-region-functions
7089 * lisp/simple.el (self-insert-uses-region-functions): Clarify the
7091 * lisp/delsel.el (delete-selection-uses-region-p): Mention
7092 'self-insert-command' in the doc string. (Bug#29373)
7094 * doc/lispref/text.texi (Commands for Insertion): Mention
7095 'self-insert-uses-region-functions'.
7096 * doc/lispref/modes.texi (Keymaps and Minor Modes): Add a
7097 cross-reference to "Commands for Insertion".
7099 2017-11-24 Eli Zaretskii <eliz@gnu.org>
7101 Reflect changes in copy-file and rename-file in doc strings
7103 * src/fileio.c (Fcopy_file, Frename_file): Mention in the doc
7104 strings that directory names must end in a slash. (Bug#29362)
7106 2017-11-24 Eli Zaretskii <eliz@gnu.org>
7108 * lisp/progmodes/cc-vars.el (c-offsets-alist): Doc fix. (Bug#29407)
7110 2017-11-24 Eli Zaretskii <eliz@gnu.org>
7112 Reorder type predicates in ELisp manual
7114 * doc/lispref/objects.texi (Type Predicates): Restore alphabetical
7115 order of listed predicates. (Bug#29411)
7117 2017-11-23 Eli Zaretskii <eliz@gnu.org>
7119 Fix backward scrolling in buffers with header-line
7121 * src/window.c (window_scroll_pixel_based): Account for the
7122 header-line when comparing Y coordinate with the last_visible_y.
7125 2017-11-22 Glenn Morris <rgm@gnu.org>
7127 * lisp/bindings.el (buffer-file-coding-system):
7128 Add explicit permanent-local mark.
7130 * src/fns.c (syms_of_fns) <overriding-plist-environment>: Doc fix.
7132 2017-11-22 Alan Third <alan@idiocy.org>
7134 Fix incorrect interaction of drag/drop and double click (bug#29121)
7136 * src/nsterm.m (EmacsView::performDragOperation): Drag and drop
7137 doesn't use ns-input-file.
7139 2017-11-22 Glenn Morris <rgm@gnu.org>
7141 * lisp/menu-bar.el (menu-bar-options-save):
7142 Add display-line-numbers-type.
7144 * lisp/menu-bar.el (menu-bar-options-save):
7145 Add global-display-line-numbers-mode. (Bug#28396)
7147 * lisp/follow.el (follow-mode): Restore mode line lighter. (Bug#28495)
7149 2017-11-22 Dmitry Gutov <dgutov@yandex.ru>
7151 Extract the common part of ruby-flymake-simple and ruby-flymake-rubocop
7153 * lisp/progmodes/ruby-mode.el (ruby-flymake-simple)
7154 (ruby-flymake-rubocop):
7155 Extract the common part as ruby-flymake--helper.
7156 (ruby--rubocop-flymake-proc): Remove. Use the first proc
7159 2017-11-22 Dmitry Gutov <dgutov@yandex.ru>
7161 Add Rubocop Flymake backend
7163 * lisp/progmodes/ruby-mode.el (ruby-flymake-command):
7164 Inline the value. There are no known substitutes.
7165 (ruby-flymake): Rename to `ruby-flymake-simple' and simplify
7167 (ruby-flymake-use-rubocop-if-available): New option.
7168 (ruby--rubocop-flymake-proc): New variable.
7169 (ruby-rubocop-config): New option.
7170 (ruby-flymake-rubocop, ruby-flymake-auto): New functions.
7171 (ruby-mode): Use `ruby-flymake-auto'.
7173 2017-11-21 Noam Postavsky <npostavs@gmail.com>
7175 Update nt/INSTALL.W64 (Bug#28601)
7177 * nt/INSTALL.W64 (Download and install MinGW-w64 and MSYS2): Move
7178 suggestion about modifying PATH to...
7179 (Test Emacs): ... here.
7180 (Run configure): Remove the unnecessary setting of PKG_CONFIG_PATH.
7181 (Troubleshooting): New section, includes suggestion to check
7184 2017-11-21 Charles A. Roelli <charles@aurox.ch>
7186 Remove incorrect NEWS item about VC state indicator (Bug#28817)
7188 * etc/NEWS (VC and related modes): Remove news item about the VC
7189 state indicator. This should have been done with commit 7882dc6
7190 of 2016-03-06 'Revert "Use colors in the VC mode lines"'.
7192 2017-11-21 Glenn Morris <rgm@gnu.org>
7194 * lisp/emacs-lisp/byte-run.el (defsubst): Doc fix.
7196 2017-11-21 Alan Mackenzie <acm@muc.de>
7198 Make c-defun-name analyze more thoroughly a function type which is a struct
7200 This fixes bug #29293.
7202 * lisp/progmodes/cc-cmds.el (c-defun-name): When a struct (etc.) type is
7203 encountered, check whether it is the return type of a function rather than a
7204 declaration of the struct itself. Similarly adapt the cond arm which deals
7205 with functions properly to recognize struct return types.
7207 2017-11-21 Glenn Morris <rgm@gnu.org>
7209 Avoid bogus abbreviated file names if HOME changes
7211 * lisp/files.el (abbreviate-file-name):
7212 If HOME changes, ignore `abbreviated-home-dir'. (Bug#19657#20)
7213 * test/lisp/files-tests.el (files-test-abbreviated-home-dir): New.
7215 2017-11-21 Glenn Morris <rgm@gnu.org>
7217 * lisp/emacs-lisp/byte-run.el (inline): Give it a doc.
7219 2017-11-21 Jay Kamat <jaygkamat@gmail.com> (tiny change)
7221 Fix erc keep-place module with new defaults (Bug#29111)
7223 * lisp/erc/erc-goodies.el (erc-keep-place): Allow erc
7224 keep-place to continue working with
7225 switch-to-buffer-preserve-window-point set to t, the new default.
7227 2017-11-20 Alan Third <alan@idiocy.org>
7229 Add window divider faces to NS (bug#29353)
7231 * src/nsterm.m (ns_draw_window_divider): Use
7232 window-divider-first-pixel and window-divider-last-pixel faces.
7234 2017-11-20 Stefan Monnier <monnier@iro.umontreal.ca>
7236 * src/keyboard.c: Undo last change, meant for master only
7238 2017-11-20 Michael Albinus <michael.albinus@gmx.de>
7242 * lisp/net/tramp.el (tramp-drop-volume-letter): Handle also
7244 (tramp-handle-find-backup-file-name):
7245 Call `tramp-drop-volume-letter' on the results. (Bug#29149)
7247 2017-11-20 Martin Rudalics <rudalics@gmx.at>
7249 Fix misbehavior when drawing three-pixel high horizontal dividers (Bug#29353)
7251 * src/xterm.c (x_draw_window_divider):
7252 * src/w32term.c (w32_draw_window_divider): Fix misbehavior when
7253 drawing three-pixel high horizontal dividers (Bug#29353).
7255 The misbehavior was noted by Keith David Bershatsky and analyzed by Alan
7258 2017-11-19 Mike Kupfer <mkupfer@alum.berkeley.edu>
7260 MH-E: don't automatically download external-body parts
7262 * lisp/mh-e/mh-mime.el (mh-mime-display-single): Use
7263 mm-automatic-display-p to verify that a part should be
7264 displayed before doing the inline checks (SF#475).
7266 2017-11-19 Michael Albinus <michael.albinus@gmx.de>
7268 Further fix for Bug#29291
7270 * test/lisp/net/tramp-tests.el (tramp-test24-file-acl):
7271 Check for local ACL support. (Bug#29291)
7273 2017-11-19 Alan Third <alan@idiocy.org>
7275 Fix divider frame params on NS (bug#29352)
7277 * src/nsfns.m (Fx_create_frame): Set right-divider-width and
7278 bottom-divider-width parameters.
7280 2017-11-19 Paul Eggert <eggert@cs.ucla.edu>
7284 * lisp/help-fns.el (help-fns--analyze-function):
7285 Rename from help-fns--analyse-function.
7288 2017-11-19 Olaf Rogalsky <olaf.rogalsky@t-online.de>
7290 * src/keyboard.c: Make xterm-mouse clicks on mode-line work
7292 (read_key_sequence): Recompute first_event
7293 after replay_sequence, since it might have changed (bug#29104).
7295 2017-11-18 Martin Rudalics <rudalics@gmx.at>
7297 Don't let delete_frame select a tooltip frame (Bug#27647)
7299 * src/frame.c (delete_frame): Don't select a tooltip
7302 2017-11-18 Alan Mackenzie <acm@muc.de>
7304 Filter obtrusive events in help-read-key-sequence.
7306 This fixes most of bug #29272.
7308 * lisp/help.el (help-read-key-sequence): After a mouse event, pause for 0.01s,
7309 discarding any events (such as <help-echo>) received in this time, before
7310 polling for the double-click (etc.) events which may follow. This fixes the
7311 infinite loop which occurred whwn <help-echo> events triggered a sit-for
7312 whilst handling menu events.
7314 2017-11-18 Michael Albinus <michael.albinus@gmx.de>
7316 Fix symlink flag in tramp-gvfs-handle-file-attributes
7318 * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
7319 Set proper symlink file mode flag.
7321 2017-11-18 Michael Albinus <michael.albinus@gmx.de>
7323 Fix bug in tramp-handle-file-truename
7325 * lisp/net/tramp.el (tramp-handle-file-truename): Expand localname.
7327 * test/lisp/net/tramp-tests.el (tramp-test21-file-links): Check also
7328 relative symbolic links.
7330 2017-11-18 Eli Zaretskii <eliz@gnu.org>
7332 Fix a typo in doc string of electric-indent-functions-without-reindent
7334 * lisp/electric.el (electric-indent-functions-without-reindent):
7335 Doc fix. (Bug#29304)
7337 2017-11-18 Eli Zaretskii <eliz@gnu.org>
7339 Avoid assertion violations in echo_area_display
7341 * src/xdisp.c (echo_area_display): Don't try redisplaying the echo
7342 area if the selected-frame's mini-window is nil. (Bug#27647)
7344 2017-11-18 Eli Zaretskii <eliz@gnu.org>
7346 Fix case-folding in Occur
7348 * lisp/replace.el (occur-engine): Bind case-fold-search in each
7349 buffer we search. (Bug#29254)
7351 2017-11-18 OGAWA Hirofumi <hirofumi@mail.parknet.co.jp> (tiny change)
7353 Fix quick-calc in C mode with hex values
7355 * lisp/calc/calc-aent.el (math-read-token): Make sure the match
7356 against "0[xX][0-9a-fA-F]+" is found at math-exp-pos. See
7357 http://lists.gnu.org/archive/html/emacs-devel/2017-11/msg00174.html
7360 2017-11-18 Eli Zaretskii <eliz@gnu.org>
7362 Improve documentation of dired-next/prev-marked-file
7364 * lisp/dired.el (dired-next-marked-file, dired-prev-marked-file):
7365 Doc fixes. (Bug#29340)
7367 2017-11-17 Eli Zaretskii <eliz@gnu.org>
7369 Prevent aborts in line-move-visual
7371 * src/indent.c (line_number_display_width): Avoid assertion
7372 violations in init_iterator when the window's buffer was
7373 temporarily switched without updating window-start. (Bug#29326)
7375 2017-11-17 Eli Zaretskii <eliz@gnu.org>
7377 More fixes in src/.gdbinit
7379 * src/.gdbinit (pwinx): Update to match 'struct window'.
7380 (pcursorx): Use "." instead of "->" because the argument is a
7381 struct, not a pointer.
7383 2017-11-17 Robert Pluim <rpluim@gmail.com>
7385 Document how to enter whitespace when using grep-read-files
7387 * lisp/progmodes/grep.el (lgrep, rgrep, grep-read-files): Explain
7388 how to enter whitespace when using grep-read-files. (Bug#29303)
7389 * lisp/progmodes/project.el (project-find-regexp): Likewise.
7390 * lisp/vc/vc-git.el (vc-git-grep): Likewise.
7392 2017-11-17 Eli Zaretskii <eliz@gnu.org>
7394 Fix .gdbinit following lisp.h changes
7396 * src/.gdbinit (xsymname, pwinx, pgx, xbuffer, xcar, xcdr, xlist)
7397 (xprintstr): Adapt to latest changes in Lisp object C structures.
7400 2017-11-15 Charles A. Roelli <charles@aurox.ch>
7402 * lisp/simple.el (shell-command): Doc fixes.
7404 2017-11-15 Noam Postavsky <npostavs@gmail.com>
7406 Fix marker adjustment for undo (Bug#29118)
7408 * lisp/simple.el (primitive-undo): Compare marker against absolute
7409 value of POS, because the sign of POS is irrelevant to markers.
7411 2017-11-14 Daniel Pittman <slippycheeze@google.com>
7415 * lisp/net/tramp-sh.el: Set TERM and INSIDE_EMACS environment earlier.
7416 (tramp-remote-process-environment): Remove TERM and INSIDE_EMACS.
7417 (tramp-remote-process-environment): Document their special handling.
7418 (tramp-open-shell): Set TERM and INSIDE_EMACS prior to starting the
7419 initial remote shell, so that it is also aware of the environment
7420 in which it is operating. (Bug#28139)
7422 2017-11-14 Michael Albinus <michael.albinus@gmx.de>
7426 * test/lisp/net/tramp-tests.el (tramp-test24-file-acl):
7427 Preserve permissions when copying. (Bug#29291)
7429 2017-11-14 Michael Albinus <michael.albinus@gmx.de>
7433 * test/lisp/net/tramp-tests.el (tramp-test25-file-selinux):
7434 Enhance test. (Bug#29287)
7435 (tramp-test44-delay-load): Fix for older Emacsen.
7437 2017-11-14 Martin Rudalics <rudalics@gmx.at>
7439 Make 'mouse-drag-and-drop-region' work with 'mouse-autoselect-window' non-nil
7441 * lisp/mouse.el (mouse-drag-and-drop-region): Ignore
7442 'select-window' events to make it work with
7443 'mouse-autoselect-window'.
7445 2017-11-14 Alexander Gramiak <agrambot@gmail.com>
7447 * etc/PROBLEMS: Remove fixed xterm-mouse-mode problems
7449 See: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=29143#26
7451 2017-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
7453 Fix cookie handling (bug#29282)
7455 * lisp/url/url-cookie.el (url-cookie-handle-set-cookie):
7456 Regard a Set-Cookie header as it contains a single cookie;
7457 prefer Max-Age to Expires and convert it to Expires;
7458 remove support for old time string styles (bug#29282).
7460 2017-11-13 Gemini Lasswell <gazally@runbox.com>
7462 Improve documentation of Edebug and macros
7464 * doc/lispref/edebug.texi (Instrumenting Macro Calls): Improve
7465 discussion of when it might be necessary to find and evaluate macro
7466 specifications before instrumenting.
7467 (Specification List): Clarify what "defining form" means to Edebug
7468 and when 'def-form' or 'def-body' should be used instead of 'form'
7471 2017-11-13 Paul Eggert <eggert@cs.ucla.edu>
7473 Port to IBM xlc 12.01
7475 Work around a compiler bug by using a separate enum for alignment.
7476 * src/alloc.c (roundup_size): Declare in a separate enum.
7478 2017-11-13 Paul Eggert <eggert@cs.ucla.edu>
7480 Simplify by removing HAVE_STRUCT_ATTRIBUTE_ALIGNED
7482 * configure.ac (HAVE_STRUCT_ATTRIBUTE_ALIGNED): Remove. No longer
7483 needed, since we no longer rely on __attribute__ ((aligned (8))).
7485 * src/emacs-module.c (HAVE_STRUCT_ATTRIBUTE_ALIGNED): Remove.
7486 (lisp_to_value): Simplify now that we no longer need to worry
7487 whether HAVE_STRUCT_ATTRIBUTE_ALIGNED is false.
7489 2017-11-13 Paul Eggert <eggert@cs.ucla.edu>
7491 Use alignas to fix GCALIGN-related bugs
7493 Use alignas and unions to specify alignments of objects needing
7494 addresses that are at least a multiple of GCALIGNMENT. Using
7495 these standard C facilities should be safer than relying on ad hoc
7496 and poorly-understood features like GCC’s __attribute__
7497 ((aligned (N))), the root cause for recent porting bugs like
7498 Bug#29040. The alignas macro was standardized by C11 and Gnulib
7499 supports alignas for pre-C11 platforms. I have tested this on Sun
7500 Studio 12 sparc (2007) and GCC 4.4.7 x86-64 (2012) as well as on
7501 more recent platforms like GCC 7.2.1 (2017) on Fedora 26 (both
7503 * lib-src/make-docfile.c (close_emacs_globals): lispsym is now
7504 just an array of struct Lisp_Symbol, since struct Lisp_Symbol is
7505 now properly aligned. All uses changed.
7506 * src/alloc.c (NEXT_FREE_LISP_STRING): Just use the new u.next
7507 member; this is simpler and safer than casting a pointer that
7508 might not be aligned properly.
7509 (aligned_Lisp_Symbol): Remove. No longer needed, now that struct
7510 Lisp_Symbol is aligned properly. All uses replaced with struct
7512 * src/lisp.h (GCALIGNED): Remove, as it does not work as expected:
7513 it can cause the natural alignment to be ignored. All uses
7514 replaced by unions with a ‘char alignas (GCALIGNMENT)’ member as
7516 (struct Lisp_Symbol, struct Lisp_Cons, struct Lisp_String):
7517 Change definition from ‘struct TAG { MEMBERS };’ to
7518 ‘struct TAG { union { struct { MEMBERS } s; char alignas
7519 (GCALIGNMENT) gcaligned; } u; };’. This guarantees ‘struct TAG’
7520 to have an alignment that at least max (GCALIGNMENT, N) where N is
7521 its old alignment. All uses like ‘PTR->MEMBER’ changed to
7522 ‘PTR->u.s.MEMBER’; these uses were supposed to be mostly private
7523 anyway. Verify that the resulting ‘struct TAG’ is properly
7525 (union vectorlike_header): New member ‘gcaligned’ to guarantee
7526 that this type, and its containing types like ‘struct Lisp_Subr’,
7527 ‘struct buffer’ and ‘struct thread_state’, are all properly
7529 (struct Lisp_String): New union member ‘next’, for the benefit
7530 of NEXT_FREE_LISP_STRING.
7531 (union Aligned_Cons, union Aligned_String): Remove. All uses
7532 replaced by struct Lisp_Cons and struct Lisp_String, since they
7533 are now properly aligned.
7534 (USE_STACK_CONS, USE_STACK_STRING): Simplify now that we can
7535 assume struct Lisp_Cons and struct Lisp_String are properly
7538 2017-11-13 Paul Eggert <eggert@cs.ucla.edu>
7540 Change vectorlike from struct to union
7542 * src/lisp.h (vectorlike_headed): Change from struct to union.
7543 All uses changed. Since it has only one member, this does not
7544 change semantics. This is designed to simplify future changes
7545 needed to fix bugs like Bug#29040. All uses changed.
7547 2017-11-12 Tom Tromey <tom@tromey.com>
7549 Don't enable cursor-sensor-mode in mhtml-mode
7551 * lisp/textmodes/mhtml-mode.el (mhtml--last-submode): Update doc
7553 (mhtml-mode): Don't call cursor-sensor-mode.
7555 2017-11-12 Eli Zaretskii <eliz@gnu.org>
7557 * lisp/files.el (abbreviate-file-name): Doc fix. (Bug#29267)
7559 2017-11-12 João Távora <joaotavora@gmail.com>
7561 Unbreak interactive run of a flymake test (bug#29267)
7563 See https://debbugs.gnu.org/cgi/bugreport.cgi?bug=19657#20 for the
7564 technique used here.
7566 * test/lisp/progmodes/flymake-tests.el (ruby-backend):
7567 Let-bind abbreviated-home-dir.
7569 2017-11-12 Michael Albinus <michael.albinus@gmx.de>
7573 * src/fileio.c (Fset_file_acl): Report error only when
7574 acl_errno_valid returns true. (Bug#29225)
7576 * test/lisp/net/tramp-tests.el (tramp-test24-file-acl)
7577 (tramp-test25-file-selinux): New tests.
7578 (tramp-test26-file-name-completion, tramp-test27-load)
7579 (tramp-test28-process-file, tramp-test29-start-file-process)
7580 (tramp-test30-interrupt-process, tramp-test31-shell-command)
7581 (tramp-test32-environment-variables)
7582 (tramp-test32-environment-variables-and-port-numbers)
7583 (tramp-test33-explicit-shell-file-name)
7584 (tramp-test34-vc-registered)
7585 (tramp-test35-make-auto-save-file-name)
7586 (tramp-test36-find-backup-file-name)
7587 (tramp-test37-make-nearby-temp-file)
7588 (tramp-test38-special-characters)
7589 (tramp-test38-special-characters-with-stat)
7590 (tramp-test38-special-characters-with-perl)
7591 (tramp-test38-special-characters-with-ls, tramp-test39-utf8)
7592 (tramp-test39-utf8-with-stat, tramp-test39-utf8-with-perl)
7593 (tramp-test39-utf8-with-ls, tramp-test40-file-system-info)
7594 (tramp-test41-asynchronous-requests)
7595 (tramp-test42-recursive-load, tramp-test43-remote-load-path)
7596 (tramp-test44-delay-load, tramp-test45-unload): Rename.
7598 2017-11-12 Alan Mackenzie <acm@muc.de>
7600 CC Mode: Fix defun-open being recognized as brace-list-open at EOB.
7602 * lisp/progmodes/cc-engine.el (c-looking-at-statement-block): Add handling
7603 for an open brace at EOB and nested braces inside an unclosed brace block.
7605 2017-11-12 Paul Eggert <eggert@cs.ucla.edu>
7610 2017-11-11 faccessat: port to macOS (Bug#29231)
7611 2017-11-05 fstatat: pacify GCC on unusual platform
7612 * build-aux/config.guess, build-aux/config.sub:
7613 * doc/misc/texinfo.tex, lib/faccessat.c, lib/fstatat.c:
7614 * lib/unistd.in.h, m4/faccessat.m4, m4/unistd_h.m4:
7616 * lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
7618 2017-11-12 Paul Eggert <eggert@cs.ucla.edu>
7620 Pacify GCC when configured --with-x-toolkit=no
7622 Without these changes, Emacs does not build on Fedora 26 x86-64
7623 when configured --with-x-toolkit=no --enable-gcc-warnings.
7624 * oldXMenu/Activate.c (XMenuActivate): Add FALLTHROUGH.
7625 * src/xterm.c (x_dispatch_event): Define only if
7626 USE_X_TOOLKIT || USE_MOTIF || USE_GTK.
7628 2017-11-12 Eli Zaretskii <eliz@gnu.org>
7630 * lisp/find-dired.el (find-grep-dired): Doc fix. (Bug#29262)
7632 2017-11-12 João Távora <joaotavora@gmail.com>
7634 Fix more flymake-diag-region eob corner cases and add tests (bug#29201)
7636 * lisp/progmodes/flymake.el (flymake-diag-region): Correct
7637 more eob corner cases.
7639 * test/lisp/progmodes/flymake-tests.el
7640 (eob-region-and-trailing-newline): New test.
7642 2017-11-11 Basil L. Contovounesios <contovob@tcd.ie>
7644 Keep Man sections in natural order (bug#28998)
7646 * lisp/man.el (Man-build-section-alist): Reverse sections.
7648 2017-11-11 Stefan Monnier <monnier@iro.umontreal.ca>
7650 * lisp/minibuffer.el: Install a workaround for bug#16274
7652 * lisp/minibuffer.el (completion--nth-completion): Avoid signaling an
7653 error when `md` is applied to another table.
7655 2017-11-11 Eli Zaretskii <eliz@gnu.org>
7657 Fix comparisons with tip_frame in GTK builds
7659 * src/xterm.c (x_update_begin, x_new_font):
7660 * src/xfns.c (Fx_display_monitor_attributes_list):
7661 * src/frame.c (Fframe_list) [USE_GTK]: Don't consider tip_frame a
7662 tooltip frame unless its 'tooltip' parameter is non-nil. (Bug#26747)
7664 2017-11-11 Eli Zaretskii <eliz@gnu.org>
7666 Improve the documentation of M-n for entering file names
7668 * lisp/files.el (find-file, find-file-other-window)
7669 (find-file-other-frame): Mention file-name-at-point-functions in
7670 the doc string. Reported by Florian Weimer <fw@deneb.enyo.de> in
7671 http://lists.gnu.org/archive/html/emacs-devel/2017-11/msg00224.html.
7673 * doc/emacs/mini.texi (Minibuffer History): Document
7674 file-name-at-point-functions and its effect on M-n when typing
7675 file names in the minibuffer.
7676 * doc/emacs/files.texi (File Names):
7677 * doc/emacs/mini.texi (Minibuffer File): Add a cross-reference to
7678 "Minibuffer History", where special features of M-n regarding
7679 files are described.
7681 2017-11-11 Eli Zaretskii <eliz@gnu.org>
7683 Fix desktop auto-save timer when linum-mode is used
7685 * lisp/desktop.el (desktop-read): Use toplevel value of
7686 window-configuration-change-hook when deciding whether desktop
7687 auto-saving is enabled. Suggested by Peter Neidhardt
7688 <pe.neidhardt@googlemail.com>. (Bug#28945)
7690 2017-11-11 Olaf Rogalsky <olaf.rogalsky@t-online.de>
7692 Fix "C-h k" in xterm-mouse-mode
7694 * lisp/help.el (help-read-key-sequence): Support "C-h k" for
7695 xterm-mouse-mode by calling read-key-sequence-vector instead of
7696 read-event. (Bug#29150)
7698 2017-11-11 Paul Eggert <eggert@cs.ucla.edu>
7700 Fix off-by-1 bug in --enable-checking=stringbytes
7702 Evidently nobody builds Emacs with --enable-checking=all,
7703 which is no surprise as it is so slow as to be unusable nowadays.
7704 Perhaps we should remove the slowest checks, or move them into
7705 another category, or speed them up, or something.
7706 * src/alloc.c (SDATA_SIZE) [GC_CHECK_STRING_BYTES]: Fix off-by-one
7707 error in size calculation, which caused a failure when
7708 --enable-checking=stringbytes was used. I introduced this bug in
7709 2016-09-08T01:08:45!eggert@cs.ucla.edu "Port flexible array
7710 members to GCC + valgrind".
7712 2017-11-10 Alan Mackenzie <acm@muc.de>
7714 Correct the indentation of C99's compound literals.
7716 * lisp/progmodes/cc-engine.el (c-looking-at-statement-block): Amend so that
7717 if there is only syntactic whitespace in a brace block, it is regarded as a
7718 statement block. Also, if there is no semicolon or comma delimiter, treat as
7719 a statement block when there is a keyword.
7720 (c-guess-basic-syntax): CASE 9 test: Regard a brace as starting a brace block
7721 when its contents indicate a brace block.
7723 2017-11-10 Eli Zaretskii <eliz@gnu.org>
7725 Improve the doc string of 'dired-isearch-filter-filenames'
7727 * lisp/dired-aux.el (dired-isearch-filter-filenames): Doc fix.
7730 2017-11-10 Eli Zaretskii <eliz@gnu.org>
7732 * lisp/isearch.el (search-invisible): Doc fix. (Bug#29222)
7734 2017-11-10 Eli Zaretskii <eliz@gnu.org>
7736 Fix display of line numbers in GTK builds
7738 * src/xdisp.c (should_produce_line_number) [USE_GTK]: Make sure
7739 tip_frame is indeed a tooltip frame, before disabling line numbers
7742 * src/dispextern.h (tip_frame): Add commentary describing the
7743 kludgey usage of this variable in GTK builds.
7745 2017-11-10 João Távora <joaotavora@gmail.com>
7747 Fix previous change to flymake-diag-region (bug#29174)
7749 * lisp/progmodes/flymake.el (flymake-diag-region):
7750 Pass line and col to commit.
7752 2017-11-09 João Távora <joaotavora@gmail.com>
7754 flymake-diag-region really returns nil if region is invalid (bug#29174)
7756 Reported by Lele Gaifax <lele@metapensiero.it>.
7758 * lisp/progmodes/flymake.el (flymake-diag-region): Really
7759 return nil if the region is invalid.
7761 2017-11-09 João Távora <joaotavora@gmail.com>
7763 Flymake correctly highlights whole last line if eob (bug#29201)
7765 If a line/column pair indicates an end-of-buffer position, flymake
7766 should behave like the case where the last line of the buffer is
7767 referenced without a column indication. This behavior is currently
7768 to highlight the whole last line.
7770 * lisp/progmodes/flymake.el (flymake-diag-region): Correct
7771 conditions of fallback to the fallback-eol local function.
7773 2017-11-09 João Távora <joaotavora@gmail.com>
7775 Protect Flymake checkdoc backend against checkdoc errors (bug#29176)
7777 The function checkdoc-current-buffer may error if there are unbalanced
7778 parens, for example, but this shouldn't disable the
7779 elisp-flymake-checkdoc backend.
7781 * lisp/progmodes/elisp-mode.el (elisp-flymake-checkdoc): Use
7784 2017-11-09 João Távora <joaotavora@gmail.com>
7786 Sort entries of the Flymake diagnostics buffer (bug#29175)
7788 Reported by Lele Gaifax <lele@metapensiero.it>.
7790 * lisp/progmodes/flymake.el
7791 (flymake--diagnostics-buffer-entries): Sort results of flymake-diagnostics.
7793 2017-11-09 Alan Mackenzie <acm@muc.de>
7795 Correctly indent C++14 brace lists which are a second argument to a function.
7797 In particular, don't indent contained brace lists in "staircase" fashion.
7798 This fixes bug #28623.
7800 * lisp/progmodes/cc-engine.el (c-looking-at-or-maybe-in-bracelist): When
7801 testing for being enclosed in parens, recognize also a brace directly
7802 following a comma, as well as a brace being the first thing inside the paren.
7803 Enhance the return value, by indicating when we're directly inside an open
7805 (c-inside-bracelist-p): Add an extra argument ACCEPT-IN-PARAM which indicates
7806 whether we will accept a bracelist directly inside an open parenthesis.
7807 Simplify the manipulation of PAREN-STATE by dispensing with variable LIM and
7808 using c-pull-open-brace. Enhance the return value, respecting the new argument.
7809 (c-guess-basic-syntax): Save a copy of the initial parse-state in the new
7810 variable STATE-CACHE. Use this variable in place of C-STATE-CACHE throughout
7811 the function. At CASE 7B, call c-inside-bracelist-p with extra argument nil.
7812 At CASE 9, call that function with extra argument t.
7814 2017-11-09 Eli Zaretskii <eliz@gnu.org>
7816 Fix redisplay of overlay-arrows on GUI frames
7818 * src/xdisp.c (try_window_reusing_current_matrix)
7819 (try_cursor_movement): Disallow these optimizations if the buffer
7820 has overlay arrow(s) shown on the fringe(s). (Bug#29198)
7822 2017-11-09 João Távora <joaotavora@gmail.com>
7824 Protect Flymake tests against older Ruby and Perl (bug#29187)
7826 * test/lisp/progmodes/flymake-tests.el (perl-backend): Search
7827 for the error from the bottom.
7828 (ruby-backend): Protect against situation of bug#29187
7830 2017-11-09 Paul Eggert <eggert@cs.ucla.edu>
7832 Fix URL cookie expiration bug
7834 Problem reported by Damien Cassou (Bug#29223).
7835 * lisp/url/url-cookie.el (url-cookie-expired-p):
7836 Fix typo in previous change, which caused unexpired cookies
7837 to be treated as expired and vice versa.
7839 2017-11-09 Paul Eggert <eggert@cs.ucla.edu>
7841 Use GCALIGNED properly for GCC
7843 Apparently GCC requires that ‘__attribute__ ((aligned (8)))’ must
7844 immediately follow the ‘struct’ keyword when aligning a structure.
7845 The attribute silently does not work if it follows a tag after the
7846 ‘struct’ keyword. Who knew? Anyway, this patch is designed to
7847 fix a SIGSEGV problem reported by John Mastro (Bug#29183).
7848 * lib-src/make-docfile.c (close_emacs_globals):
7849 * src/buffer.c (buffer_defaults, buffer_local_symbols):
7850 * src/lisp.h (DEFUN):
7851 * src/thread.c (main_thread):
7852 Put 'GCALIGNED' immediately after 'struct'.
7854 2017-11-09 Glenn Morris <rgm@gnu.org>
7856 In f90.el, set fill-paragraph-function to a useful value
7858 * lisp/progmodes/f90.el (f90-mode-map) <menu>: Add fill-paragraph.
7859 (f90-mode): Set fill-paragraph-function.
7860 (f90-fill-paragraph): New command.
7862 2017-11-08 Eric Abrahamsen <eric@ericabrahamsen.net>
7866 * lisp/emacs-lisp/eieio-base.el (eieio-persistent-convert-list-to-object):
7867 Fix bogus paren wrapping.
7869 2017-11-08 Glenn Morris <rgm@gnu.org>
7871 * admin/gitmerge.el (gitmerge-resolve-unmerged): Fix doc typo.
7873 2017-11-08 Charles A. Roelli <charles@aurox.ch>
7875 Further workaround for faulty localtime() under macOS 10.6
7877 * lisp/org/org-clock.el (org-clock--oldest-date): Fix an issue
7878 when compiling on macOS 10.6 with a western time zone (a
7879 continuation of Bug#27736). In particular, see:
7881 https://debbugs.gnu.org/cgi/bugreport.cgi?bug=27736#74
7883 and the first commit that attempted to work around this problem,
7884 "Workaround for faulty localtime() under macOS 10.6", bd49b6f1 of
7887 2017-11-08 Eric Abrahamsen <eric@ericabrahamsen.net>
7889 Handle object string name in eieio-persistent-convert-list-object
7891 * lisp/emacs-lisp/eieio-base.el (eieio-persistent-convert-list-to-object):
7892 Starting to phase out the printing of object names in
7893 `object-write', handle either case.
7895 2017-11-08 Ryan C. Thompson <rct@thompsonclan.org>
7897 Fix handling of nil PRED2 arg for completion-table-with-predicate
7899 * lisp/minibuffer.el (completion-table-with-predicate): Don't act as
7900 if strict is non-nil when pred2 is nil (Bug#27841).
7901 * test/lisp/minibuffer-tests.el
7902 (completion-table-with-predicate-test): Add a test for Bug#27841.
7904 2017-11-07 K. Handa <handa@gnu.org>
7906 Describe Lao rendering problem
7908 * etc/PROBLEMS: Describe a workaround for the problem of Lao rendering
7911 2017-11-07 K. Handa <handa@gnu.org>
7913 Fix docstring of arabic-shaper-ZWNJ-handling
7915 * lisp/language/misc-lang.el (arabic-shaper-ZWNJ-handling): Adjusted
7916 the doctstring for addition of :set (bug#28312).
7918 2017-11-07 Antonin Houska <ah@melesmeles.cz> (tiny change)
7920 Handle single-line comments correctly (Bug#26049)
7922 * lisp/newcomment.el (comment-region-internal): Previously, the
7923 comment text had to contain at least one line break character for the
7924 ending extra line to be added. Make the behavior more consistent by
7925 looking for end of line instead.
7926 (comment-region-internal): Remove trailing white space from the
7927 comment's initial line.
7929 2017-11-07 Glenn Morris <rgm@gnu.org>
7931 * test/lisp/net/tramp-tests.el (tramp-test16-file-expand-wildcards):
7934 2017-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
7936 * etc/PROBLEMS: Add URL to relevant issues for xterm+evil bug
7938 2017-11-06 Martin Rudalics <rudalics@gmx.at>
7940 Document new treatment of 'comment-auto-fill-only-comments'
7942 * doc/lispref/text.texi (Auto Filling): Add reference to Emacs
7943 manual. Add description of 'comment-auto-fill-only-comments'.
7944 * etc/NEWS: Mention new treatment of
7945 'comment-auto-fill-only-comments'.
7947 2017-11-05 Michael Albinus <michael.albinus@gmx.de>
7949 Do not load Tramp unless `tramp-mode' is non-nil
7951 * lisp/net/tramp.el (tramp-autoload-file-name-handler): Load Tramp only if
7952 `tramp-mode' is non-nil.
7953 (tramp-unload-file-name-handlers): Unload also
7954 `tramp-autoload-file-name-handler'.
7956 * test/lisp/net/tramp-tests.el (tramp-test42-delay-load): Extend test.
7958 2017-11-05 Michael Albinus <michael.albinus@gmx.de>
7960 Prefer `customize-set-variable' in tramp.texi
7962 * doc/misc/tramp.texi (Configuration, Default Method, Default User)
7963 (Default Host, Remote shell setup, Auto-save and Backup)
7964 (Ad-hoc multi-hops, Frequently Asked Questions):
7965 Prefer `customize-set-variable' over `custom-set-variables'.
7967 2017-11-05 Eli Zaretskii <eliz@gnu.org>
7969 Fix last change in hscroll_window_tree
7971 * src/xdisp.c (hscroll_window_tree): When hscroll suspension is
7972 being disabled, set the frame's garbaged flag less eagerly.
7975 2017-11-05 Philipp Stephani <phst@google.com>
7977 Ediff: add some missing documentation
7979 * lisp/vc/ediff.el (ediff-files, ediff-files3, ediff-buffers)
7980 (ediff-buffers3, ediff-merge-directories)
7981 (ediff-merge-directories-with-ancestor)
7982 (ediff-merge-directory-revisions)
7983 (ediff-merge-directory-revisions-with-ancestor)
7984 (ediff-windows-wordwise, ediff-windows-linewise)
7985 (ediff-regions-wordwise, ediff-regions-linewise)
7986 (ediff-merge-files, ediff-merge-files-with-ancestor)
7987 (ediff-merge-buffers, ediff-merge-buffers-with-ancestor)
7988 (ediff-merge-revisions, ediff-merge-revisions-with-ancestor)
7989 (ediff-patch-file, ediff-revision): Document missing arguments.
7990 (ediff-patch-buffer, ediff-revision): Add second space after
7992 (ediff-files-command, ediff3-files-command, ediff-merge-command)
7993 (ediff-merge-with-ancestor-command, ediff-directories-command)
7994 (ediff-directories3-command, ediff-merge-directories-command): Add
7995 documentation for the command line functions.
7997 2017-11-05 Justin Timmons <justinmtimmons@gmail.com> (tiny change)
7999 Support python virtualenv on w32 (Bug#24464)
8001 According to the virtualenv docs only POSIX systems follow the
8002 structure "/path/to/venv/bin/", while windows systems use
8003 "/path/to/venv/Scripts" for the location of the binary files, most
8004 importantly including the python interpreter (see:
8005 https://virtualenv.pypa.io/en/stable/userguide/#windows-notes).
8006 * lisp/progmodes/python.el (python-shell-calculate-exec-path): Use the
8007 "/path/to/venv/Scripts" for `windows-nt' machines.
8009 2017-11-05 Noam Postavsky <npostavs@gmail.com>
8011 Improve dired deletion error handling (Bug#28797)
8013 * lisp/dired.el (dired-internal-do-deletions): Use
8014 `error-message-string' to produce a human readable error message.
8016 2017-11-05 Noam Postavsky <npostavs@gmail.com>
8018 Don't replace user input when completion prefix is empty (Bug#18951)
8020 * lisp/pcomplete.el (pcomplete-parse-arguments): Only replace user
8021 input if we produced a non-empty common completion stub.
8023 2017-11-05 Eli Zaretskii <eliz@gnu.org>
8025 Return non-nil from gnutls-available-p under GnuTLS 2.x
8027 * doc/misc/emacs-gnutls.texi (Help For Users): Update the
8028 documentation of 'gnutls-available-p'.
8030 * etc/NEWS (GnuTLS): Mention the change in the value returned by
8031 'gnutls-available-p'.
8033 * src/gnutls.c (Fgnutls_available_p): Return non-nil when GnuTLS
8034 2.x is available. (Bug#29147)
8036 2017-11-05 João Távora <joaotavora@gmail.com>
8038 Fix Flymake help-echo functions across windows (bug#29142)
8040 * lisp/progmodes/flymake.el (flymake--highlight-line): Use
8041 with-selected-window.
8042 (flymake-goto-next-error): Call help-echo with a window and an
8045 2017-11-05 João Távora <joaotavora@gmail.com>
8047 Add tests for Flymake backends for Ruby and Perl
8049 * test/lisp/progmodes/flymake-tests.el (perl-backend)
8050 (ruby-backend): New tests.
8051 (warning-predicate-rx-perl, warning-predicate-function-perl):
8054 * test/lisp/progmodes/flymake-resources/test.pl: Include an
8055 error the test file.
8057 * test/lisp/progmodes/flymake-resources/test.rb: file.
8059 2017-11-05 João Távora <joaotavora@gmail.com>
8061 Add a Flymake backend for Perl
8063 Define a simple backend in perl-mode.el, which cperl-mode.el also
8066 * lisp/progmodes/cperl-mode.el (cperl-mode): Add to
8067 flymake-diagnostic-functions.
8069 * lisp/progmodes/flymake-proc.el
8070 (flymake-proc-allowed-file-name-masks): Disable legacy backend
8073 * lisp/progmodes/perl-mode.el (perl-flymake-command): New
8075 (perl--flymake-proc): New buffer-local variable.
8076 (perl-flymake): New function.
8077 (perl-mode): Add to flymake-diagnostic-functions.
8079 2017-11-05 João Távora <joaotavora@gmail.com>
8081 Add a Flymake backend for Ruby
8083 * lisp/progmodes/ruby-mode.el (ruby-flymake-command): New
8085 (ruby--flymake-proc): New buffer-local variable.
8086 (ruby-flymake): New function.
8087 (ruby-mode): Add flymake-diagnostic-functions.
8089 2017-11-05 Lele Gaifax <lele@metapensiero.it>
8091 Add a Flymake backend for Python (bug#28808)
8093 Implement new Flymake backend with related customizable settings.
8095 * lisp/progmodes/python.el (python-flymake-command)
8096 (python-flymake-command-output-pattern)
8097 (python-flymake-msg-alist): New defcustom.
8098 (python--flymake-parse-output): New function, able to parse
8099 python-flymake-command output accordingly to
8100 python-flymake-command-output-pattern.
8101 (python-flymake): New function implementing the backend
8102 interface using python--flymake-parse-output for the real
8104 (python-mode): Add python-flymake to flymake-diagnostic-functions.
8106 2017-11-05 Michael Albinus <michael.albinus@gmx.de>
8108 Allow "%" in Tramp host names
8110 * lisp/net/tramp-gvfs.el (tramp-gvfs-url-file-name): Hexify also host.
8112 * lisp/net/tramp.el (tramp-host-regexp): Allow "%" in host names.
8114 2017-11-04 Noam Postavsky <npostavs@users.sourceforge.net>
8116 Use hybrid malloc for FreeBSD (Bug#28308)
8118 FreeBSD aarch64 does not provide sbrk, so gmalloc cannot be used; when
8119 using system malloc dumping does not work correctly (allocated data is
8120 invalid after dumping).
8121 * configure.ac: Set hybrid_malloc for freebsd.
8122 * src/gmalloc.c (gdefault_morecore) [!HAVE_SBRK]: Don't call sbrk.
8124 2017-11-04 Charles A. Roelli <charles@aurox.ch>
8126 Add html-, mhtml- and python-mode support to semantic symref
8128 * lisp/cedet/semantic/symref/grep.el
8129 (semantic-symref-filepattern-alist): Fix the entry for
8130 'html-mode', which used a regexp-like syntax where only glob
8131 syntax is permitted. As a result, 'xref-find-references' (M-?)
8132 can now find references in HTML files. Also duplicate the same
8133 entry for the sake of 'mhtml-mode', and add a new one for
8135 (semantic-symref-derive-find-filepatterns): In the documentation,
8136 clarify that returned patterns must follow the glob syntax. Fix
8137 an 'if' test that always evaluates to nil.
8138 (semantic-symref-tool-grep):
8139 (semantic-symref-perform-search): Fix typos.
8141 2017-11-04 Eli Zaretskii <eliz@gnu.org>
8143 Improve documentation of 'window-scroll-functions'
8145 * doc/lispref/windows.texi (Window Hooks): Clarify the values of
8146 arguments of 'window-scroll-functions' functions.
8148 * src/xdisp.c (syms_of_xdisp) <window-scroll-functions>: Doc fix.
8150 2017-11-04 Eli Zaretskii <eliz@gnu.org>
8152 Fix subtle problems in tabulated-list-mode with line numbers
8154 * lisp/emacs-lisp/tabulated-list.el
8155 (tabulated-list-watch-line-number-width): Call
8156 tabulated-list-init-header instead of tabulated-list-revert.
8157 (tabulated-list-window-scroll-function): New function.
8158 (tabulated-list-mode): Put 'tabulated-list-window-scroll-function'
8159 on the buffer-local 'window-scroll-functions' list.
8161 2017-11-04 Eli Zaretskii <eliz@gnu.org>
8163 Make gdb-non-stop-setting default to nil on MS-Windows
8165 * lisp/progmodes/gdb-mi.el (gdb-non-stop-setting): Now nil on
8168 2017-11-04 Mike Gulick <mike.gulick@mathworks.com> (tiny change)
8170 Fix gdb-mi prompt after "attach PID" command
8172 * lisp/progmodes/gdb-mi.el (gdbmi-bnf-console-stream-output): Set
8173 gdb-first-done-or-error non-nil. (Bug#29020)
8175 2017-11-04 Eli Zaretskii <eliz@gnu.org>
8177 Fix doc string of 'window-configuration-change-hook'
8179 * src/window.c (syms_of_window) <window-configuration-change-hook>:
8180 Doc fix. (Bug#29049)
8182 2017-11-04 Eli Zaretskii <eliz@gnu.org>
8184 Improve documentation of window hooks
8186 * doc/lispref/windows.texi (Window Hooks): Fix the description of
8187 window-configuration-change-hook. (Bug#29049)
8188 <run-window-scroll-functions, run-window-configuration-change-hook>:
8189 Document these functions.
8191 2017-11-04 Eli Zaretskii <eliz@gnu.org>
8193 Fix hscroll suspension after cursor motion
8195 * src/xdisp.c (hscroll_window_tree): Trigger a thorough redisplay
8196 of the window when temporary suspension of hscrolling is
8197 disabled. (Bug#29002)
8199 2017-11-03 Alan Mackenzie <acm@muc.de>
8201 Introduce a function to CC Mode which displays the current function name
8203 Remove an erroneous interactive specification from two functions.
8205 * lisp/progmodes/cc-cmds.el (c-display-defun-name): New command.
8206 (c-defun-name, c-cpp-define-name): Remove interactive specification.
8208 * lisp/progmodes/cc-mode.el (c-mode-base-map): Add binding C-c C-z for the new
8211 * doc/misc/cc-mode.texi (Other Commands): Add documentation for the new
8214 2017-11-03 Eli Zaretskii <eliz@gnu.org>
8216 Fix typos in ediff-wind.el
8218 * lisp/vc/ediff-wind.el (ediff-setup-windows-multiframe-merge):
8219 Fix typos in commentary. (Bug#29138)
8221 2017-11-03 João Távora <joaotavora@gmail.com>
8223 Examine tex-chktex--process in the correct buffer
8225 As in other Flymake backends, the process sentinel might run in
8226 arbitrary buffers where this variable's value doesn't make sense.
8228 For a way to trigger a problem due to this, see discussion starting in
8229 https://lists.gnu.org/archive/html/emacs-devel/2017-10/msg00645.html
8231 * lisp/textmodes/tex-mode.el (tex-chktex): Use
8232 with-current-buffer.
8234 2017-11-03 Stephen Leake <stephen_leake@stephe-leake.org>
8236 * nt/INSTALL.W64: Update to current mingw64 install instructions
8238 2017-11-03 João Távora <joaotavora@gmail.com>
8240 Don't resignal errors in flymake-diag-region
8242 * lisp/progmodes/flymake.el (flymake-diag-region): Use
8243 flymake-log instead of flymake-error.
8245 2017-11-03 João Távora <joaotavora@gmail.com>
8247 New xref-quit-and-goto-xref command bound to TAB (bug#28814)
8249 This is like xref-goto-xref, but quits the *xref* window just before
8250 the user jump to ref.
8252 * lisp/progmodes/xref.el (xref--show-location): Handle 'quit
8254 (xref-goto-xref): Take optional QUIT arg.
8255 (xref-quit-and-goto-xref): New command.
8256 (xref--xref-buffer-mode-map): Bind "Q" and "TAB" to
8257 xref-quit-and-goto-xref.
8259 * doc/emacs/maintaining.texi (Xref Commands): Describe new bindings in
8262 * etc/NEWS (Xref): Describe new binding.
8264 2017-11-03 João Távora <joaotavora@gmail.com>
8266 Allow split-window-sensibly to split threshold in further edge case
8268 As a fallback, and to avoid creating a frame, split-window-sensibly
8269 would previously disregard split-height-threshold if the window to be
8270 split is the frame's root window.
8272 This change generalizes that: it disregards the threshold if the
8273 window to be split is the frame's only _usable_ window (it is either
8274 the only one, as before, or all the other windows are dedicated to
8275 some buffer and thus cannot be touched).
8277 This is required for the fix to bug#28814.
8279 * lisp/window.el (split-height-threshold): Adjust doc to match
8280 split-window-sensibly.
8281 (split-window-sensibly): Also disregard threshold if all other
8282 windows are dedicated.
8284 2017-11-03 João Távora <joaotavora@gmail.com>
8286 Honor window-switching intents in xref-find-definitions (bug#28814)
8288 When there is more than one xref to jump to, and an *xref* window
8289 appears to help the user choose, the original intent to open a
8290 definition in another window or frame is remembered when the choice to
8291 go to or show a reference is finally made.
8293 * lisp/progmodes/xref.el (xref--show-pos-in-buf): Rewrite.
8294 (xref--original-window-intent): New variable.
8295 (xref--original-window): Rename from xref--window and move up
8297 (xref--show-pos-in-buf): Rewrite. Don't take SELECT arg here.
8298 (xref--show-location): Handle window selection decision here.
8299 (xref--window): Rename to xref--original-window.
8300 (xref-show-location-at-point): Don't attempt window management here.
8301 (xref--show-xrefs): Ensure display-action intent is saved.
8303 2017-11-03 Paul Pogonyshev <pogonyshev@gmail.com>
8305 * lisp/emacs-lisp/generator.el (iter-do): Add a debug declaration.
8307 2017-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
8309 * lisp/progmodes/flymake.el (flymake-start): Fix dead buffer case
8311 Don't try to flymake-start within a buffer that doesn't exist any more.
8313 2017-11-03 Basil L. Contovounesios <contovob@tcd.ie>
8315 Fix buffer name comparison in async shell-command
8317 * lisp/simple.el (shell-command): Keep track of output-buffer
8318 by its name, not by its object. (Bug#28997)
8320 2017-11-03 Paul Eggert <eggert@cs.ucla.edu>
8322 Change GCALIGNMENT back to an integer literal
8324 * src/lisp.h (GCALIGNMENT): Change it back to a macro
8325 that expands to a literal integer constant, for older GCC.
8326 I had mistakenly thought that only MSVC had the problem.
8327 Problem repored by Eli Zaretskii (Bug#29040#69).
8329 2017-11-03 Paul Eggert <eggert@cs.ucla.edu>
8331 * src/lisp.h (GCALIGNED): Clarify comment (Bug#29040).
8333 2017-11-03 Hong Xu <hong@topbug.net>
8335 Improve the doc of eshell-cmpl-* custom variables (Bug#25069)
8337 * lisp/eshell/em-cmpl.el (eshell-cmpl--custom-variable-docstring): New
8338 function to generate the docstring for custom variables derived from
8339 pcomplete-* variables.
8340 (eshell-cmpl-file-ignore, eshell-cmpl-dir-ignore)
8341 (eshell-cmpl-ignore-case, eshell-cmpl-autolist)
8342 (eshell-cmpl-suffix-list, eshell-cmpl-recexact)
8343 (eshell-cmpl-man-function, eshell-cmpl-compare-entry-function)
8344 (eshell-cmpl-expand-before-complete, eshell-cmpl-cycle-completions)
8345 (eshell-cmpl-cycle-cutoff-length, eshell-cmpl-restore-window-delay)
8346 (eshell-command-completion-function, eshell-cmpl-command-name-function)
8347 (eshell-default-completion-function, eshell-cmpl-use-paring): Use it
8348 to set the docstring.
8350 2017-11-02 Alan Third <alan@idiocy.org>
8352 Fix mouse-scrollbar offset on GNUstep and old macOS (bug#29053)
8354 * src/nsterm.m (EmacsScroller::mouseDown,
8355 EmacsScroller::mouseDragged): Take scroller buttons into account when
8356 calculating scroller knob position.
8358 2017-11-02 Paul Eggert <eggert@cs.ucla.edu>
8363 2017-10-29 timespec: prefer ‘assume’ to ‘assure’
8364 2017-10-27 timespec.h: use "assure" to avoid a spurious warning
8365 2017-10-09 getopt-posix: Fix build failure if ac_cv_header_getopt_h=no
8366 * build-aux/config.guess, build-aux/config.sub:
8367 * lib/timespec.h, lib/unistd.in.h:
8370 2017-11-02 Paul Eggert <eggert@cs.ucla.edu>
8372 Fix alignment portability problems
8374 Do not assume that the natural alignment of Lisp objects is a
8375 multiple of GCALIGNMENT. This improves on the portability of the
8376 recent fix for Bug#29040.
8377 * lib-src/make-docfile.c (close_emacs_globals):
8378 * src/buffer.c (buffer_defaults, buffer_local_symbols):
8379 * src/lisp.h (DEFUN):
8380 * src/thread.c (main_thread):
8381 Use GCALIGNED, not alignas (GCALIGNMENT).
8382 * src/alloc.c (COMMON_MULTIPLE):
8383 Move back here from lisp.h, since it is no longer used elsewhere.
8384 * src/lisp.h (GCALIGNMENT): No longer a macro, since we need not
8385 worry about MSVC. Omit no-longer-needed consistency check.
8386 * src/thread.c (THREAD_ALIGNMENT): Remove.
8388 2017-11-02 Simen Heggestøyl <simenheg@gmail.com>
8390 Fix completion of colon after CSS property (Bug#29056)
8392 * lisp/textmodes/css-mode.el (css-completion-at-point): Don't insert
8393 ": ;" after completing a CSS property unless the rest of the line is
8396 2017-11-02 Stefan Monnier <monnier@iro.umontreal.ca>
8398 * src/alloc.c (sweep_symbols): Tweak last change
8400 Avoid the double-free without the extra check. Add an explanatory comment.
8402 2017-11-02 Martin Rudalics <rudalics@gmx.at>
8404 In frame parameters documentation mention desktop saving/restoring
8406 * doc/lispref/frames.texi (Frame Parameters): Mention that
8407 applications have to care about which parameters they want to
8408 get saved and restored by the desktop library.
8410 2017-11-02 Martin Rudalics <rudalics@gmx.at>
8412 Don't have frameset save the 'client' parameter (Bug#29067)
8414 * lisp/frameset.el (frameset-persistent-filter-alist): Never
8415 save 'client' parameter (Bug#29067).
8417 2017-11-02 Gemini Lasswell <gazally@runbox.com>
8419 Handle generic variables in cl-defgeneric Edebug spec
8421 *lisp/emacs-lisp/cl-generic.el (cl-defgeneric): Fix Edebug spec to
8422 match (setf name) and replace incorrect cl-lambda-list with listp
8425 2017-11-02 Noam Postavsky <npostavs@gmail.com>
8427 Give a more sensible message if file-attributes fails (Bug#29070)
8429 * lisp/server.el (server-ensure-safe-dir): Don't claim the directory
8430 is a file if we fail to get anything from `file-attributes'.
8432 2017-11-01 Andreas Schwab <schwab@linux-m68k.org>
8434 Avoid wrong value from file-attributes on Linux kernel before 3.6
8436 * src/dired.c (file_attributes): Handle unsupported fstat on O_PATH
8437 descriptors. (bug#29070)
8439 2017-11-01 Noam Postavsky <npostavs@gmail.com>
8441 Fix customization of debugger-print-function (Bug#29077)
8443 * lisp/emacs-lisp/debug.el (debugger-print-function): The :options
8444 keyword has no effect for :type 'function, use :type '(choice ...)
8447 2017-10-31 Eli Zaretskii <eliz@gnu.org>
8449 Avoid duplicate calls to xfree for the same pointer
8451 * src/alloc.c (sweep_symbols): Avoid freeing an already freed
8452 pointer to a symbol's buffer-local value. (Bug#29066)
8454 2017-10-31 Phil Sainty <psainty@orcon.net.nz>
8456 Don't clobber docstrings of explicitly-defined mode hook variables
8458 * lisp/emacs-lisp/derived.el (define-derived-mode):
8459 * lisp/emacs-lisp/easy-mmode.el (define-minor-mode): When defining the
8460 mode hook variable, do not clobber pre-existing docstrings.
8462 2017-10-31 Martin Rudalics <rudalics@gmx.at>
8464 Avoid fullscreen ediff control frames by default (Bug#29026)
8466 * lisp/vc/ediff-wind.el (ediff-control-frame-parameters):
8467 Add parameter to avoid fullscreen control frames (Bug#29026).
8469 2017-10-31 Katsumi Yamaoka <yamaoka@jpl.org>
8471 Fix the bug#24034 change (revno 9eb028f) causing infloop (bug#29047)
8473 * lisp/net/shr.el (shr-fill-line): Copy only face and image-displayer
8474 properties to gaps (bug#29047).
8476 2017-10-30 Eli Zaretskii <eliz@gnu.org>
8478 Fix a typo in the ELisp manual
8480 * doc/lispref/functions.texi (Obsolete Functions): Fix a typo.
8483 2017-10-30 Martin Rudalics <rudalics@gmx.at>
8485 Fix doc and doc-strings for minibuffer window related functions (Bug#28978)
8487 These fixes were suggested by Drew Adams.
8489 * src/window.c (Fminibuffer_selected_window): Disambiguate
8491 * doc/lispref/minibuf.texi (Intro to Minibuffers)
8492 (Minibuffer Windows, Recursive Mini, Minibuffer Misc): Avoid
8493 the term "currently active minibuffer window". Disambiguate
8494 documentation of `minibuffer-selected-window'.
8496 2017-10-30 Alan Mackenzie <acm@muc.de>
8498 Fix "Args out of range" error in c-determine-limit. Fixes bug #28598.
8500 * lisp/progmodes/cc-engine.el (c-determine-limit-get-base): If the candidate
8501 position for BASE is below point-min, scan forward to the end of the current
8503 (c-determine-limit): Add an extra arm to the final cond form, testing for BASE
8506 2017-10-30 Stefan Monnier <monnier@iro.umontreal.ca>
8508 * lisp/progmodes/perl-mode.el: Fix electric indentation with RET
8510 (perl-electric-noindent-p): The `eolp' check should not apply to RET.
8511 Reported in https://emacs.stackexchange.com/questions/36337.
8513 2017-10-29 Tom Tromey <tom@tromey.com>
8515 Extend mhtml submode region when in comment
8517 * lisp/textmodes/mhtml-mode.el (mhtml-syntax-propertize): Extend
8518 submode when start happens to be in a comment.
8520 2017-10-29 Tom Tromey <tom@tromey.com>
8522 Fix mthml submode lighting at end of buffer
8524 * lisp/textmodes/mhtml-mode.el (mhtml--submode-lighter): Handle end of
8527 2017-10-29 Tom Tromey <tom@tromey.com>
8529 Remember more variables in mhtml-mode
8531 * lisp/textmodes/mhtml-mode.el (mhtml--crucial-variable-prefix): Add
8532 "completion-" and "major-mode".
8533 (mhtml--variable-prefix): Remove "major-mode".
8535 2017-10-29 Thomas Fitzsimmons <fitzsim@fitzsim.org>
8537 * etc/NEWS (EUDC): Deprecate BBDB 2.x backward compatibility.
8539 2017-10-29 Martin Rudalics <rudalics@gmx.at>
8541 Fix minibuffer window related docs and strings (Bug#28978)
8543 * src/frame.c (Vdefault_minibuffer_frame): Fix doc-string.
8544 * src/window.c (Fminibuffer_selected_window): Fix doc-string.
8545 * doc/lispref/frames.texi (Buffer Parameters): Rewrite
8546 description of `minibuffer' parameter.
8547 * doc/lispref/minibuf.texi (Minibuffer Windows): Reorder
8548 entries and partly rewrite section.
8549 (Minibuffer Misc): Clarify description of
8550 `minibuffer-selected-window'.
8551 * etc/NEWS: Mention new semantics of 'minibuffer' frame
8554 2017-10-29 Mark Oteiza <mvoteiza@udel.edu>
8556 Add ChkTeX flymake backend for latex-mode
8558 * lisp/textmodes/tex-mode.el (tex-flymake): New custom group.
8559 (tex-chktex-program, tex-chktex-extra-flags): New custom variables.
8560 (latex-mode): Add backend to flymake-diagnostic-functions.
8561 (tex-chktex--process): New variable.
8562 (tex-chktex-command, tex-chktex): New functions.
8564 2017-10-29 Glenn Morris <rgm@gnu.org>
8568 * lisp/simple.el (line-move-ignore-invisible):
8569 * lisp/sort.el (sort-regexp-fields):
8570 * lisp/cedet/ede.el (project-add-file):
8571 * lisp/gnus/message.el (message-bogus-recipient-p):
8572 * lisp/international/mule.el (define-coding-system):
8573 * lisp/progmodes/ebrowse.el (ebrowse-member-buffer-object-menu):
8574 * lisp/progmodes/xscheme.el (xscheme-allow-output-p)
8575 (scheme-interaction-mode, scheme-debugger-mode)
8576 (xscheme-yank-pop, xscheme-yank-push): Doc fixes.
8578 2017-10-29 Glenn Morris <rgm@gnu.org>
8580 Fix some duplicate word typos
8582 * doc/misc/ede.texi (ede-target):
8583 * doc/misc/flymake.texi (Using Flymake):
8584 * doc/misc/gnus.texi (The namazu Engine): Fix typos.
8586 2017-10-28 Eli Zaretskii <eliz@gnu.org>
8588 * doc/lispref/commands.texi (Adjusting Point): Fix wording. (Bug#29042)
8590 2017-10-28 Eli Zaretskii <eliz@gnu.org>
8592 Avoid segfaults in 64-bit Windows builds
8594 * src/lisp.h (COMMON_MULTIPLE): Move here from alloc.c.
8595 * src/thread.c (THREAD_ALIGNMENT): New macro.
8596 (main_thread): Use THREAD_ALIGNMENT to align propertly. (Bug#29040)
8598 2017-10-28 Eli Zaretskii <eliz@gnu.org>
8600 Fix conversion of pixel coordinates to buffer position
8602 * src/dispnew.c (buffer_posn_from_coords): Adapt to
8603 auto-hscroll-mode == current-line.
8605 2017-10-28 Eli Zaretskii <eliz@gnu.org>
8607 Fix doc strings in desktop.el
8609 * lisp/desktop.el (desktop-auto-save-timeout)
8610 (desktop-auto-save-set-timer): Doc fixes. (Bug#28945)
8612 2017-10-28 Eli Zaretskii <eliz@gnu.org>
8614 Add Index to ERT manual
8616 * doc/misc/ert.texi: Add @syncodeindex directives.
8618 (Top): Add Index to the top-level menus.
8619 Add index entries to all nodes.
8621 2017-10-28 Eli Zaretskii <eliz@gnu.org>
8623 Make manuals and NEWS consistent
8625 * etc/NEWS: Fix markings on several entries, and rearrange others
8628 * doc/emacs/programs.texi (Hideshow): Document the new
8629 outline-like bindings.
8630 * doc/emacs/search.texi (Query Replace): Document 'u' and 'U'.
8632 2017-10-28 Martin Rudalics <rudalics@gmx.at>
8634 Don't allow (minibuffer-window-active-p nil) to return t
8636 * lisp/window.el (minibuffer-window-active-p): Return t
8637 only if WINDOW is a live window.
8639 2017-10-28 Eli Zaretskii <eliz@gnu.org>
8641 Clarify obsolescence message for 'whitespace-tab'
8643 * lisp/whitespace.el (whitespace-tab): Make the obsolescence
8644 message more clear about the replacement.
8646 2017-10-28 Glenn Morris <rgm@gnu.org>
8648 Fix some duplicate words typos
8650 * lisp/erc/erc.el (erc-hide-current-message-p):
8651 * lisp/progmodes/flymake-proc.el (flymake-proc-diagnostic-type-pred):
8652 * doc/lispref/display.texi (Bidirectional Display, Delayed Warnings):
8653 * doc/lispref/functions.texi (Defining Functions):
8654 * doc/lispref/os.texi (Terminal-Specific):
8655 * doc/misc/sem-user.texi (Analyzer Debug):
8656 * doc/misc/srecode.texi (Special Variables): Fix typos.
8658 2017-10-28 Glenn Morris <rgm@gnu.org>
8660 * lisp/button.el (button-activate): Fix doc typo.
8662 * lisp/calendar/todo-mode.el (todo-toggle-mark-item): Fix doc typo.
8664 2017-10-28 Glenn Morris <rgm@gnu.org>
8668 * lisp/calendar/todo-mode.el (todo-next-item)
8669 (todo-previous-item, todo-toggle-item-header):
8670 * lisp/window.el (move-to-window-group-line):
8671 * src/editfns.c (Fformat):
8672 * test/lisp/calendar/todo-mode-tests.el (todo-test-move-item05):
8675 2017-10-27 Ken Brown <kbrown@cornell.edu>
8677 Fix startup display on Cygwin
8679 * src/xterm.c (x_make_frame_visible) [CYGWIN]: Restore code that
8680 forces input to be read. (Bug#24091)
8682 2017-10-27 Eli Zaretskii <eliz@gnu.org>
8684 * src/fileio.c (Fset_default_file_modes): Fix typo in doc string.
8686 * lisp/dired.el (dired-find-alternate-file): Doc fix. (Bug#28963)
8688 2017-10-27 Eli Zaretskii <eliz@gnu.org>
8690 Improve documentation of how faces are applied to display stings
8692 * doc/lispref/display.texi (Displaying Faces): Describe how the
8693 faces of the "underlying" text affect overlay and display strings.
8694 (Display Margins): Add a cross-reference to "Displaying Faces".
8696 2017-10-27 Tak Kunihiro <tkk@misasa.okayama-u.ac.jp>
8698 Improve pixel-scroll-mode
8700 Scroll vertically by number of pixels returned by
8701 'frame-char-height' with or without horizontally scrolled.
8704 * lisp/pixel-scroll.el (pixel-resolution-fine-flag): When t, scroll
8705 by number of pixels returned by 'frame-char-height'.
8706 (pixel-scroll-up): Scroll by 'frame-char-height'. Fix algorithm to
8707 move cursor to avoid unexpected jump.
8708 (pixel-scroll-down): Scroll by 'frame-char-height'.
8709 (pixel-bob-at-top-p): Consider number of pixels that is about to
8711 (pixel-posn-y-at-point): Consider existence of an overlay string.
8712 Return nil when horizontally scrolled.
8713 (pixel-point-at-top-p): Consider number of pixels that is about to
8714 scroll. Use different algorithm when horizontally scrolled.
8715 (pixel-point-at-bottom-p): Consider number of pixels that is about
8716 to scroll. Return nil when horizontally scrolled.
8717 (pixel-scroll-pixel-down): Move cursor when horizontally scrolled.
8718 (pixel--whistlestop-line-up): Change cosmetics and move cursor when
8719 horizontally scrolled.
8720 (pixel-line-height): Call 'pixel-visual-line-height' instead of
8721 'line-pixel-height'.
8722 (pixel-visual-line-height): New function to return height in pixels
8723 of text line where cursor is with or without horizontally scrolled,
8724 considering response of display engine.
8725 (pixel-visible-pos-in-window): New function to return position of
8726 a char shown on text line where cursor is on screen with or without
8727 horizontally scrolled.
8729 2017-10-27 Daniel Lublin <daniel@lublin.se> (tiny change)
8731 Support Certification Authority Authorization in dns-mode.el
8733 * lisp/textmodes/dns-mode.el (dns-mode-types): Add "CAA".
8736 2017-10-27 Eli Zaretskii <eliz@gnu.org>
8738 Improve documentation of set-default-file-modes
8740 * src/fileio.c (Fset_default_file_modes): Doc fix. (Bug#28875)
8742 * doc/lispref/files.texi (Changing Files): Clarify how the bits in
8743 the argument of set-default-file-modes are used for setting file
8746 2017-10-27 Ulf Jasper <ulf.jasper@web.de>
8748 Fix documentation of `newsticker-new-item-functions' (bug#29023).
8750 * lisp/net/newst-backend.el (newsticker-new-item-functions),
8751 (newsticker-new-item-functions-sample),
8752 (newsticker-download-enclosures): Fix docstring, rename
8753 variable feed to feedname (bug#29023).
8755 * doc/misc/newsticker.texi (Automatic Processing)
8756 (Automatic Processing): Fix documentation of
8757 `newsticker-new-item-functions' (bug#29023).
8759 2017-10-27 Tino Calancha <tino.calancha@gmail.com>
8761 Require seq in rmc.el
8763 * lisp/emacs-lisp/rmc.el: Require seq (Bug#28975).
8764 * test/lisp/emacs-lisp/rmc-tests.el (test-read-multiple-choice): Add test.
8766 2017-10-27 Katsumi Yamaoka <yamaoka@jpl.org>
8768 Make an example code introduced in the Gnus info work (bug#29008)
8770 You can find it in the bottom of (info "(gnus)Foreign Groups").
8771 NOTE: this change is worth being merged to the trunk.
8773 * lisp/gnus/gnus-group.el (gnus-read-ephemeral-emacs-bug-group):
8774 Allow a string for bug# (bug#29008).
8776 2017-10-27 Katsumi Yamaoka <yamaoka@jpl.org>
8778 Enable gnus-read-ephemeral-* to run multiple times (bug#29008)
8780 NOTE: *DO NOT* merge this change to the trunk.
8782 * lisp/gnus/gnus-group.el (gnus-read-ephemeral-gmane-group)
8783 (gnus-read-ephemeral-bug-group): Make it work for any number of times
8784 for the case `url-automatic-caching' is set (bug#29008).
8786 2017-10-27 Paul Eggert <eggert@cs.ucla.edu>
8788 Port thread.c to OpenBSD ARM
8790 Problem reported by Jeremie Courreges-Anglas (Bug#29005).
8791 * src/thread.c (main_thread): Align to GCALIGNMENT.
8793 2017-10-26 Alan Mackenzie <acm@muc.de>
8795 Fix another "wrong side of point" error in CC Mode.
8797 This fixes (a follow-up to) bug #28850.
8798 A internal generated form for scanning text to fontify had a LIMIT parameter.
8799 It also locally bound LIMIT to a value possibly beyond the original LIMIT,
8800 allowing point to move beyond the original LIMIT, and to create the wrong side
8801 error. Fix it by checking point is not beyond LIMIT in the outer context
8804 * lisp/progmodes/cc-fonts.el (c-make-font-lock-search-form): Add a new
8805 parameter CHECK-POINT which, when non-nil, directs the function to generate a
8807 (c-make-font-lock-context-search-function): Invoke the above function with new
8810 2017-10-26 Michael Albinus <michael.albinus@gmx.de>
8814 * lisp/net/tramp.el (tramp-handle-find-backup-file-name):
8815 Use `tramp-tramp-file-p' rather than `tramp-file-name-p'. Add
8816 hop to backup file name. (Bug#28959)
8818 * test/lisp/net/tramp-tests.el (tramp-test34-find-backup-file-name):
8820 (tramp-test35-make-nearby-temp-file)
8821 (tramp-test36-special-characters)
8822 (tramp-test36-special-characters-with-stat)
8823 (tramp-test36-special-characters-with-perl)
8824 (tramp-test36-special-characters-with-ls, tramp-test37-utf8)
8825 (tramp-test37-utf8-with-stat, tramp-test37-utf8-with-perl)
8826 (tramp-test37-utf8-with-ls, tramp-test38-file-system-info)
8827 (tramp-test39-asynchronous-requests)
8828 (tramp-test40-recursive-load, tramp-test41-remote-load-path)
8829 (tramp-test42-delay-load, tramp-test43-unload): Rename.
8831 2017-10-26 Paul Eggert <eggert@cs.ucla.edu>
8833 Fix duplicate .o file on QNX
8835 * configure.ac (CYGWIN_OBJ): Leave empty on QNX.
8836 Problem reported by Elad Lahav in:
8837 https://lists.gnu.org/archive/html/emacs-devel/2017-10/msg00750.html
8839 2017-10-26 Dmitry Gutov <dgutov@yandex.ru>
8841 Fix two js indentation problems
8843 Fix intentation problems reported in
8844 https://github.com/mooz/js2-mode/issues/463.
8845 * lisp/progmodes/js.el (js--continued-expression-p):
8846 Check syntax state after /.
8847 (js--multi-line-declaration-indentation):
8848 Check syntax state before "const".
8850 2017-10-25 Phillip Lord <phillip.lord@russet.org.uk>
8852 Update documentation for windows build
8854 * admin/nt/dist-build/README-scripts: New File.
8856 2017-10-25 Alan Mackenzie <acm@muc.de>
8858 Fix a "wrong side of point" error in CC Mode. Fixes bug #28850.
8860 The cause was a scanning over a bracket pair taking us beyond the supplied
8861 LIMIT parameter in c-forward-declarator.
8863 * lisp/progmodes/cc-engine.el (c-forward-declarator): Add three checks (<
8864 (point) limit) whilst dealing with tokens after the declared identifier.
8866 * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): Don't supply a LIMIT
8867 argument to `c-forward-declarator' (twice), since we want to fontify up till
8868 the end of a declarator, not an arbitrary jit-lock chunk end.
8870 2017-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
8872 Fix autoload of flymake from elisp-mode during bootstrap (bug#28994)
8874 * lisp/loadup.el: add `progmodes` to load-path so we can find flymake.el.
8875 * lisp/kmacro.el: Require `replace` since we use query-replace-map.
8876 * lisp/replace.el: Require `text-mode` since we use text-mode-map.
8878 2017-10-25 Alan Third <alan@idiocy.org>
8880 Fix non-native fullscreen on NS (bug#28872)
8882 * src/nsterm.m (EmacsView::updateFrameSize): Handle case where
8883 FRAME_TOOLBAR_HEIGHT returns a negative number. Force WM to set size
8886 2017-10-25 Michael Albinus <michael.albinus@gmx.de>
8890 * admin/MAINTAINERS: Add test/lisp/url/url-tramp-tests.el.
8892 * lisp/url/url-tramp.el (url-tramp-convert-url-to-tramp)
8893 (url-tramp-convert-tramp-to-url): Adapt to recent Tramp changes.
8895 * test/lisp/url/url-tramp-tests.el: New file. (Bug#28982)
8897 2017-10-25 Phillip Lord <phillip.lord@russet.org.uk>
8899 Fix windows build errors
8901 * admin/nt/dist-build/build-zips.sh: Correct name of zip file, build
8904 2017-10-25 Noam Postavsky <npostavs@gmail.com>
8906 Fix compile warning for non-w32 builds
8908 Since 2017-07-25 "ls-lisp: Add an unload function and enable lexical
8909 binding", the non-w32 builds would treat the undeclared
8910 w32-collate-ignore-punctuation variable as lexical.
8911 * lisp/ls-lisp.el (top-level): Declare it as a dynamic variable.
8913 2017-10-25 David Glasser <glasser@davidglasser.net> (tiny change)
8915 Display commit in package description, if available (Bug#28637)
8917 MELPA includes a :commit field in its
8918 packages (https://github.com/melpa/package-build/pull/6). You can use
8919 this to tell if MELPA has processed a recently-merged change. This
8920 commit adds that metadata to the package description buffer.
8922 * lisp/emacs-lisp/package.el: Display commit in package description.
8924 2017-10-24 Paul Eggert <eggert@cs.ucla.edu>
8928 Simplified version of a patch proposed by Elad Lahav in:
8929 https://lists.gnu.org/archive/html/emacs-devel/2017-10/msg00716.html
8930 which is based on a previous patch I proposed in:
8931 https://lists.gnu.org/archive/html/emacs-devel/2017-10/msg00707.html
8932 * configure.ac (opsys, CFLAGS, LIBS_SYSTEM, hybrid_malloc)
8933 (system_alloc, FIRST_PTY_LETTER, CYGWIN_OBJ):
8934 Set appropriately for QNX.
8935 * src/unexelf.c [__QNX__]: Include <sys/elf.h> instead of <elf.h>.
8936 (unexec): Check for sbrk failure, and fall back on old BSS end.
8938 2017-10-24 Paul Eggert <eggert@cs.ucla.edu>
8940 * configure.ac: Tweak libcurses diagnostic.
8942 2017-10-24 Phillip Lord <phillip.lord@russet.org.uk>
8944 Scripts to automate windows binary distribution
8946 * admin/nt/dist-build/README-windows-binaries,
8947 admin/nt/dist-build/build-dep-zips.py,
8948 admin/nt/dist-build/build-zips.sh: New Files
8950 2017-10-24 Gemini Lasswell <gazally@runbox.com>
8952 Fix Edebug specs for map-let and with-maps-do
8954 * lisp/emacs-lisp/map.el (map-let): Fix Edebug spec (bug#24777).
8955 * test/lisp/emacs-lisp/map-tests.el (with-maps-do): Fix Edebug spec.
8957 2017-10-24 Michael Albinus <michael.albinus@gmx.de>
8959 * test/lisp/net/tramp-tests.el (tramp-test41-delay-load): New test.
8961 (tramp-test42-unload): Rename.
8963 2017-10-24 Glenn Morris <rgm@gnu.org>
8965 * admin/authors.el (authors-canonical-author-name):
8966 Ignore name issues in "lax" ChangeLogs.
8968 * test/lisp/progmodes/sql-tests.el
8969 (sql-tests-postgres-list-databases-error): Silence compiler.
8971 2017-10-23 Michael Albinus <michael.albinus@gmx.de>
8973 Further work on Bug#28889
8975 * lisp/net/tramp.el (tramp-set-syntax): New defun.
8976 (tramp-syntax): Use it. Change :package-version. (Bug#28889)
8978 2017-10-23 Michael Albinus <michael.albinus@gmx.de>
8980 Improve Tramp backward compatibility
8982 * lisp/net/tramp-compat.el (tramp-compat-tramp-file-name-slots):
8984 * lisp/net/tramp.el (with-parsed-tramp-file-name): Use it.
8986 2017-10-23 Michael Albinus <michael.albinus@gmx.de>
8988 Improve backward compatibility of tramp-tests.el
8990 * test/lisp/net/tramp-tests.el (tramp--test-emacs26-p): Fix docstring.
8991 (tramp-test41-unload): Skip unless Emacs >= 26.
8993 2017-10-23 Martin Rudalics <rudalics@gmx.at>
8995 Fix some ‘window-normalize-’ prefixed functions (Bug#28947)
8997 * lisp/window.el (window-normalize-buffer): Fix case where
8998 BUFFER-OR-NAME is a string specifying a dead buffer. Fix
8999 doc-string (Bug#28947).
9000 (window-normalize-frame, window-normalize-window): Fix
9001 doc-strings (Bug#28947).
9003 2017-10-23 Paul Eggert <eggert@cs.ucla.edu>
9007 Problem reported by Nelson H. F. Beebe (Bug#28893).
9008 Also see Bug#23748, Bug#9736, and Bug#5735.
9009 * configure.ac (tputs_library): Prefer libcurses to libtermcap,
9010 since OpenIndiana libtermcap lacks tparm.
9012 2017-10-22 Alexander Gramiak <agrambot@gmail.com>
9014 Don't fill keywords after Emacs Lisp docstring
9016 This approach does mean that keywords that have spaces before them
9017 inside of docstrings aren't filled, but I think this is should be fine
9018 until Bug#28937 is fixed.
9020 * lisp/emacs-lisp/lisp-mode.el (lisp-fill-paragraph): Add a colon to
9021 paragraph-start unconditionally, but require that it follows at least
9022 one space. (Bug#24622)
9023 * test/lisp/emacs-lisp/lisp-tests.el: New tests for Bug#24622 and
9026 2017-10-22 Alan Mackenzie <acm@muc.de>
9028 Refactor c-forward-token-2 with new function c-forward-over-token-and-ws.
9030 Use the new function directly in several places where c-forward-token-2
9031 wouldn't move over the last token in the buffer. This caused an infinite loop
9032 in c-restore-<>-properties.
9034 * lisp/progmodes/cc-engine.el (c-forward-over-token-and-ws): New function,
9035 extracted from c-forward-token-2.
9036 (c-forward-token-2): Refactor, calling the new function.
9037 (c-restore-<>-properties): Fix infinite loop.
9038 (c-forward-<>-arglist-recur, c-in-knr-argdecl)
9039 (c-looking-at-or-maybe-in-bracelist): Call the new function directly in place
9040 of c-forward-token-2.
9042 * lisp/progmodes/cc-cmds.el (c-defun-name) Call the new function directly in
9043 place of c-forward-token-2.
9045 * lisp/progmodes/cc-fonts.el (c-font-lock-enclosing-decls): Call the new
9046 function directly in place of c-forward-token-2.
9048 2017-10-22 Paul Eggert <eggert@cs.ucla.edu>
9050 Avoid unnecessary rounding errors in timestamps
9052 Avoid the rounding errors of float-time when it’s easy. E.g.,
9053 replace (< (float-time a) (float-time b)) with (time-less-p a b).
9054 * lisp/desktop.el (desktop-save):
9055 * lisp/ecomplete.el (ecomplete-add-item):
9056 * lisp/epg.el (epg-wait-for-completion):
9057 * lisp/files.el (dir-locals-find-file, dir-locals-read-from-dir):
9058 * lisp/image-dired.el (image-dired-get-thumbnail-image)
9059 (image-dired-create-thumb-1):
9060 * lisp/info.el (info-insert-file-contents):
9061 * lisp/ls-lisp.el (ls-lisp-format-time):
9062 * lisp/net/ange-ftp.el (ange-ftp-file-newer-than-file-p)
9063 (ange-ftp-verify-visited-file-modtime):
9064 * lisp/net/rcirc.el (rcirc-ctcp-sender-PING):
9065 * lisp/textmodes/remember.el (remember-store-in-mailbox):
9066 * lisp/url/url-cookie.el (url-cookie-expired-p):
9067 Bypass float-time to avoid rounding errors.
9069 * lisp/files.el (dir-locals-find-file):
9071 2017-10-22 Paul Eggert <eggert@cs.ucla.edu>
9073 Fix xdg timestamp error on 32-bit Emacs
9075 * lisp/xdg.el (xdg-thumb-mtime): Return an Emacs timestamp,
9076 not an integer. This avoids signaling an error on 32-bit
9077 Emacs, where timestamps typically do not fit into fixnums
9080 2017-10-22 John Williams <jrw@pobox.com> (tiny change)
9082 Test that advice doesn't trigger bytecomp warnings (Bug#28803)
9084 * test/lisp/emacs-lisp/bytecomp-tests.el
9085 (bytecomp-tests--test-no-warnings-with-advice): New test.
9087 2017-10-21 Noam Postavsky <npostavs@gmail.com>
9089 Another fix for unsafe directory error message (Bug#865)
9091 * lisp/server.el (server-ensure-safe-dir): Put file owner's uid, not
9092 current user's for the wrong owner case. Show expanded file name in
9095 2017-10-21 Noam Postavsky <npostavs@gmail.com>
9097 Handle https url for debbugs mbox (Bug#28831)
9099 In 2017-09-13 "Prefer HTTPS to FTP and HTTP in documentation",
9100 gnus-bug-group-download-format-alist was updated to use https for the
9101 debbugs.gnu.org mbox links, but gnus-read-ephemeral-bug-group assumed
9103 * lisp/gnus/gnus-group.el (gnus-read-ephemeral-bug-group): Use
9104 url-parse functions to get the host name, instead of ad-hoc regexps.
9106 2017-10-21 Noam Postavsky <npostavs@gmail.com>
9108 Ignore string properties when saving eshell history (Bug#28700)
9110 * lisp/eshell/em-hist.el (eshell-write-history): Remove properties
9111 before inserting history strings.
9112 (eshell-read-history): Remove obsolete comment.
9113 * test/lisp/eshell/em-hist-tests.el (eshell-write-readonly-history):
9116 2017-10-21 Michael Albinus <michael.albinus@gmx.de>
9120 * lisp/net/tramp.el: Change autoload cookie to tramp-autoload cookie.
9121 (tramp-completion-file-name-regexp-default)
9122 (tramp-completion-file-name-handler-alist)
9123 (tramp-completion-file-name-handler): Remove autoload cookie.
9124 (tramp-initial-completion-file-name-regexp): Remove.
9125 (tramp-autoload-file-name-regexp): New defconst.
9126 (tramp-register-autoload-file-name-handlers): Use it.
9127 (with-parsed-tramp-file-name): Adapt docstring. Compute
9128 `tramp-file-name' slots. (Bug#28889)
9130 2017-10-21 Glenn Morris <rgm@gnu.org>
9132 Update describe-function for recent Fdocumentation change
9134 * lisp/help-fns.el (describe-function-1):
9135 Handle Fdocumentation returning either void or invalid.
9137 2017-10-21 Charles A. Roelli <charles@aurox.ch>
9139 Make flymake's mouse-wheel interaction portable (Bug#28732)
9141 * lisp/progmodes/flymake.el (flymake--mode-line-format): Bind
9142 'mouse-wheel-down-event' and 'mouse-wheel-up-event' instead of
9143 'mouse-4' and 'mouse-5'. Update the tooltip text accordingly, and
9144 remove a stray newline in it.
9146 2017-10-21 Nick Helm <nick@tenpoint.co.nz>
9148 Prevent eldoc from changing the mode line
9150 * lisp/emacs-lisp/eldoc.el (eldoc-minibuffer-message): Don't
9151 change the mode line if it is not displayed. (Bug#28697)
9153 2017-10-21 Eli Zaretskii <eliz@gnu.org>
9155 Fix doc strings in simple.el
9157 * lisp/simple.el (shell-command-saved-pos)
9158 (region-extract-function, region-bounds): Doc fixes. (Bug#28609)
9160 2017-10-21 Phil Sainty <psainty@orcon.net.nz>
9162 Avoid creating inconsistent buffer states in term-char-mode
9164 * lisp/term.el (term-mode, term-char-mode, term-line-mode)
9165 (term-emulate-terminal): Make buffer read-only in 'term-char-mode',
9166 except for the process filter's output. Use 'read-only-mode-hook' to
9167 track and restore the user-set state of 'buffer-read-only' for
9168 'term-line-mode'. (Bug#24837)
9169 (term-char-mode-buffer-read-only): New user option.
9170 (term-line-mode-buffer-read-only): New buffer-local variable.
9171 (term-line-mode-buffer-read-only-update): New function.
9172 (term-char-mode, term-line-mode): Use 'term-set-goto-process-mark'
9173 in pre-command-hook, and 'term-goto-process-mark-maybe' in
9174 post-command-hook to counter-act unexpected changes to point when
9175 using 'term-char-mode'.
9176 (term-char-mode-point-at-process-mark): New user option.
9177 (term-goto-process-mark): New buffer-local variable.
9178 (term-set-goto-process-mark): New function.
9179 (term-goto-process-mark-maybe): New function.
9180 (term-process-mark): New function.
9182 * etc/NEWS: Mention the new behavior and user options.
9184 2017-10-21 Bahodir Mansurov <bahodir@mansurov.org> (tiny change)
9186 New input method 'usbek-cyrillic'
9188 * lisp/leim/quail/cyrillic.el (uzbek-cyrillic): New input method.
9191 * etc/NEWS: Mention the new input method.
9193 2017-10-21 Eli Zaretskii <eliz@gnu.org>
9195 Document 'minibuffer-with-setup-hook'
9197 * doc/lispref/minibuf.texi (Minibuffer Misc): Document
9198 minibuffer-with-setup-hook. (Bug#28877)
9200 2017-10-21 Paul Eggert <eggert@cs.ucla.edu>
9202 Simplify make-progress-reporter vs float-time
9204 * lisp/subr.el (make-progress-reporter): Remove no-longer-needed
9205 doc and code for the case where float-time is not supported,
9206 since float-time is always present now.
9208 2017-10-21 Paul Eggert <eggert@cs.ucla.edu>
9210 Fix two more minor Gnus typos
9212 * lisp/gnus/mail-source.el (mail-source-delete-old-incoming):
9213 The old code had two minor bugs: first, it multiplied by 1/65536
9214 instead of by 1/86400. Second, it called current-time twice and
9215 glued part of the two results together, resulting in a race.
9216 Fix both bugs by simplifying the code and using
9217 time-to-number-of-days.
9219 2017-10-21 Paul Eggert <eggert@cs.ucla.edu>
9221 Fix two minor Gnus typos
9223 * lisp/gnus/gnus-sum.el (gnus-summary-import-article):
9224 Remove unused local, and fix use of local that was never assigned to.
9226 2017-10-21 Glenn Morris <rgm@gnu.org>
9228 Tweak Fdocumentation's error for an undefined function
9230 * src/doc.c (Fdocumentation): Restore the pre-25 behavior
9231 of signalling a void-function error for an undefined function.
9232 This seems cleaner than Emacs 25's "invalid-function: nil" error,
9233 which was (probably) an unintended consequence of changes to
9236 2017-10-21 Glenn Morris <rgm@gnu.org>
9238 Tweak format of list of old files in NEWS header
9240 * etc/NEWS: Stop list of old NEWS files growing without limit.
9241 * admin/admin.el (set-version): Handle either NEWS header format.
9243 2017-10-20 Stefan Monnier <monnier@iro.umontreal.ca>
9245 * lisp/help-fns.el (describe-function-1):
9246 Fix help-fns-test-dangling-alias. (Bug#28918)
9248 (cherry picked from commit e1d42f8f4a945669ff8b5159a569cb4b18f56e18)
9250 2017-10-20 Glenn Morris <rgm@gnu.org>
9252 Fix flymake's loading of subr-x
9254 * lisp/progmodes/flymake.el, test/lisp/progmodes/flymake-tests.el:
9255 No need to load subr-x at run-time.
9257 2017-10-20 Michael Albinus <michael.albinus@gmx.de>
9261 * lisp/net/tramp-adb.el (tramp-adb-handle-rename-file):
9262 * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file):
9263 * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file): Handle FILENAME
9264 being a directory. (Bug#28896)
9266 * test/lisp/net/tramp-tests.el (tramp-test11-copy-file)
9267 (tramp-test12-rename-file): Test also FILENAME being a directory.
9269 2017-10-20 João Távora <joaotavora@gmail.com>
9271 Skip a Flymake test for old gcc versions
9275 * test/lisp/progmodes/flymake-tests.el
9276 (different-diagnostic-types): Skip this test for gcc versions
9279 2017-10-20 Eli Zaretskii <eliz@gnu.org>
9281 Make :align-to account for display-line-numbers
9283 These changes also update the various bundled packages to use
9284 new feature, and better support customizations of the line-number
9286 * src/xdisp.c (calc_pixel_width_or_height): Improve commentary.
9287 Make :align-to count from the end of the line-number display when
9288 the offset or the width form reference that of the text area.
9291 * src/indent.c (Fline_number_display_width): Implement support for
9292 the PIXELWISE argument being 'columns'. Update the doc string.
9293 (syms_of_indent): New symbol 'columns'.
9295 * lisp/ruler-mode.el (ruler-mode-window-col, ruler-mode-ruler):
9296 Call line-number-display-width with last argument 'columns'.
9298 * lisp/proced.el (proced-header-line): Call
9299 line-number-display-width with 2nd arg 'columns', which also fixes
9300 a problem when display-line-numbers is nil.
9302 * lisp/emacs-lisp/tabulated-list.el
9303 (tabulated-list-line-number-width): Call line-number-display-width
9304 with 2nd arg 'columns.
9305 (tabulated-list-entry-lnum-width): Remove unneeded defvar.
9306 (tabulated-list-print, tabulated-list-print-entry): No need to
9307 account for the value of tabulated-list-entry-lnum-width.
9308 (tabulated-list--current-lnum-width): New defvar.
9309 (tabulated-list-watch-line-number-width): New function.
9310 (tabulated-list-mode): Bind tabulated-list--current-lnum-width
9311 locally, and set up tabulated-list-watch-line-number-width as
9312 pre-redisplay-functions hook.
9314 * doc/lispref/display.texi (Size of Displayed Text): Document the
9315 'columns' value of the PIXELWISE argument.
9316 (Pixel Specification): Update and improve the documentation of the
9319 2017-10-20 João Távora <joaotavora@gmail.com>
9321 Augment Flymake API for third-party extensions
9324 https://lists.gnu.org/archive/html/emacs-devel/2017-10/msg00619.html
9326 * doc/misc/flymake.texi (Flymake error types): Rewrite
9328 (Flymake utility functions): Augment with new API.
9330 * lisp/progmodes/flymake.el (flymake-diagnostics): New function.
9331 (flymake--diag-accessor): New helper macro.
9332 (flymake-diagnostic-buffer, flymake-diagnostic-text)
9333 (flymake-diagnostic-beg, flymake-diagnostic-end)
9334 (flymake-diagnostic-backend): Accessors for diagnostic objects.
9335 (flymake--overlays): Use flymake-diagnostic property.
9336 (flymake--highlight-line): Simplify. Only set
9337 flymake-diagnostic property.
9338 (flymake--handle-report, flymake-goto-next-error): Use
9339 flymake-diagnostic property.
9340 (flymake-show-diagnostic): Use diagnostic object.
9341 (flymake--diagnostics-buffer-entries): Use
9342 flymake-diagnostics.
9344 2017-10-20 Glenn Morris <rgm@gnu.org>
9346 Improve treatment of Fortran's "class default"
9348 * lisp/progmodes/f90.el (f90-start-block-re, f90-no-block-limit):
9349 Handle "class default". (Bug#28786)
9350 * test/automated/f90.el (f90-test-bug25039): Add "class default".
9352 2017-10-20 João Távora <joaotavora@gmail.com>
9354 Flymake backends must check proc obsoleteness in source buffer
9356 Flymake backends that rely on sentinels running asynchronously and
9357 checking buffer-local variables that hold running processes should
9358 check for obsoleteness in the correct buffers, otherwise a (harmless)
9359 warning might be triggered.
9361 * doc/misc/flymake.texi (An annotated example backend):
9362 Check buffer-local proc in the current buffer.
9364 * lisp/progmodes/elisp-mode.el (elisp-flymake-byte-compile):
9365 Check buffer-local proc in the current buffer.
9367 2017-10-19 Michael Albinus <michael.albinus@gmx.de>
9369 Skip an rsync test in tramp-tests.el
9371 * test/lisp/net/tramp-tests.el (tramp-test17-dired-with-wildcards):
9374 2017-10-19 Martin Rudalics <rudalics@gmx.at>
9376 On Windows default a frame's border width to zero (Bug#28873)
9378 * src/w32fns.c (Fx_create_frame): Default `border-width' to zero
9379 as everywhere else, see Bug#28873.
9381 2017-10-19 Paul Eggert <eggert@cs.ucla.edu>
9385 * lisp/cedet/semantic/analyze/refs.el:
9386 (semantic-analyze-proto-impl-toggle): Fix recently-introduced
9387 misspelling of pop-to-buffer-same-window.
9389 2017-10-19 Bastian Beischer <bastian.beischer@gmail.com> (tiny change)
9391 Use pop-to-buffer-same-window instead of switch-to-buffer
9393 * lisp/cedet/semantic/decorate/include.el
9394 (semantic-decoration-include-visit):
9395 Use pop-to-buffer-same-window instead of switch-to-buffer
9398 * lisp/cedet/semantic/analyze/refs.el
9399 (semantic-analyze-proto-impl-toggle): Same.
9401 * lisp/cedet/semantic/senator.el (senator-go-to-up-reference):
9404 * lisp/cedet/semantic/mru-bookmark.el (semantic-mrub-visit):
9407 * lisp/cedet/semantic/complete.el (semantic-complete-jump):
9410 2017-10-18 Eli Zaretskii <eliz@gnu.org>
9412 Fix the MSDOS build.
9414 * msdos/sed1v2.inp (GETADDRINFO_A_LIBS, LIBLCMS2, XDBE_LIBS)
9415 (XDBE_FLAGS, HYBRID_MALLOC, LIBSYSTEMD_CFLAGS)
9416 (LIBSYSTEMD_LIBS): Edit to empty.
9417 (LIBRESOLV, DEPFLAGS, MKDEPDIR, YMF_PASS_LDFLAGS)
9418 (PRE_EDIT_LDFLAGS, POST_EDIT_LDFLAGS): Remove editing.
9419 Remove editing of lines that are no longer present in
9421 * msdos/sed2v2.inp (NEED_MKTIME_INTERNAL)
9422 (NEED_MKTIME_WORKING): Define to 1.
9423 (HAVE_STRUCT_DIRENT_D_TYPE): Define to 1 for
9425 (HAVE_STRUCT_ATTRIBUTE_ALIGNED): Define to 1.
9426 Define PACKAGE_VERSION, not VERSION.
9427 (FLEXIBLE_ARRAY_MEMBER): Define to empty.
9428 (HAVE_DECL_*_UNLOCKED): Define to 0.
9429 (HAVE___BUILTIN_FRAME_ADDRESS): Define to 1.
9430 (PENDING_*): Don't define, as Gnulib no longer supports that.
9431 Instead, define _IOERR as it is in libc/file.h.
9432 * msdos/sed3v2.inp: Use $(CURDIR) instead of $(shell cd) to
9433 determine the current directory.
9434 (UPDATE_MANIFEST, UTILITIES): Don't edit.
9435 * msdos/sedlisp.inp (FIND_DELETE): Edit to "-delete".
9436 * msdos/sedlibmk.inp (AUTO_DEPEND): Define to yes.
9437 (HYBRID_MALLOC): Edit to empty.
9438 (am__cd): Don't edit.
9439 (../config.status): Replaces $(top_builddir)/config.status.
9440 Define OMIT_GNULIB_MODULE_foo = true for modules not built for
9441 MS-DOS. Convert GL_GENERATE_xxx_H_TRUE and
9442 GL_GENERATE_xxx_H_FALSE into values of GL_GENERATE_xxx_H.
9443 * msdos/mainmake.v2 (src): Use 'compile-one-process', and make
9444 the command line shorter to fit into 126-char limit of
9446 * config.bat: Generate src/deps/*.d files. Rename more files
9447 like djtar on plain DOS would.
9448 Don't rename src/dir.h: it is long gone. Edit
9449 lib/gnulib.mk.in using the same scripts as for
9451 * msdos/depfiles.bat: Create *.d files, not *.Po.
9453 * src/thread.c (Fmake_thread) [!THREADS_ENABLED]: Improve the
9455 * src/thread.h [MSDOS]: Include <signal.h>.
9456 * src/sysselect.h (select) [MSDOS]: Undefine, to avoid
9458 * src/sysdep.c (block_interrupt_signal, restore_signal_mask):
9459 Expose to MSDOS build.
9460 * src/process.c (update_processes_for_thread_death)
9461 [!subprocess]: No-op implementation.
9462 [HAVE_SETRLIMIT]: Move inclusion of sys/resource.h and
9463 declaration of nofile_limit outside "#ifdef subprocesses", as
9464 it's needed for MSDOS.
9465 * src/msdos.c (faccessat): Declare fullname[].
9466 * src/msdos.h (ENOTSUP): Define to be identical to ENOSYS.
9467 Include termhooks.h.
9468 * src/conf_post.h [WINDOWSNT]: Include ms-w32.h only on
9469 WINDOWSNT, not DOS_NT.
9471 * admin/admin.el (set-version): Set version on PACKAGE_VERSION.
9473 2017-10-18 Eli Zaretskii <eliz@gnu.org>
9475 Fix line number display after 'widen'
9477 * src/xdisp.c (maybe_produce_line_number): Don't use data cached
9478 by line-number-mode on the first redisplay after the buffer is
9479 widened. (Bug#28879)
9481 2017-10-18 Alan Third <alan@idiocy.org>
9483 Remove resizable attribute on macOS undecorated frames (bug#28512)
9485 * src/nsterm.m (FRAME_DECORATED_FLAGS): Remove Cocoa specific #define.
9486 (initFrameFromEmacs): Remove Cocoa specific window style attributes.
9488 2017-10-18 Martin Rudalics <rudalics@gmx.at>
9490 Fix handling of `border-width' in `frameset--restore-frame' (Bug#28873)
9492 * lisp/frameset.el (frameset--restore-frame): Don't process
9493 `border-width' parameter via ‘modify-frame-parameters’
9496 2017-10-18 Tino Calancha <tino.calancha@gmail.com>
9498 Mention how to send CC to > 1 address in a bug report
9500 * admin/notes/bugtracker (* More detailed information):
9501 mention how to CC to more than 1 address (Bug#28833).
9503 2017-10-18 Paul Eggert <eggert@cs.ucla.edu>
9505 Improve format-time-string doc
9507 * doc/lispref/os.texi (Time Parsing): Fix some errors in the
9508 documentation for format-time-string. Document ^, #, %s, and %z
9509 with colons. Say that unrecognized sequences are output as-is.
9510 * src/editfns.c (Fformat_time_string): %S can stand for 60.
9511 Also mention unrecognized sequences.
9513 2017-10-17 Eli Zaretskii <eliz@gnu.org>
9515 Improve documentation of 'line-number-display-width'
9517 * doc/lispref/display.texi (Size of Displayed Text): Document the
9518 additional 2 columns used for line-number display.
9520 * src/indent.c (Fline_number_display_width): Doc fix. (Bug#28248)
9522 2017-10-17 İ. Göktuğ Kayaalp <self@gkayaalp.com>
9524 Implement vc-default-dir-extra-headers for vc-rcs
9526 Add a do-nothing implementation for vc-rcs to suppress the message which
9527 the default function adds to the vc-dir buffer (Bug#28570).
9528 * lisp/vc/vc-rcs.el (vc-rcs-dir-extra-headers): New function.
9530 2017-10-17 Martin Rudalics <rudalics@gmx.at>
9532 In NEWS give advice on use of `switch-to-buffer' (Bug#28645)
9534 * etc/NEWS: Mention that applications should prefer
9535 `pop-to-buffer-same-window' to `switch-to-buffer'. (Bug#28645)
9537 2017-10-17 Tino Calancha <tino.calancha@gmail.com>
9538 Noam Postavsky <npostavs@gmail.com>
9540 Dont update primary selection with winner-undo
9542 * lisp/winner.el (winner-set):
9543 Dont update primary selection when select-enable-primary
9544 is non-nil (Bug#28631).
9546 2017-10-17 Paul Eggert <eggert@cs.ucla.edu>
9548 Work around ImageMagick bug 825
9550 This should fix several bugs reported recently against Emacs
9551 (Bug#28518, Bug#28626, Bug#28632, Bug#28633, Bug#28770).
9552 * src/image.c (imagemagick_load_image):
9553 Do not call MagickWandTerminus.
9555 2017-10-17 Noam Postavsky <npostavs@gmail.com>
9557 Document rectangle-preview option more (Bug#27974)
9559 * lisp/rect.el (string-rectangle):
9560 * etc/NEWS.25: Mention `rectangle-preview'.
9562 2017-10-17 Paul Eggert <eggert@cs.ucla.edu>
9564 Do not reject https://gnu.org in commit messages
9566 * build-aux/git-hooks/commit-msg: Do not reject commit messages
9567 containing http: or ftp: URLs to gnu.org or fsf.org. Instead,
9568 rewrite the messages to use https: URLs.
9570 2017-10-16 Gemini Lasswell <gazally@runbox.com>
9572 Fix Edebug spec for cl-defun (bug#24255)
9574 * lisp/emacs-lisp/cl-macs.el: Modify the Edebug spec for
9575 `cl-lambda-list' to support destructuring argument lists.
9576 (cl-defun, cl-defmacro): Fix spelling errors in docstrings.
9577 * lisp/textmodes/rst.el: Remove alternate version of Edebug
9578 specs for `cl-lambda-list' and `cl-type-spec'.
9580 2017-10-16 Eli Zaretskii <eliz@gnu.org>
9582 Fix errors in kmacro.el post-command-hook
9584 * lisp/kmacro.el (kmacro-step-edit-active): Initialize to nil to
9585 avoid 'void-variable' errors. (Bug#28818)
9586 * test/lisp/kmacro-tests.el
9587 (kmacro-tests-step-edit-cleans-up-hook): Now succeeds. (Bug#18708)
9589 2017-10-16 Eli Zaretskii <eliz@gnu.org>
9591 Fix range-error in image-dired.el
9593 * lisp/image-dired.el (image-dired-create-thumb-1): Avoid
9594 overflowing an Emacs integer on 32-bit hosts. (Bug#28809)
9596 2017-10-16 Eli Zaretskii <eliz@gnu.org>
9598 Fix 'line-number-display-width' in hscrolled windows
9600 * src/indent.c (line_number_display_width): Make sure a line
9601 number is generated even when the first line of the window is
9602 completely hscrolled out of view. (Bug#28854)
9604 2017-10-16 Michael Albinus <michael.albinus@gmx.de>
9606 Fix error in tramp-smb-handle-insert-directory
9608 * lisp/net/tramp-smb.el (tramp-smb-handle-insert-directory):
9609 Insert size information only when FULL-DIRECTORY-P is non-nil.
9611 2017-10-16 Andy Moreton <andrewjmoreton@gmail.com>
9613 Don't reject PBM header whitespace unnecessarily
9615 * lisp/image.el (image-type-header-regexps):
9616 Allow two or more CRs or LFs in initial whitespace sequences. See:
9617 http://netpbm.sourceforge.net/doc/pbm.html
9619 2017-10-16 Paul Eggert <eggert@cs.ucla.edu>
9621 Fix regression in display of PPM images
9623 Problem reported by Roland Winkler (Bug#28824#35).
9624 Based on a patch proposed by Andy Moreton (Bug#28824#38).
9625 * src/image.c (pbm_scan_index): New function.
9626 (pbm_load): Use it to decode raw data correctly when its top bit
9629 2017-10-16 Eric Abrahamsen <eric@ericabrahamsen.net>
9631 Require subr-x when compiling nnimap.el
9633 * lisp/gnus/nnimap.el (require): For the when-let* macro.
9635 2017-10-15 Noam Postavsky <npostavs@gmail.com>
9637 Fix ert-test finding by symbol (Bug#28849)
9639 In 2017-07-28 "* lisp/subr.el (define-symbol-prop): New function", the
9640 symbol used for ert tests in load-history was changed from
9641 `ert-deftest' to `ert--test', but a couple of other places were not
9642 updated accordingly.
9643 * lisp/emacs-lisp/ert.el (ert-find-test-other-window): Pass
9644 `ert--test' as the TYPE to `find-function-do-it'.
9645 (top-level): Use `ert--test' as the key to the
9646 `find-function-regexp-alist' entry.
9648 2017-10-15 Noam Postavsky <npostavs@gmail.com>
9650 Don't remember old debugger window (Bug#17882)
9652 * lisp/emacs-lisp/debug.el (debug): Unset debugger-previous-window
9653 when `debugger-will-be-back' is nil.
9655 2017-10-15 Noam Postavsky <npostavs@gmail.com>
9657 Disable python native completion on w32 (Bug#28580)
9659 * lisp/progmodes/python.el
9660 (python-shell-completion-native-disabled-interpreters): For windows-nt
9661 systems, put an empty string to match interpreters.
9663 2017-10-15 Noam Postavsky <npostavs@gmail.com>
9665 Let select-frame-by-name choose any frame when called from lisp (Bug#25521)
9667 * lisp/frame.el (select-frame-by-name): Choose from the whole list of
9668 frames in the non-interactive part, if not found on the current
9671 2017-10-15 Eli Zaretskii <eliz@gnu.org>
9673 * lisp/dired-aux.el (dired-create-directory): Doc fix.
9675 2017-10-15 Eli Zaretskii <eliz@gnu.org>
9677 Avoid compilation warnings in optimized builds
9679 * src/process.c (Fmake_network_process):
9680 * src/image.c (xbm_scan, gif_load):
9681 * src/fileio.c (Frename_file):
9682 * src/data.c (Fmake_local_variable):
9683 * src/buffer.c (fix_start_end_in_overlays):
9684 * lib-src/etags.c (process_file_name): Mark variables with UNINIT
9685 to avoid compiler warnings in optimized builds.
9687 2017-10-15 K. Handa <handa@gnu.org>
9689 Improve customization of arabic-shaper-ZWNJ-handling.
9691 Make the effect of customizing arabic-shaper-ZWNJ-handling appear
9693 * lisp/language/misc-lang.el (arabic-shaper-ZWNJ-handling): Add :set
9695 * src/composite.c (Fclear_composition_cache): New function.
9696 (syms_of_composite): Defsubr it.
9698 2017-10-15 Charles A. Roelli <charles@aurox.ch>
9700 Improve customization type of 'mouse-drag-and-drop-region'
9702 * lisp/mouse.el (mouse-drag-and-drop-region): Provide a more
9703 precise customization type.
9705 2017-10-15 Paul Eggert <eggert@day>
9707 Encourage https: in commit messages
9709 * CONTRIBUTE: Prefer https: when citing.
9710 * build-aux/git-hooks/commit-msg:
9711 Diagnose http: and ftp: URLs to FSF or GNU hosts.
9713 2017-10-14 Martin Rudalics <rudalics@gmx.at>
9715 Fix wording in Elisp manual's child frames section (Bug#28819)
9717 * doc/lispref/frames.texi (Child Frames): Fix wording (Bug#28819).
9719 2017-10-14 Eli Zaretskii <eliz@gnu.org>
9721 Another fix for C mode fontification of w32 source files
9723 * .dir-locals.el (c-mode) <c-noise-macro-names>: Add
9724 "CALLBACK", to correctly fontify functions with this attribute.
9726 2017-10-14 Eli Zaretskii <eliz@gnu.org>
9728 Fix fontification of ALIGN_STACK functions
9730 * .dir-locals.el (c-mode) <c-noise-macro-names>: Add
9731 "ALIGN_STACK", to correctly fontify functions with this attribute.
9733 2017-10-14 Eli Zaretskii <eliz@gnu.org>
9735 Make sure thread stack is properly aligned on MS-Windows
9737 * src/systhread.c: Include w32term.h instead of windows.h.
9738 (w32_beginthread_wrapper): Add ALIGN_STACK attribute, to ensure
9739 the thread's stack is correctly aligned.
9740 * src/w32term.h (ALIGN_STACK): Update commentary.
9742 2017-10-14 Paul Eggert <eggert@cs.ucla.edu>
9744 Do not under-align pseudovectors
9746 Problem reported by Fabrice Popineau in:
9747 https://lists.gnu.org/archive/html/emacs-devel/2017-10/msg00357.html
9748 Also see diagnosis by Eli Zaretskii in:
9749 https://lists.gnu.org/archive/html/emacs-devel/2017-10/msg00476.html
9750 * src/alloc.c (vector_alignment):
9751 Now a multiple of alignof (max_align_t).
9753 2017-10-13 Simen Heggestøyl <simenheg@gmail.com>
9755 Fix indentation bug in multi-line CSS selectors
9757 * lisp/textmodes/css-mode.el (css--colon-inside-selector-p): Fix
9758 indentation of multi-line CSS selectors that include both a
9759 pseudo-class and parenthesis.
9761 * test/manual/indent/css-mode.css: Add test for the above change.
9763 2017-10-13 Andreas Schwab <schwab@linux-m68k.org>
9765 gnutls_mac_get_nonce_size has been added in gnutls 3.3
9767 * src/gnutls.c (HAVE_GNUTLS_MAC_GET_NONCE_SIZE)
9768 [GNUTLS_VERSION_NUMBER >= 0x030300]: Define.
9769 (gnutls_mac_get_nonce_size): Depend on
9770 HAVE_GNUTLS_MAC_GET_NONCE_SIZE.
9771 (Fgnutls_macs): Use 0 for :mac-algorithm-noncesize if
9772 !HAVE_GNUTLS_MAC_GET_NONCE_SIZE.
9774 2017-10-13 Paul Eggert <eggert@cs.ucla.edu>
9776 * CONTRIBUTE: Suggest American English.
9778 2017-10-12 Eli Zaretskii <eliz@gnu.org>
9780 Fix this-command-keys for "M-x foo" commands
9782 * src/keyboard.c (Fset__this_command_keys): Don't assume KEYS is a
9783 unibyte string. (Bug#28798)
9785 2017-10-12 Paul Eggert <eggert@cs.ucla.edu>
9787 Let rename-file rename dirs across filesystems
9789 Problem diagnosed by Andreas Schwab (Bug#28792#65).
9790 This fixes a bug that I introduced in
9791 2017-09-10T22:39:24@eggert@cs.ucla.edu
9792 "Fix race with rename-file etc. with dir NEWNAME".
9793 * src/fileio.c (Frename_file): Copy a source directory across
9794 file system boundaries even if its name does not end in slash.
9796 2017-10-12 João Távora <joaotavora@gmail.com>
9798 Simplify Flymake user documentation
9800 Fix some confusing parts of Flymake user documentation, like a
9801 repeated listing of situations leading to a syntax check.
9802 Documentation is now divided into three chapters only: "Using
9803 Flymake", "Extending Flymake", and a chapter for the legacy backend.
9805 Obsolete mention of "errors" and "lines" is replaced by
9806 "diagnostics/problems" and "regions" where appropriate.
9808 * doc/misc/flymake.texi (Overview of Flymake): Delete chapter.
9809 (Using Flymake): Merge with chapter "Overview of Flymake".
9810 (Installing Flymake): Delete chapter.
9811 (Flymake mode, Running the syntax check)
9812 (Navigating to error lines): Delete sections.
9813 (Syntax check statuses): Review and augment with x-references.
9814 (Backend exceptions): Mention shortcut in menu.
9816 * lisp/progmodes/flymake.el (flymake-menu): Tweak minor mode
9817 menu to not speak of "errors".
9818 (flymake-goto-next-error, flymake-goto-prev-error): Fix
9821 2017-10-12 Eli Zaretskii <eliz@gnu.org>
9823 * etc/NEWS: Mention the new version of Org.
9825 2017-10-12 Noam Postavsky <npostavs@gmail.com>
9827 Don't use (format "%s" ...) for string copying (Bug#28774)
9829 As of 2017-10-04 'Speed up (format "%s" STRING) and the like', (format
9830 "%s" STRING) no longer produces a new string.
9831 * lisp/ido.el (ido-completions): Use `copy-sequence' to make a new
9832 string, so that we can add text properties to (copies of) symbol
9835 2017-10-11 Alan Third <alan@idiocy.org>
9837 Make frame-list-z-order on NS match Windows behavior (bug#28788)
9839 * src/nsfns.m (Fns_frame_list_z_order): If terminal isn't a frame,
9840 ignore it rather than returning nil.
9842 2017-10-11 Nicolas Petton <nicolas@petton.fr>
9844 Bump Emacs version to 26.0.90
9849 * nt/README.W32: Bump Emacs version.
9851 2017-10-11 Nicolas Petton <nicolas@petton.fr>
9855 * admin/authors.el (authors-valid-file-names)
9856 (authors-renamed-files-alist): Additions.
9858 2017-10-11 Nicolas Petton <nicolas@petton.fr>
9860 * admin/authors.el (authors-aliases): Additions.
9862 * ChangeLog.3: Update.
9864 2017-10-11 Radon Rosborough <radon.neon@gmail.com>
9866 Fix docstring style for 'functionp'
9868 * src/eval.c (functionp): Make docstring start with verb.
9871 2017-10-11 Michael Albinus <michael.albinus@gmx.de>
9873 Format shell commands in tramp.texi
9875 * doc/misc/tramp.texi (Obtaining Tramp, Remote shell setup):
9876 Format shell commands better.
9878 2017-10-10 João Távora <joaotavora@gmail.com>
9880 Unbreak the button in the Flymake diagnostics buffer again
9882 Adding the 'keymap' property enabled RET but broke the mouse-action.
9884 * lisp/progmodes/flymake.el
9885 (flymake--diagnostics-buffer-entries): Use 'action' instead of 'keymap'.
9887 2017-10-10 Mark Oteiza <mvoteiza@udel.edu>
9889 Add mode map to Flymake diagnostic button
9891 * lisp/progmodes/flymake.el (flymake--diagnostics-buffer-entries): Add
9894 2017-10-10 João Távora <joaotavora@gmail.com>
9896 Tweak the Flymake diagnostics buffer again
9898 * lisp/progmodes/flymake.el
9899 (flymake-diagnostics-buffer-mode-map): Don't bind [mouse-1].
9900 (flymake-show-diagnostic): Rename from
9901 flymake-show-diagnostic-at-point. Really use another window.
9902 (flymake-goto-diagnostic): Rename from
9903 flymake-goto-diagnostic-at-point.
9904 (flymake--diagnostics-buffer-entries): Use a button just for
9907 2017-10-10 Mark Oteiza <mvoteiza@udel.edu>
9909 Simplify Flymake diagnostics buffer UX
9911 Don't create text-buttons unnecessarily, just bind RET and SPC in the
9912 diagnostics buffer to a command that figures out which diagnostic it
9915 * lisp/progmodes/flymake.el
9916 (flymake--diagnostics-buffer-mode-keymap): Renamed from
9917 flymake--diagnostics-buffer-button-keymap.
9918 (flymake-show-diagnostic-at-point): Don't take a button.
9919 (flymake-goto-diagnostic-at-point): Don't pass button to
9920 flymake-show-diagnostic-at-point.
9921 (flymake--diagnostics-buffer-entries): Simplify.
9923 2017-10-10 João Távora <joaotavora@gmail.com>
9925 First stab at a Flymake diagnostics buffer
9927 The diagnostics buffer summarizes the diagnostics of a buffer in a
9928 tabulated list and is permanently updated after each Flymake check.
9930 * lisp/progmodes/flymake.el (flymake--handle-report): Call
9931 flymake-show-diagnostics-buffer under certain conditions.
9932 (flymake-menu, flymake--diagnostics-buffer-source)
9933 (flymake--diagnostics-buffer-button-keymap)
9934 (flymake-show-diagnostic-at-point)
9935 (flymake-goto-diagnostic-at-point)
9936 (flymake--diagnostics-buffer-entries)
9937 (flymake-diagnostics-buffer-mode)
9938 (flymake--diagnostics-buffer-name)
9939 (flymake-show-diagnostics-buffer): New definitions.
9941 2017-10-10 João Távora <joaotavora@gmail.com>
9943 * etc/NEWS (Flymake): Rewrite entry.
9945 2017-10-10 Eli Zaretskii <eliz@gnu.org>
9947 Improve the Flymake manual
9949 * doc/misc/flymake.texi: Add a 'coding' cookie. Add a
9950 @syncodeindex directive for @vindex. Use 2 spaces between
9951 sentences. Lower-case @cindex entries.
9952 (Overview of Flymake): Fix use of @itemize and @pxref. Fix
9953 punctuation and markup.
9954 (Backend exceptions): Use @emph instead of @dfn. Add more
9956 (Customizable variables, Extending Flymake): Improve wording.
9957 (Flymake error types): Fix usage of @itemize. Improve wording.
9958 (Backend functions): Fix punctuation. Fix markup. Add a
9959 cross-reference to ELisp manual.
9960 (Flymake utility functions): Add a cross-reference to ELisp manual.
9961 (An annotated example backend): Fix punctuation and typos.
9962 (Flymake mode, Running the syntax check)
9963 (Navigating to error lines, Backend exceptions)
9964 (Customizable variables, Flymake error types, Backend functions)
9965 (Flymake utility functions, Proc customization variables)
9966 (Locating a master file, Locating the buildfile)
9967 (Starting the syntax check process, Parsing the output)
9968 (Interaction with other modes): Fix indexing. Add index entries
9969 for functions, variables, and concepts.
9971 2017-10-10 João Távora <joaotavora@gmail.com>
9973 Fix two Flymake bugs
9975 * lisp/progmodes/flymake.el (define-fringe-bitmap): Protect
9976 against --without-x.
9977 (flymake--mode-line-format): Ensure mode-line's mouse-4 and mouse-5 work
9978 in their own windows.
9980 2017-10-10 João Távora <joaotavora@gmail.com>
9982 Don't log "emergencies" in the Flymake legacy backend
9984 * lisp/progmodes/flymake-proc.el (flymake-proc--panic)
9985 (flymake-proc-legacy-flymake): Don't log "emergencies"
9987 2017-10-10 João Távora <joaotavora@gmail.com>
9989 Add full documentation on new Flymake API
9991 Also, as a minor addition to this API, set flymake-text
9992 on the diagnostic overlay. This enables a good example in
9993 the section "Customization Flymake annotations".
9995 * doc/misc/flymake.texi (Overview of Flymake)
9996 (Syntax check statuses): Rework.
9997 (Backend exceptions): Rename from "Troubleshooting"
9998 (Customizable variables): Add flymake-start-on-flymake-mode. Rework.
9999 (Extending Flymake): Write chapter.
10000 (Customizing Flymake annotations, Flymake backends)
10001 (Flymake utility functions, An annotated example backend):
10002 New sections and subsections
10004 * lisp/progmodes/flymake.el (flymake-diagnostic-functions)
10005 (flymake-diagnostic-types-alist): Rework docstring.
10006 (flymake--highlight-line): Set and use flymake-text property in overlay.
10007 (flymake-goto-next-error, flymake-goto-prev-error): Fix funny quotes.
10009 2017-10-10 João Távora <joaotavora@gmail.com>
10011 Fix some Flymake docstrings and messages
10013 * lisp/progmodes/flymake.el
10014 (flymake-start-on-flymake-mode): fix typo.
10015 (flymake-mode): Add docstring.
10016 (flymake-mode-line-format): Fix help-echo indications. mouse-2
10017 describes flymake-mode.
10019 2017-10-10 João Távora <joaotavora@gmail.com>
10021 Make three new Flymake commands for debugging common problems
10023 * lisp/progmodes/flymake.el (flymake-running-backends)
10024 (flymake-disabled-backends)
10025 (flymake-reporting-backends): Make interactive.
10026 (flymake--collect): Take optional arg.
10028 2017-10-09 Nicolas Petton <nicolas@petton.fr>
10030 * admin/authors.el (authors-renamed-files-alist): addition.
10032 2017-10-09 Paul Eggert <eggert@cs.ucla.edu>
10034 Fix PWD check on DOS_NT
10036 * src/sysdep.c (get_current_dir_name_or_unreachable):
10037 Do not consider a file name like "a:b" to be absolute on DOS_NT.
10039 2017-10-09 Paul Eggert <eggert@cs.ucla.edu>
10041 Fix unlikely overflows with wd length
10043 * src/sysdep.c (get_current_dir_name_or_unreachable):
10044 Avoid integer overflow if working directory name is absurdly long.
10045 When allocating memory for getcwd, do not exceed MAXPATHLEN.
10047 2017-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
10049 * lisp/gnus/message.el: Improve last commit
10051 (message-clone-locals): Don't mistakenly match other variables whose
10052 name happens to include "message-default-charset".
10054 2017-10-09 Ken Olum <kdo@cosmos.phy.tufts.edu>
10056 Fix problems when editing raw undecoded message (Bug#28671)
10058 * lisp/mail/rmailedit.el (rmail-cease-edit): If rmail-old-mime-state
10059 is set, meaning that we are editing the raw message, do not
10060 encode it again. Delete old body after, not before, inserting
10061 new, to avoid moving marker at beginning of next message.
10063 2017-10-09 Eli Zaretskii <eliz@gnu.org>
10065 Avoid encoding errors in message.el
10067 * lisp/gnus/message.el (message-clone-locals): Don't clone
10068 message-default-charset. (Bug#25645)
10070 2017-10-09 Eli Zaretskii <eliz@gnu.org>
10072 Improve doc string and prompt of 'grep-read-files'
10074 * lisp/progmodes/grep.el (grep-read-files): Clarify in the doc
10075 string and in the prompt that shell wildcards can be used.
10076 Suggested by Allen Li <vianchielfaura@gmail.com>. (Bug#28615)
10078 2017-10-09 Eli Zaretskii <eliz@gnu.org>
10080 Avoid assertion violations when line numbers are displayed
10082 * src/xdisp.c (redisplay_window): Clear the window's desired glyph
10083 matrix before calling try_window with the same starting point.
10084 This avoids assertion violations when switching from a buffer
10085 without line numbers to a buffer with line numbers. (Bug28710)
10087 2017-10-09 João Távora <joaotavora@gmail.com>
10089 Be lazy when starting Flymake checks
10091 Don't start the check immediately if the buffer is not being
10092 displayed. Wait until it is, using window-configuration-change-hook.
10094 This enables the user to batch-enable flymake-mode on many buffers and
10095 not have that operation exhaust system resources for checking each
10096 one. Likewise, an editing or save operation in a currently
10097 non-displayed buffer does not immediately start a check.
10099 * lisp/progmodes/flymake.el (flymake-start-on-flymake-mode):
10100 Rename from flymake-start-syntax-check-on-find-file.
10101 (flymake-start-syntax-check-on-find-file): Obsolete alias for
10102 flymake-start-on-flymake-mode.
10103 (flymake-start): Redesign. Affect the global post-command-hook
10104 and local window-configuraiton-change-hook.
10105 (flymake--schedule-timer-maybe)
10106 (flymake-after-change-function, flymake-after-save-hook): Pass
10107 t to flymake-start.
10109 * test/lisp/progmodes/flymake-tests.el (flymake-tests--call-with-fixture)
10110 (dummy-backends, recurrent-backend): Start flymake check
10111 explicitly and immediately.
10113 2017-10-09 Eli Zaretskii <eliz@gnu.org>
10115 Fix last change in frameset.el
10117 * lisp/frameset.el (frameset-filter-font-param): Fix a thinko in
10118 filtering the 'font' parameter. (Bug#17352)
10120 2017-10-09 Martin Rudalics <rudalics@gmx.at>
10122 Describe how window dividers can replicate vertical borders (Bug#27830)
10124 * doc/emacs/frames.texi (Scroll Bars): Describe how window
10125 dividers can be used to replicate vertical borders when scroll
10126 bars are disabled (Bug#27830).
10127 * doc/emacs/frames.texi (Window Dividers): Mention their use
10128 in replicating vertical borders.
10130 2017-10-09 Alexander Gramiak <agrambot@gmail.com>
10132 Add line-number faces to the display-line-numbers group
10134 See https://lists.gnu.org/r/emacs-devel/2017-10/msg00151.html
10135 and its resulting thread.
10137 * lisp/display-line-numbers.el (display-line-numbers): Add to the
10139 * lisp/faces.el (line-number):
10140 (line-number-current-line): Add to the display-line-numbers group.
10142 2017-10-09 Alexander Gramiak <agrambot@gmail.com>
10144 Increase xterm click count only within double-click-fuzz
10146 * lisp/xt-mouse.el (xterm-mouse-event): Save the last click's position
10147 and check it against the current click's position. (Bug#28658)
10149 2017-10-08 Alan Third <alan@idiocy.org>
10151 Change pause in fullscreen toggling for NS port (bug#28496)
10153 * lisp/frame.el (toggle-frame-fullscreen): Replace sit-for with
10154 sleep-for, and reduce time.
10156 2017-10-08 Michael Albinus <michael.albinus@gmx.de>
10158 Handle PARENTS properly in tramp-*-handle-make-directory
10160 * lisp/net/tramp-adb.el (tramp-adb-handle-make-directory):
10161 * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-make-directory):
10162 Handle PARENTS properly.
10164 * test/lisp/net/tramp-tests.el (tramp-test13-make-directory):
10167 2017-10-08 Paul Eggert <eggert@cs.ucla.edu>
10169 Improve test for unreachable dirs
10171 * src/sysdep.c (get_current_dir_name_or_unreachable):
10172 New function, with most of the old contents of
10173 emacs_get_current_dir_name.
10174 (emacs_get_current_dir_name): Use it. Use a simpler
10175 test for unreachable directory strings, and also apply
10176 it to getcwd etc. (Bug#27871)
10178 2017-10-08 Paul Eggert <eggert@cs.ucla.edu>
10180 * src/xsmfns.c (x_session_initialize): Fix memory leak.
10182 2017-10-08 K. Handa <handa@gnu.org>
10184 New option for handling ZWNJ in Arabic text rendering
10186 Provide a new option 'arabic-shaper-ZWNJ-handling' that controls how
10187 to display ZWNJ in Arabic text rendering (Bug#28339).
10188 * lisp/language/misc-lang.el: Register arabic-shape-gstring in
10189 composition-function-table.
10190 (arabic-shaper-ZWNJ-handling): New variable.
10191 (arabic-shape-log): New variable.
10192 (arabic-shape-gstring): New function.
10193 * lisp/composite.el (lgstring-remove-glyph): New function.
10195 2017-10-08 Noam Postavsky <npostavs@gmail.com>
10197 Make python prettify symbols into a defvar (Bug#28713)
10199 * lisp/progmodes/python.el (python-prettify-symbols-alist): New
10201 (python--prettify-symbols-alist): Make into obsolete alias for
10202 `python-prettify-symbols-alist'.
10204 2017-10-07 Alan Third <alan@idiocy.org>
10206 Fix fullscreen crash on macOS (bug#28496)
10208 * lisp/frame.el (toggle-frame-fullscreen): Wait for animation to
10211 2017-10-07 Alan Third <alan@idiocy.org>
10213 Fix crash when closing fullscreen frame on macOS (bug#28661)
10215 * src/nsterm.m (EmacsView::windowWillResize): Return new frame size
10216 unmodified if the frame isn't live.
10218 2017-10-07 Michael Albinus <michael.albinus@gmx.de>
10220 Support gio tool in Tramp
10222 "gvfs-<command>" utilities have been deprecated in GVFS 1.31.1. We
10223 must use "gio <command>" tool instead.
10225 * lisp/net/tramp-gvfs.el (tramp-gvfs-gio-mapping): New defconst.
10226 (tramp-gvfs-handle-file-notify-add-watch): Support also "gio monitor"
10227 (tramp-gvfs-gio-tool-p): New defun.
10228 (tramp-gvfs-send-command): Use it. Call gio tool if available.
10230 2017-10-07 João Távora <joaotavora@gmail.com>
10232 Fix flymake-goto-next-error when message has %-constructs
10234 * lisp/progmodes/flymake.el (flymake-goto-next-error): Fix
10235 message call. Add missing period in docstring.
10237 2017-10-07 Piotr Trojanek <piotr.trojanek@gmail.com>
10239 * src/gnutls.c (syms_of_gnutls): Remove duplicated call to DEFSYM.
10241 2017-10-07 Eli Zaretskii <eliz@gnu.org>
10243 Move the entry about 'format' into Incompatible Lisp Changes
10245 * etc/NEWS: Move the entry about 'format' refraining from allocating
10246 new strings into Incompatible Lisp Changes. (Bug#28625)
10248 2017-10-07 Eli Zaretskii <eliz@gnu.org>
10250 Fix glitches in displaying TTY menus
10252 * src/dispnew.c (update_frame_line): Accept an additional argument
10253 UPDATING_MENU_P; if non-zero, home the cursor before updating a
10254 frame's line. All callers changed.
10255 (update_frame_1): Accept an additional argument UPDATING_MENU_P,
10256 and pass it to update_frame_line. All callers changed.
10257 (update_frame_with_menu): Call update_frame_1 with last argument
10258 non-zero. (Bug#17497)
10260 2017-10-06 Gemini Lasswell <gazally@runbox.com>
10262 Create new Edebug spec for docstrings and use it in closures
10264 Since (:documentation FORM) can be used to create a docstring
10265 when lexical-binding is on, allow for that possibility in Edebug
10267 * lisp/emacs-lisp/edebug.el: Define an Edebug spec for docstrings
10268 called lambda-doc and modify the Edebug specs for defun and
10269 defmacro to use it.
10270 (edebug-instrument-function): Check for generic functions first,
10271 to fix bug where edebug-step-in didn't work on methods now that
10272 cl-defgeneric has an Edebug spec.
10273 * lisp/subr.el (lambda): Modify Edebug spec to use lambda-doc.
10274 * lisp/emacs-lisp/cl-generic.el (cl-defgeneric): Add Edebug spec
10276 (cl-defmethod): Use lambda-doc in Edebug spec.
10277 * lisp/emacs-lisp/cl-macs.el: Modify Edebug spec for
10278 cl-declarations-or-string to use lambda-doc, and modify Edebug
10279 spec for cl-lambda-expr to use cl-declarations-or-string.
10280 * lisp/emacs-lisp/pcase.el (pcase-lambda): Modify Edebug spec to
10281 use lambda-doc, as well as &define and def-body which are
10282 necessary for using Edebug on code wrapped by lambda.
10283 * lisp/emacs-lisp/generator.el (iter-defun, iter-lambda): Add
10286 2017-10-06 Eli Zaretskii <eliz@gnu.org>
10288 Avoid byte-compilation warnings in message.el
10290 * lisp/gnus/message.el: Require 'subr-x' when compiling, to
10291 avoid compiler warnings.
10293 2017-10-06 Paul Eggert <eggert@cs.ucla.edu>
10295 Fix bug in recent styled_format change
10297 Problem reported by Kaushal Modi in:
10298 https://lists.gnu.org/r/emacs-devel/2017-10/msg00141.html
10299 * src/editfns.c (styled_format): Fix bug where USE_SAFE_ALLOCA was
10300 not always followed by SAFE_FREE. This bug was introduced in my
10301 patch 2017-09-26T23:31:57Z!eggert@cs.ucla.edu entitled "Avoid some
10302 unnecessary copying in Fformat etc."
10304 2017-10-06 João Távora <joaotavora@gmail.com>
10306 Cleanup emacs-lisp-mode's use of Flymake
10308 * lisp/progmodes/elisp-mode.el (elisp-flymake--checkdoc-1):
10310 (elisp-flymake-checkdoc): Incorporate old
10311 elisp-flymake--checkdoc-1.
10312 (elisp-flymake--byte-compile-done): Simplify. Don't cleanup
10314 (elisp-flymake-byte-compile): Remove spurious interactive spec.
10315 Simplify. Cleanup on every possible exit.
10317 2017-10-06 João Távora <joaotavora@gmail.com>
10319 Fix @include directive in Flymake doc
10321 * doc/misc/flymake.texi: Don't @include a relative path.
10323 2017-10-06 Mark Oteiza <mvoteiza@udel.edu>
10325 Move read-multiple-choice to its own library
10327 * lisp/emacs-lisp/rmc.el: New file.
10328 * lisp/emacs-lisp/subr-x.el (read-multiple-choice): Remove.
10329 * lisp/gnus/message.el:
10330 * lisp/net/nsm.el: Change required library.
10332 2017-10-06 Piotr Trojanek <piotr.trojanek@gmail.com>
10334 * src/process.c (syms_of_process): Remove duplicated call to DEFSYM.
10338 2017-10-06 Lele Gaifax <lele@metapensiero.it>
10340 Fix typos in Flymake documentation
10342 * doc/misc/flymake.texi (Syntax check statuses)
10343 (Adding support for a new syntax check tool)
10344 (Implementation overview, Locating the buildfile): Fix typos.
10346 * lisp/progmodes/flymake-proc.el (flymake-proc--report-fn)
10347 (flymake-proc--find-possible-master-files):Fix typos.
10348 (flymake-proc--panic)
10349 (flymake-proc-legacy-flymake): Fix function reference in doc.
10351 * lisp/progmodes/flymake.el (flymake-error)
10352 (flymake-diagnostic-functions): Fix typos.
10353 (flymake-diagnostic-types-alist): Rephrase and fix typos.
10354 (flymake--backend-state): Fix typos and rephrase.
10355 (flymake--handle-report): Delete empty line.
10356 (flymake--disable-backend)
10357 (flymake--run-backend): Fix typos.
10358 (flymake-goto-next-error, flymake-goto-prev-error): Rephrase.
10360 2017-10-06 Eli Zaretskii <eliz@gnu.org>
10362 Revert last change in 'shr-descend'
10364 * lisp/net/shr.el (shr-descend): Revert the part of the last
10365 change which introduced calls to shr-indirect-call into this
10366 function. Add a comment explaining the rationale for that.
10369 2017-10-06 João Távora <joaotavora@gmail.com>
10371 Don't error when turning on Flymake with no known backends
10373 Leave it to the mode line indicator to inform the user that there
10374 is still some configuration to do.
10376 * lisp/progmodes/flymake.el (flymake-mode): Simplify.
10378 2017-10-06 João Távora <joaotavora@gmail.com>
10380 Delete a Flymake obsolete alias that can't possibly work
10382 The function `flymake-ler-make-ler' can't possibly work as an backward
10383 compatible interface to existing extensinos (even purely hypothetical
10384 ones, since none are known). This is because every diagnostic
10385 considered by Flymake has to passed to a report-fn function.
10387 * lisp/progmodes/flymake.el (flymake-ler-make-ler): Delete.
10389 2017-10-06 Paul Eggert <eggert@cs.ucla.edu>
10391 Fix bug with unmounted directory on GNU/Linux
10393 * src/sysdep.c (emacs_get_current_dir_name): Do not use
10394 get_current_dir_name result unless it is absolute (Bug#27871).
10397 2017-10-05 Nicolas Petton <nicolas@petton.fr>
10401 * admin/authors.el (authors-renamed-files-alist)
10402 (authors-valid-file-names): Additions.
10404 2017-10-05 Gemini Lasswell <gazally@runbox.com>
10406 Fix dynamic binding wrapper in iter-lambda (bug#25965)
10408 * lisp/emacs-lisp/generator.el (cps--make-dynamic-binding-wrapper):
10409 Remove extra evaluation of form.
10410 * test/lisp/emacs-lisp/generator-tests.el
10411 (cps-iter-lambda-with-dynamic-binding): New test.
10413 2017-10-05 Rasmus <rasmus@gmx.us>
10415 Update Org to v9.1.2
10417 Please note this is a bugfix release. See etc/ORG-NEWS for details.
10419 2017-10-05 Alan Mackenzie <acm@muc.de>
10421 Fix irregularities with CC Mode fontification, particularly with "known types"
10423 * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): Introduce a new
10424 optional parameter, template-class. In "class <X = Y>", fontify "Y" as a
10426 (c-font-lock-single-decl): New variable template-class, set to non-nil when we
10427 have a construct like the above. Pass this as argument to
10428 c-font-lock-declarators.
10429 (c-font-lock-cut-off-declarators): Check more rigorously that a declaration
10430 being processed starts before the function's starting position.
10431 (c-complex-decl-matchers): Remove the redundant clause which fontified "types
10432 preceded by, e.g., "struct"".
10434 * lisp/progmodes/cc-langs.el (c-template-typename-kwds)
10435 (c-template-typename-key): New lang defconsts and defvar.
10437 2017-10-05 Eli Zaretskii <eliz@gnu.org>
10439 Fix breakage due to recent change in tabulated-list-print-entry
10441 * lisp/emacs-lisp/tabulated-list.el (tabulated-list-printer):
10442 Update the doc string.
10443 (tabulated-list-print-entry): Revert to using only 2 arguments.
10444 Update the doc string.
10445 (tabulated-list-entry-lnum-width): New defvar.
10446 (tabulated-list-print): Compute the width of line-number display
10447 once, then store that value in tabulated-list-entry-lnum-width,
10448 for tabulated-list-printer to use. (Bug#28704)
10450 2017-10-05 Gemini Lasswell <gazally@runbox.com>
10452 * lisp/ses.el (ses-print-cell): Fix alignment of text cells. (Bug#27653)
10454 2017-10-05 Alexander Gramiak <agrambot@gmail.com>
10456 Set xterm click count to 1 even with no last click
10458 * lisp/xt-mouse.el (xterm-mouse-event): Move the check for
10459 the last click so that click-count is initialized properly.
10460 Handle the value of t for double-click-time.
10463 2017-10-05 Vasilij Schneidermann <mail@vasilij.de>
10465 Support indirection for all shr-tag-* calls
10467 The 'shr-external-rendering-functions' variable was previously only
10468 honored in the shr-descend function, now all direct calls to the
10469 shr-tag-* functions have been replaced by a call to
10470 'shr-indirect-call' which tries using an alternative rendering
10473 * lisp/net/shr.el (shr-indirect-call): New helper function.
10474 (shr-descend, shr-tag-object, shr-tag-video):
10475 (shr-collect-extra-strings-in-table): Fix callers to call via
10476 shr-indirect-call. (Bug#28402)
10478 2017-10-05 Eli Zaretskii <eliz@gnu.org>
10480 Speed up list-packages when 'visual' line numbers are displayed
10482 * lisp/emacs-lisp/tabulated-list.el (tabulated-list-printer):
10483 Update the doc string.
10484 (tabulated-list-print-entry): Accept an additional optional
10485 argument INDENT. Update the doc string.
10486 (tabulated-list-print): Compute the width of line-number display
10487 once, then call tabulated-list-printer with that value as 3rd
10488 argument. (Bug#28704)
10490 2017-10-05 João Távora <joaotavora@gmail.com>
10492 Misc. minor adjustments to Flymake
10494 - Add a half-decent minor-mode menu;
10495 - Fix "waiting for backends" mode line message;
10496 - Adjust the flymake-diag-region API;
10497 - Autoload the flymake-log macro;
10498 - Auto-disable the legacy backend in more situations;
10499 - Fix a couple of warnings in legacy backend.
10501 * lisp/progmodes/flymake-proc.el
10502 (flymake-proc--diagnostics-for-pattern): Use new
10503 flymake-diag-region.
10505 * lisp/progmodes/flymake-proc.el
10506 (flymake-proc-legacy-flymake): Do error when no
10507 buffer-file-name or not writable.
10508 (flymake-proc-legacy-flymake)
10509 (flymake-proc-simple-cleanup): Don't reference flymake-last-change-time
10511 * lisp/progmodes/flymake.el (flymake-diag-region):
10512 Autoload. Take buffer as first argument.
10514 * lisp/progmodes/flymake.el (flymake-switch-to-log-buffer):
10516 (flymake-menu): Add a simple menu.
10517 (flymake--mode-line-format): Use menu. Fix message. Switch to
10518 log buffer when clicking exceptional warnings.
10520 2017-10-05 Johan Bockgård <bojohan@gnu.org>
10522 Fix search for ~/.Xdefaults-HOSTNAME
10524 * src/xrdb.c (get_environ_db): Fix typo when handling
10525 ~/.Xdefaults-HOSTNAME (Bug#28708).
10527 2017-10-04 Paul Eggert <eggert@cs.ucla.edu>
10529 Speed up (format "%s" STRING) and the like
10531 Although the Lisp manual said that ‘format’ returns a
10532 newly-allocated string, this was not true for a few cases like
10533 (format "%s" ""), and fixing the documentation to allow reuse of
10534 arguments lets us improve performance in common cases like
10535 (format "foo") and (format "%s" "foo") (Bug#28625).
10536 * doc/lispref/strings.texi (Formatting Strings):
10538 Say that the result of ‘format’ might not be newly allocated.
10539 * src/callint.c (Fcall_interactively):
10540 * src/dbusbind.c (XD_OBJECT_TO_STRING):
10541 * src/editfns.c (Fmessage, Fmessage_box):
10542 * src/xdisp.c (vadd_to_log, Ftrace_to_stderr):
10543 Just use Fformat or Fformat_message, as that’s simpler and no
10544 longer makes unnecessary copies.
10545 * src/editfns.c (styled_format): Remove last argument, as it
10546 is no longer needed: all callers now want it to behave as if it
10547 were true. All remaining callers changed. Make this function
10548 static again. Simplify the function now that we no longer
10549 need to worry about whether the optimization is allowed.
10551 2017-10-04 Alan Mackenzie <acm@muc.de>
10553 Fontify untyped function declarations in C Mode correctly.
10555 Also correct two bugs where deleting WS at a BOL could leave an untyped
10556 function declaration unfontified.
10558 * lisp/progmodes/cc-engine.el (c-find-decl-spots): Don't set the flag
10559 "top-level" when we're in a macro.
10560 (c-forward-decl-or-cast-1): Recognize top-level "foo(bar)" or "foo()" in C
10561 Mode as a implicitly typed function declaration.
10562 (c-just-after-func-arglist-p): Don't get confused by "defined (foo)" inside a
10563 macro. It's not a function plus arglist.
10565 * lisp/progmodes/cc-langs.el (c-cpp-expr-functions-key): New defconst and
10568 * lisp/progmodes/cc-mode.el (c-fl-decl-end): After c-forward-declarator, move
10569 over any following parenthesis expression (i.e. parameter list).
10570 (c-change-expand-fl-region): When c-new-END is at a BOL, include that line in
10571 the returned region, to cope with deletions at column 0.
10573 2017-10-04 Michael Albinus <michael.albinus@gmx.de>
10575 * lisp/net/tramp.el (tramp-tramp-file-p): Use `string-match-p'.
10577 Reported by Clément Pit-Claudel <cpitclaudel@gmail.com>.
10579 2017-10-04 Eli Zaretskii <eliz@gnu.org>
10581 Avoid crashes on C-g when several threads wait for input
10583 * src/thread.h (m_getcjmp): New member of 'struct thread_state'.
10584 (getcjmp): Define to current thread's 'm_getcjmp'.
10585 * src/thread.c (maybe_reacquire_global_lock): Switch to main
10586 thread, since this is called from a SIGINT handler, which always
10587 runs in the context of the main thread.
10588 * src/lisp.h (sys_jmp_buf, sys_setjmp, sys_longjmp): Move the
10589 definitions before thread.h is included, as thread.h now uses
10591 * src/keyboard.c (getcjmp): Remove declaration.
10592 (read_char): Don't call maybe_reacquire_global_lock here.
10593 (handle_interrupt): Call maybe_reacquire_global_lock here, if
10594 invoked from the SIGINT handler, to make sure
10595 quit_throw_to_read_char runs with main thread's Lisp bindings and
10596 uses the main thread's jmp_buf buffer. (Bug#28630)
10598 2017-10-04 Paul Eggert <eggert@cs.ucla.edu>
10600 Warn if --without-pop is now the default
10602 * configure.ac (with_pop): Set to no-by-default if defaulting to "no".
10603 Warn about the change if defaulting to "no". Update URLs.
10605 2017-10-04 Paul Eggert <eggert@cs.ucla.edu>
10607 --with-pop is now the default only on MS-Windows
10609 Problem reported by N. Jackson (Bug#28597).
10610 This improves an earlier suggestion by Robert Pluim (Bug#28597#47).
10611 * INSTALL, configure.ac, etc/NEWS:
10612 Make --with-pop the default only on native MS-Windows.
10614 2017-10-03 Michael Albinus <michael.albinus@gmx.de>
10616 Add support for `file-system-info' in Tramp
10618 * lisp/net/tramp.el (tramp-file-name-for-operation):
10619 Add `file-system-info'.
10621 * lisp/net/tramp-adb.el (tramp-adb-handle-file-system-info): New defun.
10622 (tramp-adb-file-name-handler-alist): Use it.
10624 * lisp/net/tramp-gvfs.el (tramp-gvfs-file-system-attributes)
10625 (tramp-gvfs-file-system-attributes-regexp): New defconst.
10626 (tramp-gvfs-handle-file-system-info): New defun.
10627 (tramp-gvfs-file-name-handler-alist): Use it.
10628 (tramp-gvfs-get-directory-attributes): Fix property name.
10629 (tramp-gvfs-get-root-attributes): Support also file system attributes.
10631 * lisp/net/tramp-sh.el (tramp-sh-handle-file-system-info): New defun.
10632 (tramp-sh-file-name-handler-alist): Use it.
10633 (tramp-sh-handle-insert-directory): Insert size information.
10634 (tramp-get-remote-df): New defun.
10636 * lisp/net/tramp-smb.el (tramp-smb-handle-file-system-info): New defun.
10637 (tramp-smb-file-name-handler-alist): Use it.
10638 (tramp-smb-handle-insert-directory): Insert size information.
10640 * test/lisp/net/tramp-tests.el (tramp-test37-file-system-info):
10642 (tramp-test38-asynchronous-requests)
10643 (tramp-test39-recursive-load, tramp-test40-remote-load-path)
10644 (tramp-test41-unload): Rename.
10646 2017-10-03 João Távora <joaotavora@gmail.com>
10648 Merge branch 'scratch/flymake-refactor-clean-for-emacs-26' into emacs-26
10650 2017-10-03 João Távora <joaotavora@gmail.com>
10652 Start rewriting Flymake manual
10654 Missing the parts pertaining to the new customization API.
10656 * doc/misc/flymake.texi (Overview of Flymake): Rewrite a bit.
10657 (Installing Flymake): Delete most of this.
10658 (Running the syntax check): Mention flymake-start.
10659 (Navigating to error lines): Rewrite.
10660 (Viewing error messages): Commente out.
10661 (Syntax check statuses, Troubleshooting): Rewrite a bit.
10662 (Customizable variables): New section under "Using
10663 Flymake". Don't mention any proc variables here.
10664 (Configuring Flymake): Delete
10665 (Proc backend): New chapter
10666 (Proc customization variables): New chapter.
10668 * doc/misc/flymake.texi (Overview of Flymake): Rewrite a bit.
10669 (Installing Flymake): Mostly scratch. Flymake comes with Emacs.
10670 (Running the syntax check): Simplify.
10671 (Viewing error messages): Dekete,
10672 (Syntax check statuses): Rewrite.
10673 (Troubleshooting): Simplify.
10674 (Customizable variables): Rewrite.
10675 (Extending Flymake): New chapter, empty for now.
10676 (The legacy Proc backend): New chapter.
10677 (Proc customizable variables)
10678 (Adding support for a new syntax check tool)
10679 (Implementation overview)
10680 (Making a temporary copy)
10681 (Locating a master file)
10682 (Getting the include directories)
10683 (Locating the buildfile)
10684 (Starting the syntax check process)
10685 (Parsing the output)
10686 (Interaction with other modes)
10687 (Example---Configuring a tool called via make)
10688 (Example---Configuring a tool called directly): Rewrite a bit.
10690 2017-10-03 João Távora <joaotavora@gmail.com>
10692 Minimal tweak as an attempt to future-proof Flymake API
10694 Discussed with Stefan that this should allow Flymake to request more
10695 from backends in the future, while also allowing backends to report
10698 * lisp/progmodes/elisp-mode.el (elisp-flymake-checkdoc)
10699 (elisp-flymake-byte-compile): Adjust to new API.
10701 * lisp/progmodes/flymake-proc.el ()
10702 (flymake-proc-legacy-flymake): Adjust to new API.
10704 * lisp/progmodes/flymake.el (flymake-diagnostic-functions):
10706 (flymake--handle-report): Allow other keys. Change ACTION to
10709 2017-10-03 João Távora <joaotavora@gmail.com>
10711 Integrate Flymake elisp checkers into elisp-mode.el directly
10713 * lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Use
10714 elisp-flymake-checkdoc and elisp-flymake-byte-compile.
10715 (elisp-flymake--checkdoc-1, elisp-flymake-checkdoc)
10716 (elisp-flymake--byte-compile-done)
10717 (elisp-flymake--byte-compile-process)
10718 (elisp-flymake-byte-compile): Rename from flymake-elisp
10719 counterparts in deleted flymake-elisp.el
10720 (elisp-flymake--batch-compile-for-flymake): New helper.
10721 (checkdoc-create-error-function)
10722 (checkdoc-autofix-flag)
10723 (checkdoc-generate-compile-warnings-flag)
10724 (checkdoc-diagnostic-buffer): Forward declare.
10726 * lisp/progmodes/flymake-elisp.el: Delete.
10728 2017-10-03 João Távora <joaotavora@gmail.com>
10730 Hook Flymake onto proper checkdoc and byte-compile interfaces
10732 The interfaces in bytecomp.el and checkdoc.el are mostly boilerplate,
10733 with little knowledge of actual internals or thought given to the
10734 usefulness of said interfaces in contexts other than Flymake's.
10736 * lisp/emacs-lisp/bytecomp.el
10737 (byte-compile-log-warning-function): New variable.
10738 (byte-compile-log-warning): Use it.
10739 (byte-compile--log-warning-for-byte-compile): New function.
10741 * lisp/emacs-lisp/checkdoc.el
10742 (checkdoc-create-error-function): New variable.
10743 (checkdoc-create-error): Use it.
10744 (checkdoc--create-error-for-checkdoc): New function.xo
10746 * lisp/progmodes/flymake-elisp.el (flymake-elisp--checkdoc-1):
10747 Use checkdoc-create-error-function.
10748 (flymake-elisp--batch-byte-compile): Use
10749 byte-compile-log-warning-function.
10751 2017-10-03 João Távora <joaotavora@gmail.com>
10753 Tweak Flymake autoloads and dependencies
10755 * lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Add to
10756 flymake-diagnostic-functions here.
10758 * lisp/progmodes/flymake-elisp.el[top]: Don't add to
10759 emacs-lisp-mode-hook. Don't call flymake-elisp-setup-backends in
10760 every buffer. (flymake-elisp-checkdoc) (flymake-elisp-byte-compile):
10761 Autoload. (flymake-elisp-setup-backends): Remove.
10763 * lisp/progmodes/flymake.el: Add some top-level comments.
10764 (flymake-make-diagnostic)
10765 (flymake-mode, flymake-mode-on, flymake-mode-off): Add autoloads
10767 Where to fixup this shit?
10769 2017-10-03 João Távora <joaotavora@gmail.com>
10771 Capitalize "Flymake" in docstrings and comments
10773 * lisp/progmodes/flymake-elisp.el (flymake-elisp-checkdoc)
10774 (flymake-elisp-setup-backends): Capitalize "Flymake"
10776 * lisp/progmodes/flymake-proc.el:
10777 (flymake-proc-reformat-err-line-patterns-from-compile-el)
10778 (flymake-proc--panic, flymake-proc-legacy-flymake)
10779 (flymake-start-syntax-check, flymake-proc-compile)
10780 (define-obsolete-variable-alias): Capitalize "Flymake"
10782 * lisp/progmodes/flymake.el (flymake-fringe-indicator-position)
10783 (flymake-make-diagnostic, flymake-delete-own-overlays)
10784 (flymake-diagnostic-functions)
10785 (flymake-diagnostic-types-alist, flymake-is-running)
10786 (flymake-make-report-fn, flymake-mode-on, flymake-mode-off)
10787 (flymake-goto-next-error, flymake-goto-prev-error): Capitalize "Flymake"
10789 2017-10-03 João Távora <joaotavora@gmail.com>
10791 Flymake backends can report multiple times per check
10793 Rewrote a significant part of the Flymake backend API. Flymake now
10794 ignores the return value of backend functions: a function can either
10795 returns or errors. If it doesn't error, a backend is no longer
10796 constrained to call REPORT-FN exactly once. It may do so any number
10797 of times, cumulatively reporting diagnostics. Flymake keeps track of
10798 outdated REPORT-FN instances and disconsiders obsolete reports.
10799 Backends should avoid reporting obsolete data by canceling any
10800 ongoing processing at every renewed call to the backend function.
10802 Consolidated flymake.el internal data structures to require less
10803 buffer-local variables. Adjusted Flymake's mode-line indicator to the
10806 Adapted and simplified the implementation of elisp and legacy
10807 backends, fixing potential race conditions when calling backends in
10810 Added a new test for a backend that calls REPORT-FN multiple
10811 times. Simplify test infrastructure.
10813 * lisp/progmodes/flymake-elisp.el (flymake-elisp-checkdoc)
10814 (flymake-elisp-byte-compile): Error instead of returning nil
10815 if not in emacs-lisp-mode.
10816 (flymake-elisp--byte-compile-process): New buffer-local variable.
10817 (flymake-elisp-byte-compile): Mark (and kill) previous process
10818 obsolete process before starting a new one. Don't report if
10821 * lisp/progmodes/flymake-proc.el
10822 (flymake-proc--current-process): New buffer-local variable.
10823 (flymake-proc--processes): Remove.
10824 (flymake-proc--process-filter): Don't bind
10825 flymake-proc--report-fn.
10826 (flymake-proc--process-sentinel): Rewrite. Don't report if
10828 (flymake-proc-legacy-flymake): Rewrite. Mark (and kill)
10829 previous process obsolete process before starting a new
10830 one. Integrate flymake-proc--start-syntax-check-process
10832 (flymake-proc--start-syntax-check-process): Delete.
10833 (flymake-proc-stop-all-syntax-checks): Don't use
10834 flymake-proc--processes, iterate buffers.
10835 (flymake-proc-compile):
10837 * lisp/progmodes/flymake.el (subr-x): Require it
10839 (flymake-diagnostic-functions): Reword docstring.
10840 (flymake--running-backends, flymake--disabled-backends)
10841 (flymake--diagnostics-table): Delete.
10842 (flymake--backend-state): New buffer-local variable and new defstruct.
10843 (flymake--with-backend-state, flymake--collect)
10844 (flymake-running-backends, flymake-disabled-backends)
10845 (flymake-reporting-backends): New helpers.
10846 (flymake-is-running): Use flymake-running-backends.
10847 (flymake--handle-report): Rewrite.
10848 (flymake-make-report-fn): Ensure REPORT-FN runs in the correct
10849 buffer or not at all.
10850 (flymake--disable-backend, flymake--run-backend): Rewrite.
10851 (flymake-start): Rewrite.
10852 (flymake-mode): Set flymake--backend-state.
10853 (flymake--mode-line-format): Rewrite.
10855 * test/lisp/progmodes/flymake-tests.el
10856 (flymake-tests--wait-for-backends): New helper.
10857 (flymake-tests--call-with-fixture): Use it.
10858 (included-c-header-files): Fix whitespace.
10859 (flymake-tests--diagnose-words): New helper.
10860 (dummy-backends): Rewrite for new semantics. Use cl-letf.
10861 (flymake-tests--assert-set): Use quote.
10862 (recurrent-backend): New test.
10864 2017-10-03 João Távora <joaotavora@gmail.com>
10866 Flymake uses proper idle timers
10868 Also, flymake-no-changes-timeout can be set to nil to disable
10869 automatic periodic checks. But even in that situation the idle timer
10870 still runs at a reduced rate to detect changes in the variable and
10871 revert that decision.
10873 * lisp/progmodes/flymake.el (flymake-no-changes-timeout): Improve doc.
10874 (flymake-last-change-time): Delete.
10875 (flymake--schedule-timer-maybe): New helper.
10876 (flymake-after-change-function): Use it.
10877 (flymake-on-timer-event): Delete
10878 (flymake-mode): Don't scheduler timer.
10880 2017-10-03 João Távora <joaotavora@gmail.com>
10882 Flymake variable flymake-diagnostic-functions now a special hook
10884 * lisp/progmodes/flymake-proc.el: Use add-hook to affect
10885 flymake-diagnostic-functions.
10887 * lisp/progmodes/flymake-elisp.el
10888 (flymake-elisp-setup-backends): Use add-hook.
10890 * lisp/progmodes/flymake.el (flymake-diagnostic-functions):
10892 (flymake-start): Use run-hook-wrapped.
10894 2017-10-03 João Távora <joaotavora@gmail.com>
10896 Batch of minor Flymake cleanup actions agreed to with Stefan
10898 Discussed with Stefan, in no particular order
10900 - Remove aliases for symbols thought to be internal to flymake-proc.el
10901 - Don’t need :group in defcustom and defface in flymake.el
10902 - Fix docstring of flymake-make-diagnostic
10903 - Fix docstring of flymake-diagnostic-functions to clarify keywords.
10904 - Mark overlays with just the property ’flymake, not ’flymake-overlay
10905 - Tune flymake-overlays for performance
10906 - Make flymake-mode-on and flymake-mode-off obsolete
10907 - Don’t use hash-table-keys unless necessary.
10908 - Copyright notice in flymake-elisp.
10912 - Clarify docstring of flymake-goto-next-error
10913 - Clarify a comment in flymake--run-backend complaining about ert-deftest.
10914 - Prevent compilation warnings in flymake-proc.el
10915 - Remove doctring from obsolete aliases
10919 * lisp/progmodes/flymake-elisp.el: Proper copyright notice.
10921 * lisp/progmodes/flymake-proc.el (flymake-warning-re)
10922 (flymake-proc-diagnostic-type-pred)
10923 (flymake-proc-default-guess)
10924 (flymake-proc--get-file-name-mode-and-masks): Move up to
10925 beginning of file to shoosh compiler warnings
10926 (define-obsolete-variable-alias): Delete many obsolete aliases.
10928 * lisp/progmodes/flymake.el (flymake-error-bitmap)
10929 (flymake-warning-bitmap, flymake-note-bitmap)
10930 (flymake-fringe-indicator-position)
10931 (flymake-start-syntax-check-on-newline)
10932 (flymake-no-changes-timeout, flymake-gui-warnings-enabled)
10933 (flymake-start-syntax-check-on-find-file, flymake-log-level)
10934 (flymake-wrap-around, flymake-error, flymake-warning)
10935 (flymake-note): Don't need :group in these defcustom and defface.
10936 (flymake--run-backend): Clarify comment
10937 (flymake-mode-map): Remove.
10938 (flymake-make-diagnostic): Fix docstring.
10939 (flymake--highlight-line, flymake--overlays): Identify flymake
10940 overlays with just ’flymake.
10941 (flymake--overlays): Reverse order of invocation for
10942 cl-remove-if-not and cl-sort.
10944 (flymake-mode-off): Make obsolete.
10945 (flymake-goto-next-error, flymake-goto-prev-error): Fix docstring.
10946 (flymake-diagnostic-functions): Clarify keyword arguments in
10949 Maybe squash in that one where I remove many obsoletes
10951 2017-10-03 João Távora <joaotavora@gmail.com>
10953 Explicitly add a(n empty) keymap for Flymake
10955 Too early to decide what will be in it, if anything. Though "M-n" and
10956 "M-p" would be great.
10958 * lisp/progmodes/flymake-ui.el (flymake-mode-map): New variable
10960 2017-10-03 João Távora <joaotavora@gmail.com>
10962 Flymake uses some new fringe bitmaps
10964 Also fix behavior whereby flymake wouldn't react to a change in the
10967 * lisp/progmodes/flymake-ui.el (flymake-error-bitmap)
10968 (flymake-warning-bitmap): Update bitmaps.
10969 (flymake-note-bitmap): New defcustom.
10970 (flymake-double-exclamation-mark): New bitmap.
10971 (flymake-error, flymake-warning, flymake-note)
10972 (flymake--highlight-line): 'bitmap property must be a symbol.
10973 Also set default face to flymake-error.
10974 (flymake--fringe-overlay-spec): Bitmap property can be a
10977 2017-10-03 João Távora <joaotavora@gmail.com>
10979 Remove old flymake-display-err-menu-for-current-line, it's useless
10981 See https://lists.gnu.org/r/emacs-devel/2017-09/msg00949.html
10983 * lisp/progmodes/flymake-ui.el
10984 (flymake-popup-current-error-menu): Remove.
10986 2017-10-03 João Távora <joaotavora@gmail.com>
10988 Treat Flymake errors as just another type of diagnostic
10990 * lisp/progmodes/flymake.el (flymake--diag-errorp): Remove.
10991 (flymake--handle-report, flymake-popup-current-error-menu):
10994 2017-10-03 João Távora <joaotavora@gmail.com>
10996 Fix three Flymake bugs when checking C header files
10998 The first of these problems is longstanding: if an error-less B.h is
10999 included from error-ridden A.h, flymake's legacy parser will panic
11000 (and disable itself) since it sees a non-zero exit for a clean file.
11001 To fix this, recommend returning 'true' in the documentation for the
11002 check-syntax target.
11004 Another problem was introduced by the parser rewrite. For error
11005 patterns spanning more than one line, point may be left in the middle
11006 of a line and thus render other patterns useless. Those patterns were
11007 written for the old line-by-line parser. To make them useful again,
11008 move to the beginning of line in those situations.
11010 The third problem was also longstanding and happened on newer GCC's:
11011 The "In file included from" prefix confused
11012 flymake-proc-get-real-file-name. Fix this.
11014 Also updated flymake--diag-region to fallback to highlighting a full
11017 Add automatic tests to check this.
11019 * lisp/progmodes/flymake-proc.el
11020 (flymake-proc--diagnostics-for-pattern): Fix bug when patterns
11021 accidentally spans more than one line. Don't create
11022 diagnostics without error messages.
11023 (flymake-proc-real-file-name-considering-includes): New
11025 (flymake-proc-allowed-file-name-masks): Use it.
11027 * lisp/progmodes/flymake.el (flymake-diag-region): Make COL
11028 argument explicitly optional. Only fall back to full line in extreme
11031 * test/lisp/progmodes/flymake-tests.el
11032 (included-c-header-files): New test.
11033 (different-diagnostic-types): Update.
11035 * test/lisp/progmodes/flymake-resources/Makefile
11036 (check-syntax): Always return success (0) error code.
11037 (CC_OPTS): Add -Wextra
11039 * test/lisp/progmodes/flymake-resources/errors-and-warnings.c
11040 (main): Rewrite comments.
11042 * test/lisp/progmodes/flymake-resources/errors-and-warnings.c:
11043 Include some dummy header files.
11045 * test/lisp/progmodes/flymake-resources/no-problems.h: New file.
11047 * test/lisp/progmodes/flymake-resources/some-problems.h: New file.
11049 * doc/misc/flymake.texi (Example---Configuring a tool called
11050 via make): Recommend adding "|| true" to the check-syntax target.
11052 2017-10-03 João Távora <joaotavora@gmail.com>
11054 Add interactive flymake-start function
11056 * lisp/progmodes/flymake.el (flymake-on-timer-event)
11057 (flymake-after-change-function, flymake-mode): Call
11059 (flymake-start): Rename from flymake--start-syntax-check.
11061 2017-10-03 João Távora <joaotavora@gmail.com>
11063 A couple of Flymake backends for emacs-lisp-mode
11065 Loading flymake-elisp.el doesn't setup flymake-mode to turn on
11066 automatically, but it affects emacs-lisp-mode-hook so that
11067 flymake-diagnostic-functions is setup with a suitable buffer-local
11068 value. The variable flymake-diagnostic-funtions in every live
11069 emacs-lisp-mode buffer is also adjusted.
11071 * lisp/progmodes/flymake.el (top): Require flymake-elisp.
11073 * lisp/progmodes/flymake-elisp.el: New file.
11075 2017-10-03 João Távora <joaotavora@gmail.com>
11077 Fancy Flymake mode-line construct displays status
11079 Imitates compilation-mode's mode-line a bit, and uses its faces.
11081 * lisp/progmodes/flymake.el
11082 (flymake-error, flymake-warning, flymake-note): Add
11083 mode-line-face to these flymake error types.
11084 (flymake-note): Notes don't need a noisy fringe bitmap.
11085 (flymake-lighter): Delete.
11086 (flymake--update-lighter): Delete.
11087 (flymake--mode-line-format): New function and variable.
11088 (flymake--diagnostics-table): New buffer-local variable.
11089 (flymake--handle-report): Don't update "lighters". Affect
11090 flymake--diagnostics-table.
11091 (flymake--run-backend): Init flymake--diagnostics-table for backend.
11092 (flymake-mode): Use flymake--mode-line-format.
11093 (flymake-mode): Don't update lighter.
11094 (flymake--highlight-line): Be more careful when overriding a
11095 nil default overlay property.
11097 2017-10-03 João Távora <joaotavora@gmail.com>
11099 Tweak Flymake commands flymake-goto-[next/prev]-error
11101 Add filters, useful for backends like the upcoming
11102 flymake-elisp-checkdoc backend, for example, which litters everything
11103 with low-priority notes.
11105 Also re-implement wraparound for flymake-goto-next-error. Manual
11106 mentions this, so it's probably a good idea to keep it. Added a new
11107 customization variable flymake-wrap-around to control it.
11109 * lisp/progmodes/flymake.el (flymake-goto-prev-error)
11110 (flymake-goto-next-error): Accept FILTER argument.
11111 (flymake-wrap-around): New variable.
11112 (flymake-goto-next-error): Wrap around according to flymake-wrap-around.
11114 * test/lisp/progmodes/flymake-tests.el
11115 (different-diagnostic-types, dummy-backends): Pass FILTER to
11116 flymake-goto-prev-error.
11117 (different-diagnostic-types)
11118 (dummy-backends): Use flymake-wrap-around.
11120 2017-10-03 João Távora <joaotavora@gmail.com>
11122 Flymake's flymake-proc.el backend slightly easier to debug
11124 Misc cleanup in flymake-proc.el
11126 Improve description of what this file contains.
11128 Better name for the backend function. Fix the case where it is run
11131 Keep the output buffer alive iff the external process panics.
11133 * lisp/progmodes/flymake-proc.el
11134 (flymake-proc-legacy-flymake): Rename from
11135 flymake-proc-start-syntax-check. Allow running interactively.
11136 (flymake-start-syntax-check): Obsolete alias for
11137 flymake-proc-legacy-flymake.
11138 (flymake-proc-start-syntax-check): Delete.
11139 (flymake-diagnostic-functions): Include flymake-proc-legacy-flymake
11140 (flymake-proc--process-sentinel): Keep output buffer alive.
11141 Clarify with comments.
11142 (flymake-proc--diagnostics-for-pattern)
11143 (flymake-proc--process-sentinel)
11144 (flymake-proc--safe-delete-directory)
11145 (flymake-proc--start-syntax-check-process): Use condition-case-unless-debug.
11147 2017-10-03 João Távora <joaotavora@gmail.com>
11149 Simplify Flymake logging and erroring
11151 Use display-warning and a dedicated *Flymake log* buffer.
11153 To ease readability, flymake log messages are now prefixed with a
11154 common prefix and the buffer that originated them.
11156 Some situations of over-zealous logging are fixed.
11158 Use byte-compiler info, if available, to determine whence the
11159 flymake-related log message is coming.
11161 * lisp/progmodes/flymake-proc.el
11162 (flymake-proc--diagnostics-for-pattern): Improve log message.
11163 (flymake-proc--panic): Always flymake-log an error
11164 (flymake-proc--safe-delete-file)
11165 (flymake-proc--safe-delete-directory):
11167 (flymake-proc-start-syntax-check): Simplify slightly.
11168 (flymake-proc--start-syntax-check-process): Simplify.
11169 (flymake-proc--init-find-buildfile-dir)
11170 (flymake-proc--init-create-temp-source-and-master-buffer-copy):
11171 No need to warn twice.
11173 * lisp/progmodes/flymake.el (flymake-log): Convert to macro.
11174 (flymake--log-1): New helper.
11175 (flymake-log-level): Deprecate.
11176 (flymake-error): New helper.
11177 (flymake-ler-make-ler, flymake--handle-report, flymake-mode):
11179 (flymake-on-timer-event)
11180 (flymake--handle-report, flymake--disable-backend)
11181 (flymake--run-backend, flymake-start, flymake-mode-on)
11182 (flymake-mode-off, flymake-after-change-function)
11183 (flymake-after-save-hook, flymake-find-file-hook): Adjust
11186 * test/lisp/progmodes/flymake-tests.el
11187 (flymake-tests--call-with-fixture): Only log errors.
11189 2017-10-03 Philipp Stephani <phst@google.com>
11191 Work around deprecation of gtk_style_context_get_background_color
11193 * src/gtkutil.c (xg_check_special_colors): Replace call to
11194 gtk_style_context_get_background_color with its definition.
11196 2017-10-03 João Távora <joaotavora@gmail.com>
11198 New Flymake API variable flymake-diagnostic-functions
11200 Lay groundwork for multiple active backends in the same buffer.
11202 Backends are lisp functions called when flymake-mode sees fit. They
11203 are responsible for examining the current buffer and telling
11204 flymake.el, via return value, if they can syntax check it.
11205 Backends should return quickly and inexpensively, but they are also
11206 passed a REPORT-FN argument which they may or may not call
11207 asynchronously after performing more expensive work.
11209 REPORT-FN's calling convention stipulates that a backend calls it with
11210 a list of diagnostics as argument, or, alternatively, with a symbol
11211 denoting an exceptional situation, usually some panic resulting from a
11212 misconfigured backend. In keeping with legacy behavior,
11213 flymake.el's response to a panic is to disable the issuing backend.
11215 The flymake--diag object representing a diagnostic now also keeps
11216 information about its source backend. Among other uses, this allows
11217 flymake to selectively cleanup overlays based on which backend is
11218 updating its diagnostics.
11220 * lisp/progmodes/flymake-proc.el (flymake-proc--report-fn):
11221 New dynamic variable.
11222 (flymake-proc--process): New variable.
11223 (flymake-can-syntax-check-buffer): Remove.
11224 (flymake-proc--process-sentinel): Simplify. Use
11225 unwind-protect. Affect flymake-proc--processes here.
11226 Bind flymake-proc--report-fn.
11227 (flymake-proc--process-filter): Bind flymake-proc--report-fn.
11228 (flymake-proc--post-syntax-check): Delete
11229 (flymake-proc-start-syntax-check): Take mandatory
11230 report-fn. Rewrite. Bind flymake-proc--report-fn.
11231 (flymake-proc--process-sentinel): Rewrite and simplify.
11232 (flymake-proc--panic): New helper.
11233 (flymake-proc--start-syntax-check-process): Record report-fn
11234 in process. Use flymake-proc--panic.
11235 (flymake-proc-stop-all-syntax-checks): Use mapc. Don't affect
11236 flymake-proc--processes here. Record interruption reason.
11237 (flymake-proc--init-find-buildfile-dir)
11238 (flymake-proc--init-create-temp-source-and-master-buffer-copy):
11239 Use flymake-proc--panic.
11240 (flymake-diagnostic-functions): Add
11241 flymake-proc-start-syntax-check.
11242 (flymake-proc-compile): Call
11243 flymake-proc-stop-all-syntax-checks with a reason.
11245 * lisp/progmodes/flymake.el (flymake-backends): Delete.
11246 (flymake-check-was-interrupted): Delete.
11247 (flymake--diag): Add backend slot.
11248 (flymake-delete-own-overlays): Take optional filter arg.
11249 (flymake-diagnostic-functions): New user-visible variable.
11250 (flymake--running-backends, flymake--disabled-backends): New
11251 buffer-local variables.
11252 (flymake-is-running): Now a function, not a variable.
11253 (flymake-mode-line, flymake-mode-line-e-w)
11254 (flymake-mode-line-status): Delete.
11255 (flymake-lighter): flymake's minor-mode "lighter".
11256 (flymake-report): Delete.
11257 (flymake--backend): Delete.
11258 (flymake--can-syntax-check-buffer): Delete.
11259 (flymake--handle-report, flymake--disable-backend)
11260 (flymake--run-backend, flymake--run-backend): New helpers.
11261 (flymake-make-report-fn): Make a lambda.
11262 (flymake--start-syntax-check): Iterate
11263 flymake-diagnostic-functions.
11264 (flymake-mode): Use flymake-lighter. Simplify. Initialize
11265 flymake--running-backends and flymake--disabled-backends.
11266 (flymake-find-file-hook): Simplify.
11268 * test/lisp/progmodes/flymake-tests.el
11269 (flymake-tests--call-with-fixture): Use flymake-is-running the
11270 function. Check if flymake-mode already active before activating it.
11271 Add a thorough test for flymake multiple backends
11273 * lisp/progmodes/flymake.el (flymake--start-syntax-check):
11274 Don't use condition-case-unless-debug, use condition-case
11276 * test/lisp/progmodes/flymake-tests.el
11277 (flymake-tests--assert-set): New helper macro.
11278 (dummy-backends): New test.
11280 2017-10-03 João Távora <joaotavora@gmail.com>
11282 More Flymake cleanup before advancing to backend redesign
11284 Diagnostics are reported for buffers, not necessarily files. It’s the
11285 backend’s responsibility to compute the buffer where the diagnostic is
11286 applicable. For now, this has to match the buffer where flymake-mode
11287 is active and which is at the origin of the backend call.
11289 flymake.el knows nothing about line/column diagnostics (except for
11290 backward-compatible flymake-ler-make-ler, which must yet be tested).
11291 It’s also the backend’s reponsibility to compute a BEG and END
11292 positions for the diagnostic in the relevant buffer.
11294 * lisp/progmodes/flymake-proc.el
11295 (flymake-proc--diagnostics-for-pattern): Convert LINE/COL to
11296 region here. Check file buffer here.
11297 (flymake-proc--process-sentinel): Don’t kill output buffer if
11298 high enough log level.
11300 * lisp/progmodes/flymake.el (flymake-diag-region): Make this a utility
11301 function. (flymake--highlight-line): Diagnostic has region now.
11302 (flymake-popup-current-error-menu): Don’t add file and line numbers to
11303 already this silly menu. (flymake--fix-line-numbers): Remove.
11304 (flymake-report): No need to fix diagnostics here.
11306 2017-10-03 João Távora <joaotavora@gmail.com>
11308 Protect Flymake's eager checks against commands like fill-paragraph
11310 If flymake-start-syntax-check-on-newline is t, check should start as
11311 soon as a newline is seen by after-change-functions. But don't rush
11312 it: since the buffer state might not be final, we might end up with
11313 invalid diagnostic regions after some commands silently insert and
11314 delete newlines (looking at you, fill-paragraph).
11316 * lisp/progmodes/flymake.el (flymake-after-change-function): Pass
11317 `deferred' to flymake--start-syntax-check.
11318 (flymake--start-syntax-check): Take optional `deferred' arg.
11320 2017-10-03 João Távora <joaotavora@gmail.com>
11322 Flymake highlights GCC info/notes as detected by flymake-proc.el
11324 * lisp/progmodes/flymake-proc.el
11325 (flymake-proc--diagnostics-for-pattern): Rewrite (using cl-loop) to
11326 honour more sophisticated flymake-proc-diagnostic-type-pred.
11327 (flymake-warning-re): Is now an obsolete alias for
11328 flymake-proc-diagnostic-type-pred.
11329 (flymake-proc-diagnostic-type-pred): Rename and augment from
11330 flymake-proc-warning-predicate. (flymake-proc-warning-predicate):
11333 * lisp/progmodes/flymake.el (flymake-note): New face.
11334 (flymake-diagnostic-types-alist): Simplify.
11335 (flymake-note): New overlay category.
11336 (flymake--lookup-type-property): Only lookup single keys, not lists.
11337 (flymake--diag-errorp): Rewrite.
11338 (flymake--highlight-line): Use flymake--lookup-type-property.
11340 * test/lisp/progmodes/flymake-tests.el
11341 (different-diagnostic-types): Rename from errors-and-warnings.
11343 (flymake-tests--call-with-fixture): Use
11344 flymake-proc-diagnostic-type-pred.
11346 2017-10-03 João Távora <joaotavora@gmail.com>
11348 Flymake checks file names before considering diagnostics
11350 The error patterns for gcc picked up errors for the Makefile itself,
11351 for example. These shouldn't count as actual errors.
11353 * lisp/progmodes/flymake.el (flymake-report): Check
11354 matching file names.
11356 2017-10-03 João Távora <joaotavora@gmail.com>
11358 Echo Flymake error messages when navigating errors interactively
11360 Perhaps binding M-n and M-p to flymake-goto-next-error and
11361 flymake-goto-prev-error also wouldn't be a bad idea.
11363 * lisp/progmodes/flymake.el (flymake-goto-next-error): Use
11364 target overlay's help-echo.
11366 2017-10-03 João Távora <joaotavora@gmail.com>
11368 Add a new Flymake test for multiple errors and warnings
11370 * test/lisp/progmodes/flymake-tests.el
11371 (flymake-tests--call-with-fixture): Save excursion.
11372 (errors-and-warnings): New test.
11374 * test/lisp/progmodes/flymake-resources/errors-and-warnings.c:
11377 2017-10-03 João Távora <joaotavora@gmail.com>
11379 Flymake warning face easier to distinguish
11381 A orange wavy underline is very hard to tell from a red wavy
11384 * lisp/progmodes/flymake.el (flymake-warning): Change color to
11387 2017-10-03 João Távora <joaotavora@gmail.com>
11389 Flymake's flymake-proc.el parses column numbers from gcc/javac errors
11391 Column numbers are not a great way of marking diagnostic regions, but
11392 that's probably all that can be expected from the flymake-proc.el
11393 backend. For now, try (end-of-thing 'sexp) to discover the
11394 diagnostic's end position.
11396 * lisp/progmodes/flymake-proc.el ()
11397 (flymake-proc-err-line-patterns): Also parse column numbers,
11398 if available, for gcc/javac warnings.
11400 2017-10-03 João Távora <joaotavora@gmail.com>
11402 New Flymake variable flymake-diagnostic-types-alist and much cleanup
11404 A new user-visible variable is introduced where different diagnostic
11405 types can be categorized. Flymake backends can also contribute to
11406 this variable. Anything that doesn’t match an existing error type
11409 The variable’s alists are used to propertize the overlays pertaining
11410 to each error type. The user can override the built-in properties by
11411 either by modifying the alist, or by modifying the properties of a
11412 special "category" symbol, named by the `flymake-category' entry in
11415 The `flymake-category' entry is especially useful for, say, the author
11416 of foo-flymake-backend, who issues diagnostics of type :foo-note, that
11417 should behave like notes, except with no fringe bitmap:
11419 (add-to-list 'flymake-diagnostic-types-alist
11421 . ((flymake-category . flymake-note)
11424 For essential properties like `severity', `priority', etc, a default
11425 value is produced. Some properties like `evaporate' cannot be
11428 * lisp/progmodes/flymake.el (flymake--diag): Rename from
11430 (flymake-ler-make): Obsolete alias for flymake-diagnostic-make
11431 (flymake-ler-errorp): Rewrite using flymake--severity.
11432 (flymake--place-overlay): Delete.
11433 (flymake--overlays): Now a cl-defun with &key args. Document.
11434 Use `overlays-at' if BEG is non-nil and END is nil.
11435 (flymake--lookup-type-property): New helper.
11436 (flymake--highlight-line): Rewrite.
11437 (flymake-diagnostic-types-alist): New API variable.
11438 (flymake--diag-region)
11439 (flymake--severity, flymake--face)
11440 (flymake--fringe-overlay-spec): New helper.
11441 (flymake-popup-current-error-menu): Use new flymake-overlays.
11442 (flymake-popup-current-error-menu, flymake-report): Use
11443 flymake--diag-errorp.
11444 (flymake--fix-line-numbers): Use flymake--diag-line.
11445 (flymake-goto-next-error): Pass :key to flymake-overlays
11447 * lisp/progmodes/flymake-proc.el
11448 (flymake-proc--diagnostics-for-pattern): Use flymake-diagnostic-make.
11450 2017-10-03 João Távora <joaotavora@gmail.com>
11452 Refactor Flymake tests in preparation for more tests
11454 Introduce a slightly more generic fixture macro.
11456 Also make flymake-tests.el friendlier to interactive runs, by not
11457 killing buffers visited by the user.
11459 * test/lisp/progmodes/flymake-tests.el
11460 (flymake-tests--call-with-fixture): New helper from
11461 flymake-tests--current-face. Don't kill file buffers already
11462 being visited before the test starts.
11463 (flymake-tests--with-flymake): New macro.
11464 (flymake-tests--current-face): Delete.
11465 (warning-predicate-rx-gcc, warning-predicate-function-gcc)
11466 (warning-predicate-rx-perl, warning-predicate-function-perl):
11467 Use flymake-test--with-flymake.
11469 2017-10-03 João Távora <joaotavora@gmail.com>
11471 Allow running Flymake tests from interactive sessions
11473 * test/lisp/progmodes/flymake-tests.el (flymake-tests-data-directory):
11474 Expand to reasonable value if no
11475 EMACS_TEST_DIRECTORY. (flymake-tests--current-face): Work around
11476 "weirdness" of bug 17647 with read-event.
11478 2017-10-03 João Távora <joaotavora@gmail.com>
11480 Flymake diagnostics now apply to arbitrary buffer regions
11482 Make Flymake UI some 150 lines lighter
11484 Strip away much of the original implementation's complexity in
11485 manipulating objects representing diagnostics as well as creating and
11486 navigating overlays.
11488 Lay some groundwork for a more flexible approach that allows for
11489 different classes of diagnostics, not necessarily line-based.
11490 Importantly, one overlay per diagnostic is created, whereas the
11491 original implementation had one per line, and on it it concatenated
11492 the results of errors and warnings.
11494 This means that currently, an error and warning on the same line are
11495 problematic and the warning might be overlooked but this will soon be
11496 fixed by setting appropriate priorities.
11498 Since diagnostics can highlight arbitrary regions, not just lines, the
11499 faces were renamed.
11501 Tests pass and backward compatibility with interactive functions is
11502 maintained, but probably any third-party extension or customization
11503 relying on more than a trivial set of flymake.el internals has stopped
11506 * lisp/progmodes/flymake-proc.el
11507 (flymake-proc--diagnostics-for-pattern): Use new flymake-ler-make
11508 constructor syntax.
11510 * lisp/progmodes/flymake.el (flymake-ins-after)
11511 (flymake-set-at, flymake-er-make-er, flymake-er-get-line)
11512 (flymake-er-get-line-err-info-list, flymake-ler-set-file)
11513 (flymake-ler-set-full-file, flymake-ler-set-line)
11514 (flymake-get-line-err-count, flymake-get-err-count)
11515 (flymake-highlight-err-lines, flymake-overlay-p)
11516 (flymake-make-overlay, flymake-region-has-flymake-overlays)
11517 (flymake-find-err-info)
11518 (flymake-line-err-info-is-less-or-equal)
11519 (flymake-add-line-err-info, flymake-add-err-info)
11520 (flymake-get-first-err-line-no)
11521 (flymake-get-last-err-line-no, flymake-get-next-err-line-no)
11522 (flymake-get-prev-err-line-no, flymake-skip-whitespace)
11523 (flymake-goto-line, flymake-goto-next-error)
11524 (flymake-goto-prev-error, flymake-patch-err-text): Delete
11525 functions no longer used.
11526 (flymake-goto-next-error, flymake-goto-prev-error): Rewrite.
11527 (flymake-report): Rewrite.
11528 (flymake-popup-current-error-menu): Rewrite.
11529 (flymake--highlight-line): Rename from
11530 flymake-highlight-line. Call `flymake--place-overlay.
11531 (flymake--place-overlay): New function.
11532 (flymake-ler-errorp): New predicate.
11533 (flymake-ler): Simplify.
11534 (flymake-error): Rename from
11536 (flymake-warning): Rename from flymake-warnline.
11537 (flymake-warnline, flymake-errline): Obsoletion aliases.
11539 * test/lisp/progmodes/flymake-tests.el (warning-predicate-rx-gcc)
11540 (warning-predicate-function-gcc, warning-predicate-rx-perl)
11541 (warning-predicate-function-perl): Use face `flymake-warning'.
11543 2017-10-03 João Távora <joaotavora@gmail.com>
11545 Move symbols in flymake-proc.el to separate namespace
11547 Every symbol in this flymake now starts with the prefix flymake-proc-.
11549 Make obsolete aliases for (almost?) every symbol.
11551 Furthermore, many flymake-proc.el symbols are prefixed with
11552 "flymake-proc--", that is they were considered internal.
11554 Some customization variables, interactive functions, and other symbols
11555 considered useful to user customizations or third-party libraries are
11556 considered "public" or "external" and so use a "flymake-proc-" prefix.
11558 * lisp/progmodes/flymake-proc.el: Every symbol renamed.
11560 * test/lisp/progmodes/flymake-tests.el
11561 (flymake-tests--current-face): Use
11562 flymake-proc-warning-predicate, not flymake-warning-predicate.
11564 * lisp/progmodes/flymake-proc.el
11565 (flymake-proc--get-project-include-dirs-function)
11566 (flymake-proc--get-project-include-dirs-imp)
11567 (flymake-proc--get-include-dirs-dot) (flymake-proc--get-tex-args)
11568 (flymake-proc--find-make-buildfile)
11569 (flymake-proc--get-syntax-check-program-args)
11570 (flymake-proc--init-create-temp-source-and-master-buffer-copy)
11571 (flymake-proc--init-find-buildfile-dir)
11572 (flymake-proc--get-full-nonpatched-file-name)
11573 (flymake-proc--get-full-patched-file-name) (flymake-proc--base-dir,
11574 flymake-proc--temp-master-file-name) (flymake-proc--master-file-name)
11575 (flymake-proc--temp-source-file-name)
11576 (flymake-proc--delete-temp-directory) (flymake-proc--kill-process)
11577 (flymake-proc--start-syntax-check-process)
11578 (flymake-proc--compilation-is-running)
11579 (flymake-proc--safe-delete-directory) (flymake-proc--safe-delete-file)
11580 (flymake-proc--get-program-dir) (flymake-proc--restore-formatting)
11581 (flymake-proc--clear-project-include-dirs-cache)
11582 (flymake-proc--project-include-dirs-cache)
11583 (flymake-proc--get-system-include-dirs)
11584 (flymake-proc--get-project-include-dirs)
11585 (flymake-proc--add-project-include-dirs-to-cache)
11586 (flymake-proc--get-project-include-dirs-from-cache)
11587 (flymake-proc--post-syntax-check) (flymake-proc--process-sentinel)
11588 (flymake-proc--process-filter) (flymake-proc--create-master-file)
11589 (flymake-proc--find-buffer-for-file)
11590 (flymake-proc--copy-buffer-to-temp-buffer)
11591 (flymake-proc--read-file-to-temp-buffer)
11592 (flymake-proc--save-buffer-in-file) (flymake-proc--replace-region,
11593 flymake-proc--check-include)
11594 (flymake-proc--check-patch-master-file-buffer)
11595 (flymake-proc--master-file-compare)
11596 (flymake-proc--find-possible-master-files)
11597 (flymake-proc--included-file-name, flymake-proc--same-files)
11598 (flymake-proc--fix-file-name, flymake-proc--find-buildfile)
11599 (flymake-proc--clear-buildfile-cache)
11600 (flymake-proc--add-buildfile-to-cache)
11601 (flymake-proc--get-buildfile-from-cache)
11602 (flymake-proc--find-buildfile-cache)
11603 (flymake-proc--get-real-file-name-function)
11604 (flymake-proc--get-cleanup-function) (flymake-proc--get-init-function)
11605 (flymake-proc--get-file-name-mode-and-masks)
11606 (flymake-proc--processes): Rename to internal symbol from
11607 flymake-proc- version.
11609 2017-10-03 João Távora <joaotavora@gmail.com>
11611 Completely rewrite Flymake's subprocess output processing
11613 Instead of parsing and matching regexps line-by-line, insert
11614 subprocess output in a separate buffer and parse using
11615 `search-forward-regexp'. This eventually enables multi-line error
11616 patterns and simplifies code all around. Store per-check information
11617 in the subprocess using `process-get' and `process-put'. Treat error
11618 messages, warnings, etc. more generically as "diagnostics". Create
11619 these objects as soon as possible, reusing existing `flymake-ler'
11620 structure. Fix some whitespace.
11622 * lisp/progmodes/flymake.el (cl-lib): Require also when
11624 (flymake--fix-line-numbers): Rename from
11625 flymake-fix-line-numbers. Simplify.
11626 (flymake-report): Call flymake--fix-line-numbers. Rearrange
11627 plain diagnostics list into alist format expected by
11628 flymake-highlight-err-lines.
11630 * lisp/progmodes/flymake-proc.el (flymake-process-filter): Insert
11631 process output and parse in dedicated output buffer.
11632 (flymake-proc--diagnostics-for-pattern): New helper function.
11633 (flymake-process-sentinel): Call flymake-post-syntax-check with
11634 collected diagnostics. Kill output buffer.
11635 (flymake-post-syntax-check): Receive diagnostics as third argument.
11636 (flymake-parse-output-and-residual, flymake-new-err-info)
11637 (flymake-parse-residual, flymake-parse-err-lines)
11638 (flymake-split-output, flymake-proc-parse-line)
11639 (flymake-output-residual): Delete.
11640 (flymake-start-syntax-check-process): Use make-process. Setup
11641 dedicated an output buffer
11643 2017-10-03 João Távora <joaotavora@gmail.com>
11645 Flymake provides flymake-report re-entry point for backends
11647 * lisp/progmodes/flymake-proc.el (flymake-post-syntax-check):
11648 Simplify. Call flymake-report.
11650 * lisp/progmodes/flymake.el (flymake-report): New function.
11652 2017-10-03 João Távora <joaotavora@gmail.com>
11654 Split Flymake into flymake.el into flymake-proc.el (again!)
11656 After deciding that this work would continue on master only, which
11657 caused two commits named
11659 Revert "Split flymake.el into flymake-proc.el and flymake-ui.el"
11663 Revert "Add flymake-backends defcustom"
11665 to be added to the emacs-26 branch, further discussion reversed that
11670 https://lists.gnu.org/r/emacs-devel/2017-09/msg01020.html
11671 https://lists.gnu.org/r/emacs-devel/2017-09/msg01030.html
11673 This means that those two commits MUST be merged to master AFTER ALL.
11675 flymke-proc.el contains the main syntax-checking backend, while
11676 flymake.el keeps mostly the UI part.
11678 * lisp/progmodes/flymake-proc.el: New file. Require flymake.
11680 * lisp/progmodes/flymake.el: Require flymake-proc.el at the end.
11682 2017-10-03 Nicolas Petton <nicolas@petton.fr>
11686 * admin/authors.el (authors-ignored-files, authors-valid-file-names)
11687 (authors-renamed-files-alist): Additions.
11689 2017-10-03 Noam Postavsky <npostavs@gmail.com>
11691 Give more helpful messages for python completion setup failures
11693 * lisp/progmodes/python.el (python-shell-completion-native-setup): In
11694 case the completion setup failed with some exception, print out the
11695 exception type and message. If libedit is detected, raise an
11696 exception, since this is known to fail.
11698 2017-10-02 Eli Zaretskii <eliz@gnu.org>
11700 Fix the --without-x build
11702 * src/frame.c (Ficonify_frame) [HAVE_WINDOW_SYSTEM]: Use
11703 frame_parent only in GUI builds to avoid compilation errors in
11704 --without-x builds. (Bug#28611)
11706 2017-10-02 Paul Eggert <eggert@day>
11708 Fix customization of zoneinfo-style-world-list
11710 A customizable variable's initial value cannot depend on that of
11711 another customizable variable, since the variables are initialized
11712 in other than textual order. Problem reported by N. Jackson
11714 * lisp/time.el (display-time-world-list): Default to t,
11715 a special value that expands to zoneinfo-style-word-list
11716 if that works, and to legacy-style-word-list otherwise.
11717 (time--display-world-list): New function.
11718 (display-time-world, display-time-world-timer): Use it.
11720 2017-10-02 Alan Mackenzie <acm@muc.de>
11722 Fix a CC Mode brace stack cache bug.
11724 * lisp/progmodes/cc-engine.el (c-update-brace-stack): Call
11725 c-beginning-of-current-token after a failing search operation, to ensure we
11726 don't cache a point inside a token.
11728 2017-10-02 Paul Eggert <eggert@cs.ucla.edu>
11730 * etc/PROBLEMS: Document Bug#26638.
11732 2017-10-02 Paul Eggert <eggert@cs.ucla.edu>
11734 Prefer HTTPS to HTTP for gnu.org
11736 This fixes some URLs I omitted from my previous pass,
11737 notably those in lists.gnu.org. Although lists.gnu.org
11738 does not yet support TLS 1.1, TLS 1.0 is better than nothing.
11739 * lisp/erc/erc.el (erc-official-location):
11740 * lisp/mail/emacsbug.el (report-emacs-bug):
11741 Use https:, not http:.
11743 2017-10-02 Paul Eggert <eggert@cs.ucla.edu>
11747 This is mostly to change http: to https: in licenses.
11748 * COPYING, build-aux/config.guess, build-aux/config.sub:
11749 * doc/emacs/doclicense.texi, doc/emacs/gpl.texi:
11750 * doc/lispintro/doclicense.texi, doc/lispref/doclicense.texi:
11751 * doc/lispref/gpl.texi, doc/misc/doclicense.texi:
11752 * doc/misc/gpl.texi, etc/COPYING, leim/COPYING:
11753 * lib-src/COPYING, lib/COPYING, lisp/COPYING, lwlib/COPYING:
11754 * msdos/COPYING, nt/COPYING, src/COPYING:
11757 2017-10-01 Simen Heggestøyl <simenheg@gmail.com>
11759 Keep eww buffer current when looking up CSS on MDN
11761 * lisp/textmodes/css-mode.el (css-lookup-symbol): Keep the eww buffer
11762 current when looking up CSS documentation on MDN. This fixes a bug
11763 where the eww buffer's content sometimes get mangled when switching
11764 buffers mid-render.
11766 2017-10-01 Charles A. Roelli <charles@aurox.ch>
11768 Workaround for faulty localtime() under macOS 10.6
11770 * lisp/org/org-clock.el (org-clock--oldest-date): Only execute
11771 'decode-time' on times later than year -2**31 under macOS 10.6.
11774 2017-10-01 Alan Mackenzie <acm@muc.de>
11776 Doc amendment for syntax-ppss.
11778 * doc/lispref/syntax.texi (Position Parse): Note, twice, that syntax-ppss is
11779 equivalent to parse-partial-sexp from the beginning of THE VISIBLE PART OF the
11780 buffer. Final part of the fix for bug #22983.
11782 2017-10-01 Charles A. Roelli <charles@aurox.ch>
11784 Remove incorrect NEWS entry about 'find-library'
11786 * etc/NEWS (Changes in Emacs 26.1): Remove an entry about
11787 'find-library' taking a prefix argument to pop to a different
11788 window. This behavior was added in "Allow a prefix argument to
11789 find-library to pop to a different window" (commit e1f2d14a), and
11790 then removed in "New commands: find-library-other-window,
11791 find-library-other-frame" (commit 021430f4).
11793 2017-10-01 Alan Mackenzie <acm@muc.de>
11795 Remove inadvertent changes to syntax.texi in last commit.
11797 * doc/lispref/syntax.texi (Position Parse): revert changes.
11799 2017-10-01 Alan Mackenzie <acm@muc.de>
11801 Amend documentation for text-quoting-style becoming a user option.
11803 * doc/lispref/control.texi (Signaling Errors):
11804 * doc/lispref/display.texi (Displaying Messages):
11805 * doc/lispref/strings.texi (Formatting Strings):
11806 Edit for brevity, farming out the details to the new
11807 Text Quoting Style node.
11808 * doc/lispref/help.texi (Text Quoting Style): New section.
11809 Move detailed discussion of text-quoting-style here.
11810 Add discussion about how to output grave accent and apostrophe in
11811 documentation and messages. Adjust xrefs to point to this section
11813 * etc/NEWS: text-quoting-style semantics have not changed.
11815 2017-10-01 Alan Mackenzie <acm@muc.de>
11817 Make the value nil in text-quoting-style mean what it does in Emacs 25.
11819 This is a partial reversion of yesterday's commit by the same author, which
11820 changed the meaning of nil and introduced the new value t.
11822 * src/doc.c (text_quoting_style, text-quoting-style)
11823 (internal--text-quoting-flag): Revert yesterday's changes.
11825 * lisp/cus-start.el: (top level): Amend the entry for text-quoting-style.
11827 * etc/NEWS: Amend the entry for text-quoting-style.
11829 * doc/lispref/control.texi (Signalling Errors)
11830 * doc/lispref/display.texi (Displaying Messages)
11831 * doc/lispref/strings.texi (Formatting Strings): Bind text-quoting-style to
11832 grave rather than nil to inhibit translation of quotes.
11834 * doc/lispref/help.texi (Keys in Documentation): Revert the description of the
11835 proposed new default, t.
11837 2017-10-01 Alan Mackenzie <acm@muc.de>
11839 Make text-quoting-style customizable. Introduce t and new meaning for nil.
11841 A value of nil for text-quoting-style now means "no translation". t means
11842 "Use curved quotes if displayable".
11844 * src/doc.c (text-quoting-style (function)): modify for new semantics.
11845 (text-quoting-style (variable)): Amend the doc string, set the default value
11848 * lisp/cus-start.el: (top level): Create a customize entry for
11849 text-quoting-style in group display.
11851 * etc/NEWS: Amend the entry for text-quoting-style.
11853 * doc/emacs/display.texi (Text Display): Describe the translation of ASCII
11854 quotes to curved quotes, and how to influence or inhibit it.
11856 * doc/lispref/control.texi (Signalling Errors)
11857 * doc/lispref/display.texi (Displaying Messages)
11858 * doc/lispref/strings.texi (Formatting Strings): Describe binding
11859 text-quoting-style to nil to inhibit unwanted quote translation.
11861 * doc/lispref/help.texi (Keys in Documentation): Change text-quoting-style
11862 from a variable to a user option. Describe its changed set of values. State
11863 that it can be customized freely.
11865 2017-10-01 Michael Albinus <michael.albinus@gmx.de>
11867 eshell.texi improvements
11869 * doc/misc/eshell.texi (Built-ins): eshell/sudo is a compiled
11870 Lisp function in `em-tramp.el'. Mention also $*, $1, $2, ...
11871 (Aliases): Add $*, $1, $2, ... to the variable index.
11873 2017-08-15 Alan Third <alan@breton-build.holly.idiocy.org>
11875 Fix ns-win.el on GNUstep
11877 * lisp/term/ns-win.el: Appkit version check only works on macOS, so
11878 don't try it when not using Cocoa.
11880 2017-10-01 Martin Rudalics <rudalics@gmx.at>
11882 Fix reference style in org.texi
11884 * doc/misc/org.texi (A Texinfo example): Fix reference style.
11886 2017-10-01 Martin Rudalics <rudalics@gmx.at>
11888 Improve handling of iconification of child frames (Bug#28611)
11890 * src/frame.c (Ficonify_frame): Handle `iconify-child-frame' option.
11891 (syms_of_frame): New symbols Qiconify_top_level and Qmake_invisible.
11892 (iconify_child_frame): New option.
11893 * lisp/cus-start.el (iconify-child-frame): Add customization
11895 * doc/lispref/frames.texi (Child Frames): Describe new option
11896 `iconify-child-frame'. Don't index "top-level frame" twice.
11898 2017-10-01 Noam Postavsky <npostavs@gmail.com>
11900 Revert "Don't lose arguments to eshell aliases (Bug#27954)"
11902 It broke the established argument handling methods provided by eshell
11903 aliases (Bug#28568).
11904 * doc/misc/eshell.texi (Aliases): Fix example, call out use of
11905 arguments in aliases.
11906 * lisp/eshell/em-alias.el (eshell-maybe-replace-by-alias): Ignore
11909 2017-10-01 Noam Postavsky <npostavs@gmail.com>
11911 Make "unsafe directory" error message more informative (Bug#865)
11913 * lisp/server.el (server-ensure-safe-dir): Produce a description for
11914 each "unsafe" condition.
11916 2017-10-01 Eric Abrahamsen <eric@ericabrahamsen.net>
11918 Fix slot typecheck in eieio-persistent
11920 * lisp/emacs-lisp/eieio-base.el (eieio-persistent-slot-type-is-class-p):
11921 An `or' form can specify multiple potential classes (or null) as
11922 valid types for a slot, but previously only the final element of the
11923 `or' was actually checked. Now returns all valid classes in the `or'
11925 (eieio-persistent-validate/fix-slot-value): Check if proposed value
11926 matches any of the valid classes.
11927 * test/lisp/emacs-lisp/eieio-tests/eieio-test-persist.el
11928 (eieio-test-multiple-class-slot): Test this behavior.
11930 2017-09-30 Dmitry Gutov <dgutov@yandex.ru>
11932 Fix semantic-ia-fast-jump
11934 * lisp/cedet/semantic/ia.el (semantic-ia--fast-jump-helper):
11935 Use `pop-to-buffer-same-window' (bug#28645).
11937 2017-09-30 Kaushal Modi <kaushal.modi@gmail.com>
11939 Bind vc-region-history
11941 * lisp/vc/vc-hooks.el (vc-prefix-map):
11942 Bind `vc-region-history' to 'C-x v h', which was earlier bound to
11943 `vc-insert-headers' (Bug#27644).
11944 * doc/emacs/maintaining.texi (VC Change Log): Mention the new binding.
11945 * doc/emacs/vc1-xtra.texi (Version Headers): Remove the association of
11946 'C-x v h' with `vc-insert-headers'.
11947 (https://lists.gnu.org/r/emacs-devel/2017-09/msg00957.html)
11949 2017-09-30 Allen Li <vianchielfaura@gmail.com> (tiny change)
11951 Exit macro definition on undefined keys
11953 * lisp/subr.el (undefined): Error out of kmacro definition, if any.
11956 2017-09-30 Tim Landscheidt <tim@tim-landscheidt.de> (tiny change)
11958 Reset bidi-paragraph-direction on article rendering
11960 * lisp/gnus/gnus-art.el (gnus-request-article-this-buffer): Reset
11961 bidi-paragraph-direction on article rendering. (Bug#28454)
11963 2017-09-30 Eli Zaretskii <eliz@gnu.org>
11965 Fix url-http use of url-current-object
11967 * lisp/url/url-http.el (url-http): Bind url-current-object before
11968 calling url-http-find-free-connection. (Bug#28515)
11970 2017-09-30 Andy Moreton <andrewjmoreton@gmail.com>
11972 Avoid assertions in vc-hg.el on MS-Windows
11974 * lisp/vc/vc-hg.el (vc-hg--pcre-to-elisp-re)
11975 (vc-hg--slurp-hgignore, vc-hg--read-repo-requirements)
11976 (vc-hg-state-fast): Use file-name-absolute-p and directory-name-p
11977 instead of relying on Unix file-name syntax. This avoids
11978 assertion violations on MS-Windows.
11980 2017-09-30 Eli Zaretskii <eliz@gnu.org>
11982 Improve documentation of 'copy-sequence'
11984 * src/fns.c (Fcopy_sequence):
11985 * doc/lispref/sequences.texi (Sequence Functions): Mention the
11986 exception when copying an empty sequence. (Bug#28627)
11988 2017-09-30 Eli Zaretskii <eliz@gnu.org>
11990 Minor update of ack.texi
11992 * doc/emacs/ack.texi (Acknowledgments): Update Eli Zaretskii's
11995 2017-09-30 N. Jackson <nljlistbox2@gmail.com> (tiny change)
11997 * doc/emacs/emacs.texi (Acknowledgments): Add more contributors.
11999 2017-09-30 Eli Zaretskii <eliz@gnu.org>
12001 Improve indexing of multi-file/buffer Isearch commands
12003 * doc/emacs/maintaining.texi (Identifier Search): Change wording
12004 of index entries to make them different from those for multi-file
12005 isearch commands. (Bug#28584)
12006 * doc/emacs/search.texi (Other Repeating Search): Index the
12007 multi-* commands. (Bug#28584) Rearrange the indexing to keep
12008 each index entry close to its subject.
12010 2017-09-30 Mark Oteiza <mvoteiza@udel.edu>
12012 Add CAM02 JCh and CAM02-UCS J'a'b' conversions
12014 * src/lcms.c (rad2deg, parse_jch_list, parse_jab_list, xyz_to_jch):
12015 (jch_to_xyz, jch_to_jab, jab_to_jch): New functions.
12016 (lcms-jch->xyz, lcms-jch->xyz, lcms-jch->jab, lcms-jab->jch): New Lisp
12018 (lcms-cam02-ucs): Refactor.
12019 (syms_of_lcms2): Declare new functions.
12020 * test/src/lcms-tests.el (lcms-roundtrip, lcms-ciecam02-gold):
12021 (lcms-jmh->cam02-ucs-silver): New tests.
12022 * etc/NEWS: Mention new functions.
12024 2017-09-30 Eli Zaretskii <eliz@gnu.org>
12026 Fix uses of @kindex in the Emacs manual
12028 * doc/emacs/programs.texi (Expressions, Semantic, Hungry Delete):
12029 * doc/emacs/mark.texi (Global Mark Ring)
12030 (Disabled Transient Mark):
12031 * doc/emacs/buffers.texi (Select Buffer):
12032 * doc/emacs/mule.texi (File Name Coding): Fix @kindex entries
12033 which used @key. Reported by Marcin Borkowski <mbork@mbork.pl>.
12035 2017-09-30 Paul Eggert <eggert@cs.ucla.edu>
12040 2017-09-28 string: code style
12041 2017-09-25 sys_types: update URL
12042 2017-09-23 install-sh: do not assume / = //
12043 2017-09-21 mktime: port to OpenVMS
12044 * build-aux/install-sh, m4/mktime.m4, m4/string_h.m4:
12045 * m4/sys_types_h.m4: Copy from Gnulib.
12046 * lib/gnulib.mk.in: Regenerate.
12048 2017-09-30 Paul Eggert <eggert@cs.ucla.edu>
12050 Prefer HTTPS to HTTP for gnu.org
12052 This catches some URLs I missed in my previous scan,
12053 or perhaps were added after the scan.
12055 2017-09-30 Noam Postavsky <npostavs@gmail.com>
12057 Wait for frame visibility with timeout in w32term too
12059 * src/w32term.c (syms_of_w32term) [x-wait-for-event-timeout]: New
12061 (x_make_frame_visible): Wait for frame to become visible according to
12063 (input_signal_count): Remove.
12065 2017-09-30 Noam Postavsky <npostavs@gmail.com>
12067 Bring back the busy wait after x_make_frame_visible (Bug#25521)
12069 But wait specfically for a MapNotify event, and only for a
12070 configurable amount of time.
12071 * src/xterm.c (syms_of_xterm) [x-wait-for-event-timeout]: New
12073 (x_wait_for_event): Use it instead of hardcoding the wait to 0.1s.
12074 (x_make_frame_visible): Call x_wait_for_event at the end.
12075 * etc/NEWS: Announce x_wait_for_event.
12077 2017-09-29 Eli Zaretskii <eliz@gnu.org>
12079 Fix last doc string change in simple.el
12081 * lisp/simple.el (shell-command-saved-pos)
12082 (region-extract-function, region-bounds): Doc fixes. (Bug#28609)
12084 2017-09-29 Eli Zaretskii <eliz@gnu.org>
12086 Revert "bug#28609: simple.el"
12088 This reverts commit a75ab3b3fb8ab69ef38a94403d061f88f3b5b63e.
12090 2017-09-29 Devon Sean McCullough <Emacs-Hacker2017@jovi.net>
12092 bug#28609: simple.el
12094 Correct grammar; also, call a pair a pair.
12096 (cherry picked from commit 25ef543a97a80718cc4eb33734d393420a43f41e)
12098 2017-09-29 Rasmus <rasmus@gmx.us>
12100 Merge branch 'emacs-26' into scratch/org-mode-merge
12102 2017-09-29 Noam Postavsky <npostavs@gmail.com>
12104 Fix ert backtrace saving for non-`signal'ed errors (Bug#28333)
12106 * lisp/emacs-lisp/ert.el (ert--run-test-debugger): Take the frames
12107 above the `debugger' frame, rather than assuming there will be a
12110 2017-09-28 Alan Third <alan@idiocy.org>
12112 Revert "Fix build on macOS (bug#28571)"
12114 This reverts commit fec63089d53d2196b0348086aeed70277fbc02c0.
12116 Prematurely pushed.
12118 2017-09-28 Alan Third <alan@idiocy.org>
12120 Fix build on macOS (bug#28571)
12122 * src/conf_post.h (HAVE_FUTIMENS, HAVE_FUTIMESAT, HAVE_UTIMENSAT)
12123 [DARWIN_OS]: Undefine.
12125 2017-09-28 Simen Heggestøyl <simenheg@gmail.com>
12127 Add tests for `css-current-defun-name'
12129 * test/lisp/textmodes/css-mode-tests.el (css-test-current-defun-name)
12130 (css-test-current-defun-name-nested)
12131 (css-test-current-defun-name-complex): New tests for
12132 `css-current-defun-name'.
12134 2017-09-28 Martin Rudalics <rudalics@gmx.at>
12136 In w32fullscreen_hook don't add decorations to undecorated frames
12138 * src/w32term.c (w32fullscreen_hook): Do not add (or try to
12139 remove) decorations for undecorated frames.
12141 2017-09-28 João Távora <joaotavora@gmail.com>
12143 Revert "Split flymake.el into flymake-proc.el and flymake-ui.el"
12145 In other words, re-coalesce the two files,
12146 lisp/progmodes/flymake-proc.el and lisp/progmodes/flymake-ui.el, back
12147 into a single one, lisp/progmodes/flymake.el.
12149 The changesets "Prefer HTTPS to FTP and HTTP in documentation" and
12150 "allow nil init in flymake-allowed-file-name-masks to disable flymake"
12151 are kept in place in the new lisp/progmodes/flymake.el.
12153 This reverts Git commit eb34f7f5a29e7bf62326ecb6e693f28878be28cd.
12155 Don't merge this back to master as development happening there builds
12156 upon this work. See also
12157 https://lists.gnu.org/r/emacs-devel/2017-09/msg00932.html.
12159 2017-09-28 João Távora <joaotavora@gmail.com>
12161 Revert "Add flymake-backends defcustom"
12163 This reverts Git commit 13993c46a21495167517f76d2e36b6c09ac5e89e.
12165 Don't merge this back to master as development happening there builds
12166 upon this work. See also
12167 https://lists.gnu.org/r/emacs-devel/2017-09/msg00932.html
12169 2017-09-27 Paul Eggert <eggert@cs.ucla.edu>
12171 * src/editfns.c (styled_format): Fix typo in previous change.
12173 2017-09-27 Paul Eggert <eggert@cs.ucla.edu>
12175 Avoid some unnecessary copying in Fformat etc.
12177 This patch is just for performance; it should not affect behavior.
12178 On my platform, it made the microbenchmark (format "%S" load-path)
12179 run about 45% faster. It should also speed up calls like (message
12181 * src/callint.c (Fcall_interactively):
12182 * src/dbusbind.c (XD_OBJECT_TO_STRING):
12183 * src/editfns.c (Fmessage, Fmessage_box):
12184 * src/xdisp.c (vadd_to_log, Ftrace_to_stderr):
12185 Use styled_format instead of Fformat or Fformat_message,
12186 to avoid unnecessary copying.
12187 * src/editfns.c (styled_format): New arg NEW_RESULT.
12188 All uses changed. Reuse an input string if it has the
12189 right value and if !NEW_RESULT.
12190 * src/lisp.h (style_format): New decl.
12192 2017-09-26 John Wiegley <johnw@newartisans.com>
12194 lisp/simple.el: Indicate when a list of pairs is meant in a docstring
12196 2017-09-26 Devon Sean McCullough <Emacs-Hacker2017@jovi.net>
12198 bug#28609: simple.el
12200 Correct grammar; also, call a pair a pair.
12202 2017-09-26 Dmitry Gutov <dgutov@yandex.ru>
12204 Use a separate syntax-ppss cache for narrowed buffers
12206 * lisp/emacs-lisp/syntax.el (syntax-ppss-wide):
12207 New variable, to contain the data from `syntax-ppss-last' and
12208 `syntax-ppss-cache'.
12209 (syntax-ppss-cache, syntax-ppss-last): Remove.
12210 (syntax-ppss-narrow, syntax-ppss-narrow-start): New variables.
12211 (syntax-ppss-flush-cache): Flush both caches.
12212 (syntax-ppss--data): Return the appropriate last result and
12213 buffer cache for the current restriction.
12214 (syntax-ppss, syntax-ppss-debug): Use it (bug#22983).
12216 2017-09-26 Joerg Behrmann <behrmann@physik.fu-berlin.de> (tiny change)
12218 Improve python3-compatibility of fallback completion (Bug#28499)
12220 * lisp/progmodes/python.el (python-eldoc-setup-code): Use
12221 inspect.getfullargspec instead of inspect.getargspec to avoid a
12222 deprecation warning on every usage of eldoc in python-mode.
12224 2017-09-26 Noam Postavsky <npostavs@gmail.com>
12226 Fix subr-x-tests when running from elc
12228 * test/lisp/emacs-lisp/subr-x-tests.el (subr-x-and-let*-test-group-1):
12229 Use `eval' around the `should-error' cases.
12231 2017-09-26 Noam Postavsky <npostavs@gmail.com>
12233 * lisp/eshell/esh-util.el (eshell-condition-case): Add debug declaration.
12235 2017-09-26 Noam Postavsky <npostavs@gmail.com>
12237 Make sh-indentation into an alias for sh-basic-offset (Bug#21751)
12239 * lisp/progmodes/sh-script.el (sh-indentation): Redefine as obsolete
12240 variable alias for `sh-basic-offset'.
12241 (sh-mode, sh-smie--indent-continuation)
12242 (sh-smie-rc-rules, sh-basic-indent-line): Replace `sh-indentation'
12243 with `sh-basic-offset'.
12245 2017-09-26 Noam Postavsky <npostavs@gmail.com>
12247 Fix loading of smie-config rules (Bug#24848)
12249 * lisp/emacs-lisp/smie.el (smie-config--setter): Use `set-default'
12250 instead of `setq-default'.
12251 (smie-config): Use `custom-initialize-set' instead of
12252 `custom-initialize-default' as the :initialize argument.
12254 * lisp/progmodes/sh-script.el (sh-learn-buffer-indent): Mention that
12255 we call `smie-config-guess' so that the user will have a chance to
12256 find the correct docstring to consult. Remove hedging comments
12257 regarding use of abnormal hooks.
12259 2017-09-26 Dmitry Gutov <dgutov@yandex.ru>
12261 Reset default-directory inside *xref-grep* buffer
12263 * lisp/progmodes/xref.el (xref-collect-matches):
12264 Reset default-directory, too. (Bug#28575)
12266 2017-09-25 Michael Albinus <michael.albinus@gmx.de>
12268 * test/lisp/net/tramp-tests.el (tramp-test21-file-links): Special
12271 2017-09-25 Mark Oteiza <mvoteiza@udel.edu>
12273 Loosen strict parsing requirement for desktop files
12275 There are other desktop-looking files, for instance those having to do
12276 with MIME typess, that would benefit from being able to be read by this
12277 function. It helps to have some flexibility.
12278 * lisp/xdg.el (xdg-desktop-read-file): Remove an error condition.
12279 * test/lisp/xdg-tests.el: Remove a test.
12281 2017-09-25 Mark Oteiza <mvoteiza@udel.edu>
12283 * lisp/xdg.el (xdg-thumb-uri): Fix doc string.
12285 2017-09-25 Martin Rudalics <rudalics@gmx.at>
12287 Fix documentation of `make-frame' and related variables and hooks
12289 * lisp/frame.el (before-make-frame-hook)
12290 (after-make-frame-functions, frame-inherited-parameters)
12291 (make-frame): Fix doc-strings.
12292 * doc/lispref/frames.texi (Creating Frames): Fix description
12293 of `make-frame' and related variables and hooks.
12295 2017-09-24 Eric Abrahamsen <eric@ericabrahamsen.net>
12297 Accept new `always' value for option `buffer-offer-save'
12299 Also revert ee512e9a82
12301 * lisp/files.el (buffer-offer-save): In addition to nil and t, now
12302 allows a third symbol value, `always'. A buffer where this option is
12303 set to `always' will always be offered for save by
12304 `save-some-buffers'.
12305 (save-some-buffers): Check the exact value of this buffer-local
12306 variable. No longer check the buffer name, or the value of
12307 `write-contents-functions'.
12308 * doc/lispref/buffers.texi (Killing Buffers): Note change in manual.
12309 * doc/lispref/files.texi (Saving Buffers): Remove note about buffer
12311 * etc/NEWS: Mention in NEWS.
12313 2017-09-24 Alan Third <alan@idiocy.org>
12315 Improve new NS scrolling variable names
12317 * src/nsterm.m (ns-use-system-mwheel-acceleration): Replace with
12318 'ns-use-mwheel-acceleration'.
12319 (ns-touchpad-scroll-line-height): Replace with
12320 'ns-mwheel-line-height'.
12321 (ns-touchpad-use-momentum): Replace with 'ns-use-mwheel-momentum'.
12322 * etc/NEWS: Change variable names.
12324 2017-09-24 Philipp Stephani <phst@google.com>
12326 Document 'replace-buffer-contents' in the manual.
12328 * doc/lispref/text.texi (Replacing): New node.
12330 2017-09-23 Alan Third <alan@idiocy.org>
12332 Fix undecorated frame resizing issues on NS (bug#28512)
12334 * src/nsterm.m (EmacsView::updateFrameSize): Don't wait for the
12335 toolbar on undecorated frames.
12336 (EmacsView::initFrameFromEmacs): Group window flags correctly.
12338 2017-09-23 Eli Zaretskii <eliz@gnu.org>
12340 Fix doc string of 'dired-listing-switches'
12342 * lisp/dired.el (dired-listing-switches): Fix the quoting
12343 example. (Bug#28569)
12345 2017-09-23 Eli Zaretskii <eliz@gnu.org>
12347 Documentation improvements for 'display-line-numbers'
12349 * doc/emacs/display.texi (Display Custom): Document a few more
12350 options for display-line-numbers. (Bug#28533) Fix a typo.
12352 2017-09-22 Eli Zaretskii <eliz@gnu.org>
12354 Fix last change in bat-mode.el
12356 * lisp/progmodes/bat-mode.el (bat-font-lock-keywords): Fix last
12357 change. (Bug#28311)
12359 2017-09-22 Eli Zaretskii <eliz@gnu.org>
12361 Fix restoring in GUI sessions desktop saved in TTY sessions
12363 * lisp/frameset.el (frameset-filter-font-param): New function.
12364 (frameset-persistent-filter-alist): Use it for processing the
12365 'font' frame parameter. (Bug#17352)
12367 2017-09-22 Eli Zaretskii <eliz@gnu.org>
12369 Improve syntax highlighting in bat-mode
12371 * lisp/progmodes/bat-mode.el (bat-font-lock-keywords): Improve
12372 font-locking of environment variables. Suggested by Achim Gratz
12373 <Stromeko@nexgo.de>. (Bug#28311) (Bug#18405)
12375 2017-09-22 Eli Zaretskii <eliz@gnu.org>
12377 Document the 'list-FOO' convention
12379 * doc/lispref/tips.texi (Coding Conventions): Document the
12380 list-FOO convention.
12382 2017-09-22 Mark Oteiza <mvoteiza@udel.edu>
12384 Expose viewing conditions in CAM02-UCS metric
12386 Also add tests from the colorspacious library. Finally, catch an
12387 errant calculation, where degrees were not being converted to radians.
12388 * src/lcms.c (deg2rad, default_viewing_conditions):
12389 (parse_viewing_conditions): New functions.
12390 (lcms-cam02-ucs): Add comments pointing to references used. Expand
12391 the docstring and explain viewing conditions. JCh hue is given in
12392 degrees and needs to be converted to radians.
12393 (lcms-d65-xyz): Remove. No need to duplicate this in Lisp or make the
12394 API needlessly impure.
12395 * test/src/lcms-tests.el: Reword commentary.
12396 (lcms-rgb255->xyz): New function.
12397 (lcms-cri-cam02-ucs): Fix let-binding.
12398 (lcms-dE-cam02-ucs-silver): New test, assimilated from colorspacious.
12400 2017-09-21 Alan Third <alan@idiocy.org>
12402 Revert "Set frame size to actual requested size (bug#18215)"
12404 This reverts commit d31cd79b40dbd5459b16505a4ee4340210499277.
12406 See bug#28536. I misunderstood bug#18215. It wasn't a bug.
12408 2017-09-21 Gemini Lasswell <gazally@runbox.com>
12410 Add tests for Edebug
12412 * test/lisp/emacs-lisp/edebug-tests.el: New file.
12413 * test/lisp/emacs-lisp/edebug-resources/edebug-test-code.el: New file.
12415 2017-09-21 Gemini Lasswell <gazally@runbox.com>
12417 Catch more messages in ert-with-message-capture
12419 * lisp/emacs-lisp/ert-x.el (ert-with-message-capture): Capture
12420 messages from prin1, princ and print.
12421 (ert--make-message-advice): New function.
12422 (ert--make-print-advice): New function.
12424 2017-09-21 Tak Kunihiro <tkk@misasa.okayama-u.ac.jp>
12426 Support setting region from secondary selection and vice versa
12428 * lisp/mouse.el (secondary-selection-exist-p): New function to
12429 allow callers to tell existence of the secondary selection
12431 (secondary-selection-to-region): New function to set
12432 beginning and end of the region from those of the secondary
12434 (secondary-selection-from-region): New function to set
12435 beginning and end of the secondary selection from those of
12436 the region. (Bug#27530)
12438 * etc/NEWS: Mention the new functions.
12440 2017-09-20 Paul Eggert <eggert@cs.ucla.edu>
12442 Fix new copy-directory bug with empty dirs
12444 Problem reported by Afdam Plaice (Bug#28520) and by Eli Zaretskii
12445 (Bug#28483#34). This is another bug that I introduced in my
12446 recent copy-directory changes.
12447 * lisp/files.el (copy-directory): Work with empty subdirectories, too.
12448 * test/lisp/files-tests.el (files-tests--copy-directory):
12451 2017-09-20 Eli Zaretskii <eliz@gnu.org>
12453 * doc/lispref/strings.texi (Formatting Strings): Improve indexing.
12455 2017-09-20 Eli Zaretskii <eliz@gnu.org>
12457 Fix 2 testsuite tests for MS-Windows
12459 * test/lisp/ibuffer-tests.el (test-buffer-list): Don't try to
12460 create files with "*" in their names.
12461 * test/src/editfns-tests.el (format-time-string-with-zone): Adapt
12462 results to MS-Windows build. Reported by Fabrice Popineau
12463 <fabrice.popineau@gmail.com>.
12465 2017-09-20 Mark Oteiza <mvoteiza@udel.edu>
12467 Rename timer-list to list-timers
12469 * doc/emacs/anti.texi (Antinews):
12470 * doc/lispref/os.texi (Timers):
12472 * lisp/emacs-lisp/timer-list.el:
12473 (timer-list-mode): Rename timer-list to list-timers.
12475 2017-09-19 Alan Third <alan@idiocy.org>
12477 Provide native touchpad scrolling on macOS
12479 * etc/NEWS: Describe changes.
12480 * lisp/term/ns-win.el (mouse-wheel-scroll-amount,
12481 mouse-wheel-progressive-speed): Set to smarter values for macOS
12483 * src/nsterm.m (emacsView::mouseDown): Use precise scrolling deltas to
12484 calculate scrolling for touchpads and mouse wheels.
12485 (syms_of_nsterm): Add variables 'ns-use-system-mwheel-acceleration',
12486 'ns-touchpad-scroll-line-height' and 'ns-touchpad-use-momentum'.
12487 * src/keyboard.c (make_lispy_event): Pass on .arg when relevant.
12488 * src/termhooks.h (event_kind): Update comments re. WHEEL_EVENT.
12489 * lisp/mwheel.el (mwheel-scroll): Use line count.
12490 * lisp/subr.el (event-line-count): New function.
12492 2017-09-19 Eli Zaretskii <eliz@gnu.org>
12494 Fix MinGW64 build broken by recent MinGW64 import libraries
12496 * configure.ac (W32_LIBS): Put -lusp10 before -lgdi32, as latest
12497 MinGW64 import libraries require that. (Bug#28493)
12499 * src/Makefile.in: Adjust commentary to the new order of w32
12502 2017-09-19 Eli Zaretskii <eliz@gnu.org>
12504 Fix crashes in 'move-point-visually' in minibuffer windows
12506 * src/xdisp.c (Fmove_point_visually): Fix off-by-one error in
12507 comparing against the last valid glyph_row of a window glyph
12508 matrix. (Bug#28505)
12510 2017-09-19 Eli Zaretskii <eliz@gnu.org>
12512 * src/emacs.c (usage_message): Don't mention 'find-file'.
12514 2017-09-19 Eli Zaretskii <eliz@gnu.org>
12516 Fix a minor inaccuracy in the Emacs manual
12518 * doc/emacs/cmdargs.texi (Action Arguments): Don't mention
12519 'find-file', as the implementation has changed. Reported by
12520 Everton J. Carpes <everton.carpes@gmail.com> in
12521 https://lists.gnu.org/r/help-gnu-emacs/2017-09/msg00146.html.
12523 2017-09-19 Eli Zaretskii <eliz@gnu.org>
12525 Fix errors in flyspell-post-command-hook
12527 * lisp/textmodes/ispell.el (ispell-get-decoded-string): Handle the
12528 case of a nil Nth element of the language dictionary slot. This
12529 avoids errors in 'flyspell-post-command-hook' when switching
12530 dictionaries with some spell-checkers. (Bug#28501)
12532 2017-09-19 Michael Albinus <michael.albinus@gmx.de>
12534 Work on Tramp's file-truename
12536 * lisp/net/tramp-sh.el (tramp-perl-file-truename):
12537 Check also for symlinks.
12538 (tramp-sh-handle-file-truename): Move check for a symlink
12539 cycle to the end. Do not blame symlinks which look like a
12542 * lisp/net/tramp.el (tramp-handle-file-truename): Expand result.
12544 2017-09-19 Paul Eggert <eggert@cs.ucla.edu>
12546 Fix bug with make-directory on MS-Windows root
12548 * lisp/files.el (files--ensure-directory): Treat any error, not
12549 just file-already-exists, as an opportunity to check whether DIR
12550 is already a directory (Bug#28508).
12552 2017-09-19 Tom Tromey <tom@tromey.com>
12554 Fix log-view-diff-common when point is after last entry
12557 * lisp/vc/log-view.el (log-view-diff-common): If point is after last
12558 entry, look at the previous revision.
12560 2017-09-18 Ken Brown <kbrown@cornell.edu>
12562 Adapt fileio-tests--symlink-failure to Cygwin
12564 * test/src/fileio-tests.el (fileio-tests--symlink-failure)
12565 [CYGWIN]: Skip the case of a symlink target starting with '\';
12566 this is treated specially on Cygwin.
12568 2017-09-18 Eric Abrahamsen <eric@ericabrahamsen.net>
12570 Ignore buffers whose name begins with a space in save-some-buffers
12572 * lisp/files.el (save-some-buffers): Consider these buffers
12573 "internal", and don't prompt the user to save them.
12574 * doc/lispref/files.texi: Document.
12576 2017-09-18 Michael Albinus <michael.albinus@gmx.de>
12578 Improve tramp-interrupt-process robustness
12580 * lisp/net/tramp.el (tramp-interrupt-process): Wait, until the
12581 process has disappeared.
12583 2017-09-18 Michael Albinus <michael.albinus@gmx.de>
12585 Minor Tramp doc update
12587 * doc/misc/tramp.texi (Frequently Asked Questions):
12588 Mention `vc-handled-backends'.
12590 2017-09-18 Mark Oteiza <mvoteiza@udel.edu>
12594 * lisp/subr.el (gensym): Actually implement the default prefix.
12595 * test/lisp/subr-tests.el (subr-tests--gensym): New test.
12597 2017-09-18 Rasmus <rasmus@gmx.us>
12599 Update Org to v9.1.1
12601 Please see etc/ORG-NEWS for major changes.
12603 2017-09-18 Michael Albinus <michael.albinus@gmx.de>
12605 Cleanup in files-tests.el
12607 * test/lisp/files-tests.el (files-tests--make-directory)
12608 (files-tests--copy-directory): Cleanup temporary directories.
12610 2017-09-18 Paul Eggert <eggert@cs.ucla.edu>
12612 Remove old cl-assert calls in 'newline'
12614 * lisp/simple.el (newline): Remove cl-assert calls
12615 that didn't seem to be helping us debug Bug#18913,
12616 and that caused problems as reported in Bug#28280.
12617 Suggested by Glenn Morris (Bug#28280#8).
12619 2017-09-18 Paul Eggert <eggert@cs.ucla.edu>
12621 Avoid crash with C-g C-g in GC
12623 Problem reported by Richard Stallman (Bug#17406).
12624 Based on fix suggested by Eli Zaretskii (Bug#28279#16).
12625 * src/term.c (tty_send_additional_strings):
12626 Use only safe accessors, to avoid crash when C-g C-g in GC.
12628 2017-09-18 Paul Eggert <eggert@cs.ucla.edu>
12630 Fix format-time-string %Z bug with negative tz
12632 * src/editfns.c (tzlookup): Fix sign error in %Z when a purely
12633 numeric zone is negative (Bug#28746).
12634 * test/src/editfns-tests.el (format-time-string-with-zone):
12635 Add test for this bug.
12637 2017-09-18 Paul Eggert <eggert@cs.ucla.edu>
12639 message-citation-line-format %Z is now tz name
12642 * lisp/gnus/message.el (message-citation-line-format):
12643 Fix doc to match new behavior (Bug#28476).
12645 2017-09-18 Mark Oteiza <mvoteiza@udel.edu>
12647 Use doc-view or pdf-tools on any window-system
12649 * lisp/net/mailcap.el (mailcap-mime-data): Simply check for
12652 2017-09-18 Paul Eggert <eggert@cs.ucla.edu>
12654 Fix bug with min and max and NaNs
12656 * src/data.c (minmax_driver): Fix bug with (min 0 NaN), which
12657 mistakenly yielded 0. Also, pacify GCC in a better way.
12658 * test/src/data-tests.el (data-tests-min): Test for the bug.
12660 2017-09-17 Paul Eggert <eggert@cs.ucla.edu>
12662 Fix recently-introduced copy-directory bug
12664 Problem reported by Andrew Christianson (Bug#28451):
12665 * lisp/files.el (copy-directory): If COPY-CONTENTS, make the
12666 destination directory if it does not exist, even if it is a
12667 directory name. Simplify, and omit unnecessary test for an
12668 already-existing non-directory target, since make-directory
12669 diagnoses that for us now.
12670 * test/lisp/files-tests.el (files-tests--copy-directory):
12673 2017-09-17 Paul Eggert <eggert@cs.ucla.edu>
12678 2017-09-16 manywarnings: port to GCC on 64-bit MS-Windows
12679 2017-09-13 all: Replace many more http URLs by https URLs
12680 * build-aux/config.guess, build-aux/config.sub:
12681 * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
12682 * lib/allocator.h, lib/count-leading-zeros.h:
12683 * lib/count-trailing-zeros.h, lib/dup2.c, lib/filevercmp.c:
12684 * lib/fstatat.c, lib/fsync.c, lib/ftoastr.c, lib/ftoastr.h:
12685 * lib/intprops.h, lib/signal.in.h, lib/stdio-impl.h, lib/stdio.in.h:
12686 * lib/unistd.in.h, lib/utimens.c, m4/alloca.m4, m4/extern-inline.m4:
12687 * m4/fstatat.m4, m4/gnulib-common.m4, m4/manywarnings.m4:
12688 * m4/std-gnu11.m4, m4/sys_types_h.m4, m4/vararrays.m4:
12690 * lib/gnulib.mk.in: Regenerate.
12692 2017-09-17 Michael Albinus <michael.albinus@gmx.de>
12694 Fix compatibility problem in Tramp
12696 * lisp/net/tramp.el (tramp-interrupt-process): Better error handling.
12698 * lisp/net/tramp-compat.el (default-toplevel-value): Move up.
12699 (top): Do not call `tramp-change-syntax' anymore.
12700 (tramp-compat-directory-name-p): New defalias.
12702 * lisp/net/tramp-adb.el (tramp-adb-handle-copy-file):
12703 * lisp/net/tramp-sh.el (tramp-sh-handle-copy-directory):
12704 * lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory)
12705 (tramp-smb-handle-copy-file): Use it.
12707 * test/lisp/net/tramp-tests.el (tramp-test28-interrupt-process):
12710 2017-09-17 Eli Zaretskii <eliz@gnu.org>
12712 Avoid GCC 7 compilation warning in eval.c
12714 * src/eval.c (push_handler_nosignal): Use CACHEABLE to work around
12715 GCC compilation warning. Suggested by Paul Eggert <eggert@cs.ucla.edu>
12716 in https://lists.gnu.org/r/emacs-devel/2017-09/msg00492.html.
12718 2017-09-17 Michael Albinus <michael.albinus@gmx.de>
12720 Adapt Tramp version. Do not merge
12722 * doc/misc/trampver.texi:
12723 * lisp/net/trampver.el: Change version to "2.3.3.26.1".
12724 (customize-package-emacs-version-alist): Add Tramp version
12725 integrated in Emacs 26.1.
12727 2017-09-17 Tom Tromey <tom@tromey.com>
12729 Search for Syntax section when viewing MDN
12731 * lisp/textmodes/css-mode.el (css--mdn-after-render): Also search for
12734 2017-09-17 Tom Tromey <tom@tromey.com>
12736 Allow smerge-keep-current to work for empty hunks
12739 * lisp/vc/smerge-mode.el (smerge-get-current): Allow point to be at
12741 * test/lisp/vc/smerge-mode-tests.el: New file.
12743 2017-09-17 Tom Tromey <tom@tromey.com>
12745 Call vc-setup-buffer in vc-git-log-{in,out}going
12748 * lisp/vc/vc-git.el (vc-git-log-incoming, vc-git-log-outgoing): Call
12751 2017-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
12753 Fix last change to textmodes/page-ext.el
12755 * lisp/textmodes/page-ext.el (pages-directory): Make buffer writable
12756 while we build it (bug#28431).
12758 2017-09-16 Glenn Morris <rgm@gnu.org>
12760 * test/src/lcms-tests.el (lcms-cri-cam02-ucs): Skip if lcms2 not present.
12762 2017-09-16 Glenn Morris <rgm@gnu.org>
12764 * test/src/lcms-tests.el (lcms-whitepoint): Skip if lcms2 not present.
12766 (cherry picked from commit 8081df26911c63aadfce4ee8f6a7223d814baeaf)
12768 2017-09-16 Eli Zaretskii <eliz@gnu.org>
12770 Fix compilation warning in etags.c
12772 * lib-src/etags.c (etags_mktmp) [DOS_NT]: Don't dereference a NULL
12773 pointer. Reported by Richard Copley <rcopley@gmail.com>.
12775 2017-09-16 Mark Oteiza <mvoteiza@udel.edu>
12777 Add lisp variable lcms-d65-xyz
12779 This serves as the default optional argument for functions in this
12781 * src/lcms.c (lcms-d65-xyz): New variable.
12782 (lcms-cam02-ucs): Use it. Use better word in docstring. Fix bug
12784 * test/src/lcms-tests.el: Add some tests for lcms-cri-cam02-ucs.
12785 (lcms-colorspacious-d65): New variable.
12787 2017-09-16 Gemini Lasswell <gazally@runbox.com>
12789 * lisp/emacs-lisp/cl-macs.el (cl-letf): Fix Edebug spec (bug#24765)
12791 2017-09-16 Andy Moreton <andrewjmoreton@gmail.com>
12793 Avoid MinGW64 compiler warnings in unexw32.c
12795 * src/unexw32.c (pDWP) [MINGW_W64]: Define to "16llx" only for the
12798 2017-09-16 Eli Zaretskii <eliz@gnu.org>
12800 Start emacs-26 release branch
12805 * msdos/sed2v2.inp: Increment Emacs version to 26.0.60.
12807 * lisp/cus-edit.el (customize-changed-options-previous-release):
12808 Update value to "25.3".
12810 2017-09-16 Alan Mackenzie <acm@muc.de>
12812 Cope better with C++ and Objective-C protection keywords in class declarations
12814 This fix fixes the fontification of a method inside a class at the time it is
12815 typed, when there is a protection keyword clause preceding it.
12817 * lisp/progmodes/cc-engine.el (c-forward-keyword-clause): Handle protection
12819 (c-looking-at-decl-block): Avoid scanning forward over protection keyword
12820 clauses too eagerly.
12822 * lisp/progmodes/cc-langs.el (c-protection-key c-post-protection-token): New
12823 lang defconsts and defvars.
12825 * lisp/progmodes/cc-mode.el (c-fl-decl-start): When we encounter a protection
12826 keyword following a semicolon or brace, move forward over it before attempting
12829 2017-09-16 Eli Zaretskii <eliz@gnu.org>
12831 Fix order of sorted overlays returned by 'overlays-at'
12833 * src/buffer.c (Foverlays_at): If SORTED is non-nil, reverse the
12834 list of results, to have their order as per the documentation.
12837 * etc/NEWS: Mention the change in the behavior of overlays-at.
12839 2017-09-16 Eli Zaretskii <eliz@gnu.org>
12841 Disable execution of unsafe Lisp by Enriched Text mode
12843 * src/xdisp.c (handle_display_spec): If the display property is
12844 wrapped in 'disable-eval' form, disable Lisp evaluation while
12845 processing this property.
12846 (handle_single_display_spec): Accept new argument ENABLE_EVAL_P.
12847 If that argument is false, don't evaluate Lisp while processing
12848 display properties.
12850 * lisp/textmodes/enriched.el
12851 (enriched-allow-eval-in-display-props): New defcustom.
12852 (enriched-decode-display-prop): If
12853 enriched-allow-eval-in-display-props is nil, wrap the display
12854 property with 'disable-eval' to disable Lisp evaluation when the
12855 display property is processed for display. (Bug#28350)
12856 * lisp/gnus/mm-view.el (mm-inline-text): Re-enable processing of
12859 * doc/lispref/display.texi (Display Property): Document the
12860 'disable-eval' wrapping of 'display' properties.
12861 * doc/emacs/text.texi (Enriched Properties): Document
12862 'enriched-allow-eval-in-display-props'.
12864 * etc/NEWS: Describe the security issues with Enriched Text mode
12865 and their solution.
12867 2017-09-16 Eli Zaretskii <eliz@gnu.org>
12869 Avoid MinGW64 compilation warning in w32.c
12871 * src/w32.c (sys_strerror): Provide a prototype for MinGW64.
12873 2017-09-16 Eli Zaretskii <eliz@gnu.org>
12875 Fix MS-Windows build broken by recent changes in lcms.c
12877 * src/lcms.c [WINDOWSNT]: Define types for cmsWhitePointFromTemp
12878 and cmsxyY2XYZ function pointers.
12879 (init_lcms_functions) [WINDOWSNT]: Load cmsWhitePointFromTemp and
12880 cmsxyY2XYZ from liblcms2.
12881 (cmsWhitePointFromTemp, cmsxyY2XYZ) [WINDOWSNT]: Redirect to the
12882 corresponding function pointers.
12883 (Flcms_temp_to_white_point): Minor stylistic changes. Doc fix.
12884 (syms_of_lcms2): Defsubr Slcms_temp_to_white_point.
12886 2017-09-16 Eli Zaretskii <eliz@gnu.org>
12888 Avoid GCC 7 compilation warning in data.c
12890 * src/data.c (minmax_driver): Use UNINIT to avoid compilation
12891 warnings. Reported by Fabrice Popineau
12892 <fabrice.popineau@centralesupelec.fr>.
12894 2017-09-16 Mark Oteiza <mvoteiza@udel.edu>
12896 Add lcms-temp->white-point and initial tests
12898 * src/lcms.c (lcms-temp->white-point): New function.
12899 * test/src/lcms-tests.el: New file.
12901 2017-09-16 Mark Oteiza <mvoteiza@udel.edu>
12903 Use cl-print in timer list
12905 * lisp/emacs-lisp/timer-list.el (timer-list): Use cl-print
12906 for handling functions.
12907 (timer-list-mode): Capitalize major mode name. Set bidi direction
12908 as in tabulated-list-mode.
12910 2017-09-15 Vincent Belaïche <vincentb1@users.sourceforge.net>
12912 Make landscape layout with geometry package rather than a PostScript special.
12914 * lisp/calendar/cal-tex.el (cal-tex-preamble): Make 12pt the
12915 default class option.
12916 (cal-tex-year, cal-tex-cursor-month-landscape): Pass landscape
12917 request to `cal-tex-insert-preamble' function call within the
12918 class option string.
12919 (cal-tex-cursor-month): Don't pass any longer "12pt" argument
12920 to `cal-tex-insert-preamble' function, as it is default.
12921 (cal-tex-insert-preamble): Suppress landscape and size
12922 argument, and replace them by a class-options string
12923 argument. Do not insert any longer "\special{landscape}" in
12924 case of landscape layout, as the job is made by the geometry
12927 2017-09-15 Mark Oteiza <mvoteiza@udel.edu>
12929 * lisp/json.el (json-read-keyword): Revert previous change to catch EOL.
12931 2017-09-15 Eli Zaretskii <eliz@gnu.org>
12933 One more attempt to avoid GCC 7 warnings in dispnew.c
12935 * src/dispnew.c (adjust_glyph_matrix): Use eassume instead of
12936 eassert, to avoid compilation warnings about NULL pointer
12939 2017-09-15 Mark Oteiza <mvoteiza@udel.edu>
12941 Fix color-distance docstring
12943 Also feed the translated color to the metric argument.
12944 * src/xfaces.c (color-distance): Reword docstring to be more helpful.
12945 Avoid duplicating effort in lcms2 by passing the translated 16 bit RGB
12946 instead of the function's color arguments.
12948 2017-09-15 Michael Albinus <michael.albinus@gmx.de>
12950 Improve Tramp behavior according to bug#27986
12952 * lisp/net/tramp-adb.el (tramp-adb-handle-copy-file):
12953 * lisp/net/tramp-sh.el (tramp-sh-handle-copy-directory):
12954 * lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory)
12955 (tramp-smb-handle-copy-file): Check, that NEWNAME is a
12956 directory name when existing. Use `file-name-as-directory'
12959 2017-09-15 Mark Oteiza <mvoteiza@udel.edu>
12961 More JSON optimization
12963 Last I checked, inlining json-skip-whitespace didn't make much
12964 difference. However, changing defsubsts to define-inline results
12965 in roughly 15% reduction in read time on a 200K file.
12966 * lisp/json.el (json-advance, json-peek, json-pop):
12967 (json-skip-whitespace): Inline with define-inline.
12968 (json-read-keyword): Don't use whitespace syntax.
12969 (json-add-to-object): Simpler condition.
12971 2017-09-15 Eli Zaretskii <eliz@gnu.org>
12973 Avoid crashes due to invalid error forms from sentinels/filters
12975 * src/process.c (exec_sentinel_error_handler): Make sure the error
12976 form passed to cmd_error_internal is a cons cell. (Bug#28430)
12978 2017-09-15 Eli Zaretskii <eliz@gnu.org>
12980 Avoid compilation warnings with GCC 7 on MS-Windows
12982 * src/w32term.c (w32_setup_relief_color, construct_mouse_click)
12983 (w32_read_socket): Initialize variables to shut up bogus
12984 compilation warnings from GCC 7.
12985 * src/unexw32.c (COPY_CHUNK, COPY_PROC_CHUNK): Cast to DWORD_PTR
12986 to avoid compiler warnings about printing signed values using %x
12988 * src/dispnew.c (adjust_glyph_matrix): Add eassert to avoid
12989 compiler warning about possible NULL pointer dereference.
12990 * src/lisp.h (pI): Tweak the definition some more for MinGW64.
12992 2017-09-15 Martin Rudalics <rudalics@gmx.at>
12994 Define gnutls_rnd for WINDOWSNT and HAVE_GNUTLS3 case only
12996 * src/fns.c (gnutls_rnd): Define for WINDOWSNT and HAVE_GNUTLS3
12997 case only to avoid unused macros warning otherwise.
12999 2017-09-15 Martin Rudalics <rudalics@gmx.at>
13001 In w32heap.c bump up DUMPED_HEAP_SIZE
13003 * src/w32heap.c (DUMPED_HEAP_SIZE): Bump up DUMPED_HEAP_SIZE
13004 to 13*1024*1024 for 32-bit non-wide-integer builds.
13006 2017-09-15 Mark Oteiza <mvoteiza@udel.edu>
13008 Bind n,p in timer-list
13010 * lisp/emacs-lisp/timer-list.el (timer-list-mode-map): Bind n and p
13011 to next- and previous-line, respectively.
13013 2017-09-14 Glenn Morris <rgm@gnu.org>
13015 * lisp/net/tls.el (tls-program): Fix :version.
13017 2017-09-14 Eli Zaretskii <eliz@gnu.org>
13019 * configure.ac (--with-lcms2, --without-lcms2): New options.
13021 2017-09-14 Eli Zaretskii <eliz@gnu.org>
13023 Avoid 64-bit compilation warnings in unexw32.c
13025 * src/unexw32.c (pDWP): New macro.
13026 (COPY_CHUNK, COPY_PROC_CHUNK): Declare 'count' as DWORD_PTR. Use
13027 pDWP for printing values that can be either 32-bit or 64-bit wide.
13029 2017-09-14 Eli Zaretskii <eliz@gnu.org>
13031 Fix warnings about formats in printf-like functions on MS-Windows
13033 * src/lisp.h (pI) [__MINGW32__]: Provide definition that will
13034 hopefully DTRT with both MinGW64 and mingw.org's MinGW. See
13035 https://lists.gnu.org/r/emacs-devel/2017-09/msg00171.html
13037 * src/conf_post.h (PRINTF_ARCHETYPE) [MINGW_W64]: Separate
13038 definition specific to MinGW64.
13039 (PRINTF_ARCHETYPE) [__MINGW32__]: For mingw.org's MinGW, use
13040 __mingw_printf__ in ANSI-compatible mode.
13042 2017-09-14 Eli Zaretskii <eliz@gnu.org>
13044 Support lcms2 in MS-Windows builds
13046 * lisp/term/w32-win.el (dynamic-library-alist): Include
13047 association for the lcms2 library.
13049 * src/lcms.c [WINDOWSNT]: Include windows.h and w32.h. Use
13050 DEF_DLL_FN to define pointers to dynamically loaded lcms2
13052 (cmsCIE2000DeltaE, cmsCIECAM02Init, cmsCIECAM02Forward)
13053 (cmsCIECAM02Done): New macros.
13054 (init_lcms_functions, Flcms2_available_p): New functions.
13055 (Flcms_cie_de2000, Flcms_cam02_ucs) [WINDOWSNT]: Call
13056 init_lcms_functions.
13057 (syms_of_lcms2): Defsubr lcms2-available-p.
13058 * src/w32fns.c (syms_of_w32fns): DEFSYM Qlcms2.
13060 * configure.ac: Include lcms2 in the final report and in
13061 emacs_config_features.
13064 * nt/INSTALL.W64: Update with the information about lcms2 library.
13066 2017-09-14 Paul Eggert <eggert@cs.ucla.edu>
13068 Port renameat_noreplace to openSUSE 12.3
13070 Problem reported by M. Nomiya in:
13071 https://lists.gnu.org/r/emacs-devel/2017-09/msg00363.html
13072 * src/sysdep.c (renameat_noreplace):
13073 Call renameat2 only if CYGWIN.
13075 2017-09-14 Paul Eggert <eggert@cs.ucla.edu>
13077 Prefer HTTPS to FTP and HTTP in documentation
13079 Most of this change is to boilerplate commentary such as license URLs.
13080 This change was prompted by ftp://ftp.gnu.org's going-away party,
13081 planned for November. Change these FTP URLs to https://ftp.gnu.org
13082 instead. Make similar changes for URLs to other organizations moving
13083 away from FTP. Also, change HTTP to HTTPS for URLs to gnu.org and
13084 fsf.org when this works, as this will further help defend against
13085 man-in-the-middle attacks (for this part I omitted the MS-DOS and
13086 MS-Windows sources and the test tarballs to keep the workload down).
13087 HTTPS is not fully working to lists.gnu.org so I left those URLs alone
13090 2017-09-14 Paul Eggert <eggert@cs.ucla.edu>
13092 Prefer HTTPS to HTTP for gnu.org
13094 This patch just changes code files; a followup companion patch
13095 (much larger) will affect the commentary. This part is
13096 separated out to make it easier to review.
13097 * .dir-locals.el (change-log-mode):
13098 * lisp/org/org-info.el (org-info-other-documents)
13099 (org-info-map-html-url):
13100 * lisp/org/ox-html.el (org-html-creator-string):
13101 * lisp/startup.el (fancy-startup-text, fancy-about-text)
13102 (fancy-splash-head):
13103 * test/lisp/ffap-tests.el (ffap-other-window--bug-25352):
13104 * test/lisp/thingatpt-tests.el (thing-at-point-test-data):
13105 Use HTTPS instead of HTTP.
13107 2017-09-13 Simen Heggestøyl <simenheg@gmail.com>
13109 Add tests for color.el
13111 * lisp/color.el (color-name-to-rgb, color-complement): Clarify in
13112 docstrings that RGB triplets should use four digits per component.
13113 (color-rgb-to-hsl): Break line to avoid "Hidden behind deeper element"
13116 * test/lisp/color-tests.el: New file.
13118 2017-09-13 Lars Ingebrigtsen <larsi@gnus.org>
13120 Make gnutls-verify-error work again with url-retrieve-synchronously
13122 * lisp/url/url-gw.el (url-open-stream): Only use :nowait if
13123 we're doing async connections (bug#26835).
13125 * lisp/url/url-parse.el (url): Add an asynchronous slot.
13127 * lisp/url/url.el (url-asynchronous): New variable.
13128 (url-retrieve-internal): Store the value.
13129 (url-retrieve-synchronously): Bind the variable.
13131 2017-09-13 Michael Albinus <michael.albinus@gmx.de>
13133 Improve backward compatibility of tramp-tests
13135 * test/lisp/net/tramp-tests.el (seq): Don't require.
13136 (tramp--test-emacs26-p): New defun.
13137 (tramp-test10-write-region, tramp-test11-copy-file)
13138 (tramp-test12-rename-file, tramp-test15-copy-directory)
13139 (tramp-test21-file-links): Use it.
13140 (tramp-test16-file-expand-wildcards): Use `copy-sequence'.
13142 2017-09-13 Michael Albinus <michael.albinus@gmx.de>
13144 * lisp/net/trampver.el (customize-package-emacs-version-alist):
13146 Add Tramp version integrated in Emacs 25.3.
13148 2017-09-13 Mark Oteiza <mvoteiza@udel.edu>
13150 Add clarification to if-let* docstring
13152 Also make its behavior consistent with and-let* in that empty bindings
13153 results in success, not failure.
13154 * lisp/emacs-lisp/subr-x.el: Edit docstring, change else to then.
13156 2017-09-13 Lars Ingebrigtsen <larsi@gnus.org>
13158 Make fully qualified domain names more fully qualified
13160 * lisp/gnus/message.el (message-make-fqdn): Don't try to use a
13161 system-name without any periods as a fully qualified domain name.
13163 2017-09-13 Paul Eggert <eggert@cs.ucla.edu>
13165 Remove unused file lib/getopt_.h
13167 * lib/getopt_.h: Remove. It was renamed to lib/getopt.in.h etc.
13168 on 2011-01-08, but I forgot to remove the old file.
13170 2017-09-13 Mark Oteiza <mvoteiza@udel.edu>
13172 Remove "baroque" use of prefix argument from gensym
13174 'cl-gensym' was simply moved here, but let us take an opportunity to
13175 shed some historical baggage.
13176 * lisp/subr.el (gensym): Remove special treatment of PREFIX as a
13177 number. Use "g" as prefix to differentiate from cl-gensym defaults.
13178 * doc/lispref/symbols.texi (Creating Symbols): Update accordingly.
13179 * lisp/emacs-lisp/cl-macs.el (cl--gensym-counter, cl-gensym): Restore.
13181 2017-09-13 Mark Oteiza <mvoteiza@udel.edu>
13183 Provide an lcms2 feature
13185 * src/lcms.c (syms_of_lcms2): Provide "lcms2".
13187 2017-09-13 Mark Oteiza <mvoteiza@udel.edu>
13189 Add lcms2 interface
13191 configure.ac: Add boilerplate for configuring and detecting liblcms2.
13192 etc/NEWS: Mention new configure option and color-distance change.
13193 src/Makefile.in: Add references to lcms.c and liblcms.
13194 src/emacs.c: Define lcms2 symbols.
13195 src/lcms.c: New file.
13196 src/lisp.h: Add declaration for lcms2.
13197 src/xfaces.c: Add optional METRIC argument.
13199 2017-09-13 Mark Oteiza <mvoteiza@udel.edu>
13201 Add other D series white points and some simple conversions
13203 * lisp/color.el (color-d75-xyz, color-d55-xyz, color-d50-xyz): New
13205 (color-xyz-to-xyy, color-xyy-to-xyz, color-lab-to-lch):
13206 (color-lch-to-lab): New functions.
13208 2017-09-13 Mark Oteiza <mvoteiza@udel.edu>
13210 Permit non-integral color gradients
13212 * lisp/color.el (color-gradient): Float the step-number.
13214 2017-09-13 Katsumi Yamaoka <yamaoka@jpl.org>
13216 Protect against malformed MIME messages that cause inf-loop (bugfix)
13218 * lisp/gnus/gnus-art.el (gnus-article-mime-handles):
13219 Protect against malformed MIME messages that cause inf-loop.
13221 2017-09-13 Paul Eggert <eggert@cs.ucla.edu>
13226 2017-09-13 all: prefer https: URLs
13227 This just changes http: to https: in comments,
13228 in files copied from Gnulib.
13230 2017-09-13 Dmitry Gutov <dgutov@yandex.ru>
13232 Call vc-resynch-buffer in vc-git-resolve-when-done
13234 * lisp/vc/vc-git.el (vc-git-resolve-when-done):
13235 Call vc-resynch-buffer on the current file (bug#28121).
13236 Move its autoload to before this function.
13238 2017-09-13 Eric Abrahamsen <eric@ericabrahamsen.net>
13240 Allow write-contents-functions to short-circuit buffer save
13244 * lisp/files.el (basic-save-buffer): Re-arrange function so that
13245 write-contents-functions are run earlier. If they return non-nil,
13246 consider the buffer saved without requiring the buffer to be
13248 (save-some-buffers): This function should consider any buffer with a
13249 buffer-local value for write-contents-functions eligible for
13251 * test/lisp/files-tests.el (files-test-no-file-write-contents): New
13253 * doc/lispref/files.texi (Saving Buffers): Mention in docs.
13254 * etc/NEWS: And in NEWS.
13256 2017-09-12 Paul Eggert <eggert@cs.ucla.edu>
13258 * etc/NEWS.25: Copy from emacs-25 etc/NEWS.
13260 2017-09-12 Paul Eggert <eggert@cs.ucla.edu>
13262 Less chatter for ’make info/dir’
13264 * Makefile.in (${srcdir}/info/dir): Tweak shell command so
13265 that an ordinary make says just "GEN info/dir" rather than
13266 also having a seemingly-unrelated mv line.
13268 2017-09-12 Paul Eggert <eggert@cs.ucla.edu>
13270 Tweak Gnus doc re gnus-copy-file
13272 * doc/misc/gnus.texi (Saving Articles):
13273 Document behavior with directory name targets (Bug#27986).
13274 Problem reported by Katsumi Yamaoka in:
13275 https://lists.gnu.org/r/emacs-devel/2017-09/msg00216.html
13277 2017-09-12 Mark Oteiza <mvoteiza@udel.edu>
13279 Update uses of if-let and when-let
13281 * lisp/dom.el (dom-previous-sibling):
13282 * lisp/emacs-lisp/package.el (package--with-work-buffer):
13283 (package--sort-deps-in-alist, package--sort-by-dependence):
13284 (package-install-from-archive, package-install):
13285 (package-menu-execute, package-menu--populate-new-package-list):
13286 * lisp/filenotify.el (file-notify--rm-descriptor):
13287 (file-notify--event-watched-file, file-notify--event-file-name):
13288 (file-notify--event-file1-name, file-notify-rm-watch):
13289 (file-notify-valid-p):
13290 * lisp/gnus/message.el (message-toggle-image-thumbnails):
13291 * lisp/gnus/nnimap.el (nnimap-request-move-article):
13292 * lisp/ibuf-ext.el (ibuffer-repair-saved-filters):
13293 * lisp/mpc.el (mpc-format):
13294 * lisp/net/eww.el (eww-tag-meta, eww-process-text-input):
13295 (eww-save-history):
13296 * lisp/net/shr.el (shr-tag-base, shr-tag-object, shr-make-table-1):
13297 * lisp/progmodes/prog-mode.el (prettify-symbols--post-command-hook):
13298 * lisp/svg.el (svg-remove):
13299 * lisp/textmodes/css-mode.el (css--named-color):
13300 (css--colon-inside-funcall):
13301 * lisp/textmodes/sgml-mode.el (html-current-buffer-classes):
13302 (html-current-buffer-ids): Use if-let* and when-let* instead.
13304 2017-09-12 Mark Oteiza <mvoteiza@udel.edu>
13308 This also includes changes to if-let and when-let. The single tuple
13309 special case is ambiguous, and binding a symbol to nil is not as
13310 useful as binding it to its value outside the lexical scope of the
13311 binding. (Bug#28254)
13312 * etc/NEWS: Mention.
13313 * lisp/emacs-lisp/subr-x.el (internal--listify):
13314 (internal--build-binding-value-form): Extend to account for
13315 solitary symbols and (EXPR) items in binding varlist.
13316 (if-let*, when-let*): Nix single tuple case and incumbent
13317 bind-symbol-to-nil behavior.
13318 (and-let*): New macro.
13319 (if-let, when-let): Mark obsolete. Redefine in terms of if-let*, so
13320 they implicitly gain the new features without breaking existing code.
13321 * test/lisp/emacs-lisp/subr-x-tests.el: Adjust tests for: lack of
13322 single-tuple special case, lack of binding solitary symbols to nil,
13323 and the introduction of uninterned symbols for (EXPR) bindings. Add
13324 SRFI-2 test suite adapted to Elisp.
13326 2017-09-12 Eli Zaretskii <eliz@gnu.org>
13328 Fix minor typos in the Emacs manual
13330 * doc/emacs/text.texi (Org Organizer):
13331 * doc/emacs/ack.texi (Acknowledgments): Fix spelling of Org nodes.
13333 2017-09-12 Paul Eggert <eggert@cs.ucla.edu>
13335 Merge Emacs 25.3 fixes
13337 The security patches released for Emacs 25.3 were less drastic
13338 than what we had immediately put into master. Adjust master to
13339 match 25.3 (Bug#28350).
13340 * lisp/textmodes/enriched.el (enriched-translations):
13341 Re-enable FUNCTION and display translations that are safe.
13342 (enriched-handle-display-prop): Bring back.
13343 (enriched-decode-display-prop): Bring back, but disable
13346 2017-09-12 Alan Mackenzie <acm@muc.de>
13348 Don't match C++ template delims starting within a token. FIxes bug #28418.
13350 * lisp/progmodes/cc-engine.el (c-restore-<>-properties): After failing an
13351 attempted match from the start of a token (in particular, "<<"), move to the
13352 next token rather than the nex character before searching for the next "<".
13354 2017-09-12 Mark Oteiza <mvoteiza@udel.edu>
13356 Move gensym to core Elisp
13358 * doc/lispref/symbols.texi (Creating Symbols): Mention gensym right
13360 * etc/NEWS: Mention.
13361 * lisp/emacs-lisp/cl-macs.el (cl--gensym-counter): Alias to
13363 (cl-gensym): Alias to gensym.
13364 * lisp/emacs-lisp/cl.el: Remove gensym from list of aliases.
13365 * lisp/emacs-lisp/edebug.el (edebug-make-enter-wrapper):
13366 * lisp/emacs-lisp/ert-x.el (ert-with-message-capture):
13367 (ert--expand-should-1, ert--expand-should):
13368 (ert--should-error-handle-error):
13369 * lisp/emacs-lisp/generator.el (cps--gensym):
13370 * lisp/emacs-lisp/gv.el (setf):
13371 * lisp/emacs-lisp/inline.el (inline--do-letlisteval):
13372 * lisp/emacs-lisp/pcase.el (pcase--make-docstring, pcase-dolist):
13373 (pcase--funcall, pcase--u1): Use gensym.
13374 * lisp/subr.el (gensym-counter): New variable.
13375 (gensym): New function, assimilated from cl-lib.
13377 2017-09-12 Mark Oteiza <mvoteiza@udel.edu>
13381 * lisp/emacs-lisp/cl-macs.el (cl--gentemp-counter): New variable.
13382 (cl-gentemp): Use it. Change prefix to "T".
13384 2017-09-12 Sam Steingold <sds@gnu.org>
13386 gnus-score-file-name: Do not append empty suffix.
13388 2017-09-12 Michael Albinus <michael.albinus@gmx.de>
13390 Extend tramp-tests according to bug#27986
13392 * test/lisp/net/tramp-tests.el (tramp-test11-copy-file)
13393 (tramp-test12-rename-file, tramp-test15-copy-directory)
13394 (tramp-test21-file-links): Extend tests.
13395 (tramp-test13-make-directory, tramp-test14-delete-directory):
13396 Specifiy error symbol in `should-error'.
13398 2017-09-12 Mark Oteiza <mvoteiza@udel.edu>
13400 Add cl-print method for hash tables
13402 * lisp/emacs-lisp/cl-print.el (cl-print-object): New method.
13404 2017-09-12 Mark Oteiza <mvoteiza@udel.edu>
13406 Add docstrings to cl-print entry points
13408 * lisp/emacs-lisp/cl-print.el (cl-print-compiled): Fix docstring.
13409 (cl-prin1, cl-prin1-to-string): Add docstrings.
13411 2017-09-12 Glenn Morris <rgm@gnu.org>
13413 Improve reproducibility of generated leim-list.el
13415 * lisp/international/quail.el (quail-update-leim-list-file):
13416 Sort the quail directory listing, for more stable output.
13418 2017-09-11 Mark Oteiza <mvoteiza@udel.edu>
13420 Include sxhash of object with printed bytecode
13422 This printing, while succint, is rather opaque. At least give an
13423 immediate clue of whether different byte code printouts are for the
13424 same or different byte code objects.
13425 * lisp/emacs-lisp/cl-print.el (cl-print-object): Add object sxhash to
13426 printed token "#<bytecode>".
13428 2017-09-11 Eli Zaretskii <eliz@gnu.org>
13430 Update documentation of 'max-lisp-eval-depth'
13432 * doc/lispref/eval.texi (Eval): Update the documented default
13433 value of 'max-lisp-eval-depth'.
13435 2017-09-11 Eli Zaretskii <eliz@gnu.org>
13437 Another place to produce debugging output in etags
13439 * lib-src/etags.c (Ruby_functions): One more place to print
13440 debugging output under --debug.
13442 2017-09-11 Eli Zaretskii <eliz@gnu.org>
13444 Improve documentation of etags-related features
13446 * doc/emacs/maintaining.texi (Looking Up Identifiers): Document
13447 'xref-prompt-for-identifier'. (Bug#28403)
13448 (Etags Regexps): Document \D back references in etags regexps.
13450 2017-09-11 Alan Third <alan@idiocy.org>
13452 Fix macOS compatibility versions for vibrant dark theme (bug#28415)
13454 * src/nsterm.m (ns_set_appearance, EmacsView::initFrameFromEmacs):
13455 Change macOS compatibility from 10.9 to 10.10.
13457 2017-09-11 Michael Albinus <michael.albinus@gmx.de>
13459 Further optimization in Tramp's file name decomposition
13461 * lisp/net/tramp.el (tramp-syntax): Recompute all file name
13462 components. Call `custom-set-variables' after loading.
13463 (tramp-build-prefix-format, tramp-build-prefix-regexp)
13464 (tramp-build-method-regexp)
13465 (tramp-build-postfix-method-format)
13466 (tramp-build-postfix-method-regexp)
13467 (tramp-build-prefix-ipv6-format)
13468 (tramp-build-prefix-ipv6-regexp)
13469 (tramp-build-postfix-ipv6-format)
13470 (tramp-build-postfix-ipv6-regexp)
13471 (tramp-build-postfix-host-format)
13472 (tramp-build-postfix-host-regexp)
13473 (tramp-build-file-name-regexp)
13474 (tramp-build-completion-file-name-regexp): New defuns.
13475 (tramp-prefix-format, tramp-prefix-regexp)
13476 (tramp-method-regexp, tramp-postfix-method-format)
13477 (tramp-postfix-method-regexp, tramp-prefix-ipv6-format)
13478 (tramp-prefix-ipv6-regexp, tramp-postfix-ipv6-format)
13479 (tramp-postfix-ipv6-regexp, tramp-postfix-host-format)
13480 (tramp-postfix-host-regexp)
13481 (tramp-remote-file-name-spec-regexp)
13482 (tramp-file-name-structure, tramp-file-name-regexp)
13483 (tramp-completion-file-name-regexp): Convert defuns into defvars.
13484 (tramp-prefix-regexp-alist)
13485 (tramp-postfix-method-regexp-alist)
13486 (tramp-prefix-ipv6-regexp-alist)
13487 (tramp-postfix-ipv6-regexp-alist)
13488 (tramp-postfix-host-regexp-alist)
13489 (tramp-remote-file-name-spec-regexp-alist): Remove.
13490 (tramp-build-remote-file-name-spec-regexp)
13491 (tramp-build-file-name-structure): Simplify.
13492 (tramp-completion-file-name-regexp-alist): New defconst.
13493 (tramp-tramp-file-p, tramp-dissect-file-name)
13494 (tramp-make-tramp-file-name)
13495 (tramp-completion-make-tramp-file-name)
13496 (tramp-rfn-eshadow-update-overlay-regexp)
13497 (tramp-register-file-name-handlers)
13498 (tramp-completion-handle-file-name-all-completions)
13499 (tramp-completion-dissect-file-name, tramp-clear-passwd):
13500 * lisp/net/tramp-ftp.el (tramp-ftp-file-name-handler):
13501 * lisp/net/tramp-sh.el (tramp-sh-handle-vc-registered)
13502 (tramp-compute-multi-hops): Use variables but functions for
13503 file name components.
13505 * test/lisp/net/tramp-tests.el (tramp-test24-file-name-completion):
13506 Use variables but functions for file name components.
13508 2017-09-11 Paul Eggert <eggert@cs.ucla.edu>
13510 Port tramp-tests to new copy-directory behavior
13512 * test/lisp/net/tramp-tests.el (tramp-test15-copy-directory):
13513 Use directory name as arg for copy-directory when we want
13514 the special behavior.
13516 2017-09-11 Paul Eggert <eggert@cs.ucla.edu>
13518 Adjust thumbs to new rename-file behavior
13520 * etc/NEWS: Mention this.
13521 * lisp/thumbs.el (thumbs-rename-images): Treat the destination
13522 as special only if it is a directory name. When there is
13523 a marked list, turn the destination into a directory name
13524 if it is not already.
13526 2017-09-11 Paul Eggert <eggert@cs.ucla.edu>
13528 Adjust ob-tangle to new copy-file behavior
13530 * lisp/org/ob-tangle.el (org-babel-tangle-publish):
13531 Port to new copy-file behavior.
13533 2017-09-11 Paul Eggert <eggert@cs.ucla.edu>
13535 Make gnus-copy-file act like copy-file etc.
13537 * etc/NEWS: Mention this.
13538 * lisp/gnus/gnus-util.el (gnus-copy-file): Treat the destination
13539 as special only if it is a directory name.
13541 2017-09-11 Paul Eggert <eggert@cs.ucla.edu>
13543 Make write-file act like copy-file etc.
13545 Change write-file to be consistent with the new behavior
13547 * etc/NEWS: Mention this.
13548 * lisp/files.el (write-file): Treat the destination as special
13549 only if it is a directory name.
13551 2017-09-11 Paul Eggert <eggert@cs.ucla.edu>
13553 Make copy-directory act like copy-file etc.
13555 Do the special dance with the destination only if it is a
13556 directory name, for consistency with copy-file etc. (Bug#27986).
13557 * doc/emacs/files.texi (Copying and Naming):
13558 * doc/lispref/files.texi (Create/Delete Dirs):
13559 * etc/NEWS: Document this.
13560 * lisp/files.el (copy-directory): Treat NEWNAME as special
13561 only if it is a directory name.
13563 2017-09-11 Paul Eggert <eggert@cs.ucla.edu>
13565 Fix some make-directory bugs
13567 * lisp/files.el (files--ensure-directory): New function.
13568 (make-directory): Use it to avoid bugs when (make-directory FOO t)
13569 is invoked on a non-directory, or on a directory hierarchy that
13570 is being built by some other process while Emacs is running.
13571 * test/lisp/files-tests.el (files-tests--make-directory): New test.
13573 2017-09-11 Paul Eggert <eggert@cs.ucla.edu>
13575 Fix race with rename-file etc. with dir NEWNAME
13577 This changes the behavior of rename-file etc. slightly.
13578 The old behavior mostly disagreed with the documentation, and had
13579 a race condition bug that could allow attackers to modify victims'
13580 write-protected directories (Bug#27986).
13581 * doc/lispref/files.texi (Changing Files): Document that in
13582 rename-file etc., NEWFILE is special if it is a directory name.
13583 * etc/NEWS: Document the change in behavior.
13584 * src/fileio.c (directory_like): Remove. All uses removed.
13585 (expand_cp_target): Test only whether NEWNAME is a directory name,
13586 not whether it is currently a directory. This avoids a race.
13587 (Fcopy_file, Frename_file, Fadd_name_to_file, Fmake_symbolic_link):
13588 Document behavior if NEWNAME is a directory name.
13589 (Frename_file): Simplify now that the destdir behavior occurs
13590 only when NEWNAME is a directory name.
13591 * test/lisp/net/tramp-tests.el (tramp-test11-copy-file)
13592 (tramp-test12-rename-file, tramp--test-check-files):
13593 Adjust tests to match new behavior.
13595 2017-09-10 Eli Zaretskii <eliz@gnu.org>
13597 Extend --debug printouts in etags
13599 * lib-src/etags.c (regex_tag_multiline, readline): Under
13600 "--debug", print tags found via regexps.
13602 2017-09-10 Eli Zaretskii <eliz@gnu.org>
13604 Add --debug option to etags
13606 * lib-src/etags.c (make_tag): Print found tags under --debug.
13607 (longopts): Add --debug.
13609 2017-09-10 Paul Eggert <eggert@cs.ucla.edu>
13613 * lisp/progmodes/cc-langs.el:
13614 (c-ambiguous-overloadable-or-identifier-prefixes): Rename from
13615 c-ambiguous-overloadable-or-identifier-prefices. Caller changed.
13617 2017-09-10 Paul Eggert <eggert@cs.ucla.edu>
13622 2017-09-08 stddef: Avoid conflict with system-defined max_align_t
13623 2017-08-24 warnings: fix compilation with old autoconf
13624 2017-08-23 glob: merge from glibc with Zanella glob changes
13625 2017-08-17 random: Fix test compilation failure on Cygwin 1.5.25
13626 * doc/misc/texinfo.tex, lib/flexmember.h, lib/stddef.in.h:
13627 * lib/stdlib.in.h, m4/manywarnings.m4, m4/stdlib_h.m4:
13630 * lib/gnulib.mk.in: Regenerate.
13632 2017-09-10 Ken Brown <kbrown@cornell.edu>
13634 Implement renameat_noreplace on recent Cygwin
13636 * src/sysdep.c [CYGWIN]: Include cygwin/fs.h.
13637 (renameat_noreplace) [RENAME_NOREPLACE]: Use renameat2.
13640 2017-09-10 Eli Zaretskii <eliz@gnu.org>
13642 Avoid warnings about file names in autoloads on MS-Windows
13644 * configure.ac (srcdir) [mingw32]: Downcase the drive letter, to
13645 avoid warnings from find-file-noselect when making autoloads. For
13647 https://lists.gnu.org/r/emacs-devel/2017-09/msg00049.html.
13649 2017-09-10 Mark Oteiza <mvoteiza@udel.edu>
13651 Avoid looking at localized strings
13653 * lisp/xdg.el (xdg-desktop-read-group): Add condition to catch
13655 * test/lisp/xdg-tests.el (xdg-desktop-parsing): Add test to ensure
13656 parsing l10n strings doesn't error but is essentially a no-op.
13658 2017-09-10 Paul Eggert <eggert@cs.ucla.edu>
13660 * etc/NEWS.25: Document 25.3 changes.
13662 2017-09-10 Lars Ingebrigtsen <larsi@gnus.org>
13664 Remove unsafe enriched mode translations
13666 * lisp/gnus/mm-view.el (mm-inline-text):
13667 Do not worry about enriched or richtext type.
13668 * lisp/textmodes/enriched.el (enriched-translations):
13669 Remove translations for FUNCTION, display (Bug#28350).
13670 (enriched-handle-display-prop, enriched-decode-display-prop): Remove.
13672 2017-09-09 Paul Eggert <eggert@cs.ucla.edu>
13674 Be more consistent about "directory name" in manual
13676 This clarifies the documentation, partly in response to the
13677 discussion in Bug#27986.
13679 2017-09-09 Eli Zaretskii <eliz@gnu.org>
13681 Remove more compilation warnings in MinGW64 build
13683 * src/w32.c (faccessat, map_w32_filename):
13684 * src/w32fns.c (w32_wnd_proc):
13685 * src/w32term.c (w32_horizontal_scroll_bar_handle_click)
13686 (w32_scroll_bar_handle_click): Use FALLTHROUGH to avoid compiler
13687 warnings with GCC 7 and later.
13689 2017-09-09 Paul Eggert <eggert@cs.ucla.edu>
13691 Improve --enable-gcc-warnings for MinGW64
13693 This partially reverts my 2016-05-30 patch. Apparently MinGW64
13694 still requires pacifications that GCC 7.1.1 x86-64 (Fedora 26)
13695 does not. Also, pacify tparam.c, which isn’t used on Fedora.
13696 * lib-src/etags.c (process_file_name, TeX_commands):
13697 * src/buffer.c (fix_overlays_before):
13698 * src/data.c (Fmake_variable_buffer_local, cons_to_unsigned)
13700 * src/editfns.c (Ftranslate_region_internal):
13701 Prefer UNINIT to some stray value, as this simplifies
13702 code-reading later.
13703 * src/eval.c (CACHEABLE): New macro.
13704 (internal_lisp_condition_case): Use it.
13705 * src/tparam.c (tparam1): Use FALLTHROUGH to pacify GCC.
13707 2017-09-09 Eli Zaretskii <eliz@gnu.org>
13709 Fix font-lock in Compilation mode
13711 * lisp/progmodes/compile.el (compilation-face): Restore function
13712 lost during recent changes. (Bug#28349)
13714 2017-09-09 Mark Oteiza <mvoteiza@udel.edu>
13716 Add function to read all entries in a group
13718 Use that to extend xdg-desktop-read-file. Also fix a bug where all
13719 entries in all groups were read and returned by xdg-desktop-read-file.
13720 * lisp/xdg.el (xdg-desktop-read-group): New function.
13721 (xdg-desktop-read-file): Use it.
13722 * test/data/xdg/malformed.desktop: New file.
13723 * test/data/xdg/test.desktop: Add another section.
13724 * test/lisp/xdg-tests.el (xdg-desktop-parsing): Test presence of a key
13725 in another group. Test reading a prescribed group. Test detecting a
13726 malformed key=value.
13728 2017-09-09 Gemini Lasswell <gazally@runbox.com>
13730 Reduce Tramp's memory usage
13732 Construct Tramp syntax strings and regular expressions once instead
13733 of every time they are used, and store them in alists keyed by Tramp
13735 * lisp/net/tramp.el (tramp-build-remote-file-name-spec-regexp)
13736 (tramp-build-file-name-structure): New functions.
13737 (tramp-prefix-format-alist, tramp-prefix-regexp-alist)
13738 (tramp-method-regexp-alist)
13739 (tramp-postfix-method-format-alist)
13740 (tramp-postfix-method-regexp-alist)
13741 (tramp-prefix-ipv6-format-alist, tramp-prefix-ipv6-regexp-alist)
13742 (tramp-postfix-ipv6-format-alist)
13743 (tramp-postfix-ipv6-regexp-alist)
13744 (tramp-postfix-host-format-alist)
13745 (tramp-postfix-host-regexp-alist)
13746 (tramp-remote-file-name-spec-regexp-alist)
13747 (tramp-file-name-structure-alist): New constants.
13748 (tramp-lookup-syntax): New function.
13749 (tramp-prefix-format, tramp-prefix-regexp, tramp-method-regexp)
13750 (tramp-postfix-method-format, tramp-postfix-method-regexp)
13751 (tramp-prefix-ipv6-format, tramp-prefix-ipv6-regexp)
13752 (tramp-postfix-ipv6-format, tramp-postfix-ipv6-regexp)
13753 (tramp-postfix-host-format, tramp-postfix-host-regexp)
13754 (tramp-remote-file-name-spec-regexp, tramp-file-name-structure):
13757 2017-09-09 Eli Zaretskii <eliz@gnu.org>
13759 Fix compilation warnings in MinGW64 build using GCC 7
13761 Reported by Richard Copley <rcopley@gmail.com>.
13762 * src/w32heap.c (init_heap): Declare enable_lfh only for
13763 mingw.org's MinGW build.
13765 * src/w32console.c (w32con_write_glyphs):
13766 * src/unexw32.c (get_section_info, COPY_CHUNK, unexec): Fix some
13767 mismatches of data type vs format spec.
13769 * src/w32fns.c (compute_tip_xy):
13770 * src/w32proc.c (stop_timer_thread):
13771 * src/w32notify.c (remove_watch):
13772 * src/eval.c (internal_lisp_condition_case):
13773 * src/editfns.c (Ftranslate_region_internal):
13774 * src/data.c (Fmake_variable_buffer_local, cons_to_unsigned)
13776 * src/buffer.c (fix_overlays_before): Initialize variables to
13777 avoid compiler warnings.
13779 * lib-src/etags.c (TeX_commands, process_file_name): Initialize
13780 variables to avoid compilation warnings.
13782 2017-09-09 Eli Zaretskii <eliz@gnu.org>
13784 Avoid infloop when scrolling under scroll-preserve-screen-position
13786 * src/window.c (window_scroll_pixel_based): If screen position is
13787 to be preserved, make sure its recorded Y coordinate is outside
13788 the scroll margin. (Bug#28342)
13790 2017-09-09 Michael Albinus <michael.albinus@gmx.de>
13792 Clarification in tramp-texi
13794 * doc/misc/tramp.texi (Connection caching): Two connections are
13795 regarded as different now when they differ in the port number only.
13797 2017-09-09 Miles Bader <miles@gnu.org>
13799 * admin/quick-install-emacs: Tweak configure.ac parsing
13801 2017-09-09 Miles Bader <miles@gnu.org>
13803 Use text-property buttons in rcirc-markup-urls
13805 * lisp/net/rcirc.el (rcirc-markup-urls): Use `make-text-button'
13806 instead of `make-button'; the former is much more efficient in large
13807 buffers, and for the purposes of rcirc, changes no functionality.
13809 2017-09-08 Eli Zaretskii <eliz@gnu.org>
13811 Fix line-pixel-height for lines of variable height
13813 * src/xdisp.c (Fline_pixel_height): Start moving from the
13814 beginning of the screen line, to capture the full metrics of the
13817 2017-09-08 Alex Branham <branham@utexas.edu> (tiny change)
13819 New variable 'dired-confirm-killing-deleted-buffers'
13821 * lisp/dired-x.el (dired-clean-confirm-killing-deleted-buffers):
13823 * lisp/dired.el (dired-clean-up-after-deletion): Kill buffers
13824 visiting deleted files without confirming if
13825 dired-clean-confirm-killing-deleted-buffers is nil. (Bug#28373)
13826 * etc/NEWS: Document the change.
13828 2017-09-08 Alfred M. Szmidt <ams@gnu.org> (tiny change)
13830 Support SVN files with svn:externals property
13832 * lisp/vc/vc-svn.el (vc-svn-parse-status): Don't ignore files
13833 marked with the svn:externals property.
13835 2017-09-08 Alfred M. Szmidt <ams@gnu.org> (tiny change)
13837 List locally removed files in vc-dir with SVN back-end
13839 * lisp/vc/vc-svn.el (vc-svn-after-dir-status): List files marked
13840 with ?! as needs-update.
13842 2017-09-08 Ken Olum <kdo@cosmos.phy.tufts.edu>
13844 Fix Rmail editing with reapplying encoding to message body
13846 * lisp/mail/rmailedit.el (rmail-cease-edit): If no
13847 content-type in edited headers, look for one in original
13848 headers and add it to edited headers. (Bug #26918)
13849 Use a marker to track start of new body, so that
13850 content-transfer-encoding gets applied only to body. (Bug #27353).
13851 Ensure blank line at end of message after encoding, not
13854 2017-09-08 Eli Zaretskii <eliz@gnu.org>
13856 Document last change in dired.el
13858 * etc/NEWS (Dired): Document the last change in dired.el.
13861 2017-09-08 Tak Kunihiro <tkk@misasa.okayama-u.ac.jp>
13863 Make mouse clicks in Dired more customizable
13865 * lisp/dired.el (dired-mouse-find-file): Allow callers to
13866 specify functions to visit file/directory.
13867 (dired-mouse-find-file-other-window)
13868 (dired-mouse-find-file-other-frame): New functions to visit
13869 files in another window/frame. (Bug#27435)
13871 2017-09-08 Eli Zaretskii <eliz@gnu.org>
13873 Avoid compiler warnings on MS-Windows with GCC 6 and 7
13875 * src/w32font.c (SUBRANGE): Use unsigned arithmetic for
13876 bit-shifting, to avoid compiler warnings.
13877 (w32font_text_extents): Tell GCC NGLYPHS is non-negative, to avoid
13878 a warning. For details of the warning, see
13879 https://lists.gnu.org/r/emacs-devel/2017-09/msg00093.html.
13880 * src/term.c (keys) [WINDOWSNT]: Don't define, as it is not used
13882 * src/sound.c (sound_perror): Ifdef away on WINDOWSNT, as this
13883 function is not used in that build.
13885 * configure.ac: Disable -Wsuggest-attribute=format on MS-Windows.
13887 2017-09-08 Eli Zaretskii <eliz@gnu.org>
13889 Fix 'directory-file-name' on DOS_NT systems as well
13891 * src/fileio.c (directory_file_name) [DOS_NT]: Fix the DOS_NT case
13892 to be consistent with last change.
13894 * test/src/fileio-tests.el (fileio-tests--odd-symlink-chars):
13895 Disable on MS-Windows.
13896 (fileio-tests--directory-file-name-dos-nt)
13897 (fileio-tests--file-name-as-directory-dos-nt): New tests.
13899 2017-09-08 Wilson Snyder <wsnyder@wsnyder.org>
13901 Fix various verilog-mode.el issues.
13903 * lisp/progmodes/verilog-mode.el (verilog-expand-dirnames): Fix expanding
13904 "*/*", msg2284. Reported by Jonathan Ferguson.
13905 (ignore-errors): Fix ignore-errors error on Emacs 22.3, bug1177. Reported
13907 (verilog-getopt, verilog-getopt-file) (verilog-library-flags,
13908 verilog-substitute-file-name-path): Support -F in verilog getopt files,
13909 bug1171. Reported by George Cuan.
13910 (verilog-do-indent): Fix misindenting symbols starting with t,
13911 bug1169. Reported by Hoai Tran.
13912 (verilog-read-auto-template-middle): Fix slow template matching on
13913 AUTOINST. Reported by Jeffrey Huynh.
13914 (verilog-pretty-expr): The extra whitespace addition before "=" operators
13915 is now done only if the whole assignment block contains the 2-character
13916 "<=" operator. Remove the unused argument _myre. Use `unless',
13917 `save-excursion' and `when' functions where possible. Internal variables
13918 refactored for clarity. Follow elisp convention for closing parentheses.
13920 (verilog-get-lineup-indent-2): Update docstring. Internal variables
13921 refactored for clarity. Earlier EDPOS argument was expected to be a
13922 marker; it is now renamed to END and is now expected to be a position.
13923 Use `when' instead of `if'. By Kaushal Modi.
13924 (electric-verilog-terminate-line): Remove the unused second argument from
13925 `verilog-pretty-expr' call. By Kaushal Modi.
13926 (verilog-calc-1): Fix indentation of a virtual class definition after a
13927 typedef class, bug1080. By Kaushal Modi.
13929 2017-09-08 Katsumi Yamaoka <yamaoka@jpl.org>
13931 Don't use summary window to visit group buffer (bugfix)
13933 * lisp/gnus/gnus-sum.el (gnus-summary-jump-to-group): Make sure that
13934 the window to open the group buffer doesn't visit the summary buffer.
13935 This fixes a bug: `gnus-summary-next-article' sometimes causes an error
13936 by trying to select nonexistent summary window.
13938 2017-09-08 Paul Eggert <eggert@cs.ucla.edu>
13940 Fix bug: (directory-file-name "///") returned "//"
13942 * src/fileio.c (directory_file_name): For "///" and longer,
13943 return "/", not "//", as per POSIX.
13944 * test/src/fileio-tests.el (fileio-tests--directory-file-name)
13945 (fileio-tests--file-name-as-directory): New tests.
13947 2017-09-08 Paul Eggert <eggert@cs.ucla.edu>
13949 Remove obsolete vc-mistrust-permissions doc
13951 * doc/emacs/vc1-xtra.texi (RCS and SCCS): Remove documentation
13952 for vc-mistrust-permissions, which no longer exists.
13954 2017-09-07 Alan Third <alan@idiocy.org>
13956 Set frame size to actual requested size (bug#18215)
13958 * src/nsterm.m (x_set_window_size): Don't use
13959 FRAME_TEXT_TO_PIXEL_WIDTH or FRAME_TEXT_TO_PIXEL_HEIGHT.
13961 2017-09-07 Paul Eggert <eggert@cs.ucla.edu>
13963 autogen.sh: omit bogus chatter if no .git
13965 Problem reported by Angelo Graziosi in:
13966 https://lists.gnu.org/r/emacs-devel/2017-09/msg00045.html
13967 * autogen.sh (git_config): Do not execut 'git' if $do_git fails.
13969 2017-09-07 Glenn Morris <rgm@gnu.org>
13971 Skip emacsclient tests if --enable-profiling was used
13973 * test/lib-src/emacsclient-tests.el
13974 (emacsclient-test-call-emacsclient): Make it a macro.
13975 Handle "Profiling timer expired" return from emacsclient. (Bug#28319)
13976 (emacsclient-test-alternate-editor-allows-arguments)
13977 (emacsclient-test-alternate-editor-allows-quotes): Update for above.
13979 2017-09-06 Eli Zaretskii <eliz@gnu.org>
13981 Fix a minor markup problem in ELisp manual
13983 * doc/lispref/functions.texi (Mapping Functions): Fix the order of
13984 @example and @group. For the details, see
13985 https://lists.gnu.org/r/bug-texinfo/2017-09/msg00007.html.
13987 2017-09-06 Mark Oteiza <mvoteiza@udel.edu>
13989 Add XDG desktop file parsing and tests
13991 * lisp/xdg.el: Add support for Desktop Entry Specification.
13992 (xdg--user-dirs-parse-line): Check if file is readable.
13993 (xdg-desktop-group-regexp, xdg-desktop-entry-regexp): New variables.
13994 (xdg--desktop-parse-line, xdg-desktop-read-file, xdg-desktop-strings):
13996 * test/lisp/xdg-tests.el:
13997 * test/data/xdg/test.desktop:
13998 * test/data/xdg/wrong.desktop: New files.
14000 2017-09-06 Glenn Morris <rgm@gnu.org>
14002 Allow for adjusting line length of test backtraces
14004 * test/Makefile.in (TEST_BACKTRACE_LINE_LENGTH): New option.
14005 (%.log): Respect backtrace line length.
14007 2017-09-06 Glenn Morris <rgm@gnu.org>
14009 Allow customizing line length of ert backtraces in batch mode
14011 * lisp/emacs-lisp/ert.el (ert-batch-backtrace-right-margin):
14012 Make it a user option.
14013 (ert-run-tests-batch): Handle ert-batch-backtrace-right-margin nil.
14015 2017-09-06 Glenn Morris <rgm@gnu.org>
14017 Minor emacsclient-tests simplification
14019 * test/lib-src/emacsclient-tests.el (emacsclient-test-emacs):
14020 Simplify. Also work when running installed.
14022 2017-09-06 Alan Third <alan@idiocy.org>
14024 Revert "Force screen update after drawing cursor glyph (bug#23774)"
14026 This reverts commit 1b492fa5456e2b6face8d0856f11d17e432693b0.
14030 2017-09-05 Mark Oteiza <mvoteiza@udel.edu>
14032 Refactor some loops in mailcap.el
14034 * lisp/net/mailcap.el (mailcap-mime-types):
14035 (mailcap-file-default-commands): Convert nested maps to loops.
14037 2017-09-05 Glenn Morris <rgm@gnu.org>
14039 emacsclient-tests: remove some debug statements
14041 * test/lib-src/emacsclient-tests.el
14042 (emacsclient-test-call-emacsclient): Remove debug statements.
14044 2017-09-05 Simen Heggestøyl <simenheg@gmail.com>
14046 Handle non-zero exit status from psql more gracefully
14048 * lisp/progmodes/sql.el (sql-postgres-list-databases): Handle non-zero
14049 exit statuses from `psql -ltX' more gracefully by returning nil.
14051 * test/lisp/progmodes/sql-tests.el
14052 (sql-tests-postgres-list-databases-error): New test.
14054 2017-09-05 Eli Zaretskii <eliz@gnu.org>
14056 Avoid losing Ctrl-C keystrokes in compilation mode on MS-Windows
14058 * src/w32proc.c (sys_kill): Preserve the up/down state of the
14059 Ctrl key across the simulated Ctrl-C keystroke. (Bug#28348)
14061 2017-09-05 Andreas Schwab <schwab@linux-m68k.org>
14063 * src/image.c (Fimagemagick_types): Doc fix.
14065 2017-09-05 Mark Oteiza <mvoteiza@udel.edu>
14067 Move soundex.el test to a proper test
14069 * test/lisp/soundex-tests.el: New file.
14070 * lisp/soundex.el: Use lexical-binding. Remove commented test.
14072 2017-09-05 Mark Oteiza <mvoteiza@udel.edu>
14074 Add tests for mailcap.el
14076 * test/data/mailcap/mime.types: New file.
14077 * test/lisp/net/mailcap-tests.el: New file.
14079 2017-09-05 Michael Albinus <michael.albinus@gmx.de>
14081 Doc precisment about remote link targets
14083 * doc/lispref/files.texi (Truenames): Explain handling of
14084 targets of `file-truename' and `make-symbolic-link', which
14085 look like a remote file name.
14087 * etc/NEWS: Precise examples for symlinks which look like
14088 remote file names. MUSTBENEW of `write-region' is not
14089 propagated to file name handlers.
14091 2017-09-05 John Wiegley <johnw@newartisans.com>
14093 Remove an opinionated section on "What Eshell is not"
14095 I don't find this information to accurately reflect possible use cases
14096 for Eshell; plus, it doesn't offer much in the way of information,
14099 2017-09-05 Ken Brown <kbrown@cornell.edu>
14101 Fix configure test for Xpm
14103 Problem reported by Ashish Shukla in
14104 https://lists.gnu.org/r/emacs-devel/2017-09/msg00020.html.
14105 * configure.ac (HAVE_XPM) [HAVE_X11]: Include X11/xpm.h instead of
14106 noX/xpm.h in configure test.
14108 2017-09-04 Paul Eggert <eggert@cs.ucla.edu>
14110 Revert recent float→double Motif change
14112 Problem reported by Martin Rudalics in:
14113 https://lists.gnu.org/r/emacs-devel/2017-09/msg00014.html
14114 * src/xterm.c (xm_scroll_callback, xaw_jump_callback)
14115 (x_set_toolkit_scroll_bar_thumb)
14116 (x_set_toolkit_horizontal_scroll_bar_thumb):
14117 Go back to using ‘float’ temporaries rather than ‘double’.
14118 Although quite possibly this masks an underlying bug,
14119 we lack time to look into that now.
14121 2017-09-04 Glenn Morris <rgm@gnu.org>
14123 emacsclient-tests: add some debug statements
14125 * test/lib-src/emacsclient-tests.el
14126 (emacsclient-test-call-emacsclient): Add debug statements.
14128 2017-09-04 Michael Albinus <michael.albinus@gmx.de>
14130 Work on Tramp's (symbolic) links
14132 * doc/misc/tramp.texi (Traces and Profiles): Mention the
14133 backtrace when tramp-verbose is greater than or equal to 10.
14135 * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
14136 Use `tramp-handle-add-name-to-file'.
14138 * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist): Use
14139 `tramp-handle-add-name-to-file' and `tramp-handle-file-truename'.
14141 * lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link): Improve.
14143 * lisp/net/tramp-smb.el (tramp-smb-errors):
14144 Add "NT_STATUS_CONNECTION_DISCONNECTED" and
14145 "NT_STATUS_OBJECT_PATH_SYNTAX_BAD".
14146 (tramp-smb-file-name-handler-alist): Use `tramp-handle-file-truename'.
14147 (tramp-smb-do-file-attributes-with-stat): Return non-nil only
14148 if one of the attributes is non-nil.
14149 (tramp-smb-handle-file-local-copy): Use `file-truename'.
14150 (tramp-smb-handle-file-truename): Move to tramp.el.
14151 (tramp-smb-handle-insert-directory): Show symlinks.
14152 (tramp-smb-handle-make-symbolic-link): Improve.
14153 (tramp-smb-read-file-entry): Handle extended file modes in Samba.
14155 * lisp/net/tramp.el (tramp-handle-add-name-to-file)
14156 (tramp-handle-file-truename): New defuns.
14158 * test/lisp/net/tramp-tests.el (tramp-test21-file-links): Extend test.
14159 (tramp--test-check-files): Make check for "smb".
14161 2017-09-04 Mark Oteiza <mvoteiza@udel.edu>
14163 Embed JSON readtable into json-read
14165 Also unroll dispatch into a cond.
14166 * lisp/json.el (json-readtable): Remove.
14167 (json-readtable-dispatch): New macro. Assimilate json-readtable.
14168 (json-read): Use the macro.
14170 2017-09-04 Mark Oteiza <mvoteiza@udel.edu>
14172 Hexify strings in EWW search queries
14174 Previously, inputting "cats & dogs" would lose dogs because the
14175 ampersand signifies a query parameter. Instead, hexify each word while
14176 preserving quotes with split-string.
14177 * lisp/net/eww.el (eww--dwim-expand-url): Join hexified words together
14178 with + separators, instead of replacing whitespace with +.
14180 2017-09-03 Glenn Morris <rgm@gnu.org>
14182 emacsclient-tests: call-process may return non-integer
14184 * test/lib-src/emacsclient-tests.el
14185 (emacsclient-test-alternate-editor-allows-arguments)
14186 (emacsclient-test-alternate-editor-allows-quotes):
14187 Handle non-integer return from call-process.
14189 2017-09-03 Eli Zaretskii <eliz@gnu.org>
14191 * lisp/simple.el (visual-line-mode): Doc fix. (Bug#28337)
14193 2017-09-03 Alan Third <alan@idiocy.org>
14195 Force screen update after drawing cursor glyph (bug#23774)
14197 * src/nsterm.m (ns_draw_window_cursor): Force a screen update after
14198 drawing the glyph over the cursor.
14200 2017-09-03 Alan Mackenzie <acm@muc.de>
14202 Correct the fontification of quote marks after buffer changes in CC Mode.
14204 * lisp/progmodes/cc-defs.el
14205 (c-search-forward-char-property-with-value-on-char): New macro.
14207 * lisp/progmodes/cc-mode.el (c-parse-quotes-before-change)
14208 (c-parse-quotes-after-change): Rewrite the functions, simplifying
14209 considerably, and removing unnecessary optimizations.
14210 Invalidate two caches after manipulating text properties.
14212 2017-09-03 Alan Mackenzie <acm@muc.de>
14214 Fix fontification of "operator~" in C++ Mode.
14216 * lisp/progmodes/cc-langs.el (c-ambiguous-overloadable-or-identifier-prefices)
14217 (c-ambiguous-overloadable-or-identifier-prefix-re): New c-lang-defconsts/vars.
14219 * lisp/progmodes/cc-engine.el (c-forward-name): Do not try to parse "~" (and
14220 two other symbols) as a cast without good evidence. Prefer an overloaded
14221 operator in ambiguous cases.
14223 2017-09-03 Martin Rudalics <rudalics@gmx.at>
14225 In delete_frame do not delete terminal for any toolkit build
14227 * src/frame.c (delete_frame): Neither delete terminal for
14228 non-GTK toolkit builds (Bug#5802, Bug#21509, Bug#23499,
14231 2017-09-02 Philipp Stephani <phst@google.com>
14233 Improve error messages for improper plists (Bug#27726)
14235 * src/fns.c (Fplist_put, Flax_plist_get, Flax_plist_put)
14236 (Fplist_member, syms_of_fns): Use ‘plistp’ as pseudo-predicate for
14237 improper plists instead of ‘listp.’
14239 * test/src/fns-tests.el (plist-get/odd-number-of-elements)
14240 (lax-plist-get/odd-number-of-elements)
14241 (plist-put/odd-number-of-elements)
14242 (lax-plist-put/odd-number-of-elements)
14243 (plist-member/improper-list): Add unit tests.
14245 2017-09-02 Eli Zaretskii <eliz@gnu.org>
14247 Fix decrypting in plstore.el on MS-Windows
14249 * lisp/plstore.el (plstore-open): Bind coding-system-for-read to
14250 raw-text, instead of using insert-file-contents-literally.
14253 2017-09-02 Eli Zaretskii <eliz@gnu.org>
14255 * src/fileio.c (Fexpand_file_name): Doc fix. (Bug#27982)
14257 2017-09-02 Eli Zaretskii <eliz@gnu.org>
14259 Rewrite Antinews for Emacs 26
14261 * doc/lispref/anti.texi (Antinews): Rewrite for Emacs 26.
14262 * doc/lispref/elisp.texi (Top): Update the top-level menu's
14264 * doc/emacs/anti.texi (Antinews): Rewrite for Emacs 26.
14265 * doc/emacs/emacs.texi (Top): Update the top-level menu's Antinews
14268 * etc/NEWS: Rearrange some entries in a more reasonable order.
14270 2017-09-02 Reuben Thomas <rrt@sc3d.org>
14272 Fix a mis-binding in a test
14274 * test/lisp/progmodes/python-tests.el
14275 (python-shell-calculate-process-environment-3): Fix binding of
14276 process-environment. A level of parens was missing.
14278 This was found after Glenn Morris noticed a similar problem with the
14279 patch for Bug#28319.
14281 2017-09-02 Reuben Thomas <rrt@sc3d.org>
14283 Fix a mis-binding and a bad defun name in a test (Bug#28319)
14285 test/lib-src/emacs-client-tests.el (call-emacsclient): Rename
14286 emacsclient-test-call-emacsclient.
14287 (emacsclient-test-alternate-editor-allows-arguments)
14288 (emacsclient-test-alternate-editor-allows-quotes): Fix let-binding of
14289 process-environment.
14291 Thanks to Glenn Morris for noticing these errors.
14293 2017-09-02 Glenn Morris <rgm@gnu.org>
14295 * test/Makefile.in (check-no-automated-subdir): Silence by default.
14297 * test/Makefile.in (ELFILES): Sort, for a reproducible order.
14299 2017-09-01 Mark Oteiza <mvoteiza@udel.edu>
14301 Turn off checkdoc complaint about default argument order
14303 * etc/NEWS: Mention change.
14304 * lisp/emacs-lisp/checkdoc.el (checkdoc-arguments-in-order-flag):
14305 Disable by default, note version.
14307 2017-09-01 Reuben Thomas <rrt@sc3d.org>
14309 Stop emacsclient tests hanging (Bug#28319)
14311 * test/lib-src/emacsclient-tests.el
14312 (emacsclient-test-alternate-editor-allows-arguments): Use a
14313 non-existent file to communicate with server, so that any existing
14314 default server will not be hijacked (in fact, the test does
14315 not need a server).
14316 (emacsclient-test-alternate-editor-allows-quotes): Likewise.
14318 2017-09-01 Stefan Monnier <monnier@iro.umontreal.ca>
14320 * lisp/obsolete/html2text.el: Don't require CL
14322 (html2text-clean-anchor): Mark unused arg.
14324 2017-09-01 Katsumi Yamaoka <yamaoka@jpl.org>
14326 Don't remove undisplayers from inlined MIME parts (bugfix)
14328 * lisp/gnus/gnus-art.el (gnus-mime-buttonize-attachments-in-header):
14329 Don't remove undisplayers from inlined MIME parts (bugfix);
14330 Simplify criterion that finds attachments.
14332 2017-08-31 Mark Oteiza <mvoteiza@udel.edu>
14334 Make ucs-names a hash table (Bug#28302)
14336 * etc/NEWS: Mention the type change.
14337 * lisp/descr-text.el (describe-char): Use gethash to access ucs-names.
14338 Hardcode BEL's name into the function instead of needlessly mapping
14339 over the hash table in the spirit of rassoc.
14340 * lisp/international/mule-cmds.el (ucs-names): Fix variable and
14341 function docstrings. Initialize a hash table for ucs-names--the
14342 number of entries is 42845 here. Switch to hash-table
14344 (mule--ucs-names-annotation): Use hash-table getter.
14345 (char-from-name): Upcase the string if ignore-case is truthy.
14346 * lisp/leim/quail/latin-ltx.el: Use maphash instead of dolist.
14348 2017-08-31 Alan Third <alan@idiocy.org>
14350 Remove unneeded version checks (bug#28222)
14352 * src/macfont.h (CGContextSetFontSmoothingStyle): Remove version
14354 * src/macfont.m (macfont_draw): Remove version check, and test for
14355 existence of CGContextSetFontSmoothingStyle.
14357 2017-08-31 Alan Mackenzie <acm@muc.de>
14359 Fix a glitch in CC Mode's syntactic whitespace cache.
14361 * lisp/progmodes/cc-engine.el (c-forward-sws): Deal correctly with a block
14362 comment close at the end of a macro.
14364 2017-08-31 Alan Mackenzie <acm@muc.de>
14366 Correct the fontification of C++ Mode enclosed declarations.
14368 * lisp/progmodes/cc-fonts.el (c-font-lock-enclosing-decls): abolish the
14369 spurious check that the character before the start of an enclosed declaration
14370 must be ; or }. It might also be {.
14372 2017-08-31 Martin Rudalics <rudalics@gmx.at>
14374 In xterm.c fix some recently introduced compiler warnings
14376 * src/xterm.c (xaw_jump_callback)
14377 (x_set_toolkit_scroll_bar_thumb): Fix some recently introduced
14378 -Wdouble-promotion warnings.
14380 2017-08-31 Martin Rudalics <rudalics@gmx.at>
14382 Restrict fix of Bug#24963 and Bug#25887 to GTK builds
14384 * src/xterm.c (handle_one_xevent): Restrict earlier fix of
14385 Bug#24963 and Bug#25887 to avoid that a non-GTK Emacs won't
14386 react to state changes received via ConfigureNotify.
14388 2017-08-31 Katsumi Yamaoka <yamaoka@jpl.org>
14390 Respect directory a user enters (bug#28299)
14392 * lisp/gnus/mm-decode.el (mm-save-part):
14393 Respect directory a user enters (bug#28299).
14395 2017-08-31 Samuel Freilich <sfreilich@google.com>
14397 Do not split line before width of fill-prefix
14399 When auto-filling a paragraph, don't split a line before the width of the
14400 fill-prefix, creating a subsequent line that is as long or longer (Bug#20774).
14401 * lisp/simple.el (do-auto-fill): Only consider break-points that are later in
14402 the line than the width of the fill-prefix. This is a more general solution
14403 than the previous logic, which only skipped over the exact fill-prefix. The
14404 fill-prefix doesn't necessarily match the prefix of the first line of a
14405 paragraph in adaptive-fill-mode.
14407 2017-08-31 Noam Postavsky <npostavs@gmail.com>
14409 Support lazy loading for autogenerated usage docstrings too (Bug#27748)
14411 * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defmumble):
14412 Consider any documentation that ended up in code as a docstring (e.g.,
14413 autogenerated (fn ARG1 ARG2) type things), not just what the user
14416 2017-08-31 Noam Postavsky <npostavs@gmail.com>
14418 Drop docstrings from cl-defsubst produced inline bodies (Bug#27748)
14420 * lisp/emacs-lisp/cl-macs.el (cl-defsubst): Use macroexp-parse-progn
14421 to drop the docstring. Add a simple docstring to the compiler-macro.
14423 2017-08-30 Paul Eggert <eggert@cs.ucla.edu>
14425 Quote file-truename symlink to "../foo:bar:"
14427 Problem reported by Michael Albinus (Bug#28264#19).
14428 * lisp/files.el (files--splice-dirname-file): Fix bug where
14429 a relative symlink to "../foo:bar:" did not quote the result.
14431 2017-08-30 Reuben Thomas <rrt@sc3d.org>
14433 Add support for arguments in emacsclient's ALTERNATE_EDITOR (Bug #25082)
14435 * lib-src/emacsclient.c (fail): Parse ALTERNATE_EDITOR, or
14436 corresponding command-line argument, into quote- or space-separated
14437 tokens. If a token starts with a quote, then it naturally is expected
14438 to end with a quote; escaping is not supported. This is enough to cope
14439 with the typical case of requiring the initial path to be quoted,
14440 common on Windows where it may contain spaces.
14441 * etc/NEWS: Document.
14442 * doc/emacs/misc.texi: Likewise.
14443 * doc/man/emacsclient.1: Tweak to remove the implication that only an
14444 editor can be specified (the manual already mentions a “command”).
14445 Fix a small error where “EDITOR” is referred to rather than
14446 “ALTERNATE_EDITOR”.
14447 * test/lib-src/emacsclient-tests.el: Add tests.
14449 2017-08-30 Stefan Monnier <monnier@iro.umontreal.ca>
14451 * lisp/man.el (Man-softhyphen-to-minus): Avoid string-as-multibyte.
14453 2017-08-30 Devon Sean McCullough <Emacs-Hacker2017@jovi.net> (tiny change)
14455 Correct "hide others" shortcut on macOS (bug#28215)
14457 * lisp/term/ns-win.el: Fix shortcut for ns-do-hide-others.
14459 2017-08-30 Eli Zaretskii <eliz@gnu.org>
14461 Sync NEWS with the documentation
14463 * etc/NEWS: Mark entries according to documentation.
14465 * doc/lispref/functions.texi (Mapping Functions): Document 'mapcan'.
14467 2017-08-30 Michael Albinus <michael.albinus@gmx.de>
14469 Improve symlinks for Tramp
14471 * lisp/files.el (files--splice-dirname-file): Quote whole file.
14473 * lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link):
14474 Do not expand TARGET, it could be remote.
14475 (tramp-sh-handle-file-truename): Check for cyclic symlink also
14476 in case of readlink. Quote result if it looks remote.
14477 (tramp-sh-handle-file-local-copy): Use `file-truename'.
14479 * test/lisp/net/tramp-tests.el (tramp-test08-file-local-copy)
14480 (tramp-test09-insert-file-contents): Test also file missing.
14481 (tramp-test21-file-links): Extend test.
14483 2017-08-30 Martin Rudalics <rudalics@gmx.at>
14485 Preserve display's foreground color when clearing internal borders (Bug#28278)
14487 * src/xterm.c (x_after_update_window_line): Preserve display's
14488 foreground color when clearing internal borders (Bug#28278).
14490 2017-08-30 Noam Postavsky <npostavs@gmail.com>
14492 Use cl-print for all values printed by `describe-variable'
14494 * lisp/help-fns.el (describe-variable): Use cl-prin1 for original and
14497 2017-08-30 Noam Postavsky <npostavs@gmail.com>
14499 Minor simplification for byte-compile-constant-push
14501 * lisp/emacs-lisp/bytecomp.el (byte-compile-constant): Move the meat
14502 of the code from here...
14503 (byte-compile-constant-push): ... to here. No need to bind
14504 byte-compile--for-effect anymore.
14506 2017-08-30 Paul Eggert <eggert@cs.ucla.edu>
14508 Prefer file-name-quote to concat "/:"
14510 Suggested by Michael Albinus (Bug#28264#13).
14511 * lisp/files.el (files--splice-dirname-file): Use file-name-quote
14512 rather than attempting to do it by hand.
14514 2017-08-30 Paul Eggert <eggert@cs.ucla.edu>
14516 * configure.ac: fix typo in previous change
14518 2017-08-29 Paul Eggert <eggert@cs.ucla.edu>
14520 Be more conservative in link time optimization doc
14522 While testing --enable-link-time-optimization with GCC 7.1.1
14523 I ran into a serious GCC code-generation bug which makes me
14524 think that --enable-link-time-optimization should be
14525 discouraged for typical installs (Bug#28213). See:
14526 https://bugzilla.redhat.com/show_bug.cgi?id=1486455
14528 2017-08-29 Paul Eggert <eggert@cs.ucla.edu>
14530 Make garbage collection more conservative
14532 Check for a pointer anywhere within the object, as opposed to just
14533 the start of the object. This is needed for gcc -Os -flto on
14534 x86-64 (Bug#28213). This change means that the garbage collector
14535 is more conservative, and will incorrectly keep objects that it
14536 does not need to, but that is better than incorrectly discarding
14537 objects that should be kept.
14538 * src/alloc.c (ADVANCE, VINDEX): Now functions, not macros;
14539 this is easier to debug.
14540 (setup_on_free_list): Rename from SETUP_ON_FREE_LIST.
14541 Now a function with two args, not a macro with three.
14542 All callers changed.
14543 (live_string_holding, live_cons_holding, live_symbol_holding)
14544 (live_misc_holding, live_vector_holding, live_buffer_holding):
14545 New functions, which check for any object containing the addressed
14546 byte, not just for an object at the given address.
14547 (live_string_p, live_cons_p, live_symbol_p, live_misc_p)
14548 (live_vector_p, live_buffer_p):
14549 Redefine in terms of the new functions.
14550 (live_float_p): Refactor slightly to match the new functions.
14551 (mark_maybe_object, mark_maybe_pointer): Use the new functions.
14552 Don’t bother checking mark bits, as mark_object already does that,
14553 and omitting the checks here simplifies the code. Although
14554 mark_maybe_object can continue to insist that tagged pointers
14555 still address the start of the object, mark_maybe_pointer now is
14556 more conservative and checks for pointers anywhere into an object.
14558 2017-08-29 Paul Eggert <eggert@cs.ucla.edu>
14560 Improve stack-top heuristic
14562 This is needed for gcc -Os -flto on x86-64; otherwise, GC misses part
14563 of the stack when scanning for heap roots, causing Emacs to crash
14564 later (Bug#28213). The problem is that Emacs's hack for getting an
14565 address near the stack top does not work when link-time optimization
14566 moves stack variables around.
14567 * configure.ac (HAVE___BUILTIN_FRAME_ADDRESS): New macro.
14568 * lib-src/make-docfile.c (DEFUN_noinline): New constant.
14569 (write_globals, scan_c_stream): Support noinline.
14570 * src/alloc.c (NEAR_STACK_TOP): New macro.
14571 (SET_STACK_TOP_ADDRESS): Use it.
14572 (flush_stack_call_func, Fgarbage_collect): Now noinline.
14574 2017-08-29 Paul Eggert <eggert@cs.ucla.edu>
14576 Align stack bottom properly.
14578 This is needed for gcc -Os -flto on x86-64 (Bug#28213).
14579 * src/emacs.c (main): Align stack-bottom variable as a pointer,
14580 since mark_memory requires this.
14582 2017-08-29 Eli Zaretskii <eliz@gnu.org>
14584 Avoid spinning waiting for git-gui.exe on Windows
14586 * src/w32proc.c (waitpid): If GetExitCodeProcess returns
14587 STILL_ACTIVE, and we were called with WNOHANG, pretend that the
14588 process exited. (Bug#28268)
14590 2017-08-29 Eli Zaretskii <eliz@gnu.org>
14592 Document '--module-assertions'
14594 * doc/emacs/cmdargs.texi (Initial Options): Document the
14595 '--module-assertions' command-line option.
14596 * doc/lispref/loading.texi (Dynamic Modules): Add a
14597 cross-reference to the description of '--module-assertions'.
14599 * etc/NEWS: Update the NEWS entry for --module-assertions.
14601 2017-08-29 Alan Third <alan@idiocy.org>
14603 Add news entry about new macOS features
14605 * etc/NEWS: Add entry about ns-appearance, ns-transparent-titlebar and
14606 ns-use-thin-smoothing.
14608 2017-08-29 Alan Third <alan@idiocy.org>
14610 Fix cross macOS version building (bug#28222)
14612 * src/macfont.h (CGContextSetFontSmoothingStyle): Function
14614 * src/macfont.m (macfont_draw): Limit new code to macOS 10.8 and up.
14616 2017-08-29 Ben Bonfil <bonfil@gmail.com> (tiny change)
14618 Enable thin font smoothing in macOS (bug#28222)
14620 * src/nsterm.m (syms_of_nsterm): Define var ns-use-thin-smoothing.
14621 * src/macfont.m (macfont_draw): Use font smoothing.
14623 2017-08-29 Eli Zaretskii <eliz@gnu.org>
14625 Minor improvement in documentation of display-line-numbers
14627 * doc/emacs/display.texi (Display Custom): Document the
14628 display-line-numbers-mode and related options.
14630 2017-08-29 Eli Zaretskii <eliz@gnu.org>
14632 Avoid aborting in 'waitpid' on MS-Windows
14634 * src/w32proc.c (waitpid): Don't allow quitting if called with
14635 WNOHANG in OPTIONS. (Bug#28268)
14637 2017-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
14639 * lisp/progmodes/sh-script.el: Test "in-string" of the right char!
14641 (sh-syntax-propertize-function): Fix off-by-one error.
14644 2017-08-29 Rasmus <rasmus@gmx.us>
14646 Update Org to v9.0.10
14648 Please see etc/ORG-NEWS for major changes. Note, this is a bugfix
14651 2017-08-29 Paul Eggert <eggert@cs.ucla.edu>
14653 Silence false alarms for symlinks to sources
14655 Problem reported by Glenn Morris (Bug#28264).
14656 * lisp/files.el (files--splice-dirname-file): New function.
14657 (file-truename, file-chase-links): Use it.
14659 2017-08-29 Paul Eggert <eggert@cs.ucla.edu>
14661 Simplify remove_slash_colon
14663 * src/process.c (remove_slash_colon): Simplify
14664 and avoid a special case for "/:" by itself.
14666 2017-08-28 Tassilo Horn <tsdh@gnu.org>
14668 Remove font family from minibuffer-prompt face
14670 * etc/themes/tsdh-light-theme.el (tsdh-light): Remove font family from
14671 minibuffer-prompt face.
14673 2017-08-28 Michael Albinus <michael.albinus@gmx.de>
14675 Further fixes in tramp-smb.el
14677 * lisp/net/tramp-smb.el (tramp-smb-handle-file-truename): New defun.
14678 (tramp-smb-file-name-handler-alist): Use it.
14679 (tramp-smb-handle-make-symbolic-link): Unquote target.
14681 * test/lisp/net/tramp-tests.el
14682 (tramp--test-ignore-make-symbolic-link-error): New defmacro.
14683 (tramp-test18-file-attributes, tramp-test21-file-links)
14684 (tramp--test-check-files): Use it.
14686 2017-08-28 Paul Eggert <eggert@cs.ucla.edu>
14688 Don’t assume -g3 in .gdbinit
14690 * src/.gdbinit (EMACS_INT_WIDTH, USE_LSB_TAG):
14691 Use reasonable defaults if not in the symbol table.
14693 2017-08-28 Robert Pluim <rpluim@gmail.com> (tiny change)
14695 Use string-match to check for dotfiles in ido
14697 * lisp/ido.el (ido-make-file-list): Use string-match to check
14698 for dotfiles instead of substring, as when using tramp
14699 simplified syntax ido-temp-list may contain empty strings.
14701 2017-08-28 Mark Oteiza <mvoteiza@udel.edu>
14703 Font-lock FDO desktop files correctly
14705 Single and double quotes do not have a special meaning in
14707 https://standards.freedesktop.org/desktop-entry-spec/latest/
14708 * etc/NEWS: Mention new mode.
14709 * lisp/files.el (auto-mode-alist): Split out an entry for handling
14710 the .desktop extension with conf-desktop-mode.
14711 * lisp/textmodes/conf-mode.el (conf-desktop-font-lock-keywords): New
14712 variable with rules for booleans and format specifiers.
14713 (conf-unix-mode): Remove desktop file entry example from docstring.
14714 (conf-desktop-mode): New derived major mode.
14716 2017-08-27 Tom Tromey <tom@tromey.com>
14718 Fix auto-fill bug in js-mode
14720 * lisp/progmodes/js.el (js-do-auto-fill): New function.
14721 (js-mode): Set normal-auto-fill-function.
14722 * test/lisp/progmodes/js-tests.el (js-mode-fill-comment-bug): New
14725 2017-08-27 Noam Postavsky <npostavs@gmail.com>
14727 Disable completion while entering python multiline statements
14729 The "legacy" completion mechanism sends newlines to the running python
14730 process to get the list of completions, which confuses things if the
14731 user is in the middle of entering a multiline statement (Bug#28051).
14732 It's better to disable completion in this case.
14733 * lisp/progmodes/python.el (python-shell--block-prompt): New variable.
14734 (python-shell-prompt-set-calculated-regexps): Set it.
14735 (python-shell-completion-at-point): Return 'ignore' as the completion
14736 function when the current prompt is a block prompt.
14738 2017-08-27 Michael Albinus <michael.albinus@gmx.de>
14742 * lisp/net/tramp-sh.el (tramp-sh-extra-args): Remove compat code.
14743 (tramp-sh-handle-make-symbolic-link): More robust check for
14746 * lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory):
14747 Disable copying by tar temporarily, it doesn't work reliably.
14748 (tramp-smb-do-file-attributes-with-stat): Resolve symlink.
14749 (tramp-smb-handle-make-symbolic-link): Fix implementation.
14751 * lisp/net/tramp.el (tramp-handle-file-symlink-p): Simplify.
14753 * test/lisp/net/tramp-tests.el (tramp-test21-file-links):
14756 2017-08-27 Glenn Morris <rgm@gnu.org>
14758 Fix previous xterm.h change for non-gtk builds
14760 * src/xterm.h (GTK_CHECK_VERSION) [!USE_GTK]: Define it.
14762 2017-08-27 Philipp Stephani <phst@google.com>
14764 Fix GdkSettings-related deprecation warnings
14766 * src/gtkutil.c (xg_initialize): Don’t set deprecated and ignored
14767 gtk-menu-bar-accel setting in new versions of GTK+. Use g_object_set
14768 instead of deprecated gtk_settngs_set_string_property otherwise.
14770 2017-08-27 Philipp Stephani <phst@google.com>
14772 Always use gtk_window_move in new versions
14774 * src/gtkutil.c (my_log_handler): Don’t define in new versions of
14776 (xg_set_geometry): Always use gtk_window_move in new versions of GTK+.
14778 * src/xterm.c (syms_of_xterm): Document that x-gtk-use-window-move
14781 * lisp/subr.el (x-gtk-use-window-move): Make obsolete.
14783 2017-08-27 Charles A. Roelli <charles@aurox.ch>
14785 Fix 'diff-goto-source' when buffer is narrowed (Bug#21262)
14787 * lisp/vc/diff-mode.el (diff-find-file-name): Save the current
14788 narrowing, and widen the buffer before searching for the name of the
14789 file corresponding to the diff.
14791 With thanks to Noam Postavsky.
14793 2017-08-27 Philipp Stephani <phst@google.com>
14795 Remove use of a deprecated GTK+ function in new versions
14797 * src/gtkutil.c (xg_make_tool_item): Use gtk_widget_set_focus_on_click
14800 2017-08-27 Philipp Stephani <phst@google.com>
14802 Stop using deprecated GdkScreen monitor functions in newer GDK
14804 * src/xfns.c (Fx_display_monitor_attributes_list): Use GdkMonitor
14805 objects instead of the deprecated GdkScreen functions in GDK 3.22+
14807 2017-08-27 Philipp Stephani <phst@google.com>
14809 Use GdkSeat in new GDK versions
14811 * src/gtkutil.c (xg_event_is_for_scrollbar): Use GdkSeat instead of
14812 GdkDeviceManager in GDK 3.20+
14814 2017-08-27 Philipp Stephani <phst@google.com>
14816 * src/xterm.c (XTflash): Don’t use gdk_cairo_create in GDK 3.22+
14818 2017-08-27 Philipp Stephani <phst@google.com>
14820 Remove call of deprecated GDK function
14822 * src/xterm.h (XSync): Don’t call gdk_window_process_all_updates in
14825 2017-08-27 Alan Mackenzie <acm@muc.de>
14827 Amend the CC Mode macro cache to cope with changes at the macro start
14831 * lisp/progmodes/cc-engine.el (c-invalidate-macro-cache): Fix an off-by-1
14834 2017-08-27 Paul Eggert <eggert@cs.ucla.edu>
14836 Fix over-protection of byte-compiled files
14838 Problem reported by Sven Joachim (Bug#28244).
14839 Also, fix similar problem for autoload files.
14840 * lisp/emacs-lisp/autoload.el (autoload--save-buffer):
14841 Set temp file modes to the buffer-file-name file modes (or 666
14842 if not available) as adjusted by umask.
14843 * lisp/emacs-lisp/bytecomp.el (byte-compile-file):
14844 Set temp file modes to 666 as adjusted by umask.
14846 2017-08-27 Tom Tromey <tom@tromey.com>
14848 Refine conf-toml-mode font-lock
14851 * lisp/textmodes/conf-mode.el (conf-toml-font-lock-keywords): Use
14852 conf-toml-recognize-section. Use \s- in variable regexp.
14853 (conf-toml-recognize-section): New function.
14855 2017-08-27 Paul Eggert <eggert@cs.ucla.edu>
14857 Do not munge contents of local symbolic links
14859 This lets Emacs deal with arbitrary local symlinks without
14860 mishandling their contents (Bug#28156). For example,
14861 (progn (shell-command "ln -fs '~' 'x'") (rename-file "x" "/tmp/x"))
14862 now consistently creates a symbolic link from '/tmp/x' to '~'.
14863 Formerly, it did that only if the working directory was on the
14864 same filesystem as /tmp; otherwise, it expanded the '~' to
14865 the user's home directory.
14866 * lisp/dired.el (dired-get-filename): Use files--name-absolute-system-p
14867 instead of rolling our own code.
14868 * lisp/files.el (files--name-absolute-system-p): New function.
14869 (file-truename, file-chase-links): Use it to avoid mishandling
14870 symlink contents that begin with ~.
14871 (copy-directory, move-file-to-trash):
14872 Use concat rather than expand-file-name, to avoid mishandling
14873 symlink contents that begin with ~.
14874 * src/fileio.c (Fmake_symbolic_link): Do not expand leading "~" in the
14875 target unless interactive. Strip leading "/:" if interactive.
14876 (emacs_readlinkat): Do not prepend "/:" to the link target if
14877 it starts with "/" and contains ":" before NUL.
14878 * test/src/fileio-tests.el (try-link): Rename from try-char,
14879 and accept a string instead of a char. All uses changed.
14880 (fileio-tests--symlink-failure): Also test leading ~, and "/:",
14881 to test the new behavior.
14883 2017-08-27 Reuben Thomas <rrt@sc3d.org>
14885 Remove invalid regexp for shell builtins for wksh
14887 * lisp/progmodes/sh-script.el (sh-builtins): Shell built-ins have to
14888 be literal strings, so remove a regexp for wksh. In any case, it’s a
14889 defunct proprietary shell.
14891 2017-08-26 Paul Eggert <eggert@cs.ucla.edu>
14893 Improve doc for file-name-absolute-p.
14895 2017-08-26 Michael Albinus <michael.albinus@gmx.de>
14897 Fix Tramp part of Bug#28156
14899 * lisp/files.el (file-name-non-special): Use `file-name-quote'
14900 instead prefixing "/:", the file could already be quoted.
14902 * lisp/net/tramp.el (tramp-error): Handle null arguments.
14903 (tramp-handle-make-symbolic-link):
14904 * lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link)
14905 (tramp-sh-handle-add-name-to-file):
14906 * lisp/net/tramp-smb.el (tramp-smb-handle-add-name-to-file)
14907 (tramp-smb-handle-make-symbolic-link): Adapt implementation to
14908 stronger semantics in Emacs. (Bug#28156)
14910 * test/lisp/net/tramp-tests.el (tramp-test21-file-links):
14913 2017-08-26 Eli Zaretskii <eliz@gnu.org>
14915 Fix bugs merged with bug#25428
14917 * lisp/simple.el (auto-fill-mode, visual-line-mode): Doc fix.
14918 (Bug#13926) (Bug#25434) (Bug#25435)
14920 2017-08-26 Eli Zaretskii <eliz@gnu.org>
14922 Improve documentation of Info virtual files and nodes
14924 * lisp/info.el (Info-virtual-files, Info-virtual-nodes): Doc fix.
14927 2017-08-26 Eli Zaretskii <eliz@gnu.org>
14929 * lisp/delsel.el (delete-selection-mode): Doc fix. (Bug#25428)
14931 2017-08-26 Grégory Mounié <Gregory.Mounie@imag.fr> (tiny change)
14933 Support multi-lingual detection of SEE ALSO man sections
14935 * lisp/man.el (Man-see-also-regexp): Add support for SEE ALSO
14936 section detection in several langages: French, German, Spanish,
14937 Portuguese, Italian, Polish, Turkish, Japanese, Chinese. (Bug#28142)
14939 2017-08-26 Paul Eggert <eggert@cs.ucla.edu>
14941 Improve expand-file-name doc
14943 * doc/lispref/files.texi (Relative File Names, Directory Names)
14944 (File Name Expansion):
14945 * doc/lispref/minibuf.texi (Reading File Names):
14946 Document expand-file-name behavior with ~ more clearly
14948 * doc/misc/org.texi (Batch execution): Simplify example
14949 script so that it does not need expand-file-name and thus
14950 will not mishandle file names with leading ~.
14952 2017-08-26 Jefferson Carpenter <jeffersoncarpenter2@gmail.com> (tiny change)
14954 Support all perl variable declarators and prefixes (Bug#27613)
14956 * lisp/progmodes/perl-mode.el (perl-imenu-generic-expression)
14957 (perl-font-lock-keywords-2): Match declators 'anon', 'argument', 'has',
14958 'local', 'state', 'supersede', 'let', and 'temp'.
14960 2017-08-25 Paul Eggert <eggert@cs.ucla.edu>
14962 Fix file-attributes race on GNU hosts
14964 * doc/lispref/files.texi (File Attributes):
14965 Document file-attributes atomicity.
14966 * etc/NEWS: Document the fix.
14967 * src/dired.c (file_attributes): New args DIRNAME and FILENAME,
14968 for diagnostics. All callers changed. On platforms like
14969 GNU/Linux that support O_PATH, fix a race condition in
14970 file-attributes and similar functions, so that these functions do
14971 not return nonsense if a directory entry is replaced while getting
14972 its attributes. On non-GNU platforms, do a better (though not
14973 perfect) job of detecting the race, and return nil if detected.
14975 2017-08-25 Paul Eggert <eggert@cs.ucla.edu>
14977 Simplify expand_and_dir_to_file
14979 * src/fileio.c (expand_and_dir_to_file): Simplify by omitting 2nd
14980 argument, since in practice it always has the default value. All
14981 callers changed. Prefer C99 style decls in nearby code.
14983 2017-08-25 Eli Zaretskii <eliz@gnu.org>
14985 Fix file-name completion on network shares
14987 * src/w32.c (faccessat): Don't assume that F_OK is non-zero.
14990 2017-08-25 Reuben Thomas <rrt@sc3d.org>
14992 Fix a FIXME with an exegetical comment
14994 * lisp/progmodes/sh-script.el (sh-builtins): Explain why we have a
14995 regexp for wksh builtins.
14997 2017-08-25 Reuben Thomas <rrt@sc3d.org>
14999 Minor docstring language fix
15001 * lisp/progmodes/sh-script.el (sh-show-indent): Remove spurious “the”.
15003 2017-08-25 Reuben Thomas <rrt@sc3d.org>
15005 Remove old commented code from sh-script.el
15007 * lisp/progmodes/sh-script.el (sh-abbrevs): Remove commented function
15008 and variable, commented since 2001.
15010 2017-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
15012 * lisp/emacs-lisp/package.el: Don't let failure stop us
15014 (package-activate-1): Don't throw an error for missing deps.
15015 (package-unpack): Don't bother compiling if activation failed.
15016 (package-initialize): Report failures but keep activating other packages.
15018 2017-08-25 Paul Eggert <eggert@cs.ucla.edu>
15020 Prefer ‘double’ for FP temps in xterm.c
15022 * src/xterm.c (xm_scroll_callback, xaw_jump_callback)
15023 (x_set_toolkit_scroll_bar_thumb)
15024 (x_set_toolkit_horizontal_scroll_bar_thumb): Prefer ‘double’ to
15025 ‘float’ for individual local floating-point temporaries.
15027 2017-08-24 Reuben Thomas <rrt@sc3d.org>
15029 Avoid using string-to-multibyte in ispell.el
15031 * lisp/textmodes/ispell.el (ispell-get-decoded-string): Use
15032 decode-coding-string instead. Note that decode-coding-string returns a
15033 string that satisfies multibyte-string-p even if its input is pure
15034 ASCII and the third argument is t, so the result of
15035 ispell-get-decoded-string is always a multibyte string.
15037 2017-08-24 Tino Calancha <tino.calancha@gmail.com>
15039 Store the regexp just when there are matches
15041 * lisp/hi-lock.el (hi-lock-set-pattern): When font-lock-mode is
15042 disabled and there are no matches do not store REGEXP
15043 in hi-lock-interactive-patterns.
15045 2017-08-24 Tino Calancha <tino.calancha@gmail.com>
15047 Keep face available if there are no matches
15049 If font-lock-mode is disabled in the current buffer, and
15050 there are no matches for REGEXP, then keep FACE available
15052 * lisp/hi-lock.el (hi-lock-set-pattern): Add FACE into
15053 hi-lock--unused-faces if font-lock-mode is disabled and
15054 there are no matches.
15055 * test/lisp/hi-lock-tests.el (hi-lock-test-set-pattern): Add test.
15057 2017-08-24 Michael Albinus <michael.albinus@gmx.de>
15059 Minor improvements for tramp-interrupt-process, documentation
15061 * doc/lispref/processes.texi (Signals to Processes):
15062 * etc/NEWS: Document interrupt-process-functions.
15064 * lisp/net/tramp.el (tramp-interrupt-process): Test also for
15067 * src/process.c (Vinterrupt_process_functions): Fix docstring.
15069 * test/lisp/net/tramp-tests.el (tramp-test28-interrupt-process):
15072 2017-08-24 Reuben Thomas <rrt@sc3d.org>
15074 Fix a comment whitespace typo.
15076 src/fileio.c: A double space was added after "..", used in a code
15077 example. Make it a single space.
15079 2017-08-24 Reuben Thomas <rrt@sc3d.org>
15081 Remove old commented code and obsolete comments
15083 * lisp/files.el (locate-dominating-files): Remove old commented
15084 implementation from 9 years ago. Since the current version
15085 appears (at least to me) not just more efficient but clearer than the
15086 version removed, also delete a comment in the new version referring to
15087 the old version. Remove old commented heuristic code,
15088 and explanatory comments.
15090 2017-08-24 Reuben Thomas <rrt@sc3d.org>
15092 Remove old duplicate commented code
15094 * lisp/files.el (file-relative-name): Remove old commented version,
15095 replaced 14 years ago in commit 753ad9889.
15097 2017-08-24 Tom Tromey <tom@tromey.com>
15101 * etc/NEWS: Mention conf-toml-mode.
15102 * lisp/files.el (auto-mode-alist): Add entry for .toml.
15103 * lisp/textmodes/conf-mode.el (conf-toml-mode-syntax-table)
15104 (conf-toml-font-lock-keywords): New defvars.
15105 (conf-toml-mode): New mode.
15107 2017-08-23 Alan Third <alan@idiocy.org>
15109 Use lisp type in log message (bug#28176)
15111 * src/nsimage.m (ns_load_image): Use make_number on index.
15113 2017-08-23 Alan Third <alan@idiocy.org>
15115 Fix PNGs on macOS (bug#28176)
15117 * src/nsimage.m (ns_load_image): Remove index check.
15118 (EmacsImage::getAnimatedBitmapImageRep): New function.
15119 (EmacsImage::getMetadata): Use getAnimatedBitmapImageRep.
15120 (EmacsImage::setFrame): Use getAnimatedBitmapImageRep and check index
15123 2017-08-23 Alan Third <alan@idiocy.org>
15125 Add ability to change macOS WM theme (bug#27973)
15127 * src/frame.c (make_frame, frame_parms, syms_of_frame)
15128 [NS_IMPL_COCOA]: Add ns-appearance and ns-transparent-titlebar
15130 * src/frame.h (ns_appearance_type) [NS_IMPL_COCOA]: Add enum to
15131 represent NSAppearance options.
15132 (struct frame) [NS_IMPL_COCOA]: Add ns_appearance and
15133 ns_transparent_titlebar frame parameters.
15134 * src/nsfns.m (ns_frame_parm_handlers) [NS_IMPL_COCOA]: Add
15135 ns_set_appearance and ns_set_transparent_titlebar handlers.
15136 (Sx_create_frame): Handle ns-appearance and ns-transparent-titlebar
15138 (Qdark): Add new symbol for use with ns-appearance.
15139 * src/nsterm.h (ns_set_appearance, ns_set_transparent_titlebar)
15140 [NS_IMPL_COCOA]: Add prototypes.
15141 * src/nsterm.m (ns_set_appearance, ns_set_transparent_titlebar)
15142 [NS_IMPL_COCOA]: New functions.
15143 (initFrameFromEmacs) [NS_IMPL_COCOA]: Handle ns-appearance and
15144 ns-transparent-titlebar frame parameters.
15145 * doc/lispref/frames.texi (Window Management Parameters): Document
15146 ns-apperance and ns-transparent-titlebar.
15148 2017-08-22 Alan Mackenzie <acm@muc.de>
15150 When looking for the end of a declarator, prevent macros fouling up the search
15152 The practical implication of this bug was a random jit-lock chunk remaining
15153 entirely unfontified.
15155 * lisp/progmodes/cc-mode.el (c-fl-decl-end): If point starts inside a macro,
15156 restrict two forward searches to the end of that macro.
15158 2017-08-22 Michael Albinus <michael.albinus@gmx.de>
15160 Test `file-expand-wildcards' for Tramp
15162 * lisp/net/tramp-compat.el (tramp-advice-file-expand-wildcards):
15163 Remove, not needed anymore.
15165 * test/lisp/net/tramp-tests.el (top): Require seq.el.
15166 (tramp-test16-directory-files): Simplify.
15167 (tramp-test16-file-expand-wildcards): New test.
15168 (tramp-test28-interrupt-process): Skip for older Emacsen.
15170 2017-08-22 Alexander Gramiak <agrambot@gmail.com>
15172 Add tests for cl-macs.el (Bug#27559)
15174 * test/lisp/emacs-lisp/cl-lib-tests.el (cl-lib-test-loop): Remove
15176 (cl-loop-destructuring-with): Move to cl-macs-tests.el.
15177 * test/lisp/emacs-lisp/cl-macs-tests.el: New file.
15179 2017-08-22 Noam Postavsky <npostavs@gmail.com>
15181 Optimize skkdic conversion (Bug#28043)
15183 The primary speedup comes from the optimizing lookup-nested-alist and
15184 set-nested-alist for the case where the key is a string. This brings
15185 the time down to less than half the original.
15187 * lisp/international/mule-util.el (lookup-nested-alist)
15188 (set-nested-alist): Use `assq' instead of `assoc' when KEYSEQ is a
15191 * lisp/international/ja-dic-cnv.el (skkdic-collect-okuri-nasi)
15192 (skkdic-convert-okuri-nasi): Use progress-reporter functions instead
15193 of calculating ratio of work done inline.
15195 (skkdic-reduced-candidates): Call `char-category-set' on the first
15196 character of the string directly, instead of using a regexp for the
15197 character category.
15198 (skkdic--japanese-category-set): New constant.
15199 (skkdic-collect-okuri-nasi): Just set
15200 `skkdic-okuri-nasi-entries-count' at once at the end rather than
15201 updating it throughout the loop.
15203 (skkdic-convert-postfix skkdic-convert-prefix)
15204 skkdic-get-candidate-list, skkdic-collect-okuri-nasi)
15205 (skkdic-extract-conversion-data): Use `match-string-no-properties'
15206 instead of `match-string'.
15208 2017-08-22 Reuben Thomas <rrt@sc3d.org>
15210 Treat tests in lib-src like tests in src
15212 * test/Makefile.in (test_template): Depend on a .c source file for a
15213 test under lib-src, as for src. (Thanks, Glenn Morris for pointing me
15214 in the right direction.)
15216 2017-08-22 Paul Eggert <eggert@cs.ucla.edu>
15218 Port /bin/sh scripts to Solaris 10
15220 Its /bin/sh builtin ‘test’ command does not support -e.
15221 * autogen.sh, build-aux/git-hooks/pre-commit:
15222 * build-aux/gitlog-to-emacslog, make-dist:
15223 Use test -r, not test -e.
15225 2017-08-21 Eli Zaretskii <eliz@gnu.org>
15227 Avoid losing the buffer restriction in flyspell-mode
15229 * src/intervals.c (get_local_map): Don't allow C-g to quit as long
15230 as we have the buffer widened, to make sure the restriction is
15231 preserved. (Bug#28161)
15233 2017-08-21 Sven Joachim <svenjoac@gmx.de>
15235 Fix the 'versionclean' target in src/Makefile
15237 * src/Makefile.in (versionclean): Don't accidentally remove
15238 emacs-module.h. (Bug#28169)
15240 2017-08-21 Michael Albinus <michael.albinus@gmx.de>
15242 Implement `interrupt-process-functions'
15244 * lisp/net/tramp.el (tramp-interrupt-process): Rename from
15245 `tramp-advice-interrupt-process'. Adapt according to changed API.
15246 (top): Add it to `interrupt-process-functions'.
15248 * src/process.c (Finternal_default_interrupt_process): New defun.
15249 (Finterrupt_process): Change implementation, based on
15250 Vinterrupt_process_functions.
15251 (Vinterrupt_process_functions): New defvar.
15253 * test/lisp/net/tramp-tests.el (tramp-test40-unload): Do not
15254 test removal of advice.
15256 2017-08-21 Eli Zaretskii <eliz@gnu.org>
15258 Avoid floating-point exceptions while drawing underwave
15260 * src/w32term.c (x_get_scale_factor):
15261 * src/xterm.c (x_get_scale_factor): Don't let the scale factors
15262 become less than 1. Reported by Yuri D'Elia <wavexx@thregr.org> in
15263 https://lists.gnu.org/r/emacs-devel/2017-08/msg00459.html.
15265 2017-08-21 Sam Steingold <sds@gnu.org>
15267 mark flymake-mode as safe local variable when the value is nil
15269 2017-08-21 Sam Steingold <sds@gnu.org>
15271 allow nil init in flymake-allowed-file-name-masks to disable flymake
15273 (flymake-allowed-file-name-masks): Update doc and :type.
15274 (flymake-get-file-name-mode-and-masks): Handle nil init.
15276 2017-08-20 Dmitry Gutov <dgutov@yandex.ru>
15278 Remove the workaround for bug#20719
15280 * lisp/cedet/semantic/symref/grep.el
15281 (semantic-symref-grep-use-template): Remove the workaround for
15282 bug#20719, it's been fixed for a while now.
15284 2017-08-20 Dmitry Gutov <dgutov@yandex.ru>
15286 Fix byte-compilation warnings in semantic/symref/grep
15288 * lisp/cedet/semantic/symref/grep.el (greppattern): Remove.
15289 (grepflags): Rename to semantic-symref-grep-flags.
15290 (semantic-symref-grep-expand-keywords): Update accordingly.
15291 (semantic-symref-grep-use-template): Remove the last two
15292 arguments to make sure they don't shadow the (not renamed)
15294 (semantic-symref-perform-search)
15295 (semantic-symref-parse-tool-output-one-line): Use slot names
15296 instead of keywords, like the byte-compiler wants us to.
15298 2017-08-20 Dmitry Gutov <dgutov@yandex.ru>
15300 Simplify eldoc-message
15302 * lisp/emacs-lisp/eldoc.el (eldoc-message): Simplify.
15303 Don't use ARGS because no callers pass them. Discussed in bug#27230.
15305 2017-08-20 Noam Postavsky <npostavs@gmail.com>
15307 Work around w32-python-2.x bug to fix prompt detection (Bug#21376)
15309 * lisp/progmodes/python.el (python-shell-prompt-detect): Don't put
15310 carriage returns into the temporary file when running in unbuffered
15311 mode, the w32 build of python 2.7 chokes on them.
15313 2017-08-20 Reuben Thomas <rrt@sc3d.org>
15315 Add missing require
15317 * lisp/textmodes/ispell.el: Require subr-x. (Thanks, Eli Zaretskii.)
15319 2017-08-20 Michael Albinus <michael.albinus@gmx.de>
15321 Implement `interrupt-process' for remote processes (Bug#28066)
15323 * lisp/net/tramp-sh.el (tramp-sh-handle-start-file-process):
15324 Support sending signals remotely.
15325 (tramp-open-connection-setup-interactive-shell):
15326 Trace "remote-tty" connection property.
15328 * lisp/net/tramp.el (tramp-advice-interrupt-process): New defun.
15329 (top): Add advice to `interrupt-process'. (Bug#28066)
15331 * test/lisp/net/tramp-tests.el (tramp-test28-interrupt-process):
15333 (tramp-test29-shell-command)
15334 (tramp-test30-environment-variables)
15335 (tramp-test30-environment-variables-and-port-numbers)
15336 (tramp-test31-explicit-shell-file-name)
15337 (tramp-test32-vc-registered)
15338 (tramp-test33-make-auto-save-file-name)
15339 (tramp-test34-make-nearby-temp-file)
15340 (tramp-test35-special-characters)
15341 (tramp-test35-special-characters-with-stat)
15342 (tramp-test35-special-characters-with-perl)
15343 (tramp-test35-special-characters-with-ls, tramp-test36-utf8)
15344 (tramp-test36-utf8-with-stat, tramp-test36-utf8-with-perl)
15345 (tramp-test36-utf8-with-ls)
15346 (tramp-test37-asynchronous-requests)
15347 (tramp-test38-recursive-load, tramp-test39-remote-load-path)
15348 (tramp-test40-unload): Rename.
15349 (tramp-test40-unload): Test also removal of advice.
15351 2017-08-20 Reuben Thomas <rrt@sc3d.org>
15353 Document Enchant support
15355 * doc/emacs/fixit.texi: Mention Enchant.
15356 * doc/misc/efaq.texi: Likewise.
15357 * etc/NEWS: Add an item on Enchant support.
15359 2017-08-20 Reuben Thomas <rrt@sc3d.org>
15361 Remove old comments and a redundant FIXME
15363 * lisp/textmodes/ispell.el (ispell-process-line): Remove some old
15364 commented code, a redundant FIXME, and outdated usage instructions.
15366 2017-08-20 Reuben Thomas <rrt@sc3d.org>
15368 Add Enchant support to ispell.el (Bug#17742)
15370 * lisp/textmodes/ispell.el (ispell-program-name): Add “enchant”.
15371 (ispell-really-enchant): Add variable.
15372 (ispell-check-version): If using Enchant, check it’s new enough (at
15373 least 1.6.1). (Like the ispell check, this is absolute: cannot work
15375 (ispell-enchant-dictionary-alist): Add variable.
15376 (ispell-find-enchant-dictionaries): Add function, based on
15377 ispell-find-aspell-dictionaries.
15378 (ispell-set-spellchecker-params): Allow dictionary auto-detection for
15379 Enchant, and call ispell-find-enchant-dictionaries to find them. Use
15380 old ispell name to locale mapping code for Enchant too.
15381 (ispell-send-replacement): Make it work with Enchant.
15383 2017-08-20 Noam Postavsky <npostavs@gmail.com>
15385 * lisp/term.el (term-mode): Use `window-text-height' (Bug#5615).
15387 2017-08-20 Noam Postavsky <npostavs@gmail.com>
15389 Stop printing '4' in .elc files after 'define-symbol-prop' calls
15391 * lisp/emacs-lisp/bytecomp.el (byte-compile-define-symbol-prop):
15392 Return nil in case we have compiled the form, to prevent a redundant
15393 constant from getting added to the compiled output.
15395 2017-08-20 Paul Eggert <eggert@cs.ucla.edu>
15397 Change recent symlink tests to just test ASCII
15399 * test/src/fileio-tests.el (fileio-tests--symlink-failure):
15400 Be less ambitious about testing non-ASCII chars and encoding
15401 errors, as there are too many portability issues.
15403 2017-08-20 Paul Eggert <eggert@cs.ucla.edu>
15405 Don’t adjust CRLF in file names
15407 * doc/misc/gnus.texi (Non-ASCII Group Names):
15409 * test/lisp/net/tramp-tests.el (tramp--test-utf8):
15410 Use utf-8-unix, not utf-8, for default-file-name-coding-system, so
15411 that CRLF in file names is left alone.
15412 * lisp/international/mule-cmds.el (set-default-coding-systems):
15413 Do not alter CRLF in file name coding systems.
15414 (prefer-coding-system): Ignore differences in CRLF processing when
15415 checking whether we used the user-specified file name coding system.
15416 * test/src/fileio-tests.el: New file.
15418 2017-08-19 Eli Zaretskii <eliz@gnu.org>
15420 Make list-processes support display-line-numbers
15422 * lisp/simple.el (process-menu-mode): Move the call to
15423 tabulated-list-init-header from here...
15424 (list-processes--refresh): ...to here. (Bug#27895)
15426 2017-08-19 Eli Zaretskii <eliz@gnu.org>
15428 Improve support of display-line-numbers in package.el
15430 * lisp/emacs-lisp/package.el (package-menu--refresh): Redisplay
15431 the header. (Bug#27895)
15432 * lisp/emacs-lisp/tabulated-list.el
15433 (tabulated-list-line-number-width): Fix the case when
15434 display-line-numbers is nil.
15436 2017-08-19 Eli Zaretskii <eliz@gnu.org>
15438 Improve support of display-line-numbers in tabulated-list-mode
15440 * lisp/emacs-lisp/tabulated-list.el
15441 (tabulated-list-line-number-width): New function.
15442 (tabulated-list-init-header, tabulated-list-print-entry): Use it.
15445 2017-08-19 Martin Rudalics <rudalics@gmx.at>
15447 Fix one more issue reported by Alex (Bug#27999)
15449 * doc/lispref/windows.texi (Preserving Window Sizes)
15450 (Window Parameters): Use the term `window-preserved-size'
15451 instead of `preserved-size' (Bug#27999).
15453 2017-08-19 Martin Rudalics <rudalics@gmx.at>
15455 Rename `no-delete-other-window' to `no-delete-other-windows'
15457 2017-08-19 Martin Rudalics <rudalics@gmx.at>
15459 Fix two side window problems noted by Alex (Bug#27999)
15461 * lisp/window.el (display-buffer-in-side-window): Fix doc-string
15463 (delete-other-windows): Rename the `no-delete-other-window'
15464 parameter to `no-delete-other-windows' (see the discussion in
15465 Bug#27999 for the rationale of this change).
15466 * doc/lispref/windows.texi (Deleting Windows)
15467 (Frame Layouts with Side Windows, Window Parameters): Rename
15468 `no-delete-other-window' to `no-delete-other-windows'.
15470 2017-08-19 Alex Schroeder <alex@gnu.org>
15472 Use define-minor-mode for rcirc-omit-mode
15474 2017-08-19 Paul Eggert <eggert@cs.ucla.edu>
15476 Clarify behavior of symlinks and directories
15478 * doc/lispref/files.texi (Saving Buffers): Document how functions
15479 like rename-file work with symlinks and directories. This patch
15480 attempts to document the current behavior better, in preparation
15481 for possibly changing it. See Bug#27986.
15483 2017-08-19 Paul Eggert <eggert@cs.ucla.edu>
15485 Fix recently-introduced file descriptor leak
15487 * src/fileio.c (Fmake_temp_file_internal):
15488 Don’t leak a file descriptor if write_region signals an error.
15490 2017-08-19 Paul Eggert <eggert@cs.ucla.edu>
15492 Improve make-temp-file performance on local files
15494 * lisp/files.el (make-temp-file): Let make-temp-file-internal do
15495 the work of inserting the text.
15496 * src/fileio.c (Fmake_temp_file_internal): New arg TEXT.
15497 All callers changed.
15499 2017-08-19 Noam Postavsky <npostavs@gmail.com>
15501 Don't lose arguments to eshell aliases (Bug#27954)
15503 * lisp/eshell/em-alias.el (eshell-maybe-replace-by-alias): Use ARGS.
15505 2017-08-19 Ted Zlatanov <tzz@lifelogs.com>
15507 * lisp/files.el (make-temp-file): Fix directory use case.
15509 2017-08-19 Ted Zlatanov <tzz@lifelogs.com>
15511 Fix and document make-temp-file optional text parameter
15513 * lisp/files.el (make-temp-file): Fix initial TEXT parameter.
15514 (files--make-magic-temp-file): Support optional TEXT parameter.
15515 * etc/NEWS: Document it.
15516 * doc/lispref/files.texi: Document it.
15517 * test/lisp/auth-source-tests.el: Minor reformat.
15519 2017-08-19 Ted Zlatanov <tzz@lifelogs.com>
15521 * test/lisp/auth-source-tests.el: Avoid `string-join' to be simple.
15523 * test/lisp/auth-source-tests.el: Minor cleanups to use CL.
15525 2017-08-19 João Távora <joaotavora@gmail.com>
15527 Fix default value of electric-pair-pairs and electric-pair-text-pairs
15531 A previous change, titled "Add support for curly quotation marks to
15532 electric-pair-mode", attempted to add these characters to the default
15533 value of these variables. But it did so in a quoted list, preventing
15534 evaluation of the relevant expressions and resulting in an invalid
15537 * lisp/elec-pair.el (electric-pair-pairs, electric-pair-text-pairs):
15538 Use backquote and comma.
15540 2017-08-19 Noam Postavsky <npostavs@gmail.com>
15542 * lisp/elec-pair.el (electric-pair-text-pairs): Don't autoload (Bug#24901).
15544 * lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Require `elec-pair'
15545 explicitly in the interactive case.
15547 2017-08-19 Mats Lidell <mats.lidell@cag.se>
15549 * etc/tutorials/TUTORIAL.sv: synced with TUTORIAL
15551 2017-08-19 Ted Zlatanov <tzz@lifelogs.com>
15553 Add auth-source tests and codify its API better
15555 The auth-source behavior was unclear in some API use cases, so these
15556 extra tests codify and test it. For details see
15557 https://github.com/DamienCassou/auth-password-store/issues/29
15559 * lisp/files.el (make-temp-file): Add new initial TEXT parameter.
15560 * test/lisp/auth-source-tests.el (auth-source-test-searches): Add
15561 auth-source tests and simplify them with the new `make-temp-file'.
15563 2017-08-18 Eli Zaretskii <eliz@gnu.org>
15565 Don't call the same hook twice due to obsolete aliases
15567 * lisp/international/robin.el (robin-activate):
15568 * lisp/international/quail.el (quail-activate):
15569 * lisp/international/mule-cmds.el (deactivate-input-method):
15570 * lisp/emulation/viper-init.el (viper-deactivate-input-method):
15571 Don't call the same hook twice, when the obsolete and the
15572 advertised symbols are aliased. (Bug#28118)
15574 2017-08-18 Felipe Ochoa <felipe@fov.space> (tiny change)
15576 A new face for show-paren in expression mode
15578 * lisp/faces.el (show-paren-match-expression): Define the new face.
15579 * lisp/paren.el (show-paren-function): Apply the different face
15580 when in expression mode. (Bug#28047)
15582 2017-08-18 Eli Zaretskii <eliz@gnu.org>
15584 Non-ASCII support for man page section and header names
15586 * lisp/man.el (Man-name-regexp, Man-page-header-regexp)
15587 (Man-heading-regexp): Replace ASCII character classes by
15588 equivalent classes that allow non-ASCII characters. Suggested by
15589 Grégory Mounié <Gregory.Mounie@imag.fr>. (Bug#27978)
15591 2017-08-18 Eli Zaretskii <eliz@gnu.org>
15593 Implement HiDPI support for underwave on MS-Windows
15595 * src/w32term.c (x_get_scale_factor): New function.
15596 (w32_draw_underwave): Use it.
15597 * src/xterm.c (x_draw_underwave): Offset the wave starting point
15598 to make it identical with original code.
15600 2017-08-18 Stephen Pegoraro <spegoraro@tutive.com> (tiny change)
15602 Support HiDPI displays for wave style underlines
15604 * src/xterm.c (x_draw_underwave): Compute height, length and thickness
15605 based on scale factor.
15606 (x_get_scale_factor): New function.
15608 2017-08-18 Bastien <bzg@gnu.org>
15610 Delete library-of-babel.org
15612 * etc/org/library-of-babel.org: Delete file.
15614 2017-08-18 Glenn Morris <rgm@gnu.org>
15616 * doc/emacs/files.texi (Copying and Naming): Avoid confusing texi2pdf.
15618 2017-08-18 Noam Postavsky <npostavs@gmail.com>
15620 Remove custom version parsing from epg-config.el (Bug#27963)
15622 * lisp/epg-config.el (epg-config--compare-version)
15623 (epg-config--parse-version): Remove.
15624 (epg-check-configuration): Use `version<=' instead.
15626 2017-08-18 Mark Oteiza <mvoteiza@udel.edu>
15628 Treat control characters in JSON strings as invalid
15630 * lisp/json.el (json-peek): Reduce to following-char.
15631 (json-pop, json-read): Zero (null char) means end of file.
15632 (json-read-escaped-char): Delimit URL properly.
15633 (json-read-string): Signal error for ASCII control characters.
15634 * test/lisp/json-tests.el (test-json-peek): Check for zero instead of
15636 (test-json-read-string): New test for control characters in JSON
15639 2017-08-17 Eli Zaretskii <eliz@gnu.org>
15641 Support Posix semantics of 'rename' on MS-Windows
15643 * src/w32.c (sys_rename_replace): Support Posix semantics of
15644 'rename': return an error if OLD is a directory while NEW is not,
15647 2017-08-17 Eli Zaretskii <eliz@gnu.org>
15649 * src/w32.c (sys_rename_replace): Support renaming a directory.
15651 2017-08-17 Eli Zaretskii <eliz@gnu.org>
15653 Fix the MS-Windows build
15655 * nt/gnulib-cfg.mk (OMIT_GNULIB_MODULE_open): Omit Gnulib module
15658 * lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]: Restore definition.
15660 2017-08-17 João Távora <joaotavora@gmail.com>
15662 Add flymake-backends defcustom
15664 * lisp/progmodes/flymake-proc.el (flymake-proc-can-syntax-check-buffer):
15665 Rename from flymake-can-syntax-check-file. Suitable for adding to
15667 (flymake-proc-start-syntax-check): Rename from
15668 flymake-start-syntax-check. Don't check again if buffer can be
15670 (add-to-list flymake-backends): Hook only flymake-ui.el
15672 * lisp/progmodes/flymake-ui.el (flymake-backends): New
15674 (flymake-on-timer-event, flymake-after-change-function)
15675 (flymake-after-save-hook, flymake-find-file-hook): Call new
15676 flymake--start-syntax-check-buffer and
15677 flymake--can-syntax-check-buffer.
15678 (flymake-mode): Call flymake--can-syntax-check-buffer and set
15680 (flymake--backend): New buffer-local variable.
15682 2017-08-17 João Távora <joaotavora@gmail.com>
15684 Split flymake.el into flymake-proc.el and flymake-ui.el
15686 flymake.el is now a stub that requires both files.
15688 * lisp/progmodes/flymake-proc.el: New file.
15690 * lisp/progmodes/flymake-ui.el: New file.
15692 * lisp/progmodes/flymake.el: Split into flymake-ui.el and
15693 flymake-proc.el. Require both files.
15695 2017-08-17 Michael Albinus <michael.albinus@gmx.de>
15697 Set `default-directory' for watchdog in tramp-test.el
15699 * test/lisp/net/tramp-tests.el (tramp-test36-asynchronous-requests):
15700 Set `default-directory' for watchdog.
15702 2017-08-17 Andreas Schwab <schwab@suse.de>
15704 * lisp/term/konsole.el: New file.
15706 2017-08-17 Noam Postavsky <npostavs@gmail.com>
15708 * lisp/woman.el (woman-push, woman-pop): Remove. (Bug#27962)
15710 (woman2-RS): Use plain `push' instead of `woman-push'.
15711 (woman2-RE): Conditionally `pop' instead of `woman-pop'.
15713 2017-08-16 Paul Eggert <eggert@Penguin.CS.UCLA.EDU>
15715 Merge from Gnulib; use ‘open’ for O_CLOEXEC
15718 2017-08-15 renameat: ensure declaration in <stdio.h> on NetBSD
15719 2017-08-15 extensions: enable NetBSD specific extensions
15720 2017-08-14 open: support O_CLOEXEC
15721 2017-08-13 reallocarray: new module
15722 * admin/merge-gnulib (AVOIDED_MODULES): Remove ‘open’, since
15723 it now supports O_CLOEXEC and this simplifies Emacs.
15724 * build-aux/config.guess, lib/fcntl.in.h, lib/stdio.in.h:
15725 * lib/stdlib.in.h, m4/extensions.m4, m4/stdlib_h.m4:
15727 * lib/cloexec.c, lib/cloexec.h, lib/open.c:
15728 * m4/mode_t.m4, m4/open-cloexec.m4, m4/open.m4:
15729 New files, copied from Gnulib.
15730 * lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
15731 * lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]:
15732 Remove, as Gnulib does this for us.
15733 * src/filelock.c (create_lock_file):
15734 * src/sysdep.c (emacs_open, emacs_pipe):
15735 Don’t worry about O_CLOEXEC == 0, as Gnulib no longer sets it to 0.
15737 2017-08-16 Alan Third <alan@idiocy.org>
15738 Charles A. Roelli <charles@aurox.ch>
15740 Allow use of run-time OS version checks on macOS (bug#27810)
15742 * src/nsterm.h (NSWindowTabbingMode): Define in pre-Sierra macOS.
15743 (MAC_OS_X_VERSION_10_6, MAC_OS_X_VERSION_10_7, MAC_OS_X_VERSION_10_8,
15744 MAC_OS_X_VERSION_10_9, MAC_OS_X_VERSION_10_12, HAVE_NATIVE_FS): Remove
15746 (NSWindowStyleMaskFullScreen,
15747 NSWindowCollectionBehaviorFullScreenPrimary,
15748 NSApplicationPresentationFullScreen,
15749 NSApplicationPresentationAutoHideToolbar): Define in macOS 10.6.
15750 * src/nsterm.m (colorForEmacsRed, colorUsingDefaultColorSpace,
15751 check_native_fs, ns_read_socket, ns_select, runAlertPanel,
15752 initFrameFromEmacs, windowDidMiniaturize, windowDidEnterFullScreen,
15753 windowDidExitFullScreen, isFullscreen, updateCollectionBehavior,
15754 toggleFullScreen, constrainFrameRect, scrollerWidth, syms_of_nsterm):
15755 Allow use of run-time checks and replace version check macros.
15756 * src/nsfns.m (ns_screen_name): Use run-time OS version checks.
15757 * src/macfont.m (macfont_draw): Use run-time OS version checks.
15758 * src/nsmenu.m (menuWillOpen): Use run-time OS version checks.
15760 2017-08-16 Alan Third <alan@idiocy.org>
15762 Add multiframe image support to NS port (bug#21714)
15764 * src/nsimage.m (ns_load_image): Handle multiple frames.
15765 (EmacsImage::getMetadata, EmacsImage::setFrame): New functions.
15766 * src/nsterm.h (EmacsImage::getMetadata, EmacsImage::setFrame): New
15767 function prototypes.
15769 2017-08-16 Tino Calancha <tino.calancha@gmail.com>
15771 files-tests.el: Remove unused lexical variable
15773 * test/lisp/files-tests.el (file-test--do-local-variables-test);
15774 Remove unused var 'files-test-queried'.
15776 2017-08-16 Michael Albinus <michael.albinus@gmx.de>
15778 * doc/emacs/files.texi (Copying and Naming): Mention
15780 restrictions to add-name-to-file and make-symbolic-link on
15783 2017-08-16 Michael Albinus <michael.albinus@gmx.de>
15785 * lisp/net/ange-ftp.el (ange-ftp-skip-msgs): Further support ftp-ssl.
15787 2017-08-16 Noam Postavsky <npostavs@gmail.com>
15789 Add tests for previous commit
15791 * test/lisp/progmodes/elisp-mode-tests.el
15792 (elisp-mode-tests--face-propertized-string): New function.
15793 (elisp--highlight-function-argument-indexed)
15794 (elisp--highlight-function-argument-keyed-1)
15795 (elisp--highlight-function-argument-keyed-2): New tests.
15797 2017-08-16 Thierry Volpiatto <thierry.volpiatto@gmail.com>
15799 Fix eldoc highlighting for &key args (Bug#27272)
15801 * lisp/progmodes/elisp-mode.el (elisp--highlight-function-argument):
15802 Only switch to keyword-based searching if INDEX point beyond `&key' in
15803 the argument list. All arguments prior to the `&key' are position
15804 based. Additionally, be more strict about what is a keyword when
15805 searching for the current keyword.
15807 2017-08-15 Paul Eggert <eggert@cs.ucla.edu>
15809 Do not assume regular Git .git/hooks dir
15811 Apparently Gitlab doesn’t create .git/hooks, like regular Git does.
15812 Problem reported by Ted Zlatanov in:
15813 https://lists.gnu.org/r/emacs-devel/2017-08/msg00380.html
15814 * autogen.sh (git_sample_hook_src): New function. Use it to work
15815 even if .git/hooks or its samples do not exist.
15817 2017-08-15 Paul Eggert <eggert@cs.ucla.edu>
15819 New manual section "Copying and Naming"
15821 * doc/emacs/files.texi (Copying and Naming):
15822 New section, split off from Misc File Ops and containing the
15823 operations that copy, name or rename files. This fixes some
15824 confusion caused by the incorrect phrase "The same rule applies
15825 to all the remaining commands in this section" in the old manual.
15826 This change does not affect the confusion about directories (see
15827 Bug#27986 for ongoing discussion).
15829 2017-08-15 Eli Zaretskii <eliz@gnu.org>
15831 Fix the MS-Windows build
15833 * src/fileio.c (Frename_file): Don't use ENOTSUP if it is equal to
15834 ENOSYS. (Bug#28097) (Bug#27986)
15836 2017-08-15 Ted Zlatanov <tzz@lifelogs.com>
15838 * .gitlab-ci.yml: run "autogen.sh autoconf" to avoid Git.
15840 * .gitlab-ci.yml: add Git to the installed packages.
15842 2017-08-15 Simen Heggestøyl <simenheg@gmail.com>
15844 Support indentation of detached Less CSS rulesets
15846 * lisp/textmodes/css-mode.el (css-smie-rules): Provide better support
15847 for indentation of detached rulesets passed to Less mixins.
15849 * test/manual/indent/less-css-mode.less: New file.
15851 2017-08-15 Simen Heggestøyl <simenheg@gmail.com>
15853 Fixes and tweaks for the new Less CSS mode
15855 * etc/NEWS: Add an entry for the new mode.
15857 * lisp/textmodes/less-css-mode.el (less-css): Tweak docstring.
15858 (less-css-lessc-command): Tweak docstring. Don't mark it as
15859 safe. Don't autoload.
15860 (less-css-compile-at-save, less-css-lessc-options)
15861 (less-css-output-directory): Tweak docstrings. Don't autoload.
15862 (less-css-output-file-name): Tweak docstring. Don't mark it as safe.
15863 (less-css-input-file-name): Tweak docstring. Don't autoload.
15864 (less-css-compile-maybe): Use `when' for one-armed `if'.
15865 (less-css--output-path): Tweak docstring.
15866 (less-css--maybe-shell-quote-command): Remove function.
15867 (less-css-compile): Don't autoload. Tweak docstring and message. Fix
15868 compiler warning. Use `string-join' instead of `mapconcat'.
15869 (less-css-font-lock-keywords): Use `font-lock-variable-name-face' for
15871 (less-css-mode-syntax-table, less-css-mode-map): New variables.
15872 (less-css-mode): Change status line mode name from "LESS" to
15873 "Less". Tweak docstring. Move syntax table definitions to
15874 `less-css-mode-syntax-table'.
15875 (less-css-indent-line): Remove function.
15877 2017-08-15 Steve Purcell <steve@sanityinc.com>
15879 New major mode: Less CSS mode
15881 * lisp/textmodes/less-css-mode.el: New file.
15883 2017-08-15 Tino Calancha <tino.calancha@gmail.com>
15885 archive-int-to-mode: Fix order of testing S_ISUID, S_ISGID bits
15887 * lisp/arc-mode.el (archive-int-to-mode):
15888 Swap order of 2048 and 1024 tests (Bug#28092).
15889 * test/lisp/arc-mode-tests.el (arc-mode-test-archive-int-to-mode):
15892 2017-08-15 Paul Eggert <eggert@cs.ucla.edu>
15894 Improve rename-file port to macOS
15896 * src/fileio.c (Frename_file): On macOS, renameat_noreplace can
15897 fail with errno == ENOTSUP on file systems where it is not
15898 supported, according to the Apple documentation.
15900 2017-08-15 Noam Postavsky <npostavs@gmail.com>
15902 Speed up ./configure with more caching (Bug#27960)
15904 * configure.ac: Cache the 'GTK compiles', 'GSettings is in gio',
15905 'LN_S', '-znocombreloc', 'sysinfo', 'gcc autodepends', '-b link',
15906 'Xkb', 'Xpm preprocessor', 'tputs library' 'GLib', 'signals via
15907 characters', and 'Windows API header' checks. Remove pause after
15908 warning about GTK bug.
15910 2017-08-15 Paul Eggert <eggert@cs.ucla.edu>
15912 Improve rename-file behavior on macOS
15914 Problem reported by Philipp Stephani (Bug#27986).
15915 * src/fileio.c (Frename_file):
15916 Worry about file name case sensitivity only if CYGWIN or DOS_NT.
15917 * src/sysdep.c (renameat_noreplace): Use renameatx_np on macOS,
15918 since this provides the necessary atomicity guarantees.
15920 2017-08-14 Glenn Morris <rgm@gnu.org>
15922 Clean up temp files after some tests
15924 * test/lisp/emacs-lisp/bytecomp-tests.el
15925 (bytecomp-tests--with-temp-file): Also delete .elc file if present.
15926 * test/lisp/progmodes/etags-tests.el
15927 (etags-buffer-local-tags-table-list): Delete temp file at end.
15929 2017-08-14 Eli Zaretskii <eliz@gnu.org>
15931 Implement renameat_noreplace for MS-Windows
15933 * src/sysdep.c (renameat_noreplace) [WINDOWSNT]: Implement minimal
15934 emulation for MS-Windows. (Bug#27986)
15936 2017-08-14 Eli Zaretskii <eliz@gnu.org>
15938 Fix 'rename' on MS-Windows
15940 * src/w32.c (sys_rename_replace): Use the FORCE argument only if
15941 the primitive rename errors out with EEXIST.
15943 2017-08-14 Michael Albinus <michael.albinus@gmx.de>
15945 * lisp/net/ange-ftp.el (ange-ftp-skip-msgs): Support ftp-ssl.
15947 2017-08-14 Mark Oteiza <mvoteiza@udel.edu>
15949 Tiny JSON performance improvement
15951 Get rid of some needless uses of apply. Measuring with
15952 (benchmark-run 10 (json-read-file "test.json"))
15953 showed 1.5-2.5% reduction of execution time.
15954 * lisp/json.el (json-peek): Nix let-binding.
15955 (json-read-string): Use concat for making a string from chars.
15956 (json-read-array): Use cond and more appropriate conversion instead
15957 of blindly applying.
15959 2017-08-13 Paul Eggert <eggert@cs.ucla.edu>
15961 Be consistent in spelling 'ok-if-already-exists'.
15963 2017-08-13 Alexander Gramiak <agrambot@gmail.com>
15965 Use 'header-line-highlight' face in proced and erc
15967 * lisp/erc/erc-list.el (erc-list-button):
15968 * lisp/proced.el (proced-format): Use the 'header-line-highlight
15971 2017-08-13 Ulf Jasper <ulf.jasper@web.de>
15973 Remove feeds with dead uris from newsticker--raw-url-list-defaults
15975 * lisp/net/newst-backend.el (newsticker--raw-url-list-defaults):
15976 Remove feeds with dead uris.
15978 2017-08-13 Eli Zaretskii <eliz@gnu.org>
15980 Fix vertical cursor motion when cursor is on the fringe
15982 * lisp/simple.el (line-move-visual): Fix an off-by-one error in
15983 setting temporary-goal-column when newline overflows into the
15984 fringe. Support that use case in R2L paragraphs as well.
15986 2017-08-13 Eli Zaretskii <eliz@gnu.org>
15988 Fix vertical cursor motion across too wide images
15990 * src/indent.c (Fvertical_motion): If lines are truncated and we
15991 end up beyond the right margin of the window, don't assume we are
15992 in the next screen line, unless VPOS actually says so. (Bug#28071)
15994 2017-08-13 Tino Calancha <tino.calancha@gmail.com>
15996 Add test suites for arc-mode and tar-mode
15998 * test/lisp/arc-mode-tests.el (arc-mode-test-archive-int-to-mode)
15999 * test/lisp/tar-mode-tests.el (tar-mode-test-tar-grind-file-mode):
16002 2017-08-13 Tino Calancha <tino.calancha@gmail.com>
16004 * lisp/tar-mode.el (tar-grind-file-mode): Fix docstring
16006 2017-08-13 Ulf Jasper <ulf.jasper@web.de>
16008 Fix uri of Emacs Wiki
16010 * lisp/net/newst-backend.el (newsticker--raw-url-list-defaults): Fix
16011 uri of Emacs Wiki. (Bug#27981)
16013 2017-08-13 Paul Eggert <eggert@cs.ucla.edu>
16015 Fix make-temp-file bug with ""/"."/".." prefix
16017 The bug with "." and ".." has been present for a while; I
16018 introduced the bug with "" earlier today in my patch for Bug#28023.
16019 * lisp/files.el (make-temp-file): Do not use expand-file-name if
16020 PREFIX is empty or "." or "..", as it does the wrong thing.
16021 Compute absolute-prefix here ...
16022 (files--make-magic-temp-file): ... instead of here ...
16023 * src/fileio.c (Fmake_temp_file_internal): ... or here.
16025 * lisp/files.el (make-temp-file): If the prefix is empty, append
16026 "/" to the absolute prefix so that the new files are children
16027 rather than siblings of temporary-file-directory. This fixes a
16028 bug introduced in the previous change.
16029 * test/lisp/files-tests.el (files-test-make-temp-file-empty-prefix):
16030 New test, for the bug.
16032 2017-08-13 Paul Eggert <eggert@cs.ucla.edu>
16034 Improve make-temp-file performance on local files
16036 For the motivation behind this patch, please see Bug#28023 and:
16037 http://emacshorrors.com/posts/make-temp-name.html
16038 Although, given the recent changes to Tramp, the related security
16039 problem in make-temp-file is already fixed, make-temp-file still has
16040 several unnecessary system calls. In the typical case on GNU/Linux,
16041 this patch replaces 8 syscalls (symlink, open, close, readlinkat, uname,
16042 getpid, unlink, umask) by 2 (open, close).
16043 * admin/merge-gnulib (GNULIB_MODULES): Add tempname, now
16044 that Emacs is using it directly.
16045 * configure.ac (AUTO_DEPEND): Remove AC_SYS_LONG_FILE_NAMES;
16047 * lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
16048 * lisp/files.el (files--make-magic-temp-file): Rename from
16050 (make-temp-file): Use make-temp-file-internal for
16051 non-magic file names.
16052 * src/fileio.c: Include tempname.h.
16053 (make_temp_name_tbl, make_temp_name_count)
16054 (make_temp_name_count_initialized_p, make_temp_name): Remove.
16055 (Fmake_temp_file_internal): New function.
16056 (Fmake_temp_name): Use it.
16057 * src/filelock.c (get_boot_time): Use Fmake_temp_file_internal
16058 instead of make_temp_name.
16060 2017-08-12 Paul Eggert <eggert@cs.ucla.edu>
16062 Document internal-use naming conventions
16064 * doc/lispref/functions.texi (Function Names):
16065 * doc/lispref/variables.texi (Tips for Defining):
16066 Document naming conventions for internal-use functions and vars.
16069 2017-08-12 Paul Eggert <eggert@cs.ucla.edu>
16071 Simplify re and document 'autoconf.sh all'
16073 * GNUmakefile (ALL_IF_GIT): Remove; no longer needed, now that
16074 ./autogen.sh defaults to "all". All uses removed.
16075 * README: Mention autoconf.sh's effect on Git configuration.
16077 2017-08-12 Paul Eggert <eggert@cs.ucla.edu>
16079 Default autogen.sh to 'all'
16081 This addresses a problem noted by RMS in:
16082 https://lists.gnu.org/r/emacs-devel/2017-08/msg00052.html
16083 * autogen.sh (do_git): Set to true if this script is invoked
16084 with no arguments and there is a .git subdirectory.
16086 2017-08-12 Paul Eggert <eggert@cs.ucla.edu>
16088 Adjust jka-compr to recent Tramp changes.
16090 * lisp/jka-compr.el (jka-compr-write-region):
16091 Two new args LOCKNAME and MUSTBENEW.
16093 2017-08-12 Eli Zaretskii <eliz@gnu.org>
16095 Improve doc strings of 2 functions in simple.el
16097 * lisp/simple.el (beginning-of-visual-line)
16098 (move-beginning-of-line): Doc fix. Reported by
16099 Justin Burkett <justin@burkett.cc>.
16101 2017-08-12 Eli Zaretskii <eliz@gnu.org>
16103 Fix completion on directory names on MS-DOS/MS-Windows
16105 * src/msdos.c (faccessat):
16106 * src/w32.c (faccessat): Support relative file names, and add D_OK
16107 to 'mode' if the argument is a directory. This unbreaks file-name
16108 completion when the completion result is a directory.
16110 2017-08-12 Michael Albinus <michael.albinus@gmx.de>
16112 Implement EXCL of write-region for Tramp
16114 * lisp/net/ange-ftp.el (ange-ftp-write-region):
16115 * lisp/net/tramp-adb.el (tramp-adb-handle-write-region)
16116 * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-write-region):
16117 * lisp/net/tramp-sh.el (tramp-sh-handle-write-region)
16118 * lisp/net/tramp-smb.el (tramp-smb-handle-write-region):
16119 Implement MUSTBENEW.
16121 * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file)
16122 * lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link)
16123 (tramp-sh-handle-add-name-to-file)
16124 (tramp-do-copy-or-rename-file)
16125 * lisp/net/tramp-smb.el (tramp-smb-handle-make-symbolic-link):
16126 Adapt error message for `file-already-exists'.
16129 * src/eval.c (call8): New function.
16131 * src/fileio.c (write_region): Pass also lockname and
16132 mustbenew to the file name handler.
16134 * test/lisp/net/tramp-tests.el (tramp-test10-write-region):
16135 Add tests for MUSTBENEW.
16137 2017-08-12 Eli Zaretskii <eliz@gnu.org>
16139 Adapt Proced display to display-line-numbers
16141 * lisp/proced.el (proced-header-line): Account for the width taken
16142 by display-line-numbers. (Bug#27895)
16144 2017-08-12 Eli Zaretskii <eliz@gnu.org>
16146 Adapt tabulated list when display-line-number is turned on
16148 * lisp/emacs-lisp/tabulated-list.el (tabulated-list-mode): Add
16149 a hook to revert the display when display-line-numbers is turned
16152 2017-08-12 Eli Zaretskii <eliz@gnu.org>
16154 Use Gnulib 'tempname' on MS-Windows
16156 * lib-src/ntlib.h (mkdir, open): Remove redefinitions. They are
16157 now in nt/inc/ms-w32.h.
16158 * lib-src/ntlib.c (sys_mkdir, sys_open): New functions.
16159 (mkostemp): Remove.
16161 * src/w32.c (mkostemp): Remove.
16162 (sys_mkdir): Accept a second (unused) argument.
16163 * src/fileio.c (Fmake_directory_internal): Remove the WINDOWSNT
16164 specific call to mkdir. (Bug#28023)
16166 * nt/inc/ms-w32.h (mkdir): Remove from "#ifdef emacs" and redefine
16167 to accept 2 arguments.
16168 (open): Remove from "#ifdef emacs".
16169 * nt/mingw-cfg.site (ac_cv_func_mkostemp): Remove.
16170 * nt/gnulib-cfg.mk (OMIT_GNULIB_MODULE_mkostemp)
16171 (OMIT_GNULIB_MODULE_tempname): Remove.
16173 2017-08-12 Alexander Gramiak <agrambot@gmail.com>
16175 Add new face 'header-line-highlight'
16177 * lisp/faces.el: Define the face.
16178 * lisp/emacs-lisp/tabulated-list.el (tabulated-list-init-header):
16179 * lisp/info.el (Info-fontify-node): Use the new face.
16180 * doc/emacs/display.texi (Standard Faces):
16181 * etc/NEWS: Document the new face. (Bug#28033)
16183 2017-08-12 Arash Esbati <arash@gnu.org>
16185 Make a case-sensitive match for strings
16187 * lisp/textmodes/reftex.el (reftex-typekey-check): Temporarily
16188 let-bind `case-fold-search' to nil in order to be case-sensitive
16189 when matching a string. (Bug#27518)
16191 2017-08-11 Stephen Berman <steve@rosalinde.fritz.box>
16193 Fix a minor todo-mode regression
16195 * lisp/calendar/todo-mode.el (todo-get-overlay): Wrap in
16196 save-excursion. This fixes a regression introduced by the fix
16197 for bug#27609, whereby trying to raise the priority of the
16198 first item or lower the priority of the last item, which
16199 should be noops, moves point to the item's start. Clarify
16202 * test/lisp/calendar/todo-mode-tests.el
16203 (todo-test-raise-lower-priority): Add test cases for trying to
16204 raise first item and lower last item.
16205 (with-todo-test): Clear abbreviated-home-dir, since we change HOME.
16206 (todo-test-toggle-item-header02): Remove ":expected-result
16207 :failed" and tests of point after todo-next-item, since the
16208 effect when using Todo mode is not reproducible in the test
16209 environment. Add commentary about this.
16211 2017-08-11 Paul Eggert <eggert@cs.ucla.edu>
16213 Improve performance for rename-file etc.
16215 Although this does not fix Bug#27986, it is a step forward.
16216 I plan to propose a more-significant patch later.
16217 * lisp/files.el (directory-name-p): Move from here ...
16218 * src/fileio.c (Fdirectory_name_p): ... to here.
16219 (directory_like, cp_like_target): New static functions.
16220 (Fcopy_file, Frename_file, Fadd_name_to_file)
16221 (Fmake_symbolic_link):
16222 Use them, to avoid directory-testing syscalls on file names that
16223 must be directories if they exist. Omit unnecessary
16224 initializations and CHECK_STRING calls.
16225 (Frename_file): Don't call file_name_case_insensitive_p
16226 twice on the same file. Compare both file names expanded, instead
16227 of the old name expanded and the new one unexpanded.
16229 2017-08-11 Noam Postavsky <npostavs@gmail.com>
16231 Respect buffer-local value of tags-table-list (Bug#27772)
16233 * lisp/progmodes/etags.el (visit-tags-table-buffer): Save the current
16234 buffer around the `tags-table-including' calls so as to get buffer
16235 local variables from the right buffer later.
16236 * test/lisp/progmodes/etags-tests.el (etags-visit-tags-table-buffer):
16238 * test/lisp/progmodes/etags-tests.el (etags-tests--test-dir): New
16240 (etags-bug-158, etags-bug-23164): Use it so that when running the test
16241 interactively, setting EMACS_TEST_DIRECTORY is not needed.
16243 2017-08-10 Tom Tromey <tom@tromey.com>
16245 Fix auto-filling regression
16248 * lisp/newcomment.el (comment-indent-new-line): Check
16249 comment-auto-fill-only-comments. Reverts earlier change.
16250 * lisp/simple.el (internal-auto-fill): Call auto-fill-function, not
16253 2017-08-09 Paul Eggert <eggert@cs.ucla.edu>
16258 2017-08-09 tempname: do not depend on secure_getenv
16259 2017-08-08 extensions: add _OPENBSD_SOURCE
16260 2017-08-06 manywarnings: Add support for C++
16261 2017-08-06 warnings, manywarnings: Add support for multiple languages
16262 * admin/merge-gnulib: Don't use m4/manywarnings-c++.m4.
16263 * lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
16264 * lib/secure_getenv.c, m4/secure_getenv.m4: Remove.
16265 * lib/tempname.c, m4/extensions.m4, m4/manywarnings.m4, m4/warnings.m4:
16268 2017-08-09 Eli Zaretskii <eliz@gnu.org>
16270 Fix crashing emacs-module tests on MS-Windows
16272 * src/w32fns.c (syms_of_w32fns) <w32-disable-abort-dialog>: New
16274 (emacs_abort): If w32-disable-abort-dialog is non-nil, abort right
16275 away, without displaying the Abort dialog, which waits for the user.
16277 * test/src/emacs-module-tests.el (module--test-assertion): Run the
16278 inferior Emacs with the w32 abort dialog disabled. Expect the
16279 status of the aborted Emacs sub-process to be 3 on MS-Windows and
16282 2017-08-09 Tino Calancha <tino.calancha@gmail.com>
16284 dired-delete-file: Dont't ask for empty dirs
16286 * lisp/dired.el (dired--yes-no-all-quit-help): New defun.
16287 (dired-delete-file): Use it. Dont't ask for empty dirs (Bug#27940).
16289 * test/lisp/dired-tests.el (dired-test-with-temp-dirs):
16290 New auxiliar macro.
16291 (dired-test-bug27940): Add new test.
16293 2017-08-09 Tino Calancha <tino.calancha@gmail.com>
16295 Ask files for deletion in buffer order: top first, botton later
16297 * lisp/dired.el (dired-do-flagged-delete, dired-do-delete):
16298 Call `nreverse' t invert the output of `dired-map-over-marks'.
16300 2017-08-09 Alexander Gramiak <agrambot@gmail.com>
16302 Use help-mode xrefs in describe-font
16304 * lisp/international/mule-diag.el (describe-font): Use help-setup-xref
16307 2017-08-09 Katsumi Yamaoka <yamaoka@jpl.org>
16309 Don't try to jump to non-existent part (bug#28013)
16311 * lisp/gnus/gnus-art.el (gnus-article-edit-part): Don't try to jump to
16312 the next part if there is the only one part in the article (bug#28013).
16314 2017-08-08 Mark Oteiza <mvoteiza@udel.edu>
16316 Replace some uses of eval
16318 There are a number of places where eval is used unnecessarily to get
16319 or set the value of a symbol.
16320 * lisp/calendar/calendar.el (diary-date-forms): Use default-value in
16322 * lisp/desktop.el (desktop-clear): Use set-default instead.
16323 * lisp/international/ogonek.el (ogonek-read-encoding): Use
16326 2017-08-08 Mark Oteiza <mvoteiza@udel.edu>
16328 Convert uses of looking-at in viper-ex to following-char
16330 * lisp/emulation/viper-ex.el (viper-get-ex-token): Bind
16331 (following-char) and use it in the subsequent cond's clauses.
16332 (viper-ex, ex-quit, viper-get-ex-file): Use following-char instead.
16333 Convert single branch ifs to when
16335 2017-08-08 Mark Oteiza <mvoteiza@udel.edu>
16337 Some cleanup in message.el
16339 * lisp/gnus/message.el (message-cross-post-insert-note):
16340 (message-strip-forbidden-properties): Mark unused args.
16341 (message-canlock-generate): Remove extinct variable
16342 sha1-maximum-internal-length.
16343 (message-make-mail-followup-to): Use loop's thereis clause.
16345 2017-08-08 Paul Eggert <eggert@cs.ucla.edu>
16347 Document make-temp-name magic limitations
16349 * doc/lispref/files.texi (Unique File Names):
16350 * src/fileio.c (Fmake_temp_name): Document that make-temp-name
16351 does not guarantee uniqueness on magic file names.
16353 2017-08-08 Tom Tromey <tom@tromey.com>
16355 Show number of errors in compilation-mode mode-line
16358 * lisp/progmodes/compile.el (compilation-num-errors-found): Provide
16360 (compilation-num-warnings-found, compilation-num-infos-found): New
16362 (compilation-mode-line-errors): New defconst.
16363 (compilation-face): Remove.
16364 (compilation-type, compilation--note-type): New functions.
16365 (compilation-parse-errors): Call compilation--note-type.
16366 (compilation-start): Include compilation-mode-line-errors in
16368 (compilation-setup): Initialize compilation-num-* variables to 0.
16369 (compilation-handle-exit): Include compilation-mode-line-errors in
16371 * doc/emacs/building.texi (Compilation): Document new feature.
16373 2017-08-08 Mark Oteiza <mvoteiza@udel.edu>
16375 Do some cleanup in mailcap.el
16377 * lisp/net/mailcap.el: Use lexical-binding.
16378 (mailcap--set-user-mime-data, mailcap-possible-viewers): Use pcase
16380 (mailcap-mime-data): Remove some entries for ancient functions.
16381 (mailcap-parse-mailcaps, mailcap-mime-info): Nix single-branch ifs.
16382 (mailcap-parse-mimetype-file): Just use append.
16383 (mailcap-command-p): Remove unused function.
16385 2017-08-08 Tino Calancha <tino.calancha@gmail.com>
16387 query-replace: Undo replacements performed with 'comma
16389 During a `query-replace', the char ',' replaces the character
16390 at point and doesn't move point; right after, the char 'u'
16391 must undo such replacement (Bug#27268).
16392 * lisp/replace.el (replace--push-stack):
16393 New macro extracted from `perform-replace'.
16394 (perform-replace): Use it.
16395 * test/lisp/replace-tests.el (query-replace--undo): Add test.
16397 2017-08-08 Noam Postavsky <npostavs@gmail.com>
16399 Don't define gv expanders in compiler's runtime (Bug#27016)
16401 This prevents definitions being compiled from leaking into the current
16402 Emacs doing the compilation.
16403 * lisp/emacs-lisp/gv.el (gv-define-expander): Use function-put instead
16404 of `put' with `eval-and-compile'.
16405 * test/lisp/emacs-lisp/gv-tests.el: New tests.
16407 2017-08-08 Noam Postavsky <npostavs@gmail.com>
16409 Let the cl-typep effects of defclass work during compilation (Bug#27718)
16411 * lisp/emacs-lisp/eieio.el (defclass): Use `define-symbol-prop'
16413 * test/lisp/emacs-lisp/eieio-tests/eieio-tests.el
16414 (eieio-tests--dummy-function): Remove.
16415 (eieio-test-25-slot-tests, eieio-test-23-inheritance-check): Don't
16416 expect to fail if compiled.
16418 2017-08-08 Stefan Monnier <monnier@IRO.UMontreal.CA>
16419 Noam Postavsky <npostavs@gmail.com>
16421 Let `define-symbol-prop' take effect during compilation
16423 * src/fns.c (syms_of_fns): New variable `overriding-plist-environment'.
16424 (Fget): Consult it.
16425 * lisp/emacs-lisp/bytecomp.el (byte-compile-close-variables): Let-bind
16427 (byte-compile-define-symbol-prop): New function, handles compilation
16428 of top-level `define-symbol-prop' and `function-put' calls by putting
16429 the symbol setting into `overriding-plist-environment'.
16431 2017-08-08 Gemini Lasswell <gazally@runbox.com>
16433 Add a test of handling of circular values to testcover-tests
16435 * test/lisp/emacs-lisp-testcover-resources/testcases.el
16436 (testcover-testcase-cyc1): New function.
16437 (testcover-tests-circular-lists-bug-24402): New test.
16439 2017-08-08 Noam Postavsky <npostavs@gmail.com>
16441 Don't error on circular values in testcover
16443 * lisp/emacs-lisp/testcover.el (testcover-after, testcover-1value):
16444 Consider circular lists to be non-equal instead of signaling error.
16446 2017-08-08 Alexander Gramiak <agrambot@gmail.com>
16448 Catch argument and macroexpansion errors in ert
16450 This kludge catches errors caused by evaluating arguments in ert's
16451 should, should-not, and should-error macros; it also catches
16452 macroexpansion errors inside of the above macros (Bug#24402).
16454 * lisp/emacs-lisp/ert.el: (ert--should-signal-hook): New function.
16455 (ert--expand-should-1): Catch macroexpansion errors.
16456 * test/lisp/emacs-lisp/ert-tests.el (ert-test-should-error-argument)
16457 (ert-test-should-error-macroexpansion): Tests for argument and
16460 2017-08-07 Reuben Thomas <rrt@sc3d.org>
16462 Revert "Add Enchant support to ispell.el (Bug#17742)"
16464 This reverts commit 7136e6723d87b51ae3089f5ceef6b14621bfaf87.
16466 2017-08-07 Reuben Thomas <rrt@sc3d.org>
16468 Revert "Add support for arguments in ALTERNATE_EDITOR to emacsclient"
16470 This reverts commit 28f1fe97daa13e13714e6c43c9a6fbb0c0e99a26.
16472 2017-08-07 Reuben Thomas <rrt@sc3d.org>
16474 Add support for arguments in ALTERNATE_EDITOR to emacsclient
16476 * lib-src/emacsclient.c (fail): Parse ALTERNATE_EDITOR, or
16477 corresponding command-line argument, into space-separated tokens.
16478 * etc/NEWS: Document.
16479 * test/lib-src/emacsclient-tests.el: Add a test.
16481 2017-08-07 Reuben Thomas <rrt@sc3d.org>
16483 Add Enchant support to ispell.el (Bug#17742)
16485 * lisp/textmodes/ispell.el (ispell-program-name): Add “enchant”.
16486 (ispell-really-enchant): Add variable.
16487 (ispell-check-version): If using Enchant, check it’s new enough (at
16488 least 1.6.1). (Like the ispell check, this is absolute: cannot work
16490 (ispell-enchant-dictionary-alist): Add variable.
16491 (ispell-find-enchant-dictionaries): Add function, based on
16492 ispell-find-aspell-dictionaries.
16493 (ispell-set-spellchecker-params): Allow dictionary auto-detection for
16494 Enchant, and call ispell-find-enchant-dictionaries to find them. Use
16495 old ispell name to locale mapping code for Enchant too.
16496 (ispell-send-replacement): Make it work with Enchant.
16498 2017-08-07 Reuben Thomas <rrt@sc3d.org>
16500 Allow async command output buffer to be shown only on output
16502 * lisp/simple.el (async-shell-command-display-buffer): Add
16504 (shell-command): Use the new defcustom to determine whether to show
16505 the buffer immediately, or add a process filter that shows it only
16506 when there is some output.
16507 * etc/NEWS: Document the new variable.
16508 * doc/emacs/misc.texi: Likewise.
16510 Thanks to Juri Linkov and Eli Zaretskii for advice and guidance.
16512 2017-08-07 Eli Zaretskii <eliz@gnu.org>
16514 Fix infinite recursion under prettify-symbols-mode and linum-mode
16516 * src/xdisp.c (get_overlay_strings_1)
16517 (handle_single_display_spec, push_prefix_prop): Invalidate the
16518 composition information before starting to iterate on a string.
16519 Otherwise we might think in set_iterator_to_next that we are
16520 delivering characters from a composition, and do all kinds of
16521 nonsensical things, like over-step the string end. (Bug#27761)
16523 2017-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
16525 * lisp/gnus/gnus-bcklg.el (gnus-backlog-request-article): Fix thinko.
16527 2017-08-07 Martin Rudalics <rudalics@gmx.at>
16529 Fix doc-string of `delete-other-windows'
16531 * lisp/window.el (delete-other-windows): Fix doc-string.
16533 2017-08-07 Paul Eggert <eggert@cs.ucla.edu>
16535 Fix a couple more make-temp-file races
16537 * lisp/files.el (basic-save-buffer-2, move-file-to-trash):
16538 Use make-temp-name, not make-temp-file with retry.
16539 (basic-save-buffer-2): Use condition-case, instead of
16540 unwind-protect with a success flag.
16542 2017-08-07 Noam Postavsky <npostavs@gmail.com>
16544 Merge null and without-null regexp alists (Bug#27840, Bug#27873)
16546 * lisp/progmodes/grep.el (grep-mode-font-lock-keywords): Allow for NUL
16547 characters following filename in grep context lines.
16548 (grep--regexp-alist-column, grep--regexp-alist-bin-matcher)
16549 (grep-with-null-regexp-alist, grep-fallback-regexp-alist): Remove.
16550 (grep-regexp-alist): Recombine their contents here.
16552 * lisp/cedet/semantic/symref/grep.el
16553 (semantic-symref-parse-tool-output-one-line):
16554 * lisp/progmodes/xref.el (xref-collect-matches): Use the variable
16555 `grep-regexp-alist' rather than the function.
16557 2017-08-07 Paul Eggert <eggert@cs.ucla.edu>
16559 Fix some crashes on self-modifying Elisp code
16561 Prompted by a problem report by Alex in:
16562 https://lists.gnu.org/r/emacs-devel/2017-08/msg00143.html
16563 * src/eval.c (For, Fprogn, Fsetq, FletX, eval_sub):
16564 Compute XCDR (x) near XCAR (x); although this doesn't fix any bugs,
16565 it is likely to run a bit faster with typical hardware caches.
16566 (Fif): Use Fcdr instead of XCDR, to avoid crashing on
16567 self-modifying S-expressions.
16568 (Fsetq, Flet, eval_sub): Count the number of arguments as we go
16569 instead of trusting an Flength prepass, to avoid problems when the
16570 code is self-modifying.
16571 (Fquote, Ffunction, Fdefvar, Fdefconst): Prefer !NILP to CONSP
16572 where either will do. This is mostly to document the fact that
16573 the value must be a proper list. It's also a tiny bit faster on
16574 typical machines nowadays.
16575 (Fdefconst, FletX): Prefer XCAR+XCDR to Fcar+Fcdr when either will do.
16576 (eval_sub): Check that the args are a list as opposed to some
16577 other object that has a length. This prevents e.g. (if . "string")
16578 from making Emacs dump core in some cases.
16579 * test/src/eval-tests.el (eval-tests--if-dot-string)
16580 (eval-tests--let-with-circular-defs, eval-tests--mutating-cond):
16583 2017-08-06 Eli Zaretskii <eliz@gnu.org>
16585 * etc/tutorials/TUTORIAL.he: Update to match recent changes to TUTORIAL.
16587 2017-08-06 Tino Calancha <tino.calancha@gmail.com>
16589 Minor tweak in a dired test
16591 * test/lisp/dired-tests.el (dired-test-bug27968):
16592 Ensure the new header has different length than the original one.
16594 2017-08-06 Tino Calancha <tino.calancha@gmail.com>
16596 dired-delete-file: Do not TAB complete the user answer
16598 This action might delete directories containing valuable information.
16599 Before previous commit, we prompted users with `yes-or-no-p'
16600 which doesn't TAB complete the user answer. Let's play safe and
16601 keep requiring full answers.
16602 * lisp/dired.el (dired-delete-file): Use `read-string'
16603 instead of `completing-read' to read the user answers.
16605 2017-08-06 Tino Calancha <tino.calancha@gmail.com>
16607 dired-do-delete: Allow to delete dirs recursively without prompts
16609 * lisp/dired.el (dired-delete-file): Accept 2 additional answers:
16610 'all', to delete all directories recursively and no prompt anymore.
16611 'quit', to cancel directory deletions (Bug#27940).
16612 Show help message when user inputs 'help'.
16613 (dired-do-flagged-delete): Bind locally dired-recursive-deletes
16614 so that we can overwrite its global value.
16615 Wrapp the loop within a catch '--delete-cancel to catch when
16616 the user abort the directtry deletion.
16617 * doc/emacs/dired.texi (Dired Deletion): Update manual.
16618 * etc/NEWS (Changes in Specialized Modes and Packages in Emacs 26.1):
16619 Announce this change.
16621 2017-08-06 Paul Eggert <eggert@cs.ucla.edu>
16623 Fix a couple of make-temp-file races
16625 * lisp/emacs-lisp/autoload.el (autoload--save-buffer):
16626 * lisp/emacs-lisp/bytecomp.el (byte-compile-file):
16627 Use make-temp-file, not make-temp-name, to avoid an unlikely race
16628 that could lose data. Remove the deletion hook as quickly as
16629 possible after the file is renamed; though a race still remains
16630 here, it is smaller than before.
16632 2017-08-06 Tino Calancha <tino.calancha@gmail.com>
16634 Dired w/ eshell-ls: Handle shell wildcards in file name
16636 * lisp/eshell/em-ls.el (eshell-ls--insert-directory):
16637 Use eshell-extended-glob (Bug#27844).
16638 * test/lisp/dired-tests.el (dired-test-bug27844): Add test.
16640 2017-08-06 Tino Calancha <tino.calancha@gmail.com>
16642 dired-revert: save line numbers instead of positions
16644 Positions might change if the length of one dired header line
16645 changes; this happen, for instance, if we add new files.
16646 Instead, line numbers are invariant under shrinks/enlargements
16647 of the file header.
16648 https://lists.gnu.org/r/emacs-devel/2017-07/msg01092.html
16649 * lisp/dired.el (dired-save-positions): Save the line numbers at point.
16650 (dired-restore-positions): Use forward-line to restore the original
16651 position (Bug#27968).
16652 * test/lisp/dired-tests.el (dired-test-bug27968): Add test.
16654 2017-08-06 Tom Tromey <tom@tromey.com>
16656 Respect comment-auto-fill-only-comments
16658 Respect comment-auto-fill-only-comments when auto-filling and a
16659 comment syntax is defined.
16661 * lisp/newcomment.el (comment-indent-new-line): Do not check
16662 comment-auto-fill-only-comments.
16663 * lisp/simple.el (internal-auto-fill): New defun.
16664 * src/cmds.c (internal_self_insert): Call Qinternal_auto_fill, not
16665 auto_fill_function.
16666 (syms_of_cmds): Define Qinternal_auto_fill.
16668 2017-08-05 Richard Stallman <rms@gnu.org>
16670 * etc/tutorials/TUTORIAL: Update.
16672 2017-08-05 Eli Zaretskii <eliz@gnu.org>
16674 Unify CNS11643-15 in a way that avoids segfaults
16676 * lisp/international/mule-conf.el: Redo unification of
16677 cns11643-15. (Bug#27964)
16678 (chinese-cns11643-15): Add the missing :unify-map attribute.
16680 2017-08-05 Eli Zaretskii <eliz@gnu.org>
16682 Avoid segfaults while producing Punct.el
16684 * lisp/international/mule-conf.el: Undo unification of
16685 cns11643-15, as that causes segfaults during bootstrap.
16688 2017-08-05 Eli Zaretskii <eliz@gnu.org>
16690 Make header line in some modes be sensitive to display-line-numbers
16692 * lisp/ruler-mode.el (ruler-mode-ruler, ruler-mode-window-col):
16693 * lisp/emacs-lisp/tabulated-list.el (tabulated-list-init-header)
16694 (tabulated-list-print-entry): Account for the width taken by
16695 line-number display. (Bug#27895)
16697 2017-08-05 Eli Zaretskii <eliz@gnu.org>
16699 Fix a bug in 'generate-new-buffer-name'
16701 * src/buffer.c (Fgenerate_new_buffer_name): Test IGNORE for being
16702 nil before calling string-equal, since the latter will compare
16703 "nil and 'nil' as equal. (Bug#27966)
16705 * test/src/buffer-tests.el
16706 (test-generate-new-buffer-name-bug27966): New test.
16708 2017-08-05 Eli Zaretskii <eliz@gnu.org>
16712 * lisp/international/mule-conf.el (chinese-cns11643-15): Add a
16713 unify-charset form for it. (Bug#27964)
16715 2017-08-05 Eli Zaretskii <eliz@gnu.org>
16717 Improve test of error message when Emacs cannot be suspended
16719 * lisp/term/x-win.el (x-win-suspend-error):
16720 * lisp/term/ns-win.el (ns-suspend-error): Improve the error
16721 message. (Bug#27901)
16723 2017-08-05 Alexander Gramiak <agrambot@gmail.com>
16725 Make "C-h o" show faces as well as variables
16727 * lisp/faces.el (describe-face): Return (buffer-string). Reorder
16728 the placement of variables/faces in describe-symbol, to put more
16729 emphasis on the variable entry rather than the face. (Bug#24543)
16731 2017-08-05 Eli Zaretskii <eliz@gnu.org>
16733 Fix files-tests.el for MS-Windows
16735 * test/lisp/files-tests.el
16736 (files-tests--file-name-non-special--subprocess): Fix this test
16739 2017-08-05 Eli Zaretskii <eliz@gnu.org>
16741 Improve documentation of 'region-extract-function'
16743 * lisp/simple.el (region-extract-function): Rename the argument to
16744 METHOD. Doc fix. (Bug#27927)
16746 2017-08-05 Paul Eggert <eggert@cs.ucla.edu>
16751 2017-08-04 manywarnings: port to 64-bit GCC builds of Emacs
16752 2017-08-01 manywarnings: port to 32-bit GCC bug
16753 * lib/gnulib.mk.in: Regenerate.
16754 * m4/manywarnings.m4: Copy from gnulib.
16756 2017-08-05 Paul Eggert <eggert@cs.ucla.edu>
16758 Port recent rename changes to Ubuntu 14.04
16760 * src/sysdep.c (renameat_noreplace) [!RENAME_NOREPLACE]:
16761 Don’t use syscall. Problem reported by Tino Calancha (Bug#27946#10).
16763 2017-08-05 Tino Calancha <tino.calancha@gmail.com>
16765 insert-directory-wildcard-in-dir-p: Tweak regexp
16767 This function must return non-nil for a wildcard like '/*/*.txt'.
16768 * lisp/files.el (insert-directory-wildcard-in-dir-p): Adjust regexp.
16769 * test/lisp/files-tests.el (files-tests--insert-directory-wildcard-in-dir-p):
16772 2017-08-04 Toby S. Cubitt <tsc25@cantab.net>
16774 Implement iterator generator for avl-trees.
16776 * lisp/emacs-lisp/avl-tree.el (avl-tree-iter): New iter-defun.
16778 2017-08-04 Tino Calancha <tino.calancha@gmail.com>
16780 ls-lisp: Drop eshell dependencies
16782 Use 'file-expand-wildcards' instead of 'eshell-extended-glob' to
16783 expand the wildcards.
16784 Suggested by Fabrice Popineau in:
16785 https://lists.gnu.org/r/emacs-devel/2017-08/msg00108.html
16786 * lisp/ls-lisp.el (ls-lisp--dired): Use file-expand-wildcards.
16788 2017-08-04 Tino Calancha <tino.calancha@gmail.com>
16790 Fix dired-test-bug27631 on MS-Windows
16792 Skip the test if Dired use 'ls' emulation with lisp. The same
16793 bug is tested in their respective test suites: ls-lisp-tests.el
16794 and em-ls-tests.el.
16795 * test/lisp/dired-tests.el (dired-test-bug27631): Skip test if 'ls-lisp'
16796 or 'eshell' features are enabled.
16798 2017-08-04 Eli Zaretskii <eliz@gnu.org>
16800 Fix dired-test-bug25609 on MS-Windows
16802 * test/lisp/dired-tests.el (dired-test-bug25609): On MS-Windows,
16803 pass temporary files through file-truename, to avoid bogus
16804 failures due to file-name comparison as strings.
16806 2017-08-04 Tino Calancha <tino.calancha@gmail.com>
16808 Fix 2 tests that fail in MS-Windows
16810 https://lists.gnu.org/r/emacs-devel/2017-08/msg00018.html
16811 * test/lisp/vc/ediff-ptch-tests.el (ediff-ptch-test-bug26084):
16812 Add comments to explain the test logic.
16813 Pass '--binary' option to 'patch' program in windows environments.
16814 Check explicitly that a backup is created before compare file contents.
16816 * test/lisp/dired-tests.el (dired-test-bug25609):
16817 Declare variable 'dired-dwim-target' right before the test.
16818 Add comments to explain the test logic.
16819 Ensure, before test the bug condition, that we are displaying the
16820 2 dired buffers created in this test, and no other dired buffer
16823 2017-08-04 Stefan Monnier <monnier@iro.umontreal.ca>
16825 * lisp/shell.el (explicit-shell-file-name): Mention shell-file-name
16827 * lisp/files.el (insert-directory): Don't hardcode "-c".
16828 * lisp/term.el (term, ansi-term): Use shell-file-name.
16830 2017-08-04 Paul Eggert <eggert@cs.ucla.edu>
16832 Fix version numbers for some GnuTLS features
16834 Problem reported by Glenn Morris (Bug#27708#58).
16835 * src/gnutls.c (HAVE_GNUTLS_X509_SYSTEM_TRUST):
16836 New macro. Use it instead of low-level version number checks.
16837 (HAVE_GNUTLS_AEAD): Move here from gnutls.h, and rename from
16838 HAVE_GNUTLS3_AEAD. All uses changed. Indent preprocessor lines.
16839 * src/gnutls.h (HAVE_GNUTLS3_CIPHER, HAVE_GNUTLS3_DIGEST)
16840 (HAVE_GNUTLS3_HMAC): Remove, since these were available
16841 before GnuTLS 3.0.0 and the code checks them only if HAVE_GNUTLS3
16842 is defined. Remove all uses; this simplifies the code a bit.
16844 2017-08-04 Paul Eggert <eggert@cs.ucla.edu>
16846 Port recent rename changes to RHEL 7 + NFS
16848 Problem reported by Ted Zlatanov in:
16849 https://lists.gnu.org/r/emacs-devel/2017-08/msg00082.html
16850 * src/fileio.c (Frename_file): On RHEL 7 + NFS, renameat2 can fail
16851 with errno == EINVAL when it is not supported. So treat that case
16852 like errno == ENOSYS. Also, when ok_if_already_exists is neither
16853 nil nor an integer, just call plain rename; this avoids an extra
16854 syscall to renameat2 when the latter fails with errno == EINVAL or
16857 2017-08-03 Paul Eggert <eggert@cs.ucla.edu>
16859 Port GnuTLS usage to Ubuntu 16.04.2 LTS
16861 * src/gnutls.h (HAVE_GNUTLS3_AEAD): Define only if GnuTLS 3.5.1 or
16862 later, as opposed to the old 3.4.0 or later.
16864 2017-08-03 Paul Eggert <eggert@cs.ucla.edu>
16866 Simplify configuration of HAVE_GNUTLS3 etc.
16868 There's only one GnuTLS, so configuring these symbols at
16869 'configure' time is overkill. Simplify things by moving their
16870 configuration to src/gnutls.h (Bug#27708).
16871 * configure.ac (HAVE_GNUTLS3, HAVE_GNUTLS3_HMAC, HAVE_GNUTLS3_AEAD)
16872 (HAVE_GNUTLS3_CIPHER, HAVE_GNUTLS3_DIGEST): Move these definitions
16874 * src/gnutls.h: ... to here, and simplify.
16876 2017-08-03 Paul Eggert <eggert@cs.ucla.edu>
16878 Default to --with-mailutils if it is installed
16880 * configure.ac (with_mailutils): Default to 'yes' if GNU Mailutils
16882 https://lists.gnu.org/r/emacs-devel/2017-08/msg00054.html
16884 2017-08-02 Paul Eggert <eggert@cs.ucla.edu>
16886 Clarify when autogen.sh should run only autoconf
16888 * Makefile.in (configure, bootstrap): Run ‘./autogen.sh autoconf’,
16889 not plain ‘./autogen.sh’, to make it clear that only
16890 autoconf-related tools should be run here.
16892 2017-08-02 Toon Claes <toon@iotcl.com>
16894 .gitlab-ci.yml: Use stretch Debian image instead of unstable
16896 2017-08-02 Stephen Berman <stephen.berman@gmx.net>
16898 Add debugging messages to a Dired test
16900 * test/lisp/dired-tests.el (dired-test-bug27243-01): Log
16901 positions saved and restored by dired-revert to try and find
16902 out why the test fails on Hydra.
16904 2017-08-02 Tino Calancha <tino.calancha@gmail.com>
16906 ls-lisp: Autoload call instead of cookie
16908 * lisp/ls-lisp.el (eshell-extended-glob): autoload call instead of cookie.
16910 2017-08-02 Paul Eggert <eggert@cs.ucla.edu>
16912 When renaming a file, ask only if EEXIST or ENOSYS
16914 * src/fileio.c (Frename_file): Avoid calling Ffile_directory_p
16915 more than once on FILE. Use renameat_noreplace, so that we can
16916 ask the user (and unlink and retry) only if this fails with errno
16917 == EEXIST or ENOSYS. This avoids the need to ask the user for
16918 permission to do an operation that will fail anyway. Simplify
16919 computation of ok_if_already_exists for subsidiary functions.
16920 * src/filelock.c (rename_lock_file): Prefer renameat_noreplace
16921 if it works, as this avoids the need to link and unlink.
16922 * src/lisp.h (renameat_noreplace): New decl.
16923 * src/sysdep.c [HAVE_LINUX_FS_H]: Include linux/fs.h and sys/syscall.h.
16924 (renameat_noreplace): New function.
16926 2017-08-02 Paul Eggert <eggert@cs.ucla.edu>
16928 When creating a link, ask only if EEXIST
16930 * src/fileio.c (Fadd_name_to_file, Fmake_symbolic_link):
16931 Ask the user (and unlink and retry) only if link creation fails
16932 with errno == EEXIST. This avoids the need to ask the user for
16933 permission to do an operation that will fail anyway.
16935 2017-08-02 Tino Calancha <tino.calancha@gmail.com>
16937 dired-align-file: Inherit text properties in inserted spaces
16939 * lisp/dired.el (dired-align-file): Inherit text
16940 properties in inserted spaces (Bug#27899).
16941 * test/lisp/dired-tests.el (dired-test-bug27899): Add test.
16943 2017-08-02 Tino Calancha <tino.calancha@gmail.com>
16945 Don't assume /bin/sh as the 'sh' location in the local host
16947 * lisp/dired.el (dired-insert-directory): Use executable-find in
16950 2017-08-02 Tino Calancha <tino.calancha@gmail.com>
16952 Move dired tests using ls emulation to different files
16955 https://lists.gnu.org/r/emacs-devel/2017-08/msg00018.html
16956 * test/lisp/dired-tests.el (dired-test-bug27693)
16957 (dired-test-bug27762, dired-test-bug27817)
16958 (dired-test-bug27631, dired-test-bug27843): Delete those
16959 parts requiring either ls-lisp or eshell-ls.
16961 * test/lisp/ls-lisp-tests.el (ls-lisp-test-bug27762)
16962 (ls-lisp-test-bug27631, ls-lisp-test-bug27693):
16963 Add all dired tests using ls-lisp here.
16965 * test/lisp/eshell/em-ls-tests.el (em-ls-test-bug27631)
16966 (em-ls-test-bug27817, em-ls-test-bug27843): New test file. Add
16967 all dired tests using eshell-ls here.
16969 2017-08-02 Tino Calancha <tino.calancha@gmail.com>
16971 * test/lisp/ls-lisp-tests.el: Rename it from ls-lisp.el
16973 2017-08-02 Katsumi Yamaoka <yamaoka@jpl.org>
16975 * lisp/gnus/mm-uu.el (mm-uu-org-src-code-block-extract):
16976 Say the handle is already decoded.
16977 cf. <yw.87lgnh5cfv.fsf@alex.chromebook> in the info-gnus-english list.
16979 2017-08-02 Paul Eggert <eggert@cs.ucla.edu>
16981 Don’t worry about unlink if errno == ENOENT
16983 * src/fileio.c (Fdelete_file):
16984 * src/keyboard.c (Fopen_dribble_file): Do not report failure to
16985 remove a file if unlink fails with errno == ENOENT. This can
16986 happen even if Emacs is the only program removing the file, in
16987 case an NFS cache overflows. The file does not exist if errno ==
16988 ENOENT, so it is OK to proceed.
16990 2017-08-01 Tino Calancha <tino.calancha@gmail.com>
16992 Fix misalignment in Dired when dired-directory is a cons
16994 * lisp/dired.el (dired--need-align-p, dired--align-all-files):
16996 (dired-internal-noselect): Call dired--align-all-files when
16997 dired-directory is a cons (Bug#27762).
16998 * test/lisp/dired-tests.el (dired-test-bug27762): Test should pass.
17000 2017-08-01 Eli Zaretskii <eliz@gnu.org>
17002 Fix some dired-tests.el on MS-Windows
17004 * test/lisp/dired-tests.el (dired-test-bug27243-01)
17005 (dired-test-bug27243-02): On MS-Windows, pass test-dir through
17006 file-truename, to avoid bogus failures due to file-name comparison
17009 2017-08-01 Tino Calancha <tino.calancha@gmail.com>
17011 Insert subdir content if dir-or-list is a string w/o wildcards
17013 * lisp/eshell/em-ls.el (eshell-ls--insert-directory):
17014 Append '("-d") into 'eshell-ls-dired-initial-args'
17015 if 'dired-directory' is a cons or there are wildcars (Bug#27843).
17016 * test/lisp/dired-tests.el (dired-test-bug27843): Add test.
17018 2017-08-01 Stephen Berman <stephen.berman@gmx.net>
17020 Update todo-mode defcustoms in a less hideous way
17022 * lisp/calendar/todo-mode.el (todo-reevaluate-filelist-defcustoms)
17023 (todo-reevaluate-default-file-defcustom)
17024 (todo-reevaluate-category-completions-files-defcustom)
17025 (todo-reevaluate-filter-files-defcustom): Delete these functions.
17026 (todo-update-filelist-defcustoms): New function. This replaces
17027 todo-reevaluate-filelist-defcustoms, using the 'custom-type'
17028 property instead of re-evaluating the defcustoms.
17029 (todo-add-file, todo-rename-file, todo-delete-file)
17030 (todo-delete-category, todo-move-category)
17031 (todo-convert-legacy-files, todo-check-file): Replace call of
17032 todo-reevaluate-filelist-defcustoms by
17033 todo-update-filelist-defcustoms.
17034 (todo-show, todo-category-completions): Replace call of
17035 todo-reevaluate-* function by use of 'custom-type' property.
17037 2017-08-01 Tino Calancha <tino.calancha@gmail.com>
17039 Add more should form calls in a failing dired test
17041 Some dired tests fail intermittently in hydra. Add few
17042 more should form calls for debugging.
17044 https://lists.gnu.org/r/emacs-devel/2017-07/msg01092.html
17045 * test/lisp/dired-tests.el (dired-test-bug27243-01): Add few more should
17046 forms for debugging.
17048 2017-08-01 Michael Albinus <michael.albinus@gmx.de>
17050 Follow SAUNA recommendations for display-line-numbers-type
17052 * lisp/display-line-numbers.el (display-line-numbers-type): Do not autoload.
17054 * lisp/menu-bar.el (display-line-numbers-type): Declare.
17056 2017-07-31 Paul Eggert <eggert@cs.ucla.edu>
17058 Avoid most stat calls when completing file names
17060 * admin/merge-gnulib (GNULIB_MODULES): Add d-type.
17061 * lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
17062 * m4/d-type.m4: New file, copied from gnulib.
17063 * src/dired.c (DT_UNKNOWN, DT_DIR, DT_LINK)
17064 [!HAVE_STRUCT_DIRENT_D_TYPE]: New constants.
17065 (dirent_type): New function.
17066 (file_name_completion): Use it, to avoid unnecessary calls to
17067 stat-like functions on GNU/Linux and other platforms with d_type.
17068 (file_name_completion_stat): Just follow the link; there is no
17069 need to try first with AT_SYMLINK_NOFOLLOW since the directory
17070 entry was already checked to exist.
17072 2017-07-31 Tino Calancha <tino.calancha@gmail.com>
17074 dired-tests: Unload tested features after test them
17076 Some tests are for Dired with ls-lisp or eshell-ls.
17077 Requiring these features add an advice on `dired' and
17078 might affect other tests.
17079 Do not require these features at the top of the file; require
17080 then inside the tests and unload then at the end.
17081 * test/lisp/dired-tests.el (dired-test-bug27693)
17082 (dired-test-bug7131, dired-test-bug27817, dired-test-bug27631):
17083 require ls-lisp and/or eshell-ls inside the test; unload the
17084 features at the end.
17086 2017-07-31 Michael Albinus <michael.albinus@gmx.de>
17088 Small adaptions for directory wildcards
17090 * lisp/dired.el (dired-insert-directory): Remove "--dired"
17091 when there are wildcards, and the directory is remote.
17093 * test/lisp/net/tramp-tests.el (tramp--test-make-temp-name):
17095 (tramp-test17-dired-with-wildcards): Skip for all methods but
17096 those from tamp-sh.p.
17098 2017-07-31 Tino Calancha <tino.calancha@gmail.com>
17100 * lisp/dired.el (dired-trivial-filenames): Use \` and \' to match
17103 2017-07-31 Paul Eggert <eggert@cs.ucla.edu>
17108 2017-07-30 Don't interpret EOVERFLOW to mean nonexistence
17109 * lib/tempname.c: Copy from gnulib.
17111 2017-07-30 Tino Calancha <tino.calancha@gmail.com>
17113 ls-lisp: Do not require em-glob at top of the file
17115 Require em-glob inside 'ls-lisp--dired'. This is necessary to
17116 not break the Emacs build.
17117 See following thread for details:
17118 https://lists.gnu.org/r/emacs-devel/2017-07/msg01083.html
17119 * lisp/ls-lisp.el (dired-goto-next-file)
17120 (dired-read-dir-and-switches, eshell-extended-glob):
17121 Add function declarations.
17122 * lisp/eshell/em-ls.el (dired-goto-next-file): Fix function declaration.
17124 2017-07-30 Michael Albinus <michael.albinus@gmx.de>
17126 * lisp/dired.el (dired-insert-directory): Move `file-remote-p' check up.
17128 * test/lisp/net/tramp-tests.el (tramp-test17-dired-with-wildcards): New test.
17130 2017-07-30 Simen Heggestøyl <simenheg@gmail.com>
17132 Change default CSS property face
17134 * lisp/textmodes/css-mode.el (css-property): Inherit from
17135 `font-lock-keyword-face' instead of `font-lock-variable-name-face' to
17136 distinguish CSS properties from variables.
17138 2017-07-30 Tino Calancha <tino.calancha@gmail.com>
17140 Dired: Handle posix wildcards in directory part
17142 Allow Dired to handle calls like
17143 \(dired \"~/foo/*/*.el\"), that is, with wildcards within
17144 the directory part of the file argument (Bug#27631).
17145 * lisp/files.el (insert-directory-wildcard-in-dir-p): New predicate.
17146 (insert-directory-clean): New defun extracted from insert-directory.
17148 * lisp/dired.el (dired-internal-noselect)
17149 (dired-insert-directory): Use the new predicate; when it's true,
17150 handle the directory wildcards with a shell call.
17151 * lisp/eshell/em-ls.el (eshell-ls-use-in-dired): Add/remove both advices.
17152 (eshell-ls-unload-hook): New defun. Use it in
17153 eshell-ls-unload-hook instead of an anonymous function.
17155 * lisp/ls-lisp.el (ls-lisp--dired):
17156 Advice dired to handle wildcards in the directory part with both
17157 eshell-ls and ls-lisp.
17158 * etc/NEWS: Announce it.
17159 * doc/emacs/dired.texi (Dired Enter): Update manual.
17160 * test/lisp/dired-tests.el (dired-test-bug27631): Add test.
17162 2017-07-29 Tino Calancha <tino.calancha@gmail.com>
17164 * lisp/find-lisp.el: Enable lexical binding
17166 * lisp/find-dired.el: Enable lexical binding
17168 2017-07-29 Mark Oteiza <mvoteiza@udel.edu>
17170 * lisp/kmacro.el: Use lexical binding.
17172 2017-07-29 Mark Oteiza <mvoteiza@udel.edu>
17174 Use lexical-binding in dired-aux.el
17176 * lisp/dired.el: Use lexical binding.
17177 (dired-do-shell-command): Remove unused bindings.
17179 2017-07-29 Mark Oteiza <mvoteiza@udel.edu>
17181 * lisp/ido.el: Use lexical binding.
17183 * lisp/whitespace.el: Use lexical binding.
17185 2017-07-29 Stephen Berman <stephen.berman@gmx.net>
17187 artist.el: Avoid error with keyboard command invocation
17189 * lisp/textmodes/artist.el (artist-mouse-choose-operation):
17190 Call x-popup-menu with t instead of last-nonmenu-event as the
17191 value of the position argument; this allows invoking the
17192 command from the keyboard without raising an error (bug#27819).
17194 2017-07-29 Stephen Berman <stephen.berman@gmx.net>
17196 Preserve point under 'dired-auto-revert-buffer' (third case)
17198 * lisp/files.el (find-file): Use pop-to-buffer-same-window
17199 instead of switch-to-buffer. This preserves Dired window
17200 point when dired-auto-revert-buffer is non-nil. (Bug#27243)
17202 * test/lisp/dired-tests.el (dired-test-bug27243-01)
17203 (dired-test-bug27243-02, dired-test-bug27243-03): New tests.
17204 The first two replace a previous test that combined them; that
17205 test intermittently fails in the Hydra build system, so maybe
17206 separating the two cases will help locate the point of
17207 failure. The third test involves find-file but is here
17208 because it, like the others, is testing the effect of
17209 dired-auto-revert-buffer.
17211 2017-07-29 Allen Li <vianchielfaura@gmail.com> (tiny change)
17213 Do not unset user key remaps in dired-x
17215 * lisp/dired-x.el (dired-x-bind-find-file): Don't map any keys if user
17216 sets dired-x-hands-off-my-keys. (Bug#27828)
17218 2017-07-29 Eli Zaretskii <eliz@gnu.org>
17220 Improve documentation of 'occur'
17222 * doc/emacs/search.texi (Other Repeating Search):
17223 * lisp/replace.el (occur): Make the documentation of 'occur' be
17224 more accurate when matches overlap. (Bug#27818)
17226 2017-07-29 Eli Zaretskii <eliz@gnu.org>
17228 Minor copyedits of comments in faces.el
17230 * lisp/faces.el (face-font-family-alternatives): More info about
17231 requirements from "Monospace Serif".
17233 2017-07-29 Paul Eggert <eggert@cs.ucla.edu>
17235 Do not worry about paxctl on newer NetBSD
17237 Problem reported privately by Thomas Klausner.
17238 * configure.ac (emacs_uname_r): New var. Use it to avoid paxctl
17239 on newer NetBSD platforms, where it is not needed. Also use it to
17240 simplify Cygwin diagnostic.
17242 2017-07-29 Eli Zaretskii <eliz@gnu.org>
17244 Clarify documentation of ':inherit' face attribute
17246 * doc/lispref/display.texi (Face Attributes): Document the special
17247 treatment of 'unspecified' in the ':inherit' attribute.
17249 2017-07-28 Stefan Monnier <monnier@iro.umontreal.ca>
17251 * lisp/password-cache.el (password-data): Use a hash-table
17253 * lisp/auth-source.el (auth-source-magic): Remove.
17254 (auth-source-forget+, auth-source-forget-all-cached): Adjust to new
17255 format of password-data.
17256 (auth-source-format-cache-entry): Just use a cons.
17258 (password-cache-remove, password-cache-add, password-reset)
17259 (password-read-from-cache, password-in-cache-p): Adjust accordingly.
17263 2017-07-28 Stefan Monnier <monnier@iro.umontreal.ca>
17265 * lisp/subr.el (define-symbol-prop): New function
17267 (symbol-file): Make it find symbol property definitions.
17269 * lisp/emacs-lisp/pcase.el (pcase-defmacro):
17270 * lisp/emacs-lisp/ert.el (ert-set-test): Use it instead of `put'.
17271 (ert-describe-test): Adjust call to symbol-file accordingly.
17273 2017-07-28 Stefan Monnier <monnier@iro.umontreal.ca>
17275 * lisp/subr.el (method-files): Move function to cl-generic.el
17277 * lisp/emacs-lisp/cl-generic.el (cl-generic-p): New function.
17278 (cl--generic-method-files): New function, moved from subr.el.
17279 * lisp/emacs-lisp/edebug.el (edebug-instrument-function): Use them.
17280 * test/lisp/emacs-lisp/cl-generic-tests.el:
17281 * test/lisp/subr-tests.el: Move and adjust method-files tests accordingly.
17283 2017-07-28 Eli Zaretskii <eliz@gnu.org>
17285 Preserve this-command-keys across recursive-edit invocations
17287 * src/minibuf.c (read_minibuf, read_minibuf_unwind): Save and
17288 restore this-command-keys, to preserve it across recursive-edit.
17291 2017-07-28 Eli Zaretskii <eliz@gnu.org>
17293 Improve doc string of 'locate-dominating-file'
17295 * lisp/files.el (locate-dominating-file): Doc fix. (Bug#27798)
17297 2017-07-28 Drew Adams <drew.adams@oracle.com>
17299 New commands 'apropos-local-variable', 'apropos-local-value'
17301 * lisp/apropos.el (apropos-local-variable, apropos-local-value):
17302 New functions. (Bug#27424)
17304 * doc/emacs/help.texi (Apropos): Document 'apropos-local-variable'
17305 and 'apropos-local-value'.
17306 * etc/NEWS: Mention the new commands.
17308 2017-07-28 Stefan Monnier <monnier@iro.umontreal.ca>
17310 * lisp/loadhist.el (unload-feature): Remove ad-hoc ELP code
17312 * lisp/emacs-lisp/elp.el (loadhist-unload-element): Un-instrument functions.
17314 2017-07-27 Alan Mackenzie <acm@muc.de>
17316 Fix C++ class initializers not always being fontified at mode start.
17318 The problem here happened when an "outer list" of declarations moved beyond an
17319 "inner list" containing class initializers. These weren't being checked for
17322 Also, fix places in c-get-fontification-context where point is undefined.
17324 * lisp/progmodes/cc-fonts.el (c-get-fontification-context): when argument
17325 not-front-decl is set, test for class initializers. Also, anchor point in
17326 places where it is moved and is otherwise undefined.
17328 2017-07-27 Alan Mackenzie <acm@muc.de>
17330 Fix variables in C++ "for" statement not always being fontified.
17332 The error happened when there was a comma inside template delimiters.
17334 * lisp/progmodes/cc-fonts.el (c-get-fontification-context): In "for"
17335 statements, recognize template delimiters containing "," and "&".
17337 2017-07-27 Michael Albinus <michael.albinus@gmx.de>
17339 Add watchdog process to tramp-test36-asynchronous-requests
17341 * test/lisp/net/tramp-tests.el (tramp--test-timeout-handler):
17343 (tramp-test36-asynchronous-requests): Use a watchdog process,
17344 listening for SIGUSR1.
17346 2017-07-27 Alan Mackenzie <acm@muc.de>
17348 CC Mode: Fix declarator being cut off from terminator by end of jit-lock chunk
17350 If a declarator is so cut off, extend the fontification chunk to include it.
17352 * lisp/progmodes/cc-mode.el (c-fl-decl-end): New function.
17353 (c-change-expand-fl-region, c-context-expand-fl-region): Use the new function.
17355 2017-07-27 Stefan Monnier <monnier@iro.umontreal.ca>
17357 * lisp/vc/smerge-mode.el: Avoid N² blow up in degenerate cases
17359 (smerge--refine-long-words): New var.
17360 (smerge--refine-chopup-region): Use it.
17362 2017-07-27 Stefan Monnier <monnier@iro.umontreal.ca>
17364 * lisp/url/url-cookie.el: Use lexical-binding
17366 (url-cookie-host-can-set-p): Remove unused var `last'.
17367 Use string-suffix-p.
17368 (url-cookie-list): De morgan.
17369 (url-cookie-quit): Remove.
17370 (url-cookie-mode): Inherit from special-mode.
17371 (url-cookie-mode-map): Simplify accordingly.
17373 2017-07-27 Stefan Monnier <monnier@iro.umontreal.ca>
17375 * lisp/calendar/todo-mode.el (todo-print-buffer-function): Rework docstring.
17377 * lisp/ruler-mode.el (ruler-mode-ruler): Document problem.
17379 2017-07-27 Stefan Monnier <monnier@iro.umontreal.ca>
17381 * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method):
17383 Record this as the function's definition site if it's the first def.
17385 2017-07-26 Glenn Morris <rgm@gnu.org>
17387 * doc/lispref/loading.texi (When to Autoload): New section.
17389 2017-07-26 Glenn Morris <rgm@gnu.org>
17391 Stop using unibyte buffers for ert backtraces
17393 * lisp/emacs-lisp/ert.el
17394 (ert-results-pop-to-backtrace-for-test-at-point):
17395 Set multibyte true, not false. This copies a
17396 debugger-setup-buffer change from 2009-08-30, and stops the
17397 "Backtrace for" header line containing ^X and ^Y.
17399 2017-07-26 Dmitry Gutov <dgutov@yandex.ru>
17401 Fix semantic-symref-parse-tool-output-one-line after 644cdd1aa0
17403 * lisp/cedet/semantic/symref/grep.el
17404 (semantic-symref-grep--line-re): Delete.
17405 (semantic-symref-parse-tool-output-one-line):
17406 Use regexp and group numbers from (grep-regexp-alist).
17408 2017-07-26 Grégoire Jadi <daimrod@omecha.info>
17410 Fix cl-defmethod indentation
17412 * lisp/emacs-lisp/cl-generic.el (cl-defmethod):
17413 Declare (indent defun). Fixes bug#23994.
17415 2017-07-26 Martin Rudalics <rudalics@gmx.at>
17417 Fix two customization types in frame.el
17419 * lisp/frame.el (window-divider-default-bottom-width)
17420 (window-divider-default-right-width): Fix customization types.
17422 2017-07-26 Tino Calancha <tino.calancha@gmail.com>
17424 Dired: Support eshell-ls from the beginning if the user wants to
17426 * lisp/dired.el (dired-insert-directory): Check for eshell-ls
17427 as well (Bug#27817).
17428 * test/lisp/dired-tests.el (dired-test-bug27817): Add test.
17430 2017-07-26 Mark Oteiza <mvoteiza@udel.edu>
17432 * lisp/progmodes/sh-script.el (sh-mode): Recognize mkshrc.
17434 2017-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
17436 * lisp/emacs-lisp/eieio-compat.el (eieio--defgeneric-init-form):
17438 Adjust to change in cl-generic-ensure-function.
17440 2017-07-25 Tino Calancha <tino.calancha@gmail.com>
17442 ls-lisp: Add an unload function and enable lexical binding
17444 Enable lexical binding.
17445 * lisp/ls-lisp.el (ls-lisp-unload-function): New defun.
17446 * test/lisp/ls-lisp-tests.el (ls-lisp-unload): Add test.
17448 2017-07-25 Tino Calancha <tino.calancha@gmail.com>
17450 register-read-with-preview: Quit if user input C-g or ESC
17452 * lisp/register.el (register-read-with-preview):
17453 Quit if user input C-g or ESC (bug#27634).
17454 * doc/emacs/regs.texi (Registers): Update manual.
17455 * test/lisp/register-tests.el (register-test-bug27634): Add test.
17457 2017-07-25 Mark Oteiza <mvoteiza@udel.edu>
17459 Recognize MirBSD Korn shell rc file
17461 * lisp/files.el (auto-mode-alist): Add .mkshrc to the list.
17463 2017-07-25 Glenn Morris <rgm@gnu.org>
17465 * configure.ac: Be explicit about ImageMagick version in summary.
17467 2017-07-25 Andreas Schwab <schwab@linux-m68k.org>
17469 Properly align global lispsym
17471 * lib-src/make-docfile.c (close_emacs_globals): Wrap struct
17472 Lisp_Symbols inside struct.
17473 * src/alloc.c (sweep_symbols): Update use of lispsym.
17474 * src/lisp.h (builtin_lisp_symbol): Likewise.
17476 2017-07-25 Paul Eggert <eggert@cs.ucla.edu>
17478 Do not use ImageMagick 7 and later
17480 Suggested by Glenn Morris (Bug#25967#15).
17481 * configure.ac (IMAGEMAGICK_MODULE): Reject 7 and later.
17483 2017-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
17485 * lisp/progmodes/perl-mode.el: Add support for indented here docs
17487 * lisp/progmodes/perl-mode.el (perl-syntax-propertize-function):
17488 Recognize the new <<~ syntax for indented here docs.
17489 (perl-syntax-propertize-special-constructs): Adjust search of the
17490 end of here docs accordingly.
17492 * test/manual/indent/perl.perl: Add test for indented here docs.
17494 2017-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
17496 (loadhist-unload-element): Move ERT and cl-generic methods
17498 * lisp/loadhist.el (loadhist-unload-element): Don't define cl-generic
17499 and ert methods here.
17500 (loadhist-unload-element) <(head define-type)>: Remove unused var `slots'.
17502 * lisp/emacs-lisp/cl-generic.el (loadhist-unload-element): Define
17503 unload method for cl-defmethod.
17504 (cl-generic-ensure-function): Remove redundant `defalias'.
17506 * lisp/emacs-lisp/ert.el (ert-set-test): Move the current-load-list
17508 (ert-deftest): ...from here.
17509 (loadhist-unload-element): Define unload method for ert-deftest.
17511 2017-07-24 Michael Albinus <michael.albinus@gmx.de>
17515 * lisp/loadhist.el (loadhist-unload-element): Declare for
17516 different entry types of `load-history'.
17517 (loadhist--restore-autoload): New variable.
17518 (loadhist--unload-function): New defun.
17519 (unload-feature): Use `loadhist-unload-element'. Recommended by
17520 Stefan Monnier. (Bug#27371)
17522 * test/lisp/net/tramp-tests.el (tramp-test39-unload):
17523 Check, that the `tramp-file-name' structure has been unloaded.
17525 2017-07-24 Grégoire Jadi <gjadi@omecha.info>
17527 Ensure that we parse images right in shr.el
17529 * lisp/net/shr.el (shr-image-fetched): Go back to the
17530 beginning of the buffer before trying to parse the image
17533 2017-07-24 Paul Eggert <eggert@cs.ucla.edu>
17535 Update .gitignore for Valgrind and no Automake
17537 * .gitignore: Remove .deps/ since we no longer use Automake.
17538 Add vgcore.*[0-9], for debugging Emacs with Valgrind+GDB.
17540 2017-07-24 Paul Eggert <eggert@cs.ucla.edu>
17545 2017-07-23 Rename module 'strftime' to 'nstrftime'
17546 * admin/merge-gnulib (GNULIB_MODULES): Add nstrftime, remove strftime.
17547 * build-aux/config.guess: Copy from gnulib.
17548 * lib/nstrftime.c: Rename from lib/strftime.c.
17549 * m4/nstrftime.m4: Rename from m4/strftime.m4.
17550 * lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
17552 2017-07-23 Philipp Stephani <phst@google.com>
17554 Add 'rx' pattern for pcase.
17556 * lisp/emacs-lisp/rx.el (rx): New pcase macro.
17557 * test/lisp/emacs-lisp/rx-tests.el (rx-pcase): Add unit test.
17559 2017-07-23 Mark Oteiza <mvoteiza@udel.edu>
17561 Use a named function for global minor mode turn-on argument
17563 * lisp/display-line-numbers.el (turn-on-display-line-numbers-mode):
17565 (global-display-line-numbers-mode): Use it.
17567 2017-07-23 Charles A. Roelli <charles@aurox.ch>
17569 Enable GUI Emacs without 'make install' on macOS (Bug #27645)
17571 * nextstep/INSTALL: Correct it, and mention that Emacs can be run
17574 * src/nsterm.m (applicationDidFinishLaunching:): When Emacs is
17575 launched outside of a macOS application bundle, change its
17576 activation policy from the default 'prohibited' to 'regular'.
17578 2017-07-23 Alan Mackenzie <acm@muc.de>
17580 Convert CC Mode's c-found-types from an obarray to a hash table.
17582 * lisp/progmodes/cc-engine.el (c-clear-found-types): create a hash table
17583 rather than an obarray.
17584 (c-copy-found-types): Remove.
17585 (c-add-type, c-unfind-type, c-check-type, c-list-found-types): Amend to use
17586 the new hash table.
17587 (c-forward-<>-arglist): Use copy-hash-table rather than c-copy-found-types.
17589 2017-07-23 Lars Ingebrigtsen <larsi@gnus.org>
17591 Fix image/svg+xml display in shr
17593 * lisp/net/shr.el (shr-put-image): Display svg images as svg
17594 (bug#27799). I suspect the previous change was checked in by
17595 accident in conjuction with some other svg changes.
17597 2017-07-23 Michael Albinus <michael.albinus@gmx.de>
17599 * lisp/display-line-numbers.el (display-line-numbers-type): Autoload it.
17601 2017-07-23 Glenn Morris <rgm@gnu.org>
17603 Don't automatically enable Gconf if Gsettings was found
17605 * configure.ac (HAVE_GCONF) [HAVE_GSETTINGS]:
17606 Don't test for Gconf unless specifically requested.
17607 Gconf was deprecated in favor of Gsettings several years ago.
17609 2017-07-23 Glenn Morris <rgm@gnu.org>
17611 * configure.ac (MODULES_SUFFIX): Always give it a value.
17613 This prevents a Makefile thinko like "rm *${MODULE_SUFFIX}".
17615 2017-07-23 Glenn Morris <rgm@gnu.org>
17617 * doc/emacs/frames.texi (Fonts): Mention Gsettings.
17619 2017-07-22 Michael Albinus <michael.albinus@gmx.de>
17621 Add line numbers display to the Options menu
17623 * lisp/menu-bar.el (toggle-display-line-numbers): Remove.
17624 (menu-bar-display-line-numbers-mode): New defun.
17625 (menu-bar-showhide-line-numbers-menu): New defvar.
17626 (menu-bar-showhide-menu): Use `menu-bar-showhide-line-numbers-menu'
17628 2017-07-22 Noam Postavsky <npostavs@gmail.com>
17630 Signal error for symbol names with strange quotes (Bug#2967)
17632 * src/lread.c (read1): Signal an error when a symbol starts with a
17633 non-escaped quote-like character.
17634 * test/src/lread-tests.el (lread-tests--funny-quote-symbols): New
17636 * etc/NEWS: Announce change.
17638 2017-07-22 Noam Postavsky <npostavs@gmail.com>
17640 Revert "Let delete-selection-mode work with popup-menu commands (Bug#27569)"
17642 It turns out that this change is not needed, and it leaves several
17643 command loops settings not done.
17645 https://lists.gnu.org/r/emacs-devel/2017-07/msg00757.html
17646 https://lists.gnu.org/r/emacs-devel/2017-07/msg00840.html
17648 2017-07-22 Alexander Gramiak <agrambot@gmail.com>
17650 Add a minor mode interface for display-line-numbers
17652 * lisp/cus-start.el: Use the new display-line-numbers group.
17653 * lisp/display-line-numbers.el: New file.
17655 * doc/emacs/custom.texi (Init Rebinding): Re-add entry that used to
17656 belong to linum-mode.
17657 * doc/emacs/modes.texi (Minor Modes): Summarize the mode.
17658 * etc/NEWS: Document display-line-numbers-mode and its customization
17659 variables, and mention that display-line-numbers-width is
17662 * src/xdisp.c (syms_of_xdisp) <display-line-numbers-width>: Fix a
17665 2017-07-22 vividsnow <vividsnow@gmail.com> (tiny change)
17667 Support indented HERE-DOCs in cperl-mode
17669 * lisp/progmodes/cperl-mode.el (cperl-find-pods-heres): Support
17670 indented here-docs. (Bug#27254) (Bug#27697)
17672 2017-07-22 Eli Zaretskii <eliz@gnu.org>
17674 Document the support for "scrollBar" X resource
17676 * doc/emacs/xresources.texi (Table of Resources): Document the new
17677 'scrollBar' setting.
17678 * etc/NEWS: Document the new 'scrollBar' setting.
17680 2017-07-22 Matthew Bauer <mjbauer95@gmail.com> (tiny change)
17682 Add 'scroll-bar-mode' to settings in 'x-apply-session-resources'
17684 * lisp/startup.el (x-apply-session-resources): Add scroll-bar-mode
17687 2017-07-22 Alexander Kuleshov <kuleshovmail@gmail.com>
17689 Update ld-script mode (bug#27629)
17691 * lisp/progmodes/ld-script.el: (ld-script-keywords): New commands
17692 NOCROSSREFS_TO and HIDDEN added. Fix documentation sections
17693 numbers for PROVIDE/PROVIDE_HIDDEN commands.
17694 (ld-script-builtins): New builtin function LOG2CEIL added.
17696 2017-07-22 Eli Zaretskii <eliz@gnu.org>
17698 Index 'rectangle' in the ELisp manual
17700 * doc/lispref/text.texi (Registers): Index the "rectangle" value.
17703 2017-07-22 Eli Zaretskii <eliz@gnu.org>
17705 * lisp/subr.el (add-to-history): Doc fix. (Bug#27494)
17707 2017-07-22 Eli Zaretskii <eliz@gnu.org>
17709 Doc fixes for kmacro.el functions
17711 * lisp/kmacro.el (kmacro-start-macro, kmacro-call-macro)
17712 (kmacro-end-and-call-macro): Don't use "permanent name", as that
17713 could be misinterpreted. (Bug#27492)
17715 2017-07-22 Charles A. Roelli <charles@aurox.ch>
17717 ElDoc: add docstrings and minor refactoring
17719 * lisp/emacs-lisp/eldoc.el (eldoc-edit-message-commands): Add
17721 (turn-on-eldoc-mode): Fix capitalization.
17722 (eldoc--supported-p): Add docstring.
17723 (eldoc-schedule-timer): Add docstring and use
17724 'eldoc--supported-p'.
17725 (eldoc-message): Add docstring and make calling convention
17727 (eldoc--message-command-p):
17728 (eldoc-pre-command-refresh-echo-area):
17729 (eldoc-display-message-p):
17730 (eldoc-display-message-no-interference-p):
17731 (eldoc-print-current-symbol-info):
17732 (eldoc-docstring-format-sym-doc):
17733 (eldoc-add-command, eldoc-add-command-completions):
17734 (eldoc-remove-command, eldoc-remove-command-completions):
17735 Add docstring. (Bug#27230)
17737 2017-07-22 Fabrice Bauzac <libnoon@gmail.com> (tiny change)
17739 Mention 'C-M-i' as key binding for 'ispell-complete-word'
17741 * doc/emacs/fixit.texi (Spelling): ispell-complete-word
17742 can also be invoked by C-M-i. (Bug#27349)
17744 2017-07-22 Fabrice Bauzac <libnoon@gmail.com> (tiny change)
17746 Fix the eww-search-words description in the Emacs manual
17748 * doc/emacs/search.texi (Word Search):
17749 Include the key binding for eww-search-words in the manual.
17750 Fix the spelling of the 'eww-search-words' command.
17752 2017-07-22 Andrew L. Moore <slewsys@gmail.com>
17754 Introduce defcustom 'executable-prefix-env'
17756 * lisp/progmodes/executable.el (executable-prefix): Update the doc
17758 (executable-prefix-env): New defcustom.
17759 (executable-set-magic): Use executable-prefix-env.
17761 * etc/NEWS: Document the new variable.
17763 2017-07-22 Glenn Morris <rgm@gnu.org>
17765 * test/lisp/ibuffer-tests.el: Delete temporary files.
17767 2017-07-21 Glenn Morris <rgm@gnu.org>
17769 Further attempt to avoid hang in network-stream-tests
17771 * test/lisp/net/network-stream-tests.el (connect-to-tls-ipv6-nowait):
17772 Limit the time we wait for the external process.
17774 2017-07-21 Glenn Morris <rgm@gnu.org>
17776 Stop skipping many ibuffer tests by default
17778 * test/lisp/ibuffer-tests.el (ibuffer-0autoload):
17779 Rename so it sorts first.
17780 (ibuffer-save-filters, ibuffer-filter-inclusion-1)
17781 (ibuffer-filter-inclusion-2, ibuffer-filter-inclusion-3)
17782 (ibuffer-filter-inclusion-4, ibuffer-filter-inclusion-5)
17783 (ibuffer-filter-inclusion-6, ibuffer-filter-inclusion-7)
17784 (ibuffer-filter-inclusion-8, ibuffer-decompose-filter)
17785 (ibuffer-and-filter, ibuffer-or-filter, ibuffer-format-qualifier)
17786 (ibuffer-unary-operand): Require ibuf-ext so tests not skipped.
17788 2017-07-21 Stefan Monnier <monnier@iro.umontreal.ca>
17790 Use lexical-binding in todo-mode.el
17792 Adjust code accordingly and make various minor improvements.
17794 * lisp/calendar/todo-mode.el: Enable lexical-binding.
17795 (dayname, monthname, day, month, year): Make forward defvars
17796 of these keywords from macros defined in calendar.el; wrap
17797 them in with-no-warnings.
17798 (todo-files, todo-files-function, todo-date-pattern)
17799 (todo-mode-line-function, todo-show, todo-forward-category)
17800 (todo-edit-item--header, todo-set-category-number)
17801 (todo-adjusted-category-label-length)
17802 (todo-total-item-counts, todo-filter-items)
17803 (todo-print-buffer-function, todo-convert-legacy-date-time)
17804 (todo-category-number, todo-category-completions)
17805 (todo-read-file-name, todo-read-category)
17806 (todo-validate-name, todo-read-date)
17807 (todo-set-show-current-file, todo-modes-set-1)
17808 (todo-modes-set-2, todo-modes-set-3, todo-mode):
17809 Use #' instead of ' to quote functions.
17810 (todo-files): Use \' instead of $ in regexp.
17811 (todo--files-type-list): New function.
17812 (todo-default-todo-file, todo-category-completions-files)
17813 (todo-filter-files, todo-multiple-filter-files)
17814 (todo-reevaluate-default-file-defcustom)
17815 (todo-reevaluate-category-completions-files-defcustom)
17816 (todo-reevaluate-filter-files-defcustom): Use it.
17817 (todo-show, todo-rename-file, todo-move-category)
17818 (todo-edit-item--text, todo-edit-quit, todo-edit-item--header)
17819 (todo-item-undone, todo-unarchive-items, todo-search)
17820 (todo-filter-items, todo-filter-items-1, todo-find-item)
17821 (todo-category-select, todo-read-date)
17822 (todo-nondiary-marker-matcher, todo-date-string-matcher)
17823 (todo-diary-expired-matcher, todo-convert-legacy-files)
17824 (todo-read-category): Reformat to avoid code hiding behind a
17825 more deeply embedded element.
17826 (todo-forward-category, todo-set-category-number):
17827 Use 'funcall' instead of 'apply'.
17828 (todo-toggle-mark-item, todo-edit-item--diary-inclusion)
17829 (todo-edit-category-diary-inclusion)
17830 (todo-insert-sort-button, todo-insert-category-line)
17831 (todo-multiple-filter-files): Mark unused local variables.
17832 (todo-edit-item--header, todo-move-item, todo-print-buffer)
17833 (todo-edit-item--header, todo-move-item, todo-check-file)
17834 (todo-edit-item--next-key): Remove unused local variables.
17835 (todo-insert-sort-button, todo-insert-category-line):
17836 Use a closure instead of a backquoted lambda.
17837 (todo-update-categories-display, todo-print-buffer): Simplify code.
17838 (todo-print-buffer-function): Document calling convention.
17839 (todo-category-completions): Use cl-pushnew instead of add-to-list.
17840 (todo-mode-map, todo-archive-mode-map)
17841 (todo-categories-mode-map, todo-filtered-items-mode-map):
17842 Remove superfluous call of suppress-keymap, since it's already
17843 in the parent special-mode-map.
17845 2017-07-21 Tino Calancha <tino.calancha@gmail.com>
17847 dired: Revert buffer when DIRNAME is a cons
17849 * lisp/dired.el (dired-internal-noselect): Revert buffer if DIR-OR-LIST
17850 is a cons, or dired-directory is a cons and DIR-OR-LIST a string (Bug#7131).
17851 Update the comments.
17852 * test/lisp/dired-tests.el (dired-test-bug7131): Test should pass.
17854 2017-07-21 Tino Calancha <tino.calancha@gmail.com>
17856 Handle when dired-directory is a cons in some Dired functions
17858 * lisp/dired-aux.el (dired-rename-subdir-1)
17859 * lisp/dired-x.el (dired-mark-omitted):
17860 Handle when dired-directory is a cons.
17862 2017-07-21 Noam Postavsky <npostavs@gmail.com>
17864 Make eshell-next-prompt more reliable (Bug#27405)
17866 * lisp/eshell/em-prompt.el (eshell-next-prompt): Search for
17867 `eshell-prompt-regexp' (and `read-only' text-property if
17868 `eshell-highlight-prompt' is set) rather than trying to use
17869 `forward-paragraph'.
17870 (eshell-previous-prompt): Don't count prompt on current line.
17872 2017-07-21 Paul Eggert <eggert@cs.ucla.edu>
17874 Simplify recent gnutls.c changes
17876 * src/gnutls.c (clear_storage) [HAVE_GNUTLS3_AEAD]: Remove.
17877 All uses replaced by calls to explicit_bzero; that’s clear enough.
17878 (gnutls_symmetric_aead) [HAVE_GNUTLS3_AEAD]: Simplify by
17879 coalescing duplicate actions. There is no need to invoke
17880 SAFE_FREE before calling ‘error’.
17882 2017-07-20 Michael Albinus <michael.albinus@gmx.de>
17884 Stylistic changes in tramp-cache.el
17886 * lisp/net/tramp-cache.el (tramp-get-file-property)
17887 (tramp-set-file-property): Use `bound-and-true-p'. Add
17888 counter variables to `tramp-cache-unload-hook'.
17890 2017-07-20 Glenn Morris <rgm@gnu.org>
17892 * admin/notes/hydra: Small updates.
17894 2017-07-20 Glenn Morris <rgm@gnu.org>
17896 Make tramp unloading handle debug counter variables
17898 * lisp/net/tramp-cache.el (tramp-get-file-property)
17899 (tramp-set-file-property): Add counter variables to tramp-unload-hook.
17901 2017-07-20 Eli Zaretskii <eliz@gnu.org>
17903 Fix hscrolling calculations when display-line-numbers is set
17905 * src/xdisp.c (move_it_in_display_line_to): Account for line
17906 numbers in hscrolled lines. (Bug#27756)
17908 2017-07-20 Katsumi Yamaoka <yamaoka@jpl.org>
17910 Fix the bogus change made 13 years ago (bug#27084)
17912 * lisp/gnus/gnus-sum.el (gnus-summary-toggle-header):
17913 Fix the way to test if there is no visible header (bug#27084).
17915 2017-07-20 Noam Postavsky <npostavs@gmail.com>
17917 Use grep's --null option (Bug#6843)
17919 * lisp/progmodes/grep.el (grep-use-null-filename-separator): New option.
17920 (grep--regexp-alist-column, grep--regexp-alist-bin-matcher)
17921 (grep-with-null-regexp-alist, grep-fallback-regexp-alist): New
17922 constants, replacing `grep-regexp-alist'.
17923 (grep-regex-alist): Mark the variable obsolete, add a new function of
17924 the same name to replace it.
17925 (grep-compute-defaults): Compute default for
17926 `grep-use-null-filename-separator'.
17927 (grep-mode): Set compilation-error-regexp-alist (buffer locally) to the
17928 value of `grep-with-null-regexp-alist' or `grep-fallback-regexp-alist'
17929 according to `grep-use-null-filename-separator'.
17930 * lisp/progmodes/xref.el (xref-collect-matches): Call
17931 `grep-regex-alist' instead of the obsolete variable. Don't hardcode
17932 grep-regexp-alist match groups.
17933 * etc/NEWS: Announce new use of --null. Move 'grep-save-buffers'
17934 item under "Grep" heading as well.
17936 2017-07-19 Philipp Stephani <phst@google.com>
17938 * src/gnutls.c (clear_storage): Define only if needed.
17940 2017-07-19 Stephen Berman <stephen.berman@gmx.net>
17942 Adjust todo-quit to recent change in dired
17944 * lisp/calendar/todo-mode.el (todo-quit): Use quit-window instead of
17945 bury-buffer to exit todo-mode. This restores the desired behavior
17946 of not immediately returning to the exited todo-mode buffer on
17947 quitting another buffer, which a dired bug fix had changed (see
17948 https://lists.gnu.org/r/emacs-devel/2017-07/msg00739.html).
17950 2017-07-19 Tino Calancha <tino.calancha@gmail.com>
17952 Add test for bugs 7131, 27762
17954 Require 'ls-lisp' at top of the file.
17955 * test/lisp/dired-tests.el (dired-test-bug7131, dired-test-bug27762):
17957 (dired-test-bug27693): Delete Dired buffer at the end.
17959 2017-07-18 Michael Albinus <michael.albinus@gmx.de>
17961 * admin/notes/hydra: Mention environment variable EMACS_HYDRA_CI.
17963 2017-07-18 Stefan Monnier <monnier@iro.umontreal.ca>
17965 * lisp/emacs-lisp/nadvice.el (advice--defalias-fset): Strip advices
17967 This tries to make sure that (defalias F (symbol-function F)) stays a no-op.
17969 2017-07-18 Glenn Morris <rgm@gnu.org>
17971 Use a more specific test for running on hydra.nixos.org
17973 * lisp/emacs-lisp/ert.el (ert-summarize-tests-batch-and-exit):
17974 * test/Makefile.in (WRITE_LOG):
17975 * test/lisp/filenotify-tests.el:
17976 * test/lisp/emacs-lisp/eieio-tests/eieio-test-methodinvoke.el
17977 (eieio-test-method-order-list-6):
17978 * test/lisp/emacs-lisp/eieio-tests/eieio-tests.el
17979 (eieio-test-37-obsolete-name-in-constructor):
17980 * test/lisp/net/tramp-tests.el: Replace NIX_STORE with EMACS_HYDRA_CI.
17982 2017-07-18 Eli Zaretskii <eliz@gnu.org>
17984 Avoid infloop due to Eshell's "smart" redisplay
17986 * src/xdisp.c (pos_visible_p): Save and restore the window's
17987 mode-line and header-line height. (Bug#27752)
17989 2017-07-18 Stefan Monnier <monnier@iro.umontreal.ca>
17991 * lisp/emacs-lisp/cl-lib.el (cl--old-struct-type-of): Accept `[]'
17993 2017-07-18 Eli Zaretskii <eliz@gnu.org>
17995 Fix indentation when display-line-numbers is non-nil
17997 * src/xdisp.c (x_produce_glyphs): Fix a typo in deciding whether
17998 to go one more tab stop to display a TAB. (Bug#27743)
18000 2017-07-18 Lars Ingebrigtsen <larsi@gnus.org>
18002 Don't use gtk_widget_get_scale_factor on old GTK3 versions
18004 * src/gtkutil.c (xg_get_scale): gtk_widget_get_scale_factor is
18005 only present since GTK 3.10.
18007 2017-07-18 Noam Postavsky <npostavs@gmail.com>
18009 Let delete-selection-mode work with popup-menu commands (Bug#27569)
18011 * lisp/menu-bar.el (popup-menu): Run `pre-command-hook' with
18012 `this-command' set to the selected command.
18014 2017-07-18 Paul Eggert <eggert@cs.ucla.edu>
18016 Port gnutls.c to older (buggier?) GnuTLS
18018 Problem reported for GnuTLS 3.2.1 by Glenn Morris in:
18019 https://lists.gnu.org/r/emacs-devel/2017-07/msg00716.html
18020 https://lists.gnu.org/r/emacs-devel/2017-07/msg00742.html
18021 Although I don't see how this bug can occur with vanilla GnuTLS 3.2.1,
18022 perhaps hydra was using a modified GnuTLS.
18023 * src/gnutls.c (Fgnutls_ciphers): Don't assume GNUTLS_CIPHER_NULL
18024 is at the end of the list returned by gnutls_cipher_list,
18025 or that the earlier ciphers all have non-null names.
18027 2017-07-17 Vincent Belaïche <vincentb1@users.sourceforge.net>
18029 Fix relocation with named cell referred to by a one-symbol formula.
18031 * lisp/ses.el (ses-replace-name-in-formula): Fix bug for it to
18032 work also with one symbol formulas.
18034 * test/lisp/ses-tests.el
18035 (ses-tests-renaming-cell-with-one-symbol-formula): Add new
18036 test for renaming with relocating a one symbol formula.
18038 2017-07-17 Vincent Belaïche <vincentb1@users.sourceforge.net>
18040 Fix symbol completion and document it.
18042 * doc/misc/ses.texi (Configuring what printer function
18043 applies): Add description of keys for completing local printer
18044 symbols and listing local printers in a help buffer.
18045 (Formulas): Add decription for key to list the named cell
18046 symbols in a help buffer.
18048 * lisp/ses.el (ses-completion-keys): New constant.
18049 (ses--completion-table): New defvar.
18050 (ses--list-orig-buffer): New defvar.
18051 (ses-mode-edit-map): Fixed for symbol completion, plus add
18052 help functions to list named cells or local printers.
18053 (ses-edit-cell-complete-symbol)
18054 (ses--edit-cell-completion-at-point-function): New defuns for
18055 completion during formula edition.
18056 (ses-edit-cell): Redefine dynamically edit keymap for
18057 completion keys to point at the right function.
18058 (ses-read-printer-complete-symbol)
18059 (ses--read-printer-completion-at-point-function): New defuns
18060 for completion during printer edition.
18061 (ses-read-printer): Redefine dynamically edit keymap for
18062 completion keys to point at the right function.
18063 (ses-list-local-printers): New defun.
18064 (ses-list-named-cells): New defun.
18066 2017-07-17 Lars Ingebrigtsen <larsi@gnus.org>
18068 Move comments around
18070 2017-07-17 Lars Ingebrigtsen <larsi@gnus.org>
18072 Make scaling work (?) on pre-GTK3 systems
18074 * src/gtkutil.c (xg_get_gdk_scale): Reinstate function.
18075 (xg_get_scale): Use it on non-GTK3 systems.
18077 2017-07-17 Lars Ingebrigtsen <larsi@gnus.org>
18079 Always return the GDK scale
18081 * src/gtkutil.c (xg_get_scale): Return the GDK scale always.
18083 2017-07-17 Lars Ingebrigtsen <larsi@gnus.org>
18085 Remove usage of the GDK_SCALE variable
18087 * src/gtkutil.c (xg_get_gdk_scale): Remove.
18088 (xg_get_default_scrollbar_height)
18089 (xg_get_default_scrollbar_width): Pass in a frame to check for
18091 (xg_frame_set_char_size): Use the API for querying scale
18092 instead of looking at the GDK_SCALE variable.
18093 (xg_get_default_scrollbar_width): Ditto.
18094 (xg_get_default_scrollbar_height): Ditto.
18095 (xg_update_scrollbar_pos): Ditto.
18097 * src/xfns.c (x_set_scroll_bar_default_height): Pass in the
18098 frame to get the width.
18100 2017-07-17 Lars Ingebrigtsen <larsi@gnus.org>
18102 Get positions of menus and tooltips right on HiDPI
18104 * src/gtkutil.c (xg_get_scale): New function.
18105 (xg_show_tooltip): Use it.
18107 * src/xmenu.c (create_and_show_popup_menu): Put menus in the
18110 2017-07-17 Eli Zaretskii <eliz@gnu.org>
18112 Allow user control on what starts and ends a paragraph for bidi
18114 * src/buffer.h (struct buffer): New members
18115 bidi_paragraph_separate_re_ and bidi_paragraph_start_re_.
18116 * src/buffer.c (bset_bidi_paragraph_start_re)
18117 (bset_bidi_paragraph_separate_re): New setters/
18118 (Fbuffer_swap_text): Swap the values of bidi-paragraph-start-re and
18119 bidi-paragraph-separate-re.
18120 (init_buffer_once): Init the values of bidi-paragraph-start-re and
18121 bidi-paragraph-separate-re.
18122 (syms_of_buffer) <bidi-paragraph-start-re, bidi-paragraph-separate-re>:
18123 New per-buffer variables.
18124 * src/bidi.c (bidi_at_paragraph_end, bidi_find_paragraph_start):
18125 Support bidi-paragraph-start-re and bidi-paragraph-separate-re.
18126 (bidi_move_to_visually_next): Handle correctly the case when the
18127 separator matches an empty string. (Bug#27526)
18129 * doc/emacs/mule.texi (Bidirectional Editing):
18130 * doc/lispref/display.texi (Bidirectional Display): Document
18131 bidi-paragraph-start-re and bidi-paragraph-separate-re.
18133 * etc/NEWS: Mention bidi-paragraph-start-re and
18134 bidi-paragraph-separate-re.
18136 2017-07-17 Tino Calancha <tino.calancha@gmail.com>
18138 * lisp/emacs-lisp/map.el (map-put): Fix redundancy in docstring.
18140 2017-07-17 Tino Calancha <tino.calancha@gmail.com>
18142 alist-get: Add optional arg TESTFN
18144 If TESTFN is non-nil, then it is the predicate to lookup
18145 the alist. Otherwise, use 'eq' (Bug#27584).
18146 * lisp/subr.el (alist-get): Add optional arg FULL.
18147 * lisp/emacs-lisp/map.el (map-elt, map-put): Add optional arg TESTFN.
18148 * lisp/emacs-lisp/gv.el (alist-get): Update expander.
18149 * doc/lispref/lists.texi (Association Lists): Update manual.
18150 * etc/NEWS: Announce the changes.
18151 * test/lisp/emacs-lisp/map-tests.el (test-map-put-testfn-alist)
18152 (test-map-elt-testfn): New tests.
18154 2017-07-17 Michael Albinus <michael.albinus@gmx.de>
18156 Fix `tramp-test39-unload'
18158 * test/lisp/net/tramp-tests.el (tramp--test-instrument-test-case-p)
18159 (tramp--test-instrument-test-case): Rename. Adapt all callees.
18160 (tramp-test36-asynchronous-requests): Bind `timer-max-repeats'.
18161 (tramp-test39-unload): Expect it to pass. Ignore buffer-local
18162 variables and autoload functions; they are not removed. Check
18163 also for `-function(s)'.
18165 2017-07-17 Stephen Berman <stephen.berman@gmx.net>
18167 Preserve point under 'dired-auto-revert-buffer' (second case)
18169 * lisp/dired.el (dired): Use pop-to-buffer-same-window instead
18170 of switch-to-buffer. This preserves Dired window point when
18171 dired-auto-revert-buffer is non-nil. (Bug#27243)
18173 * test/lisp/dired-tests.el (dired-test-bug27243): New test.
18175 2017-07-17 Martin Rudalics <rudalics@gmx.at>
18177 Have Fgnutls_available_p return Qnil when GNUTLS is undefined
18179 * src/gnutls.c (Fgnutls_available_p): Return Qnil when GNUTLS is
18180 undefined to allow --with-gnutls=no builds to proceed.
18182 2017-07-17 Paul Eggert <eggert@cs.ucla.edu>
18184 * src/gnutls.c: Restore some comments.
18186 2017-07-17 Paul Eggert <eggert@cs.ucla.edu>
18188 Use memset, not bzero
18190 * src/ftcrfont.c (ftcrfont_glyph_extents): Use memset instead
18191 of the (less-portable) bzero.
18193 2017-07-17 Paul Eggert <eggert@cs.ucla.edu>
18195 Use explicit_bzero to clear GnuTLS keys
18197 * admin/merge-gnulib (GNULIB_MODULES): Add explicit_bzero.
18198 * lib/explicit_bzero.c, m4/explicit_bzero.m4: New files.
18199 * lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
18200 * src/gnutls.c (clear_storage): New function.
18201 (gnutls_symmetric_aead): Use it instead of memset.
18203 2017-07-17 Paul Eggert <eggert@cs.ucla.edu>
18208 2017-07-16 explicit_bzero: new module
18209 2017-07-15 getdtablesize: Add minimal support for OpenVMS.
18210 * lib/getdtablesize.c, lib/string.in.h, m4/getdtablesize.m4:
18213 * lib/gnulib.mk.in: Regenerate.
18215 2017-07-17 Dieter Deyke <dieter.deyke@gmail.com>
18217 Fix vc-src-dir-status-files
18219 * lisp/vc/vc-src.el (vc-src-dir-status-files): Fix broken
18220 copy-paste from b1a765b3 (bug#27641).
18222 2017-07-16 Wilfred Hughes <me@wilfred.me.uk>
18224 Fix mismatched parens
18226 * etc/NEWS.21: Remove excess parenthesis in code example
18228 2017-07-16 Alan Third <alan@idiocy.org>
18230 Add missing declare-function for new function
18232 * lisp/frame.el: Add declare function for
18233 ns-mouse-absolute-pixel-position.
18235 2017-07-16 R. Bernstein <rocky@gnu.org>
18237 Realgud for tango themes
18239 2017-07-16 Noam Postavsky <npostavs@gmail.com>
18241 Fix test when running from test/lisp/subr-tests.elc
18243 * test/lisp/subr-tests.el (subr-test-backtrace-simple-tests): Don't
18244 assume a lambda expression will be `equal' to its quoted form. That's
18245 not true if the lambda expression has been compiled.
18247 2017-07-15 Alan Third <alan@idiocy.org>
18249 Fix some frame handling issues on NS
18251 * lisp/frame.el (mouse-absolute-pixel-position): Use new NS function.
18252 * src/nsfns.m (Sns_mouse_absolute_pixel_position): New function.
18253 * src/nsterm.m (x_make_frame_visible): Re-establish parent-child
18254 relationship if it's broken.
18256 2017-07-15 Tino Calancha <tino.calancha@gmail.com>
18258 ls-lisp: Fix file size format
18260 * lisp/ls-lisp.el (ls-lisp-filesize-d-fmt, ls-lisp-filesize-f-fmt)
18261 (ls-lisp-filesize-b-fmt): Add space in front (Bug#27693).
18262 * test/lisp/dired-tests.el (dired-test-bug27693): Add test.
18264 2017-07-15 Eli Zaretskii <eliz@gnu.org>
18266 Avoid link errors with older versions of GnuTLS
18268 * src/gnutls.c (Fgnutls_ciphers, gnutls_symmetric_aead)
18269 (Fgnutls_macs, Fgnutls_digests): Conditionally compile code that
18270 calls GnuTLS functions which might be unavailable in older
18271 versions of GnuTLS.
18273 2017-07-15 Eli Zaretskii <eliz@gnu.org>
18275 Improve comments in faces.el
18277 * lisp/faces.el (face-font-family-alternatives): Improve
18280 2017-07-15 Eli Zaretskii <eliz@gnu.org>
18282 Improve some GnuTL error messages
18284 * src/gnutls.c (gnutls_symmetric_aead, gnutls_symmetric):
18285 * src/fns.c (Fsecure_hash_algorithms): Fix error messages.
18287 2017-07-15 Eli Zaretskii <eliz@gnu.org>
18289 Fix the Elisp manual wrt GnuTL cryptography
18291 * doc/lispref/elisp.texi (Top): Update the master menu.
18292 * doc/lispref/text.texi (GnuTLS Cryptography): Add a @menu, to
18293 avoid errors in makeinfo.
18295 2017-07-15 Eli Zaretskii <eliz@gnu.org>
18297 Fix compilation of gnutls.c with older GnuTLS
18299 * src/gnutls.c (syms_of_gnutls): Condition some defsubr's
18300 on HAVE_GNUTLS3, to avoid compilation errors when GnuTLS
18301 v3.X is not available. Reported by Colin Baxter <m43cap@yandex.com>.
18303 2017-07-15 rocky <rb@dustyfeet.com>
18305 Realgud for two more light themes
18307 2017-07-15 Eli Zaretskii <eliz@gnu.org>
18309 Rearrange MS-Windows code that dynamically loads GnuTLS functions
18311 * src/gnutls.c [WINDOWSNT]: Reorganize definitions and loading
18312 of functions using the same preprocessing directives as in the code.
18314 2017-07-15 Eli Zaretskii <eliz@gnu.org>
18316 Fix the MS-Windows build broken in gnutls.c
18318 * src/gnutls.c (Fgnutls_available_p) [WINDOWSNT]: Move the DLL
18319 loading code to after 'capabilities' has been calculated. Remove
18320 redundant comments.
18322 2017-07-15 Lars Ingebrigtsen <larsi@gnus.org>
18324 src/image.c (compute_image_size): Remove superfluous checks.
18326 * src/image.c (compute_image_size): Remove superfluous checks.
18328 2017-07-15 Lars Ingebrigtsen <larsi@gnus.org>
18330 Make combinations of :width/:max-height image specs work reliably
18332 * doc/lispref/display.texi (ImageMagick Images): Document
18333 :width/:max-height combinations (etc) (bug #25583).
18335 * src/image.c (compute_image_size): Handle :width/:max-height
18336 (etc) combinations consistently (by letting "max" win and
18339 * test/manual/image-size-tests.el (image-size-tests): Add
18340 tests for :width/:max-height (etc) combinations.
18342 2017-07-15 Glenn Morris <rgm@gnu.org>
18344 Fix recent theme changes
18346 * etc/themes/manoj-dark-theme.el, etc/themes/tsdh-dark-theme.el:
18347 Fix typos in recent changes.
18349 2017-07-15 Paul Eggert <eggert@cs.ucla.edu>
18351 GnuTLS integer-overflow and style fixes
18353 This tweaks the recently-added GnuTLS improvements so that
18354 they avoid some integer-overflow problems and follow typical
18355 Emacs style a bit better.
18356 * configure.ac (HAVE_GNUTLS3_HMAC, HAVE_GNUTLS3_AEAD)
18357 (HAVE_GNUTLS3_CIPHER): Use AC_CACHE_CHECK so that the
18358 configure-time results are displayed.
18359 * src/fns.c (extract_data_from_object): Return char *, not char
18360 const *, since one gnutls caller wants a non-const pointer. Use
18361 CONSP rather than !NILP when testing for conses. Use CAR_SAFE
18362 instead of rolling our own code. Prefer signed types to unsigned
18363 when either will do. Report problems for lengths out of range,
18364 instead of silently mishandling them.
18365 * src/gnutls.c (emacs_gnutls_strerror): New function, to simplify
18366 callers. All callers of gnutls_sterror changed.
18367 (Fgnutls_boot): Check for integers out of range rather than
18368 silently truncating them.
18369 (gnutls_symmetric_aead): Check for integer overflow in size
18371 (gnutls_symmetric_aead, Fgnutls_macs, Fgnutls_digests):
18372 Prefer signed to unsigned integers where either will do.
18373 (gnutls_symmetric_aead, gnutls_symmetric):
18374 Work even if ptrdiff_t is wider than ‘long’.
18375 (gnutls_symmetric, Fgnutls_hash_mac, Fgnutls_hash_digest):
18376 Check for integer overflow in algorithm selection.
18378 2017-07-14 Noam Postavsky <npostavs@gmail.com>
18380 * .gitlab-ci.yml: Don't install a C++ compiler. Suppress apt interaction.
18382 2017-07-14 Eli Zaretskii <eliz@gnu.org>
18384 Fix the MS-Windows build due to added GnuTLS functions
18386 * src/gnutls.c [WINDOWSNT]: Add DEF_DLL_FN for new functions.
18387 (init_gnutls_functions) [WINDOWSNT]: Add LOAD_DLL_FN for new
18388 functions. Add #define redirections for new functions.
18389 (gnutls_symmetric_aead): Fix format specs to be more portable when
18390 printing ptrdiff_t arguments.
18391 * src/fns.c (gnutls_rnd) [WINDOWSNT]: Redirect to w32_gnutls_rnd
18393 * src/gnutls.h [WINDOWSNT]: Add prototype for w32_gnutls_rnd.
18395 * test/lisp/net/gnutls-tests.el (gnutls-tests-tested-macs)
18396 (gnutls-tests-tested-digests, gnutls-tests-tested-ciphers): Call
18397 gnutls-available-p, otherwise GnuTLS functions might not be loaded
18398 from the DLL on MS-Windows.
18400 2017-07-14 Stefan Monnier <monnier@iro.umontreal.ca>
18402 * lisp/emacs-lisp/bytecomp.el: Fix bug#14860.
18404 * lisp/emacs-lisp/bytecomp.el (byte-compile--function-signature): New fun.
18405 Dig into advice wrappers to find the "real" signature.
18406 (byte-compile-callargs-warn, byte-compile-arglist-warn): Use it.
18407 (byte-compile-arglist-signature): Don't bother with "new-style" arglists,
18408 since bytecode functions are now handled in byte-compile--function-signature.
18410 * lisp/files.el (create-file-buffer, insert-directory):
18411 Remove workaround introduced for (bug#14860).
18413 * lisp/help-fns.el (help-fns--analyse-function): `nadvice` is preloaded.
18415 * lisp/help.el (help-function-arglist):
18416 Dig into advice wrappers to find the "real" signature.
18418 2017-07-14 Ted Zlatanov <tzz@lifelogs.com>
18420 GnuTLS HMAC and symmetric cipher support
18422 * etc/NEWS: Add news for new feature.
18424 * doc/lispref/text.texi (GnuTLS Cryptography): Add
18427 * configure.ac: Add macros HAVE_GNUTLS3_DIGEST,
18428 HAVE_GNUTLS3_CIPHER, HAVE_GNUTLS3_AEAD, HAVE_GNUTLS3_HMAC.
18430 * src/fns.c (Fsecure_hash_algorithms): Add function to list
18431 supported `secure-hash' algorithms.
18432 (extract_data_from_object): Add data extraction function that
18433 can operate on buffers and strings.
18434 (secure_hash): Use it.
18435 (Fsecure_hash): Mention `secure-hash-algorithms'.
18437 * src/gnutls.h: Include gnutls/crypto.h.
18439 * src/gnutls.c (Fgnutls_ciphers, gnutls_symmetric_aead)
18440 (gnutls_symmetric, Fgnutls_symmetric_encrypt, Fgnutls_symmetric_decrypt)
18441 (Fgnutls_macs, Fgnutls_digests, Fgnutls_hash_mac, Fgnutls_hash_digest)
18442 (Fgnutls_available_p): Implement GnuTLS cryptographic integration.
18444 * test/lisp/net/gnutls-tests.el: Add tests.
18446 2017-07-14 Stefan Monnier <monnier@iro.umontreal.ca>
18448 * lisp/emacs-lisp/cl-lib.el (cl--random-time): Remove as well
18450 It's also defined in cl-extra.el.
18452 2017-07-14 Paul Eggert <eggert@cs.ucla.edu>
18454 Do not convert ij and IJ to compatibility chars
18456 * lisp/leim/quail/latin-alt.el: Omit lines for ij and IJ in Dutch.
18457 Problem reported by James Cloos (Bug#518#10).
18459 2017-07-14 Toon Claes <toon@iotcl.com>
18461 Remove Turkish ligatures from Dutch input method
18463 * lisp/leim/quail/latin-alt.el: Remove Turkish ligatures (Bug#518).
18465 2017-07-14 Paul Eggert <eggert@cs.ucla.edu>
18467 Improve stack-overflow heuristic on GNU/Linux
18469 Problem reported by Steve Kemp (Bug#27585).
18470 * src/eval.c (near_C_stack_top): Remove. All uses replaced
18471 by current_thread->stack_top.
18472 (record_in_backtrace): Set current_thread->stack_top.
18473 This is for when the Lisp interpreter calls itself.
18474 * src/lread.c (read1): Set current_thread->stack_top.
18475 This is for recursive s-expression reads.
18476 * src/print.c (print_object): Set current_thread->stack_top.
18477 This is for recursive s-expression printing.
18478 * src/thread.c (mark_one_thread): Get stack top first.
18479 * src/thread.h (struct thread_state.stack_top): Now void *, not char *.
18481 2017-07-14 Paul Eggert <eggert@cs.ucla.edu>
18483 Remove duplicate cl--random-state definition
18485 * lisp/emacs-lisp/cl-lib.el (cl--random-state): Remove.
18486 This variable is now defined in cl-extra.el (Bug#27617).
18488 2017-07-14 Michael Albinus <michael.albinus@gmx.de>
18490 Adjust timer in tramp-test36-asynchronous-requests
18492 * test/lisp/net/tramp-tests.el (tramp-test36-asynchronous-requests):
18493 Adjust timer if it takes too much time.
18495 2017-07-14 Eli Zaretskii <eliz@gnu.org>
18497 Always display rmail progress report under user control
18499 * lisp/mail/rmail.el (rmail-show-message-1): Delete the second
18500 copy of '(message "Showing message %d..." msg)'. (Bug#27535)
18502 2017-07-14 Eli Zaretskii <eliz@gnu.org>
18504 Avoid byte-compilation warnings for advised functions
18506 * lisp/files.el (insert-directory, create-file-buffer): Add an
18507 advertised-calling-convention form to shut up byte-compilation
18508 warnings. (Bug#14860)
18510 2017-07-14 Eli Zaretskii <eliz@gnu.org>
18512 Add assertion related to display-line-numbers
18514 * src/xdisp.c (maybe_produce_line_number): Add assertion for the
18515 condition regarding IT->glyph_row->used[TEXT_AREA] expected by the
18518 2017-07-14 Eli Zaretskii <eliz@gnu.org>
18520 Prevent display corruption when display-line-numbers is set
18522 * src/xdisp.c (try_window_reusing_current_matrix): If giving up
18523 due to display-line-numbers, clear the window's desired glyph
18524 matrix before returning, as the following call to try_window will
18525 call display_line, which expects rows of the desired matrix
18526 cleared. (Bug#27668)
18528 2017-07-14 Eli Zaretskii <eliz@gnu.org>
18530 Revert "Use fixed-pitch font for display-line-numbers"
18532 This reverts commit d014a5e15c1110af77e7a96f06ccd0f0cafb099f.
18533 * lisp/faces.el (line-number): Don't use a fixed-pitch font, by
18534 popular demand. For relevant discussions, see
18536 https://lists.gnu.org/r/emacs-devel/2017-07/msg00433.html
18537 https://lists.gnu.org/r/emacs-devel/2017-07/msg00445.html
18539 2017-07-14 Paul Eggert <eggert@cs.ucla.edu>
18544 2017-07-13 Improve cross-compilation guesses for native Windows
18545 2017-07-11 More systematic m4 quoting and indentation
18546 2017-07-10 Make sure $host and $host_os are defined when used
18547 2017-07-03 stdioext: Port to OpenVMS
18548 2017-06-24 xalloc-oversized: port to icc
18549 * doc/misc/texinfo.tex, lib/fpending.c, lib/stdio-impl.h:
18550 * lib/xalloc-oversized.h, m4/dirfd.m4, m4/gettimeofday.m4:
18551 * m4/lstat.m4, m4/mktime.m4, m4/pselect.m4, m4/putenv.m4:
18552 * m4/stdint.m4, m4/strtoimax.m4, m4/utimes.m4:
18555 2017-07-13 Alan Mackenzie <acm@muc.de>
18557 C++ Mode. Fix anomaly occurring when a ">" is deleted then reinserted.
18559 This fontification anomaly happened because after deleting the ">",
18560 c-forward-<>-arglist parses the preceding identifier as a putative type but
18561 stores it in c-found-types before it becomes clear it is not an unambiguous
18562 type. c-forward-<>-arglist fails, leaving the spurious type id in
18563 c-found-types. Fix this by "binding" c-found-types "to itself" in
18564 c-forward-<>-arglist, and restoring the original value when that function call
18567 * lisp/progmodes/cc-engine.el (c-copy-found-types): New function.
18568 (c-forward-<>-arglist): Record the original value of c-found-types at the
18569 beginning of the function, and restore it at the end on failure.
18571 * lisp/progmodes/cc-mode.el (c-unfind-coalesced-tokens): Rewrite more
18574 2017-07-13 Vincent Belaïche <vincentb1@users.sourceforge.net>
18576 Add tests for SES, and fix one more cell renaming bug.
18578 * lisp/ses.el (ses-relocate-all): In case of insertion, do not
18579 relocate value for named cells as they keep the same symbol.
18580 (ses-rename-cell): Set new cell name symbol to cell value --- do not
18581 rely on recalculating. Push cells with updated data --- cell name,
18582 cell reference list, or cell formula --- to deferred write list.
18584 * test/lisp/ses-tests.el: New file, with 7 tests for SES.
18586 2017-07-12 Alan Mackenzie <acm@muc.de>
18588 Fix some bugs in c-defun-name. This fixes bug #25623.
18590 * lisp/progmodes/cc-cmds.el (c-defun-name): Fix some bugs to do with structs,
18593 2017-07-12 Vasilij Schneidermann <mail@vasilij.de>
18595 Make prog-mode-map the parent of c-mode-base-map. Fixes bug #26658.
18597 * lisp/progmodes/cc-mode.el (top level): Make prog-mode-map the parent of
18598 c-mode-base-map if possible.
18600 2017-07-12 Alan Mackenzie <acm@muc.de>
18602 CC Mode: create and use c-set-keymap-parent.
18604 * lisp/progmodes/cc-defs.el (c-set-keymap-parent): New macro.
18606 * lisp/progmodes/cc-mode.el (top-level): Remove cc-bytecomp-defun for
18607 set-keymap-parents.
18608 (c-make-inherited-keymap): Use c-set-keymap-parent in place of inline code.
18610 2017-07-12 Martin Rudalics <rudalics@gmx.at>
18612 Minor tweaks of new line number display variables
18614 * src/xdisp.c (Vdisplay_line_numbers): Tweak doc-string.
18615 (Vdisplay_line_number_width): Rename to
18616 Vdisplay_line_numbers_width.
18617 (maybe_produce_line_number): Comply with above rename.
18618 * lisp/cus-start.el (standard):
18619 * lisp/frame.el (top-level):
18620 * etc/NEWS: Comply with renaming of
18621 `display-line-number-width' to `display-line-numbers-width'.
18623 2017-07-12 Eli Zaretskii <eliz@gnu.org>
18625 Avoid assertion violations in close_infile_unwind
18627 * src/lread.c (close_infile_unwind): A temporary band-aid solution
18628 for bug#27642: allow 'infile' be NULL.
18630 2017-07-11 Eli Zaretskii <eliz@gnu.org>
18632 Use fixed-pitch font for display-line-numbers
18634 * lisp/faces.el (line-number): Use a fixed-pitch font by default,
18635 even if the default face uses a variable-pitch font. Reported by
18636 James Cloos <cloos@jhcloos.com>.
18638 2017-07-11 Eli Zaretskii <eliz@gnu.org>
18640 Improve documentation of display-line-numbers
18642 * src/xdisp.c (syms_of_xdisp) <display-line-numbers>: Improve the
18643 doc string. Suggested by Alex <agrambot@gmail.com>.
18645 2017-07-11 Nicolas Petton <nicolas@petton.fr>
18647 Add an optional testfn parameter to assoc
18649 * src/fns.c (assoc): New optional testfn parameter used for comparison
18651 * test/src/fns-tests.el (test-assoc-testfn): Add tests for the new
18652 'testfn' parameter.
18658 * src/gfilenotify.c:
18667 * src/xfont.c: Add a third argument to Fassoc calls.
18669 * doc/lispref/lists.texi: Document the new 'testfn' parameter.
18671 2017-07-10 Michael Albinus <michael.albinus@gmx.de>
18673 Use `with-demoted-errors' in Tramp
18675 * lisp/net/tramp.el (tramp-with-demoted-errors): New defmacro.
18677 * lisp/net/tramp-sh.el (tramp-sh-handle-vc-registered): Use it.
18679 2017-07-10 Michael Albinus <michael.albinus@gmx.de>
18681 Add Quick Start Guide to Tramp manual
18683 * doc/misc/tramp.texi: Use consequently "@value{tramp}" and
18685 (Quick Start Guide): New node.
18687 * doc/misc/trampver.texi:
18688 * lisp/net/trampver.el: Change version to "2.3.3-pre".
18690 2017-07-10 Glenn Morris <rgm@gnu.org>
18692 Fix failing module tests on GNU/Linux
18694 * test/src/emacs-module-tests.el
18695 (module--test-assertions--load-non-live-object)
18696 (module--test-assertions--call-emacs-from-gc):
18697 Avoid test failures due to backtraces.
18699 2017-07-10 Paul Eggert <eggert@cs.ucla.edu>
18701 Fix core dump in substitute-object-in-subtree
18703 Without this fix, (substitute-object-in-subtree #0=(#0# 'a) 'a)
18704 would dump core, since the C code would recurse indefinitely through
18705 the infinite structure. This patch adds an argument to the function,
18706 and renames it to lread--substitute-object-in-subtree as the function
18707 is not general-purpose and should not be relied on by outside code.
18709 * src/intervals.c (traverse_intervals_noorder): ARG is now void *,
18710 not Lisp_Object, so that callers need not cons unnecessarily.
18711 All callers changed. Also, remove related #if-0 code that was
18712 “temporary” in the early 1990s and has not been compilable for
18714 * src/lread.c (struct subst): New type, for substitution closure data.
18715 (seen_list): Remove this static var, as this info is now part of
18716 struct subst. All uses removed.
18717 (Flread__substitute_object_in_subtree): Rename from
18718 Fsubstitute_object_in_subtree, and give it a 3rd arg so that it
18719 doesn’t dump core when called from the top level with an
18720 already-cyclic structure. All callers changed.
18721 (SUBSTITUTE): Remove. All callers expanded and then simplified.
18722 (substitute_object_recurse): Take a single argument SUBST rather
18723 than a pair OBJECT and PLACEHOLDER, so that its address can be
18724 passed around as part of a closure; this avoids the need for an
18725 AUTO_CONS call. All callers changed. If the COMPLETED component
18726 is t, treat every subobject as potentially circular.
18727 (substitute_in_interval): Take a struct subst * rather than a
18728 Lisp_Object, for the closure data. All callers changed.
18729 * test/src/lread-tests.el (lread-lread--substitute-object-in-subtree):
18730 New test, to check that the core dump does not reoccur.
18732 2017-07-10 Philipp Stephani <phst@google.com>
18734 Minor simplification of module_free_global_ref
18736 * src/emacs-module.c (module_free_global_ref): Remove unused variable
18737 'hashcode'. Inline variable 'value' that's only used once.
18739 2017-07-10 Philipp Stephani <phst@google.com>
18741 Re-add a useful assertion
18743 * src/emacs-module.c (module_free_global_ref): Re-add assertion that
18744 the reference count is zero. This assertion was removed in commit
18745 8afaa1321f8088bfb877fe4b6676e8517adb0bb7, but it's not included in the
18746 test performed by XFASTINT before, because the previous reference
18747 count could have been zero already in the case of a buggy
18748 implementation. This assertion might have detected Bug#27587.
18750 2017-07-10 Valentin Gatien-Baron <vgatien-baron@janestreet.com> (tiny change)
18752 Fix bug in module_free_global_ref (Bug#27587)
18754 * src/emacs-module.c (module_free_global_ref): Actually remove entry
18757 2017-07-09 Philipp Stephani <phst@google.com>
18759 Further improve electric quote support for Markdown (Bug#24709)
18761 Markdown sets both 'comment-start' and 'comment-use-syntax' to non-nil
18762 values. Therefore 'electric-quote-mode' recognized it as a
18763 programming mode. Fix this by first checking whether the current
18764 major mode is derived from 'text-mode'.
18766 * lisp/electric.el (electric-quote-post-self-insert-function): Treat
18767 'text-mode' as stronger signal than comment syntax.
18769 * test/lisp/electric-tests.el (electric-quote-markdown-in-text)
18770 (electric-quote-markdown-in-code): Adapt unit tests.
18772 2017-07-09 Philipp Stephani <phst@google.com>
18774 Remove pointless code in 'electric-quote-mode'
18776 * lisp/electric.el (electric-quote-post-self-insert-function): Remove
18779 2017-07-09 Philipp Stephani <phst@google.com>
18781 Refactor 'electric-quote-mode'
18783 * lisp/electric.el (electric-quote-post-self-insert-function): Remove
18784 local variable 'start', which was misnamed and only used once.
18786 2017-07-09 Saulius Menkevičius <saulius.menkevicius@gmail.com> (tiny change)
18788 Avoid crashes on MS-Windows starting 64-bit .NET executables
18790 * src/w32proc.c (w32_executable_type): Don't assume that the
18791 import directory in a DLL will always be non-NULL. (Bug#27527)
18793 2017-07-09 Eli Zaretskii <eliz@gnu.org>
18795 Avoid compilation warning in files.el
18797 * lisp/files.el (auto-save-visited-file-name): Avoid obsoletion
18798 warning due to its use in auto-save-visited-mode.
18800 2017-07-09 Eli Zaretskii <eliz@gnu.org>
18802 Improve indexing of VC-related stuff in the Emacs manual
18804 * doc/emacs/maintaining.texi (Version Control): Add a "VC" index
18807 2017-07-09 Eli Zaretskii <eliz@gnu.org>
18809 Speed up display of line numbers for very large buffers
18811 * src/xdisp.c (maybe_produce_line_number): Speed up line counting
18812 using values cached by mode-line display of line numbers.
18815 2017-07-09 Alexander Kuleshov <kuleshovmail@gmail.com>
18817 Define internal_border_parts for window systems only (Bug#27615)
18819 * src/keyboard.c: (internal_border_parts): Define only
18820 when HAVE_WINDOW_SYSTEM is enabled. (Bug#27615)
18822 2017-07-09 R. Bernstein <rocky@gnu.org>
18824 Add realgud faces faces to whiteboard...
18826 Adjust wheatgrass to use underline for enabled/disabled breakpoints
18828 2017-07-08 Noam Postavsky <npostavs@gmail.com>
18830 Optimize UCS normalization tests
18832 Brings the the time for `ucs-normalize-part1' from 200s down to 130s.
18833 * test/lisp/international/ucs-normalize-tests.el
18834 (ucs-normalize-tests--parse-column): Use character instead of string
18835 of length 1 for terminator. Convert return value into string since
18836 all callers need that form anyway.
18837 (ucs-normalize-tests--normalization-equal-p): Rename from
18838 ucs-normalize-tests--normalize. Use dedicated buffer instead of
18839 messing with narrowing. Take string to compare against and insert it
18840 into buffer so that compare-buffer-substrings can be used instead of
18841 allocating a new string from buffer contents.
18842 (ucs-normalize-tests--normalization-chareq-p): New macro, specialized
18843 for comparing single character.
18844 (ucs-normalize-tests--rule1-holds-p)
18845 (ucs-normalize-tests--rule2-holds-p): Turn into defsubst.
18846 (ucs-normalize-tests--rule1-failing-for-partX): Use `eq' instead of
18849 2017-07-08 Noam Postavsky <npostavs@gmail.com>
18851 Update failing lines for UCS normalize tests
18853 * test/lisp/international/ucs-normalize-tests.el
18854 (ucs-normalize-tests--failing-lines-part2): Update for new
18855 admin/unidata/NormalizationTest.txt version.
18857 2017-07-08 Noam Postavsky <npostavs@gmail.com>
18859 Semi-automate the procedure for updating UCS normalize test bad lines
18861 * test/lisp/international/ucs-normalize-tests.el: Remove incorrect
18862 commentary describing a manual procedure for producing the updated
18863 failing lines, it did not actually work. Replace it with pointer to
18864 new function which prints the updated values.
18865 (ucs-normalize-tests--rule1-holds-p): Renamed from
18866 ucs-normalize-tests--invariants-hold-p.
18867 (ucs-normalize-tests--rule2-holds-p): Renamed from
18868 ucs-normalize-tests--invariants-rule2-hold-p.
18869 (ucs-normalize-tests--rule1-failing-for-partX): Renamed from
18870 ucs-normalize-tests--invariants-failing-for-part.
18871 (ucs-normalize-tests--rule1-failing-for-lines): Renamed from
18872 ucs-normalize-tests--invariants-failing-for-lines.
18873 (ucs-normalize-tests--part2-rule1-failed-lines): New variable.
18874 (ucs-normalize-part2): Set it.
18875 (ucs-normalize-part1): Always run through to end of test before
18876 checking for failures.
18877 (ucs-normalize-tests--insert-failing-lines)
18878 (ucs-normalize-check-failing-lines): New functions, used to update
18879 the *--failing-lines-part* variables.
18881 2017-07-08 Paul Eggert <eggert@cs.ucla.edu>
18883 * lisp/cus-start.el (standard): Spelling fix.
18885 2017-07-08 Philipp Stephani <phst@google.com>
18887 Module assertions: check for garbage collections
18889 It's technically possible to write a user pointer finalizer that calls
18890 into Emacs module functions. This would be disastrous because it
18891 would allow arbitrary Lisp code to run during garbage collection.
18892 Therefore extend the module assertions to check for this case.
18894 * src/emacs-module.c (module_assert_thread): Also check whether a
18895 garbage collection is in progress.
18897 * test/data/emacs-module/mod-test.c (invalid_finalizer)
18898 (Fmod_test_invalid_finalizer): New test module functions.
18899 (emacs_module_init): Register new test function.
18901 * test/src/emacs-module-tests.el (module--test-assertion)
18902 (module--with-temp-directory): New helper macros.
18903 (module--test-assertions--load-non-live-object): Rename existing
18904 unit test, use helper macros.
18905 (module--test-assertions--call-emacs-from-gc): New unit test.
18907 2017-07-08 Eli Zaretskii <eliz@gnu.org>
18909 Capitalize the menu entry for display-line-numbers
18911 * lisp/menu-bar.el (menu-bar-showhide-menu): Capitalize menu item
18912 for display-line-numbers. Suggested by Martin Rudalics
18915 2017-07-08 Eli Zaretskii <eliz@gnu.org>
18917 Update Unicode data and files to Unicode 10.0
18919 * admin/notes/unicode:
18920 * admin/unidata/README:
18921 * admin/unidata/BidiBrackets.txt:
18922 * admin/unidata/BidiMirroring.txt:
18923 * admin/unidata/Blocks.txt:
18924 * admin/unidata/IVD_Sequences.txt:
18925 * admin/unidata/NormalizationTest.txt:
18926 * admin/unidata/SpecialCasing.txt:
18927 * admin/unidata/UnicodeData.txt:
18928 * lisp/international/characters.el:
18929 * lisp/international/fontset.el (script-representative-chars):
18930 * lisp/international/mule-cmds.el (ucs-names): Update per Unicode 10.0.
18932 2017-07-08 Alexander Gramiak <agrambot@gmail.com>
18934 Support '=' in Scheme and Lisp tags in 'etags'
18936 * lib-src/etags.c (get_lispy_tag): New function.
18937 (L_getit, Scheme_functions): Use get_lispy_tag (Bug#5624).
18938 * test/manual/etags/CTAGS.good:
18939 * test/manual/etags/ETAGS.good_1:
18940 * test/manual/etags/ETAGS.good_2:
18941 * test/manual/etags/ETAGS.good_3:
18942 * test/manual/etags/ETAGS.good_4:
18943 * test/manual/etags/ETAGS.good_5:
18944 * test/manual/etags/ETAGS.good_6:
18945 * test/manual/etags/Makefile:
18946 * test/manual/etags/el-src/TAGTEST.EL: Update tests.
18947 * test/manual/etags/scm-src/test.scm: New tests for Scheme.
18949 2017-07-08 Alexander Kuleshov <kuleshovmail@gmail.com>
18951 Avoid compiler warnings in xdisp.c debugging code
18953 * src/xdisp.c (dump_glyph, dump_glyph_row, Fdump_glyph_matrix):
18954 Use pD directives for ptrdiff_t values instead of pI, to avoid
18955 compilation warnings on 64-bit hosts. (Bug#27597)
18957 2017-07-08 Eli Zaretskii <eliz@gnu.org>
18959 Commentary enhancement in frame.el
18961 * lisp/frame.el: Explain how to test whether a variable needs to
18962 be added to the list of those which are watched for buffer
18965 2017-07-08 Eli Zaretskii <eliz@gnu.org>
18967 Support display of line numbers natively
18969 This merges branch 'line-numbers'.
18970 * src/buffer.c (disable_line_numbers_overlay_at_eob): New
18972 * src/lisp.h (disable_line_numbers_overlay_at_eob): Add prototype.
18973 * src/dispextern.h (struct it): New members pt_lnum, lnum,
18974 lnum_bytepos, lnum_width, and lnum_pixel_width.
18975 * src/indent.c (line_number_display_width): New function,
18976 refactored from line-number width calculations in vertical-motion.
18977 (Fvertical_motion): Call line_number_display_width when the width
18978 of line-number display is needed.
18979 (Fline_number_display_width): New defun.
18980 (syms_of_indent): Defsubr it.
18981 * src/indent.c (Fvertical_motion): Help C-n/C-p estimate correctly
18982 the width used up by line numbers by looking near the window-start
18983 point. If window-start is outside of the accessible portion,
18984 temporarily widen the buffer.
18985 * src/term.c (produce_glyphs): Adjust tab stops for the horizontal
18986 space taken by the line-number display.
18987 * src/xdisp.c (display_count_lines_logically)
18988 (display_count_lines_visually, maybe_produce_line_number)
18989 (should_produce_line_number, row_text_area_empty): New functions.
18990 (try_window_reusing_current_matrix): Don't use this method when
18991 display-line-numbers is in effect.
18992 (try_window_id, try_cursor_movement): Disable these optimizations
18993 when the line-number-current-line face is different from
18994 line-number face and for relative line numbers.
18995 (try_window_id, redisplay_window, try_cursor_movement): For
18996 visual line-number display, disable the same redisplay
18997 optimizations as for relative.
18998 (x_produce_glyphs): Adjust tab stops for the horizontal
18999 space taken by the line-number display.
19000 (hscroll_window_tree): Adjust hscroll calculations to line-number
19002 (DISP_INFINITY): Renamed from INFINITY to avoid clashes with
19003 math.h; all users changed.
19004 (set_cursor_from_row): Fix calculation of cursor X coordinate in
19005 R2L rows with display-produced glyphs at the beginning.
19006 (display_line): Use should_produce_line_number to determine
19007 whether a line number should be produced for each glyph row, and
19008 maybe_produce_line_number to produce line numbers.
19009 Don't display line numbers in the minibuffer and in tooltip
19011 Call row_text_area_empty to verify that a glyph
19012 row's text area is devoid of any glyphs that came from a buffer or
19013 a string. This fixes a bug with empty-lines indication
19014 disappearing when line numbers or line-prefix are displayed.
19015 (syms_of_xdisp) <display-line-numbers, display-line-numbers-widen>
19016 <display-line-number-width>: New buffer-local variables.
19017 <display-line-numbers-current-absolute>: New variable.
19019 * lisp/cus-start.el (standard): Provide customization forms for
19020 display-line-numbers and its sub-features.
19021 * lisp/faces.el (line-number, line-number-current-line): New faces.
19022 * lisp/frame.el: Add display-line-numbers, display-line-numbers-widen,
19023 display-line-numbers-current-absolute, and
19024 display-line-number-width to the list of variables that should
19025 trigger redisplay of the current buffer.
19026 * lisp/menu-bar.el (menu-bar-showhide-menu): Add menu-bar item to
19027 turn display-line-numbers on and off.
19028 (toggle-display-line-numbers): New function.
19029 * lisp/simple.el (last--line-number-width): New internal variable.
19030 (line-move-visual): Use it to adjust temporary-goal-column when
19031 line-number display changes its width.
19033 * doc/emacs/basic.texi (Position Info): Add cross-reference to
19034 "Display Custom", for line-number display.
19035 * doc/emacs/custom.texi (Init Rebinding):
19036 * doc/emacs/modes.texi (Minor Modes): Remove references to
19038 * doc/emacs/display.texi (Display Custom): Describe the
19039 line-number display.
19040 * doc/lispref/display.texi (Size of Displayed Text): Document
19041 line-number-display-width.
19043 * etc/NEWS: Document display-line-numbers and its customizations.
19045 2017-07-08 Paul Eggert <eggert@cs.ucla.edu>
19047 Fix more ungetc bugs with encoding errors
19049 * src/lread.c (infile): New variable, replacing ...
19050 (instream): ... this. All uses changed.
19051 (readbyte_from_stdio): New function, which deals with lookahead.
19052 (readbyte_from_file, Fget_file_char): Use it.
19053 (Fget_file_char): When misused, signal an error instead of
19054 relying on undefined behavior.
19055 (close_infile_unwind): New function.
19057 (readevalloop): 2nd arg is now struct infile *, not FILE *.
19058 All callers changed.
19059 (read1): Handle lookahead when copying doc strings with
19062 2017-07-08 Paul Eggert <eggert@cs.ucla.edu>
19064 Avoid ungetc when loading charset maps from files
19066 * src/charset.c (read_hex): New args LOOKAHEAD and TERMINATOR,
19067 replacing the old EOF. All callers changed. This avoids the
19068 need to call ungetc.
19070 2017-07-08 Paul Eggert <eggert@cs.ucla.edu>
19072 Fix ungetc bug when reading an encoding error
19074 * src/lread.c (readchar, read_emacs_mule_char): Fix off-by-one
19075 error when reading an encoding error from a file, e.g., a symbol
19076 in an .elc file whose name is "\360\220\200\360".
19078 2017-07-07 Stefan Monnier <monnier@iro.umontreal.ca>
19080 * lisp/wid-edit.el (widget-color--choose-action): Use a closure
19082 * lisp/window.el (display-buffer--special-action): Use a closure.
19084 2017-07-07 Stephen Berman <stephen.berman@gmx.net>
19086 Add new todo-mode.el tests
19088 * test/lisp/calendar/todo-mode-tests.el (with-todo-test):
19089 Declare an Edebug spec. Restore pre-test-run state of test files.
19090 (todo-test--show, todo-test--move-item)
19091 (todo-test--insert-item): New functions.
19092 (todo-test-get-archive): Remove, as subsumed by
19093 todo-test--show. Adjust all callers.
19094 (todo-test--is-current-buffer): Rename from
19095 todo-test-is-current-buffer and adjust uses.
19096 (todo-test-item-highlighting): Use todo-test--show.
19097 (todo-test-revert-buffer01, todo-test-revert-buffer02)
19098 (todo-test-raise-lower-priority)
19099 (todo-test-todo-mark-unmark-category, todo-test-move-item01)
19100 (todo-test-move-item02, todo-test-move-item03)
19101 (todo-test-move-item04, todo-test-move-item05)
19102 (todo-test-toggle-item-header01)
19103 (todo-test-toggle-item-header02)
19104 (todo-test-toggle-item-header03)
19105 (todo-test-toggle-item-header04)
19106 (todo-test-toggle-item-header05)
19107 (todo-test-toggle-item-header06)
19108 (todo-test-toggle-item-header07): New tests.
19110 * test/lisp/calendar/todo-mode-resources/todo-test-1.toda:
19111 * test/lisp/calendar/todo-mode-resources/todo-test-1.todo:
19112 Modify to accommodate new tests.
19114 2017-07-07 Stephen Berman <stephen.berman@gmx.net>
19116 todo-mode.el: Fix handling of hidden item headers (bug#27609)
19118 * lisp/calendar/todo-mode.el (todo--item-headers-hidden): New variable.
19119 (todo-toggle-item-header): Use it. Make this command a noop
19120 if the file has no items.
19121 (todo-move-item, todo-item-done): Instead of concatenating the
19122 items to move into one string, make a list of them to
19123 facilitate handling hidden headers. Adjust insertion accordingly.
19124 (todo-archive-done-item): Handle hidden headers in archive file.
19125 (todo-unarchive-items): Handle hidden headers in todo file.
19126 (todo-backward-item): Use todo--item-headers-hidden and handle
19127 moving backward work when item date-time headers are hidden.
19128 (todo-remove-item): Delete date-time header overlay.
19129 (todo-get-overlay, todo-insert-with-overlays): Make them work
19130 with hidden date-time headers.
19131 (todo-modes-set-2): Make todo--item-headers-hidden buffer local.
19133 2017-07-07 Stephen Berman <stephen.berman@gmx.net>
19135 Fix several todo-mode bugs found while debugging bug#27609
19137 * lisp/calendar/todo-mode.el (todo-toggle-mark-item): Calculate
19138 current category only once.
19139 (todo-mark-category): Update number of marked items to avoid
19140 spurious duplication in todo-categories-with-marks alist and
19141 corruption of the todo-categories alist. Handle empty line
19142 when there are no todo items and done items are shown.
19143 (todo-set-item-priority): Make noop if called from
19144 todo-raise-item-priority or todo-lower-item-priority when
19145 point is on a done todo item or an empty line.
19146 (todo-move-item): Use markers instead of integer positions to
19147 correctly handle deleting the now moved items from the source
19148 category (without markers an infinite loop arises when moving
19149 marked item to a preceding category).
19150 (todo-unarchive-items): Put point on the (first) restored done
19151 item, instead of leaving it at the end of the done items
19153 (todo-revert-buffer): Ensure buffer remains read-only after
19156 2017-07-07 Eli Zaretskii <eliz@gnu.org>
19158 Exclude blank columns from value of line-number-display-width
19160 * src/indent.c (Fline_number_display_width): Don't add 2 to the
19161 number of columns we return, to make this consistent with
19162 display-line-number-width.
19164 2017-07-07 Eli Zaretskii <eliz@gnu.org>
19166 Fix vertical-motion across the place where line-number width changes
19168 * src/indent.c (line_number_display_width): New function,
19169 refactored from line-number width calculations in vertical-motion.
19170 (Fvertical_motion): Call line_number_display_width when the width
19171 of line-number display is needed.
19172 (Fline_number_display_width): New defun.
19173 (syms_of_indent): Defsubr it.
19175 * doc/lispref/display.texi (Size of Displayed Text): Document
19176 line-number-display-width.
19178 * etc/NEWS: Mention line-number-display-width.
19180 * lisp/simple.el (last--line-number-width): New internal variable.
19181 (line-move-visual): Use it to adjust temporary-goal-column when
19182 line-number display changes its width.
19184 2017-07-07 Martin Rudalics <rudalics@gmx.at>
19186 Remove Vwindow_text_change_functions and related code
19188 Vwindow_text_change_functions had been provided for implementing
19189 line numbers but apparently was never functional or in use.
19191 * src/xdisp.c (redisplay_window): Remove handling of
19192 Vwindow_text_change_functions.
19193 (syms_of_xdisp): Remove Qwindow_text_change_functions.
19194 (Vwindow_text_change_functions): Remove variable.
19195 * doc/lispref/hooks.texi (Standard Hooks): Remove entry for
19196 `window-text-change-functions'.
19198 2017-07-07 Mark Oteiza <mvoteiza@udel.edu>
19200 Convert more uses of looking-at to following-char
19202 More followup to Karl Fogel's commit a84da83c1.
19203 * lisp/dired-aux.el (dired-add-entry, dired-subdir-hidden-p):
19204 * lisp/dired-x.el (dired-mark-unmarked-files, dired-mark-sexp):
19205 * lisp/help-fns.el (doc-file-to-man, doc-file-to-info):
19206 * lisp/proced.el (proced-toggle-marks):
19207 * lisp/progmodes/f90.el (f90-indent-line):
19208 * lisp/ses.el (ses-load):
19209 * lisp/tar-mode.el (tar-expunge): Replace instances of looking-at with
19210 char comparisons using following-char.
19212 2017-07-07 Noam Postavsky <npostavs@gmail.com>
19214 Don't skip epg tests (Bug#23561)
19216 * test/lisp/epg-tests.el (with-epg-tests): Ignore REQUIRE-PASSPHRASE
19217 parameter, since we supply the passphrase via pinentry-program for all
19218 GPG versions (as of 2017-02-28 "Fix epg-tests with dummy-pinentry
19219 program (Bug#23619)").
19220 (epg-tests-program-alist-for-passphrase-callback): Remove.
19222 2017-07-06 Eli Zaretskii <eliz@gnu.org>
19224 Implement line numbers that disregard narrowing
19226 * src/xdisp.c (display_count_lines_logically): New function,
19227 counts line numbers disregarding narrowing. Suggested by Andy
19228 Moreton <andrewjmoreton@gmail.com>.
19229 (maybe_produce_line_number): Call display_count_lines_logically
19230 instead of display_count_lines. Adapt BEGV, ZV, etc. to
19231 display-line-numbers-widen.
19232 (syms_of_xdisp) <display-line-numbers-widen>: New buffer-local
19235 * lisp/cus-start.el (standard): Provide a customization form for
19236 display-line-numbers-widen.
19237 * lisp/frame.el: Add display-line-numbers-widen,
19238 display-line-numbers-current-absolute, and
19239 display-line-number-width to the list of variables that should
19240 trigger redisplay of the current buffer.
19242 * doc/emacs/display.texi (Display Custom): Document
19243 display-line-numbers-widen.
19245 2017-07-06 Noam Postavsky <npostavs@gmail.com>
19247 Fix lisp-comment-indent for single-semicolon case
19249 * lisp/emacs-lisp/lisp-mode.el (lisp-comment-indent): Only check for
19250 open paren if we're looking at multiple comment characters.
19251 * test/lisp/emacs-lisp/lisp-mode-tests.el (lisp-comment-indent-1)
19252 (lisp-comment-indent-2): New tests.
19254 2017-07-06 Paul Eggert <eggert@cs.ucla.edu>
19258 * lisp/org/org-table.el (org-table-sort-lines):
19259 Fix misspelling in prompt.
19260 * lisp/org/ox-ascii.el (org-ascii--describe-datum):
19261 Fix misspelling in call to org-element-lineage.
19263 2017-07-06 Noam Postavsky <npostavs@gmail.com>
19265 Don't put whitespace between open paren and comment in Lisp modes (Bug#19740)
19267 * lisp/emacs-lisp/lisp-mode.el (lisp-comment-indent): If current
19268 line's code ends in open paren, set comment indentation exactly to
19269 column following it.
19270 (lisp-mode-variables): Set `comment-indent-function' to
19271 `lisp-comment-indent'.
19273 2017-07-06 Noam Postavsky <npostavs@gmail.com>
19275 Allow comment-indent-functions to specify exact indentation (Bug#385)
19277 * lisp/newcomment.el (comment-choose-indent): Interpret a cons of two
19278 integers as indicating a range of acceptable indentation.
19279 (comment-indent): Don't apply `comment-inline-offset',
19280 `comment-choose-indent' already does that.
19281 (comment-indent-function):
19282 * doc/emacs/programs.texi (Options for Comments): Document new
19283 acceptable return values.
19284 * etc/NEWS: Announce it.
19286 2017-07-06 Paul Eggert <eggert@cs.ucla.edu>
19288 Check for integer overflow in xbm images
19290 * src/image.c (XBM_TK_OVERFLOW): New constant.
19291 (xbm_scan): Check for integer overflow instead of relying on
19292 undefined behavior. Check that octal digits are actually octal.
19294 2017-07-06 Paul Eggert <eggert@cs.ucla.edu>
19296 Convert hex digits more systematically
19298 This makes the code a bit smaller and presumably faster, as
19299 it substitutes a single lookup for conditional jumps.
19300 * src/character.c (hexdigit): New constant.
19301 (syms_of_character) [HEXDIGIT_IS_CONST]: Initialize it.
19302 * src/character.h (HEXDIGIT_CONST, HEXDIGIT_IS_CONST): New macros.
19303 (hexdigit): New decl.
19304 (char_hexdigit): New inline function.
19305 * src/charset.c: Do not include c-ctype.h.
19306 * src/charset.c (read_hex):
19307 * src/editfns.c (styled_format):
19308 * src/image.c (xbm_scan):
19309 * src/lread.c (read_escape):
19310 * src/regex.c (ISXDIGIT) [emacs]:
19311 Use char_hexdigit insted of doing it by hand.
19313 2017-07-06 Paul Eggert <eggert@cs.ucla.edu>
19315 Don’t use -Woverride-init
19317 I have some further changes in mind that would also need to
19318 disable the -Woverride-init warnings. In practice these warnings
19319 seem to be more trouble than they’re worth, so disable them in the
19321 * configure.ac: Disable -Woverride-init here ...
19322 * src/bytecode.c: ... rather than here.
19324 2017-07-05 Glenn Morris <rgm@gnu.org>
19326 * lisp/progmodes/python.el (auto-mode-alist): Add .pyi. (Bug#27847)
19328 * lisp/org/ox-html.el (org-html-infojs-template): Update copyright.
19330 2017-07-05 Glenn Morris <rgm@gnu.org>
19332 Small fix for bug-reference.el
19334 * lisp/progmodes/bug-reference.el (bug-reference-bug-regexp):
19335 Autoload safety property. (Bug#27481)
19337 2017-07-05 Michael Albinus <michael.albinus@gmx.de>
19339 Suppress timers in Tramp
19341 * lisp/net/tramp.el (tramp-file-name-handler): Don't trigger timers.
19343 * test/lisp/net/tramp-tests.el
19344 (tramp-test36-asynchronous-requests): Trigger timers.
19345 (tramp-test37-recursive-load, tramp-test38-remote-load-path):
19346 Set `default-directory' to a trustworthy value.
19348 2017-07-05 rocky <rb@dustyfeet.com>
19350 Add realgud face definitions
19352 Add realgud faces to tdsh-dark-theme
19354 2017-07-05 Stefan Monnier <monnier@iro.umontreal.ca>
19356 * lisp/progmodes/cc-awk.el: Mark unused args
19358 * lisp/progmodes/cc-bytecomp.el: Mark unused args
19360 2017-07-05 Stefan Monnier <monnier@iro.umontreal.ca>
19362 * lisp/progmodes/cc-defs.el (lookup-syntax-properties): Move ...
19364 ... before first use
19366 2017-07-05 Stefan Monnier <monnier@iro.umontreal.ca>
19368 * lisp/progmodes/cc-vars.el: Mark unused args
19370 2017-07-05 Stefan Monnier <monnier@iro.umontreal.ca>
19372 * lisp/progmodes/cc-langs.el: Mark unused args
19374 (c-primary-expr-regexp): Remove unused vars ambiguous-prefix-ops and
19375 unambiguous-prefix-ops.
19377 2017-07-05 Stefan Monnier <monnier@iro.umontreal.ca>
19379 * lisp/progmodes/cc-engine.el: Mark unused args
19381 (c-beginning-of-statement-1, c-guess-basic-syntax):
19382 Remove unused var c-in-literal-cache.
19383 (c-debug-sws-msg): Silence byte-compiler, even if we don't use the arg.
19384 (c-append-to-state-cache): Remove unused var `bra+1s'.
19385 (c-remove-stale-state-cache): Remove unused var `pps-point-state'.
19386 (c-invalidate-state-cache-1): Remove unused var `pa'.
19387 (c-forward-decl-or-cast-1): Change comments so they don't look like
19389 (c-restricted-<>-arglists, c-parse-and-markup-<>-arglists):
19390 Declare before first use.
19391 (c-forward-decl-or-cast-1): Remove unused var `backup-kwd-sym'.
19392 (c-backward-over-enum-header): Remove unused var `up-sexp-pos'.
19394 2017-07-05 Stefan Monnier <monnier@iro.umontreal.ca>
19396 * lisp/progmodes/cc-cmds.el: Remove unused vars
19398 (c-syntactic-context): Declare as dynbound.
19399 (c-beginning-of-defun, c-end-of-defun): Remove unused var `start'.
19401 2017-07-05 Stefan Monnier <monnier@iro.umontreal.ca>
19403 * lisp/progmodes/cc-guess.el: Remove unused var
19405 (c-guess-view-reorder-offsets-alist-in-style): Remove redundantly bound
19406 and computed variable `guessed-syntactic-symbols'.
19408 2017-07-05 Stefan Monnier <monnier@iro.umontreal.ca>
19410 * lisp/progmodes/cc-align.el: Mark unused arguments
19412 2017-07-05 Stefan Monnier <monnier@iro.umontreal.ca>
19414 * lisp/progmodes/cc-mode.el: Mark unused arguments
19416 (c-parse-quotes-before-change, c-parse-quotes-after-change):
19417 Remove unused vars.
19419 2017-07-05 Noam Postavsky <npostavs@gmail.com>
19421 Mention `ffap-url-unwrap-local' in find-file-at-point's docstring (Bug#27564)
19423 * lisp/ffap.el (find-file-at-point): Mention `ffap-url-unwrap-local'
19424 and `ffap-url-unwrap-remote'.
19426 2017-07-05 Noam Postavsky <npostavs@gmail.com>
19428 Fix infloop in uncomment-region-default (Bug#27112)
19430 When `comment-continue' has only blanks, `comment-padright' produces a
19431 regexp that matches the empty string, so `uncomment-region-default'
19432 will loop infinitely.
19433 * lisp/newcomment.el (comment-padright): Only return a regexp if STR
19434 has nonblank characters.
19436 2017-07-04 Eli Zaretskii <eliz@gnu.org>
19438 Fix display of current line number in visual mode
19440 * src/xdisp.c (maybe_produce_line_number): Fix visual-mode display
19441 of current line when line-number-current-line face was customized.
19442 Reported by Filipe Silva <filipe.silva@gmail.com>.
19444 2017-07-03 Philipp Stephani <phst@google.com>
19446 Use hook instead of face list to inhibit electric quoting
19448 This is more flexible and doesn't couple electric quoting to font
19450 Give that 'electric-quote-code-faces' was just introduced, remove it
19451 without formal deprecation.
19453 * lisp/electric.el (electric-quote-inhibit-functions): New abnormal
19455 (electric-quote-post-self-insert-function): Run the hook. Remove
19456 use of old 'electric-quote-code-faces' variable.
19458 * test/lisp/electric-tests.el (electric-quote-markdown-in-text)
19459 (electric-quote-markdown-in-code): Adapt unit tests.
19461 2017-07-03 Ingo Lohmar <i.lohmar@gmail.com>
19463 Offer non-aligned indentation in lists in js-mode (Bug#27503)
19465 * lisp/progmodes/js.el (js--proper-indentation):
19466 New customization option 'js-indent-align-list-continuation'.
19467 Affects argument lists as well as arrays and object properties.
19468 * test/manual/indent/js-indent-align-list-continuation-nil.js:
19471 2017-07-03 Eli Zaretskii <eliz@gnu.org>
19473 Avoid errors in vertical-motion when buffer is narrowed
19475 * src/indent.c (Fvertical_motion): If need to start from
19476 window-start, and it is outside of the accessible portion,
19477 temporarily widen the buffer. This avoids errors in evil-mode.
19478 Reported by James Nguyen <james@jojojames.com>.
19480 2017-07-03 Michael Albinus <michael.albinus@gmx.de>
19482 (Re-)activate remote tests of filenotify-tests.el
19484 * test/lisp/filenotify-tests.el
19485 (file-notify-test-remote-temporary-file-directory):
19486 Declare default host for mock method. Offer home directory
19487 for mock method if it doesn't exist.
19488 (file-notify-test09-watched-file-in-watched-dir-remote):
19489 Remove, it doesn't work reliably.
19491 2017-07-03 Noam Postavsky <npostavs@gmail.com>
19493 Reset ansi escape context before printing eshell prompt (Bug#27407)
19495 * lisp/eshell/em-prompt.el (eshell-emit-prompt): Reset
19496 `ansi-color-context-region'.
19498 2017-07-03 Noam Postavsky <npostavs@gmail.com>
19500 Let ansi-color overlay hooks work in eshell (Bug#27407)
19502 * lisp/ansi-color.el (ansi-color-make-extent): Add
19503 `ansi-color-freeze-overlay' to `insert-behind-hooks' as well.
19504 * lisp/eshell/esh-mode.el (eshell-output-filter): Let-bind
19505 `inhibit-modification-hooks' to nil while inserting the string.
19507 2017-07-03 Noam Postavsky <npostavs@gmail.com>
19509 Fix and simplify ansi escape detection (Bug#21381)
19511 * lisp/ansi-color.el (ansi-color-regexp, ansi-color-drop-regexp):
19513 (ansi-color-control-seq-regexp): New constant, matches all escape
19515 (ansi-color-filter-apply, ansi-color-apply)
19516 (ansi-color-filter-region, ansi-color-apply-on-region): Use it instead
19517 of matching color sequences separately from ignored sequences.
19518 Differentiate color sequences simply by checking the last character.
19520 2017-07-03 Damien Cassou <damien@cassou.me>
19522 Add absolute optional parameter to line-number-at-pos (Bug#26417)
19524 * lisp/simple.el (line-number-at-pos): Add a second optional
19525 argument 'absolute'.
19526 * test/lisp/simple-tests.el: Add tests for 'line-number-at-pos'.
19528 2017-07-03 R. Bernstein <rocky@gnu.org>
19532 2017-07-03 Michael Albinus <michael.albinus@gmx.de>
19534 Fix tramp-tests.el for hydra
19536 * test/Makefile.in: Remove instrumentation for tramp-tests.
19538 * test/lisp/net/tramp-tests.el (tramp-test36-asynchronous-requests):
19539 Remove instrumentation. Wrap with a timeout. Give hydra
19540 another timer value. Set `default-directory' in timer.
19542 2017-07-03 Bastien <bzg@gnu.org>
19544 Merge branch 'master' into scratch/org-mode-merge
19546 Merge branch 'master' into scratch/org-mode-merge
19548 2017-07-03 Tino Calancha <tino.calancha@gmail.com>
19550 dired-do-shell-command: Fix check for wildcards
19552 * lisp/dired-aux.el (dired-do-shell-command): Replace just '?', '*'
19553 and '`?' i.e., keep the whitespaces.
19554 * test/lisp/dired-aux-tests.el (dired-test-bug27496): Add test.
19556 2017-07-02 Noam Postavsky <npostavs@gmail.com>
19558 Split shr-copy-url dwim behavior into separate functions (Bug#26826)
19560 * lisp/net/shr.el (shr-url-at-point, shr-probe-url)
19561 (shr-probe-and-copy-url, shr-maybe-probe-and-copy-url): New functions,
19562 split out from `shr-copy-url'.
19563 (shr-copy-url): Only copy the url, don't fetch it.
19564 (shr-map): Bind 'w' and 'u' to `shr-maybe-probe-and-copy-url', which
19565 has the same behavior as the old `shr-copy-url'.
19566 * etc/NEWS: Announce changes.
19568 2017-07-02 Alex Branham <branham@utexas.edu> (tiny change)
19570 Make eww-search-words prompt for query if nothing selected
19572 * lisp/net/eww.el (eww-search-words): Make eww-search-words prompt the
19573 user for a search query if the region is inactive or if the region is
19576 2017-07-02 Noam Postavsky <npostavs@gmail.com>
19578 * lisp/emacs-lisp/cl-print.el (cl-print-compiled-button): t by default.
19580 * lisp/emacs-lisp/debug.el (debugger-insert-backtrace):
19581 * lisp/help-fns.el (describe-variable): No need to let-bind
19582 `cl-print-compiled-button' to t anymore.
19584 2017-07-02 Philipp Stephani <phst@google.com>
19586 Electric quotes: Improve support for Markdown mode (Bug#24709)
19588 Introduce a new user option 'electric-quote-context-sensitive'. If
19589 non-nil, have ' insert an opening quote if sensible.
19591 Also introduce a new variable 'electric-quote-code-faces'. Major
19592 modes such as 'markdown-mode' can add faces to this list to treat text
19593 as inline code and disable electric quoting.
19595 * lisp/electric.el (electric-quote-context-sensitive): New user
19597 (electric-quote-code-faces): New variable.
19598 (electric-quote-post-self-insert-function): Treat ' as ` if
19599 desired and applicable; disable electric quoting for given faces.
19601 * test/lisp/electric-tests.el (electric-quote-opening-single)
19602 (electric-quote-closing-single, electric-quote-opening-double)
19603 (electric-quote-closing-double)
19604 (electric-quote-context-sensitive-backtick)
19605 (electric-quote-context-sensitive-bob-single)
19606 (electric-quote-context-sensitive-bob-double)
19607 (electric-quote-context-sensitive-bol-single)
19608 (electric-quote-context-sensitive-bol-double)
19609 (electric-quote-context-sensitive-after-space-single)
19610 (electric-quote-context-sensitive-after-space-double)
19611 (electric-quote-context-sensitive-after-letter-single)
19612 (electric-quote-context-sensitive-after-letter-double)
19613 (electric-quote-context-sensitive-after-paren-single)
19614 (electric-quote-context-sensitive-after-paren-double)
19615 (electric-quote-markdown-in-text)
19616 (electric-quote-markdown-in-code): New unit tests.
19618 2017-07-02 Michael Albinus <michael.albinus@gmx.de>
19620 * doc/misc/tramp.texi: Replace ftp:// and http:// URLs by https://.
19622 2017-07-02 Eli Zaretskii <eliz@gnu.org>
19624 Avoid off-by-one errors in column C-n/C-p calculations
19626 * src/indent.c (Fvertical_motion): Help C-n/C-p estimate correctly
19627 the width used up by line numbers by looking near the window-start
19630 2017-07-02 Tino Calancha <tino.calancha@gmail.com>
19632 Ask confirmation for all suspicious wildcards
19634 * lisp/dired-aux.el (dired-do-shell-command): Check that all
19635 the wildcards are right. Otherwise, ask for confirmation (Bug#27496).
19637 2017-07-02 Tino Calancha <tino.calancha@gmail.com>
19639 Extend dired-do-shell-command substitutions
19641 Substitute "`?`" inside command with the current file name.
19643 https://lists.gnu.org/r/emacs-devel/2017-06/msg00618.html
19644 * lisp/dired-aux.el (dired-quark-subst-regexp, dired-star-subst-regexp):
19646 (dired-isolated-string-re): New defun.
19647 (dired--star-or-qmark-p): New predicate.
19648 (dired-do-shell-command): Use dired--star-or-qmark-p. Substitute "`?`"
19649 with the current file name.
19650 * doc/emacs/dired.texi (Shell Commands in Dired): Update manual.
19652 2017-07-02 Alan Mackenzie <acm@muc.de>
19654 Fix bug in yesterday's CC Mode commit.
19656 * lisp/progmodes/cc-mode.el (c-quoted-number-head-before-point): Check a
19657 search has succeded before using the match data.
19658 (c-quoted-number-head-before-point, c-quoted-number-head-after-point):
19659 Specify that the position of the extremity of the head or tail is in the
19662 2017-07-02 Philipp Stephani <phst@google.com>
19664 Remove FIXME comments about sentinel values
19666 These FIXMEs can't be addressed because they would require breaking
19667 changes to the module API. Furthermore, other module functions don't
19668 return sentinel values as well, so users generally have to call
19669 non_local_exit_check anyway.
19671 * src/emacs-module.c (module_set_user_ptr)
19672 (module_set_user_finalizer, module_vec_set, module_vec_size): Remove
19675 2017-07-02 Philipp Stephani <phst@google.com>
19677 Adapt Lisp reference to reader changes
19679 The reader now warns about some unescaped character literals, but
19680 still allows them for compatibility reasons. Slightly adapt the
19681 manual to forbid them officially.
19683 * doc/lispref/objects.texi (Basic Char Syntax): Document that
19684 backslashes are now required before some characters.
19686 2017-07-02 Michael Albinus <michael.albinus@gmx.de>
19690 * lisp/autorevert.el (auto-revert-find-file-function): New defun.
19691 (find-file-hook): Use it. (Bug#27502)
19692 (auto-revert-remove-current-buffer): New defun.
19693 (auto-revert-mode, auto-revert-buffers): Use it.
19695 2017-07-02 Noam Postavsky <npostavs@gmail.com>
19697 Let test summary go through even if some logs were not generated
19699 * lisp/emacs-lisp/ert.el (ert-summarize-tests-batch-and-exit): Check
19700 for existence of log files before reading.
19702 2017-07-01 Philipp Stephani <phst@google.com>
19704 * src/module-env-25.h (copy_string_contents): Fix comment.
19706 2017-07-01 Philipp Stephani <phst@google.com>
19708 Also mark module init function as noexcept if possible
19710 * src/emacs-module.h.in (emacs_module_init): Mark as noexcept if
19713 2017-07-01 Philipp Stephani <phst@google.com>
19715 Improve C++98 compatibility
19717 * src/emacs-module.h.in (emacs_funcall_exit): Lose trailing comma.
19718 C++98 doesn't allow trailing commas in enumerations.
19720 2017-07-01 Eli Zaretskii <eliz@gnu.org>
19722 Minor copyedits of manuals regarding bidi conformance
19724 * doc/emacs/mule.texi (Bidirectional Editing):
19725 * doc/lispref/display.texi (Bidirectional Display): Update the
19726 bidi conformance text.
19728 2017-07-01 Alan Mackenzie <acm@muc.de>
19730 Make C++ digit separators work. Amend the handling of single quotes generally
19732 Single quotes, even in strings and comments, are now marked with the
19733 "punctuation" syntax-table property, except where they are validly bounding a
19734 character literal. They are font locked with font-lock-warning-face except
19735 where they are valid. This is done in C, C++, ObjC, and Java Modes.
19737 * lisp/progmodes/cc-defs.el (c-clear-char-property-with-value-on-char-function)
19738 (c-clear-char-property-with-value-on-char, c-put-char-properties-on-char): New
19741 * lisp/progmodes/cc-fonts.el (c-font-lock-invalid-single-quotes): New function.
19742 (c-basic-matchers-before): invoke c-font-lock-invalid-single-quotes.
19744 * lisp/progmodes/cc-langs.el (c-get-state-before-change-functions): Remove
19745 c-before-after-change-digit-quote from wherever it occurs. Insert
19746 c-parse-quotes-before-change into the entries for the languages where it is
19748 (c-before-font-lock-functions): Remove c-before-after-change-digit-quote from
19749 wherever it occurs. Insert c-parse-quotes-after-change into the entries for
19750 the languages which need it.
19751 (c-has-quoted-numbers): New lang-defconst/-defvar.
19753 * lisp/progmodes/cc-mode.el (c-before-after-change-digit-quote): Remove.
19754 (c-maybe-quoted-number-head, c-maybe-quoted-number-tail)
19755 (c-maybe-quoted-number): New defconsts.
19756 (c-quoted-number-head-before-point, c-quoted-number-tail-after-point)
19757 (c-quoted-number-straddling-point, c-parse-quotes-before-change)
19758 (c-parse-quotes-after-change): New functions.
19760 2017-07-01 Noam Postavsky <npostavs@gmail.com>
19762 Ignore mouse-movement for describe-key-briefly (Bug#12204)
19764 * lisp/help.el (help-read-key-sequence): Add optional argument ot
19765 ignore `mouse-movement' events.
19766 (describe-key-briefly): Use it.
19767 * doc/emacs/help.texi (Key Help):
19768 * etc/NEWS: Mention that mouse movement is ignored.
19770 2017-07-01 Noam Postavsky <npostavs@gmail.com>
19772 Refactor key describing commands
19774 * lisp/help.el (help-read-key-sequence, help--analyze-key): New
19775 functions, extracted from `describe-key' and `describe-key-briefly'.
19776 (describe-key, describe-key-briefly): Use them.
19778 2017-07-01 Eli Zaretskii <eliz@gnu.org>
19780 Improve display of tabs with line numbers
19782 * src/xdisp.c (x_produce_glyphs): Improve calculation of next tab
19783 stop in hscrolled lines. Prevent aborts in compute_line_metrics.
19785 2017-07-01 Alan Third <alan@idiocy.org>
19787 Fix threads on NS (bug#25265)
19789 src/nsterm.h (ns_select): Compiler doesn't like sigmask being const.
19790 (ns_run_loop_break) [HAVE_PTHREAD]: New function.
19791 src/nsterm.m (ns_select): Call thread_select from within ns_select.
19792 (ns_run_loop_break) [HAVE_PTHREAD]: New function.
19793 (ns_send_appdefined): Don't wait for main thread when sending app
19795 src/process.c (wait_reading_process_output): Call thread_select from
19797 src/systhread.c (sys_cond_broadcast) [HAVE_NS]: Break ns_select out of
19798 its event loop using ns_run_loop_break.
19800 2017-07-01 Eli Zaretskii <eliz@gnu.org>
19802 Avoid slow redisplay under 'visual' mode of line numbers
19804 * src/xdisp.c (display_count_lines_visually): Avoid very slow
19805 redisplay when this function is invoked very far from point.
19806 Reported by Alex <agrambot@gmail.com>.
19808 2017-07-01 Noam Postavsky <npostavs@gmail.com>
19810 * lisp/help-fns.el (describe-variable): Let-bind cl-print-compiled-button.
19812 2017-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
19814 * lisp/emacs-lisp/cl-extra.el (cl--random-state): New defstruct
19816 (cl--random-state, cl--random-time): Move from cl-lib.el.
19817 (cl-random): Use struct accessors.
19818 (cl-random-state-p): Remove, provided by the defstruct.
19819 (cl-make-random-state): Rewrite to struct constructor.
19821 2017-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
19823 * lisp/emacs-lisp/debug.el (debugger-list-functions): Remove obsolete msg
19825 2017-06-30 Eli Zaretskii <eliz@gnu.org>
19827 Improve documentation of faces related to display-line-numbers
19829 * lisp/faces.el (line-number, line-number-current-line): Warn
19830 against using non-monospaced fonts.
19832 2017-06-30 Eli Zaretskii <eliz@gnu.org>
19834 Fix relative-number display with non-nil display-line-number-width
19836 * src/xdisp.c (maybe_produce_line_number): Don't treat a zero
19837 value of display-line-number-width as acceptable.
19838 Handle the case of 'relative' with display-line-number-width
19839 non-nil and smaller than the absolute line number requires.
19840 Reported by Alex <agrambot@gmail.com>.
19842 2017-06-30 Michael Albinus <michael.albinus@gmx.de>
19844 Release Tramp 2.3.2
19846 * doc/misc/tramp.texi (Android shell setup): Show default file name.
19849 * doc/misc/trampver.texi:
19850 * lisp/net/trampver.el: Change version to "2.3.2".
19852 * test/lisp/net/tramp-tests.el (tramp-test-temporary-file-directory):
19853 Offer home directory for mock method if it doesn't exist.
19855 2017-06-30 Eli Zaretskii <eliz@gnu.org>
19857 Add documentation for display-line-numbers
19859 * doc/emacs/custom.texi (Init Rebinding):
19860 * doc/emacs/modes.texi (Minor Modes): Remove references to
19862 * doc/emacs/display.texi (Display Custom): Describe the
19863 line-number display.
19864 (Optional Mode Line): Fix the index entry to not conflict with
19865 that in "Display Custom".
19866 * doc/emacs/basic.texi (Position Info): Add cross-reference to
19867 "Display Custom", for line-number display.
19869 * src/xdisp.c (syms_of_xdisp): <display-line-numbers>: Mention
19870 display-line-numbers-disable in the doc string.
19872 * lisp/cus-start.el (standard): Fix lst change.
19874 2017-06-30 Eli Zaretskii <eliz@gnu.org>
19876 Support displaying zero as the number of the current line
19878 * src/xdisp.c (syms_of_xdisp)
19879 <display-line-numbers-current-absolute>: New variable.
19880 <display-line-numbers>: Doc fix.
19881 (maybe_produce_line_number): Support nil value of
19882 display-line-numbers-current-absolute.
19884 * lisp/cus-start.el (standard): Add customization form for
19885 display-line-numbers-current-absolute.
19887 * etc/NEWS: Document recently introduced features.
19889 2017-06-30 Eli Zaretskii <eliz@gnu.org>
19891 Speed up the visual-mode relative line numbers
19893 * src/xdisp.c (display_count_lines_visually): Introduce a
19894 shortcut: if a relative line number was already calculated for
19895 this iterator object, just increase it instead of the
19896 expensive call to move_it_to. Argument list changed to pass a
19897 pointer to the iterator object.
19898 (maybe_produce_line_number): Adjust for change in signature of
19899 display_count_lines_visually. Record the relative line number and
19900 the corresponding byte position in the iterator object also in the
19903 2017-06-30 Eli Zaretskii <eliz@gnu.org>
19905 Fix hscrolling with line numbers on TTY frames
19907 * src/xdisp.c (hscroll_window_tree): Correct the X offset
19908 calculations on TTY frames.
19909 * src/term.c (produce_glyphs): Use it->lnum_pixel_width instead of
19910 a kludge using it->lnum_width.
19912 2017-06-30 Eli Zaretskii <eliz@gnu.org>
19914 Fix TAB display when the line-number face uses a smaller/larger font
19916 * src/dispextern.h (struct it): New member lnum_pixel_width.
19917 * src/xdisp.c (maybe_produce_line_number): Compute the width of
19918 the line-number display in pixels.
19919 (x_produce_glyphs): Use it->lnum_pixel_width instead of a kludge
19920 that used it->lnum_width and made assumptions about pixel width.
19922 2017-06-30 Noam Postavsky <npostavs@gmail.com>
19924 Escape NUL bytes in X selections (Bug#6991)
19926 * lisp/term/w32-win.el (w32--set-selection):
19927 * lisp/select.el (xselect--encode-string): Replace NUL bytes with
19929 * doc/emacs/killing.texi: Document new behavior.
19930 * etc/NEWS (times): Announce it.
19932 2017-06-30 Noam Postavsky <npostavs@gmail.com>
19934 Hide byte code in backtraces (Bug#6991)
19936 * lisp/emacs-lisp/debug.el (debugger-print-function): New defcustom,
19937 defaulting to `cl-print'.
19938 (debugger-insert-backtrace, debugger-setup-buffer): Use it instead of
19940 * etc/NEWS: Announce it.
19942 2017-06-30 Noam Postavsky <npostavs@gmail.com>
19944 Don't redundantly cl-print arglist in function docstring again
19946 * lisp/emacs-lisp/cl-print.el (cl-print-object): Don't print arglist
19948 * test/lisp/emacs-lisp/cl-print-tests.el (cl-print-tests-1): Update
19951 2017-06-30 Noam Postavsky <npostavs@gmail.com>
19953 Escape control characters in backtraces (Bug#6991)
19955 * src/print.c (syms_of_print): Add new variable,
19956 print-escape-control-characters.
19957 (print_object): Print control characters with octal escape codes when
19958 print-escape-control-characters is true.
19959 * lisp/subr.el (backtrace):
19960 * lisp/emacs-lisp/debug.el (debugger-setup-buffer): Bind
19961 `print-escape-control-characters' to t.
19963 2017-06-30 Noam Postavsky <npostavs@gmail.com>
19965 Improve ert backtrace recording
19967 Change ert to use the new `backtrace-frames' function instead of
19968 collecting frames one by one with `backtrace-frame'. Additionally,
19969 collect frames starting from `signal' instead the somewhat arbitrary
19970 "6 from the bottom". Skipping 6 frames would skip the expression that
19971 actually caused the signal that triggered the debugger. Possibly 6
19972 was chosen because in the case of a failed test, the triggering frame
19973 is an `ert-fail' call, which is not so interesting. But in case of a
19974 test throwing an error, this drops the `error' call which is too much.
19976 * lisp/emacs-lisp/debug.el (debugger-make-xrefs): Remove.
19977 * lisp/emacs-lisp/ert.el (ert--make-xrefs-region): Bring in relevant
19978 code from `debugger-make-xrefs'.
19979 (ert--print-backtrace): Add DO-XREFS parameter, delegate to
19980 `debugger-insert-backtrace'.
19981 (ert--run-test-debugger): Record the backtrace frames starting from
19982 the instigating `signal' call.
19983 (ert-run-tests-batch): Pass nil for `ert--print-backtrace's new
19984 DO-XREFS parameter.
19985 (ert-results-pop-to-backtrace-for-test-at-point): Pass t as DO-XREFS
19986 to `ert--print-backtrace' and remove call to `debugger-make-xrefs'.
19987 * test/lisp/emacs-lisp/ert-tests.el (ert-test-record-backtrace): Check
19988 the backtrace list instead of comparing its string representation.
19989 Expect `signal' to be the first frame.
19991 2017-06-30 Noam Postavsky <npostavs@gmail.com>
19993 Operate on frame list instead of printed backtrace
19995 * lisp/emacs-lisp/debug.el (debugger-insert-backtrace): New function,
19996 prints the given backtrace frames.
19997 (debugger-setup-buffer): Use it instead of editing the backtrace
20000 2017-06-29 Eli Zaretskii <eliz@gnu.org>
20004 * src/xdisp.c (maybe_produce_line_number): Fix bug that caused
20005 line numbers to be displayed in empty lines beyond ZV.
20006 (x_produce_glyphs): Start fixing TAB display in truncated lines.
20008 2017-06-29 Michael Albinus <michael.albinus@gmx.de>
20010 Improve timer handling when Tramp accepts output
20012 * lisp/net/tramp-compat.el: Avoid compiler warning.
20014 * lisp/net/tramp-sh.el (tramp-sh-file-name-handler):
20015 Remove lock machinery.
20017 * lisp/net/tramp.el (tramp-locked, tramp-locker): Move up.
20018 (tramp-file-name-handler): Add lock machinery from
20019 `tramp-sh-file-name-handler'. Allow timers to run.
20020 (tramp-accept-process-output): Remove nasty workaround.
20023 * test/lisp/net/tramp-tests.el (shell-command-sentinel):
20024 Suppress run in tests.
20025 (tramp--instrument-test-case-p): New defvar.
20026 (tramp--instrument-test-case): Use it in order to allow nested calls.
20027 (tramp--test-message, tramp--test-backtrace): New defsubst,
20028 will be used for occasional test instrumentation.
20029 (tramp-test00-availability, tramp-test31-vc-registered): Use them.
20030 (tramp-test28-shell-command)
20031 (tramp--test-shell-command-to-string-asynchronously): Suppress
20032 nasty messages. Don't overwrite sentinel.
20033 (tramp-test36-asynchronous-requests): Rewrite major parts.
20036 2017-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
20038 * lisp/url/url-history.el: Use lexical-binding
20040 (url-completion-function): Mark as obsolete.
20041 Mark unused args accordingly.
20043 2017-06-28 Noam Postavsky <npostavs@gmail.com>
20045 Don't assume url structs are vectors (Bug#27333)
20047 * lisp/url/url-history.el (url-history-update-url): Use `url-p'
20048 instead of `vectorp'.
20050 2017-06-28 Mark Oteiza <mvoteiza@udel.edu>
20052 Replace with dolist some uses of while
20054 * lisp/calc/calc-units.el (calc-permanent-units):
20055 (math-compare-unit-names, math-simplify-units-quotient):
20056 (math-build-units-table-buffer): Use dolist to replace extra bindings
20057 and some while loops.
20059 2017-06-28 Noam Postavsky <npostavs@gmail.com>
20061 Make tcl-auto-fill-mode obsolete (Bug#10772)
20063 * lisp/progmodes/tcl.el (tcl-auto-fill-mode): Declare obsolete.
20064 * etc/NEWS: Announce it.
20066 2017-06-28 Noam Postavsky <npostavs@gmail.com>
20068 Don't read eshell/which output from *Help* buffer (Bug#26894)
20070 * lisp/help-fns.el (help-fns--analyse-function)
20071 (help-fns-function-description-header): New functions, extracted from
20072 describe-function-1.
20073 (describe-function-1): Use them.
20074 * lisp/eshell/esh-cmd.el (eshell/which): Use
20075 `help-fns-function-description-header' instead of
20076 `describe-function-1'.
20078 2017-06-27 Eli Zaretskii <eliz@gnu.org>
20080 Support default-text-properties
20082 * src/xdisp.c (should_produce_line_number): Call get-char-property
20083 at ZV as well, to support default-text-properties.
20085 2017-06-27 Eli Zaretskii <eliz@gnu.org>
20087 Avoid segfaults when some display vector is an empty string
20089 * src/xdisp.c (next_element_from_display_vector): Don't try
20090 accessing the dpvec[] array if its size is zero. (Bug#27504)
20092 2017-06-26 Eli Zaretskii <eliz@gnu.org>
20094 Initial support for visually-relative line numbers
20098 * src/xdisp.c (display_count_lines_visually): New function.
20099 (maybe_produce_line_number): Support 'visual' mode of line-number
20101 * src/xdisp.c (maybe_produce_line_number): Update IT's metrics
20102 also when glyph_row is NULL. This is important for move_it_*
20104 (syms_of_xdisp) <display-line-number-width>: Now buffer-local.
20105 (try_window_id, redisplay_window, try_cursor_movement): For
20106 'visual' line-number display, disable the same redisplay
20107 optimizations as for 'relative'.
20109 * lisp/cus-start.el (standard): Add new value for the
20110 customization form of display-line-numbers.
20112 2017-06-26 Eli Zaretskii <eliz@gnu.org>
20114 Update IT's metrics while simulating display
20116 * src/xdisp.c (maybe_produce_line_number): Update IT's metrics
20117 also when glyph_row is NULL. This is important for move_it_*
20120 2017-06-26 Teemu Likonen <tlikonen@iki.fi>
20122 Fix bug in handling GnuPG's TRUST_MARGINAL status
20124 * lisp/epg.el (epg--status-TRUST_MARGINAL): Change symbol `marginal'
20127 2017-06-26 Tino Calancha <tino.calancha@gmail.com>
20129 Prefer `when' instead of 1-branch `if'
20131 * lisp/dired-aux.el (dired-do-shell-command): Store condition value
20132 in local variable ok.
20133 Use `when' instead of 1-branch `if'.
20135 2017-06-26 Tino Calancha <tino.calancha@gmail.com>
20137 Use #' instead of (function ...)
20139 * lisp/dired-aux.el (dired-do-chxxx, dired-clean-directory)
20140 (dired-mark-confirm, dired-query, dired-byte-compile)
20141 (dired-load, dired-update-file-line, dired-after-subdir-garbage)
20142 (dired-relist-file, dired-rename-subdir, dired-do-create-files)
20143 (dired-mark-read-file-name, dired-do-copy, dired-do-symlink)
20144 (dired-do-hardlink, dired-do-rename, dired-do-rename-regexp)
20145 (dired-do-copy-regexp, dired-do-hardlink-regexp)
20146 (dired-do-symlink-regexp, dired-create-files-non-directory)
20147 (dired-upcase, dired-downcase)
20149 * lisp/dired.el (dired-mode, dired-copy-filename-as-kill)
20150 (dired-internal-do-deletions, dired-internal-do-deletions):
20151 Prefer #' instead of (function ...).
20153 2017-06-26 Tino Calancha <tino.calancha@gmail.com>
20155 Don't quote lambda forms
20157 * lisp/dired.el (dired-re-maybe-mark, dired-map-over-marks)
20158 (dired-mark, dired-desktop-buffer-misc-data)
20160 * lisp/dired-aux.el (dired-do-create-files, dired-do-create-files-regexp)
20161 (dired-create-files-non-directory, dired-insert-subdir-validate)
20162 (dired-alist-sort, dired-do-shell-command): Don't quote lambda forms.
20164 2017-06-26 Stefan Monnier <monnier@iro.umontreal.ca>
20166 * lisp/progmodes/cc-fonts.el: Remove/mark unused vars
20168 (c-font-lock-declarators): Remove unused vars `id-end', `paren-depth',
20169 and `brackets-after-id'.
20170 (c-font-lock-objc-methods): Mark unused args.
20172 2017-06-25 Paul Eggert <eggert@cs.ucla.edu>
20174 Omit null-pointer test in intervals.h FRAME
20176 * src/intervals.h (ROOT_INTERVAL_P, ONLY_INTERVAL_P)
20177 (INTERVAL_LAST_POS): Omit unnecessary parens.
20178 (LENGTH): Omit test for null pointer. The argument is never null.
20179 The unnecessary test causes GCC 7.1.0 to assume that the argument
20180 might be null, and therefore to issue false alarms when the
20181 argument is dereferenced in other expressions.
20183 2017-06-25 Paul Eggert <eggert@cs.ucla.edu>
20185 Parenthesize frame.h macro definitions
20187 * src/frame.h (FRAME_TOOL_BAR_POSITION)
20188 (FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS)
20189 (FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT)
20190 (FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT)
20191 (FRAME_OVERRIDE_REDIRECT, FRAME_UNDECORATED, FRAME_PARENT_FRAME)
20192 (FRAME_SKIP_TASKBAR, FRAME_NO_FOCUS_ON_MAP)
20193 (FRAME_NO_ACCEPT_FOCUS, FRAME_NO_SPECIAL_GLYPHS, FRAME_Z_GROUP)
20194 (FRAME_Z_GROUP_NONE, FRAME_Z_GROUP_ABOVE, FRAME_Z_GROUP_BELOW)
20195 (FRAME_HAS_HORIZONTAL_SCROLL_BARS): Parenthesize macro definiens
20196 to allow arbitrary expression arguments.
20198 2017-06-25 Paul Eggert <eggert@cs.ucla.edu>
20200 Port recent frame changes to GCC 7
20202 * src/frame.c (keep_ratio): New arg P. Caller changed. Since it
20203 is non-null, it avoids a GCC 7 warning that FRAME_PARENT_FRAME
20204 might return null. This also avoids a run-time test.
20206 2017-06-25 Eli Zaretskii <eliz@gnu.org>
20208 Minor aesthetic fix of last change.
20210 2017-06-25 Eli Zaretskii <eliz@gnu.org>
20212 Allow to disable display of line numbers beyond EOB
20214 * src/buffer.c (disable_line_numbers_overlay_at_eob): New
20216 * src/lisp.h (disable_line_numbers_overlay_at_eob): Add prototype.
20217 * src/xdisp.c (should_produce_line_number): When at ZV, call
20218 disable_line_numbers_overlay_at_eob to determine whether line
20219 numbers should be displayed beyond ZV.
20221 2017-06-25 Michael Albinus <michael.albinus@gmx.de>
20223 Fix Android 6/7 problems in Tramp
20225 * lisp/net/tramp-adb.el (tramp-adb-ls-toolbox-regexp): Fix link part.
20226 (tramp-adb-handle-directory-files-and-attributes)
20227 (tramp-adb-handle-file-name-all-completions): Insert "." and
20228 ".." only when needed.
20229 (tramp-adb-get-ls-command): Force one column output for toybox.
20231 2017-06-25 Stefan-W. Hahn <stefan.hahn@s-hahn.de> (tiny change)
20233 * lisp/subr.el (setq-local): Add debug declaration (Bug#27408).
20235 2017-06-25 Eli Zaretskii <eliz@gnu.org>
20237 Fix line number display for overlay/display strings with newlines
20239 * src/xdisp.c (maybe_produce_line_number): Fix the condition for
20240 producing space glyphs instead of a line number to include the
20241 case of display strings and overlays.
20243 2017-06-25 Alan Mackenzie <acm@muc.de>
20245 Make CC Mode load cl-lib rather than cl in Emacs 26.
20247 * lisp/progmodes/cc-cmds.el (c-declaration-limits): Remove unused local
20250 * lisp/progmodes/cc-defs.el (c--mapcan-status): Remove.
20251 (c--cl-library): New variable.
20252 (Top level): Amend the form which requires library cl or cl-lib.
20253 (c--mapcan, c--set-difference, c--intersection, c--macroexpand-all)
20254 (c--delete-duplicate): Amend to use c--cl-library instead of
20257 * lisp/progmodes/cc-engine.el (c-syntactic-skip-backward)
20258 (c-back-over-compound-identifier): Remove unused local variables.
20260 * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Remove an unused
20263 * lisp/progmodes/cc-langs.el (Top level): Amend to use c--cl-library instead
20264 of c--mapcan-status.
20266 * lisp/progmodes/cc-styles.el (Top level): Add a cc-bytecomp-defun to try to
20267 silence a compiler warning.
20269 2017-06-25 Martin Rudalics <rudalics@gmx.at>
20271 Provide additional support for child frames
20273 Provide mouse dragging and resizing of frames. Allow resizing
20274 frames proportionally. Provide additional functionality for
20275 child frames. Minor bug fixes.
20277 * lisp/frame.el (frame-border-width, frame-pixel-width)
20278 (frame-pixel-height): Alias to `frame-internal-border-width',
20279 `frame-native-width' and `frame-native-height'.
20280 (frame-inner-width, frame-inner-height, frame-outer-width)
20281 (frame-outer-height): New functions.
20282 * lisp/minibuffer.el (completion-auto-help): Fix typo.
20283 * lisp/mouse.el (mouse-drag-line, mouse-drag-mode-line)
20284 (mouse-drag-header-line): Allow moving a frame by dragging the
20285 mode line of its bottommost window (on a minibuffer-less frame)
20286 or the header line of its topmost window.
20287 (mouse-drag-vertical-line): Mention argument in doc-string.
20288 (mouse-resize-frame, mouse-drag-frame, mouse-drag-left-edge)
20289 (mouse-drag-top-left-corner, mouse-drag-top-edge)
20290 (mouse-drag-top-right-corner, mouse-drag-right-edge)
20291 (mouse-drag-bottom-right-corner, mouse-drag-bottom-edge)
20292 (mouse-drag-bottom-left-corner): New functions for resizing a
20293 frame by dragging its internal border together with
20294 corresponding key bindings.
20295 * lisp/tooltip.el (tooltip-frame-parameters): Add
20296 'no-special-glyphs' to default parameters and update version
20298 * lisp/window.el (frame-auto-hide-function): Add choice to make
20299 frame invisible and update version tag.
20300 (window--delete): Handle 'auto-hide-function' frame parameter.
20301 (window--maybe-raise-frame): Respect 'no-focus-on-map' and
20302 'no-accept-focus' frame parameters.
20303 (display-buffer--action-function-custom-type): Add
20304 `display-buffer-in-child-frame'.
20305 (display-buffer): Mention `display-buffer-in-child-frame' in
20307 (display-buffer-in-child-frame): New action function for
20309 (window--sanitize-margin): Return zero when MARGIN cannot be
20311 (fit-frame-to-buffer): Major rewrite to handle child frames and
20312 'fit-frame-to-buffer-sizes' and 'fit-frame-to-buffer-margins'
20314 (window-largest-empty-rectangle--maximums-1)
20315 (window-largest-empty-rectangle--maximums)
20316 (window-largest-empty-rectangle--disjoint-maximums)
20317 (window-largest-empty-rectangle): New functions.
20319 * src/dispextern.h (WINDOW_WANTS_MODELINE_P)
20320 (WINDOW_WANTS_HEADER_LINE_P): Remove. Functionality is now
20321 provided by corresponding functions window_wants_modeline and
20322 window_wants_header_line in window.c. Adjust users.
20323 * src/dispnew.c (adjust_glyph_matrix)
20324 (buffer_posn_from_coords): Use window_wants_modeline and
20325 window_wants_header_line instead of WINDOW_WANTS_MODELINE_P and
20326 WINDOW_WANTS_HEADER_LINE_P.
20327 * src/frame.c (keep_ratio): New function.
20328 (adjust_frame_size): Call keep_ratio for each of F's child
20330 (make_frame): Initialize no_special_glyphs slot.
20331 (frame_internal_border_part): New function.
20332 (Fframe_pixel_width, Fframe_pixel_height, Fborder_width): Rename
20333 to Fframe_native_width, Fframe_native_height mand
20334 Fframe_internal_border_width.
20335 (frame_parm_table): Add Qno_special_glyphs entry.
20336 (frame_float_type): New enumeration type.
20337 (frame_float): New function to handle frame size and position
20339 (x_set_frame_parameters): Handle size and position ratios.
20340 (x_set_no_special_glyphs): New function
20341 (x_figure_window_size): Handle size and position ratios.
20342 (syms_of_frame): Add Qdisplay_monitor_attributes_list,
20343 Qno_special_glyphs, Qframe_edges, Qkeep_ratio, Qwidth_only,
20344 Qheight_only, Qleft_only and Qtop_only.
20345 * src/frame.h (internal_border_part): New enumeration type.
20346 (struct frame): New slot no_special_glyphs.
20347 (FRAME_NO_SPECIAL_GLYPHS): New macro.
20348 * src/gtkutil.c (xg_frame_restack): Return immediately for
20349 GTK versions before 2.18.0.
20350 * src/keyboard.c (internal_border_parts): New array constant.
20351 (make_lispy_position): For frames with border dragging enabled
20352 return internal border part.
20353 (syms_of_keyboard): New symbols Qdrag_internal_border,
20354 Qleft_edge, Qtop_left_corner, Qtop_edge, Qtop_right_corner,
20355 Qright_edge, Qbottom_right_corner, Qbottom_edge and
20356 Qbottom_left_corner.
20357 * src/minibuf.c (read_minibuf_unwind): When exiting the
20358 minibuffer deal with frames that have the 'minibuffer-exit'
20360 (syms_of_minibuf): New symbol Qminibuffer_exit.
20361 * src/nsfns.m (frame_parm_handler): Add entry for
20362 x_set_no_special_glyphs.
20363 (Fx_create_frame): Handle 'no-special-glyphs' parameter.
20364 Intitialize new cursor types for dragging frame borders.
20365 * src/nsterm.h (struct ns_output): Add new cursor types for
20366 dragging frame borders.
20367 * src/w32fns.c (w32_frame_parm_handlers): Add entry for
20368 x_set_no_special_glyphs.
20369 (Fx_create_frame): Handle 'no-special-glyphs' parameter.
20370 Intitialize new cursor types for dragging frame borders.
20371 * src/w32term.h (struct w32_output): Add new cursor types for
20372 dragging frame borders.
20373 * src/window.c (coordinates_in_window)
20374 (Fwindow_line_height, window_internal_height): Use
20375 window_wants_modeline and window_wants_header_line instead of
20376 WINDOW_WANTS_MODELINE_P and WINDOW_WANTS_HEADER_LINE_P.
20377 (Fwindow_lines_pixel_dimensions): New function.
20378 (window_parameter): New function.
20379 (Fwindow_parameter): Call window_parameter.
20380 (window_wants_mode_line, window_wants_header_line): New
20381 functions replacing the macros WINDOW_WANTS_MODELINE_P and
20382 WINDOW_WANTS_HEADER_LINE_P from dispextern.h.
20383 (syms_of_window): New symbols Qmode_line_format and
20384 Qheader_line_format.
20385 * src/window.h: Reorganize and re-comment macros. Use
20386 window_wants_modeline and window_wants_header_line instead of
20387 WINDOW_WANTS_MODELINE_P and WINDOW_WANTS_HEADER_LINE_P.
20388 (MINI_NON_ONLY_WINDOW_P, MINI_ONLY_WINDOW_P): Minor rewrite.
20389 (WINDOW_BUFFER): New macro.
20390 (WINDOW_BOX_LEFT_EDGE_COL, WINDOW_BOX_RIGHT_EDGE_COL): Remove.
20391 * src/xdisp.c (window_text_bottom_y, window_box_height)
20392 (window_box, start_display)
20393 (compute_window_start_on_continuation_line)
20394 (try_cursor_movement, redisplay_window)
20395 (try_window_reusing_current_matrix, try_window_id)
20396 (display_line, expose_window): Use window_wants_modeline and
20397 window_wants_header_line instead of WINDOW_WANTS_MODELINE_P and
20398 WINDOW_WANTS_HEADER_LINE_P.
20399 (pos_visible_p, display_mode_lines): Respect W's
20400 'mode-line-format' and 'header-line-format' window parameters.
20401 (init_iterator): Use window_wants_modeline and
20402 window_wants_header_line instead of WINDOW_WANTS_MODELINE_P and
20403 WINDOW_WANTS_HEADER_LINE_P. For tip frames respect
20404 no_special_glyphs value.
20405 (note_mouse_highlight): Set frame border cursors when on
20407 (x_draw_right_divider, x_draw_bottom_divider): Try to improve
20408 drawing of window dividers.
20409 * src/xfns.c (mouse_cursor): Add entries for border parts.
20410 (mouse_cursor_types): Add entries for cursor types to drag
20412 (INSTALL_CURSOR): Add entries for new cursor types to drag
20414 (Fx_create_frame): Handle 'no-special-glyphs' parameter.
20415 (x_frame_parm_handlers): Add entry for
20416 x_set_no_special_glyphs.
20417 (Vx_window_left_edge_shape, Vx_window_top_left_corner_shape)
20418 (Vx_window_top_edge_shape, Vx_window_top_right_corner_shape)
20419 (Vx_window_right_edge_shape)
20420 (Vx_window_bottom_right_corner_shape)
20421 (Vx_window_bottom_edge_shape)
20422 (Vx_window_bottom_left_corner_shape): New variables.
20423 (x_frame_restack): Call xg_frame_restack only for GTK versions
20424 starting with 2.18.0.
20425 * src/xterm.c (x_free_frame_resources): Remove new cursors for
20426 dragging frame borders.
20427 * src/xterm.h (struct x_output): Add new cursor types for
20428 dragging frame borders.
20430 * doc/lispref/display.texi (Size of Displayed Text): Document
20431 `window-lines-pixel-dimensions'.
20432 * doc/lispref/elisp.texi (Top): Add entry for "Mouse Dragging
20434 * doc/lispref/frames.texi (Frame Size): Replace
20435 frame-pixel-width/-height by frame-native-width/-height. Add
20436 frame-inner-width/-height and frame-outer-width/-height docs.
20437 (Position Parameters): Describe specifying position as ratios.
20438 Clarify remark about positions relative to bottom/ridge display
20440 (Size Parameters): Describe specifying sizes as ratios.
20441 Describe 'fit-frame-to-buffer-margins' and
20442 'fit-frame-to-buffer-sizes' parameters.
20443 (Layout Parameters): Describe 'no-special-glyphs' parameter.
20444 (Frame Interaction Parameters): Describe 'auto-hide-function',
20445 'minibuffer-exit' and 'keep-ratio' parameters.
20446 (Mouse Dragging Parameters): New section describing
20447 'drag-internal-border', 'drag-with-header-line',
20448 'drag-with-mode-line', 'snap-width', 'top-visible' and
20449 'bottom-visible' parameters.
20450 (Management Parameters): Mention that `override-redirect' has
20451 no effect on MS Windows.
20452 (Font and Color Parameters): Mention child frames for `alpha'
20454 (Child Frames): Rewrite section with description and cross
20455 references to new frame parameters added.
20456 * doc/lispref/modes.texi (Mode Line Basics): Mention
20457 'mode-line-format' and 'header-line-format' window parameters.
20458 * doc/lispref/windows.texi (Resizing Windows): Mention effect
20459 of `fit-frame-to-buffer-margins' for child frames.
20460 (Display Action Functions): New action function
20461 `display-buffer-in-child-frame'.
20462 (Quitting Windows): Mention `make-frame-invisible' as optional
20463 value of `frame-auto-hide-function' and `auto-hide-function'
20465 (Coordinates and Windows): Describe new function
20466 `window-largest-empty-rectangle'.
20467 (Window Parameters): Describe new parameters 'mode-line-format'
20468 and 'header-line-format'. Index all window parameters described
20471 2017-06-25 Paul Eggert <eggert@cs.ucla.edu>
20473 Adjust lm-verify to accept current notices
20475 Problem reported by Mike Kupfer in:
20476 https://lists.gnu.org/r/emacs-devel/2017-06/msg00512.html
20477 * lisp/emacs-lisp/lisp-mnt.el (lm-crack-copyright):
20478 Do not require later lines in a copyright notice to have more
20479 indentation than earlier lines.
20481 2017-06-24 Eli Zaretskii <eliz@gnu.org>
20483 Minor change in NEWS.
20485 Improve documentation in NEWS.
20487 2017-06-24 Eli Zaretskii <eliz@gnu.org>
20489 Move additional hscrolling code into a suitable 'if'
20491 * src/xdisp.c (hscroll_window_tree): Make additional calculations
20492 regarding glyphs produced for line numbers conditional on
20493 line-number display.
20495 2017-06-24 Eli Zaretskii <eliz@gnu.org>
20497 Partial fix of hscroll of truncated lines with line numbers
20499 * src/xdisp.c (x_produce_glyphs, hscroll_window_tree): Adjust
20500 hscroll calculations to line-number display.
20501 * src/term.c (produce_glyphs): Adjust tab stop to window's
20502 hscroll. These two changes fix horizontal scrolling when line
20503 numbers are displayed. But there's still a bug: the horizontal
20504 shift of lines that begin with a TAB is different from the rest.
20505 * src/xdisp.c (move_it_in_display_line_to): Call
20506 should_produce_line_number to determine whether a line number
20507 should be produced for this screen line.
20509 2017-06-24 Noam Postavsky <npostavs@gmail.com>
20511 Don't change byte-compile-delete-errors at runtime (Bug#27340)
20513 * lisp/emacs-lisp/eieio-core.el: Confine `cl-declaim' calls to compile
20516 2017-06-24 Eli Zaretskii <eliz@gnu.org>
20518 Allow Lisp program to disable line-number display for specific lines
20520 * etc/NEWS: Update the documentation.
20522 * src/xdisp.c (syms_of_xdisp) <display-line-numbers-disable>: New
20524 (should_produce_line_number): New function.
20525 (display_line): Use should_produce_line_number to determine
20526 whether a line number should be produced for each glyph row.
20528 2017-06-24 Stefan Monnier <monnier@iro.umontreal.ca>
20530 * lisp/net/html2text.el: Move to obsolete/.
20532 2017-06-24 Eli Zaretskii <eliz@gnu.org>
20534 Support a separate face for displaying the current line's number
20536 * lisp/faces.el (line-number-current-line): New face.
20538 * src/xdisp.c (syms_of_xdisp) <line-number-current-line>: New
20540 (try_window_id, try_cursor_movement): Disable these optimizations
20541 when the line-number-current-line face is different from
20543 (maybe_produce_line_number): Display the current line in the
20544 line-number-current-line face, if it's different from line-number.
20546 2017-06-24 Eli Zaretskii <eliz@gnu.org>
20548 Change display of current line in relative mode
20550 * src/xdisp.c (maybe_produce_line_number): In relative mode
20551 display the current line number as its absolute value, not as zero.
20553 2017-06-24 Eli Zaretskii <eliz@gnu.org>
20555 Rename display-line-width
20558 * src/xdisp.c (syms_of_xdisp, maybe_produce_line_number):
20559 * lisp/cus-start.el: Rename display-line-width to
20560 display-line-number-width.
20562 2017-06-24 Eli Zaretskii <eliz@gnu.org>
20564 Fix tab stops when line numbers are displayed
20566 * src/xdisp.c (x_produce_glyphs):
20567 * src/term.c (produce_glyphs): Adjust tab stops for the horizontal
20568 space taken by the line-number display.
20570 2017-06-24 Eli Zaretskii <eliz@gnu.org>
20572 Fix crashes on TTY frames due to negative lnum_width.
20574 Don't display line numbers in the minibuffer and in tooltip frames.
20576 2017-06-24 Eli Zaretskii <eliz@gnu.org>
20578 Fix problems with line-number updates in Follow mode
20580 * src/xdisp.c (redisplay_window): If forced window-start requires
20581 to move a window's point, and the window is under relative
20582 line-number display, force another round of redisplay to update
20583 the relative line numbers. This fixes follow-mode "redisplay" of
20586 * lisp/frame.el: Add display-line-numbers to the list of variables
20587 that should trigger redisplay of the current buffer.
20589 2017-06-24 Eli Zaretskii <eliz@gnu.org>
20591 Fix display of line numbers with fonts larger than the default
20593 * src/xdisp.c (maybe_produce_line_number): Update the metrics in
20594 IT, not in IT->glyph_row, since the latter gets overwritten in
20595 display_line. Fixes display of line numbers when the font used
20596 for them is larger than that of the default face.
20598 2017-06-23 Eli Zaretskii <eliz@gnu.org>
20600 Fix background color beyond EOB and cursor display
20602 * src/xdisp.c: (maybe_produce_line_number): Use the default face
20603 for background of the blank glyphs in the line-number area which
20604 are drawn beyond EOB.
20605 (display_line): Reset the glyph row's displays_text_p flag only on
20606 empty lines that don't display line numbers. This fixes cursor
20607 display beyond EOB. Fix the bidi information in the glyphs
20608 produced for line numbers. Set the avoid_cursor_p flag of glyphs
20609 produced for line numbers.
20611 2017-06-23 Eli Zaretskii <eliz@gnu.org>
20613 Fix display of indicate-empty-lines when line numbers are displayed
20615 * src/xdisp.c (row_text_area_empty): New function.
20616 (display_line): Call row_text_area_empty to verify that a glyph
20617 row's text area is devoid of any glyphs that came from a buffer or
20618 a string. This fixes a bug with empty-lines indication
20619 disappearing when line numbers or line-prefix are displayed.
20620 (display_line): Delete the argument FORCE; all callers changed.
20621 Remove the condition for actually producing the glyphs for the
20622 line number, as even if the number didn't change we need to
20623 produce empty space.
20625 2017-06-23 Vincent Belaïche <vincentb1@users.sourceforge.net>
20627 Fix symbol relocation when the relocated cell is renamed.
20629 * lisp/ses.el (ses-sym-rowcol): Check that the renamed cell
20630 hashmap has been instantiated before getting data from it. When
20631 editing several spreadsheets, and you have spreadsheet #1 with a
20632 cell named `foo', and no renamed cell in spreadsheet #2, then if
20633 you make a formula with `foo' in spreadsheet #2, not doing this
20634 check will make an error.
20635 (ses-cell-set-formula): Robustify versus incorrect cell references
20636 given in the user provided formula. An explicit error message is
20637 provided after the action when the user gives an incorrect cell
20638 reference, but the formula edition is not changed. This means that
20639 if the incorrect reference is to a cell that is created someday,
20640 then this new cell will not have the edited cell in its reference
20641 list. Fixing this can still be done by editing again the first
20643 (ses-relocate-symbol): Do not create symbol of referred-to cell
20644 when this is a renamed cell.
20646 2017-06-23 Rasmus <rasmus@gmx.us>
20648 Synchronize with the "emacs-sync" branch from Org
20650 2017-06-22 Paul Eggert <eggert@cs.ucla.edu>
20652 Remove getc_unlocked configure-time check
20654 * configure.ac (getc_unlocked): Remove check, as unlocked-io now
20657 2017-06-22 Paul Eggert <eggert@cs.ucla.edu>
20659 Use unlocked stdio more systematically
20661 This can improve performance significantly on stdio-bottlenecked code.
20662 E.g., make-docfile is 3x faster on my Fedora 25 x86-64 desktop.
20663 * admin/merge-gnulib (GNULIB_MODULES): Add unlocked-io.
20664 * lib-src/ebrowse.c, lib-src/emacsclient.c, lib-src/etags.c:
20665 * lib-src/hexl.c, lib-src/make-docfile.c, lib-src/movemail.c:
20666 * lib-src/profile.c, lib-src/update-game-score.c:
20667 Include unlocked-io.h instead of stdio.h, since these programs are
20669 * lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
20670 * lib/unlocked-io.h, m4/unlocked-io.m4: New files, copied from Gnulib.
20671 * src/charset.c, src/cm.c, src/emacs.c, src/image.c, src/keyboard.c:
20672 * src/lread.c, src/term.c:
20673 Include sysstdio.h, possibly instead of stdio.h, to define
20674 the unlocked functions if the system does not provide them.
20675 * src/charset.c, src/lread.c (getc_unlocked):
20676 Remove, since sysstdio.h now defines it if needed.
20677 * src/cm.c (cmputc, cmcheckmagic):
20678 * src/dispnew.c (update_frame, update_frame_with_menu)
20679 (update_frame_1, Fsend_string_to_terminal, Fding, bitch_at_user):
20680 * src/emacs.c (main, Fdump_emacs):
20681 * src/fileio.c (Fdo_auto_save, Fset_binary_mode):
20682 * src/image.c (slurp_file, png_read_from_file, png_load_body)
20683 (our_stdio_fill_input_buffer):
20684 * src/keyboard.c (record_char, kbd_buffer_get_event, handle_interrupt):
20685 * src/lread.c (readbyte_from_file):
20686 * src/minibuf.c (read_minibuf_noninteractive):
20687 * src/print.c (printchar_to_stream, strout)
20688 (Fredirect_debugging_output):
20689 * src/sysdep.c (reset_sys_modes, procfs_ttyname)
20690 (procfs_get_total_memory):
20691 * src/term.c (tty_ring_bell, tty_send_additional_strings)
20692 (tty_set_terminal_modes, tty_reset_terminal_modes)
20693 (tty_update_end, tty_clear_end_of_line, tty_write_glyphs)
20694 (tty_write_glyphs_with_face, tty_insert_glyphs)
20695 (tty_menu_activate):
20696 * src/xfaces.c (Fx_load_color_file):
20697 Use unlocked stdio when it should be safe.
20698 * src/sysstdio.h (clearerr_unlocked, feof_unlocked, ferror_unlocked)
20699 (fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked)
20700 (fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked)
20701 (putc_unlocked, putchar_unloced): Provide substitutes if not declared.
20703 2017-06-22 Glenn Morris <rgm@gnu.org>
20705 * lisp/net/shr.el (shr-fill-text): Actually fill the text. (Bug#27399)
20707 2017-06-22 Michal Nazarewicz <mina86@mina86.com>
20709 unidata: don’t check special casing in unidata-check (bug#26656)
20711 * admin/unidata/unidata-gen.el (unidata-check): Do not test special
20712 casing mapping of characters since that mapping is not constructed from
20713 the unidata.txt file.
20714 Also, check for integer decoder and cons char earlier so that less
20715 unnecessary processing is performed.
20717 2017-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
20719 * lisp/descr-text.el (describe-char): Avoid string-*-multibyte
20721 Avoid string-to-multibyte and string-as-unibyte.
20722 Don't make *Help* unibyte just because the char was in a unibyte buffer.
20724 2017-06-22 Rasmus <rasmus@gmx.us>
20726 Add Org schemas.xml contents to Emacs schemas.xml
20728 Entries from the Org version of schemas.xml have been added to
20729 the Emacs version of schemas.xml.
20731 2017-06-22 Rasmus <rasmus@gmx.us>
20733 Update Org to v9.0.9
20735 Please see etc/ORG-NEWS for details.
20737 2017-06-22 Vincent Belaïche <vincentb1@users.sourceforge.net>
20739 Do not hard code A1 cell reference, as it may be renamed.
20741 * lisp/ses.el (ses-recalculate-all): `A1' -> `(ses-cell-symbol 0 0)'
20743 2017-06-22 Martin Rudalics <rudalics@gmx.at>
20745 Fix make_hash_table calls in lread.c
20747 * src/lread.c (readevalloop, read_internal_start): Fix
20748 make_hash_table calls to make build succeed.
20750 2017-06-22 Ken Raeburn <raeburn@raeburn.org>
20752 Merge several Lisp reader speedups.
20754 2017-06-22 Ken Raeburn <raeburn@raeburn.org>
20756 Create less garbage to collect while reading symbols.
20758 * src/lread.c (read1): When interning a symbol, only create a new
20759 string object for the name if we're going to use it for a new symbol
20762 2017-06-22 Ken Raeburn <raeburn@raeburn.org>
20764 Replace read_objects assoc list with two hash tables.
20766 For larger input files with lots of shared data structures, an
20767 association list is too slow.
20769 * src/lread.c (read_objects_map, read_objects_completed): New
20770 variables, replacing read_objects.
20771 (readevalloop): Initialize them with hash tables before starting a
20772 top-level read, if they're not already empty hash tables, and reset
20773 them to Qnil afterwards if something was added to the hash tables.
20774 (read_internal_start): Likewise.
20775 (read1): Store first the placeholder and later the newly read object
20776 into read_objects_map under the specified object number. If the new
20777 object can contain a reference to itself, store it in
20778 read_objects_completed.
20779 (substitute_objects_recurse): Check read_objects_completed instead of
20780 read_objects for the known possibly-recursive objects.
20781 (syms_of_lread): Update initializations.
20783 2017-06-22 Ken Raeburn <raeburn@raeburn.org>
20787 * configure.ac: Check for getc_unlocked.
20788 * src/charset.c (read_hex, load_charset_map_from_file): Use
20789 getc_unlocked instead of getc.
20790 (getc_unlocked) [!HAVE_GETC_UNLOCKED]: Fall back to getc.
20791 * src/lread.c (readbyte_from_file, Fget_file_char, read1,
20792 getc_unlocked): Likewise.
20794 2017-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
20796 Reduce lread substitutions.
20798 * src/lread.c (read1): After reading an object using the "#n=" syntax,
20799 if the read object is a cons cell, instead of recursively substituting
20800 the placeholder with the new object, mutate the placeholder cons cell
20801 itself to have the correct car and cdr values.
20803 2017-06-22 Ken Raeburn <raeburn@raeburn.org>
20805 Short-circuit substitutions for some simple types.
20807 Values that don't contain other values cannot be circular, so checking
20808 for circular objects is a waste of cycles.
20810 * src/lread.c (substitute_object_recurse): If the subtree being
20811 examined is a symbol, number, or property-less string, just return
20814 2017-06-22 Paul Eggert <eggert@cs.ucla.edu>
20816 Limit style_format to MAX_ALLOCA
20818 * src/editfns.c (styled_format): Subtract initial buffer size
20819 from sa_avail, since it is nontrivial.
20821 2017-06-22 Paul Eggert <eggert@cs.ucla.edu>
20823 Limit bidi_find_bracket_pairs to MAX_ALLOCA
20825 * src/bidi.c (MAX_BPA_STACK): Now a constant, not a macro.
20826 Shrink it to allow for the two struct bidi_it objects in
20828 (PUSH_BPA_STACK): Avoid integer overflow with enormous bidi cache.
20829 (bidi_find_bracket_pairs): Use compile-time check instead of runtime.
20831 2017-06-22 Paul Eggert <eggert@cs.ucla.edu>
20833 Limit insert-file-contents to MAX_ALLOCA
20835 * src/fileio.c (READ_BUF_SIZE): Don’t allocate more than
20836 MAX_ALLOCA bytes in a single stack array.
20838 2017-06-21 Paul Eggert <eggert@cs.ucla.edu>
20840 Remove malloc_find_address relic
20842 * src/gmalloc.c (register_heapinfo, _malloc_internal_nolock):
20843 Omit unnecessary initialization.
20845 2017-06-21 Paul Eggert <eggert@cs.ucla.edu>
20847 Fix temacs hybrid_malloc core dump
20849 Without this patch, ./temacs would dump core sometimes on Fedora
20850 25 x86-64. The problem was that the hybrid allocator assumed that
20851 all pointers into bss_sbrk_buffer are allocated via gmalloc. This
20852 assumption is not true on Fedora, because the standard memory
20853 allocator calls gdefault_morecore, which means its blocks are
20854 interleaved with our blocks. Usually the code happened to work,
20855 because our data structures agreed with the glibc data structures,
20856 but this was merely luck due to a shared pedigree, and as glibc
20857 mutates our luck has run out.
20858 * src/gmalloc.c (ALLOCATED_BEFORE_DUMPING) [HYBRID_MALLOC]:
20859 Remove; no longer needed.
20860 (BLOCK): Use unsigned division, as that does the right thing near zero.
20861 (register_heapinfo, __malloc_internal_nolock, __free_internal_nolock)
20862 (_realloc_internal_nolock):
20863 Big blocks now have type -1, not 0, as 0 now means the block is
20865 (morecore_nolock): Omit now-unnecessary casts to size_t.
20866 (allocated_via_gmalloc) [HYBRID_MALLOC]: New function.
20867 (hybrid_free, hybrid_realloc) [HYBRID_MALLOC]: Use it, to
20868 avoid calling the wrong free or realloc function in some cases.
20870 2017-06-21 Katsumi Yamaoka <yamaoka@jpl.org>
20872 Make gnus-article-date-user work
20874 * lisp/gnus/gnus-art.el (article-date-ut):
20875 Work for unfolded multi-line Date header.
20876 (article-transform-date):
20877 Refactor; add header name if it is missing in user-defined date line.
20878 (article-date-user): Fix name of date type.
20880 2017-06-21 Noam Postavsky <npostavs@gmail.com>
20882 Keep order of completion candidates (Bug#25995, Bug#24676)
20884 * lisp/minibuffer.el (completion-pcm--filename-try-filter)
20885 (completion-pcm--all-completions): Use nreverse to undo the reversing
20886 caused by using push in the loop.
20888 2017-06-21 Glenn Morris <rgm@gnu.org>
20890 * src/lread.c (syms_of_lread) <load-history>: Doc fix.
20892 2017-06-21 Alex Gramiak <agrambot@gmail.com>
20894 Mark prolog indent variables as safe (bug#27369)
20896 * lisp/progmodes/prolog.el (prolog-indent-width)
20897 (prolog-left-indent-regexp, prolog-paren-indent-p)
20898 (prolog-paren-indent): Add :safe property.
20900 2017-06-20 Simen Heggestøyl <simenheg@gmail.com>
20902 Remove `:options' from `css-electric-keys'
20904 * lisp/textmodes/css-mode.el (css-electric-keys): Remove `:options`
20905 since it just duplicates the default value.
20907 2017-06-20 Paul Eggert <eggert@cs.ucla.edu>
20909 Fix crash when built by GNU Gold linker on x86
20911 Problem reported by Andrés Musetti (Bug#27248).
20912 * src/widget.c (emacsFrameClassRec): Do not initialize superclass here.
20913 (emacsFrameClass): Now a function (which initializes the
20914 superclass) instead of a variable. All uses changed.
20916 2017-06-20 Paul Eggert <eggert@cs.ucla.edu>
20918 Simplify autogen.sh version checking
20920 * autogen.sh (get_version): Simplify and make more reliable
20921 by using expr rather than echo | sed. Check exit status of program.
20922 Run program in subshell in case it cannot be executed.
20923 (check_version): Check exit status of command rather than its output.
20924 Check return status of get_version.
20926 2017-06-20 Katsumi Yamaoka <yamaoka@jpl.org>
20928 Delete old Date header in a simple way
20930 * lisp/gnus/gnus-art.el (article-date-ut): Don't rely on text prop
20931 when searching the old Date header boundary in order to delete it.
20933 2017-06-20 Bastien <bzg@gnu.org>
20935 Revert "Don't bind org-agenda key to an anonymous function"
20937 This reverts commit 49c0ff29c2e0243ba35ec17e3e3af49369be43db.
20939 2017-06-20 Katsumi Yamaoka <yamaoka@jpl.org>
20941 Bind enable-local-variables to nil globally (fix dbe3e41)
20943 * lisp/gnus/mm-view.el (mm-display-inline-fontify):
20944 Bind enable-local-variables to nil globally instead of making it
20945 buffer-local; remove let-bind of local-enable-local-variables.
20946 cf. <b4mtw3bbfp5.fsf@jpl.org> in the emacs-devel list.
20948 2017-06-20 Glenn Morris <rgm@gnu.org>
20950 kill-matching-buffers to optionally not confirm
20952 * lisp/files.el (kill-matching-buffers):
20953 Add option to not confirm killing. (Bug#27286)
20955 2017-06-20 Glenn Morris <rgm@gnu.org>
20957 * lisp/files.el (local-enable-local-variables): Doc fix.
20959 2017-06-20 Glenn Morris <rgm@gnu.org>
20961 autogen.sh: try to check for tool being present but broken
20963 * autogen.sh (get_version): Check return status of "--version".
20964 (check_version): Try to distinguish between a missing tool
20965 and a broken one. (Bug#27288)
20967 2017-06-19 Glenn Morris <rgm@gnu.org>
20969 Avoid a custom-variable-type error (bug#27363)
20971 * lisp/cus-edit.el (custom-variable-type):
20972 Avoid an error due to plist-put becoming stricter of late.
20974 2017-06-19 Glenn Morris <rgm@gnu.org>
20976 Don't put deleted packages in the trash (bug#14967)
20978 * lisp/emacs-lisp/package.el (package-delete):
20979 Don't pay attention to delete-by-moving-to-trash.
20981 2017-06-19 Nicolas Petton <nicolas@petton.fr>
20983 Revert "Add current-line in simple.el"
20985 This reverts commit ae98cdf9431604d0f722f1db217ca06debfbb7b6.
20987 2017-06-19 Damien Cassou <damien@cassou.me>
20989 Add current-line in simple.el
20991 * lisp/simple.el (current-line): New function.
20992 * test/lisp/simple-tests.el: Add tests for current-line.
20994 2017-06-19 Katsumi Yamaoka <yamaoka@jpl.org>
20996 Don't try to eval local variables in Gnus article
20998 * lisp/gnus/mm-view.el (mm-display-inline-fontify): Disable local vars.
21000 2017-06-18 Paul Eggert <eggert@cs.ucla.edu>
21002 Fix emacs-module.h cleaning
21004 * src/Makefile.in (clean): Do not remove emacs-module.h.in.
21005 (bootstrap-clean): Remove emacs-module.h.
21007 2017-06-18 Andreas Schwab <schwab@linux-m68k.org>
21009 * lisp/url/url-util.el (url-get-url-at-point): Add missing group
21012 2017-06-18 Paul Eggert <eggert@cs.ucla.edu>
21014 * lib/gettext.h: Merge from gnulib.
21016 2017-06-18 Paul Eggert <eggert@cs.ucla.edu>
21020 This (and my previous patch) incorporate:
21021 2017-06-17 diffseq: port to GCC 7 with --enable-gcc-warnings
21022 2017-06-15 gettext-h: Update comment
21023 * lib/diffseq.h: Copy from gnulib.
21025 2017-06-17 Noam Postavsky <npostavs@gmail.com>
21027 * test/Makefile.in: Don't suppress test failure for single tests.
21029 2017-06-17 Philipp Stephani <phst@google.com>
21031 emacs-module.h: Create emacs_env_26
21033 This was part of the original design of the module
21034 API (https://lists.gnu.org/r/emacs-devel/2015-02/msg00960.html),
21035 but I didn't take it into account when adding the should_quit
21038 Instead of duplicating the environment fields or using the C
21039 preprocessor, use configure to build emacs-module.h.
21041 * configure.ac: Expand emacs-module.h template.
21043 2017-06-17 Eli Zaretskii <eliz@gnu.org>
21045 Improve documentation of replace-buffer-contents
21047 * etc/NEWS (replace-buffer-contents): Fix formatting.
21049 * src/editfns.c (Freplace_buffer_contents): Doc fix.
21051 2017-06-17 Eli Zaretskii <eliz@gnu.org>
21053 Finish up native display of line numbers
21055 * src/xdisp.c (maybe_produce_line_number): Produce a blank before
21056 the number, for R2L rows. Increment 'g' in the loop even if
21057 glyph_row is NULL. Accept 2nd argument FORCE and produce the
21058 line-number glyphs if it is non-zero.
21059 (move_it_in_display_line_to): Account for the space taken by the
21060 line-number glyphs. Call maybe_produce_line_number with 2nd
21062 (set_cursor_from_row): Fix calculation of cursor X coordinate in
21063 R2L rows with display-produced glyphs at the beginning.
21064 (syms_of_xdisp) <line-number>: New face symbol.
21065 <relative, display-line-width>: New symbols.
21066 (maybe_produce_line_number): Use the line-number face for
21067 displaying line numbers. Support relative line-number display.
21068 Support user-defined width for displaying line numbers.
21069 (try_cursor_movement, try_window_id): Disable these optimizations
21070 when displaying relative line numbers.
21071 * src/dispextern.h (struct it): New member 'pt_lnum'.
21073 * lisp/faces.el (line-number): New face.
21074 * lisp/cus-start.el (standard): Provide customization forms for
21075 display-line-numbers and display-line-width.
21076 * lisp/menu-bar.el (menu-bar-showhide-menu): Add menu-bar item to
21077 turn display-line-numbers on and off.
21079 * etc/NEWS: Document the new feature.
21081 2017-06-17 Philipp Stephani <phst@google.com>
21083 Allow local variables section to begin with a square bracket
21087 * lisp/international/mule.el (find-auto-coding): Fix regular
21088 expression for "Local Variables" section.
21090 * test/lisp/international/mule-tests.el (find-auto-coding--bug27391):
21093 2017-06-17 Philipp Stephani <phst@google.com>
21095 Remove unnecessary point motion
21097 * src/editfns.c (Freplace_buffer_contents): Remove unnecessary point
21100 2017-06-17 Philipp Stephani <phst@google.com>
21102 Add command to replace buffer contents
21104 Add a new command 'replace-buffer-contents' that uses the Myers diff
21105 algorithm to non-destructively replace the accessible portion of the
21106 current buffer. The Myers algorithm is implemented in Gnulib.
21108 * src/editfns.c (Freplace_buffer_contents): New command.
21109 (set_bit, bit_is_set, buffer_chars_equal): New helper functions.
21110 (syms_of_editfns): Define new command.
21112 * test/src/editfns-tests.el (replace-buffer-contents-1)
21113 (replace-buffer-contents-2): New unit tests.
21115 * src/buffer.h (BUF_FETCH_CHAR_AS_MULTIBYTE): New helper macro.
21117 * admin/merge-gnulib (GNULIB_MODULES): Add diffseq.h and minmax.h.
21119 2017-06-17 Andreas Schwab <schwab@linux-m68k.org>
21121 * lisp/international/characters.el: Update list of zero and full
21122 width characters according to Unicode 9.0.0.
21124 2017-06-17 Simen Heggestøyl <simenheg@gmail.com>
21126 Complete CSS property values less eagerly (Bug#27392)
21128 * lisp/textmodes/css-mode.el (css--complete-property-value): Be less
21129 eager by looking for a colon after the property which values are being
21132 * test/lisp/textmodes/css-mode-tests.el (css-test-complete-property):
21133 Add a test case ensuring that properties that are prefixes of other
21134 properties don't hinder further completion.
21136 2017-06-17 Noam Postavsky <npostavs@gmail.com>
21138 Handle integer indices for eshell variables (Bug#26055)
21140 * lisp/eshell/esh-var.el (eshell-index-value): Convert index to number
21141 if it's been marked as one, just like `eshell-lisp-command' does.
21143 2017-06-17 Mark Oteiza <mvoteiza@udel.edu>
21145 Don't bind org-agenda key to an anonymous function
21147 * lisp/org/org-agenda.el: Bind "g" to named command.
21148 (org-agenda-redo-all): New command. Extend the previous functionality
21149 through a prefix argument.
21151 2017-06-17 Dmitry Gutov <dgutov@yandex.ru>
21153 Add test for the fix in the parent commit
21155 * test/src/undo-tests.el (undo-test-skip-invalidated-markers):
21156 New test, for the fix in the parent commit.
21158 2017-06-17 Nitish Chandra <nitishchandrachinta@gmail.com> (tiny change)
21160 primitive-undo: Update only the currently valid markers
21162 * lisp/simple.el (primitive-undo):
21163 Update only the currently valid markers (bug#25599).
21165 2017-06-16 Eli Zaretskii <eliz@gnu.org>
21167 Initial version of native display of line numbers
21169 * src/xdisp.c (syms_of_xdisp) <display-line-numbers>: New
21170 buffer-local variable.
21172 (maybe_produce_line_number): New function.
21173 (DISP_INFINITY): Rename from INFINITY, since math.h defines INFINITY.
21174 (try_window_reusing_current_matrix): Don't use this method when
21175 display-line-numbers is in effect.
21176 * src/dispextern.h (struct it): New members 'lnum'.
21178 2017-06-16 Philipp Stephani <phst@google.com>
21180 Correctly detect URLs surrounded by parentheses in comments
21182 * lisp/thingatpt.el (thing-at-point--bounds-of-well-formed-url):
21183 Make parentheses match work inside comments.
21185 * test/lisp/thingatpt-tests.el (thing-at-point-url-in-comment): Add
21188 2017-06-16 Michael Albinus <michael.albinus@gmx.de>
21190 Fix load-path issue when it contains remote directories
21192 * lisp/net/tramp.el (tramp-file-name-handler): Use `autoloadp'.
21193 (tramp-use-absolute-autoload-file-names): New defun. Call it
21194 after loading tramp.el.
21196 * test/lisp/net/tramp-tests.el (tramp-test38-remote-load-path):
21198 (tramp-test39-unload): Rename.
21200 2017-06-16 Alan Mackenzie <acm@muc.de>
21202 Ensure C++ initializer lists don't get fontified.
21204 * lisp/progmodes/cc-cmds.el (c-block-comment-flag): Move declaration to solve
21207 * lisp/progmodes/cc-fonts.el (c-get-fontification-context): Add an extra
21208 clause to handle C++ member initialization lists.
21209 (c-font-lock-single-decl): New function, extracted from
21210 c-font-lock-declarations.
21211 (c-font-lock-declarations): Call c-font-lock-single-decl in place of inline
21213 (c-font-lock-cut-off-declarators): Make more rigorous by calling
21214 c-get-fontification-context, c-forward-decl-or-cast-1, and
21215 c-font-lock-single-decl in place of rather approximate code.
21217 2017-06-16 Alan Mackenzie <acm@muc.de>
21219 Fix hang in CC Mode when ":" is typed after identifier at EOB.
21221 * lisp/progmodes/cc-engine.el (c-forward-declarator): Fix coding error
21222 confusing ":" and EOB.
21224 2017-06-15 Alan Mackenzie <acm@muc.de>
21226 Create a toggle between block and line comments in CC Mode.
21228 Also (unrelated change) initialize the modes' keymaps at each loading.
21230 * lisp/progmodes/cc-cmds.el (c-update-modeline): amend for the new information
21232 (c-block-comment-flag): New variable.
21233 (c-toggle-comment-style): New function.
21235 * lisp/progmodes/cc-langs.el (c-block-comment-starter)
21236 (c-line-comment-starter): Make them c-lang-defvars.
21237 (c-block-comment-is-default): New c-lang-defvar.
21238 (comment-start, comment-end): Make the default values dependent on
21239 c-block-comment-is-default.
21241 * lisp/progmodes/cc-mode.el (c-mode-base-map): Define C-c C-k in this map.
21242 (c-basic-common-init): Initialize c-block-comment-flag.
21243 (c-mode-map, c++-mode-map, objc-mode-map, java-mode-map, idl-mode-map)
21244 (pike-mode-map, awk-mode-map): Make entries in these key maps each time the
21245 mode is loaded rather than just once per Emacs session.
21247 * doc/misc/cc-mode.texi (Comment Commands): Introduce the notion of comment
21249 (Minor Modes): Define comment style. Describe how comment style influences
21250 the information displayed on the modeline. Document c-toggle-comment-style.
21251 (FAQ): Add a question about toggling the comment style.
21253 2017-06-15 Paul Eggert <eggert@cs.ucla.edu>
21255 Pacify clang without munging C source
21257 * configure.ac (WARN_CFLAGS): With Clang, use
21258 -Wno-tautological-compare regardless of --enable-gcc-warnings.
21259 (WERROR_CFLAGS): Simplify assignments, and guarantee it’s always set.
21260 * lib/strftime.c: Copy from gnulib, reverting Clang-specific
21261 change which I hope is no longer needed.
21262 * src/emacs.c (main): Revert rlim_t change, as rlim_t is signed on
21263 some older non-POSIX hosts.
21265 2017-06-15 Paul Eggert <eggert@cs.ucla.edu>
21267 No need to complicate make-docfile.c for Clang
21269 * lib-src/make-docfile.c (put_filename): Undo recent change.
21270 The Clang false alarm occurs only with CFLAGS=-save-temps and
21271 we needn’t worry about pacifying unusual compiler configurations.
21273 2017-06-15 Paul Eggert <eggert@cs.ucla.edu>
21275 Port './configure CC=clang' to Fedora 25
21277 * configure.ac (HAVE_IMAGEMAGICK): Disable if even a
21278 standard function like MagickRelinquishMemory does not link.
21280 2017-06-15 Paul Eggert <eggert@cs.ucla.edu>
21282 Don’t worry about __STDC_VERSION__ in emacs-module
21284 * src/emacs-module.h: Remove __STDC_VERSION__ check. In the past
21285 we’ve found that some compilers do not define this symbol even
21286 when they work well enough. If necessary features like stdbool.h
21287 are missing the compiler will complain eventually anyway.
21289 2017-06-14 Paul Eggert <eggert@cs.ucla.edu>
21291 Port cleanup check to Oracle Studio 12.5
21293 * src/conf_post.h (__has_attribute_cleanup): Resurrect.
21294 * src/emacs-module.c: Verify __has_attribute (cleanup), but in an
21297 2017-06-14 Bastien <bzg@gnu.org>
21299 Fix misformatted changelog entry
21301 2017-06-14 Eli Zaretskii <eliz@gnu.org>
21303 Avoid compiler warning in image.c on MS-Windows
21305 * src/image.c (x_create_x_image_and_pixmap) [HAVE_NTGUI]: Avoid
21306 compilation warning under -Warray-bounds by temporarily disabling
21307 the -Warray-bounds option.
21309 2017-06-14 Michael Albinus <michael.albinus@gmx.de>
21313 * lisp/net/tramp-cache.el (tramp-cache-read-persistent-data):
21317 * lisp/net/tramp.el (tramp-handle-file-name-case-insensitive-p):
21318 Check for connected, not for connectable. (Bug#27315)
21319 (tramp-process-actions):
21320 * lisp/net/tramp-gvfs.el (tramp-gvfs-maybe-open-connection):
21321 Use `tramp-cache-read-persistent-data'.
21323 * test/lisp/net/tramp-tests.el (top): Set also
21324 `tramp-cache-read-persistent-data'.
21326 2017-06-14 Noam Postavsky <npostavs@gmail.com>
21328 Give a fixed default value for icomplete-prospects-height (Bug#26939)
21330 * lisp/icomplete.el (icomplete-prospects-height): Default to 2.
21331 (icomplete-prospects-length): Remove.
21332 * etc/NEWS: Announce removal.
21334 2017-06-14 Philipp Stephani <phst@google.com>
21336 Remove some tautological comparisons involving rlim_t
21338 Clang on macOS warns about these with -Wtautological-compare. POSIX
21339 guarantees that rlim_t is
21341 http://pubs.opengroup.org/onlinepubs/009695399/basedefs/sys/resource.h.html),
21342 so these resource limits can never be negative.
21344 * src/emacs.c (main): Remove tautological comparisons.
21346 2017-06-14 Philipp Stephani <phst@google.com>
21348 Use --module-assertions if modules are available
21350 Using --module-assertions helps us find bugs in the test module. But
21351 we can use it only if Emacs was compiled with module support.
21353 * test/Makefile.in (MODULES_EMACSOPT): New variable.
21356 2017-06-14 Philipp Stephani <phst@google.com>
21358 Define --module-assertions only of modules are available
21362 * src/emacs.c (usage_message, standard_args): Define
21363 --module-assertions only if Emacs has been compiled with module
21366 2017-06-14 Katsumi Yamaoka <yamaoka@jpl.org>
21368 gnus-article-read-summary-keys: Don't move point for WDD and WDW commands
21370 * lisp/gnus/gnus-art.el (gnus-article-read-summary-keys):
21371 No need to restore window config for WDD and WDW commands.
21373 2017-06-14 Thomas Fitzsimmons <fitzsim@fitzsim.org>
21375 lisp/net/soap-client.el: Bump version to 3.1.3
21377 * lisp/net/soap-client.el: Bump version to 3.1.3.
21378 (soap-name-p): Fix checkdoc issue.
21380 2017-06-14 Alex Harsanyi <AlexHarsanyi@gmail.com>
21382 Fix an HTTP encoding error in soap-client.el
21384 * lisp/net/soap-client.el (soap-invoke-internal): Make
21385 SOAPAction header a UTF-8 encoded string.
21387 2017-06-14 Paul Eggert <eggert@cs.ucla.edu>
21389 Port cleanup attribute to Oracle Studio 12.5
21391 * INSTALL (--with-modules): List cleanup attribute as prereq.
21392 * src/conf_post.h (__has_attribute_cleanup): Remove; no longer needed.
21393 * src/emacs-module.c (MODULE_SETJMP_1): Don’t attempt to verify
21394 (__has_attribute (cleanup)), as Oracle Studio 12.5 supports
21395 __has_attribute only inside preprocessor expressions. The C
21396 compiler should check the cleanup attribute in the next line anyway.
21397 (module_reset_handlerlist): Remove an unnecessary ‘const’
21398 that causes Oracle Studio 12.5 to refuse to compile.
21400 2017-06-14 Glenn Morris <rgm@gnu.org>
21402 Fix running tests in without-modules builds
21404 * test/Makefile.in (EMACSOPT): Remove option that is only defined
21405 with-modules. emacs-module-tests.el passes it where needed.
21407 2017-06-13 Glenn Morris <rgm@gnu.org>
21409 * test/Makefile.in (src/emacs-module-tests.log): Out-of-tree fix.
21411 2017-06-13 Philipp Stephani <phst@google.com>
21413 Inline test module Makefile into main test Makefile
21415 The test/data/emacs-module/Makefile only built a single target, and
21416 inlining it into test/Makefile simplifies dependency tracking and
21417 reduces code duplication.
21419 * configure.ac: Don't build test/data/emacs-module/Makefile.
21421 * Makefile.in ($(test_module)): Inline compilation.
21422 (clean): Also clean test module outputs.
21424 2017-06-13 Michael Albinus <michael.albinus@gmx.de>
21426 * lisp/net/tramp-sh.el (tramp-set-file-uid-gid): Do not handle locally on w32.
21428 2017-06-13 Michael Albinus <michael.albinus@gmx.de>
21430 Minor tweaks in Tramp manual
21432 * doc/misc/trampver.texi: Add prefixwithspace flag.
21434 * doc/misc/tramp.texi (Password handling): Harmonize example.
21435 (File name completion): Use prefixwithspace flag.
21436 (Frequently Asked Questions): Explain `tramp-histfile-override'.
21438 2017-06-13 Philipp Stephani <phst@google.com>
21440 Silence two Clang warnings by introducing additional local variables
21442 * lib/strftime.c (libc_hidden_def):
21443 * lib-src/make-docfile.c (put_filename): Introduce local variables to
21444 silence Clang warnings.
21446 2017-06-13 Noam Postavsky <npostavs@gmail.com>
21448 Fix wrong indentation after string literal (Bug#27306)
21450 * lisp/emacs-lisp/lisp-mode.el (lisp-indent-state)
21451 (lisp-indent-calc-next): Remove `depth' field, use (car ppss) instead.
21452 * test/lisp/emacs-lisp/lisp-mode-tests.el
21453 (lisp-indent-region-after-string-literal): New test.
21455 2017-06-13 Philipp Stephani <phst@google.com>
21457 Fix version checks for emacs-module.h
21459 We don't need C11 or C++11 because stdbool.h is in C99, and for C++ we
21460 don't need it at all.
21462 2017-06-13 Noam Postavsky <npostavs@gmail.com>
21464 Buttonize #<bytecode> part of printed functions (Bug#25226)
21466 * lisp/emacs-lisp/cl-print.el: Autoload `disassemble-1'.
21467 (cl-print-compiled-button): New variable.
21468 (help-byte-code): New button type, calls `disassemble' in its action.
21469 (cl-print-object): Use it if `cl-print-compiled-button' is
21472 2017-06-12 Philipp Stephani <phst@google.com>
21474 Print module structure sizes when initializing test module
21476 * test/data/emacs-module/mod-test.c (emacs_module_init): Print
21477 compile-time and runtime sizes of module structures to ease debugging
21479 2017-06-12 Glenn Morris <rgm@gnu.org>
21481 Small portability fix for emacs-module.h (bug#27346)
21483 * src/emacs-module.h (EMACS_ATTRIBUTE_NONNULL) [!__has_attribute]:
21484 Avoid 'error: missing binary operator before token "("'.
21486 2017-06-12 Glenn Morris <rgm@gnu.org>
21488 Give a more informative failure in module assertion test
21490 * test/src/emacs-module-tests.el (module--test-assertions):
21491 Rephrase final check to give a more informative failure.
21493 2017-06-12 Philipp Stephani <phst@google.com>
21495 Fix off-by-one error
21497 * test/data/emacs-module/mod-test.c (emacs_module_init): Fix
21500 2017-06-12 Glenn Morris <rgm@gnu.org>
21502 Clean up after module assertion tests
21504 * test/src/emacs-module-tests.el (module--test-assertions):
21505 Use a temporary directory to contain any core dumps.
21507 2017-06-12 Glenn Morris <rgm@gnu.org>
21509 Small improvement for module assertion test
21511 * test/src/emacs-module-tests.el (module--test-assertions):
21512 Don't rely on the precise form of an "Abort" message.
21514 2017-06-12 Glenn Morris <rgm@gnu.org>
21516 Improve previous test/data/emacs-module/Makefile change
21518 * test/data/emacs-module/Makefile.in (clean):
21519 Avoid doing unpleasant things if run in a build without modules.
21521 2017-06-12 Glenn Morris <rgm@gnu.org>
21523 Small improvements for test/data/emacs-module/Makefile
21525 * test/data/emacs-module/Makefile.in (%.o):
21526 Fix emacs-module dependency.
21527 (SECONDARY): Stop make automatically deleting *.o.
21530 2017-06-12 Glenn Morris <rgm@gnu.org>
21532 * make-dist: Skip some more generated files in test/.
21534 2017-06-12 Alan Third <alan@idiocy.org>
21536 Note how fullscreen differs on the NS port
21538 doc/lispref/frames.texi (Size Parameters):
21539 doc/emacs/frames.texi (Tool Bars): Add a description of how macOS
21540 hides the tool-bar and menu-bar in fullscreen.
21542 2017-06-12 Alan Third <alan@idiocy.org>
21544 Add no-focus-on-map to NS build (bug#25408)
21546 * src/nsfns.m (ns_frame_parm_handlers): Add x_set_no_focus_on_map.
21547 (x-create-frame): Check for no-focus-on-map.
21548 * src/nsterm.h (x_set_no_focus_on_map): New function.
21549 * src/nsterm.m (x_set_no_focus_on_map): New function.
21550 (ns_raise_frame): Add parameter for specifying whether to focus the
21552 (ns_frame_raise_lower):
21553 (x_make_frame_visible): Handle new parameter for ns_raise_frame.
21555 2017-06-12 Paul Eggert <eggert@cs.ucla.edu>
21557 _Noreturn not noreturn
21559 _Noreturn is more portable to non-C11 platforms. See:
21560 https://www.gnu.org/software/gnulib/manual/html_node/stdnoreturn_002eh.html
21561 * src/emacs-module.c: Use _Noreturn, not noreturn. No need to
21562 include <stdnoreturn.h>. Reindent to fit in 80 columns.
21564 2017-06-12 Glenn Morris <rgm@gnu.org>
21566 Update make-dist for recent test/ changes
21568 * make-dist: No longer distribute test/data/emacs-module/Makefile.
21570 2017-06-12 Michael Albinus <michael.albinus@gmx.de>
21572 Handle port and domain in Tramp's password cache
21574 * doc/misc/tramp.texi (Password handling): Explain port and
21575 domain handling in authinfo.
21577 * lisp/net/tramp.el (tramp-process-actions, tramp-clear-passwd):
21578 * lisp/net/tramp-gvfs.el (tramp-gvfs-handler-askpassword):
21579 * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band)
21580 (tramp-maybe-open-connection):
21581 * lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory)
21582 (tramp-smb-handle-file-acl, tramp-smb-handle-set-file-acl)
21583 (tramp-smb-maybe-open-connection): Handle also domain and port.
21585 2017-06-12 Eli Zaretskii <eliz@gnu.org>
21587 Avoid compilation warnings with pre-C99 libc
21589 * src/emacs-module.c (module_free_global_ref)
21590 (module_assert_runtime, module_assert_env, value_to_lisp): Use 'pD'
21591 instead of C99 't' format descriptor.
21593 2017-06-12 Philipp Stephani <phst@google.com>
21595 Flush all output streams before aborting
21597 Maybe the stdout buffer still contains something interesting that
21600 * src/emacs-module.c (module_abort): Flush all output streams before
21603 2017-06-12 Philipp Stephani <phst@google.com>
21605 Remove an assertion that doesn't test Emacs invariants
21607 * src/emacs-module.c (module_copy_string_contents): Remove an
21608 assertion that doesn't test Emacs invariants.
21610 2017-06-12 Philipp Stephani <phst@google.com>
21612 Test module: add necessary version checks
21614 * test/data/emacs-module/mod-test.c (emacs_module_init): Add necessary
21617 2017-06-12 Philipp Stephani <phst@google.com>
21619 Use additional CFLAGS from configure
21621 2017-06-12 Philipp Stephani <phst@google.com>
21623 Use Autoconf to generate the test module Makefile
21625 This makes it easier to pass compilation flags around.
21627 * configure.ac: Also build test module Makefile.
21629 * test/data/emacs-module/Makefile.in: New makefile template.
21631 * test/Makefile.in ($(test_module)): No longer necessary to pass
21632 @MODULES_SUFFIX@ around.
21634 * .gitignore: Test module Makefile can now be ignored.
21636 2017-06-12 Philipp Stephani <phst@google.com>
21638 Also compile test module as C11
21640 * test/data/emacs-module/Makefile (CFLAGS): Compile test module as C11
21642 2017-06-12 Philipp Stephani <phst@google.com>
21644 Implement module assertions for users
21646 Add a new command-line option '-module-assertions' that users can
21647 enable developing or debugging a module. If this option is present,
21648 Emacs performs additional checks to verify that modules fulfill their
21649 requirements. These checks are expensive and crash Emacs if modules
21650 are invalid, so disable them by default.
21652 This is a command-line option instead of an ordinary variable because
21653 changing it while Emacs is running would cause data structure
21656 * src/emacs.c (main): New command line option '-module-assertions'.
21658 * src/emacs-module.c (module_assert_main_thread)
21659 (module_assert_runtime, module_assert_env, module_assert_value):
21660 New functions to assert module requirements.
21661 (syms_of_module): New uninterned variable 'module-runtimes'.
21662 (init_module_assertions, in_main_thread, module_abort): New helper
21664 (initialize_environment): Initialize value list. If assertions are
21665 enabled, use a heap-allocated environment object.
21666 (finalize_environment): Add assertion that environment list is never
21668 (finalize_runtime_unwind): Pop module runtime object stack.
21669 (value_to_lisp): Assert that the value is valid.
21670 (lisp_to_value): Record new value if assertions are enabled.
21671 (mark_modules): Mark allocated object list.
21672 (MODULE_FUNCTION_BEGIN_NO_CATCH)
21673 (module_non_local_exit_check, module_non_local_exit_clear)
21674 (module_non_local_exit_get, module_non_local_exit_signal)
21675 (module_non_local_exit_throw): Assert thread and environment.
21676 (module_get_environment): Assert thread and runtime.
21677 (module_make_function, module_funcall, module_intern)
21678 (module_funcall, module_make_integer, module_make_float)
21679 (module_make_string, module_make_user_ptr, module_vec_get)
21680 (funcall_module, Fmodule_load): Adapt callers.
21681 (module_make_global_ref): If assertions are enabled, use the global
21682 environment to store global values.
21683 (module_free_global_ref): Remove value from global value list.
21685 * test/Makefile.in (EMACSOPT): Enable module assertions when testing
21688 * test/data/emacs-module/mod-test.c (Fmod_test_invalid_store)
21689 (Fmod_test_invalid_load): New functions to test module assertions.
21690 (emacs_module_init): Bind the new functions.
21692 * test/src/emacs-module-tests.el (mod-test-emacs): New constant for
21693 the Emacs binary file.
21694 (mod-test-file): New constant for the test module file name.
21695 (module--test-assertions): New unit test.
21697 2017-06-12 Philipp Stephani <phst@google.com>
21699 emacs-module: Use __attribute__((nonnull))
21701 Annotate all parameters with __attribute__((nonnull)) that may not be
21704 2017-06-12 Philipp Stephani <phst@google.com>
21706 Explicitly require C11 or C++11 in emacs-module.h
21708 We already implicitly require them by including stdbool.h. Just make
21709 the error message a bit clearer, and remove an unnecessary version
21712 2017-06-12 Philipp Stephani <phst@google.com>
21714 Add missing 'require' forms to prevent compiler warnings.
21716 * lisp/eshell/esh-ext.el (esh-arg, esh-proc): Add missing
21719 2017-06-12 Paul Eggert <eggert@cs.ucla.edu>
21724 2017-06-11 getopt-posix: port to glibc 2.25.90
21725 2017-06-04 same-inode: port better to VMS 8.2 and later
21726 * doc/misc/texinfo.tex, lib/getopt-pfx-core.h, lib/getopt-pfx-ext.h:
21727 * m4/sys_types_h.m4: Copy from gnulib.
21729 2017-06-12 Paul Eggert <eggert@cs.ucla.edu>
21731 Remove Lisp_Misc_Float
21733 * src/data.c (Ftype_of): Do not worry about Lisp_Misc_Float.
21734 * src/lisp.h (Lisp_Misc_Float): Remove. This placeholder has been
21735 unused for two decades; if we ever want to change floats to be a
21736 misc type we can bring it back then.
21738 2017-06-12 Paul Eggert <eggert@cs.ucla.edu>
21740 Make two symbols private to emacs-module.c
21742 * src/lisp.h (allocate_module_function, XSET_MODULE_FUNCTION):
21744 * src/emacs-module.c: ... to here.
21746 2017-06-12 Glenn Morris <rgm@gnu.org>
21748 Merge from origin/emacs-25
21750 da62c1532e4 (origin/emacs-25) Improve the documentation of filesets
21752 2017-06-12 Glenn Morris <rgm@gnu.org>
21754 Merge from origin/emacs-25
21756 e80f6a210b0 Describe problems with Microsoft Intellipoint
21757 a73ec1edb07 More accurate documentation of the ':box' face attribute
21759 2017-06-12 Glenn Morris <rgm@gnu.org>
21761 Merge from origin/emacs-25
21763 eaa00584ceb Improve documentation of 'gnutls-verify-error'
21764 908498cc01b ; etc/PROBLEMS: Describe GTK-related crashes on elementar...
21765 741daec617e ; Describe the problem with ksh when resizing shell window
21767 2017-06-11 Michael Albinus <michael.albinus@gmx.de>
21769 Some further improvements for tramp-gvfs.el
21771 * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-expand-file-name)
21772 (tramp-gvfs-get-file-attributes)
21773 (tramp-gvfs-maybe-open-connection): Handle davs? properly.
21774 (tramp-gvfs-handler-askquestion): Improve `yes-or-no-p' prompt.
21775 Show question also in batch mode. Cache result.
21777 * test/lisp/net/tramp-tests.el (tramp-test24-file-name-completion):
21778 Support completion for host names and ports.
21780 2017-06-11 Simen Heggestøyl <simenheg@gmail.com>
21782 Fix highlighting of CSS selectors with double hyphens
21784 * lisp/textmodes/css-mode.el (css--font-lock-keywords): Fix
21785 highlighting of selectors that contain double hyphens. They would be
21786 mistaken for a variable.
21788 2017-06-11 Philipp Stephani <phst@google.com>
21790 Support threads in modules
21792 Rather than checking for the main thread, check for the current
21795 * src/emacs-module.c (check_thread): New function.
21796 (MODULE_FUNCTION_BEGIN_NO_CATCH, module_get_environment)
21797 (module_non_local_exit_check, module_non_local_exit_clear)
21798 (module_non_local_exit_get, module_non_local_exit_signal)
21799 (module_non_local_exit_throw, module_is_not_nil, module_eq): Use it.
21801 2017-06-11 Philipp Stephani <phst@google.com>
21803 Allow non-local exits in module initializers
21805 Previously signals, throws, and quits from module initialization
21806 functions were ignored. These function aren't special, and better
21807 errors can be reported using signals than with the initialization
21808 return code, so allow non-local exits.
21810 * src/emacs-module.c (module_signal_or_throw): New helper function.
21811 (Fmodule_load, funcall_module): Use it.
21812 (Fmodule_load): Also allow quitting.
21814 2017-06-11 Noam Postavsky <npostavs@gmail.com>
21816 Let eshell/sudo handle absolute command names (Bug#27167)
21818 * lisp/eshell/esh-ext.el (eshell-find-interpreter): Don't change
21819 absolute paths into relative ones.
21821 2017-06-10 Alan Third <alan@idiocy.org>
21823 Don't wait for toolbar in NS native fullscreen
21825 * src/nsterm.m (EmacsView:updateFrameSize): Don't short-circuit the
21826 function when in fullscreen.
21828 2017-06-10 Alexander Gramiak <agrambot@gmail.com>
21830 Fix the placement of GTK menus on multi-monitor systems
21832 menu_position_func did not properly use the current monitor's
21833 resolution. Also see commit '2016-02-06 22:12:53 +0100'.
21835 * lisp/frame.el (frame-monitor-attribute, frame-monitor-geometry)
21836 (frame-monitor-workarea): New functions.
21838 * src/xmenu.c (menu_position_func): Take into account the workarea of
21839 the monitor that contains the mouse. (Bug#23568)
21841 2017-06-10 Eli Zaretskii <eliz@gnu.org>
21843 Clarify documentation of 'face-spec-set'
21845 * lisp/faces.el (face-spec-set): Clarify the description of
21846 SPEC-TYPE in the doc string.
21848 * doc/lispref/display.texi (Defining Faces): Clarify the
21849 description of 'face-spec-set's SPEC-TYPE argument. (Bug#27246)
21851 2017-06-10 Michael Albinus <michael.albinus@gmx.de>
21853 Fix domain port and handling in tramp-gvfs.el
21855 * lisp/net/tramp-gvfs.el (tramp-gvfs-dbus-byte-array-to-string):
21856 Return nil if BYTE-ARRAY is nil.
21857 (tramp-gvfs-url-file-name, tramp-gvfs-handler-mounted-unmounted)
21858 (tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec):
21859 Fix domain and port handling.
21861 * lisp/net/tramp.el (tramp-handle-file-name-case-insensitive-p):
21864 2017-06-10 Eli Zaretskii <eliz@gnu.org>
21866 Improve documentation of 'face-spec-set-2'
21868 * lisp/faces.el (face-spec-recalc, face-spec-set-2): Rename 'spec'
21870 (face-spec-choose, face-spec-set-2): Doc fix. (Bug#27238)
21872 2017-06-10 Eli Zaretskii <eliz@gnu.org>
21874 Fix handling of Python/Guile commands with arguments in gdb-mi.el
21876 * lisp/progmodes/gdb-mi.el (gdb-python-guile-commands-regexp): New
21878 (gdb-control-commands-regexp): Use it.
21879 (gdb-send): Don't increment gdb-control-level if the command
21880 matches gdb-python-guile-commands-regexp and has non-empty
21881 arguments. Reported by David Boles <boles@ieee.org> in
21882 https://lists.gnu.org/r/emacs-devel/2017-06/msg00009.html.
21884 2017-06-10 Eli Zaretskii <eliz@gnu.org>
21886 Preserve point in Dired windows under 'dired-auto-revert-buffer'
21888 * lisp/dired.el (dired-find-file): When dired-auto-revert-buffer
21889 is non-nil, bind switch-to-buffer-preserve-window-point to nil
21890 while calling find-file. (Bug#27243)
21892 2017-06-09 Philipp Stephani <phst@google.com>
21894 Give test files a -tests.el suffix
21896 Rename a couple of test files that have the same name as the library
21897 they test. This harmonizes the naming pattern and makes it possible
21898 to have the tests directories in the load path.
21900 2017-06-09 Philipp Stephani <phst@google.com>
21902 Fix another compiler warning on macOS
21904 * src/image.c (x_query_frame_background_color): Don't define if we
21905 have NextStep but no image support.
21907 2017-06-09 Philipp Stephani <phst@google.com>
21909 Add garbage collection support for module environments
21911 * src/emacs-module.c (mark_modules): New function.
21912 (initialize_environment): Properly initialize Lisp objects.
21913 * src/alloc.c (garbage_collect_1): Call it.
21915 2017-06-08 Glenn Morris <rgm@gnu.org>
21917 Make autogen.sh report relevant environment variables
21919 * autogen.sh (check_version):
21920 Indicate if using an environment variable.
21922 2017-06-08 Noam Postavsky <npostavs@gmail.com>
21924 Split variable macro env from function env
21926 * lisp/emacs-lisp/cl-macs.el (cl--sm-macroexpand): Remove.
21927 (cl-symbol-macrolet): Instead of adding each binding directly into the
21928 main environment with a special key format, put all symbol macro
21929 bindings into a single entry in the main environment under
21930 `:cl-symbol-macros'.
21931 (cl--sm-macroexpand): Look up symbol bindings in the
21932 `:cl-symbol-macros' entry of the environment.
21934 2017-06-07 Glenn Morris <rgm@gnu.org>
21936 * make-dist: Directory modules/mod-test no longer exists.
21938 2017-06-07 Glenn Morris <rgm@gnu.org>
21940 More authors.el updates
21942 * admin/authors.el (authors-ignored-files, authors-valid-file-names)
21943 (authors-renamed-files-alist): Additions.
21945 2017-06-07 Glenn Morris <rgm@gnu.org>
21947 * make-dist: Check a release has a ChangeLog with a release notice.
21949 * make-dist: Use existing ChangeLog if present.
21951 2017-06-07 Michael Albinus <michael.albinus@gmx.de>
21953 * lisp/net/tramp-sh.el (tramp-maybe-open-connection): Fix port handling.
21955 2017-06-07 Lars Ingebrigtsen <larsi@gnus.org>
21957 (url-cookie-host-can-set-p): Protect against zero-length domains
21959 * lisp/url/url-cookie.el (url-cookie-host-can-set-p): Protect
21960 against zero-length domains.
21962 Backtrace of a real-world site that triggers a bug:
21964 Debugger entered--Lisp error: (args-out-of-range "" 0)
21965 url-cookie-host-can-set-p("www.washingtonpost.com" "")
21966 url-cookie-handle-set-cookie("utm_term=0;Expires=Thursday,
21967 01-January-1970 00:00:00 GMT; path=/; domain=")
21968 url-http-handle-cookies()
21970 2017-06-06 Glenn Morris <rgm@gnu.org>
21972 More authors.el updates
21974 * admin/authors.el (authors-obsolete-files-regexps)
21975 (authors-valid-file-names, authors-renamed-files-alist)
21976 (authors-renamed-files-regexps): Additions.
21978 2017-06-06 Glenn Morris <rgm@gnu.org>
21980 More small authors.el updates
21982 * admin/authors.el (authors-aliases): Fix recent addition.
21983 (authors-obsolete-files-regexps, authors-no-scan-regexps)
21984 (authors-ignored-files, authors-valid-file-names)
21985 (authors-renamed-files-alist): Additions.
21987 2017-06-06 Glenn Morris <rgm@gnu.org>
21989 Make authors.el report names that were ignored
21991 * admin/authors.el (authors-ignored-names): New.
21992 (authors-canonical-author-name): Add file and position arguments.
21993 Record ignored authors.
21994 (authors-scan-change-log, authors-scan-el):
21995 Pass file and position to authors-canonical-author-name.
21996 (authors): Also print authors that were ignored.
21998 2017-06-06 Glenn Morris <rgm@gnu.org>
22000 * admin/authors.el (authors-aliases): Additions.
22002 2017-06-06 Tino Calancha <tino.calancha@gmail.com>
22004 * test/lisp/subr-tests.el (subr-tests-bug22027): Add test.
22006 2017-06-06 Noam Postavsky <npostavs@gmail.com>
22008 * lisp/subr.el (read-passwd): Don't delete return value (Bug#22027).
22010 2017-06-06 Dmitry Gutov <dgutov@yandex.ru>
22012 Enable ElDoc messages after the newline command
22014 * lisp/emacs-lisp/eldoc.el:
22015 Add "newline" to the eldoc-add-command-completions call (bug#27228).
22017 2017-06-06 Dmitry Gutov <dgutov@yandex.ru>
22019 Enable eldoc-mode explicitly inside read--expression
22021 * lisp/simple.el (read--expression): Call eldoc-mode (bug#27202).
22023 2017-06-06 Andy Moreton <andrewjmoreton@gmail.com>
22025 Fix check for package-unsigned-archives during retrieval
22027 * lisp/emacs-lisp/package.el (package--download-one-archive):
22028 Fix check for package-unsigned-archives.
22030 2017-06-05 Noah Friedman <friedman@splode.com>
22032 Merge etc/emacs-buffer.gdb from emacs-25 to master.
22034 2017-06-05 Philipp Stephani <phst@google.com>
22036 Fix undefined behavior in mapbacktrace
22038 * src/eval.c (Fmapbacktrace): Don't assume that PDL is still valid.
22040 2017-06-05 Eli Zaretskii <eliz@gnu.org>
22042 Fix emacs-module-tests on MS-Windows
22044 * src/print.c (print_vectorlike): Make sure module function's
22045 address prints with a leading "0x". This fixes emacs-module-tests
22046 on MS-Windows. Fix whitespace.
22047 * src/dynlib.c (dynlib_addr): Remove unused variable. Update
22050 2017-06-05 Philipp Stephani <phst@google.com>
22052 Use unwind protection to clean up data structures in modules
22054 Reuse existing functionality and simplify the code a bit.
22056 * src/emacs-module.c (Fmodule_load): Use unwind protection to clean up
22058 (funcall_module): Use unwind protection to clean up environment
22060 (finalize_environment): Simplify signature.
22061 (finalize_environment_unwind, finalize_runtime_unwind): New functions.
22063 2017-06-05 Michael Albinus <michael.albinus@gmx.de>
22065 Some minor tweaks in tramp-tests.el
22067 * test/lisp/net/tramp-tests.el (tramp-test05-expand-file-name-relative):
22068 Let it pass for all gfvs based methods.
22069 (tramp-test24-file-name-completion): Run method and host
22070 completion for all syntaxes only when expensive tests are enabled.
22071 Do not check host completion for gvfs based methods.
22072 (tramp--test-gvfs-p): Add optional METHOD argument.
22073 (tramp--test-afp-or-smb-p): Remove.
22075 2017-06-05 Michael Albinus <michael.albinus@gmx.de>
22077 Fix error in Tramp rsync method
22079 * lisp/net/tramp-sh.el (tramp-methods) <rsync>: Add "-c" argument.
22080 Otherwise, `tramp-test10-write-region' could fail.
22082 2017-06-05 Philipp Stephani <phst@google.com>
22084 Inline module_has_cleanup
22086 This constant is only used once, and we fail compilation anyway if
22089 * src/emacs-module.c (MODULE_SETJMP_1): Inline __has_attribute.
22091 2017-06-05 Philipp Stephani <phst@google.com>
22093 Add missing dependency to test module source file
22095 2017-06-05 Paul Eggert <eggert@cs.ucla.edu>
22097 Omit space that broke ‘make check’
22099 * src/print.c (print_vectorlike): Omit stray space.
22101 2017-06-05 Paul Eggert <eggert@cs.ucla.edu>
22103 Remove easserts etc. from emacs-module.c
22105 Most of these seem to run afoul of the comment "Do NOT use
22106 'eassert' for checking validity of user code in the module."
22107 * src/emacs-module.c (MODULE_FUNCTION_BEGIN_NO_CATCH)
22108 (module_non_local_exit_check, module_non_local_exit_clear)
22109 (module_non_local_exit_get, module_non_local_exit_signal)
22110 (module_non_local_exit_throw, module_make_string):
22111 Remove unnecessary easserts that pointers are nonnull.
22112 Hardware checks this for us nowadays, and the checks
22113 just clutter up the code.
22114 (module_extract_integer): Remove unnecessary verify that
22115 a C signed integer is in the range INTMAX_MIN..INTMAX_MAX.
22116 The C standard guarantees this.
22117 (module_copy_string_contents): Remove unnecessary eassert
22118 that Lisp strings are null-terminated.
22119 (module_function_arity): Remove unnecessary easserts that
22120 function arities are in range.
22122 2017-06-05 Paul Eggert <eggert@cs.ucla.edu>
22124 Remove unnecessary checking in emacs-module.c
22126 * src/emacs-module.c (module_copy_string_contents):
22127 Remove checking, as string lengths are always nonnegative and less
22128 than STRING_BYTES_BOUND, and this is checked elsewhere.
22129 (module_make_string): Check length against STRING_BYTES_BOUND, a
22130 tighter bound than MOST_POSITIVE_FIXNUM. (funcall_module): Don't
22131 assume that an out-of-range integer is nonnegative.
22133 2017-06-05 Paul Eggert <eggert@cs.ucla.edu>
22135 SCHARS and STRING_BYTES are nonnegative
22137 Tell the compiler that SCHARS and STRING_BYTES are nonnegative, in
22138 the hopes that this will optimize a bit better. Also, check this
22139 at runtime if ENABLE_CHECKING.
22140 * src/lisp.h (SCHARS, STRING_BYTES):
22141 eassume that these functions return nonnegative values.
22142 (STRING_SET_CHARS) [ENABLE_CHECKING]:
22143 eassert that newsize is nonnegative.
22145 2017-06-05 Noam Postavsky <npostavs@gmail.com>
22147 * lisp/desktop.el (desktop-clear): Skip the daemon's frame (Bug#26912).
22149 2017-06-04 Philipp Stephani <phst@google.com>
22151 Remove an unused error symbol
22153 * src/emacs-module.c (syms_of_module): Remove unused error symbol
22154 'invalid-module-call'.
22156 2017-06-04 Philipp Stephani <phst@google.com>
22158 Support quitting in modules
22160 The idea is that modules should call env->should_quit from time to
22161 time and return as quickly as possible if it returns true.
22163 * src/emacs-module.c (module_should_quit): New module function.
22164 (initialize_environment): Use it.
22165 (funcall_module): Process potential pending quit.
22167 * src/eval.c (maybe_quit): Add reference to module_should_quit.
22169 2017-06-04 Philipp Stephani <phst@google.com>
22171 Use more specific errors for module load failure
22173 * src/emacs-module.c (syms_of_module): Add more specific error
22175 (Fmodule_load): Use them.
22177 2017-06-04 Philipp Stephani <phst@google.com>
22179 Remove an unneeded assertion
22181 * src/emacs-module.c (module_copy_string_contents): Remove unneeded
22182 assertion. If this assertion triggers, we raise an error anyway.
22184 2017-06-04 Philipp Stephani <phst@google.com>
22186 Guard against signed integer overflows
22188 * src/emacs-module.c (module_extract_integer)
22189 (module_copy_string_contents, module_make_string): Guard against
22190 signed integer overflows.
22192 2017-06-04 Philipp Stephani <phst@google.com>
22194 Add a couple more assertions to the module code
22196 These can help module authors debug crashes.
22198 * src/emacs-module.c (module_non_local_exit_check)
22199 (module_non_local_exit_clear, module_non_local_exit_get)
22200 (module_non_local_exit_signal, module_non_local_exit_throw)
22201 (module_copy_string_contents, module_make_string)
22202 (funcall_module, initialize_environment): Add assertions
22204 2017-06-04 Philipp Stephani <phst@google.com>
22206 Use ATTRIBUTE_MAY_ALIAS where alias violations are likely
22208 In particular, alias violations are likely for the return values of
22209 dlsym(3), which get cast around arbitrarily.
22211 * src/emacs-module.c (Fmodule_load): Use ATTRIBUTE_MAY_ALIAS.
22213 2017-06-04 Philipp Stephani <phst@google.com>
22215 Simplify interface of dynlib_attr.
22217 Instead of returning bool, set the argument pointers to NULL if the
22218 information is not available.
22220 * src/dynlib.c (dynlib_addr): Don't return bool.
22222 2017-06-04 Philipp Stephani <phst@google.com>
22224 Rationalize environment lifetime management functions
22226 * src/emacs-module.c (Fmodule_load, funcall_module): Adapt callers.
22227 (finalize_environment): Add parameter for public part of the
22228 environment, like 'initialize_environment'. Add assertions.
22230 2017-06-04 Philipp Stephani <phst@google.com>
22232 Rework printing of module functions
22234 Fix a FIXME in emacs-module.c. Put the printing into print.c, like
22237 * src/print.c (print_vectorlike): Add code to print module functions.
22239 * src/emacs-module.c (funcall_module): Stop calling
22240 'module_format_fun_env'. Now that module functions are first-class
22241 objects, they can be added to signal data directly.
22242 (module_handle_signal): Remove now-unused function
22243 'module_format_fun_env'.
22245 * test/src/emacs-module-tests.el (mod-test-sum-test): Adapt unit test.
22247 * src/eval.c (funcall_lambda): Adapt call to changed signature of
22250 2017-06-04 Philipp Stephani <phst@google.com>
22252 Define helper macro to reduce code duplication
22254 * src/emacs-module.c (MODULE_FUNCTION_BEGIN_NO_CATCH): New helper
22256 (MODULE_FUNCTION_BEGIN, module_type_of, module_is_not_nil, module_eq):
22259 2017-06-04 Philipp Stephani <phst@google.com>
22261 Remove two FIXMEs that can't be fixed
22263 2017-06-04 Eli Zaretskii <eliz@gnu.org>
22265 Avoid slow startup in daemon mode when global-linum-mode is on
22267 * lisp/linum.el (linum-on): Don't turn on linum-mode in a
22268 non-client frame of a daemon session. (Bug#27210)
22270 2017-06-04 Paul Eggert <eggert@cs.ucla.edu>
22272 Fix eldoc bug with curved quote
22274 * lisp/progmodes/elisp-mode.el (elisp-get-fnsym-args-string):
22275 Substitute quotes in documentation before returning it (Bug#27159).
22277 2017-06-04 Paul Eggert <eggert@cs.ucla.edu>
22279 Tune ‘format’ after recent fix
22281 * doc/lispref/strings.texi (Formatting Strings):
22282 * src/editfns.c (Fformat): Format field numbers no longer need
22283 to be unique, reverting the previous doc change since that has
22284 now been fixed. Also, document that %% should not have modifiers.
22285 * src/editfns.c (styled_format): Improve performance. Remove
22286 the need for the new prepass over the format string, by using
22287 a typically-more-generous bound for the info array size.
22288 Initialize the info array lazily. Move string inspection to
22289 the same area to help caching. Avoid the need for a
22290 converted_to_string bitfield by using EQ. Cache arg in a
22291 local and avoid some potential aliasing issues to help the
22292 compiler. Info array is now 0-origin, not 1-origin.
22294 2017-06-04 Nikolay Kudryavtsev <nikolay.kudryavtsev@gmail.com>
22296 Improve of file-local-name use in vc-git-checkin
22298 * lisp/vc/vc-git.el (vc-git-checkin): Use file-local-name only
22299 when calling git commit.
22301 2017-06-03 Simen Heggestøyl <simenheg@gmail.com>
22303 Support a new CSS indentation style
22305 * lisp/textmodes/css-mode.el (css-smie-rules): Indent after property
22306 immediately followed by a newline.
22308 * test/manual/indent/css-mode.css: Add test for the change above.
22310 * test/manual/indent/scss-mode.scss: Ditto.
22312 2017-06-03 Philipp Stephani <phst@google.com>
22314 Fix a bug when using format field numbers
22316 Previously styled_format overwrite the argument vector. This is no
22317 longer possible because there might be more than one specification per
22318 argument. Use the existing auxiliary info array instead.
22320 * src/editfns.c (styled_format): Record arguments in the info
22321 structure instead of overwriting them.
22322 * test/src/editfns-tests.el (format-with-field): Add unit test.
22324 2017-06-03 Paul Eggert <eggert@cs.ucla.edu>
22326 Document uniqueness limitation of ‘format’
22328 * doc/lispref/strings.texi (Formatting Strings):
22329 * src/editfns.c (Fformat):
22330 Document that field numbers should be unique within a format.
22332 2017-06-03 Glenn Morris <rgm@gnu.org>
22334 Small rmailmm fix (bug#27203)
22336 * lisp/mail/rmailmm.el (rmail-mime-insert-bulk):
22337 Fall back to HOME if no match in rmail-mime-attachment-dirs-alist.
22339 2017-06-03 Glenn Morris <rgm@gnu.org>
22341 * admin/authors.el (authors-aliases): Addition.
22343 2017-06-03 Glenn Morris <rgm@gnu.org>
22345 Add watch for password back to inferior python comint filter
22347 It was removed along with other items for speed (bug#16875),
22348 but doesn't seem to have been causing an issue, and it's useful to
22349 have it there (bug#27154).
22350 * lisp/progmodes/python.el (inferior-python-mode):
22351 Add comint-watch-for-password-prompt to comint-output-filter-functions.
22353 2017-06-03 Ryan <rct@thompsonclan.org> (tiny change)
22355 Use completing-read-default in tmm-prompt
22357 tmm uses completing-read, but customizes its behavior so much
22358 that any alternative completing-read-function will almost
22359 certainly break it. For example, both ido-ubiquitous and ivy have
22360 special code to deactivate themselves for tmm.
22361 * lisp/tmm.el (tmm-prompt): Use completing-read-default instead of
22362 completing-read. (Bug#27193)
22364 2017-06-02 Mats Lidell <mats.lidell@cag.se>
22366 * etc/tutorials/TUTORIAL.sv: synced with TUTORIAL (Bug#20371)
22368 2017-06-02 Glenn Morris <rgm@gnu.org>
22372 * test/lisp/calendar/todo-mode-tests.el (with-todo-test):
22373 HOME should be a directory, not a file. Delete it when finished.
22375 2017-06-02 Lele Gaifax <lele@metapensiero.it> (tiny change)
22379 * etc/tutorials/TUTORIAL.it: Adjust to recent changes in TUTORIAL.
22381 2017-06-02 Eli Zaretskii <eliz@gnu.org>
22383 Fix cursor position in Dired buffers after dired-sort-toggle
22385 * src/xdisp.c (display_and_set_cursor): Record cursor coordinates
22386 even if the frame is marked as garbaged. (Bug#27187)
22388 2017-06-02 Eli Zaretskii <eliz@gnu.org>
22392 * etc/tutorials/TUTORIAL.he: Adjust to recent changes in TUTORIAL.
22394 2017-06-02 Noam Postavsky <npostavs@gmail.com>
22396 * etc/tutorials/TUTORIAL: Explain how to stop the tutorial (Bug#20371).
22398 2017-06-02 Paul Eggert <eggert@cs.ucla.edu>
22400 Limit format fields to more POSIX-like spec
22402 * doc/lispref/strings.texi (Formatting Strings):
22403 Don’t allow mixing numbered with unnumbered format specs.
22404 * src/editfns.c (styled_format): Don’t bother checking for field 0,
22405 since it doesn’t crash and the behavior is not specified.
22406 * test/src/editfns-tests.el (format-with-field): Adjust tests to
22407 match current doc. Add more tests for out-of-range fields.
22409 2017-06-02 Paul Eggert <eggert@cs.ucla.edu>
22411 Improve performance by avoiding strtoumax
22413 This made (string-to-number "10") 20% faster on my old desktop,
22414 an AMD Phenom II X4 910e running Fedora 25 x86-64.
22415 * admin/merge-gnulib (GNULIB_MODULES): Remove strtoumax.
22416 * lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
22417 * lib/strtoul.c, lib/strtoull.c, lib/strtoumax.c, m4/strtoull.m4:
22418 * m4/strtoumax.m4: Remove.
22419 * src/editfns.c (str2num): New function.
22420 (styled_format): Use it instead of strtoumax. Use ptrdiff_t
22421 instead of uintmax_t. Check for integer overflow.
22422 * src/lread.c (LEAD_INT, DOT_CHAR, TRAIL_INT, E_EXP):
22423 Move to private scope and make them enums.
22424 (string_to_number): Compute integer value directly during
22425 first pass instead of revisiting it with strtoumax later.
22427 2017-06-02 Paul Eggert <eggert@cs.ucla.edu>
22429 Minor improvements to format field numbers
22431 * src/editfns.c (styled_format): Allow field numbers in a %% spec.
22432 No need for a special diagnostic for field numbers greater than
22433 PTRDIFF_MAX. Reword diagnostic for field 0.
22434 * test/src/editfns-tests.el (format-with-field): Adjust to match.
22436 2017-06-02 Philipp Stephani <phst@google.com>
22438 Implement field numbers in format strings
22440 A field number explicitly specifies the argument to be formatted.
22441 This is especially important for potential localization work, since
22442 grammars of various languages dictate different word orders.
22444 * src/editfns.c (Fformat): Update documentation.
22445 (styled_format): Implement field numbers.
22447 * doc/lispref/strings.texi (Formatting Strings): Document field numbers.
22449 * lisp/emacs-lisp/bytecomp.el (byte-compile-format-warn): Adapt.
22451 * test/src/editfns-tests.el (format-with-field): New unit test.
22453 2017-06-01 Alexander Gramiak <agrambot@gmail.com>
22455 Limit scope of local overriding-terminal-local-map
22457 The function `binding' may call isearch-done, which globally sets
22458 overriding-terminal-local-map to nil (Bug#23007).
22459 * lisp/isearch.el (isearch-mouse-2): Don't bind
22460 overriding-terminal-local-map around the call to `binding'.
22462 2017-06-01 Stephen Berman <stephen.berman@gmx.net>
22464 Correct and isolate the todo-mode test environment
22466 This avoids having to set todo-mode variables globally in the test
22467 file and prevents any exisiting user todo-mode files from influencing
22470 * test/lisp/calendar/todo-mode-tests.el:
22471 (with-todo-test): New macro.
22472 (todo-test-todo-quit01, todo-test-todo-quit02)
22473 (todo-test-item-highlighting): Use it.
22475 2017-06-01 Alan Third <alan@idiocy.org>
22477 Fix build errors on macOS 10.6 (bug#27059)
22479 * src/nsfns.m (compute_tip_xy): Don't use CGRectContainsPoint.
22481 2017-06-01 Eli Zaretskii <eliz@gnu.org>
22483 Improve testing of octal and hex display of raw bytes
22485 * test/manual/redisplay-testsuite.el (test-redisplay-5-toggle)
22486 (test-redisplay-5): Add a test with a large codepoint.
22488 2017-06-01 Vasilij Schneidermann <mail@vasilij.de>
22490 Add customizable to display raw bytes as hex
22492 * src/xdisp.c (get_next_display_element): Dispatch used format string
22493 for unprintables based on new display-raw-bytes-as-hex variable.
22494 (display-raw-bytes-as-hex): New variable. (Bug#27122)
22496 * lisp/cus-start.el: Add defcustom form for display-raw-bytes-as-hex.
22498 * doc/emacs/display.texi: Document the new variable.
22499 * etc/NEWS: Mention display-raw-bytes-as-hex.
22501 * test/manual/redisplay-testsuite.el (test-redisplay-5-toggle)
22502 (test-redisplay-5): New tests.
22503 (test-redisplay): Call test-redisplay-5.
22505 2017-06-01 Eli Zaretskii <eliz@gnu.org>
22507 Revert "Add customizable to display raw bytes as hex"
22509 This reverts commit 7c9ac111c5e5d92e620b666893993d5dc562e483.
22511 2017-06-01 Eli Zaretskii <eliz@gnu.org>
22513 Add customizable to display raw bytes as hex
22515 * src/xdisp.c (get_next_display_element): Dispatch used format string
22516 for unprintables based on new display-raw-bytes-as-hex variable.
22517 (display-raw-bytes-as-hex): New variable. (Bug#27122)
22519 * lisp/cus-start.el: Add defcustom form for display-raw-bytes-as-hex.
22521 * doc/emacs/display.texi: Document the new variable.
22522 * etc/NEWS: Mention display-raw-bytes-as-hex.
22524 * test/manual/redisplay-testsuite.el (test-redisplay-5-toggle)
22525 (test-redisplay-5): New tests.
22526 (test-redisplay): Call test-redisplay-5.
22528 2017-06-01 Eli Zaretskii <eliz@gnu.org>
22530 Fix linum under text-scaling when leuven-theme is used
22532 * etc/themes/leuven-theme.el (linum): Make the 'linum' face
22533 inherit from 'default' and 'shadow', so that margins are enlarged
22534 as expected under text-scaling.
22536 2017-06-01 Paul Eggert <eggert@cs.ucla.edu>
22538 Free cwd when no longer needed
22540 * lib-src/emacsclient.c (main): Don’t dally when freeing cwd.
22542 2017-06-01 Anders Waldenborg <anders@0x63.nu> (tiny change)
22544 Fix memory leak of cwd string in emacsclient (Bug#26628)
22546 * lib-src/emacsclient.c (main): emacsclient retrieves the current
22547 working directory using get_current_dir_name which returns a newly
22548 allocated string. Make sure this string is freed before exiting.
22550 2017-06-01 Glenn Morris <rgm@gnu.org>
22552 Quieten compilation of some test files
22554 * test/lisp/dired-tests.el (dired-test-bug25609): Mark unused args.
22555 * test/src/data-tests.el (binding-test-set-constant-t)
22556 (binding-test-set-constant-nil, binding-test-set-constant-keyword)
22557 (binding-test-set-constant-nil): Silence compiler.
22558 * test/src/regex-tests.el (regex-tests-BOOST): Escape char literal.
22560 2017-06-01 Glenn Morris <rgm@gnu.org>
22562 Use true names for invocation- and source-directory
22564 * src/emacs.c (init_cmdargs) <Vinvocation_directory>:
22565 * src/lread.c (init_lread) <Vsource_directory>: Use true names.
22567 2017-06-01 Glenn Morris <rgm@gnu.org>
22569 Avoid elisp-mode test failures when source dir has multiple names
22571 * test/lisp/progmodes/elisp-mode-tests.el (emacs-test-dir):
22572 Use the true name of the directory.
22574 2017-06-01 Paul Eggert <eggert@cs.ucla.edu>
22576 Fix bug with "%%" in error format
22578 * src/doprnt.c (doprnt): Format "%%" correctly.
22579 Problem reported by Philipp Stephani in:
22580 https://lists.gnu.org/r/emacs-devel/2017-05/msg00901.html
22582 2017-06-01 Paul Eggert <eggert@cs.ucla.edu>
22584 * src/editfns.c (Fmessage): Improve doc string (Bug#23425#130).
22586 2017-06-01 Katsumi Yamaoka <yamaoka@jpl.org>
22588 Revert mml-generate-mime-1 (bug#27141)
22590 * lisp/gnus/mml.el (mml-generate-mime-1): Reverted to emacs-25 version
22591 with slight modernizations (bug#27141).
22593 2017-05-31 Michael Albinus <michael.albinus@gmx.de>
22597 * lisp/recentf.el (recentf-load-list): Bind `non-essential',
22598 in order to avoid Tramp password requests during Emacs
22599 startup. (Bug#27108)
22601 2017-05-31 Glenn Morris <rgm@gnu.org>
22603 * test/Makefile.in (.SECONDARY): Stop make deleting .elc files.
22605 2017-05-31 Eli Zaretskii <eliz@gnu.org>
22607 Document current-line hscrolling in ELisp manual
22609 * doc/lispref/windows.texi (Horizontal Scrolling): Document the
22610 new mode of auto-hscrolling only the current line.
22612 2017-05-31 Eli Zaretskii <eliz@gnu.org>
22614 Support lower bound on hscrolling when only current line scrolls
22616 * doc/emacs/display.texi (Horizontal Scrolling): Document the new
22617 mode of auto-hscrolling only the current line.
22619 * src/xdisp.c (init_iterator): When hscrolling only the
22620 current line, apply the window's min_hscroll here, so that
22621 non-current lines will be hscrolled by that minimum.
22622 Suggested by Stephen Berman <stephen.berman@gmx.net>.
22623 (hscroll_window_tree): Account for window's min_hscroll when
22624 deciding whether to recompute the hscroll.
22625 (display_line): Subtract window's min_hscroll from x_incr, as that
22626 was already accounted for in init_iterator. (Bug#27008)
22628 2017-05-31 Noam Postavsky <npostavs@gmail.com>
22630 cl-print: handle circular objects when `print-circle' is nil (Bug#27117)
22632 * lisp/emacs-lisp/cl-print.el (cl-print--currently-printing): New variable.
22633 (cl-print-object): When `print-circle' is nil, bind it to a list of
22634 objects that are currently printing to avoid printing the same object
22636 * test/lisp/emacs-lisp/cl-print-tests.el (cl-print-circle): New test.
22638 2017-05-31 Noam Postavsky <npostavs@gmail.com>
22640 Further simplify test/Makefile, optionally load elc tests
22642 * test/Makefile.in: Use make's error ignoring feature instead of
22643 suppressing test errors with shell. Compile test files in the main
22644 make invocation instead of a recursive 'make' call. Optionally load
22645 .elc test files if TEST_LOAD_EL is set to something other than 'yes'.
22646 Remove obsolete commentary.
22648 2017-05-31 Eli Zaretskii <eliz@gnu.org>
22650 Avoid inflooping in redisplay due to Spacemacs and linum-mode
22652 * src/xdisp.c (redisplay_internal): Limit the number of redisplay
22653 retries when a frame becomes garbaged as result of redisplaying
22656 2017-05-31 Tino Calancha <tino.calancha@gmail.com>
22658 * src/editfns.c (decode-time): Fix docstring.
22660 2017-05-31 Glenn Morris <rgm@gnu.org>
22662 * admin/update_autogen: Remove bzr support.
22664 2017-05-31 Glenn Morris <rgm@gnu.org>
22666 Avoid subr test failure when source dir has multiple names
22668 * test/lisp/subr-tests.el (subr-tests--this-file):
22669 Use the true name of the file. The following test does a string
22670 comparison of this value with that from method-files, which uses
22671 load-history, which contains true names.
22673 2017-05-31 Dmitry Gutov <dgutov@yandex.ru>
22675 Extract eldoc--supported-p
22677 * lisp/emacs-lisp/eldoc.el (eldoc--supported-p): New function.
22678 (turn-on-eldoc-mode, eldoc-mode): Use it.
22679 (https://lists.gnu.org/r/emacs-devel/2017-05/msg00865.html)
22681 2017-05-30 Glenn Morris <rgm@gnu.org>
22683 Make "make check" less verbose by default
22685 * test/Makefile.in (AM_DEFAULT_VERBOSITY, AM_V_ELC, am__v_ELC_)
22686 (am__v_ELC_0, am__v_ELC_1, AM_V_GEN, am__v_GEN_, am__v_GEN_0)
22687 (am__v_GEN_1, AM_V_at, am__v_at_, am__v_at_0, am__v_at_1):
22688 New, copied from lisp/Makefile.in.
22689 (%.elc, %.log): Simplify and quieten.
22691 2017-05-30 Alan Mackenzie <acm@muc.de>
22693 Mode line "%q" construct: Just use one number when both would be the same.
22695 * src/xdisp.c (decode_mode_spec): recode the "%q" bit appropriately.
22697 2017-05-30 Alan Mackenzie <acm@muc.de>
22699 Merge branch 'master' of /home/acm/emacs/emacs.git/master
22701 2017-05-30 Alan Mackenzie <acm@muc.de>
22703 c-defun-name: Return fully qualified method names when wanted in C++, etc.
22705 * lisp/progmodes/cc-cmds.el (c-defun-name): Use
22706 c-back-over-compound-identifier in place of c-backward-token-2 near the end
22709 2017-05-30 Glenn Morris <rgm@gnu.org>
22711 Reduce scope of recent test/Makefile HOME change
22713 * test/Makefile.in (%.log): Move setting of HOME here from top-level.
22715 2017-05-30 Paul Eggert <eggert@cs.ucla.edu>
22717 Skip .#* temporaries when finding sources
22719 Without this patch, ‘make check’ can fail with the diagnostic
22720 ‘invalid syntax in conditional’ if there is an Emacs temporary
22721 file whose name starts with ‘.#’, because the ‘#’ is treated as
22722 the start of a Make comment.
22723 * lisp/Makefile.in (loaddefs, tagsfiles, check-defun-deps):
22724 * test/Makefile.in (ELFILES):
22725 Skip files starting with ‘.’, so that the .#* files do not cause
22726 trouble. (We cannot easily skip just files starting with ‘.#’,
22727 since ‘#’ starts a Make comment!)
22729 2017-05-30 Alan Mackenzie <acm@muc.de>
22731 Merge branch 'master' of /home/acm/emacs/emacs.git/master
22733 2017-05-30 Alan Mackenzie <acm@muc.de>
22735 Fix the mouse help/key map on the "%p" part of the mode line.
22737 * lisp/bindings.el (mode-line-percent-position): give it a
22738 `risky-local-variable' property.
22739 (mode-line-position): correct the quoting on the mode-line-percent-position
22740 part of the variable, allowing the properties to be properly recognized.
22742 2017-05-30 Alan Mackenzie <acm@muc.de>
22744 Fix the mouse help/key map on the "%p" part of the mode line.
22746 * lisp/bindings.el (mode-line-percent-position): give it a
22747 `risky-local-variable' property.
22748 (mode-line-position): correct the quoting on the mode-line-percent-position
22749 part of the variable, allowing the properties to be properly recognized.
22751 2017-05-30 Paul Eggert <eggert@cs.ucla.edu>
22755 * build-aux/config.guess: Copy from gnulib.
22756 * lib/gnulib.mk.in: Regenerate.
22758 2017-05-30 Glenn Morris <rgm@gnu.org>
22760 Stop make check interacting with HOME
22762 * test/Makefile.in (HOME): Export a non-existent value.
22764 2017-05-30 Paul Eggert <eggert@cs.ucla.edu>
22766 Update .gitattributes to match sources better
22768 * .gitattributes: Remove nt/nmake.defs. Move dostorture.c, c.C,
22769 algrthms.html. Use pattern for todo-mode. Improve patterns for
22770 Ada, C, ObjC, shell. Add Pascal. Remove unused pattern *.ruby.
22771 Add config.guess and config.sub as shell files.
22773 2017-05-30 Noam Postavsky <npostavs@gmail.com>
22775 Rename '--new-daemon' to 'fg-daemon' and '--old-daemon' to '--bg-daemon'
22777 * doc/emacs/cmdargs.texi (Initial Options):
22778 * doc/lispref/os.texi (Startup Summary):
22780 * etc/emacs.service:
22781 * src/emacs.c (main):
22782 * src/lisp.h: Rename '--new-daemon' to 'fg-daemon' and '--old-daemon' to
22785 2017-05-30 Glenn Morris <rgm@gnu.org>
22787 todo-mode: don't assume an ordering of tests
22789 * test/lisp/calendar/todo-mode-tests.el (todo-test-todo-quit02)
22790 (todo-test-item-highlighting): Avoid prompting for input file.
22792 2017-05-30 Paul Eggert <eggert@cs.ucla.edu>
22794 Improve .gdbinit Lisp value pretty-printing
22796 * src/.gdbinit (to_string): Use an unsigned representation for
22797 Lisp values, as requested by Eli Zaretskii (Bug#27098).
22798 Also, use "make_number(N)" for Lisp integers.
22800 2017-05-30 Dmitry Gutov <dgutov@yandex.ru>
22802 Turn global-eldoc-mode into a globalized minor mode
22804 * lisp/emacs-lisp/eldoc.el (global-eldoc-mode):
22805 Turn into globalized mode (bug#19853).
22806 (turn-on-eldoc-mode): Make it into a wrapper instead of alias.
22807 (eldoc-mode): Only show the message when called interactively.
22809 2017-05-29 Dmitry Gutov <dgutov@yandex.ru>
22811 Use regexp matching instead of checking exit status
22813 * lisp/progmodes/xref.el (xref-collect-matches):
22814 See if the output buffer contents look like Grep output
22815 instead of checking exit status (bug#23451).
22817 2017-05-29 Stephen Berman <stephen.berman@gmx.net>
22819 Add initial tests for todo-mode.el
22821 *test/lisp/calendar/todo-mode-tests.el:
22822 *test/lisp/calendar/todo-mode-resources/todo-test-1.toda:
22823 *test/lisp/calendar/todo-mode-resources/todo-test-1.todo: New files.
22825 * .gitattributes: Ignore trailing whitespace in todo-mode test
22826 data files, since it is part of the todo-mode file format.
22828 2017-05-29 Stephen Berman <stephen.berman@gmx.net>
22830 Make `todo-toggle-item-highlighting' work on multiline items (bug#27133)
22832 * lisp/calendar/todo-mode.el (todo-hl-line-range): New named function,
22833 replacing an anonymous function for the sake of `describe-variable'.
22834 (todo-modes-set-2): Use it as buffer-local value of hl-line-range-function
22835 and remove boundp test of this variable, so its value is available on
22836 invoking `todo-toggle-item-highlighting'.
22838 2017-05-29 Alan Third <alan@idiocy.org>
22840 Fix build error on macOS 10.6
22842 * src/nsfns.m (compute_tip_xy): Cast NSRect to CGRect and NSPoint to
22845 2017-05-29 Jules Tamagnan <jtamagnan@gmail.com> (tiny change)
22847 Comply with pep 8 style guide for backslash in assignment (Bug#24809)
22849 * lisp/progmodes/python.el (python-indent--calculate-indentation):
22850 Increase indent by `python-indent-offset' after
22851 `:after-backslash-assignment-continuation'.
22853 2017-05-29 Wilfred Hughes <me@wilfred.me.uk>
22855 Add suggestion to docstring
22857 * lisp/subr.el (interactive-p): Mention commandp, as this is often
22858 what users are actually looking for.
22860 2017-05-29 Wilfred Hughes <me@wilfred.me.uk>
22862 Ensure button-get works in any buffer
22864 * lisp/button.el (button-get): Previously we assumed that button-get
22865 was called in the buffer containing the button. In other buffers,
22866 button-get always returned nil. Fix this by passing the relevant
22867 buffer from the marker.
22869 2017-05-29 Dmitry Gutov <dgutov@yandex.ru>
22871 Signal error if find-grep returns a nonzero status
22873 * lisp/progmodes/xref.el (xref-collect-matches): Signal error
22874 if find-grep returns a nonzero status (bug#23451). Remove the
22875 comment: even if some output is present, a non-zero status
22876 means something went wrong and it can't be relied upon.
22878 2017-05-29 Stephen Berman <stephen.berman@gmx.net>
22880 Make sure exiting todo-mode buffer buries it (bug#27121)
22882 This failed due to commit ea3ae33b from 2013-05-16, which prevented
22883 quitting todo-mode buffer after visiting todo-archive buffer from
22884 making the archive buffer current again. Avoid this now by simply
22885 killing the archive buffer, since there's no need to keep it a live
22886 buffer. Consequently, quitting a todo-mode buffer can now use
22887 bury-buffer without an argument, which ensures that is will not
22888 becomes current on quitting the buffer that replaced it in the window.
22890 * lisp/calendar/todo-mode.el (todo-quit): Kill todo-archive-mode
22891 buffer instead of burying it. This now allows exiting the
22892 todo-mode buffer by bury-buffer without an argument, so do that.
22894 2017-05-28 Michael Albinus <michael.albinus@gmx.de>
22896 Some tweaks, almost all for Tramp adb method
22898 * lisp/net/tramp-adb.el (tramp-adb-parse-device-names):
22899 Use `make-tramp-file-name'.
22900 (tramp-adb-get-device): Use `tramp-file-name-port-or-default'.
22901 (tramp-adb-maybe-open-connection): Set "prompt" property.
22902 (tramp-adb-wait-for-output): Use it.
22904 * lisp/net/tramp-cache.el (tramp-cache-print): Use `elt'.
22905 (tramp-dump-connection-properties): Check also that there are
22906 properties to be saved. Don't save "started" property of
22909 * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-expand-file-name):
22910 Use `make-tramp-file-name'.
22912 * lisp/net/tramp.el (tramp-remote-file-name-spec-regexp):
22913 Host could be empty.
22914 (tramp-file-name-port-or-default): New defun.
22915 (tramp-dissect-file-name): Simplify `make-tramp-file-name' call.
22916 (tramp-handle-file-name-case-insensitive-p): Use a progress reporter.
22917 (tramp-call-process, tramp-call-process-region):
22918 Use `make-tramp-file-name'.
22920 * test/lisp/net/tramp-tests.el (tramp-test03-file-name-defaults):
22921 Revert change from 2017-05-24.
22922 (tramp-test05-expand-file-name-relative): Let it also pass for
22925 2017-05-28 Jürgen Hötzel <juergen@archlinux.org>
22927 Fix Tramp for Android 7
22929 * lisp/net/tramp-adb.el (tramp-adb-ls-toolbox-regexp):
22930 Username part of prompt is empty on Android 7.
22931 (tramp-adb-ls-toolbox-regexp):
22932 Ignore addition links column on Android 7.
22933 (tramp-adb-get-ls-command):
22934 Dont use --color=none when using toybox (Android 7). It's not
22935 possible to disable coloring explicitly for toybox ls.
22937 2017-05-27 Svante Carl v. Erichsen <Svante.v.Erichsen@web.de> (tiny change)
22939 Fix cl-indent for `loop' with :keywords (Bug#15543)
22941 * lisp/emacs-lisp/cl-indent.el (lisp-extended-loop-p): Allow for
22944 2017-05-27 Paul Eggert <eggert@cs.ucla.edu>
22946 Depromiscuify inotify with IN_MASK_ADD
22948 Use IN_MASK_ADD instead of using a no-longer-promiscuous-enough
22949 mask. This simplifies the code and restores the ability to
22950 use IN_ACCESS, IN_CLOSE_WRITE, IN_CLOSE_NOWRITE, and IN_OPEN
22951 in some cases (Bug#26973).
22952 * src/inotify.c (INOTIFY_DEFAULT_MASK): Remove.
22953 (Finotify_add_watch): Use IN_MASK_ADD instead.
22955 2017-05-27 Paul Eggert <eggert@cs.ucla.edu>
22957 Restore inotify onlydir support
22959 There was no need to remove it in the 2017-03-26 inotify change,
22960 as it is like IN_DONT_FOLLOW and does not affect other watchers
22962 * src/inotify.c (symbol_to_inotifymask, Finotify_add_watch)
22963 (syms_of_inotify): Bring back onlydir.
22965 2017-05-27 Paul Eggert <eggert@cs.ucla.edu>
22967 Simplify computation of inotify mask
22969 * src/inotify.c (add_watch): Accept uint32_t imask instead
22970 of Lisp_Object aspect. Caller changed.
22971 (Finotify_add_watch): Use aspect_to_inotifymask earlier, to
22974 2017-05-27 Eli Zaretskii <eliz@gnu.org>
22976 Improve the documentation of filesets
22978 * doc/emacs/files.texi (Filesets): Fix the description of
22979 fileset-init's effect on the menu bar. (Bug#27015)
22981 2017-05-27 Philipp Stephani <phst@google.com>
22983 Don't attempt to recover from undefined behavior in some cases
22985 These functions can only be run in batch mode and exit Emacs on
22986 return, so nothing can be recovered. Disable unsafe recover
22987 mechanisms so that we get real failures and good stack traces on
22990 * lisp/emacs-lisp/bytecomp.el (batch-byte-compile)
22991 (batch-byte-recompile-directory):
22992 * lisp/emacs-lisp/ert.el (ert-run-tests-batch-and-exit)
22993 (ert-summarize-tests-batch-and-exit): Don't attempt to recover
22994 from undefined behavior.
22996 2017-05-27 Philipp Stephani <phst@google.com>
22998 Avoid another compiler warning on macOS
23000 When configured with --without-ns, HAVE_NS is not defined on macOS,
23001 thus 'memory-limit' calls the deprecated sbrk(2) function. Avoid that
23002 by using the pre-defined __APPLE__ preprocessor macro.
23004 * src/alloc.c (Fmemory_limit): Never use sbrk(2) on macOS.
23006 2017-05-27 Luke Yen-Xun Lee <luke.yx.lee@gmail.com>
23008 Fix ruler-mode text-scaling issues
23010 * lisp/ruler-mode.el (ruler-mode-text-scaled-width): New function
23011 for computing scaled text width.
23012 (ruler-mode-text-scaled-window-hscroll)
23013 (ruler-mode-text-scaled-window-width): Compute text scaled
23014 `window-width' value.
23015 (ruler-mode-mouse-grab-any-column, ruler-mode-mouse-add-tab-stop)
23016 (ruler-mode-ruler): Change `window-hscroll' into
23017 `ruler-mode-text-scaled-window-hscroll', and change `window-width'
23018 into `ruler-mode-text-scaled-window-width'.
23020 2017-05-27 Martin Rudalics <rudalics@gmx.at>
23022 Minor doc and doc-string fixes (Bug#27091)
23024 * src/window.c (Fset_window_scroll_bars): Fix doc-string.
23026 * doc/lispref/display.texi (Fringe Size/Pos, Scroll Bars)
23027 (Display Margins): Mention that `set-window-buffer' may override
23028 settings made by `set-window-fringes', `set-window-scroll-bars'
23029 and `set-window-margins'.
23030 * doc/lispref/windows.texi (Buffers and Windows): Fix doc of
23031 `set-window-buffer'.
23033 2017-05-27 Eli Zaretskii <eliz@gnu.org>
23035 Avoid args-out-of-range errors on fringe clicks after "C-h k"
23037 * src/keyboard.c (echo_truncate): Don't call Ftruncate if the echo
23038 message is already shorter than NCHARS. (Bug#27040)
23040 2017-05-27 Eli Zaretskii <eliz@gnu.org>
23042 Fix GUD "Stop" display when running pdb
23044 * lisp/progmodes/gud.el (gud-menu-map): Don't call gdb-show-stop-p
23045 when GUD mode is 'pdb'. (Bug#27024)
23047 2017-05-27 Tak Kunihiro <tkk@misasa.okayama-u.ac.jp>
23049 Support drag and drop of region by mouse (Bug#26725)
23051 * doc/emacs/frames.texi (Drag and Drop): Document support of drag
23052 and drop region by mouse.
23053 * lisp/mouse.el (mouse-drag-region): Call mouse-drag-and-drop-region
23054 when start-event is on region.
23055 (mouse-drag-and-drop-region): New function, moves the region by
23056 (mouse-drag-and-drop-region): New defcustom.
23057 * etc/NEWS: Mention mouse-drag-and-drop-region.
23059 2017-05-27 Noam Postavsky <npostavs@gmail.com>
23061 * lisp/emacs-lisp/eieio.el (defclass): Fix quote in warning message.
23063 2017-05-27 Alan Third <alan@idiocy.org>
23065 Check if instancetype supported in ObjC
23067 * configure.ac: Add check for instancetype.
23068 * src/nsterm.h [!NATIVE_OBJC_INSTANCETYPE]: Define instancetype.
23070 2017-05-26 Wilfred Hughes <me@wilfred.me.uk>
23072 Mark keywordp as a safe, error-free function
23074 * lisp/emacs-lisp/byte-opt.el: Add keywordp to
23075 side-effect-and-error-free-fns.
23077 2017-05-26 Paul Eggert <eggert@cs.ucla.edu>
23079 * src/inotify.c: Add FIXME comments.
23081 2017-05-26 Andreas Politz <politza@hochschule-trier.de>
23085 * src/inotify.c (INOTIFY_DEFAULT_MASK): Removing ACCESS, OPEN
23086 and CLOSE events on order do let other processes also reading
23087 from their descriptors. (Bug#26973).
23089 2017-05-26 Michael Albinus <michael.albinus@gmx.de>
23091 Remove Emacs 23 compat code from Tramp
23093 * doc/misc/tramp.texi (Remote processes): Don't mention
23094 Emacs 24 explicitly.
23095 (Frequently Asked Questions): Remove Emacs 23 from
23096 compatibility list.
23098 * lisp/net/tramp.el:
23099 * lisp/net/tramp-adb.el:
23100 * lisp/net/tramp-cache.el:
23101 * lisp/net/tramp-gvfs.el:
23102 * lisp/net/tramp-sh.el:
23103 * lisp/net/tramp-smb.el: Replace compat function calls.
23105 * lisp/net/tramp-compat.el (remote-file-name-inhibit-cache)
23106 (tramp-compat-condition-case-unless-debug)
23107 (tramp-compat-copy-file, tramp-compat-copy-directory)
23108 (tramp-compat-delete-file, tramp-compat-delete-directory)
23109 (tramp-compat-process-live-p): Remove them.
23111 * lisp/net/trampver.el: Make version check fit for Emacs 24.
23113 2017-05-26 Katsumi Yamaoka <yamaoka@jpl.org>
23115 Work for application/x-tar-gz and image/svg+xml
23117 ;; Try inlining the attachment in the article <87wp94dzj6.fsf@gmail.com>
23118 ;; of bug#27078 in the Emacs bug list using Gnus.
23120 * lisp/gnus/mm-archive.el (mm-archive-decoders):
23121 Add a decoder for application/x-tar-gz.
23122 (mm-dissect-archive): Error out if a decoder is not found.
23124 * lisp/gnus/mm-decode.el (mm-get-image): Allow image/svg+xml.
23126 2017-05-26 Tino Calancha <tino.calancha@gmail.com>
23128 test-calc-23889: Skip test on 32-bit platforms
23130 This test fails on some 32-bit platforms as mentioned in
23131 https://lists.gnu.org/r/emacs-devel/2017-05/msg00737.html
23132 * test/lisp/calc/calc-tests.el (test-calc-23889): Skip when
23133 the Lisp integer is not big enough.
23135 2017-05-25 Alan Third <alan@idiocy.org>
23137 Fix NS tooltips showing in the wrong place (bug#27053)
23139 * src/nsfns.m (compute_tip_xy): Get current mouse position instead of
23140 last recorded position.
23142 2017-05-25 Thomas Fitzsimmons <fitzsim@fitzsim.org>
23144 lisp/net/soap-client.el: Bump version to 3.1.2
23146 * lisp/net/soap-client.el: Bump version to 3.1.2.
23148 2017-05-25 Thomas Fitzsimmons <fitzsim@fitzsim.org>
23150 Fix soap-inspect.el doc strings
23152 * lisp/net/soap-inspect.el (soap-inspect-xs-attribute): Fix doc
23154 (soap-inspect-xs-attribute-group): Likewise.
23156 2017-05-25 Thomas Fitzsimmons <fitzsim@fitzsim.org>
23158 Fix two soap-client.el byte compilation warnings
23160 * lisp/net/soap-client.el (url-http-response-status): Add defvar.
23161 (soap-fetch-xml-from-url): Remove special declaration of
23162 url-http-response-status.
23163 (soap-invoke-internal): Likewise.
23165 2017-05-25 Thomas Fitzsimmons <fitzsim@fitzsim.org>
23167 lisp/net/soap-client.el: Require cl-lib version 0.6.1
23169 * lisp/net/soap-client.el: Require cl-lib version 0.6.1.
23171 2017-05-25 Thomas Fitzsimmons <fitzsim@fitzsim.org>
23172 Stefan Monnier <monnier@iro.umontreal.ca>
23174 lisp/net/soap-client.el: Shorten some long lines
23176 * lisp/net/soap-client.el (soap-encode-xs-element): Remove
23178 (soap-xs-add-union): Wrap long line.
23180 2017-05-25 Alex Harsanyi <AlexHarsanyi@gmail.com>
23181 Stefan Monnier <monnier@iro.umontreal.ca>
23183 Remove cl dependency in soap-client.el and soap-inspect.el
23185 * lisp/net/soap-inspect.el: Replace cl library with cl-lib, case
23186 with cl-case, destructuring-bind with cl-destructuring-bind and
23189 * lisp/net/soap-client.el: Replace cl library with cl-lib,
23190 defstruct with cl-defstruct, assert with cl-assert, case with
23191 cl-case, ecase with cl-ecase, loop with cl-loop and
23192 destructuring-bind with cl-destructuring-bind.
23194 2017-05-25 Michael Albinus <michael.albinus@gmx.de>
23196 Switch Tramp to cl-lib
23198 * lisp/net/tramp-compat.el (cl-lib): Require it rather than cl.
23200 * lisp/net/tramp-ftp.el: Don't require cl.
23202 * lisp/net/tramp-gvfs.el: Don't require cl.
23203 (tramp-gvfs-handler-mounted-unmounted)
23204 (tramp-gvfs-connection-mounted-p): Use `cl-*' macros.
23206 * lisp/net/tramp-sh.el: Don't require cl.
23207 (tramp-set-file-uid-gid): Use `shell-quote-argument'.
23208 (tramp-sh-gvfs-monitor-dir-process-filter)
23209 (tramp-sh-inotifywait-process-filter): Use `cl-*' macros.
23211 * lisp/net/tramp-smb.el: Don't require cl.
23212 (tramp-smb-read-file-entry): Use `cl-*' macros.
23214 * lisp/net/tramp.el (cl-lib): Require it rather than cl.
23215 (tramp-parse-file, tramp-parse-shostkeys-sknownhosts)
23216 (tramp-parse-passwd, tramp-parse-etc-group)
23217 (tramp-parse-putty): Use `cl-*' macros.
23219 2017-05-25 Paul Eggert <eggert@cs.ucla.edu>
23221 * CONTRIBUTE: Suggest autogen.sh's 'all' operand.
23223 2017-05-25 Paul Eggert <eggert@cs.ucla.edu>
23225 Port ATTRIBUTE_MAY_ALIAS to recent icc
23227 * src/conf_post.h (ATTRIBUTE_MAY_ALIAS) [__ICC]:
23228 Define to empty. Otherwise, icc (ICC) 17.0.4 20170411 says
23229 “warning #2621: attribute "__may_alias__" does not apply here”
23230 for constructs like ‘struct sockaddr *sa = (whatever);
23231 struct sockaddr_in __attribute__ ((__may_alias__)) *sin
23232 = (struct sockaddr_in *) sa;’.
23234 2017-05-25 Paul Eggert <eggert@cs.ucla.edu>
23239 2017-05-25 port to recent icc
23240 * lib/intprops.h: Copy from gnulib.
23242 2017-05-24 Michael Albinus <michael.albinus@gmx.de>
23244 Fix Tramp for python.el
23246 * lisp/net/tramp.el (tramp-get-connection-process): Check,
23247 that VEC is a `tramp-file-name' structure.
23249 2017-05-24 Alan Third <alan@idiocy.org>
23251 Raise version of macOS we define instancetype for (bug#27059)
23253 * src/nsterm.m: Increase supported version number.
23255 2017-05-24 Alan Third <alan@idiocy.org>
23257 Define new types on macOS 10.6 (bug#27041)
23259 * src/nsterm.h: Enable instancetype typedef for older macOS, and use
23260 correct NSUInteger instead of int.
23262 2017-05-24 Glenn Morris <rgm@gnu.org>
23264 Don't autoload new dns-mode command
23266 * lisp/textmodes/dns-mode.el (dns-mode-ipv6-to-nibbles):
23267 Remove autoload cookie.
23269 2017-05-24 Stefan Monnier <monnier@iro.umontreal.ca>
23271 * src/fns.c (sxhash): Fix records hashing (bug#27057, bug#26639)
23273 (sxhash_vector): Make it work on pseudo vectors as well.
23274 (sxhash): Treat records like vectors.
23276 2017-05-24 Michael Albinus <michael.albinus@gmx.de>
23278 Adapt tramp-tests.el according to new defstruct
23280 * test/lisp/net/tramp-tests.el (tramp-test03-file-name-defaults):
23281 Fix test according to new defstruct.
23282 (tramp-test29-environment-variables-and-port-numbers):
23283 Expect it now as passed. Cleanup at the end.
23285 2017-05-24 Michael Albinus <michael.albinus@gmx.de>
23287 Introduce a defstruct `tramp-file-name' as central data structure.
23289 This solves also Bug#27009.
23291 * lisp/net/tramp.el (tramp-current-domain)
23292 (tramp-current-port): New defvars.
23293 (tramp-file-name): New defstruct.
23294 (tramp-file-name-user-domain, tramp-file-name-host-port)
23295 (tramp-file-name-equal-p): New defuns.
23296 (tramp-file-name-p, tramp-file-name-method)
23297 (tramp-file-name-user, tramp-file-name-host)
23298 (tramp-file-name-localname, tramp-file-name-hop)
23299 (tramp-file-name-real-user, tramp-file-name-domain)
23300 (tramp-file-name-real-host, tramp-file-name-port):
23301 Remove defuns. They are provided by the defstruct, or not
23303 (tramp-dissect-file-name, tramp-buffer-name)
23304 (tramp-make-tramp-file-name, tramp-get-buffer)
23305 (tramp-set-connection-local-variables)
23306 (tramp-debug-buffer-name, tramp-message)
23307 (tramp-error-with-buffer, with-parsed-tramp-file-name)
23308 (tramp-completion-dissect-file-name1)
23309 (tramp-handle-file-name-as-directory)
23310 (tramp-handle-file-name-directory)
23311 (tramp-handle-file-remote-p, tramp-handle-file-symlink-p)
23312 (tramp-handle-find-backup-file-name)
23313 (tramp-handle-insert-file-contents, tramp-process-actions)
23314 (tramp-check-cached-permissions, tramp-local-host-p)
23315 (tramp-get-remote-tmpdir, tramp-call-process)
23316 (tramp-call-process-region, tramp-read-passwd)
23317 (tramp-clear-passwd):
23318 * lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
23319 (tramp-adb-handle-expand-file-name)
23320 (tramp-adb-handle-file-truename, tramp-adb-handle-copy-file)
23321 (tramp-adb-handle-process-file)
23322 (tramp-adb-maybe-open-connection):
23323 * lisp/net/tramp-cache.el (tramp-get-hash-table)
23324 (tramp-get-file-property, tramp-set-file-property)
23325 (tramp-flush-file-property, tramp-flush-directory-property)
23326 (tramp-get-connection-property)
23327 (tramp-set-connection-property, tramp-connection-property-p)
23328 (tramp-flush-connection-property, tramp-cache-print)
23329 (tramp-list-connections, tramp-dump-connection-properties)
23330 (tramp-parse-connection-properties):
23331 * lisp/net/tramp-cmds.el (tramp-cleanup-connection):
23332 * lisp/net/tramp-ftp.el (tramp-ftp-file-name-handler):
23333 * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-expand-file-name)
23334 (tramp-gvfs-url-file-name, tramp-gvfs-handler-askpassword)
23335 (tramp-gvfs-handler-mounted-unmounted)
23336 (tramp-gvfs-mount-spec, tramp-gvfs-get-remote-uid)
23337 (tramp-gvfs-get-remote-gid)
23338 (tramp-gvfs-maybe-open-connection):
23339 * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
23340 (tramp-do-copy-or-rename-file-out-of-band)
23341 (tramp-sh-handle-expand-file-name)
23342 (tramp-sh-handle-start-file-process)
23343 (tramp-sh-handle-process-file, tramp-compute-multi-hops)
23344 (tramp-maybe-open-connection)
23345 (tramp-make-copy-program-file-name, tramp-get-remote-path)
23346 (tramp-get-inline-coding):
23347 * lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory)
23348 (tramp-smb-handle-expand-file-name)
23349 (tramp-smb-handle-file-acl, tramp-smb-handle-process-file)
23350 (tramp-smb-handle-set-file-acl)
23351 (tramp-smb-maybe-open-connection): Adapt according to defstruct.
23353 2017-05-24 Stephen Berman <steve@rosalinde.fritz.box>
23355 Fix and improve UI of scroll bar menu (bug#27047)
23357 In addition, since the Emacs manual writes "scroll bar", "tool
23358 bar" and "menu bar", use this convention in the Show/Hide menues
23359 and tooltips as well.
23361 * lisp/menu-bar.el (menu-bar-showhide-scroll-bar-menu): Make
23362 pressing a radio button in the menu actually show that it was
23363 pressed. Replace the two radio buttons to turn the horizontal
23364 scroll bar on and off with a single check-box toggle and add a
23365 separator between this and the vertical scroll bar radio
23366 buttons. Use conventional spelling.
23367 (menu-bar-horizontal-scroll-bar)
23368 (menu-bar-no-horizontal-scroll-bar): Remove, since now unused.
23369 (menu-bar-showhide-tool-bar-menu, menu-bar-showhide-menu)
23370 (menu-bar-mode): Use conventional spelling.
23372 2017-05-24 Katsumi Yamaoka <yamaoka@jpl.org>
23374 Remove string-as-unibyte
23376 * lisp/gnus/canlock.el (canlock-sha1): Remove useless variable.
23377 (canlock-make-cancel-key): No need to use string-as-unibyte.
23379 2017-05-24 Tino Calancha <tino.calancha@gmail.com>
23381 Fix concatenation of "^" with diff-file-junk-re
23383 This regexp contains "\\|", thus a concatenation
23384 of "^" with it just matches the beginning of line for the
23385 first alternative in diff-file-junk-re.
23386 * lisp/vc/ediff-ptch.el (ediff-map-patch-buffer): Concat "^" with
23387 diff-file-junk-re wrapped in a shy group.
23389 2017-05-24 Glenn Morris <rgm@gnu.org>
23391 Suppress intermittent test failure on hydra
23393 * test/lisp/emacs-lisp/eieio-tests/eieio-tests.el
23394 (eieio-test-37-obsolete-name-in-constructor): Skip on hydra.
23396 2017-05-24 Peder O. Klingenberg <peder@klingenberg.no>
23398 New dns-mode command for IPv6 address conversion
23400 This converts IPv6 addresses to a format suitable for
23401 reverse lookup zone files. (Bug#26820)
23402 * lisp/textmodes/dns-mode.el (dns-mode-map, dns-mode-menu):
23403 Add dns-mode-ipv6-to-nibbles.
23404 (dns-mode-ipv6-to-nibbles, dns-mode-reverse-and-expand-ipv6):
23406 * test/lisp/dns-mode-tests.el: New file.
23408 2017-05-24 Noam Postavsky <npostavs@gmail.com>
23410 Protect *Backtrace* from being killed (Bug#26650)
23412 * lisp/emacs-lisp/debug.el (debugger-mode): Call `top-level' in
23413 `kill-buffer-hook'.
23415 2017-05-24 Noam Postavsky <npostavs@gmail.com>
23417 Give a name to lisp-mode's adaptive-fill-function (Bug#22730)
23419 * lisp/emacs-lisp/lisp-mode.el (lisp-adaptive-fill): New function.
23420 (lisp-mode-variables): Use it.
23422 2017-05-23 Philipp Stephani <phst@google.com>
23424 vc-hg.el: Silence byte compiler warning
23426 * lisp/vc/vc-hg.el (compilation-arguments): Forward-declare.
23428 2017-05-23 Paul Eggert <eggert@cs.ucla.edu>
23430 Don't warn about missing brances on macOS
23432 On macOS, removing -Wmissing-braces is not enough; the warning has to
23433 be disabled explicitly.
23435 2017-05-23 Wilfred Hughes <me@wilfred.me.uk>
23437 Don't treat ' as a string delimiter in RPM spec files
23439 ' is commonly used as an apostrophe in the prose sections of spec
23440 files, which was erroneously highlighted as strings. See for example
23441 http://kmymoney2.sourceforge.net/phb/rpm-example.html
23443 * lisp/progmodes/sh-script.el (sh-mode-syntax-table): Treat ' as
23444 punctuation in RPM spec files.
23446 2017-05-23 Stefan Monnier <monnier@iro.umontreal.ca>
23448 * lisp/emacs-lisp/cl-indent.el: Don't require CL. Use lexical-binding.
23450 (common-lisp-indent-function-1): Remove unused var `last-point`.
23451 (lisp-indent-error-function): Move defvar before first use.
23453 2017-05-23 Stefan Monnier <monnier@iro.umontreal.ca>
23455 * lisp/international/rfc1843.el: Don't require CL. Use lexical-binding.
23457 * lisp/international/utf7.el: Don't require CL. Use lexical-binding.
23459 * lisp/net/shr.el: Use cl-lib instead of cl.
23461 2017-05-23 Stefan Monnier <monnier@iro.umontreal.ca>
23463 * test/src/fns-tests.el, test/src/data-tests.el: Don't use `cl`
23465 * test/src/data-tests.el (binding-test-manual, binding-test-setq-default)
23466 (binding-test-makunbound, data-tests-varalias-watchers)
23467 (data-tests-local-variable-watchers): Silence compiler warnings.
23469 2017-05-23 Stefan Monnier <monnier@iro.umontreal.ca>
23471 * lisp/vc/vc-hg.el (compilation-directory): Silence byte-compiler.
23473 2017-05-23 Alan Third <alan@idiocy.org>
23477 * src/nsterm.h [NS_IMPL_GNUSTEP]: Add typedefs for Cocoa-only types.
23478 (NSWindowStyleMaskUtilityWindow): #define to NSUtilityWindowMask in
23479 GNUstep and old versions of macOS.
23480 * src/nsfns.m (ns-set-mouse-absolute-pixel-position): Function only
23481 works in cocoa, not GNUstep.
23483 2017-05-23 Michael Albinus <michael.albinus@gmx.de>
23485 Add test for Bug#27009 in tramp-tests.el
23487 * lisp/net/tramp-sh.el (tramp-compute-multi-hops):
23488 Check `tramp-file-name-real-host' for being a local host.
23490 * lisp/net/tramp.el (tramp-postfix-host-regexp): Fix docstring.
23492 * test/lisp/net/tramp-tests.el (tramp-test-temporary-file-directory):
23493 Declare default host for mock method.
23494 (tramp-test29-environment-variables-and-port-numbers): New test.
23496 2017-05-23 Glenn Morris <rgm@gnu.org>
23498 Don't advertise s_client in tls.el docs
23500 * lisp/net/tls.el (tls-end-of-info, tls-success, tls-untrusted):
23501 Don't mention s_client in docs.
23503 (cherry picked from commit 622c24a2b75a564b9861fc3ca7a7878741e8568d)
23505 2017-05-23 Rob Browning <rlb@defaultvalue.org>
23507 Remove s_client usage from tls.el
23509 * lisp/net/tls.el (tls-program, tls-checktrust): Remove s_client.
23510 Ref http://bugs.debian.org/766397
23511 https://lists.gnu.org/r/emacs-devel/2014-10/msg00803.html
23514 (cherry picked from commit 6e45de6bacc508db11b15b2c8ba86aad8c0570df)
23516 2017-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
23518 * lisp/mail/rfc2047.el (rfc2047-decode-encoded-words): Set `words` to nil.
23520 2017-05-22 Sam Steingold <sds@gnu.org>
23522 Fix "g" in hg&git push&pull buffers
23524 lisp/vc/vc-git.el (vc-git--pushpull): Set locally
23525 `compilation-directory' and `compilation-arguments'.
23526 lisp/vc/vc-hg.el (vc-hg--pushpull): Likewise.
23528 2017-05-22 Eli Zaretskii <eliz@gnu.org>
23530 Fix current-line hscrolling in buffers with header-line
23532 * src/xdisp.c (display_line): When testing the glyph row's
23533 vertical position against the cursor position, account for header
23534 line, if any. (Bug#27014)
23536 2017-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
23538 * lisp/mail/rfc2047.el: Use cl-lib & lexical-binding, silence warning
23540 (rfc2047-decode-encoded-words): Use dolist.
23541 (rfc2047-decode-string): Avoid string-to-multibyte.
23542 (rfc2047-pad-base64): Use pcase.
23544 2017-05-21 Dima Kogan <dima@secretsauce.net>
23546 Make ff-find-other-file symmetric for C++ (Bug#20192)
23548 `cc-other-file-alist' has a mapping of file extensions to switch
23549 between headers and sources, but the mappings weren't completely
23550 symmetric. In particular .cpp would map to .hh, but .hh would NOT map
23553 * lisp/find-file.el (cc-other-file-alist): Map ".hh" and ".h" to all
23554 C++ extensions to make them symmetric with the C++ extensions that map
23555 to them. This lets repeated invocations of `ff-find-other-file'
23556 toggle between all pairs of sources/headers.
23558 2017-05-21 Philipp Stephani <phst@google.com>
23560 Fix definition of whitespace in JSON
23563 https://lists.gnu.org/r/emacs-devel/2017-05/msg00115.html.
23565 * lisp/json.el (json-skip-whitespace): Fix definition.
23566 * test/lisp/json-tests.el (test-json-skip-whitespace): Adapt unit
23569 2017-05-21 Philipp Stephani <phst@google.com>
23571 Improve module function terminology
23573 Module functions were previously called "function environments" when
23574 the functions created by module_make_functions were lambdas. Now we
23575 can adapt the terminology and rename "function environments" to
23576 "module functions" everywhere. This also removes the name clash
23577 between "function environments" and "module environments."
23579 * src/emacs-module.c (module_make_function): Adapt comment to reality;
23580 stop using "function environment" terminology.
23581 (funcall_module): Stop using "function environment" terminology.
23583 2017-05-21 Philipp Stephani <phst@google.com>
23585 Avoid uninitialized read
23587 * src/nsterm.m (ns_read_socket): Don't read uninitialized variable 'nevents'.
23589 2017-05-21 Philipp Stephani <phst@google.com>
23591 Fix call of registerServicesMenuSendTypes
23593 * src/nsterm.m (initFrameFromEmacs:): nil is not allowed for
23594 returnTypes; pass an empty array instead.
23596 2017-05-21 Philipp Stephani <phst@google.com>
23598 Clean up code around 'ns-list-services'
23600 * src/nsfns.m (Fns_list_services): Remove unreachable code. In this
23601 branch NS_IMPL_COCOA cannot be defined.
23602 (interpret_services_menu): Define only if called to avoid compiler
23603 warnings about unused static functions.
23605 2017-05-21 Philipp Stephani <phst@google.com>
23607 Remove unused automatic variables
23609 * src/nsterm.m (ns_read_socket):
23610 * src/macfont.m (macfont_open): Remove unused automatic variables.
23612 2017-05-21 Philipp Stephani <phst@google.com>
23614 Nextstep: Replace deprecated enumerators
23616 * src/nsmenu.m (initWithContentRect:styleMask:backing:defer:): Replace
23617 deprecated enumerator.
23619 2017-05-21 Philipp Stephani <phst@google.com>
23621 Nextstep: remove some deprecated method calls
23623 * src/nsterm.m (mouseDown:):
23624 * src/nsmenu.m (runMenuAt:forFrame:keymaps:): Remove call to
23625 deprecated method. The return value is always nil.
23626 * src/macfont.m (mac_font_shape_1): Replace call to deprecated method.
23628 2017-05-21 Philipp Stephani <phst@google.com>
23630 Remove trailing semicolons in method definitions
23632 These semicolons are ignored and cause compiler warnings.
23634 * src/nsimage.m (setPixelAtX:Y:toRed:green:blue:alpha:):
23635 * src/nsterm.m (init, updateFrameSize:):
23636 (setFrame:): Remove trailing semicolon.
23638 2017-05-21 Philipp Stephani <phst@google.com>
23640 Remove calls to deprecated setUsesScreenFonts
23642 * src/macfont.m (mac_screen_font_get_metrics): Don't call setUsesScreenFonts.
23643 (mac_font_shape_1): Remove screen_font_p parameter.
23644 (mac_screen_font_shape): Remove screen_font_p argument.
23646 2017-05-21 Philipp Stephani <phst@google.com>
23648 Make a function static that isn't used outside this file
23650 * src/kqueue.c (kqueue_directory_listing): Make static.
23652 2017-05-21 Philipp Stephani <phst@google.com>
23654 Use NSCharacterCollection instead of CTCharacterCollection
23656 This should not cause behavior changes, but fixes a compiler warning
23657 due to implicit conversions between the enums.
23659 * src/macfont.m (macfont_cache, macfont_lookup_cache)
23660 (macfont_get_glyph_for_cid, macfont_get_uvs_table)
23661 (macfont_variation_glyphs): Use NSCharacterCollection.
23663 2017-05-21 Philipp Stephani <phst@google.com>
23665 Remove unused function print_regions
23667 2017-05-21 Philipp Stephani <phst@google.com>
23669 Declare Nextstep unexec functions in lisp.h
23671 This removes compiler warnings about missing prototypes on macOS.
23673 2017-05-21 Philipp Stephani <phst@google.com>
23675 Nextstep: Use instancetype explicit return type
23677 This removes compiler warnings on macOS and improves type safety.
23679 * src/nsterm.m (initFrameFromEmacs:):
23683 (setMiniwindowImage:):
23684 (initFrame:window:):
23685 (condemn, reprieve, setPosition:portion:whole:):
23687 * src/nsmenu.m (initWithTitle:):
23688 (initWithTitle:frame:):
23689 (initForView:withIdentifier:):
23690 (init, initWithContentRect:styleMask:backing:defer:):
23691 (initFromContents:isQuestion:):
23692 * src/nsimage.m (allocInitFromFile:):
23693 (initFromXBM:width:height:fg:bg:):
23695 (initForXPMWithDepth:width:height:): Use instancetype as return
23696 type instead of implicit id.
23698 2017-05-21 Tino Calancha <tino.calancha@gmail.com>
23700 * lisp/emacs-lisp/package.el (package-delete): Delete readme file as well.
23702 2017-05-21 Alan Mackenzie <acm@muc.de>
23704 Enhance mode-line percentage offset facility, with "%o" and "%q"
23706 "%o" will display the percentage "travel" of the window through the buffer.
23707 "%q" will display a combination of the percentage offsets of the top and
23708 bottom of the window. The new user option mode-line-percent-position will
23709 facilitate selecting a setting for this part of the mode line.
23711 * lisp/bindings.el (mode-line-percent-position): New customizable user option.
23712 (mode-line-position): Use mode-line-percent-position in place of "%p", etc.
23714 * src/xdisp.c (decode_mode_spec): Add handlers for "%o" and "%q".
23716 * doc/lispref/modes.texi (Mode Line Variables): Document
23717 mode-line-percent-position.
23718 (%-Constructs): Document %o and %q.
23720 * etc/NEWS: Add an entry for these new facilities.
23722 2017-05-21 Paul Eggert <eggert@cs.ucla.edu>
23724 Work around macOS bug in create_process, too
23726 * src/process.c (create_process) [DARWIN_OS]:
23727 Reset SIGCHLD after vfork here, too.
23729 2017-05-21 Paul Eggert <eggert@cs.ucla.edu>
23731 Work around macOS bug with vforked child
23733 * src/callproc.c (call_process) [DARWIN_OS]:
23734 Include workaround for apparent macOS bug.
23736 2017-05-21 Paul Eggert <eggert@cs.ucla.edu>
23738 Pacify --enable-gcc-warnings without modules
23740 * src/print.c (print_vectorlike): New function, taken from
23741 part of print_object. This one is indented properly, and
23742 pacifies --enable-gcc-warnings by using a default case
23743 instead of listing all the enum values, sometimes
23745 (print_object): Use it.
23747 2017-05-21 Paul Eggert <eggert@cs.ucla.edu>
23749 Remove DARWIN_OS_CASE_SENSITIVE_FIXME code
23751 It does not appear to be needed (Bug#24441).
23752 * etc/PROBLEMS: Remove DARWIN_OS_CASE_SENSITIVE_FIXME stuff.
23753 * src/fileio.c (file_name_case_insensitive_p):
23754 Remove DARWIN_OS_CASE_SENSITIVE_FIXME code.
23756 2017-05-21 Paul Eggert <eggert@cs.ucla.edu>
23758 Narrow DARWIN_OS_CASE_SENSITIVE_FIXME to 1 choice
23760 * etc/PROBLEMS: Document this (Bug#24441).
23761 * src/fileio.c (file_name_case_insensitive_p): Prefer pathconf
23762 with _PC_CASE_SENSITIVE, if it works, to
23763 DARWIN_OS_CASE_SENSITIVE_FIXME code.
23764 Support just one method for DARWIN_OS_CASE_SENSITIVE_FIXME,
23765 which matches the Apple documentation more precisely.
23767 2017-05-21 Tom Tromey <tom@tromey.com>
23769 Fix mhtml-mode fontification bug
23772 * lisp/textmodes/mhtml-mode.el (mhtml-syntax-propertize): Call
23773 sgml-syntax-propertize-inside if not in a submode.
23774 * test/manual/indent/html-multi-4.html: New file.
23776 2017-05-21 Ryan <rct@thompsonclan.org> (tiny change)
23778 Fix ido-enable-dot-prefix for empty choice (Bug#26997)
23780 * lisp/ido.el (ido-set-matches-1): Only check first character of
23781 item if it's non-empty.
23783 2017-05-21 Ari Roponen <ari.roponen@gmail.com>
23785 * lisp/svg.el (svg-line): Fix x/y typo. (Bug#26953)
23787 2017-05-21 Glenn Morris <rgm@gnu.org>
23789 Prevent loading vc-bzr writing to ~/.bzr.log
23791 * lisp/vc/vc-bzr.el (vc-bzr-status-switches): Disable bzr logging.
23793 2017-05-21 Glenn Morris <rgm@gnu.org>
23795 Prevent running vc-tests writing to ~/.bzr.log
23797 * test/lisp/vc/vc-tests.el (vc-test--create-repo)
23798 (vc-test--register, vc-test--working-revision)
23799 (vc-test--checkout-model): Set temporary BZR_HOME, to disable logging.
23801 2017-05-21 Noam Postavsky <npostavs@gmail.com>
23803 Don't end non-hook variable with "-hook" (Bug#26623)
23805 * lisp/follow.el (follow-inside-post-command-hook-call): Renamed from
23806 follow-inside-post-command-hook, update uses.
23808 2017-05-21 Charles A. Roelli <charles@aurox.ch>
23810 Fix macOS mouse movement
23812 * lisp/frame.el (ns-set-mouse-absolute-pixel-position): New
23814 (set-mouse-absolute-pixel-position): Change it to call
23815 `ns-set-mouse-absolute-pixel-position' on macOS.
23816 * src/nsfns.m (Fns_set_mouse_absolute_pixel_position): New
23818 * src/nsterm.h (NS_PARENT_WINDOW_TOP_POS): Use the primary
23819 screen's height as a base for calculating global coordinates.
23820 * src/nsterm.m (frame_set_mouse_pixel_position): Fix it in macOS.
23821 * test/lisp/mouse-tests.el (bug26816-mouse-frame-movement): Test
23822 movement of mouse relative to frame.
23824 2017-05-21 Alan Third <alan@idiocy.org>
23826 Show tooltip on correct screen (bug#26905)
23828 * src/nsfns.m (compute_tip_xy): Find the correct screen for the
23829 tooltip and constrain it to that screen.
23831 2017-05-21 Andreas Politz <politza@hochschule-trier.de>
23833 Don't save unrelated buffers before recompiling directory (Bug#25964)
23835 * lisp/emacs-lisp/bytecomp.el (byte-recompile-directory): Only save
23836 buffers visiting lisp files under the directory being compiled.
23838 2017-05-20 Paul Eggert <eggert@cs.ucla.edu>
23840 Minor fixes for arity ranges in emacs modules
23842 * src/emacs-module.c (module_make_function):
23843 Check that arities fit into fixnums, for func-arity’s benefit.
23844 (funcall_module): Avoid unnecessary conversion to EMACS_INT.
23845 (module_function_arity): Allow arities greater than SHRT_MAX.
23847 2017-05-20 Philipp Stephani <phst@google.com>
23849 Reimplement module functions
23851 Instead of a lambda, create a new type containing all data required to
23852 call the function, and support it in the evaluator. Because this type
23853 now also needs to store the function documentation, it is too big for
23854 Lisp_Misc; use a pseudovector instead. That also has the nice benefit
23855 that we don't have to add special support to the garbage collector.
23857 Since the new type is user-visible, give it a predicate.
23859 Now we can easily support 'help-function-args' and 'func-arity'; add
23860 unit tests for these.
23862 * src/lisp.h (allocate_module_function, MODULE_FUNCTIONP)
23863 (XMODULE_FUNCTION): New pseudovector type 'module function'.
23865 * src/eval.c (FUNCTIONP): Also treat module functions as functions.
23866 (funcall_lambda, Ffuncall, eval_sub): Add support for calling module
23868 (Ffunc_arity): Add support for detecting the arity of module
23871 * src/emacs-module.c (module_make_function): Adapt to new structure.
23872 Return module function object directly instead of wrapping it in a
23873 lambda; remove FIXME.
23874 (funcall_module): New function to call module functions. Replaces
23875 `internal--module-call' and is called directly from eval.c.
23876 (syms_of_module): Remove internal helper function, which is no longer
23878 (module_function_arity): New helper function.
23880 * src/data.c (Ftype_of): Adapt to new implementation.
23881 (Fmodule_function_p, syms_of_data): New user-visible function. Now
23882 that module functions are first-class objects, they deserve a
23883 predicate. Define it even if not compiled with --enable-modules so
23884 that Lisp code doesn't have to check for the function's existence.
23886 * src/doc.c (Fdocumentation): Support module functions.
23888 * src/print.c (print_object): Adapt to new implementation.
23890 * src/alloc.c (mark_object): Specialized garbage collector support is
23893 * lisp/help.el (help-function-arglist): Support module functions.
23894 While there, simplify the arity calculation by using `func-arity',
23895 which does the right thing for all kinds of functions.
23897 * test/data/emacs-module/mod-test.c: Amend docstring so we can test
23900 * test/src/emacs-module-tests.el (mod-test-sum-docstring): Adapt to
23902 (mod-test-non-local-exit-signal-test): Because `internal--module-call'
23903 is gone, the backtrace has changed and no longer leaks the
23905 (module--func-arity): New test for `func-arity'.
23906 (module--help-function-arglist): New test for `help-function-arglist'.
23908 2017-05-20 Eli Zaretskii <eliz@gnu.org>
23910 Avoid crashes in GC due to unescaped characters warning
23912 * src/lread.c (load_warn_unescaped_character_literals): Don't cons
23913 Lisp objects from stack-based variables. (Bug#26961)
23915 2017-05-20 Charles A. Roelli <charles@aurox.ch>
23917 New commands: find-library-other-window, find-library-other-frame
23919 * lisp/emacs-lisp/find-func.el (find-library-other-window)
23920 (find-library-other-frame): New commands to complement the
23921 existing 'find-library' command. (Bug#26712)
23922 (read-library-name): New function to read a library name.
23923 * etc/NEWS: Mention 'find-library-other-window' and
23924 'find-library-other-frame'.
23926 2017-05-20 Eli Zaretskii <eliz@gnu.org>
23928 Fix automatic hscrolling of only the current line
23930 * src/xdisp.c (display_line): When hscrolling only the current
23931 line, increment iterator's first_visible_x and last_visible_x
23932 values to account for the hscroll. This propagates the hscroll
23933 effect on the iterator geometry all the way down to the
23934 subroutines called by display_line, and avoids scrolling bugs
23935 under large hscroll values. (Bug#26994)
23937 2017-05-20 Paul Eggert <eggert@cs.ucla.edu>
23939 Add handlerlist assertion to module code
23941 * src/emacs-module.c (module_reset_handlerlist):
23942 Check handlerlist. Suggested by Philipp Stephani in:
23943 https://lists.gnu.org/r/emacs-devel/2017-05/msg00521.html
23945 2017-05-20 Paul Eggert <eggert@cs.ucla.edu>
23947 Port --enable-gcc-warnings to clang 3.9.1
23949 * configure.ac (WERROR_CFLAGS): Omit -Wmissing-braces for Clang,
23950 to shut off a false alarm. Problem reportd by Philipp Stephani in:
23951 https://lists.gnu.org/r/emacs-devel/2017-05/msg00521.html
23953 2017-05-20 Noam Postavsky <npostavs@gmail.com>
23955 Limit integers printed as characters (Bug#16828)
23957 * lisp/simple.el (eval-expression-print-maximum-character): New
23959 (eval-expression-print-format): Only display value as character if
23960 it's less than or equal to `eval-expression-print-maximum-character'.
23961 (eval-expression-get-print-arguments): Check
23962 eval-expression-print-maximum-character, allow negative arg to
23965 * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp):
23966 (elisp--eval-last-sexp-print-value): Handle new variable.
23967 * doc/emacs/building.texi (Lisp Eval): Document new variable and
23969 * etc/NEWS: Announce it.
23970 * test/lisp/progmodes/elisp-mode-tests.el
23971 (eval-last-sexp-print-format-small-int)
23972 (eval-last-sexp-print-format-small-int-echo)
23973 (eval-last-sexp-print-format-large-int)
23974 (eval-last-sexp-print-format-large-int-echo):
23975 * test/lisp/simple-tests.el (eval-expression-print-format-small-int)
23976 (eval-expression-print-format-small-int-echo)
23977 (eval-expression-print-format-large-int)
23978 (eval-expression-print-format-large-int-echo): New tests.
23980 2017-05-20 Noam Postavsky <npostavs@gmail.com>
23982 Refactor lisp eval result printing
23984 * lisp/simple.el (eval-expression-print-format): Don't check
23985 `standard-output' or `current-prefix-arg'.
23986 (eval-expression-get-print-arguments): New function, centralizes
23987 decision about how to print results of `eval-expression' and
23990 * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp-print-value):
23993 2017-05-19 Paul Eggert <eggert@cs.ucla.edu>
23995 Check that signed right shift is arithmetic
23997 * src/data.c (ash_lsh_impl): Verify that signed right shift is
23998 arithmetic; if we run across a compiler that uses a logical shift
23999 we’ll need to complicate the code before removing this
24000 compile-time check. Help the compiler do common subexpression
24001 elimination better.
24003 2017-05-19 Paul Eggert <eggert@cs.ucla.edu>
24005 Minor .gitignore fixes
24007 * .gitignore: modules/mod-test/Makefile was renamed to
24008 test/data/emacs-module/Makefile.
24009 Omit [0-9]*.core, subsumed by *.core.
24010 test/indent/*.new was renamed to test/manual/indent/*.new.
24011 Add *.swp, for Vim.
24013 2017-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
24015 * lisp/emacs-lisp/package.el: Quote `package-desc' in docstrings
24017 2017-05-19 Eli Zaretskii <eliz@gnu.org>
24019 Describe problems with Microsoft Intellipoint
24021 * etc/PROBLEMS: Describe problems with Microsoft Intellipoint and
24022 mouse-2 events. For the details, see
24023 https://lists.gnu.org/r/help-emacs-windows/2017-05/msg00009.html.
24025 2017-05-19 Nick Helm <nick@tenpoint.co.nz> (tiny change)
24027 Fix turning off whitespace-mode
24029 * lisp/whitespace.el (whitespace-display-char-on): Correct the way
24030 the original buffer-display-table is saved and restored when
24031 global-whitespace-mode is active. (Bug#26892)
24033 * test/lisp/whitespace-tests.el
24034 (whitespace-tests-whitespace-mode-on): New function.
24035 (whitespace-tests-display-tables): New test.
24037 2017-05-19 Michael Albinus <michael.albinus@gmx.de>
24039 Minor tweaks in tramp-tests.el
24041 * test/lisp/net/tramp-tests.el (tramp--test-afp-or-smb-p): New defun.
24042 (tramp-test05-expand-file-name-relative): Use it.
24043 (tramp-test38-unload): Run only in batch mode.
24045 2017-05-19 Michael Albinus <michael.albinus@gmx.de>
24047 Fix a problem with OpenSSH 7 in Tramp
24049 * lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options): Set also
24050 "ConnectTimeout" during test. Otherwise, OpenSSH 7 will hang.
24052 2017-05-19 Jean-Christophe Helary <jean.christophe.helary@gmail.com>
24054 Improve documentation of 'split-string'
24056 * doc/lispref/strings.texi (Creating Strings): Rearrange text to
24057 make it more readable. (Bug#26925)
24059 2017-05-19 Ruslan Bekenev <furyinbox@gmail.com>
24061 Fix typos in doc strings
24063 * lisp/mail/rfc2231.el (rfc2231-encode-string):
24064 * lisp/mail/rfc2047.el (rfc2047-encode-parameter):
24065 * lisp/mail/rfc2045.el (rfc2045-encode-string): Fix typos in doc
24066 strings. (Bug#26103)
24068 2017-05-19 Philipp Stephani <phst@google.com>
24070 Fix module tests on some systems
24072 If dladdr(3) isn't available or didn't work, the printed
24073 representation of a module function will not include the file name,
24074 but only the address. Make the tests pass in that case.
24076 * test/src/emacs-module-tests.el (module-function-object): Fix match for
24077 module function printed representation
24079 2017-05-19 Jean-Christophe Helary <jean.christophe.helary@gmail.com>
24081 Add an optional arguments to string-trim
24083 * lisp/emacs-lisp/subr-x.el (string-trim-left, string-trim-right)
24084 (string-trim): Add optional args that serve as defaults per the
24085 original behavior. (Bug#26908)
24087 2017-05-19 Stephen Berman <steve@rosalinde.fritz.box>
24089 Fix typo in last change to auto-hscroll-mode
24091 * lisp/cus-start.el (standard): Fix typo in value of auto-hscroll-mode.
24093 2017-05-19 Eli Zaretskii <eliz@gnu.org>
24095 Support remote editing in emacsclient via Tramp
24097 * lib-src/emacsclient.c (main, decode_options)
24098 (print_help_and_exit, longopts): New option '--tramp' / '-T' which
24099 specifies how emacs should use tramp to find remote files.
24101 * doc/emacs/misc.texi (TCP Emacs server): New subsection describing
24102 the various knobs to tune server.el for TCP opereation.
24103 (emacsclient Options): Reference "TCP Emacs server" from description of
24104 --server-file. Document the new '--tramp' / '-T' options.
24105 * doc/emacs/emacs.texi (Top): Update the top-level menu.
24107 * etc/NEWS: Mention the new option.
24109 2017-05-19 Eli Zaretskii <eliz@gnu.org>
24111 * lisp/replace.el (query-replace-regexp-eval): Doc fix.
24113 2017-05-19 Paul Eggert <eggert@cs.ucla.edu>
24115 Attempt to work around macOS vfork bug
24117 Problem reported by YAMAMOTO Mitsuharu in:
24118 https://lists.gnu.org/r/emacs-devel/2017-05/msg00342.html
24119 This is related to the fix for Bug#26397.
24120 * src/callproc.c (call_process_cleanup, call_process) [!MSDOS]:
24121 Report internal error if wait_for_termination fails.
24122 * src/sysdep.c (get_child_status): Return -1 if waitpid is
24123 buggy, instead of aborting.
24124 (wait_for_termination): Return bool success value.
24125 All callers changed.
24127 2017-05-19 Eli Zaretskii <eliz@gnu.org>
24129 Adjust defcustom form for 'auto-hscroll-mode'
24131 * lisp/cus-start.el (standard) <auto-hscroll-mode>: Adjust the
24132 defcustom form. Suggested by Stephen Berman <stephen.berman@gmx.net>.
24134 2017-05-19 Paul Eggert <eggert@cs.ucla.edu>
24136 Fix DARWIN_OS_CASE_SENSITIVE_FIXME==2 false alarm
24138 * src/fileio.c (file_name_case_insensitive_p):
24139 Don’t compile the (DARWIN_OS_CASE_SENSITIVE_FIXME == 2)
24140 code unless DARWIN_OS_CASE_SENSITIVE_FIXME is 2.
24141 Problem reported by Philipp Stephani in:
24142 https://lists.gnu.org/r/emacs-devel/2017-05/msg00495.html
24144 2017-05-19 Paul Eggert <eggert@cs.ucla.edu>
24146 Port --enable-gcc-warnings to clang 3.9.1
24148 * configure.ac (WERROR_CFLAGS): Omit -Wdouble-promotion if clang.
24149 Problem reported by Philipp Stephani in:
24150 https://lists.gnu.org/r/emacs-devel/2017-05/msg00495.html
24152 2017-05-19 Paul Eggert <eggert@cs.ucla.edu>
24154 Clean up compiler warning in emacs-module.c
24156 * src/emacs-module.c (MODULE_SETJMP_1): Use the local var
24157 instead of leaving it unused, to pacify picky compilers.
24158 (module_reset_handlerlist): Now takes a dummy pointer to a struct
24159 handler *, instead of a dummy pointer to an int. All uses changed.
24161 2017-05-19 Philipp Stephani <phst@google.com>
24163 Clean up some compiler warnings
24165 * src/sysdep.c (system_process_attributes) [DARWIN_OS]:
24166 Remove unused locals.
24168 2017-05-18 Eli Zaretskii <eliz@gnu.org>
24170 Support hscrolling only the current line
24172 * src/xdisp.c (hscrolling_current_line_p): New function.
24173 (init_iterator): If auto-hscrolling just the current line, don't
24174 increment the iterator's first_visible_x and last_visible_x
24176 (hscroll_window_tree): Recompute window's hscroll when moving
24177 vertically to another screen line.
24178 (redisplay_window): If we are hscrolling only the current line,
24179 disable the optimizations that rely on the current matrix being
24181 (display_line): Accept an additional argument CURSOR_VPOS, the
24182 vertical position of the current screen line which might need
24183 hscrolling; all callers changed. Compute first_visible_x and
24184 last_visible_x specially when auto-hscrolling current line, by
24185 repeating the calculation that is done in init_iterator in other
24187 (syms_of_xdisp) <auto-hscroll-mode>: No longer boolean, it can now
24188 accept a 3rd value 'current-line, to turn on the mode where
24189 only the current line is hscrolled.
24191 * etc/NEWS: Mention the new auto-hscroll-mode value.
24193 2017-05-18 Eli Zaretskii <eliz@gnu.org>
24195 Fix last change in line-move-finish
24197 * lisp/simple.el (line-move-finish): Fix last change. This corrects a
24198 regression in C-n and C-p when lines are truncated, introduced by the
24199 change in 2017-05-10.
24201 2017-05-18 Simen Heggestøyl <simenheg@gmail.com>
24203 Expand docstring for CSS mode
24205 * lisp/textmodes/css-mode.el (css-completion-at-point, css-mode):
24208 2017-05-18 Tino Calancha <tino.calancha@gmail.com>
24210 Use the expression angle units while simplifying it
24212 Don't use the angle mode, use the angle units included
24213 in the expression instead (Bug#23889).
24214 * lisp/calc/calc-alg.el (calc-input-angle-units): New defun.
24215 (math-simplify): Use it.
24216 * lisp/calc/calc-forms.el (math-to-hms, math-from-hms):
24217 Don't use calc-angle-mode if math-simplifying-units is non-nil.
24218 * lisp/calc/calc-math.el (calcFunc-nroot, math-from-radians)
24219 (math-to-radians-2, math-from-radians-2): Don't convert angle
24220 to radians if math-simplifying-units is non-nil.
24221 * test/lisp/calc/calc-tests.el (test-calc-23889): Add test.
24223 2017-05-18 Tino Calancha <tino.calancha@gmail.com>
24225 Revert "Ignore angle mode while simplifying units"
24227 This reverts commit 713e922243fb60d850f7b0ff83f3e2a3682f1832.
24228 This commit causes Bug#25652.
24230 2017-05-17 Paul Eggert <eggert@cs.ucla.edu>
24232 Avoid undefined behavior in struct sockaddr
24234 Problem noted by Philipp Stephani in:
24235 https://lists.gnu.org/r/emacs-devel/2017-05/msg00391.html
24236 * src/conf_post.h (ATTRIBUTE_MAY_ALIAS, DECLARE_POINTER_ALIAS):
24238 * src/process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr)
24239 (connect_network_socket, network_interface_info)
24240 (server_accept_connection): Use it when aliasing non-char objects.
24242 2017-05-17 Stefan Monnier <monnier@iro.umontreal.ca>
24244 * lisp/vc/smerge-mode.el (smerge-refine-regions): Work in multi-bufs
24246 Rename from smerge-refine-subst. Allow the `beg's to be markers.
24247 Add autoload cookie.
24248 (smerge--refine-forward): Rename from smerge-refine-forward.
24249 (smerge--refine-chopup-region): Rename from smerge-refine-chopup-region.
24250 Assume that its `beg` arg is a marker.
24251 (smerge--refine-highlight-change): Rename from
24252 smerge-refine-highlight-change. Remove `buf` arg.
24253 (smerge-refine-subst): Redefine as an obsolete alias.
24255 2017-05-17 Paul Eggert <eggert@cs.ucla.edu>
24257 Work around AddressSanitizer bug with vfork
24259 Problem reported by Jim Meyering in:
24260 https://lists.gnu.org/r/emacs-devel/2017-05/msg00246.html
24261 * src/conf_post.h (vfork) [ADDRESS_SANITIZER]: Define to fork.
24262 Unfortunately with the AddressSanitizer in Fedora 25 x86-64, the
24263 vforked child messes up the parent’s shadow memory. This is too
24264 bad, as we’d rather have AddressSanitizer catch memory-access bugs
24267 2017-05-17 Paul Eggert <eggert@cs.ucla.edu>
24269 Catch IPv4/IPv6 issues at compile time
24271 * src/process.c (connect_network_socket): Use verify,
24272 not eassert, so that any problems are caught at compile-time.
24273 Avoid dodgy cast by using a local var of the correct type.
24275 2017-05-17 Paul Eggert <eggert@cs.ucla.edu>
24277 Pacify --enable-gcc-warnings --with-x-toolkit=no
24279 * src/composite.c (autocmp_chars) [!HAVE_WINDOW_SYSTEM]:
24280 Avoid unused local.
24282 2017-05-17 Glenn Morris <rgm@gnu.org>
24284 * admin/update_autogen (commit): Pull before push.
24286 2017-05-17 Glenn Morris <rgm@gnu.org>
24288 autoload-rubric no longer provides a feature by default
24290 * lisp/emacs-lisp/autoload.el (autoload-rubric):
24291 Stop providing a feature unless explicitly requested.
24292 (autoload-find-generated-file): Update autoload-rubric call.
24294 2017-05-17 Eli Zaretskii <eliz@gnu.org>
24296 Remove redundant code in connect_network_socket
24298 * src/process.c (connect_network_socket) [HAVE_GETSOCKNAME]:
24299 Remove redundant type-casting and variables. Don't call
24300 'getsockname' to find the port for AF_LOCAL sockets.
24301 [AF_INET6]: Add an assertion to verify that the ports in the IPv4
24302 and IPv6 structures are at the same offset and have the same size.
24304 2017-05-16 Paul Eggert <eggert@cs.ucla.edu>
24306 Fix minor timezone memory leak
24308 * src/editfns.c (wall_clock_tz): Remove; unused.
24310 2017-05-16 Paul Eggert <eggert@cs.ucla.edu>
24312 Do not discard AddressSanitizer stderr
24314 * src/emacs.c (close_output_streams) [ADDRESS_SANITIZER]:
24315 Do not close stderr.
24317 2017-05-16 Paul Eggert <eggert@cs.ucla.edu>
24319 Simplify procname code to avoid GCC bug
24321 * src/process.c (server_accept_connection): Simplify and avoid
24322 multiple calls and struct literals in the last case of a switch.
24323 The old code ran afoul of GCC bug 80659, which caused an internal
24324 compiler error. Problem reported by Jim Meyering in:
24325 https://lists.gnu.org/r/emacs-devel/2017-05/msg00182.html
24326 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80659
24328 2017-05-16 Paul Eggert <eggert@cs.ucla.edu>
24330 Pacify GCC 7 with --enable-gcc-warnings
24332 * src/regex.c (regex_compile): Swap labels, so that the
24333 FALLTHROUGH immediately precedes the case label.
24335 2017-05-16 Paul Eggert <eggert@cs.ucla.edu>
24337 Merge with gnulib, pacifying GCC 7
24340 2017-05-16 manywarnings: update for GCC 7
24341 2017-05-15 sys_select: Avoid "was expanded before it was required"
24342 * configure.ac (nw): Suppress GCC 7’s new -Wduplicated-branches and
24343 -Wformat-overflow=2 options, due to too many false alarms.
24344 * doc/misc/texinfo.tex, lib/strftime.c, m4/manywarnings.m4:
24346 * m4/gnulib-comp.m4: Regenerate.
24347 * src/coding.c (decode_coding_iso_2022):
24348 Fix bug uncovered by -Wimplicit-fallthrough.
24349 * src/conf_post.h (FALLTHROUGH): New macro.
24350 Use it to mark all switch cases that fall through.
24351 * src/editfns.c (styled_format): Use !, not ~, on bool.
24352 * src/gtkutil.c (xg_check_special_colors):
24353 When using sprintf, don’t trust Gtk to output colors in [0, 1] range.
24354 (xg_update_scrollbar_pos): Avoid use of possibly-uninitialized bool;
24355 this bug was actually caught by Clang.
24356 * src/search.c (boyer_moore):
24357 Tell GCC that CHAR_BASE, if nonzero, must be a non-ASCII character.
24358 * src/xterm.c (x_draw_glyphless_glyph_string_foreground):
24359 Tell GCC that glyph->u.glyphless.ch must be a character.
24361 2017-05-16 Michael Albinus <michael.albinus@gmx.de>
24363 Make autoloading Tramp more robust
24365 * lisp/net/tramp.el (tramp-file-name-for-operation):
24366 Use `default-directory' where appropriate.
24367 (tramp-file-name-handler): Do not autoload.
24368 (tramp-autoload-file-name-handler): Reintroduce function.
24369 (tramp-register-autoload-file-name-handlers): Use it.
24371 2017-05-16 Michael Albinus <michael.albinus@gmx.de>
24373 Extend tramp-tests.el
24375 * test/lisp/net/tramp-tests.el (tramp-change-syntax):
24376 Remove declaration, not needed anymore.
24377 (tramp-test05-expand-file-name-relative): New test.
24378 (tramp-test10-write-region): Extend test.
24380 2017-05-16 Michael Albinus <michael.albinus@gmx.de>
24382 * lisp/net/tramp.el: Avoid recursive load of Tramp. (Bug#26943)
24384 2017-05-16 Noam Postavsky <npostavs@gmail.com>
24386 Make `indent-line-to' respect field boundaries (Bug#26891)
24388 * lisp/indent.el (indent-line-to): Use `back-to-indentation' instead
24389 of `backward-to-indentation'.
24391 2017-05-16 Noam Postavsky <npostavs@gmail.com>
24393 Make sure indent-sexp stops at end of sexp (Bug#26878)
24395 * lisp/emacs-lisp/lisp-mode.el (indent-sexp): Check endpos before
24397 * test/lisp/emacs-lisp/lisp-mode-tests.el (indent-sexp-stop): New
24400 2017-05-16 Glenn Morris <rgm@gnu.org>
24402 Stop some epg tests failing on rhel7 with gpg 2.0.22 (bug#23619)
24404 * test/lisp/epg-tests.el (with-epg-tests):
24405 Also set GNUPGHOME in the environment of child processes.
24406 This avoids problems if gpg does not pass --homedir to spawned agent.
24408 2017-05-16 Glenn Morris <rgm@gnu.org>
24410 Add oldxmenu to system-configuration-features
24412 * configure.ac (HAVE_OLDXMENU): New.
24413 (emacs_config_features): Add oldxmenu.
24415 2017-05-15 Ted Zlatanov <tzz@lifelogs.com>
24417 * .gitlab-ci.yml: Adjust disclaimer as per RMS.
24419 2017-05-15 Eli Zaretskii <eliz@gnu.org>
24421 Remove unneeded stuff from nt/inc/sys/time.h
24423 * nt/inc/sys/time.h (_TIMEVAL_DEFINED, struct timevat, timerisset)
24424 (timercmp, timerclear): Don't define. Instead, include the system
24425 header sys/time.h, and add only the interval timers stuff. This
24426 avoids compiler warnings about 'gettimeofday's prototype, and also
24427 avoids redefinition of macros from system headers.
24429 2017-05-15 Paul Eggert <eggert@cs.ucla.edu>
24431 Fix address violation found by AddressSanitizer
24433 * src/process.c (connect_network_socket):
24434 Use struct sockaddr_storage, not struct sockaddr_in, to store info
24435 about a socket address. Problem reported by Philipp Stephani in:
24436 https://lists.gnu.org/r/emacs-devel/2017-05/msg00314.html
24437 This fix is based on a patch by Philipp in:
24438 https://lists.gnu.org/r/emacs-devel/2017-05/msg00357.html
24440 2017-05-14 Gemini Lasswell <gazally@runbox.com>
24442 Make edebug-step-in work on generic methods (Bug#22294)
24444 * lisp/emacs-lisp/edebug.el (edebug-match-cl-generic-method-args):
24445 New function to implement the edebug-form-spec property of
24446 the symbol cl-generic-method-args.
24447 (edebug-instrument-function): If the function is a generic
24448 function, find and instrument all of its methods. Return a list
24449 instead of a single symbol.
24450 (edebug-instrument-callee): Now returns a list. Update docstring.
24451 (edebug-step-in): Handle the list returned by edebug-instrument-callee.
24452 * lisp/emacs-lisp/cl-generic.el (cl-defmethod): Use name and
24453 cl-generic-method-args in its Edebug spec.
24454 * lisp/emacs-lisp/eieio-compat.el (defmethod): Use name and
24455 cl-generic-method-args in its Edebug spec.
24456 * lisp/subr.el (method-files): New function.
24457 * test/lisp/subr-tests.el (subr-tests--method-files--finds-methods)
24458 (subr-tests--method-files--nonexistent-methods): New tests.
24460 2017-05-14 Paul Eggert <eggert@cs.ucla.edu>
24465 2017-05-14 same-inode: Adapt for windows-stat-inodes
24466 2017-05-14 windows-stat-inodes: New module
24467 2017-05-14 stat-time: Adapt for windows-stat-timespec
24468 * lib/gnulib.mk.in: Regenerate.
24469 * lib/stat-time.h, lib/sys_types.in.h, m4/sys_types_h.m4:
24472 2017-05-14 Eli Zaretskii <eliz@gnu.org>
24474 Remove gettimeofday from w32 sources
24476 * lib-src/ntlib.c (gettimeofday):
24477 * nt/inc/sys/time.h (gettimeofday, struct timezone): Remove unused
24478 function 'gettimeofday' and all of its supporting code.
24480 2017-05-14 Eli Zaretskii <eliz@gnu.org>
24482 Fix the MS-Windows build
24484 * nt/inc/sys/time.h (gettimeofday):
24485 * src/w32.c (gettimeofday): Adjust signature to match Gnulib.
24487 2017-05-14 Eli Zaretskii <eliz@gnu.org>
24489 More accurate documentation of the ':box' face attribute
24491 * doc/lispref/display.texi (Face Attributes): Fix the description
24492 of negative width of the ':box' attribute. (Bug#26920)
24494 2017-05-14 Paul Eggert <eggert@cs.ucla.edu>
24499 2017-05-13 largefile: Simplify
24500 2017-05-13 largefile: Improve and document
24501 2017-05-13 truncate: New module
24502 2017-05-13 windows-stat-timespec: New module
24503 2017-05-13 windows-stat-override: New module
24504 2017-05-11 getopt-posix: port to mingw
24505 2017-05-11 gettimeofday: Increase precision on mingw
24506 2017-05-10 time: Fix missing initialization of HAVE_TIMEZONE_T
24507 2017-05-10 Implement a way to opt out from MSVC support
24508 2017-05-09 tzset: Expand comment about TZ problem on native Windows
24509 * build-aux/config.guess, lib/dup2.c, lib/fcntl.c, lib/fsync.c:
24510 * lib/getdtablesize.c, lib/getopt.c, lib/gettimeofday.c:
24511 * lib/mktime.c, lib/stat-time.h, lib/sys_stat.in.h, lib/unistd.in.h:
24512 * lib/utimens.c, m4/gettimeofday.m4, m4/largefile.m4:
24513 * m4/sys_stat_h.m4, m4/sys_time_h.m4, m4/time_h.m4, m4/time_rz.m4:
24514 * m4/unistd_h.m4: Copy from gnulib.
24515 * lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
24517 2017-05-14 Marcin Borkowski <mbork@mbork.pl>
24519 Merge branch 'fix/bug-21072'
24521 2017-05-14 Ted Zlatanov <tzz@lifelogs.com>
24523 * .gitlab-ci.yml: Add setup for GitLab CI builds.
24525 2017-05-13 Tak Kunihiro <tkk@misasa.okayama-u.ac.jp>
24527 New minor mode 'pixel-scroll-mode'
24529 * lisp/pixel-scroll.el: New file.
24531 * etc/NEWS: Mention pixel-scroll-mode.
24533 2017-05-13 Philipp <phst@google.com>
24535 Make `old-style-backquotes' variable internal
24537 * src/lread.c (load_warn_old_style_backquotes, Fload, read1)
24538 (syms_of_lread): Rename `old-style-backquotes' to
24539 `lread--old-style-backquotes', and clarify that it's for internal
24541 * lisp/emacs-lisp/bytecomp.el (byte-compile-from-buffer): Rename
24543 * test/src/lread-tests.el (lread-tests--old-style-backquotes): Add
24545 * test/lisp/emacs-lisp/bytecomp-tests.el
24546 (bytecomp-tests--old-style-backquotes): Add unit test.
24548 2017-05-13 Philipp Stephani <phst@google.com>
24550 Improve unescaped character literal warnings
24552 * src/lread.c (load_warn_unescaped_character_literals)
24554 lisp/emacs-lisp/bytecomp.el (byte-compile-from-buffer): Improve
24555 formatting of unescaped character literal warnings.
24557 * test/src/lread-tests.el (lread-tests--unescaped-char-literals):
24558 test/lisp/emacs-lisp/bytecomp-tests.el
24559 (bytecomp-tests--unescaped-char-literals): Adapt unit tests.
24561 2017-05-12 Alan Mackenzie <acm@muc.de>
24563 Fontify C++ for loop variable as variable, even when followed by parentheses
24565 In the following: "for (auto *Friend : Class->friends()) {", "Friend" was
24566 getting fontified as a function, due to insufficient checking of the tokens
24567 between it and "()".
24569 * lisp/progmodes/cc-langs.el (c-:-op-cont-tokens, c-:-op-cont-regexp): New
24572 * lisp/progmodes/cc-engine.el (c-forward-declarator): After finding a putative
24573 declarator's identifier, check for a ":" token inside a for's parentheses, and
24574 abort the search for "(" if this is found.
24576 2017-05-12 Michael Albinus <michael.albinus@gmx.de>
24578 Make Tramp backward compatible
24580 * lisp/net/tramp-cmds.el (tramp-change-syntax):
24581 Set tramp-autoload cookie.
24583 * lisp/net/tramp-compat.el: Run `tramp-change-syntax' at
24584 startup, if necessary.
24586 * lisp/net/tramp.el (tramp-syntax): Use `tramp-compat-user-error'.
24587 (tramp-register-autoload-file-name-handlers): Do not mark
24588 `operations' for `tramp-file-name-handler'.
24589 (tramp-register-file-name-handlers): Remove also
24590 `tramp-autoload-file-name-handler' for backward compatibility.
24591 (tramp-register-foreign-file-name-handler): Use `delete-dups'.
24593 * test/lisp/net/tramp-tests.el (tramp-change-syntax): Declare.
24595 2017-05-12 Noam Postavsky <npostavs@gmail.com>
24597 Modify `beginning-of-defun-comments'
24599 * lisp/emacs-lisp/lisp.el (beginning-of-defun-comments): Try not to stop
24600 in the middle of a multiline comment.
24602 2017-05-12 Noam Postavsky <npostavs@gmail.com>
24604 Fix elisp-tests-with-temp-buffer compilation
24606 * test/lisp/emacs-lisp/lisp-tests.el (elisp-tests-with-temp-buffer):
24607 Don't refer to the =!NAME= as "markers" since they produce variables
24608 with just plain positions, not marker objects. Explicitly specify
24609 that CONTENTS is evaluated at compile time. Don't re-evaluate
24610 CONTENTS at runtime. Fix debug specification. Suppress warnings due
24611 to BODY not using =!NAME= variables.
24612 (elisp-test-point-position-regex): Rename from
24613 `elisp-test-point-marker-regex'.
24614 (mark-defun-test-buffer): Wrap in `eval-and-compile'.
24616 2017-05-12 Noam Postavsky <npostavs@gmail.com>
24618 * lisp/emacs-lisp/lisp.el (mark-defun): Simplify moving the point.
24620 2017-05-12 Marcin Borkowski <mbork@mbork.pl>
24622 Fix Bug#21072 and rework `mark-defun'
24624 * test/lisp/progmodes/elisp-mode-tests.el (mark-defun-test-buffer):
24626 (mark-defun-no-arg-region-inactive)
24627 (mark-defun-no-arg-region-active)
24628 (mark-defun-arg-region-active)
24629 (mark-defun-pos-arg-region-inactive)
24630 (mark-defun-neg-arg-region-inactive, mark-defun-bob): Add tests for
24631 the new `mark-defun'.
24633 * lisp/emacs-lisp/lisp.el (beginning-of-defun--in-emptyish-line-p):
24635 (beginning-of-defun-comments): New function.
24636 (mark-defun): Fix bug#21072, also rewrite large parts of `mark-defun'
24637 to accept a numerical prefix argument.
24639 2017-05-12 Alfred M. Szmidt <ams@gnu.org>
24641 * lisp/mail/rmail.el (rmail-ignored-headers): Add 3 headers to ignore.
24643 2017-05-12 Eli Zaretskii <eliz@gnu.org>
24645 Improve doc strings in net-utils.el
24647 * lisp/net/net-utils.el (ifconfig, iwconfig, netstat, arp)
24648 (route, traceroute, nslookup, ftp, smbclient)
24649 (smbclient-list-shares, finger, whois)
24650 (network-connection-to-service, network-service-connection)
24651 (network-connection-reconnect): Improve doc strings.
24653 2017-05-12 Andrew Robbins <contact@andrewrobbins.info>
24655 Extend DNS lookup commands to allow specifying the name server
24657 * lisp/net/net-utils.el (ffap-string-at-point): Removed due to
24658 'net-utils-machine-at-point' obviating this autoloaded
24659 function (Bug#25426).
24660 (dig-program-options): New customization variable.
24661 (nslookup-host, dns-lookup-host, run-dig): Can now specify
24662 optional name server argument interactively (by prefix arg) and
24665 * etc/NEWS: Mention the extension of DNS lookup commands.
24667 2017-05-12 Glenn Morris <rgm@gnu.org>
24669 Don't hard-code loaddefs files in lisp/Makefile
24671 * lisp/Makefile.in (loaddefs): New variable.
24672 (AUTOGENEL): Use $loaddefs, and include directory.
24673 (bootstrap-clean): Update for AUTOGENEL change.
24675 2017-05-11 Katsumi Yamaoka <yamaoka@jpl.org>
24677 Kill modified buffers silently when quitting (bug#26862)
24679 * lisp/gnus/gnus-start.el (gnus-clear-system): Run do-auto-save to make
24680 sure that latest drafts are saved, and kill modified buffers silently.
24682 2017-05-10 Perry E. Metzger <perry@piermont.com>
24684 Implement 1-based column numbering in mode line
24686 * src/xdisp.c (decode_mode_spec): Implement the %C construct.
24688 * lisp/bindings.el (column-number-indicator-zero-based): New
24690 (mode-line-position): Use %C when
24691 column-number-indicator-zero-based is nil.
24693 * src/xdisp.c (syms_of_xdisp) <frame-title-format>:
24694 * src/buffer.c (syms_of_buffer) <mode-line-format>:
24695 * doc/lispref/modes.texi (%-Constructs):
24696 * doc/lispref/frames.texi (Frame Titles): Document the %C
24699 * doc/emacs/display.texi (Optional Mode Line): Document
24700 'column-number-indicator-zero-based'.
24702 * etc/NEWS: Mention 'column-number-indicator-zero-based' and the
24705 2017-05-10 Eli Zaretskii <eliz@gnu.org>
24707 Ensure cursor's foreground color is in sync with 'default' face
24709 * src/w32term.c (x_set_cursor_gc): Don't reuse cursor GC if its
24710 foreground color is different from the background of the glyph
24711 string's face. (Bug#26851)
24713 2017-05-10 Eli Zaretskii <eliz@gnu.org>
24715 Fix vertical cursor motion when columns are of unequal size
24717 * lisp/simple.el (line-move-finish): In line-move-visual mode, use
24718 vertical-motion to move to the goal column, as the goal column
24719 should in that case be interpreted in units of frame's canonical
24720 character width. (Bug#26852)
24722 2017-05-10 Glenn Morris <rgm@gnu.org>
24724 Fix finding test .el files
24726 * test/Makefile.in (ELFILES): Exclude the data/ directory.
24727 * test/src/lread-tests.el (lread-test-bug26837): Revert previous.
24729 2017-05-10 Tino Calancha <tino.calancha@gmail.com>
24731 Tweak a recent test
24733 This test fails in my local machine because the data files
24734 are compiled, and the test doesn't expect that.
24735 * test/src/lread-tests.el (lread-test-bug26837): Match a suffix
24736 ending with '.elc' when the data files are compiled.
24738 2017-05-10 Glenn Morris <rgm@gnu.org>
24740 Put license information in each generated uni-*.el
24742 * admin/unidata/unidata-gen.el (unidata-gen-file):
24743 Get Copyright line from copyright.html.
24744 Put information in file header, not separate README.
24745 (unidata-gen-charprop): Mention the source location.
24746 * lisp/international/README: Remove file.
24748 2017-05-10 Noam Postavsky <npostavs@gmail.com>
24750 Fix lisp-indent-region and indent-sexp (Bug#26619)
24752 The new lisp-indent-region introduced in 2017-04-22 "Add new
24753 `lisp-indent-region' that doesn't reparse the code." is broken because
24754 it doesn't save the calculated indent amounts for already seen sexp
24755 depths. Fix this by unifying the indent-sexp and lisp-indent-region
24756 code. Furthermore, only preserve position 2 of the running parse
24757 when the depth doesn't change.
24758 * lisp/emacs-lisp/lisp-mode.el (lisp-ppss): Use an OLDSTATE that
24759 corresponds with the start point when calling parse-partial-sexp.
24760 (lisp-indent-state): New struct.
24761 (lisp-indent-calc-next): New function, extracted from indent-sexp.
24762 (indent-sexp, lisp-indent-region): Use it.
24763 (lisp-indent-line): Take indentation, instead of parse state.
24764 * test/lisp/emacs-lisp/lisp-mode-tests.el
24765 (lisp-mode-tests--correctly-indented-sexp): New constant.
24766 (lisp-indent-region, lisp-indent-region-defun-with-docstring):
24767 (lisp-indent-region-open-paren, lisp-indent-region-in-sexp): New
24770 2017-05-10 Dmitry Gutov <dgutov@yandex.ru>
24772 Simplify url-encode-url and add a test
24774 * lisp/url/url-util.el (url-encode-url): Simplify.
24775 url-generic-parse-url copes with multibyte strings just fine
24776 (https://debbugs.gnu.org/cgi/bugreport.cgi?bug=24117#185).
24778 * test/lisp/url/url-parse-tests.el
24779 (url-generic-parse-url/multibyte-host-and-path): New test.
24781 2017-05-10 Glenn Morris <rgm@gnu.org>
24783 More informative error when required feature missing
24785 * src/fns.c (Frequire): Include file name in missing feature error.
24786 * doc/lispref/loading.texi (Named Features): Don't quote actual error.
24788 2017-05-10 Glenn Morris <rgm@gnu.org>
24790 Put re-loaded file back at start of load-history (bug#26837)
24792 * src/lread.c (readevalloop): Fix the "whole buffer" check to
24793 operate in the correct buffer.
24794 (Feval_buffer): Move point back to the start after checking
24795 for lexical binding.
24796 * test/src/lread-tests.el (lread-test-bug26837): New test.
24797 * test/data/somelib.el, test/data/somelib2.el: New test data files.
24799 2017-05-09 Eli Zaretskii <eliz@gnu.org>
24801 Improve documentation of 'gnutls-verify-error'
24803 * lisp/net/gnutls.el (gnutls-verify-error): Improve and expand
24804 doc string. (Bug#26845)
24806 2017-05-09 Glenn Morris <rgm@gnu.org>
24808 Don't duplicate autoload code in package.el
24810 * lisp/emacs-lisp/autoload.el (autoload-rubric): Add a package option.
24811 * lisp/emacs-lisp/package.el (autoload-rubric): Declare.
24812 (package-autoload-ensure-default-file): Use autoload-rubric.
24814 2017-05-09 Michael Albinus <michael.albinus@gmx.de>
24816 * test/lisp/net/tramp-tests.el: Keep additional test.
24818 2017-05-09 Marcin Borkowski <mbork@mbork.pl>
24820 Add elisp-tests-with-temp-buffer, a new testing macro
24822 * test/lisp/emacs-lisp/lisp-tests.el
24823 (elisp-test-point-marker-regex) New variable.
24824 (elisp-tests-with-temp-buffer): New macro to help test functions
24825 moving the point and/or mark.
24827 2017-05-09 Noam Postavsky <npostavs@gmail.com>
24829 Revert "Output number of characters added to file (Bug#354)"
24831 The extra message text turned out to be quite annoying in practice,
24832 and is generally more trouble than it's worth. Also revert several
24835 Partially revert "Handle `write-region' messages in Tramp properly"
24836 Revert "New var write-region-verbose, default nil"
24837 Revert "* src/fileio.c (write_region): Don't say "1 characters". (Bug#26796)"
24838 Revert "Minor tuneup of write-region change"
24839 Revert "Adjust write-region so file name is at the beginning again"
24840 Revert "Fix handling of non-integer START param to write-region"
24841 Revert "Output number of characters added to file (Bug#354)"
24843 * doc/emacs/files.texi (Misc File Ops):
24845 * lisp/epa-file.el (epa-file-write-region):
24846 * lisp/gnus/mm-util.el (mm-append-to-file):
24847 * lisp/jka-compr.el (jka-compr-write-region):
24848 * lisp/net/ange-ftp.el (ange-ftp-write-region):
24849 * lisp/net/tramp-adb.el (tramp-adb-handle-write-region):
24850 * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-write-region):
24851 * lisp/net/tramp-sh.el (tramp-sh-handle-write-region):
24852 * lisp/net/tramp-smb.el (tramp-smb-handle-write-region):
24853 * lisp/net/tramp.el (tramp-handle-write-region-message):
24854 * src/fileio.c (write_region, syms_of_fileio):
24855 * test/lisp/net/tramp-tests.el (tramp-test10-write-region): Remove
24856 extra characters from file writing messages.
24858 2017-05-09 Noah Friedman <friedman@splode.com>
24860 (ybuffer-list): $alist must be ptr-unmasked at the end of the loop,
24861 because $ptr is modified by ygetptr and we use $ptr immediately at the
24864 2017-05-08 Ken Brown <kbrown@cornell.edu>
24866 Skip a test from filenotify-tests.el on Cygwin
24868 * test/lisp/filenotify-tests.el (file-notify-test02-rm-watch):
24869 Skip the last part of the test on Cygwin; it fails due to timing
24871 (file-notify--test-read-event): Remove `sit-for' that was added
24874 2017-05-08 Paul Eggert <eggert@cs.ucla.edu>
24879 2017-05-08 intprops: don’t depend on ‘verify’
24880 2017-05-07 utimens: on native Windows, improve resolution if fd < 0
24881 2017-05-07 utimens: Improve error code on native Windows
24882 * lib/intprops.h, lib/utimens.c: Copy from gnulib.
24884 2017-05-08 Wilson Snyder <wsnyder@wsnyder.org>
24886 Fix various verilog-mode.el issues.
24888 * lisp/progmodes/verilog-mode.el (verilog-read-decls): Fix SystemVerilog
24889 2012 import breaking AUTOINST. Reported by Johannes Schaefer.
24890 (verilog-auto-wire-type, verilog-insert-definition): Fix AUTOWIRE using
24891 logic in top-level non-SystemVerilog module, bug1142. Reported by Marcin K.
24892 (verilog-define-abbrev-table) (verilog-mode-abbrev-table): Don't expand
24893 abbrev inside comment/strings, bug1102. Reported by Slava Yuzhaninov.
24894 (verilog-auto): Fix AUTORESET widths pulling from AUTOREGINPUT,
24895 msg2143. Reported by Galen Seitz.
24896 (verilog-modify-compile-command): Fix expansion of __FLAGS__ when
24897 compile-command is globally set, bug1119. Reported by Galen Seitz.
24899 2017-05-08 Michael Albinus <michael.albinus@gmx.de>
24901 Handle `write-region' messages in Tramp properly
24903 * lisp/net/tramp.el (tramp-handle-write-region-message): New defsubst.
24904 * lisp/net/tramp-adb.el (tramp-adb-handle-write-region):
24905 * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-write-region):
24906 * lisp/net/tramp-sh.el (tramp-sh-handle-write-region):
24907 * lisp/net/tramp-smb.el (tramp-smb-handle-write-region): Use it.
24909 * lisp/net/tramp.el (tramp-password-prompt-regexp)
24910 (tramp-completion-mode-p):
24911 * lisp/net/tramp-cmds.el (tramp-reporter-dump-variable)
24912 (tramp-append-tramp-buffers):
24913 * lisp/net/tramp-smb.el (tramp-smb-maybe-open-connection):
24914 Use `bound-and-true-p'.
24916 * lisp/net/tramp-compat.el (tramp-compat-delete-file):
24917 Don't check for `boundp' anymore.
24919 * test/lisp/net/tramp-tests.el (ert-x): Require it.
24920 (tramp--test-messages): New defvar.
24921 (tramp-test10-write-region): Extend test.
24923 2017-05-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
24925 Fix glyph string generation for multi-font compositions (Bug#26742)
24927 * src/xdisp.c (glyph_string_containing_background_width): New function.
24928 (draw_glyphs): Use it to get correct background width.
24929 (compute_overhangs_and_x): Don't change x in the middle of composite
24932 2017-05-07 Philipp Stephani <phst@google.com>
24934 Fix all unescaped character literals
24936 2017-05-07 Alan Mackenzie <acm@muc.de>
24938 CC Mode internal cache: Handle a cache pos being inside a two-char construct.
24940 Cache c-state-semi-nonlit-pos-cache was failing when a cache position was,
24941 e.g., between the two characters of an opening comment "/*", and additionally
24942 there were an odd number of quote marks (apostrophes) in the comment. This
24943 happened in .../src/xdisp.c in the Emacs master branch around 2017-05-02 at
24944 buffer position 615001.
24946 * lisp/progmodes/cc-defs.el (c-emacs-features): Repurpose symbol
24947 pps-extended-state to mean that there are at least 11 elements in the parser
24950 * lisp/progmodes/cc-engine.el (c-cache-to-parse-ps-state)
24951 (c-parse-ps-state-to-cache): Rewrite these to use enhanced cache element list
24952 types which indicate potentially being inside two-char constructs.
24953 (c-parse-ps-state-below): Rewrite to use the new versions of the above two
24956 2017-05-07 Glenn Morris <rgm@gnu.org>
24958 Silence an mh-compat compiler warning
24960 * lisp/mh-e/mh-compat.el (mh-url-unreserved-chars): Always define.
24962 2017-05-07 Glenn Morris <rgm@gnu.org>
24964 Evaluate mh-require when compiling
24966 * lisp/mh-e/mh-alias.el, lisp/mh-e/mh-folder.el:
24967 * lisp/mh-e/mh-gnus.el, lisp/mh-e/mh-search.el:
24968 Evaluate mh-require when compiling, as require is automatically.
24969 * lisp/mh-e/mh-gnus.el: No longer disable byte-compilation.
24971 2017-05-07 Glenn Morris <rgm@gnu.org>
24973 Remove obsolete method of changing byte-compile-dest-file
24975 * lisp/emacs-lisp/bytecomp.el (byte-compile-dest-file):
24976 Define unconditionally.
24978 2017-05-07 Paul Eggert <eggert@cs.ucla.edu>
24980 New var write-region-verbose, default nil
24982 By popular demand, write-region char counts are now off by default
24984 * src/fileio.c (write-region-verbose): New Lisp var.
24985 (write_region): Output char count only if the var is non-nil.
24986 * doc/emacs/files.texi (Misc File Ops), etc/NEWS: Document this.
24988 2017-05-07 Glenn Morris <rgm@gnu.org>
24990 Write autoloads file atomically
24992 * lisp/emacs-lisp/autoload.el (autoload--save-buffer):
24993 New function, to save buffer atomically.
24994 (autoload-save-buffers, update-directory-autoloads):
24995 Use autoload--save-buffer.
24996 * lisp/Makefile.in ($(lisp)/loaddefs.el):
24997 No longer write to a temp file by hand.
24999 2017-05-07 Glenn Morris <rgm@gnu.org>
25001 Write autoloads file once only
25003 * lisp/emacs-lisp/autoload.el (autoload-find-generated-file):
25004 Simplify. Don't bother about ensuring the output file exists.
25005 (autoload-generated-file): Add doc.
25006 (autoload-ensure-writable): Update doc.
25007 (autoload-ensure-file-writeable): Handle non-existing file.
25008 (autoload-ensure-default-file): Remove function.
25010 2017-05-07 Paul Eggert <eggert@cs.ucla.edu>
25012 Port .gdbinit to GDB 7.11.1 + Python 2.7.12
25014 * src/.gdbinit (Lisp_Object_Printer.to_string):
25015 Explicitly convert integer val to 'int', so that
25016 older GDBs do not complain about the conversion.
25017 * src/lisp.h (Lisp_Object) [CHECK_LISP_OBJECT_TYPE]:
25018 Give the struct a tag, so that older GDB pretty-printers have a
25019 tag to hang their hat on.
25021 2017-05-06 Paul Eggert <eggert@cs.ucla.edu>
25023 Pretty-print const Lisp_Objects in .gdbinit
25025 * src/.gdbinit (Emacs_Pretty_Printers.__call__):
25026 Compare unqualified type to Lisp_Object, to do the right thing
25027 when the expression has type ‘Lisp_Object const’.
25028 Problem reported by Eli Zaretskii in:
25029 https://lists.gnu.org/r/emacs-devel/2017-05/msg00138.html
25031 2017-05-06 Paul Eggert <eggert@cs.ucla.edu>
25033 Pacify GCC setjmp/longjmp warning
25035 * src/eval.c (internal_lisp_condition_case): Do not modify local
25036 var VAR, to pacify GCC’s setjmp/longjmp warning which in some
25037 cases mistakenly diagnoses VAR possibly being modified between a
25038 setjmp and a longjmp.
25040 2017-05-06 Philipp <phst@google.com>
25042 Fix bootstrap build of files.el
25044 * lisp/files.el (file-name-non-special): Don't use cl-letf.
25046 2017-05-06 Eli Zaretskii <eliz@gnu.org>
25048 Fix last change for MS-Windows
25050 * test/src/emacs-module-tests.el (module-function-object): Port to
25053 2017-05-06 Philipp Stephani <phst@google.com>
25055 Introduce new misc type for module function
25057 This resolves a couple of FIXMEs in emacs-module.c.
25059 * src/lisp.h (MODULE_FUNCTIONP, XMODULE_FUNCTION): New functions.
25061 * src/alloc.c (make_module_function): New function.
25062 (mark_object): GC support.
25064 * src/data.c (Ftype_of, syms_of_data): Handle module function type.
25066 * src/print.c (print_object): Print support for new type.
25068 * src/emacs-module.c (module_make_function, Finternal_module_call):
25069 Use new module function type, remove FIXMEs.
25070 (module_format_fun_env): Adapt and give it external linkage.
25072 * test/src/emacs-module-tests.el (module-function-object): Add unit
25075 2017-05-06 Philipp Stephani <phst@google.com>
25077 Fix quoted files for 'verify-visited-file-modtime'
25081 * lisp/files.el (file-name-non-special): Set the file name for the
25084 * test/lisp/files-tests.el (files-tests--file-name-non-special--buffers):
25086 (files-tests--with-advice, files-tests--with-temp-file): New helper
25089 2017-05-06 Eli Zaretskii <eliz@gnu.org>
25091 * src/fileio.c (write_region): Don't say "1 characters". (Bug#26796)
25093 2017-05-06 Eli Zaretskii <eliz@gnu.org>
25095 Turn on GC_CHECK_MARKED_OBJECTS by default under ENABLE_CHECKING
25097 * src/alloc.c (GC_CHECK_MARKED_OBJECTS): Define to 1 by default of
25098 ENABLE_CHECKING is defined.
25099 (mark_object): Test for GC_CHECK_MARKED_OBJECTS being non-zero,
25100 instead of being defined.
25102 2017-05-06 Tom Tromey <tom@tromey.com>
25104 Fix erc-join with channel password
25107 * lisp/erc/erc-join.el (erc-autojoin-after-ident): Switch order of
25109 (erc-autojoin-channels, erc-autojoin-add, erc-autojoin-remove):
25111 (erc-server-join-channel): Move to erc.el.
25112 * lisp/erc/erc.el (erc-server-join-channel): Move from erc-join.el.
25113 (erc-cmd-JOIN): Use erc-server-join-channel.
25115 2017-05-06 Tino Calancha <tino.calancha@gmail.com>
25117 Ensure the created temp file in a test is new
25119 * test/lisp/buff-menu-tests.el (buff-menu-24962): Use `make-temp-file'
25120 to create the temp file.
25122 2017-05-06 Glenn Morris <rgm@gnu.org>
25124 Decruftify dns-mode.el a little bit
25126 * lisp/textmodes/dns-mode.el (dns-mode-control-entities):
25128 (dns-mode-control-entity, dns-mode-bad-control-entity)
25129 (dns-mode-type, dns-mode-class): New faces.
25130 (dns-mode-control-entity-face, dns-mode-bad-control-entity-face)
25131 (dns-mode-type-face, dns-mode-class): Make these variables use the
25132 new faces, and mark as obsolete.
25133 (dns-mode-font-lock-keywords): Use dns-mode-control-entities.
25135 2017-05-06 Paul Eggert <eggert@cs.ucla.edu>
25137 Pretty-print Lisp_Object values in GDB
25139 * src/.gdbinit: Add a pretty-printer for Lisp_Object values. Now,
25140 GDB displays them as "XIL(0xXXX)" rather than displaying them
25141 as "..." when CHECK_LISP_OBJECT_TYPE is in effect and as "DDDDD"
25144 2017-05-05 Peder O. Klingenberg <peder@klingenberg.no>
25146 Tweak dns-mode font-lock
25148 * lisp/textmodes/dns-mode.el (dns-mode-font-lock-keywords):
25149 Highlight $TTL as a control entity. (Bug#26780)
25151 2017-05-05 Glenn Morris <rgm@gnu.org>
25153 Fontify the doc-string in some CL forms as such
25155 * lisp/emacs-lisp/lisp-mode.el (defconstant, defparameter):
25156 Add the doc-string-elt property. (Bug#26778)
25158 2017-05-05 Glenn Morris <rgm@gnu.org>
25160 * lisp/emacs-lisp/cl-lib.el (cl-mapcar): Remove recent autoload cookie.
25162 2017-05-05 Dmitry Gutov <dgutov@yandex.ru>
25164 cl-defmethod: Make the edebug spec more technically correct
25166 * lisp/emacs-lisp/cl-generic.el (cl-defmethod): Denote the
25167 edebug spec part for qualifiers as [&rest atom], per
25168 https://lists.gnu.org/r/emacs-devel/2017-05/msg00053.html.
25170 2017-05-05 Mike Kupfer <mkupfer@alum.berkeley.edu>
25172 Fix MH-E not to load cl at runtime (Bug#25552)
25174 * lisp/mh-e/mh-acros.el (defun-mh): Check at runtime, not
25175 compile time, whether the target is bound.
25176 * lisp/mh-e/mh-compat.el: Enable compilation. Pull in
25177 mh-acros at compile time.
25178 Authored-by: Glenn Morris <rgm@gnu.org>, Noam Postavsky
25179 <npostavs@users.sourceforge.net>
25181 2017-05-04 Jean-Christophe Helary <jean.christophe.helary@gmail.com>
25183 Multiline support in NS "Open Selected File" service.
25185 * lisp/term/ns-win.el (ns-open-file-service): new function. Wraps the
25186 original call in a (split-string) to create as many calls as there
25188 (ns-spi-service-call): Call `ns-open-file-service' instead of
25191 2017-05-04 Göktuğ Kayaalp <self@gkayaalp.com>
25193 Require cl-lib at runtime in vc-hg
25195 * lisp/vc/vc-hg.el: Require cl-lib at runtime as well (bug#26609).
25197 2017-05-04 Tino Calancha <tino.calancha@gmail.com>
25199 Inherit incompatible/obsolete package faces from error
25201 Don't use the same face for installed packages as for incompatible
25203 * lisp/emacs-lisp/package.el (package-status-incompat): Inherit from error.
25205 2017-05-04 Michael Albinus <michael.albinus@gmx.de>
25207 Set process property `adjust-window-size-function' to `ignore' in Tramp
25209 * lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
25210 (tramp-adb-maybe-open-connection):
25211 * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
25212 * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band)
25213 (tramp-maybe-open-connection):
25214 * lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory)
25215 (tramp-smb-handle-file-acl, tramp-smb-handle-set-file-acl)
25216 (tramp-smb-maybe-open-connection): Set process property
25217 `adjust-window-size-function' to `ignore'.
25219 2017-05-04 Nicolas Petton <nicolas@petton.fr>
25221 * lisp/emacs-lisp/seq.el: Bump seq version.
25223 2017-05-04 Damien Cassou <damien@cassou.me>
25225 Add seq-set-equal-p to test for set equality
25227 * lisp/emacs-lisp/seq.el (seq-set-equal-p): Add function to compare
25228 two lists as if they were sets.
25230 * test/lisp/emacs-lisp/seq-tests.el (test-seq-set-equal-p): Add test
25231 for seq-set-equal-p.
25233 2017-05-04 Paul Eggert <eggert@cs.ucla.edu>
25237 * lisp/gnus/nndiary.el (nndiary-last-occurrence):
25238 Rename from nndiary-last-occurence.
25239 (nndiary-next-occurrence):
25240 Rename from nndiary-next-occurence. All uses changed.
25242 2017-05-04 Paul Eggert <eggert@cs.ucla.edu>
25244 Merge from pkg-config
25246 * m4/pkg.m4: Copy from pkg-config 0.29.1.
25248 2017-05-04 Tom Tromey <tom@tromey.com>
25250 Add color highlighting to css-mode
25253 * lisp/textmodes/css-mode.el (css--color-map): New constant.
25254 (css-value-class-alist): Use css--color-map.
25255 (css--number-regexp, css--percent-regexp)
25256 (css--number-or-percent-regexp, css--angle-regexp): New constants.
25257 (css--color-skip-blanks, css--rgb-color, css--hsl-color): New
25259 (css--colors-regexp): New constant.
25260 (css--hex-color, css--named-color, css--compute-color)
25261 (css--contrasty-color, css--fontify-colors)
25262 (css--fontify-region): New functions.
25263 (css-mode): Set font-lock-fontify-region-function.
25264 (css-mode-syntax-table): Set syntax on more characters.
25265 (css-fontify-colors): New defcustom.
25266 (scss-mode-syntax-table): Define syntax for ?$ and ?%.
25267 * test/lisp/textmodes/css-mode-tests.el (css-test-property-values):
25269 (css-test-rgb-parser, css-test-hsl-parser)
25270 (css-test-named-color): New tests.
25271 * etc/NEWS: Add entry.
25273 2017-05-03 Michael Albinus <michael.albinus@gmx.de>
25277 * lisp/files.el (delete-directory): Call file name handler
25278 with `trash' argument.
25280 * lisp/net/ange-ftp.el (ange-ftp-delete-directory):
25281 * lisp/net/tramp-sh.el (tramp-sh-handle-delete-directory):
25282 Add TRASH arg. Implement it. (Bug#26763)
25283 (tramp-get-remote-trash): Check for `delete-by-moving-to-trash'.
25285 * lisp/net/tramp-adb.el (tramp-adb-handle-delete-directory):
25286 * lisp/net/tramp-smb.el (tramp-smb-handle-delete-directory):
25289 2017-05-03 Paul Eggert <eggert@cs.ucla.edu>
25291 Use ptrdiff_t, not int, for stack sizes
25293 * src/thread.c (invoke_thread_function):
25294 * src/xterm.c (x_cr_export_frames):
25295 Don’t assume SPECPDL_INDEX fits in ‘int’.
25297 2017-05-03 Paul Eggert <eggert@cs.ucla.edu>
25299 Check list object type if --enable-gcc-warnings
25301 * configure.ac (--enable-check-lisp-object-type):
25302 Default to "yes" if --enable-gcc-warnings is not "no".
25303 * etc/NEWS: Mention this.
25304 * src/eval.c (internal_lisp_condition_case): Fix some glitches
25305 with 'volatile' uncovered by the above: in particular, 'clauses'
25306 should be a pointer to volatile storage on the stack, and need not
25307 be volatile itself. Use an int, not ptrdiff_t, to count clauses.
25308 Don’t bother gathering binding count if VAR is nil. Use
25309 more-specific local names to try to clarify what’s going on.
25311 2017-05-02 Glenn Morris <rgm@gnu.org>
25313 Tweak auth-source-pass.el to avoid run-time subr-x
25315 * lisp/auth-source-pass.el (auth-source-pass--parse-data):
25316 Avoid needing subr-x at run-time.
25318 2017-05-02 Charles A. Roelli <charles@aurox.ch>
25320 Constrain non-child frames to screen area in OS X
25322 * src/nsterm.m (constrainFrameRect:toScreen:): Constrain non-child
25323 frames in OS X, if they would otherwise go offscreen.
25327 2017-05-02 Michael Albinus <michael.albinus@gmx.de>
25329 Fix error in completion for separate Tramp syntax
25331 * lisp/net/tramp.el (tramp-completion-file-name-regexp-separate):
25334 * test/lisp/net/tramp-tests.el (tramp-test24-file-name-completion):
25335 Run method and host name completion for all syntaxes.
25337 2017-05-02 Eli Zaretskii <eliz@gnu.org>
25339 Avoid compilation warnings
25341 * src/w32fns.c (Fx_file_dialog, w32_parse_and_hook_hot_key):
25342 * src/w32term.c (x_draw_glyph_string):
25343 * src/w32fns.c (compute_tip_xy):
25344 * src/w32font.c (w32font_text_extents):
25345 * src/w32menu.c (set_frame_menubar):
25346 * src/search.c (Freplace_match): Avoid compiler warnings in
25349 2017-05-02 Paul Eggert <eggert@cs.ucla.edu>
25354 2017-05-02 utimens: port to Emacs + MS-Windows
25355 * lib/utimens.c: Copy from gnulib.
25357 2017-05-02 Gemini Lasswell <gazally@runbox.com>
25359 Fix Edebug specs for 'cl-defmethod' and 'defmethod'
25361 * lisp/emacs-lisp/cl-generic.el (cl-defmethod): Change Edebug spec
25362 to make Edebug generate a new symbol for each method (Bug#24753) and
25363 to support a string following :extra (Bug#23995).
25364 * lisp/emacs-lisp/eieio-compat.el (defmethod): Change Edebug spec to
25365 make Edebug generate a new symbol for each method (Bug#24753).
25367 2017-05-02 Eli Zaretskii <eliz@gnu.org>
25369 Temporary fix for the MS_Windows build
25371 * nt/inc/ms-w32.h (WIN32_LEAN_AND_MEAN): Define to an empty value,
25372 to be consistent with Gnulib's utimens.c. This is because utimens.c
25373 unconditionally defines WIN32_LEAN_AND_MEAN to an empty value, so the
25374 previous definition here conflicted with that.
25376 2017-05-02 Paul Eggert <eggert@cs.ucla.edu>
25378 Port format-time-string to MS-Windows better
25380 * test/src/editfns-tests.el (format-time-string-with-zone):
25381 Port test cases to MS-Windows.
25383 2017-05-02 Paul Eggert <eggert@cs.ucla.edu>
25388 2017-05-01 New module 'localtime-buffer'
25389 2017-04-30 utimens: Add support for native Windows
25390 * admin/merge-gnulib (AVOIDED_MODULES): Add tzset.
25391 * configure.ac (tzset): No need for Emacs itself to check now.
25392 * lib/gettimeofday.c, lib/time.in.h, lib/time_rz.c, lib/utimens.c:
25393 * m4/gettimeofday.m4, m4/time_h.m4, m4/time_rz.m4: Copy from gnulib.
25394 * lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
25395 * lib/localtime-buffer.c, lib/localtime-buffer.h:
25396 * m4/localtime-buffer.m4: New files, copied from gnulib.
25397 * src/editfns.c (init_editfns): Assume tzset is callable.
25399 2017-05-01 Dmitry Gutov <dgutov@yandex.ru>
25401 Speed up project-find-regexp for simple regexps
25403 * lisp/progmodes/xref.el (xref--regexp-syntax-dependent-p):
25405 (xref--collect-matches): Use it. Don't try to enable the
25406 appropriate major mode and file-local variables if the regexp
25407 does not depend on the buffer's syntax (bug#26710).
25408 (xref--collect-matches-1): Don't syntax-propertize in that
25411 2017-05-01 Philipp Stephani <phst@google.com>
25413 Warn about missing backslashes during load
25415 * src/lread.c (load_warn_unescaped_character_literals, Fload, read1)
25416 (syms_of_lread): Warn if unescaped character literals are
25418 * lisp/emacs-lisp/bytecomp.el (byte-compile-from-buffer): Check for
25419 unescaped character literals during byte compilation.
25420 * test/src/lread-tests.el (lread-tests--unescaped-char-literals): New
25422 (lread-tests--with-temp-file, lread-tests--last-message): Helper
25423 functions for unit test.
25424 * test/lisp/emacs-lisp/bytecomp-tests.el
25425 (bytecomp-tests--unescaped-char-literals): New unit test.
25426 * test/lisp/emacs-lisp/bytecomp-tests.el (bytecomp-tests--with-temp-file):
25427 Helper macro for unit test.
25429 2017-05-01 Ken Brown <kbrown@cornell.edu>
25431 * configure.ac: Suggest Mailutils on Cygwin.
25433 2017-05-01 Paul Eggert <eggert@cs.ucla.edu>
25435 Don’t stress-test time zones near the Epoch
25437 * test/src/editfns-tests.el (format-time-string-with-zone)
25438 (format-time-string-with-outlandish-zone): Don’t format
25439 timestamps near the Epoch, as this runs into bugs on MS-Windows,
25440 and we don’t want to worry about those bugs.
25442 2017-05-01 Glenn Morris <rgm@gnu.org>
25444 Tweak vc-tests.el for bzr
25446 * test/lisp/vc/vc-tests.el (vc-test--working-revision):
25447 Handle test environments where HOME does not exist.
25449 2017-05-01 Dmitry Gutov <dgutov@yandex.ru>
25451 vc-git-state: Return `ignored' as appropriate with newer Git
25453 * lisp/vc/vc-git.el
25454 (vc-git--program-version): New variable.
25455 (vc-git--program-version): New function.
25456 (vc-git-state): Use it to choose whether to add '--ignored' (bug#19343).
25458 2017-05-01 Dmitry Gutov <dgutov@yandex.ru>
25460 vc-git-state: Bring back CentOS 6 compatibility
25462 * lisp/vc/vc-git.el (vc-git-state):
25463 Bring back CentOS 6 compatibility (bug#19343).
25465 2017-05-01 Martin Rudalics <rudalics@gmx.at>
25467 Rewrite w32fns.c's `x_set_menu_bar_lines'
25469 * src/w32fns.c (x_set_menu_bar_lines): Redraw frame immediately
25470 regardless of whether menu bar is added or removed. Clear
25471 under internal border iff a W32 window exists. Store either 0
25472 or 1 as new parameter value.
25473 (x_change_tool_bar_height): Use FRAME_W32_WINDOW instead of
25476 2017-05-01 Michael Albinus <michael.albinus@gmx.de>
25478 Fix filenotify-tests.el for cygwin
25480 * test/lisp/filenotify-tests.el (file-notify--test-read-event):
25481 Add an additional `sit-for'.
25482 (file-notify-test02-rm-watch): Add an additional
25483 `file-notify--test-read-event' call.
25485 2017-05-01 Jonathan Ganc <jonganc@gmail.com>
25487 Speed up vc-git-status and make it more precise
25489 * lisp/vc/vc-git.el (vc-git-state)
25490 (vc-git--git-status-to-vc-state): Update 'vc-git-state' to use
25491 'git status', so that 'vc-git-state' can now return 'ignored',
25492 'conflict', or 'unregistered' when appropriate. Discussed in
25493 bug#26066. Fixes bug#19343.
25495 2017-05-01 Dmitry Gutov <dgutov@yandex.ru>
25497 Fix Git revision navigation in currently removed directories
25499 * lisp/vc/vc-git.el (vc-git-next-revision): Use the repo root as
25500 default-directory because FILE's parent directory might not exist
25501 anymore (bug#26345).
25503 2017-04-30 Paul Eggert <eggert@cs.ucla.edu>
25508 2017-04-30 strftime-fixes: New module
25509 2017-04-30 mktime: Work around TZ problem on native Windows
25510 2017-04-30 ctime, localtime: New modules
25511 2017-04-30 gettimeofday: Provide higher resolution on native Windows
25512 2017-04-29 utime-h: Modernize handling of 'struct utimbuf'
25513 2017-04-29 Make use of module 'utime-h'
25514 2017-04-30 Fix a few typos
25515 * admin/merge-gnulib (AVOIDED_MODULES): Avoid utime-h, too.
25516 * lib/gettimeofday.c, lib/mktime.c, lib/time.in.h, lib/utimens.c:
25517 * m4/gettimeofday.m4, m4/include_next.m4, m4/mktime.m4:
25518 * m4/strftime.m4, m4/time_h.m4, m4/timegm.m4, m4/utimens.m4:
25520 * lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
25522 2017-04-30 Eli Zaretskii <eliz@gnu.org>
25524 Don't lose key bindings on mis-spelled text in flyspell-mode
25526 * lisp/textmodes/flyspell.el (flyspell-mouse-map): Bind mouse-2
25528 (make-flyspell-overlay): If the mis-spelled text already has a
25529 'keymap' property, make that keymap the parent of
25530 flyspell-mouse-map, so as not to lose the parent's bindings.
25533 2017-04-30 Martin Rudalics <rudalics@gmx.at>
25535 Fix `delete-frame' behavior including Bug#26682
25537 * src/frame.c (other_frames): Accept two arguments now. Don't
25538 care about minibuffer window. Don't care about visibility when
25539 called from delete_frame with FORCE true (Bug#26682).
25540 (delete_frame, Fmake_frame_invisible): Adjust other_frames
25542 * src/w32term.c (w32_read_socket): Don't add a move frame event
25543 for an invisible frame.
25544 * lisp/frame.el (handle-delete-frame): Don't kill Emacs when
25545 attempting to delete a surrogate minibuffer frame.
25547 2017-04-30 Paul Eggert <eggert@cs.ucla.edu>
25551 This avoids incorporating the following, which I suspect are
25552 more trouble for Emacs than they’re worth:
25553 2017-04-29 stat, fstat: fix time_t etc. on native Windows platforms
25554 * admin/merge-gnulib (AVOIDED_MODULES): Avoid stat, too.
25555 * lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
25556 * lib/pathmax.h, lib/stat.c, m4/pathmax.m4, m4/stat.m4: Remove.
25558 2017-04-30 Paul Eggert <eggert@cs.ucla.edu>
25560 Fix buffer overflow in make-docfile
25562 * lib-src/make-docfile.c (scan_c_stream): Check for buffer
25563 overflow when reading an identifier. Use a static buffer for NAME
25564 rather than a small dynamically-allocated buffer.
25566 2017-04-30 Paul Eggert <eggert@cs.ucla.edu>
25571 2017-04-29 getopt: port to Solaris 10 with circa-1997 glibc getopt.h
25572 * lib/getopt-pfx-ext.h: Copy from gnulib.
25573 * lib/gnulib.mk.in: Regenerate.
25575 2017-04-30 Tino Calancha <tino.calancha@gmail.com>
25577 Fix dependency error during bootstrap
25579 * lisp/files.el: Require pcase and easy-mmode at compile time.
25581 2017-04-30 Mats Lidell <mats.lidell@cag.se>
25583 * etc/tutorials/TUTORIAL.sv: synced with TUTORIAL
25585 2017-04-29 Philipp Stephani <phst@google.com>
25587 Reimplement auto-saving to visited files
25589 This reacts to confusing behavior of 'auto-save-visited-file-name',
25592 * lisp/files.el (auto-save-visited-interval): New customization option.
25593 (auto-save-visited-mode): New global minor mode.
25594 (auto-save-visited-file-name): Make obsolete.
25595 (auto-save--timer): New internal helper variable.
25597 * doc/emacs/files.texi (Auto Save Files): Document
25598 'auto-save-visited-mode' instead of obsolete
25599 'auto-save-visited-file-name'.
25600 (Auto Save Control): Document customization option
25601 'auto-save-visited-interval'.
25603 2017-04-29 Paul Eggert <eggert@cs.ucla.edu>
25605 Allow bypassing of some checks when merging
25607 * build-aux/git-hooks/pre-commit: Don't check merged-in changes.
25609 2017-04-29 Philipp Stephani <phst@google.com>
25611 Integrate module test with normal test suite
25613 * test/Makefile.in (ELFILES): Exclude module test if modules aren't
25615 (EMACS_TEST_DIRECTORY): Expand test directory so that it's set
25616 correctly even if Emacs changes the current directory.
25617 ($(srcdir)/src/emacs-module-tests.log)
25618 ($(test_module)): Proper dependency tracking for test module.
25620 * test/data/emacs-module/Makefile (ROOT): Adapt to new location.
25621 Remove 'check' target and EMACS variable, which are no longer
25623 (SO): Change to include period.
25625 * test/src/emacs-module-tests.el (mod-test): Use EMACS_TEST_DIRECTORY
25626 environment variable to reliably find test data.
25628 * configure.ac (HAVE_MODULES, MODULES_SUFFIX): Add necessary
25631 2017-04-28 Glenn Morris <rgm@gnu.org>
25633 Broaden comint-password-prompt-regexp
25635 * lisp/comint.el (comint-password-prompt-regexp):
25636 Broaden the regexp, for non-English locales. (Bug#26698)
25638 2017-04-28 Stefan Monnier <monnier@iro.umontreal.ca>
25640 * lisp/auth-source.el (auth-source-backend-parse): `return' -> cl-return.
25642 2017-04-28 Bartosz Duszel <bartosz.duszel@gmail.com>
25644 Don't pass the value of point to 'push-mark', as that's the default.
25646 * lisp/textmodes/bib-mode.el (mark-bib):
25647 * lisp/simple.el (mark-whole-buffer, yank):
25648 * lisp/ses.el (ses--advice-yank, ses-mark-row, ses-mark-column):
25649 * lisp/progmodes/xscheme.el (xscheme-yank):
25650 * lisp/progmodes/verilog-mode.el (verilog-mark-defun):
25651 * lisp/progmodes/perl-mode.el (perl-mark-function):
25652 * lisp/progmodes/pascal.el (pascal-mark-defun):
25653 * lisp/progmodes/meta-mode.el (meta-mark-defun):
25654 * lisp/progmodes/icon.el (mark-icon-function):
25655 * lisp/progmodes/cc-cmds.el (c-mark-function):
25656 * lisp/obsolete/vip.el (ex-goto):
25657 * lisp/obsolete/vi.el (vi-put-before):
25658 * lisp/mouse.el (mouse-yank-primary):
25659 * lisp/menu-bar.el (menu-bar-select-yank):
25660 * lisp/mail/sendmail.el (mail-yank-original):
25661 * lisp/hexl.el (hexl-beginning-of-buffer, hexl-end-of-buffer):
25662 * lisp/emulation/viper-cmd.el (viper-mark-beginning-of-buffer)
25663 (viper-mark-end-of-buffer):
25664 * lisp/cedet/semantic/senator.el (senator-mark-defun):
25665 * lisp/allout.el (allout-mark-topic): Remove unnecessary argument
25666 `(point)' from calls to `push-mark'. (Bug#25565)
25668 2017-04-28 Glenn Morris <rgm@gnu.org>
25670 Merge from origin/emacs-25
25672 784602b1050 (origin/emacs-25) ; Add release notice
25673 3a34412caae (tag: emacs-25.2) Set Emacs version to 25.2 and update AU...
25674 56a4461a48d ; Move stray item from admin/notes/repo to CONTRIBUTE
25675 2b0d1118199 ; CONTRIBUTE: Remove stray header.
25676 f2ab09ec60d Fix a typo in indexing the user manual
25677 bc55a574235 * lisp/menu-bar.el (kill-this-buffer): Doc fix. (Bug#26466)
25678 a6d50401b4b Document 'line-pixel-height'
25679 0c55cf43e61 * search.c (Fre_search_forward, Fre_search_backward): Imp...
25680 c7ed57eaef4 Mention that processes start in default-directory (Bug#18...
25681 856ec9ffa1f * src/xdisp.c (vmessage, message): Clarify commentary.
25682 849a0aaa1c9 Belated fixes for admin.el's M-x make-manuals-dist
25683 84938d79698 default-directory: Remark that it must be a directory name
25684 3f0d047d2eb Delete confuse statement in manual
25685 ee1bd94dd0c Improve packaging documentation
25686 fb18bff91f0 Expand manual section on quitting windows
25687 9a737079645 Fix docstring of dabbrev-abbrev-char-regexp
25688 afe8849bac1 * doc/misc/cl.texi (Iteration Clauses): Clarify example (...
25689 ada79442c07 ;* doc/misc/info.texi (Choose menu subtopic): Improve ind...
25690 d38fd9229c0 Narrow scope of modification hook renabling in org-src fo...
25691 e0e9db4c84a ; Spelling fix
25697 # lisp/ldefs-boot.el
25699 2017-04-28 Glenn Morris <rgm@gnu.org>
25701 * doc/misc/auth.texi: Commas don't work in node names.
25703 * test/lisp/auth-source-pass-tests.el: Fix loading of cl-lib.
25705 2017-04-28 Paul Eggert <eggert@cs.ucla.edu>
25707 Test format-time-string with zone arg
25709 * test/src/editfns-tests.el (format-time-string-with-zone)
25710 (format-time-string-with-outlandish-zone): New tests.
25712 2017-04-28 Paul Eggert <eggert@cs.ucla.edu>
25717 2017-04-24 time_rz: fix heap buffer overflow vulnerability
25718 2017-04-23 stat-time: Update comments.
25719 2017-04-22 ftoastr: cite a newer paper
25720 2017-04-21 gettext-h: Avoid -Wundef warning.
25721 * lib/ftoastr.c, lib/gettext.h, lib/stat-time.h, lib/time_rz.c:
25722 * m4/getopt.m4: Copy from gnulib.
25723 * m4/gnulib-comp.m4: Regenerate.
25725 2017-04-27 Damien Cassou <damien@cassou.me>
25727 auth-source-pass: Add documentation; fix tests and indentation.
25729 * doc/misc/auth.texi: Document new integration with Pass. Use @itemize
25730 instead of @enumerate.
25731 * lisp/auth-source-pass.el: Fix indentation.
25732 (auth-source-pass--remove-directory-name): Remove.
25733 * test/lisp/auth-source-pass-tests.el: Adjust test macros.
25735 2017-04-27 foudfou <foudil.newbie+git@gmail.com>
25737 auth-source-pass: Enable finding entries by "host/username"
25739 * lisp/auth-source-pass.el: Enable finding entries by "host/username".
25740 * test/lisp/auth-source-pass-tests.el: Adjust tests to check it.
25742 2017-04-27 Damien Cassou <damien@cassou.me>
25744 Integrate auth-source with password-store
25746 * lisp/auth-source-pass.el: auth-source backend for password-store.
25747 * test/lisp/auth-source-pass-tests.el: Tests for auth-source-pass
25750 2017-04-27 Damien Cassou <damien@cassou.me>
25752 * lisp/auth-source.el: Document parser functions.
25754 2017-04-27 Ted Zlatanov <tzz@lifelogs.com>
25756 auth-source: factor out parsers and add tests
25758 * lisp/auth-source.el: Factor out the source parsers. Clean up comments.
25759 * test/lisp/auth-source-tests.el: Add tests.
25761 2017-04-27 Martin Rudalics <rudalics@gmx.at>
25763 Fix doc and customization type of `window-combination-limit' (Bug#26673)
25765 * src/window.c (Vwindow_combination_limit): Fix doc-string.
25766 * lisp/cus-start.el (window-combination-limit): Fix
25767 customization type.
25768 * doc/lispref/windows.texi (Recombining Windows): Fix
25769 documentation of `window-combination-limit'.
25771 2017-04-27 Tino Calancha <tino.calancha@gmail.com>
25773 Drop face from hi-lock--unused-faces only when used
25775 * lisp/hi-lock.el (hi-lock-set-pattern): If REGEXP is already
25776 highlighted, then push FACE into hi-lock--unused-faces (Bug#26666).
25777 * test/lisp/hi-lock-tests.el (hi-lock-bug26666): Add test.
25779 2017-04-26 Alan Third <alan@idiocy.org>
25781 Fix macOS version check (bug#26664)
25783 * src/nsterm.m (initFrameFromEmacs): Prevent window tabbing mode on
25784 macOS versions 10.12+.
25786 2017-04-26 Glenn Morris <rgm@gnu.org>
25788 Make charprop.el provide a feature
25790 * admin/unidata/unidata-gen.el (unidata-gen-charprop):
25792 * lisp/loadup.el: Use the charprop feature.
25794 2017-04-26 Glenn Morris <rgm@gnu.org>
25796 * lisp/loadup.el: Get charprop.el into etc/DOC again.
25798 2017-04-26 Stefan Monnier <monnier@iro.umontreal.ca>
25800 * lisp/ido.el (ido-everywhere): Use add-function.
25802 2017-04-26 Martin Rudalics <rudalics@gmx.at>
25804 Try to fix latest fix of w32_mouse_position
25806 * src/w32term.c (w32_mouse_position): Fix a bug introduced by
25807 latest fix and try to make the affected code more rigorous.
25809 2017-04-26 Eli Zaretskii <eliz@gnu.org>
25811 Avoid segfaults when 'find-font' is invoked for a TTY frame
25813 * src/font.c (font_pixel_size): Don't call GUI functions if F is a
25814 text-mode frame. (Bug#26646)
25816 2017-04-26 Michael Albinus <michael.albinus@gmx.de>
25818 * lisp/net/tramp.el (tramp-set-connection-local-variables-for-buffer):
25822 2017-04-26 Glenn Morris <rgm@gnu.org>
25824 * src/Makefile.in (leimdir): Remove variable, no longer used.
25826 2017-04-26 Glenn Morris <rgm@gnu.org>
25828 Generate leim-list via lisp/Makefile, not src/Makefile
25830 * src/Makefile.in ($(leimdir)/leim-list.el): Remove rule.
25831 (emacs$(EXEEXT)): Don't depend on leim-list.
25832 * lisp/Makefile.in ($(lisp)/loaddefs.el): Depend on gen-lisp again.
25834 2017-04-25 Alan Third <alan@idiocy.org>
25836 Fix define for GNUstep builds
25838 * src/nsterm.m (initFrameFromEmacs): Fix the ifdef so that GNUstep
25839 doesn't see the code.
25841 2017-04-25 Glenn Morris <rgm@gnu.org>
25843 Suppress intermittent test failure on hydra
25845 * test/lisp/emacs-lisp/eieio-tests/eieio-test-methodinvoke.el
25846 (eieio-test-method-order-list-6): Skip on hydra.
25848 2017-04-25 Alan Third <alan@idiocy.org>
25850 Fix some NS frame handling issues
25852 * src/nsterm.m (FRAME_DECORATED_FLAGS, FRAME_UNDECORATED_FLAGS): New
25853 defines intended to make things tidier.
25854 (x_set_undecorated): Use the new defines.
25855 (windowWillResize): Don't use new macOS 12+ only feature.
25856 (initFrameFromEmacs): Use the new defines, and disable automatic
25857 window tabbing feature in macOS 12.
25858 (x_set_undecorated, x_set_parent_frame, x_set_no_accept_focus,
25859 x_set_z_group): Add NSTRACE notices.
25861 2017-04-25 Glenn Morris <rgm@gnu.org>
25863 Avoid parallel race condition
25865 * lisp/Makefile.in ($(lisp)/loaddefs.el): Remove gen-lisp for now.
25867 2017-04-25 Glenn Morris <rgm@gnu.org>
25869 Generate each unicode lisp file independently
25871 This is better for parallel builds, eg it eliminates race
25872 conditions from having one process write multiple files.
25873 * admin/unidata/Makefile.in (lparen, unifiles): New variables.
25874 Parse unidata-gen.el, not charprop.el, to get the list of uni- files.
25875 (all): Explicitly list the output lisp files.
25876 (PHONY_EXTRAS): Remove.
25877 (${unidir}/charprop.el): Change rule to just be for this file.
25878 (${unifiles}): New rule to write each unicode lisp file.
25879 (extraclean): Simplify.
25880 * admin/unidata/unidata-gen.el (unidata-gen-charprop):
25881 Quieten in batch mode.
25882 (unidata-gen-files): Remove, no longer used.
25883 * lisp/loadup.el: Update command-line parser.
25885 2017-04-25 Glenn Morris <rgm@gnu.org>
25887 Further refactoring in unidata-gen.el
25889 * admin/unidata/unidata-gen.el (unidata-gen-charprop):
25890 New function, split from unidata-gen-files.
25891 (unidata-gen-files): Use unidata-gen-charprop.
25893 2017-04-25 Glenn Morris <rgm@gnu.org>
25895 Allow unidata-gen-file to work independently
25897 * admin/unidata/unidata-gen.el (unidata-gen-file):
25898 Make it work as a stand-alone function in batch mode.
25899 (unidata-gen-files): Pass extra arguments to unidata-gen-file.
25901 2017-04-25 Glenn Morris <rgm@gnu.org>
25903 Preparatory refactoring in unidata-gen.el
25905 * admin/unidata/unidata-gen.el (unidata-gen-file):
25906 New function, split from unidata-gen-files.
25907 (unidata-gen-files): Use unidata-gen-file.
25909 2017-04-25 Glenn Morris <rgm@gnu.org>
25911 Write each generated character property lisp file only once
25913 * admin/unidata/unidata-gen.el (unidata-file-alist):
25914 Rename from unidata-prop-alist. All users changed.
25915 Use file name rather than property name as the key.
25916 (unidata-prop-prop): New function.
25917 (unidata-prop-index, unidata-prop-generator, unidata-prop-docstring)
25918 (unidata-prop-describer, unidata-prop-default, unidata-prop-val-list):
25919 Change to parse the argument rather than unidata-prop-alist.
25920 (unidata-gen-table-character, unidata-gen-table)
25921 (unidata-gen-table-symbol, unidata-gen-table-integer)
25922 (unidata-gen-table-numeric, unidata-gen-table-word-list)
25923 (unidata-gen-table-name, unidata-gen-table-decomposition)
25924 (unidata-gen-table-special-casing): Pass index as an argument.
25925 (unidata-check): Adapt to unidata-file-alist.
25926 Pass index to generator functions.
25927 (unidata-gen-files): Adapt to unidata-file-alist.
25928 Write each output file once only. Overwrite rather than delete.
25930 2017-04-25 Andrew G Cohen <cohen@andy.bu.edu>
25932 Fix requesting sparse articles in gnus
25934 * lisp/gnus/gnus-art.el (gnus-request-article-this-buffer): Delete the
25935 sparse article number from the list, not its id.
25937 2017-04-25 Glenn Morris <rgm@gnu.org>
25939 Don't advertise s_client in tls.el docs
25941 * lisp/net/tls.el (tls-end-of-info, tls-success, tls-untrusted):
25942 Don't mention s_client in docs.
25944 2017-04-25 Rob Browning <rlb@defaultvalue.org>
25946 Remove s_client usage from tls.el
25948 * lisp/net/tls.el (tls-program, tls-checktrust): Remove s_client.
25949 Ref http://bugs.debian.org/766397
25950 https://lists.gnu.org/r/emacs-devel/2014-10/msg00803.html
25952 2017-04-25 Glenn Morris <rgm@gnu.org>
25954 Further robustify cedet bootstrap to loaddefs not yet built
25956 * lisp/cedet/semantic/util.el (semantic-something-to-tag-table):
25957 Avoid void-function error when bootstrapping and semantic/loaddefs.el
25958 does not yet exist.
25960 2017-04-24 Alan Third <alan@idiocy.org>
25962 Fix XBM color rendering in NS port (bug#22060)
25964 src/nsimage.m (setXBMColor): Fix calculation of xbm_fg.
25966 2017-04-24 Vibhav Pant <vibhavp@gmail.com>
25968 Add support for IRCv3 message tags.
25970 * lisp/erc/erc-backend.el:
25971 erc-response: Add `tags' element.
25972 Add (erc-parse-tags).
25973 (erc-parse-server-response): Use (erc-parse-tags) to parse message
25974 tags (if any), and store them in `erc-resopnse' struct.
25976 * lisp/erc/erc.el: (erc-display-message): Expose message tags with text
25977 properties of the corresponding message line.
25979 2017-04-24 Lars Ingebrigtsen <larsi@gnus.org>
25981 Add image sizing tests for an image that's narrow
25983 Needlessly refactor tests for clarity
25985 2017-04-23 Philipp Stephani <phst@google.com>
25987 Add missing remappings for Ido mode
25989 Among others, add a remapping for C-x 4 d, cf. Bug#26360.
25991 * lisp/ido.el (ido-mode): Remap missing commands.
25992 (ido-file-internal, ido-visit-buffer): Add support for new
25994 (ido-display-buffer-other-frame)
25995 (ido-find-alternate-file-other-window, ido-dired-other-window)
25996 (ido-dired-other-frame): New commands.
25998 * test/lisp/ido-tests.el (ido-tests--other-window-frame): Add unit
25999 test for the bindings.
26001 2017-04-23 Martin Rudalics <rudalics@gmx.at>
26003 Let w32_mouse_position pick a child window only if it has a child frame
26005 * src/w32term.c (w32_mouse_position): When using a frame found
26006 by ChildWindowFromPoint make sure it's a child frame (Bug#26615,
26009 2017-04-23 Noam Postavsky <npostavs@gmail.com>
26011 Don't require bytecomp for running ert tests
26013 "Fix ert-tests when running compiled" 2016-12-06 accidentally
26014 introduced a dependency on `bytecomp' into `ert'. As mentioned in
26015 "Avoid ert test failures" 2017-04-18, the accidental dependency of ert
26016 on bytecomp was masked by loading other libraries until recently.
26018 * lisp/emacs-lisp/ert.el (ert--expand-should-1): Only use
26019 `byte-compile-macro-environment' if it's bound.
26020 * test/src/eval-tests.el: Add defvar for dynamic variable
26021 `byte-compile-debug'.
26023 2017-04-23 Andrew G Cohen <cohen@andy.bu.edu>
26025 Eliminate unneeded warp-to-article in gnus article referral
26027 * lisp/gnus/gnus-sum.el (gnus-summary-refer-thread):
26028 (gnus-summary-refer-article): Remove gnus-warp-to article call.
26030 2017-04-23 Andrew G Cohen <cohen@andy.bu.edu>
26032 Allow limiting gnus summary buffers to a thread
26034 * lisp/gnus/gnus-sum.el (gnus-summary-limit-include-thread): Include
26035 an optional argument to allow limiting the summary buffer to just the
26036 thread-related articles.
26037 (gnus-refer-thread-limit-to-thread): Introduce customizable variable
26038 to control whether thread-referral adds the thread to the summary
26039 buffer or limits to just the thread.
26040 (gnus-summary-refer-thread): Use the new variable.
26042 2017-04-23 Andrew G Cohen <cohen@andy.bu.edu>
26044 Correct gnus-newsgroup-limits in gnus when including thread
26046 * lisp/gnus/gnus-sum.el (gnus-summary-limit-include-thread): Should
26047 only add one list of thread-related articles to gnus-newsgroup-limits
26050 2017-04-23 Andrew G Cohen <cohen@andy.bu.edu>
26052 Improve gnus thread matching of similar subjects
26054 * lisp/gnus/gnus-sum.el (gnus-summary-limit-include-thread):
26055 Use the more liberal gnus-general-simplify-subject regexp to
26056 find thread articles with similar subjects.
26058 2017-04-22 Noam Postavsky <npostavs@gmail.com>
26060 Add new `lisp-indent-region' that doesn't reparse the code.
26062 Both `lisp-indent-region' and `lisp-indent-line' now use `syntax-ppss'
26063 to get initial state, so they will no longer indent string literal
26066 * lisp/emacs-lisp/lisp-mode.el (lisp-ppss): New function, like
26067 `syntax-ppss', but with a more dependable item 2.
26068 (lisp-indent-region): New function, like `indent-region-line-by-line'
26069 but additionally keep a running parse state to avoid reparsing the
26070 code repeatedly. Use `lisp-ppss' to get initial state.
26071 (lisp-indent-line): Take optional PARSE-STATE argument, pass it to
26072 `calculate-lisp-indent', use `lisp-ppss' if not given.
26073 (lisp-mode-variables): Set `indent-region-function' to
26074 `lisp-indent-region'.
26076 2017-04-22 Noam Postavsky <npostavs@gmail.com>
26078 Remove ignored argument from lisp-indent-line
26080 * lisp/emacs-lisp/lisp-mode.el (lisp-indent-line): Remove WHOLE-EXP
26081 argument, the behavior has long since been handled in
26082 `indent-for-tab-command'. Also remove redundant `beg' and `shift-amt'
26083 variables and use `indent-line-to'.
26085 2017-04-22 Noam Postavsky <npostavs@gmail.com>
26087 * lisp/emacs-lisp/lisp-mode.el (indent-sexp): Clean up marker.
26089 2017-04-22 Noam Postavsky <npostavs@gmail.com>
26091 Don't reparse the sexp in indent-sexp (Bug#25122)
26093 * lisp/emacs-lisp/lisp-mode.el (calculate-lisp-indent): Let
26094 PARSE-START be a parse state that can be reused.
26095 (indent-sexp): Pass the running parse state to calculate-lisp-indent
26096 instead of the sexp beginning position. Saving the
26097 CONTAINING-SEXP-START returned by `calculate-lisp-indent' is no longer
26098 needed. Don't bother stopping if we don't descend below init-depth,
26099 since we now alway scan the whole buffer (via syntax-ppss) anyway.
26100 * test/lisp/emacs-lisp/lisp-mode-tests.el (indent-sexp): Add blank
26103 2017-04-22 Vibhav Pant <vibhavp@gmail.com>
26105 Add cond test cases for singleton clauses.
26107 * test/lisp/emacs-lisp/bytecomp-tests.el: Add test cond forms where
26108 the default clause is a single non-nil expression.
26110 2017-04-22 Vibhav Pant <vibhavp@gmail.com>
26112 b-c--cond-jump-table-info: Use correct body for singleton clauses
26114 * lisp/emacs-lisp/bytecomp.el (byte-compile-cond-jump-table-info):
26115 When a clause's body consists of a single constant expression, use
26116 that expression as the body to be compiled. This fixes switch bytecode
26117 evaluating to nil to such clauses.
26119 2017-04-22 Philipp Stephani <phst@google.com>
26121 ffap: Don't switch window unless needed
26123 When using ffap-other-window, don't change the window configuration
26124 unless a new buffer has actually been created (Bug#25352).
26126 * lisp/ffap.el (ffap-other-frame): Don't change the window
26127 configuration if no new buffer has been created.
26128 * test/lisp/ffap-tests.el (ffap-other-window--bug-25352): Add unit
26131 2017-04-22 Alan Mackenzie <acm@muc.de>
26133 Fix fontification of C++ declaration with type FOO::FOO.
26135 * lisp/progmodes/cc-engine.el (c-find-decl-spots): Initialize
26136 cfd-top-level properly.
26137 (c-forward-decl-or-cast-1): On finding FOO::FOO, check it is followed by "("
26138 before deciding it is a constructor.
26140 * lisp/progmodes/cc-fonts.el (c-font-lock-complex-decl-prepare): Negate the
26141 result of the c-bs-at-toplevel-p call passed to c-font-lock-declarators
26144 2017-04-22 Philipp Stephani <phst@google.com>
26146 Fix usage of FRAME_Z_GROUP
26148 * src/nsterm.m (initFrameFromEmacs:): FRAME_Z_GROUP does not return a
26149 Lisp object, cf. Bug#26597.
26151 2017-04-22 Alan Third <alan@idiocy.org>
26155 * src/nsfns.m (Fns_frame_z_list_order): Rewrite for GNUstep
26157 * src/nsmenu.m (update_frame_tool_bar): Remove unused variable.
26159 2017-04-21 Alan Third <alan@idiocy.org>
26161 Add no-accept-focus and frame-list-z-order to NS port
26163 * lisp/frame.el (frame-list-z-order): Add NS.
26164 * src/nsfns.m: Add x_set_no_accept_focus to handler struct.
26165 (Fx_create_frame): Handle no-accept-focus parameter.
26166 (ns_window_is_ancestor):
26167 (Fns_frame_list_z_order): New functions.
26168 * src/nsterm.m (x_set_no_accept_focus): New function.
26169 (initFrameFromEmacs): Use EmacsWindow instead of EmacsFSWindow for
26170 non-fullscreen windows.
26171 (EmacsWindow:canBecomeKeyWindow): New function.
26173 2017-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
26175 Improve prefix handling for dash.el
26177 * lisp/emacs-lisp/autoload.el (autoload--make-defs-autoload):
26178 Don't drop dash's "-<letter>" prefixes.
26180 2017-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
26182 * lisp/emacs-lisp/cl-macs.el: Fix symbol-macrolet
26184 Revert 0d112c00ba0ec14bd3014efcd3430b9ddcfe1fc1 (to fix bug#26325)
26185 and use a different fix for bug#26068.
26186 (cl--symbol-macro-key): New function.
26187 (cl--sm-macroexpand, cl-symbol-macrolet): Use it instead of `symbol-name`.
26188 * test/lisp/emacs-lisp/cl-lib-tests.el (cl-lib-symbol-macrolet):
26189 Failure is not expected any more.
26191 2017-04-21 Eli Zaretskii <eliz@gnu.org>
26193 Avoid infinite loop in redisplay when header-line-format is invalid
26195 * src/xdisp.c (handle_invisible_prop): Avoid inflooping when the
26196 string has an invalid %-construct in it and is displayed as part
26197 of mode-line or header-line. (Bug#26586)
26199 2017-04-21 Lars Ingebrigtsen <larsi@gnus.org>
26201 Add tests to check image scaling functionality
26203 This is in preparation to doing further work in this area to avoid
26206 * test/data/image/blank-200x100.png: New file for testing
26209 * test/manual/image-size-tests.el: New file.
26211 2017-04-21 Lars Ingebrigtsen <larsi@gnus.org>
26213 Allow svg-image to take all create-image PROPS
26215 * lisp/svg.el (svg-image): Allow passing in PROPS when
26216 creating an image for convenience.
26218 2017-04-21 George D. Plymale II <georgedp@orbitalimpact.com> (tiny change)
26220 Treat non-erroring lisp call as successful eshell command (Bug#26161)
26222 This lets a compound command like 'cd .. && echo ok' print 'ok',
26223 similar to how most other shells behave.
26225 * lisp/eshell/esh-cmd.el (eshell-exit-success-p): Only check if the
26226 last exit code was zero, rather than first checking whether the last
26227 command returned nil.
26228 (eshell-exec-lisp): Set `eshell-last-command-status' to 1 on error.
26230 2017-04-21 Reuben Thomas <rrt@sc3d.org>
26232 Fix reading of tab settings in whitespace-mode
26234 lisp/whitespace.el (whitespace-indent-tabs-mode)
26235 whitespace-tab-width): Remove these variables. The underlying
26236 variables `indent-tabs-mode' and `tab-width' are already buffer-local
26237 when needed, and whitespace-mode never changes them.
26238 (whitespace-ensure-local-variables): Remove this function, which only
26239 existed to set the above variables.
26240 (whitespace-cleanup-region, whitespace-regexp)
26241 (whitespace-indentation-regexp, whitespace-report-region)
26242 (whitespace-turn-on, whitespace-color-on): Adjust these functions to
26243 use `indent-tabs-mode' and `tab-width' directly, and not call
26244 `whitespace-ensure-local-variables'.
26246 2017-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
26248 * lisp/vc/vc-hg.el (vc-hg-state-fast): Fix compiler warning
26250 by simplifying ascii-test.
26252 2017-04-20 Vibhav Pant <vibhavp@gmail.com>
26254 bytecomp: Don't inline functions that use byte-switch (Bug#26518)
26256 * lisp/emacs-lisp/bytecomp.el (byte-compile-unfold-bcf): Don't inline
26257 FORM if the bytecode uses the byte-switch instruction. It is
26258 impossible to guess the correct stack depth while inlining such
26259 bytecode, resulting in faulty code.
26261 2017-04-20 Nicolas Petton <nicolas@petton.fr>
26263 Set Emacs version to 25.2 and update AUTHORS file
26265 * README: Set Emacs version to 25.2.
26266 * etc/HISTORY: Add release log.
26267 * lisp/ldefs-boot.el:
26269 * ChangeLog.2: Update.
26271 2017-04-20 Noam Postavsky <npostavs@gmail.com>
26273 Don't register "def" as an autoload prefix (Bug#26412)
26275 * lisp/emacs-lisp/autoload.el (autoload--make-defs-autoload): Don't
26276 accept "def" as a prefix.
26278 2017-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
26280 Use substring completion for Info menus and index
26282 * lisp/info.el (Info-complete-menu-item): Add `category' metadata.
26283 (Info-menu): Simplify now that we use the `default' arg of completing-read.
26284 * lisp/minibuffer.el (completion-category-defaults): Use substring
26285 completion for `info-menu`.
26287 2017-04-19 Glenn Morris <rgm@gnu.org>
26289 Remove some explicit runtime loads of pcase
26291 Pcase is macros, so these should have used eval-when-compile.
26292 Anyway, pcase entry points are autoloaded, so the compiler handles it.
26293 * lisp/profiler.el, lisp/emacs-lisp/eieio-core.el:
26294 * lisp/emacs-lisp/generator.el, lisp/emacs-lisp/subr-x.el:
26295 * lisp/progmodes/xref.el: No need to require pcase.
26297 2017-04-19 Glenn Morris <rgm@gnu.org>
26299 Stop cl-lib loading pcase at runtime
26301 The cause was an unexpanded pcase-defmacro in cl-loaddefs.
26302 * lisp/emacs-lisp/autoload.el (make-autoload):
26303 Treat pcase-defmacro like defmacro.
26305 2017-04-19 Alan Third <alan@idiocy.org>
26307 Note frame documentation exceptions for NS builds
26309 * doc/lispref/frames.texi (Management Parameters, Child Frames): Note
26312 2017-04-19 Alan Third <alan@idiocy.org>
26314 Fix bug introduced by my last commit
26316 * src/nsterm.m (ns_draw_fringe_bitmap): Revert key-mashing accident.
26318 2017-04-19 Alan Third <alan@idiocy.org>
26320 Add new frame functionality to NS port
26322 * lisp/frame.el (frame-restack): Call ns-frame-restack.
26323 * src/keyboard.c (kbd_buffer_get_event) [HAVE_NS]: Enable
26324 MOVE_FRAME_EVENT handling.
26326 * src/frame.c: Enable 'z-group', 'undecorated' and 'parent' frame
26328 * src/nsfns.m: Add x_set_z_group, x_set_parent_frame and
26329 x_set_undecorated (Cocoa only) to handler struct.
26330 (Fx_create_frame): Handle 'z-group', 'parent-frame' and 'undecorated'
26332 (Fns_frame_restack): New function.
26333 * src/nsmenu.m (free_frame_tool_bar, update_frame_tool_bar):
26334 FRAME_TOOLBAR_HEIGHT is no longer a variable.
26335 * src/nsterm.h (NS_PARENT_WINDOW_LEFT_POS, NS_PARENT_WINDOW_TOP_POS):
26336 Add #defines to find the screen position of the parent frame.
26337 (NS_TOP_POS): Remove defun.
26338 (EmacsView): Remove redundant toolbar variables and add createToolbar
26340 (FRAME_NS_TITLEBAR_HEIGHT, FRAME_TOOLBAR_HEIGHT): Always calculate the
26341 values instead of storing them in a variable.
26342 * src/nsterm.m (x_set_offset, windowDidMove): Take parent frame
26343 position into account when positioning frames.
26344 (initFrameFromEmacs): Remove toolbar creation code and handle new
26346 (x_set_window_size): Remove toolbar height calculation.
26348 (x_set_parent_frame):
26349 (x_set_undecorated) [NS_IMPL_COCOA]: New function.
26350 (x_destroy_window): Detach parent if child closes.
26351 (updateFrameSize): Change NSTRACE message to reflect new reality and
26352 no longer reset frame size.
26353 (windowWillResize): Don’t change NS window name when the titlebar
26355 (createToolbar): Move toolbar creation code into it’s own method.
26356 (toggleFullScreen): FRAME_TOOLBAR_HEIGHT and FRAME_NS_TITLEBAR_HEIGHT
26357 are no longer variables.
26358 (windowDidMove): Fire MOVE_FRAME_EVENT Emacs event.
26360 2017-04-19 Glenn Morris <rgm@gnu.org>
26362 Tweak bytecomp's loading of cl-extra
26364 * lisp/emacs-lisp/bytecomp.el: Don't force load of cl-extra in a
26365 post-bootstrap emacs where cl-loaddefs does exist.
26367 2017-04-19 Glenn Morris <rgm@gnu.org>
26369 Avoid unnecessary loading of subr-x at run-time
26371 * lisp/doc-view.el, lisp/filenotify.el, lisp/info-look.el:
26372 * lisp/svg.el, lisp/emacs-lisp/byte-opt.el, lisp/net/shr.el:
26373 * lisp/textmodes/sgml-mode.el, test/lisp/dom-tests.el:
26374 No need to load subr-x at run-time.
26375 * lisp/gnus/nnheader.el: No need to load subr-x.
26377 2017-04-18 michael schuldt <mbschuldt@gmail.com> (tiny change)
26379 Use iteration in math-factorial-iter
26381 * lisp/calc/calc-comb.el (math-factorial-iter):
26382 Use iteration instead of recursion to avoid max-specpdl-size problem.
26384 2017-04-18 Glenn Morris <rgm@gnu.org>
26386 * test/lisp/kmacro-tests.el: Require seq, for seq-concatenate.
26388 2017-04-18 Glenn Morris <rgm@gnu.org>
26390 Avoid ert test failures
26392 * lisp/emacs-lisp/ert.el (ert--expand-should-1):
26393 Avoid errors related to undefined byte-compile-macro-environment.
26394 Somehow masked until very recently because loading seq (eg)
26395 loads bytecomp. http://hydra.nixos.org/build/51730765
26397 2017-04-18 Eli Zaretskii <eliz@gnu.org>
26399 Fix a typo in indexing the user manual
26401 * doc/emacs/cmdargs.texi (General Variables): Fix a horrible typo.
26403 2017-04-18 Noam Postavsky <npostavs@gmail.com>
26405 Fix find-library-name for load-history entries with nil FILE-NAME (Bug#26355)
26407 * lisp/emacs-lisp/find-func.el (find-library--from-load-history):
26408 Rename from find-library--from-load-path. Check for `load-history'
26409 entries with nil FILE-NAMEs. Simplify by not double
26410 checking for suffixes and making use of `locate-file'.
26412 2017-04-18 Alan Third <alan@idiocy.org>
26413 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
26415 Use vfork if possible on Darwin (bug#26397)
26418 * src/conf_post.h (HAVE_WORKING_VFORK): Don't undef.
26419 (vfork): Don't define.
26420 * src/process.c (create_process) [DARWIN_OS]: Use fork if pty_flag is
26421 set, otherwise vfork.
26422 * src/callproc.c (call_process) [DARWIN_OS]: Use TIOCNOTTY to detach
26423 the controlling terminal instead of setsid.
26425 2017-04-18 Fran Litterio <flitterio@gmail.com>
26427 Small erc-kill-channel fix (bug#23700)
26429 * lisp/erc/erc.el (erc-kill-channel): Handle null erc-default-target.
26431 2017-04-18 Glenn Morris <rgm@gnu.org>
26433 ediff: use user-error rather than debug-ignored-errors
26435 * lisp/vc/ediff-diff.el (ediff-prepare-error-list):
26436 * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
26437 * lisp/vc/ediff-init.el (ediff-barf-if-not-control-buffer)
26438 (ediff-check-version):
26439 * lisp/vc/ediff-merg.el (ediff-shrink-window-C):
26440 * lisp/vc/ediff-mult.el (ediff-draw-dir-diffs, ediff-show-dir-diffs)
26441 (ediff-append-custom-diff, ediff-meta-show-patch)
26442 (ediff-filegroup-action, ediff-show-meta-buffer, ediff-show-registry)
26443 (ediff-get-meta-info, ediff-patch-file-form-meta):
26444 * lisp/vc/ediff-ptch.el (ediff-patch-file-internal):
26445 * lisp/vc/ediff-util.el (ediff-toggle-autorefine)
26446 (ediff--check-ancestor-exists, ediff-toggle-read-only)
26447 (ediff-toggle-wide-display, ediff-toggle-multiframe)
26448 (ediff-toggle-use-toolbar, ediff-toggle-show-clashes-only)
26449 (ediff-next-difference, ediff-previous-difference)
26450 (ediff-pop-diff, ediff-read-file-name, ediff-verify-file-buffer)
26451 (ediff-save-buffer):
26452 * lisp/vc/ediff-wind.el (ediff-make-wide-display):
26453 * lisp/vc/ediff.el (ediff-find-file, ediff-buffers-internal)
26454 (ediff-directories-internal, ediff-directory-revisions-internal)
26455 (ediff-regions-wordwise, ediff-regions-linewise)
26456 (ediff-load-version-control): Use user-error.
26457 (debug-ignored-errors): No longer modify.
26459 2017-04-18 Glenn Morris <rgm@gnu.org>
26461 mh-e: use user-error rather than debug-ignored-errors
26463 * lisp/mh-e/mh-alias.el (mh-alias-grab-from-field):
26464 * lisp/mh-e/mh-utils.el (mh-get-msg-num): Use user-error.
26465 (debug-ignored-errors): No longer modify.
26467 2017-04-18 Glenn Morris <rgm@gnu.org>
26469 ispell.el: use user-error rather than debug-ignored-errors
26471 * lisp/textmodes/ispell.el (ispell-get-word): Use user-error.
26472 (debug-ignored-errors): No longer modify.
26474 2017-04-17 Paul Eggert <eggert@Penguin.CS.UCLA.EDU>
26476 * src/xterm.c (x_fill_rectangle): Now static.
26478 2017-04-17 Paul Eggert <eggert@Penguin.CS.UCLA.EDU>
26480 Tighten recently-added UTF-8 check
26482 * src/coding.c (encode_coding_utf_8): Now extern.
26483 * src/terminal.c (terminal_glyph_code) [HAVE_STRUCT_UNIPAIR_UNICODE]:
26484 Check for UTF-8, not just for multibyte.
26486 2017-04-17 David Engster <deng@randomsample.de>
26488 xml: Properly handle symbol-qnames for attribute parsing
26490 * lisp/xml.el (xml-parse-attlist): Do not strip 'symbol-qnames from
26491 xml-ns argument (reverts aea67018) (Bug#26533).
26492 (xml-maybe-do-ns): Properly handle default namespace by not
26493 interning new symbol when 'special' flag is set.
26495 * test/lisp/xml-tests.el (xml-parse-test--namespace-attribute-qnames)
26496 (xml-parse-namespace-attribute-qnames): Add test for Bug#26533.
26498 2017-04-17 Paul Eggert <eggert@Penguin.CS.UCLA.EDU>
26500 * src/lisp.h (STRING_SET_CHARS): Simplify assertion.
26502 2017-04-17 Eli Zaretskii <eliz@gnu.org>
26504 Fix assertion violations when displaying thread-related error
26506 * src/process.c (Faccept_process_output): Don't assume a thread's
26507 name is always a string.
26509 2017-04-17 Paul Eggert <eggert@cs.ucla.edu>
26511 dired ‘M’ should not complain about ‘.’ and ‘..’
26513 * lisp/dired-aux.el (dired-do-redisplay):
26514 Allow redisplay of ‘.’ and ‘..’ (Bug#26528).
26516 2017-04-17 Paul Eggert <eggert@cs.ucla.edu>
26518 Remove unused coding enums
26520 * src/coding.h (enum coding_system_type, enum end_of_line_type):
26523 2017-04-17 Paul Eggert <eggert@cs.ucla.edu>
26525 Work around bug with unibyte Linux consoles
26527 * src/terminal.c (terminal_glyph_code): Skip the UTF-8 stuff if
26528 the terminal's coding system is unibyte (Bug#26396).
26530 2017-04-16 Teemu Likonen <tlikonen@iki.fi>
26532 Fix org-agenda's command for calendar-lunar-phases
26534 Function org-agenda-phases-of-moon tries to call a non-existing
26535 function calendar-phases-of-moon. The correct function is
26536 calendar-lunar-phases.
26538 2017-04-16 Michael Albinus <michael.albinus@gmx.de>
26540 Tuning for `separate' Tramp syntax
26542 * lisp/net/tramp.el (tramp-method-regexp): Fix it for `separate' syntax.
26543 (tramp-completion-file-name-regexp-separate): Simplify.
26545 * test/lisp/net/tramp-tests.el (tramp-test02-file-name-dissect-separate):
26548 2017-04-16 Alan Mackenzie <acm@muc.de>
26550 Fix bug #26529: C-h k errors with a lambda function bound to a key.
26552 * lisp/help-fns.el (help-fns--signature, describe-function-1): Check
26553 `function' is a symbol before trying to get property `reader-construct' from
26556 2017-04-16 Simen Heggestøyl <simenheg@gmail.com>
26558 Fix highlighting of short selectors in CSS mode
26560 * lisp/textmodes/css-mode.el (css--font-lock-keywords): Highlight
26561 selectors where the part before a colon is only one character long,
26564 2017-04-16 Eli Zaretskii <eliz@gnu.org>
26566 Fix redisplay performance problems with some fonts
26568 * src/font.c (font_list_entities): Revert part of the changes
26569 introduced on Apr 2, 2014 to fix bug#17125. It turns out having
26570 zero_vector in the font-cache is an important indication that
26571 cannot be removed. (Bug#21028)
26573 2017-04-16 Eli Zaretskii <eliz@gnu.org>
26575 Add assertion to STRING_SET_CHARS
26577 * src/lisp.h (STRING_SET_CHARS): Add an assertion and commentary
26578 to prevent incorrect usage. For details, see this discussion:
26579 https://lists.gnu.org/r/emacs-devel/2017-04/msg00412.html.
26581 2017-04-16 Eli Zaretskii <eliz@gnu.org>
26583 Avoid compilation warnings on MS-Windows
26585 * src/w32term.c (w32_read_socket): Avoid compiler warnings about
26586 parentheses around assignment.
26587 * src/w32fns.c (w32_createwindow): Remove unused variable
26588 dwStyle. Use "|=" where appropriate.
26590 2017-04-16 Paul Eggert <eggert@Penguin.CS.UCLA.EDU>
26595 2017-04-14 intprops: try to avoid tickling similar bugs
26596 2017-04-14 intprops: port to Oracle Studio 12.3 x86
26597 * doc/misc/texinfo.tex, lib/intprops.h: Copy from gnulib.
26599 2017-04-15 Martin Rudalics <rudalics@gmx.at>
26601 Fix bugs in `with-displayed-buffer-window' and `fit-window-to-buffer'
26603 * lisp/window.el (with-displayed-buffer-window): When a
26604 'window-height' action alist entry specifies a function, call
26605 `temp-buffer-window-show' with a '(window-height . t)' dummy
26606 entry so `window--try-to-split-window' will bind
26607 `window-combination-limit' to t and that function does not
26608 resize any other window but the one we split this one off
26609 (Bug#25055, Bug#25179).
26610 (fit-window-to-buffer): Call `window-max-delta' with NOUP t so
26611 we steal space only from windows in the same combination.
26612 Stealing space from other windows would not allow us to return
26613 that space later when this window is deleted (Bug#25055,
26616 2017-04-15 Glenn Morris <rgm@gnu.org>
26618 Avoid userlock queries hanging forever in batch mode
26620 * lisp/userlock.el (ask-user-about-lock)
26621 (ask-user-about-supersession-threat): Abort in batch mode.
26623 2017-04-14 Martin Rudalics <rudalics@gmx.at>
26625 Fix segfault when calling frame_ancestor_p (Bug#26493)
26627 * src/xterm.c (handle_one_xevent): Check that hf was not reset
26628 before calling frame_ancestor_p (Bug#26493).
26630 2017-04-14 Martin Rudalics <rudalics@gmx.at>
26632 A few additional copy-edits in documentation of frames
26634 * doc/lispref/frames.texi (Frame Layout)
26635 (Implied Frame Resizing): Windows -> MS-Windows.
26636 (Deleting Frames): Fix typo.
26638 2017-04-14 Glenn Morris <rgm@gnu.org>
26640 Use user-error for some ert.el errors
26642 * lisp/emacs-lisp/ert.el (ert-read-test-name, ert-delete-all-tests)
26643 (ert-results-find-test-at-point-other-window, ert-describe-test):
26646 2017-04-14 Glenn Morris <rgm@gnu.org>
26648 Use user-error for customize's "invalid face" error
26650 * lisp/cus-edit.el (customize-face): Use user-error.
26651 (debug-ignored-errors): No more need to add "Invalid face".
26653 2017-04-14 Glenn Morris <rgm@gnu.org>
26655 Remove duplicate lisp-eval-defun definition
26657 * lisp/emacs-lisp/lisp-mode.el (lisp-eval-defun):
26658 Autoload rather than defining a stub.
26660 2017-04-14 Glenn Morris <rgm@gnu.org>
26662 * lisp/Makefile.in (check-defun-dups): Ignore obsolete files.
26664 2017-04-14 Glenn Morris <rgm@gnu.org>
26666 Create generated lisp files before main loaddefs.el
26668 This should improve reproducibility of lisp/loaddefs.el.
26669 * lisp/Makefile.in (gen-lisp): New phony target.
26670 ($(lisp)/loaddefs.el, compile-main): Depend on gen-lisp.
26671 * src/Makefile.in ($(leimdir)/leim-list.el): Depend on all of ../leim.
26672 * lisp/cedet/semantic.el (semantic-mode):
26673 * lisp/cedet/semantic/fw.el (top-level):
26674 * lisp/emacs-lisp/eieio-core.el (top-level):
26675 Robustify to generated input files maybe not yet existing.
26677 2017-04-14 Paul Eggert <eggert@Penguin.CS.UCLA.EDU>
26679 Fix minor quoting issues in Makefile.in
26681 * Makefile.in (install-arch-dep, uninstall):
26682 Quote EMACS and EMACS_NAME more consistently.
26684 2017-04-13 Glenn Morris <rgm@gnu.org>
26686 * Makefile.in (install-etc): Use existing Makefile variables.
26688 2017-04-13 Eli Zaretskii <eliz@gnu.org>
26690 Minor copyedits of recent changes in documentation
26692 * doc/lispref/frames.texi (Frame Layout, Frame Position)
26693 (Frame Size, Frame Interaction Parameters, Input Focus)
26694 (Raising and Lowering, Child Frames): Improve wording and indexing.
26695 * doc/emacs/cmdargs.texi (Borders X): Improve indexing.
26697 2017-04-13 Glenn Morris <rgm@gnu.org>
26699 Small src/Makefile simplification
26701 * src/Makefile.in ($(lispsource)/international/ucs-normalize.elc)
26702 ($(lispsource)/term/ns-win.elc): Combine rules.
26704 2017-04-13 Simen Heggestøyl <simenheg@gmail.com>
26706 Add grid layout module to CSS property list
26708 * lisp/textmodes/css-mode.el (css-property-alist)
26709 (css-value-class-alist): Add new properties and value classes from CSS
26710 Grid Layout Module.
26712 2017-04-13 Martin Rudalics <rudalics@gmx.at>
26714 Describe recent frame and window changes in manuals
26716 * doc/emacs/emacs.texi (Top):
26717 * doc/emacs/cmdargs.texi (Borders X): Clearly separate the terms
26718 "outer border" (for the X border which can be set from within
26719 Emacs) and "external border" (for the border which is added by
26720 the window manager).
26721 * doc/lispref/display.texi (Tooltips): Clarify slightly.
26722 * doc/lispref/elisp.texi (Top): Update node and section names.
26723 * doc/lispref/frames.texi (Frames): Describe difference between
26724 top-level and child frames.
26725 (Frame Layout): Describe outer border. Add more details about
26726 how Emacs obtains the outer size and position of a frame and
26727 about menu bar/tool bar wrapping. Add references to new frame
26729 (Size and Position): Remove subsection.
26730 (Frame Position): New subsection excerpted from the earlier Size
26731 and Position subsection. Clarify positioning concepts and
26732 some of their shortcomings. Describe `move-frame-functions'.
26733 (Frame Size): New subsection excerpted from the earlier Size
26734 and Position subsection. Describe how to track frame size
26735 changes and the new function `frame-size-changed-p'.
26736 (Position Parameters): Describe child frame positioning. Warn
26737 about negative offsets. Describe 'z-group' parameter.
26738 (Size Parameters): Describe 'text-pixels' specification
26739 facility and new 'min-width' and 'min-height' parameters.
26740 (Layout Parameters): Clarify description of 'tool-bar-lines' and
26741 'menu-bar-lines' parameters.
26742 (Frame Interaction Parameters): New subsubsection describing
26743 'parent-frame', 'delete-before', 'mouse-wheel-frame' and
26744 'no-other-frame' parameters.
26745 (Management Parameters): Describe 'skip-taskbar',
26746 'no-focus-on-map', 'no-accept-focus', 'undecorated' and
26747 'override-redirect' parameters.
26748 (Deleting Frames): Describe handling of 'delete-before'
26749 parameter and child frames for `delete-frame' and
26750 `delete-other-frames'.
26751 (Finding All Frames): Describe `frame-list-z-order' and handling
26752 of 'no-other-frame' parameter by `next-frame'.
26753 (Minibuffers and Frames): Minor clarifications.
26754 (Input Focus): Document `x-focus-frame'. Clarify descriptions
26755 of `focus-in-hook', `focus-out-hook' and `focus-follows-mouse'.
26756 (Visibility of Frames): Describe mapping and how the visibility
26757 of a parent frame affects that of its child frames.
26758 (Raising and Lowering): Describe restacking of frames and
26760 (Child Frames): New section.
26761 * doc/lispref/windows.texi (Selecting Windows): Describe
26762 additional semantics of NORECORD argument of `select-window' and
26763 how `buffer-list-update-hook' can emulate a "select window
26765 (Mouse Window Auto-selection): New section.
26767 2017-04-13 Damien Cassou <damien@cassou.me>
26769 Fix imenu--sort-by-position for non-pairs parameters (bug#26457)
26771 * lisp/imenu.el (imenu--sort-by-position): Fix to accept lists beyond
26773 * test/lisp/imenu-tests.el: Add 2 tests for `imenu--sort-by-position`.
26775 2017-04-13 Eli Zaretskii <eliz@gnu.org>
26777 Avoid unnecessary regeneration of the entire loaddefs.el
26779 * lisp/Makefile.in (autoloads .PHONY): Add commentary explaining
26780 why $(lisp)/loaddefs.el is a dependency of '.PHONY'.
26781 ($(lisp)/loaddefs.el): Copy an existing loaddefs.el to
26782 loaddefs.tmp before running 'batch-update-autoloads' on it, to
26783 avoid slow regeneration of the full contents. (Bug#26459)
26784 Use 'move-if-change' instead of 'mv', to avoid producing a new
26785 Emacs binary when not necessary.
26787 2017-04-13 Dmitry Gutov <dgutov@yandex.ru>
26789 Handle indentation of nested ternary operators in JS
26791 * lisp/progmodes/js.el (js--looking-at-operator-p):
26792 Handle nested ternary operators.
26794 2017-04-12 Eli Zaretskii <eliz@gnu.org>
26796 Don't call 'kill-this-buffer' outside of menus
26798 * lisp/simple.el (kill-current-buffer): New function.
26799 (completion-list-mode-map): Use it instead of kill-this-buffer.
26800 * lisp/type-break.el (type-break-mode):
26801 * lisp/term/ns-win.el (global-map):
26802 * lisp/progmodes/gdb-mi.el (gdb-memory-mode-map)
26803 (gdb-disassembly-mode-map, gdb-frames-mode-map)
26804 (gdb-locals-mode-map, gdb-registers-mode-map):
26805 * lisp/org/org-mhe.el (org-mhe-follow-link):
26806 * lisp/net/secrets.el (secrets-mode-map):
26807 * lisp/net/eudc.el (eudc-mode-map):
26808 * lisp/net/eudc-hotlist.el (eudc-hotlist-mode-map): Use
26809 kill-current-buffer instead of kill-this-buffer. (Bug#26466)
26811 2017-04-12 Eli Zaretskii <eliz@gnu.org>
26813 * lisp/menu-bar.el (kill-this-buffer): Doc fix. (Bug#26466)
26815 2017-04-12 Martin Rudalics <rudalics@gmx.at>
26817 New internal-border face and args for select-window and x-focus-frame
26819 Add `internal-border' face and handle it whenever clearing the
26820 internal border. If NORECORD equals the symbol
26821 'mark-for-redisplay', `select-window' will not record the window
26822 but still mark it for redisplay. The new argument NOACTIVATE
26823 for `x-focus-frame' tries to not activate FRAME when set.
26825 * lisp/faces.el (internal-border): New face.
26826 * lisp/mwheel.el (mwheel-scroll): Select window to scroll with
26827 `mark-for-redisplay'.
26828 * lisp/scroll-bar.el (scroll-bar-drag)
26829 (scroll-bar-horizontal-drag, scroll-bar-scroll-down)
26830 (scroll-bar-scroll-up, scroll-bar-toolkit-scroll)
26831 (scroll-bar-toolkit-horizontal-scroll): Select window to scroll
26832 with `mark-for-redisplay'.
26833 * lisp/window.el (handle-select-window): When
26834 `focus-follows-mouse' is not 'auto-raise' try to not activate
26836 * src/dispextern.h (face_id): Add INTERNAL_BORDER_FACE_ID.
26837 * src/frame.c (Fx_focus_frame): New argument NOACTIVATE.
26838 * src/frame.h (x_focus_frame): Update extern declaration.
26839 * src/gtkutil.c (xg_clear_under_internal_border): Remove
26841 (xg_frame_resized, xg_frame_set_char_size): Call
26842 x_clear_under_internal_border.
26843 (xg_tool_bar_callback): Adapt x_focus_frame call.
26844 * src/gtkutil.h (xg_clear_under_internal_border): Remove
26846 * src/nsfns.m (x_focus_frame): Add argument NOACTIVATE.
26847 * src/w32fns.c (x_clear_under_internal_border): Fill border
26848 with internal-border background if specified.
26849 * src/w32term.h (x_clear_under_internal_border): Add extern
26851 * src/w32term.c (x_after_update_window_line): Fill border
26852 with internal-border background if specified.
26853 (w32_set_vertical_scroll_bar, w32_set_horizontal_scroll_bar)
26854 (x_scroll_bar_clear, w32_read_socket): Call
26855 x_clear_under_internal_border.
26856 (x_focus_frame): New argument NOACTIVATE.
26857 * src/window.c (select_window): Mark WINDOW for redisplay when
26858 NORECORD equals 'mark-for-redisplay'.
26859 (Fselect_window): Update doc-string.
26860 (syms_of_window): Define Qmark_for_redisplay.
26861 * src/xdisp.c (clear_garbaged_frames, echo_area_display)
26862 (redisplay_internal): Call x_clear_under_internal_border.
26863 * src/xfaces.c (lookup_basic_face): Handle `window-divider'
26864 and `internal-border' faces.
26865 (realize_basic_faces): Realize `internal-border' face.
26866 (syms_of_xfaces): Define Qinternal_border.
26867 * src/xfns.c (x_set_internal_border_width): Remove call for
26868 xg_clear_under_internal_border.
26869 (x_focus_frame): New argument NOACTIVATE. When non-nil try to not
26871 * src/xterm.c (x_fill_rectangle): No more static.
26872 (x_clear_under_internal_border, x_after_update_window_line):
26873 Fill border with internal-border background if specified.
26874 (xt_horizontal_action_hook): Rewrite.
26875 (handle_one_xevent): Call x_clear_under_internal_border.
26876 * src/xterm.h (x_fill_rectangle): Add extern declaration.
26878 2017-04-12 Paul Eggert <eggert@Penguin.CS.UCLA.EDU>
26880 Port recent frame changes to --enable-gcc-warnings
26882 * src/frame.c (next_frame, prev_frame):
26883 Remove now-redundant assertions.
26884 * src/frame.h (FOR_EACH_FRAME): Assume Vframe_list is nonempty.
26886 2017-04-12 Tak Kunihiro <tkk@misasa.okayama-u.ac.jp>
26888 Scroll right and left using wheel-right and wheel-left.
26890 These changes also make use of touchpad and trackpad (Bug#26347).
26892 * doc/emacs/frames.texi (Mouse Commands): Document horizontal
26893 scrolling using the mouse wheel.
26895 * lisp/mwheel.el (mwheel-scroll): Respond to wheel-right and wheel-left.
26896 (mwheel-tilt-scroll-p, mwheel-flip-direction)
26897 (mwheel-scroll-left-function, mwheel-scroll-right-function): New
26899 (mouse-wheel-left-event, mouse-wheel-right-event): New variables,
26900 events that calls wheel-left/right.
26902 * etc/NEWS: Mention horizontal scrolling using the mouse wheel.
26904 2017-04-12 Eli Zaretskii <eliz@gnu.org>
26906 * lisp/Makefile.in (autoloads-force): Fix usage of ".PHONY".
26908 2017-04-12 Martin Rudalics <rudalics@gmx.at>
26910 Add new frame parameters and associated functions
26912 Add new frame parameters `undecorated', `override-redirect',
26913 `parent-frame', `skip-taskbar', `no-focus-on-map',
26914 `no-accept-focus', `z-group', `delete-before', `no-other-frame',
26915 `mouse-wheel-frame', `min-width', `min-height'. Add new
26916 functions `frame-restack' and `frame-list-z-order'.
26918 * lisp/cus-start.el (focus-follows-mouse): Adapt customization
26920 * lisp/frame.el (handle-delete-frame): Handle child and
26921 `delete-before' frames.
26922 (other-frame): Stop looking for other frame after one round.
26923 (frame-list-z-order, frame-restack): New functions.
26924 (delete-other-frames): Handle child frames.
26925 * lisp/frameset.el (frameset-persistent-filter-alist)
26926 (frameset--record-relationships): Handle `delete-before',
26927 `parent-frame' and `mouse-wheel-frame' parameters. Rename
26928 latter from `frameset--record-minibuffer-relationships'.
26929 (frameset--restore-frame): Handle ‘parent-frame’ parameter
26931 (frameset-restore): Handle `delete-before', `parent-frame' and
26932 `mouse-wheel-frame' parameters.
26933 * lisp/mwheel.el (mwheel-scroll): Handle `mouse-wheel-frame'
26935 * lisp/window.el (window--min-size-ignore-p): Fix doc-string.
26936 (mouse-autoselect-window-select, handle-select-window): Major
26937 rewrite. Try to not ignore errors. Handle auto-selection of
26938 child frames and different values of `focus-follows-mouse'.
26939 * src/frame.c (frame_windows_min_size): Handle new `min-width'
26940 and `min-height' frame parameters.
26941 (make_frame): Initialize new frame structure members.
26942 (do_switch_frame): Don't reset internal_last_event_frame for
26944 (Fframe_parent, frame_ancestor_p, Fframe_ancestor_p): New
26946 (candidate_frame): Don't return `no-other-frame' frame.
26947 (other_frames): New function replacing other_visible_frames.
26948 (delete_frame): Rewrite. Handle child and `delete-before' frames.
26949 (Fmake_frame_invisible): Call other_frames.
26950 (store_frame_param): Check `delete-before' and `parent-frame'
26951 parameters for circular dependencies.
26952 (frame_parms, syms_of_frame): Add entries for and define new
26954 (focus_follows_mouse): New meaningful value `auto-raise'.
26955 * src/frame.h (z_group): New enumeration type.
26956 (frame): New slots parent_frame, undecorated, override_redirect,
26957 skip_taskbar, no_focus_on_map, no_accept_focus, z_group.
26958 (fset_parent_frame): New inlined function.
26959 (FRAME_UNDECORATED, FRAME_OVERRIDE_REDIRECT)
26960 (FRAME_PARENT_FRAME, FRAME_SKIP_TASKBAR, FRAME_NO_FOCUS_ON_MAP)
26961 (FRAME_NO_ACCEPT_FOCUS, FRAME_Z_GROUP, FRAME_Z_GROUP_NONE)
26962 (FRAME_Z_GROUP_ABOVE, FRAME_Z_GROUP_ABOVE_SUSPENDED)
26963 (FRAME_Z_GROUP_BELOW): New macros.
26964 (frame_ancestor_p): Add declaration.
26965 * src/gtkutil.c (xg_create_frame_widgets): Handle
26966 `undecorated' and `override-redirect' frame parameters.
26967 (x_wm_set_size_hint): None for child frames.
26968 (xg_set_undecorated, xg_frame_restack, xg_set_skip_taskbar)
26969 (xg_set_no_focus_on_map, xg_set_no_accept_focus)
26970 (xg_set_override_redirect): New functions.
26971 (xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos):
26972 Don't let scrollbars obscure child frames.
26973 * src/gtkutil.h: (xg_set_undecorated, xg_frame_restack)
26974 (xg_set_skip_taskbar, xg_set_no_focus_on_map)
26975 (xg_set_no_accept_focus, xg_set_override_redirect): Add extern
26977 * src/nsfns.m (ns_frame_parm_handlers): Add entries for new
26979 (Fx_create_frame): Install `min-width' and `min-height' frame
26981 * src/nsterm.m (mouseMoved:): Handle focus_follows_mouse change.
26982 * src/w32fns.c (WS_EX_NOACTIVATE): Define if necessary.
26983 (x_real_positions): Handle child frames.
26984 (x_set_menu_bar_lines): Don't for child frames.
26985 (x_set_undecorated, x_set_parent_frame, x_set_skip_taskbar)
26986 (x_set_no_focus_on_map, x_set_no_accept_focus)
26987 (x_set_z_group): New functions.
26988 (w32_createvscrollbar, w32_createhscrollbar): Don't draw
26989 scroll bars over child frames.
26990 (w32_createwindow): Handle new frame parameters and child frames.
26991 (w32_wnd_proc): Let mouse clicks into a child frame activate
26992 the frame. Try to handle the `no-accept-focus' parameter. Do
26993 SetFocus when our window is brought to top or becomes the
26995 (w32_window): Don't initialize menu bar for child frames.
26996 (Fx_create_frame): Handle new frame parameters.
26997 (x_create_tip_frame): Set explicit_parent slot.
26998 (w32_dialog_in_progress): New function.
26999 (Fx_file_dialog): Handle `z-group-above' frames.
27000 (w32_frame_list_z_order, Fw32_frame_list_z_order)
27001 (w32_frame_restack, Fw32_frame_restack): New functions.
27002 (w32_frame_parm_handlers): Add entries for new frame
27004 * src/w32font.c (Fx_select_font): Handle `z-group-above'
27005 frames during font selection dialogue.
27006 * src/w32term.c (construct_mouse_wheel): Construct mouse wheel
27007 event from F's w32 window.
27008 (w32_mouse_position): Handle child frames.
27009 (w32_set_vertical_scroll_bar, w32_set_horizontal_scroll_bar):
27010 Don't draw scroll bars over child frames.
27011 (w32_read_socket): Always erase background of child frames.
27012 When generating SELECT_WINDOW_EVENTs handle new value of
27013 `focus-follows-mouse' and handle `no-accept-focus' parameter.
27014 Handle `mouse-wheel-frame' parameter.
27015 (x_calc_absolute_position, x_set_offset, x_set_window_size):
27016 Handle child frames.
27017 (x_make_frame_visible): Handle child frames specially. Handle
27018 `no-focus-on-map' parameter.
27019 * src/w32term.h (w32_dialog_in_progress): Add external
27021 * src/xdisp.c (x_consider_frame_title, prepare_menu_bars): Not
27023 * src/xfns.c (Xm/MwmUtil.h): Include for WM hints.
27024 (PropMotifWmHints, PROP_MOTIF_WM_HINTS_ELEMENTS): Define for
27025 non-Motif, non-GTK case.
27026 (x_real_pos_and_offsets): Handle child frames.
27027 (x_set_undecorated, x_set_parent_frame)
27028 (x_set_no_focus_on_map, x_set_no_accept_focus)
27029 (x_set_override_redirect): New functions.
27030 (x_set_menu_bar_lines): Not for child frames.
27031 (x_window): Handle `undecorated' and `override_redirect' cases.
27032 (Fx_create_frame): Handle new frame parameters.
27033 (frame_geometry): Handle child frames and outer border.
27034 (x_frame_list_z_order, Fx_frame_list_z_order)
27035 (x_frame_restack, Fx_frame_restack): New functions.
27036 (Fx_file_dialog, Fx_select_font): Set x_menu_set_in_use.
27037 (x_frame_parm_handlers): Add entries for new frame parameters.
27038 * src/xmenu.c (x_menu_set_in_use): Handle `z-group-above'
27040 * src/xterm.c (x_set_frame_alpha): Don't set alpha of parent
27042 (XTmouse_position): Handle child frames.
27043 (x_scroll_bar_create, x_scroll_bar_expose): Don't let scroll
27044 bars obscure child frames.
27045 (handle_one_xevent): Handle child frame positions. If necessary
27046 set `skip-taskbar' and reassign proper `z-group' when we are
27047 mapped. When generating SELECT_WINDOW_EVENTs handle new value
27048 of `focus-follows-mouse'. Handle `mouse-wheel-frame' parameter.
27049 Let mouse clicks into a child frame activate the frame.
27050 (x_calc_absolute_position, x_set_offset): Handle child frames
27052 (x_set_skip_taskbar, x_set_z_group): New functions.
27053 (x_make_frame_visible): Handle child frames.
27054 (ATOM_REFS_INIT): Add entries for
27055 Xatom_net_wm_state_skip_taskbar, Xatom_net_wm_state_above,
27056 Xatom_net_wm_state_below.
27057 * src/xterm.h (top-level): Declare Xatom_net_wm_state_above,
27058 Xatom_net_wm_state_below and Xatom_net_wm_state_skip_taskbar.
27059 (x_set_skip_taskbar, x_set_z_group): Add extern declarations.
27061 2017-04-11 Glenn Morris <rgm@gnu.org>
27063 Update a package test for hydra
27065 * test/lisp/emacs-lisp/package-tests.el (with-package-test):
27066 Also bind package-gnupghome-dir, see eg
27067 http://hydra.nixos.org/build/51462182 .
27069 2017-04-11 Martin Rudalics <rudalics@gmx.at>
27071 Frame movement, focus and hook related changes
27073 New hook `move-frame-functions'. Run `focus-in-hook'
27074 after switching to frame that gets focus. Don't run
27075 XMoveWindow for GTK.
27077 * lisp/frame.el (handle-move-frame, frame-size-changed-p): New
27080 * src/frame.c (do_switch_frame): Simplify code.
27081 (Fhandle_switch_frame): Switch frame before running
27083 (Vfocus_in_hook, Vfocus_out_hook): Clarify doc-strings.
27084 (Vmove_frame_functions): New hook variable.
27085 * src/keyboard.c (kbd_buffer_get_event): Handle
27086 MOVE_FRAME_EVENT. Handle SELECT_WINDOW_EVENT separately.
27087 (head_table): Add Qmove_frame entry.
27088 (syms_of_keyboard): Add Qmove_frame.
27089 (keys_of_keyboard): Define key for `move-frame'.
27090 * src/termhooks.h (event_kind): Add MOVE_FRAME_EVENT.
27091 * src/w32term.c (w32_read_socket): Create MOVE_FRAME_EVENT.
27092 * src/window.c (run_window_size_change_functions): Record size of
27093 FRAME's minibuffer window too.
27094 * src/xterm.c (handle_one_xevent): Create MOVE_FRAME_EVENT.
27095 (x_set_offset): For GTK call gtk_widget_move instead of
27098 2017-04-11 Werner LEMBERG <wl@gnu.org>
27100 Avoid abort in ftfont.c due to faulty fonts
27102 * src/ftfont.c (ftfont_get_metrics): Try loading the font without
27103 hinting, before aborting. (Bug#25945)
27105 2017-04-11 Eli Zaretskii <eliz@gnu.org>
27107 Document 'line-pixel-height'
27109 * doc/lispref/display.texi (Size of Displayed Text): Document
27110 line-pixel-height. Suggested by Tak Kunihiro
27111 <tkk@misasa.okayama-u.ac.jp>. (Bug#26379)
27113 2017-04-11 Jens Lechtenboerger <jens.lechtenboerger@fsfe.org>
27115 Introduce customizable variable 'package-gnupghome-dir'
27117 * lisp/emacs-lisp/package.el (package-import-keyring)
27118 (package--check-signature-content, package-check-signature):
27119 Use new variable package-gnupghome-dir to control which GnuPG
27121 * doc/emacs/package.texi: Mention package-gnupghome-dir.
27122 * etc/NEWS: Mention package-gnupghome-dir.
27124 2017-04-11 Martin Rudalics <rudalics@gmx.at>
27126 Set x_gtk_use_window_move by default for fixing bug#25851 and bug#25943
27128 This activates a change that was installed a few weeks ago but whose
27129 ChangeLog was inadvertently dropped during its commit. The proper
27130 ChangeLog is included below as part of the present commit.
27132 * src/gtkutil.c (xg_set_geometry): When x_gtk_use_window_move
27133 is set avoid calling x_gtk_parse_geometry (Bug#25851).
27134 (x_wm_set_size_hint): When x_gtk_use_window_move is set, set
27135 PPosition, USPosition and USSize flags if requested.
27136 * src/xterm.c (x_set_offset): With GTK when
27137 x_gtk_use_window_move is set, leave it entirely to
27138 gtk_window_move to position the window and skip any
27139 post-adjustments (Bug#25851 and Bug#25943).
27140 (x_gtk_use_window_move): New variable.
27142 2017-04-10 Alan Mackenzie <acm@muc.de>
27144 Fix a loop in C Mode caused by inadequate analysis of comments.
27146 After M-;, and the insertion of the opening "/*", the CC Mode after-change
27147 function got confused, since the new comment opener matched the end of a
27148 subsequent comment, but moving back over that comment did not come back to the
27149 starting point. Fix this.
27151 * lisp/progmodes/cc-engine.el (c-end-of-macro): Add a limit parameter, wherer
27152 point is left if no end-of-macro is found before it.
27153 (c-forward-sws): Change the `safe-start' mechanism. Now `safe-start' is
27154 non-nil except where we have an unclosed block comment at the end of a macro.
27155 This enables us to populate the cache more fully, at the cost of some run
27158 2017-04-10 Lars Brinkhoff <lars@nocrew.org>
27160 Add PVSIZE function to return the size of a pseudovector.
27162 * src/lisp.h (PVSIZE): New function.
27164 * src/chartab.c (copy_char_table):
27165 * src/data.c (Ftype_of, Finteractive_form, Faref, Faset):
27166 * src/doc.c (Fdocumentation, store_function_docstring):
27167 * src/eval.c (Fcommandp, funcall_lambda, lambda_arity, Ffetch_bytecode):
27168 * src/fns.c (Flength, Fcopy_sequence):
27169 * src/font.h (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P):
27170 * src/lread.c (substitute_object_recurse):
27171 * src/print.c (print_object):
27174 2017-04-10 Michael Albinus <michael.albinus@gmx.de>
27178 * lisp/net/tramp.el (tramp-syntax): Adapt docstring.
27180 * test/lisp/net/tramp-tests.el
27181 (tramp-test01-file-name-syntax-simplified)
27182 (tramp-test01-file-name-syntax-separate)
27183 (tramp-test02-file-name-dissect-simplified)
27184 (tramp-test02-file-name-dissect-separate): New tests.
27186 2017-04-10 Martin Rudalics <rudalics@gmx.at>
27188 Make sure that `shell' makes BUFFER current
27190 * lisp/shell.el (shell): Restrict scope of recently added
27191 `with-current-buffer' to make sure that BUFFER is current when
27194 2017-04-10 Jim Blandy <jimb@red-bean.com>
27196 Default to PCRE syntax when reading .hgignore
27198 * lisp/vc/vc-hg.el (vc-hg--slurp-hgignore-1):
27199 Default to the PCRE syntax (bug#26249).
27201 2017-04-09 Michael Albinus <michael.albinus@gmx.de>
27203 Document Tramp changes
27205 * doc/misc/tramp.texi (Change file name syntax): New node.
27207 * etc/NEWS: Mention `tramp-change-syntax'.
27209 * lisp/net/tramp.el (tramp-file-name-regexp): Reinsert it.
27210 External packages uses it.
27211 (tramp-syntax): Set also `tramp-file-name-regexp'.
27213 2017-04-09 Paul Eggert <eggert@cs.ucla.edu>
27215 Merge from gnulib (Bug#26398)
27218 2017-04-08 getopt: prefer - to _ in new file names
27219 2017-04-08 getopt: port recent getopt changes to macOS
27220 * .gitignore: Add lib/getopt-cdefs.h.
27221 * lib/getopt-cdefs.in.h: Rename from lib/getopt_cdefs.in.h.
27222 * lib/getopt-core.h: Rename from lib/getopt_core.h.
27223 * lib/getopt-ext.h: Rename from lib/getopt_ext.h.
27224 * lib/getopt-pfx-core.h: Rename from lib/getopt_pfx_core.h.
27225 * lib/getopt-pfx-ext.h: Rename from lib/getopt_pfx_ext.h.
27226 * lib/getopt.in.h, lib/unistd.in.h, m4/getopt.m4:
27228 * lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
27230 2017-04-09 Ken Raeburn <raeburn@raeburn.org>
27232 Write updated loaddefs to a temporary file and rename into place.
27234 In a parallel build, byte compilation can be running at the same times
27235 as loaddefs.el is being regenerated. However, in a CANNOT_DUMP build,
27236 loaddefs.el is read at startup and must always be in a usable state.
27238 * lisp/Makefile.in ($(lisp)/loaddefs.el): Write generated output to
27239 loaddefs.el.new and then rename it to loaddefs.el.
27241 2017-04-09 Glenn Morris <rgm@gnu.org>
27243 In the manual, mention pops and imaps
27245 * doc/emacs/rmail.texi (Movemail, Remote Mailboxes):
27246 Mention pops and imaps protocols.
27248 2017-04-09 Glenn Morris <rgm@gnu.org>
27250 * doc/emacs/rmail.texi: Prefer @command to @code for movemail.
27252 2017-04-09 Sergey Poznyakoff <gray@gnu.org>
27254 Fix rmail handling of movemail protocols (bug#18278)
27256 * lisp/mail/rmail.el (rmail-remote-proto-p): New function.
27257 (rmail-parse-url): Return protocol in second list element.
27258 Only use passwords with remote mailboxes.
27259 (rmail-insert-inbox-text): Handle non-simple local
27260 mailboxes (maildir, MH, etc.).
27262 2017-04-09 Glenn Morris <rgm@gnu.org>
27264 Fix typos in manual re movemail local mailboxes
27266 * doc/emacs/rmail.texi (Movemail, Other Mailbox Formats):
27267 Fix examples of local mailbox urls.
27269 2017-04-08 Glenn Morris <rgm@gnu.org>
27271 * lisp/gnus/nnmail.el (nnmail-crosspost-link-function): Simplify.
27273 2017-04-08 Glenn Morris <rgm@gnu.org>
27275 Remove references to OS/2 in code, doc, and comments
27277 * lisp/gnus/nnheader.el (nnheader-read-timeout)
27278 (nnheader-file-name-translation-alist): Remove OS/2 case, and simplify.
27279 * lisp/emulation/viper-util.el (viper-color-defined-p):
27280 * lisp/net/pop3.el (pop3-read-timeout):
27281 * lisp/net/imap.el (imap-read-timeout):
27282 * lisp/url/url-privacy.el (url-setup-privacy-info): Remove OS/2 case.
27283 * lisp/emulation/viper-ex.el (viper-glob-function):
27284 * lisp/vc/ediff-util.el (ediff-submit-report): Doc fix.
27285 * lisp/cus-edit.el (custom-display): Remove "pm" (OS/2).
27286 * doc/emacs/msdos-xtra.texi (MS-DOS):
27287 * doc/misc/gnus.texi (Various Various):
27288 * doc/misc/viper.texi (Rudimentary Changes): Remove mentions of OS/2.
27290 2017-04-08 Michael Albinus <michael.albinus@gmx.de>
27294 * lisp/net/tramp-cmds.el (tramp-change-syntax):
27295 Use `tramp-syntax-values'.
27297 * lisp/net/tramp-compat.el (tramp-compat-tramp-syntax): New defsubst.
27299 * lisp/net/tramp.el (tramp-syntax): Rename possible values.
27300 (tramp-syntax-values): New defun.
27301 (tramp-prefix-format, tramp-method-regexp)
27302 (tramp-postfix-method-format, tramp-prefix-ipv6-format)
27303 (tramp-postfix-ipv6-format, tramp-postfix-host-format)
27304 (tramp-completion-file-name-regexp): Use `tramp-compat-tramp-syntax'
27305 and changed values.
27306 (tramp-completion-file-name-regexp-default): Rename from
27307 `tramp-completion-file-name-regexp-unified'. Adapt docstring.
27308 (tramp-completion-file-name-regexp-simplified): Rename from
27309 `tramp-completion-file-name-regexp-old-style'. Adapt docstring.
27310 (tramp-initial-completion-file-name-regexp):
27311 Use `tramp-completion-file-name-regexp-default'.
27312 (tramp-run-real-handler): Do not autoload any longer.
27314 2017-04-08 Mark Oteiza <mvoteiza@udel.edu>
27316 Replace more nested ifs with cond
27318 This is a continuation of d526047 "Replace more nested ifs with cond".
27319 * lisp/play/dunnet.el (dun-firstword, dun-firstwordl, dun-cat): Use
27320 when and cond where appropriate.
27322 2017-04-08 Mark Oteiza <mvoteiza@udel.edu>
27324 Adjust the edebug spec of if-let*
27326 This was fixed in Bug#24748, but now looking more closely, using gate in
27327 the spec seems correct. See (info "(elisp) Backtracking").
27328 * lisp/emacs-lisp/subr-x.el (if-let*): Use gate in edebug spec.
27330 2017-04-08 Mark Oteiza <mvoteiza@udel.edu>
27332 Replace some uses of cl-member-if with apply
27334 From the mhtml-mode series. Some of the uses of cl-lib are not
27336 * lisp/align.el: Don't require cl-lib.
27337 (align-region): Use apply instead of cl-member-if.
27338 * lisp/emulation/viper.el: Don't require cl-lib.
27339 (viper-mode, this-major-mode-requires-vi-state): Use apply instead of
27342 2017-04-08 Philipp Stephani <phst@google.com>
27344 Validate SPEC of `dolist', cf. Bug#25477.
27346 * lisp/subr.el (dolist): Test type and length of SPEC.
27347 * test/lisp/subr-tests.el (subr-tests--dolist--wrong-number-of-args):
27350 2017-04-08 Philipp Stephani <phst@google.com>
27352 Add unit test for Bug#26378
27354 * test/lisp/vc/ediff-diff-tests.el
27355 (ediff-diff-tests--ediff-exec-process--nil): New unit test.
27357 2017-04-08 Lars Brinkhoff <lars@nocrew.org>
27359 Fix circular read syntax for records.
27361 * src/lread.c (substitute_object_recurse): Work with records.
27363 * test/src/lread-tests.el (lread-record-1): New test.
27365 2017-04-08 Paul Eggert <eggert@cs.ucla.edu>
27367 Deprecate copy-record in favor of copy-sequence
27369 Since copy-sequence seems to be needed anyway for records, have it
27370 work on records, and remove copy-record as being superfluous.
27371 * doc/lispref/records.texi (Records, Record Functions):
27372 * lisp/emacs-lisp/cl-macs.el (cl-defstruct):
27373 * lisp/emacs-lisp/eieio.el (make-instance, clone):
27374 * test/src/alloc-tests.el (record-3):
27375 Use copy-sequence, not copy-record, to copy records.
27376 * doc/lispref/sequences.texi (Sequence Functions)
27377 (Array Functions): Document that aref and copy-sequence
27379 * etc/NEWS: Omit copy-record.
27380 * src/alloc.c (Fcopy_record): Remove.
27381 * src/data.c (Faref): Document that arg can be a record.
27382 * src/fns.c (Fcopy_sequence): Copy records, too.
27384 2017-04-08 Paul Eggert <eggert@cs.ucla.edu>
27386 Fix dependency checking in src/Makefile.in
27388 * src/Makefile.in (AUTO_DEPEND, DEPDIR, DEPFLAGS): Move includes of
27389 dependency files until after ALLOBJS is defined, since it uses ALLOBJS.
27390 Otherwise, some dependencies will be missed.
27392 2017-04-08 Paul Eggert <eggert@cs.ucla.edu>
27394 Minor tuneup of write-region change
27396 * src/fileio.c (write_region): Use SCHARS, not Flength,
27397 on a value known to be a string.
27399 2017-04-08 Noam Postavsky <npostavs@gmail.com>
27401 Adjust write-region so file name is at the beginning again
27403 * lisp/epa-file.el (epa-file-write-region):
27404 * lisp/gnus/mm-util.el (mm-append-to-file):
27405 * lisp/jka-compr.el (jka-compr-write-region):
27406 * lisp/net/ange-ftp.el (ange-ftp-write-region):
27407 * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-write-region):
27408 * lisp/net/tramp-sh.el (tramp-sh-handle-write-region):
27409 * src/fileio.c (write_region): Put file name at the beginning and move
27410 number of characters to the end of the message.
27412 2017-04-08 Kaushal Modi <kaushal.modi@gmail.com>
27414 Check that file argument is a string
27416 * lisp/vc/ediff-diff.el (ediff-exec-process): Check that the argument
27417 passed to `file-local-copy' is a string (Bug#26378). Also fix
27418 the existing comment for this function, and convert it to its
27421 2017-04-08 Noam Postavsky <npostavs@gmail.com>
27423 Fix handling of non-integer START param to write-region
27425 The previous patch for Bug#354 incorrectly assumed that START would
27426 always be an integer.
27428 * lisp/epa-file.el (epa-file-write-region):
27429 * lisp/jka-compr.el (jka-compr-write-region):
27430 * lisp/net/ange-ftp.el (ange-ftp-write-region):
27431 * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-write-region):
27432 * lisp/net/tramp-sh.el (tramp-sh-handle-write-region):
27433 * src/fileio.c (write_region): Handle nil and string values of START.
27435 2017-04-07 Glenn Morris <rgm@gnu.org>
27437 * lisp/textmodes/rst.el (rst-package-emacs-version-alist): Fixes.
27439 2017-04-07 Michael Albinus <michael.albinus@gmx.de>
27441 Add Tramp versions to `customize-package-emacs-version-alist'
27443 * lisp/net/trampver.el (customize-package-emacs-version-alist):
27444 Add Tramp versions to `customize-package-emacs-version-alist'.
27446 2017-04-07 Tom Tromey <tom@tromey.com>
27448 * lisp/textmodes/rst.el (rst-toc-link-keymap): Move before first use.
27450 2017-04-07 Lars Brinkhoff <lars@nocrew.org>
27452 * doc/lispref/records.texi (Record Functions): fix typo.
27454 2017-04-07 Paul Eggert <eggert@cs.ucla.edu>
27456 More casefiddle minor fixes
27458 * src/casefiddle.c (case_character_impl): Omit unnecessary casts.
27459 (case_character_impl): Avoid reevaluation of CHAR_TABLE_REF.
27460 (GREEK_CAPITAL_LETTER_SIGMA): Fix typo in my previous change.
27462 2017-04-07 Jeff Clough <kb1vqh@gmail.com>
27464 Output number of characters added to file (Bug#354)
27466 * src/fileio.c (write_region):
27467 * lisp/epa-file.el (epa-file-write-region):
27468 * lisp/jka-compr.el (jka-compr-write-region):
27469 * lisp/net/ange-ftp.el (ange-ftp-write-region):
27470 * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-write-region):
27471 * lisp/net/tramp-sh.el (tramp-sh-handle-write-region):
27472 * lisp/gnus/mm-util.el (mm-append-to-file): Functions now output
27473 characters written in addition to file name.
27474 * doc/lispref/files.texi: Added documentation to write-region and
27475 append-to-file describing their output.
27477 2017-04-07 Noam Postavsky <npostavs@users.sourceforge.net>
27479 Fix ‘!NILP (Vpurify_flag)’ assertion failure during temacs bootstrap
27481 The recent changes to src/casefiddle.c cause build failure as seen
27484 Starting program: /home/npostavs/src/emacs/emacs-bootstrapping/src/temacs
27485 --batch --load loadup bootstrap
27486 [Thread debugging using libthread_db enabled]
27487 Using host libthread_db library "/usr/lib/libthread_db.so.1".
27488 Loading loadup.el (source)...
27489 Using load-path (/home/npostavs/src/emacs/emacs-bootstrapping/lisp
27490 /home/npostavs/src/emacs/emacs-bootstrapping/lisp/emacs-lisp
27491 /home/npostavs/src/emacs/emacs-bootstrapping/lisp/language
27492 /home/npostavs/src/emacs/emacs-bootstrapping/lisp/international
27493 /home/npostavs/src/emacs/emacs-bootstrapping/lisp/textmodes
27494 /home/npostavs/src/emacs/emacs-bootstrapping/lisp/vc)
27495 Loading emacs-lisp/byte-run (source)...
27496 Loading emacs-lisp/backquote (source)...
27497 Loading subr (source)...
27498 Loading version (source)...
27499 Loading widget (source)...
27500 Loading custom (source)...
27501 Loading emacs-lisp/map-ynp (source)...
27502 Loading international/mule (source)...
27503 Loading international/mule-conf (source)...
27505 lread.c:3914: Emacs fatal error: assertion failed: !NILP (Vpurify_flag)
27507 Breakpoint 1, terminate_due_to_signal at emacs.c:363
27508 363 signal (sig, SIG_DFL);
27510 #0 0x0000000000579826 in terminate_due_to_signal at emacs.c:363
27511 #1 0x000000000060ec33 in die at alloc.c:7352
27512 #2 0x000000000066db40 in intern_c_string_1 at lread.c:3914
27513 #3 0x0000000000576884 in intern_c_string at lisp.h:3790
27514 #4 0x00000000005dc84f in prepare_casing_context at casefiddle.c:69
27515 #5 0x00000000005dd37f in casify_object at casefiddle.c:311
27516 #6 0x00000000005dd47f in Fcapitalize at casefiddle.c:356
27517 #7 0x00000000006325ac in eval_sub at eval.c:2219
27518 #8 0x0000000000632368 in eval_sub at eval.c:2184
27519 #9 0x000000000063446c in apply_lambda at eval.c:2875
27520 #10 0x00000000006329af in eval_sub at eval.c:2294
27521 #11 0x000000000062d462 in Fprogn at eval.c:449
27522 #12 0x000000000062d4cf in prog_ignore at eval.c:461
27523 #13 0x000000000062f19c in Fwhile at eval.c:982
27524 #14 0x00000000006321f4 in eval_sub at eval.c:2172
27525 #15 0x000000000062d462 in Fprogn at eval.c:449
27526 #16 0x000000000062f0c4 in Flet at eval.c:963
27527 #17 0x00000000006321f4 in eval_sub at eval.c:2172
27528 #18 0x0000000000632963 in eval_sub at eval.c:2290
27529 #19 0x000000000062d462 in Fprogn at eval.c:449
27530 #20 0x000000000062f0c4 in Flet at eval.c:963
27531 #21 0x00000000006321f4 in eval_sub at eval.c:2172
27532 #22 0x0000000000668caa in readevalloop at lread.c:1927
27533 #23 0x0000000000667253 in Fload at lread.c:1332
27534 #24 0x0000000000632683 in eval_sub at eval.c:2233
27535 #25 0x0000000000668caa in readevalloop at lread.c:1927
27536 #26 0x0000000000667253 in Fload at lread.c:1332
27537 #27 0x0000000000632683 in eval_sub at eval.c:2233
27538 #28 0x0000000000631be5 in Feval at eval.c:2041
27539 #29 0x000000000057e1af in top_level_2 at keyboard.c:1121
27540 #30 0x000000000062ffc7 in internal_condition_case at eval.c:1324
27541 #31 0x000000000057e1f0 in top_level_1 at keyboard.c:1129
27542 #32 0x000000000062f51e in internal_catch at eval.c:1091
27543 #33 0x000000000057e0ea in command_loop at keyboard.c:1090
27544 #34 0x000000000057d6d5 in recursive_edit_1 at keyboard.c:697
27545 #35 0x000000000057d8b4 in Frecursive_edit at keyboard.c:768
27546 #36 0x000000000057b55b in main at emacs.c:1687
27549 "capitalize" (0xffffcf70)
27550 "format" (0xffffd130)
27551 "define-charset" (0xffffd370)
27552 "while" (0xffffd560)
27554 "dolist" (0xffffd910)
27556 "load" (0xffffdfe0)
27557 "load" (0xffffe4a0)
27559 * src/casefiddle.c (syms_of_casefiddle): Declare four new symbols:
27560 Qtitlecase, Qspecial_uppercase, Qspecial_lowercase and
27561 Qspecial_titlecase.
27562 (prepare_casing_context): Use aforementioned symbols.
27564 2017-04-07 Paul Eggert <eggert@cs.ucla.edu>
27568 This merges some getopt fixes from Zack Weinberg, and affects only
27569 non-GNUish platforms. It incorporates:
27570 2017-04-06 getopt-gnu: omit some duplicate code
27571 2017-04-06 getopt-posix: use angle-bracket include
27572 2017-04-06 getopt: annotate files with relationship to glibc
27573 2017-04-06 getopt: split up getopt.in.h and eliminate __need_getopt
27574 2017-04-06 getopt: better handling of ambiguous options
27575 2017-04-06 getopt: refactor long-option handling
27576 2017-04-06 getopt: tidy up _getopt_initialize a bit
27577 2017-04-06 getopt: merge from glibc: repetition reduction
27578 2017-04-06 getopt: clean up error reporting
27579 2017-04-06 getopt: fix fencepost error in ambiguous-W-option handling
27580 2017-04-06 getopt: clean up getopt.c and getopt1.c file headers
27581 2017-04-06 getopt: harmonize comments with glibc
27582 2017-04-06 getopt: remove USE_NONOPTION_FLAGS
27583 2017-04-06 getopt: tabify, in preparation for merge with glibc
27584 2017-04-06 md5, sha1, sha256, sha512: Add comments re correctness
27585 * build-aux/config.sub, doc/misc/texinfo.tex, lib/getopt.c:
27586 * lib/getopt.in.h, lib/getopt1.c, lib/getopt_int.h, lib/md5.c:
27587 * lib/md5.h, lib/sha1.c, lib/sha1.h, lib/sha256.c, lib/sha256.h:
27588 * lib/sha512.c, lib/sha512.h, lib/unistd.in.h, m4/getopt.m4:
27590 * lib/getopt_cdefs.in.h, lib/getopt_core.h, lib/getopt_ext.h:
27591 * lib/getopt_pfx_core.h, lib/getopt_pfx_ext.h:
27592 New files, taken from gnulib.
27593 * lib/gnulib.mk.in, m4/gnulib-comp.m4:
27596 2017-04-07 Hong Xu <hong@topbug.net>
27598 * src/search.c (Fre_search_forward, Fre_search_backward): Improve
27601 2017-04-07 Noam Postavsky <npostavs@gmail.com>
27603 Mention that processes start in default-directory (Bug#18515)
27605 * doc/lispref/processes.texi (Synchronous Processes):
27606 (Asynchronous Processes):
27607 * lisp/subr.el (start-process):
27608 * src/callproc.c (call-process): Mention that the subprocess starts in
27609 `default-directory' when local, suggest `start-file-process' and
27610 `process-file' otherwise.
27612 2017-04-07 Noam Postavsky <npostavs@gmail.com>
27614 * src/xdisp.c (vmessage, message): Clarify commentary.
27616 2017-04-07 Paul Eggert <eggert@cs.ucla.edu>
27618 Minor casefiddle.c cleanups
27620 * src/casefiddle.c: Redo recent changes to match GNU style,
27621 and prefer C99-style decls within blocks.
27622 (GREEK_CAPITAL_LETTER_SIGMA): Rename from CAPITAL_SIGMA, so that
27623 we are merely using the Unicode name, and make it a constant
27624 rather than a macro. All uses changed.
27625 (SMALL_SIGMA): Remove; unused.
27626 (GREEK_SMALL_LETTER_FINAL_SIGMA): Rename from SMALL_FINAL_SIGMA,
27627 and make it a constant rather than a macro. All uses changed.
27628 (do_casify_multibyte_string): Use ‘verify’ rather than an
27629 unportable static_assertion local.
27631 2017-04-07 Paul Eggert <eggert@cs.ucla.edu>
27633 * lisp/international/README: Update to match current list.
27635 2017-04-06 Paul Eggert <eggert@cs.ucla.edu>
27637 Fix 'make clean' in lib subdirectory
27639 * lib/Makefile.in (clean): Remove *-t files.
27640 (mostlyclean): Remove MOSTLYCLEANFILES that are not *-t files.
27641 This removes files like lib/getopt.h that should be removed
27642 even if this configuration did not need to build them.
27643 (maintainer-clean): Remove TAGS here, not in distclean,
27644 to be consistent with ../src/Makefile.in.
27646 2017-04-06 Michael Albinus <michael.albinus@gmx.de>
27648 Add new Tramp syntax
27650 * lisp/net/tramp-cmds.el (tramp-change-syntax): New defun.
27652 * lisp/net/tramp.el (tramp-syntax): Change default to `def'.
27654 (tramp-prefix-port-format): Simplify.
27655 (tramp-file-name-regexp-separate): Remove.
27656 (tramp-initial-file-name-regexp)
27657 (tramp-completion-file-name-regexp-old-style)
27658 (tramp-initial-completion-file-name-regexp): New defconst.
27659 (tramp-prefix-format, tramp-prefix-regexp)
27660 (tramp-method-regexp, tramp-postfix-method-format)
27661 (tramp-postfix-method-regexp, tramp-prefix-ipv6-format)
27662 (tramp-prefix-ipv6-regexp, tramp-postfix-ipv6-format)
27663 (tramp-postfix-ipv6-regexp)
27664 (tramp-postfix-host-format, tramp-postfix-host-regexp)
27665 (tramp-remote-file-name-spec-regexp)
27666 (tramp-file-name-structure, tramp-file-name-regexp)
27667 (tramp-completion-file-name-regexp)
27668 (tramp-rfn-eshadow-update-overlay-regexp): Change them to be defuns.
27669 (tramp-tramp-file-p, tramp-find-method)
27670 (tramp-dissect-file-name, tramp-make-tramp-file-name)
27671 (tramp-completion-make-tramp-file-name)
27672 (tramp-rfn-eshadow-update-overlay)
27673 (tramp-register-autoload-file-name-handlers)
27674 (tramp-register-file-name-handlers)
27675 (tramp-unload-file-name-handlers)
27676 (tramp-completion-handle-file-name-all-completions)
27677 (tramp-completion-dissect-file-name, tramp-clear-passwd):
27678 * lisp/net/tramp-ftp.el (tramp-ftp-file-name-handler):
27679 * lisp/net/tramp-sh.el (tramp-sh-handle-vc-registered)
27680 (tramp-compute-multi-hops): Use them.
27682 2017-04-06 Michal Nazarewicz <mina86@mina86.com>
27684 Implement special sigma casing rule (bug#24603)
27686 In Greek, a sigma character has two lower case forms which depend on
27687 their position in the word. Implement logic determining it.
27689 * src/casefiddle.c (struct casing_context, case_character_impl): Don’t
27690 assume inword is true when flag is CASE_UP and false when flag is
27691 CASE_DOWN. For final sigma detection we need this information tracked
27693 (CAPITAL_SIGMA, SMALL_SIGMA, SMALL_FINAL_SIGMA): New macros defining
27694 Unicode code point of different forms of sigma letter.
27695 (case_character): Implement support for final sigma casing.
27696 (do_casify_multibyte_string, do_casify_multibyte_region): Update after
27697 changes to case_character.
27699 * test/src/casefiddle-tests.el (casefiddle-tests-casing): Add test
27700 cases for final sigma.
27702 2017-04-06 Michal Nazarewicz <mina86@mina86.com>
27704 Support casing characters which map into multiple code points (bug#24603)
27706 Implement unconditional special casing rules defined in Unicode standard.
27708 Among other things, they deal with cases when a single code point is
27709 replaced by multiple ones because single character does not exist (e.g.
27710 ‘fi’ ligature turning into ‘FL’) or is not commonly used (e.g. ß turning
27713 * admin/unidata/SpecialCasing.txt: New data file pulled from Unicode
27714 standard distribution.
27715 * admin/unidata/README: Mention SpecialCasing.txt.
27717 * admin/unidata/unidata-gen.el (unidata-gen-table-special-casing,
27718 unidata-gen-table-special-casing--do-load): New functions generating
27719 ‘special-uppercase’, ‘special-lowercase’ and ‘special-titlecase’
27720 character Unicode properties built from the SpecialCasing.txt Unicode
27723 * src/casefiddle.c (struct casing_str_buf): New structure for
27724 representing short strings used to handle one-to-many character
27727 (case_character_imlp): New function which can handle one-to-many
27728 character mappings.
27729 (case_character, case_single_character): Wrappers for the above
27730 functions. The former may map one character to multiple (or no)
27731 code points while the latter does what the former used to do (i.e.
27732 handles one-to-one mappings only).
27734 (do_casify_natnum, do_casify_unibyte_string,
27735 do_casify_unibyte_region): Use case_single_character.
27736 (do_casify_multibyte_string, do_casify_multibyte_region): Support new
27737 features of case_character.
27738 * (do_casify_region): Updated to reflact do_casify_multibyte_string
27741 (casify_word): Handle situation when one character-length of a word
27742 can change affecting where end of the word is.
27744 (upcase, capitalize, upcase-initials): Update documentation to mention
27745 limitations when working on characters.
27747 * test/src/casefiddle-tests.el (casefiddle-tests-char-properties):
27748 Add test cases for the newly introduced character properties.
27749 (casefiddle-tests-casing): Update test cases which are now passing.
27751 * test/lisp/char-fold-tests.el (char-fold--ascii-upcase,
27752 char-fold--ascii-downcase): New functions which behave like old ‘upcase’
27754 (char-fold--test-match-exactly): Use the new functions. This is needed
27755 because otherwise fi and similar characters are turned into their multi-
27756 -character representation.
27758 * doc/lispref/strings.texi: Describe issue with casing characters versus
27760 * doc/lispref/nonascii.texi: Describe the new character properties.
27762 2017-04-06 Michal Nazarewicz <mina86@mina86.com>
27764 Split up casify_region function (bug#24603)
27766 No functional changes at this time but splitting casify_region into
27767 a function dealing with multibyte and another dealing with unibyte
27768 buffers will make future code changes slightly easier.
27770 * src/casefiddle.c (casify_region): Move most of the code into two
27772 (do_casify_multibyte_region, do_casify_unibyte_region): new functions.
27774 2017-04-06 Michal Nazarewicz <mina86@mina86.com>
27776 Add support for title-casing letters (bug#24603)
27778 * src/casefiddle.c (struct casing_context, prepare_casing_context): Add
27779 titlecase_char_table member. It’s set to the ‘titlecase’ Unicode
27780 property table if capitalization has been requested.
27781 (case_character): Make use of the titlecase_char_table to title-case
27782 initial characters when capitalising.
27784 * test/src/casefiddle-tests.el (casefiddle-tests--characters,
27785 casefiddle-tests-casing): Update test cases which are now passing.
27787 2017-04-06 Michal Nazarewicz <mina86@mina86.com>
27789 Introduce case_character function
27791 Move single-character casing logic into a separate function so that
27792 it is collected in a single place. This will make future changes to
27793 the logic easier. This commit introduces no functionality changes.
27795 * src/casefiddle.c (struct casing_context, prepare_casing_context): New
27796 structure for saving casing context and function to initialize it.
27797 (case_character): New function which cases character base on provided
27799 (do_casify_integer, do_casify_multibyte_string,
27800 do_casify_unibyte_string, casify_object, casify_region): Convert to
27801 use casing_context and case_character.
27803 2017-04-06 Michal Nazarewicz <mina86@mina86.com>
27805 Split casify_object into multiple functions
27807 casify_object had three major cases to cover and those were mostly
27808 independent of each other. Move those branches to separate function
27809 so it’s easier to comprehend each individual case.
27811 While at it, use somewhat more descriptive ch and cased variable names
27812 rather than c and c1.
27814 This commit introduces no functional changes.
27816 * src/casefiddle.c (casify_object): Split into…
27817 (do_casify_integer, do_casify_multibyte_string,
27818 do_casify_unibyte_string): …new functions.
27820 2017-04-06 Lars Brinkhoff <lars@nocrew.org>
27822 Update documentation for type semantics of records.
27824 * doc/lispref/objects.texi (Record Type): improve description of what
27825 `type-of' returns for records.
27826 (Type Descriptors): new section.
27827 * doc/lispref/elisp.texi: reference it.
27828 * doc/lispref/records.texi (Records): reference it. Document
27829 behavior when type slot is a record.
27831 * admin/alloc-colors.c (Fmake_record, Frecord): mention type desciptors.
27833 2017-04-06 Stefan Monnier <monnier@iro.umontreal.ca>
27835 * lisp/help-fns.el (describe-symbol): `nil' is not an interesting default.
27837 2017-04-06 Tom Tromey <tom@tromey.com>
27839 require cl-lib to fix fallout from mhtml series
27841 * lisp/align.el, lisp/calc/calc-embed.el, lisp/cedet/semantic.el,
27842 lisp/emulation/viper.el: Require cl-lib.
27844 2017-04-06 Ken Raeburn <raeburn@raeburn.org>
27846 In CANNOT_DUMP builds, allow editing of files named "dump".
27848 * lisp/loadup.el: Perform the "dump" or "bootstrap" actions like
27849 calling dump-emacs only if dump-emacs is defined; otherwise, don't
27850 treat those command-line argument specially.
27852 2017-04-06 Ken Raeburn <raeburn@raeburn.org>
27854 In CANNOT_DUMP builds, don't prepare for unexec.
27856 Having a command-line argument of "dump" or "bootstrap" would trigger
27857 behavior like not installing signal handlers. In CANNOT_DUMP modes,
27858 we should get signal handlers installed regardless of whatever funny
27859 file names we decide to edit.
27861 src/emacs.c (main) [CANNOT_DUMP]: Don't enable the "dumping"
27862 alterations to initialization that prepares the process for unexec.
27864 2017-04-06 Ken Raeburn <raeburn@raeburn.org>
27866 Allow a CANNOT_DUMP build to use exec-path during bootstrap.
27868 During a bootstrap, loading rmail.el invokes movemail to determine its
27869 flavor, but call-process doesn't work if exec-path is nil.
27871 * lisp/loadup.el: Only clear exec-path if dumping.
27873 2017-04-06 Ken Raeburn <raeburn@raeburn.org>
27875 Fix CANNOT_DUMP build on Darwin/macOS.
27877 * src/conf_post.h (malloc, realloc, free) [DARWIN_OS && emacs &&
27878 CANNOT_DUMP]: Don't define as unexec_malloc, etc.
27879 * src/emacs.c (main): Don't call unexec_init_emacs_zone.
27881 2017-04-05 Tom Tromey <tom@tromey.com>
27883 add two more mhtml tests
27885 * test/manual/indent/html-multi-2.html: New file.
27886 * test/manual/indent/html-multi-3.html: New file.
27888 2017-04-05 Tom Tromey <tom@tromey.com>
27890 enable mhtml-mode by default
27892 * lisp/files.el (auto-mode-alist): Reference mhtml-mode, not
27894 (magic-fallback-mode-alist): Likewise.
27895 * lisp/net/eww.el (eww-view-source): Use mthml-mode.
27897 2017-04-05 Tom Tromey <tom@tromey.com>
27901 * etc/NEWS: Update.
27902 * lisp/textmodes/mhtml-mode.el: New file.
27903 * test/manual/indent/html-multi.html: New file.
27904 * test/lisp/textmodes/mhtml-mode-tests.el: New file.
27905 * doc/emacs/text.texi (HTML Mode): Mention mhtml-mode.
27907 2017-04-05 Tom Tromey <tom@tromey.com>
27909 change sgml-mode to help multi-html mode
27911 * lisp/textmodes/sgml-mode.el (sgml-syntax-propertize-rules): New
27913 (sgml-syntax-propertize): Use it.
27914 (sgml--find-<>-backward): New function.
27915 (sgml-parse-tag-backward): Use it.
27917 2017-04-05 Tom Tromey <tom@tromey.com>
27919 make js.el respect prog-first-column
27921 * lisp/progmodes/js.el (js--proper-indentation): Call prog-first-column.
27923 2017-04-05 Tom Tromey <tom@tromey.com>
27925 make smie.el respect prog-first-column
27927 * lisp/emacs-lisp/smie.el (smie-indent-bob): Call prog-first-column.
27929 2017-04-05 Tom Tromey <tom@tromey.com>
27931 change viper to use derived-mode-p
27933 * lisp/subr.el (provided-mode-derived-p): New function.
27934 (derived-mode-p): Use it.
27935 * lisp/emulation/viper.el (viper-mode): Use derived-mode-p.
27936 (this-major-mode-requires-vi-state): Use provided-mode-derived-p.
27937 (set-viper-state-in-major-mode): Use derived-mode-p.
27939 2017-04-05 Tom Tromey <tom@tromey.com>
27941 change align to use derived-mode-p
27943 * lisp/align.el (align-region): Use derived-mode-p.
27945 2017-04-05 Tom Tromey <tom@tromey.com>
27947 change org to use derived-mode-p
27949 * lisp/org/org-list.el (org-list-insert-radio-list): Use
27951 * lisp/org/org-table.el (orgtbl-setup, orgtbl-toggle-comment): Use
27954 2017-04-05 Tom Tromey <tom@tromey.com>
27956 change semantic to use derived-mode-p
27958 * lisp/cedet/semantic.el (semantic-new-buffer-fcn): Use derived-mode-p.
27960 2017-04-05 Tom Tromey <tom@tromey.com>
27962 change calc to use derived-mode-p
27964 * lisp/calc/calc-embed.el (calc-embedded-find-modes)
27965 (calc-embedded-make-info): Use derived-mode-p.
27967 2017-04-05 Tom Tromey <tom@tromey.com>
27969 change auto-insert to use derived-mode-p
27971 * lisp/autoinsert.el (auto-insert): Use derived-mode-p.
27973 2017-04-05 Paul Eggert <eggert@cs.ucla.edu>
27975 * lisp/info.el (Info-search): Fix typo in April 1 change.
27977 2017-04-05 Paul Eggert <eggert@cs.ucla.edu>
27979 Minor cleanups related to type-of
27981 * src/data.c (Frecordp): Rename from Frecordp_p, for consistency.
27982 * src/data.c (syms_of_data):
27983 * src/frame.c (syms_of_frame): Put all the primitive type names
27984 together, under the "Types that type-of returns" comment.
27986 2017-04-05 Glenn Morris <rgm@gnu.org>
27988 * doc/lispref/package.texi (Package Archives): Mention https.
27990 2017-04-05 Glenn Morris <rgm@gnu.org>
27992 Advertise https for homepage of gnu.org packages
27994 * lisp/emacs-lisp/package.el (describe-package-1):
27995 Use https, if supported, for the homepage of packages on gnu.org.
27997 2017-04-05 Glenn Morris <rgm@gnu.org>
27999 Default to https for elpa.gnu.org if gnutls available
28001 * lisp/emacs-lisp/package.el (package-archives):
28002 Default to https for elpa.gnu.org if gnutls is available. Ref:
28003 https://lists.gnu.org/r/emacs-devel/2015-05/msg00130.html
28005 2017-04-04 Paul Eggert <eggert@cs.ucla.edu>
28007 Minor simplifications and doc for records
28009 * doc/lispref/records.texi (Records): Mention size limit.
28010 * etc/NEWS: Mention records.
28011 * src/alloc.c (allocate_pseudovector, allocate_record):
28012 Prefer 'PSEUDOVECTOR_SIZE_MASK' to its definiens.
28013 (allocate_record): Check arg range here, not in callers, as this
28014 simplifies the code. Use allocate_vectorlike instead of
28015 allocate_vector, to avoid duplicate runtime tests.
28016 (Fmake_record, record): Don't mention PSEUDOVECTOR_SIZE_BITS in
28017 the doc string, as it is not visible to the user.
28018 (Fmake_record, record, Fcopy_record):
28019 Prefer make_lisp_ptr to XSETVECTOR.
28020 (record): Broaden memcpy to copy the type, too.
28022 2017-04-04 Eli Zaretskii <eliz@gnu.org>
28024 Fix recent changes in record data type
28026 * src/alloc.c (Fmake_record, Frecord, Fcopy_record): Avoid
28027 compiler warnings when 'ptrdiff_t' is narrower than 'long int'.
28029 2017-04-04 Philipp Stephani <phst@google.com>
28031 Make subprocess functions resolve the default directory
28033 `call-process' doesn't respect file name handlers in
28034 `default-directory', so `file-name-non-special' has to resolve them
28035 for `process-file', `start-file-process', and
28036 `shell-command' (Bug#25949).
28038 * lisp/files.el (file-name-non-special): Also resolve default
28039 directory for 'process-file', 'start-file-process', and
28041 * test/lisp/files-tests.el
28042 (files-tests--file-name-non-special--subprocess): Add unit test.
28044 2017-04-04 Philipp Stephani <phst@google.com>
28046 Make ediff handle remote and quoted file names
28048 Quoted file names need to be unquoted before passed to
28049 subprocesses (Bug#25950).
28051 * lisp/vc/ediff-diff.el (ediff-exec-process): Handle remote and quoted
28053 * test/lisp/vc/ediff-diff-tests.el
28054 (ediff-diff-tests--ediff-exec-process--quoted-file): Add unit test.
28056 2017-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
28058 Backward compatibility with pre-existing struct instances.
28060 * lisp/emacs-lisp/cl-lib.el (cl--old-struct-type-of): New function.
28061 (cl-old-struct-compat-mode): New minor mode.
28063 * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Pass `record' to
28064 cl-struct-define to signal use of record objects.
28066 * lisp/emacs-lisp/cl-preloaded.el (cl--struct-get-class,
28067 cl-struct-define): Enable legacy defstruct compatibility.
28069 * test/lisp/emacs-lisp/cl-lib-tests.el (cl-lib-old-struct,
28070 old-struct): New tests.
28072 * doc/lispref/elisp.texi, doc/lispref/records.texi: Document
28073 `old-struct-compat'.
28075 2017-04-04 Lars Brinkhoff <lars@nocrew.org>
28077 Make the URL library use records.
28079 * lisp/url/url.el, lisp/url/url-cache.el, lisp/url/url-dav.el,
28080 lisp/url/url-expand.el, lisp/url/url-file.el, lisp/url/url-imap.el,
28081 lisp/url/url-ldap.el: Use `url-p' instead of `vectorp'.
28083 * lisp/url/url-http.el (url-http): Check for type `url' instead of
28086 2017-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
28088 Make EIEIO use records.
28090 * lisp/emacs-lisp/eieio-compat.el
28091 (eieio--generic-static-object-generalizer): Adjust to new tags.
28093 * lisp/emacs-lisp/eieio-core.el: Use records, and place the class object
28095 (eieio--object-class): Adjust to new tag representation.
28096 (eieio-object-p): Rewrite, and adapt to new `type-of' behavior.
28097 (eieio-defclass-internal): Use `make-record'.
28098 (eieio--generic-generalizer): Adjust generalizer code accordingly.
28100 * lisp/emacs-lisp/eieio.el (make-instance, clone): Use copy-record.
28102 * lisp/emacs-lisp/pcase.el (pcase-mutually-exclusive-predicates):
28105 * doc/lispref/records.texi, doc/misc/eieio.texi: Update for records.
28107 2017-04-04 Lars Brinkhoff <lars@nocrew.org>
28109 Make cl-defstruct use records.
28111 * lisp/emacs-lisp/cl-extra.el (cl--describe-class)
28112 (cl--describe-class-slots): Use the new `type-of'.
28114 * lisp/emacs-lisp/cl-generic.el (cl--generic-struct-tag): Use type-of.
28115 (cl--generic-struct-specializers): Adjust to new tag.
28117 * lisp/emacs-lisp/cl-macs.el (cl-defstruct): When type is nil, use records.
28118 Use the type symbol as the tag. Use copy-record to copy structs.
28119 (cl--defstruct-predicate): New function.
28120 (cl--pcase-mutually-exclusive-p): Use it.
28121 (cl-struct-sequence-type): Can now return `record'.
28123 * lisp/emacs-lisp/cl-preloaded.el (cl--make-slot-desc): Adjust ad-hoc
28124 code to new format.
28125 (cl--struct-register-child): Work with records.
28126 (cl-struct-define): Don't touch the tag's symbol-value and
28127 symbol-function slots when we use the type as tag.
28129 * lisp/emacs-lisp/cl-print.el (cl-print-object): Adjust to new tag.
28131 * test/lisp/emacs-lisp/cl-lib-tests.el (cl-lib-defstruct-record):
28134 * doc/lispref/records.texi, doc/misc/cl.texi: Update for records.
28136 2017-04-04 Lars Brinkhoff <lars@nocrew.org>
28138 Add record objects with user-defined types.
28140 * src/alloc.c (allocate_record): New function.
28141 (Fmake_record, Frecord, Fcopy_record): New functions.
28142 (syms_of_alloc): defsubr them.
28143 (purecopy): Work with records.
28145 * src/data.c (Ftype_of): Return slot 0 for record objects, or type
28146 name if record's type holds class.
28147 (Frecordp): New function.
28148 (syms_of_data): defsubr it. Define `Qrecordp'.
28149 (Faref, Faset): Work with records.
28151 * src/fns.c (Flength): Work with records.
28153 * src/lisp.h (prec_type): Add PVEC_RECORD.
28154 (RECORDP, CHECK_RECORD, CHECK_RECORD_TYPE): New functions.
28156 * src/lread.c (read1): Add syntax for records.
28158 * src/print.c (PRINT_CIRCLE_CANDIDATE_P): Add RECORDP.
28159 (print_object): Add syntax for records.
28161 * test/lisp/emacs-lisp/cl-print-tests.el (cl-print-tests-2):
28164 * test/src/alloc-tests.el (record-1, record-2, record-3):
28167 * doc/lispref/elisp.texi, doc/lispref/objects.texi,
28168 doc/lispref/records.texi: Add documentation for records.
28170 2017-04-04 Tino Calancha <tino.calancha@gmail.com>
28172 Fix a test in python-test.el
28174 Fix a test that breaks the test suite when it is run within a
28175 virtual environment.
28176 See following link for details:
28177 https://lists.gnu.org/r/emacs-devel/2017-03/msg00857.html
28178 * test/lisp/progmodes/python-tests.el
28179 (python-shell-calculate-process-environment-7): Bind
28180 python-shell-virtualenv-root to VIRTUAL_ENV when this var is set; otherwise
28183 2017-04-04 Noam Postavsky <npostavs@gmail.com>
28185 Throw a `search-failed' derived error in Info search
28187 The original fix for Bug#6106 switched from signaling `search-failed'
28188 to `user-error'. However, this breaks incremental searching over
28189 multiple nodes because the isearch code doesn't expect a `user-error'.
28191 * src/search.c (syms_of_search): New error, `user-search-failed',
28192 with `user-error' and `search-failed' as parents.
28193 * doc/lispref/errors.texi (Standard Errors): Document it.
28194 * etc/NEWS: Announce it.
28195 * lisp/info.el (Info-search): Use it instead of `user-error' so that
28196 isearch will handle failed searches correctly.
28198 2017-04-03 Michael Albinus <michael.albinus@gmx.de>
28202 * doc/misc/tramp.texi (Remote processes): Fix typo.
28204 * lisp/shell.el (shell): Fix typo.
28206 * lisp/net/tramp.el (tramp-set-connection-local-variables): Simplify.
28208 * test/lisp/net/tramp-tests.el (tramp-test30-explicit-shell-file-name):
28210 (tramp--test-special-characters, tramp--test-utf8): Adapt docstring.
28211 (tramp-test31-vc-registered)
28212 (tramp-test32-make-auto-save-file-name)
28213 (tramp-test33-make-nearby-temp-file)
28214 (tramp-test34-special-characters)
28215 (tramp-test34-special-characters-with-stat)
28216 (tramp-test34-special-characters-with-perl)
28217 (tramp-test34-special-characters-with-ls, tramp-test35-utf8)
28218 (tramp-test35-utf8-with-stat, tramp-test35-utf8-with-perl)
28219 (tramp-test35-utf8-with-ls)
28220 (tramp-test36-asynchronous-requests)
28221 (tramp-test37-recursive-load, tramp-test38-unload): Rename.
28223 2017-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
28225 * lisp/ses.el: Silence byte-compiler warnings.
28227 (ses-jump, ses-recalculate-cell, ses-define-local-printer): Silence
28228 byte-compiler warnings.
28230 2017-04-02 Glenn Morris <rgm@gnu.org>
28232 Belated fixes for admin.el's M-x make-manuals-dist
28234 * admin/admin.el (make-manuals-dist-output-variables): Additions.
28235 (make-manuals-dist--1): Also copy docstyle.texi.
28237 2017-04-02 Paul Eggert <eggert@cs.ucla.edu>
28239 Fix bugs in simplified test dependencies
28241 Problem reported by Glenn Morris in:
28242 https://lists.gnu.org/r/emacs-devel/2017-04/msg00017.html
28243 * test/Makefile.in (LOGFILES, TESTS): Omit leading "./".
28244 (TESTS): Omit unnecessary patsubst.
28245 (test_template): Redo dependency heuristic, hopefully
28246 correctly this time. It's the .log file that depends,
28247 not the phony test target. Declare the phonies to be PHONY.
28248 Resurrect the exception for the *-tests subdirectory.
28249 Adjust to the fact that leading "./" is omitted now.
28251 2017-04-02 Wilfred Hughes <me@wilfred.me.uk>
28253 Fix typo in docstring
28255 * lisp/help.el: Fix typo.
28257 2017-04-02 Michael Albinus <michael.albinus@gmx.de>
28259 Apply connecion-local variables for shells
28261 * doc/misc/tramp.texi (Remote processes): Show use of connection-local
28262 variables. Don't mention Emacs 23 anymore.
28263 (Frequently Asked Questions): Precise Emacs and MS Windows version.
28265 * lisp/files-x.el (connection-local-normalize-criteria):
28266 Suppress nil properties.
28267 (connection-local-set-profiles, with-connection-local-profiles):
28270 * lisp/shell.el (shell): Apply connecion-local variables.
28272 2017-04-01 Evgeni Kolev <evgenysw@gmail.com> (tiny change)
28274 Propertize only perl prototype chars `][$%&*;+@\' as punctuation
28276 This prevents variables in signatures such as `sub add ($a, $b)' from
28277 being treated as punctuation.
28278 * lisp/progmodes/perl-mode.el (perl-syntax-propertize-function):
28279 Strictly match only prototype characters as punctuation. (Bug#26037)
28281 2017-04-01 Tom Tromey <tom@tromey.com>
28283 fix two js-mode syntax propertization bugs
28286 * lisp/progmodes/js.el (js--syntax-propertize-regexp-regexp): Add
28287 zero-or-one to regular expression.
28288 (js-syntax-propertize-regexp): Update. Propertize body of regexp
28290 * test/lisp/progmodes/js-tests.el (js-mode-propertize-bug-1)
28291 (js-mode-propertize-bug-2): New tests.
28293 2017-04-01 Paul Eggert <eggert@cs.ucla.edu>
28295 Simplify test dependency generation
28297 Generate default dependencies by using GNU extensions to ‘make’
28298 rather than via a hacky auxiliary program and script.
28299 * .gitignore: Remove test/make-test-deps.mk.
28300 * test/Makefile.in (ELFILES, LOGFILES, TESTS):
28301 Use :=, not =, to avoid multiple redundant invocations of ‘find’.
28302 (test_template): Infer dependency directly instead of via
28304 (check-doit): Prepend ‘@’ to avoid excessively long ‘make’ output.
28305 (clean): No need to clean make-test-deps.mk.
28306 (make-test-deps.mk): Remove rule.
28307 * test/make-test-deps.emacs-lisp: Remove.
28309 2017-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
28311 * test/lisp/emacs-lisp/cl-lib-tests.el: Improve symbol-macrolet tests
28313 (cl-lib-symbol-macrolet): Fix last test so it doesn't break the whole
28315 (cl-lib-symbol-macrolet-2): New test.
28317 2017-04-01 Tino Calancha <tino.calancha@gmail.com>
28319 Use only posix options in a ediff-ptch test
28321 * test/lisp/vc/ediff-ptch-tests.el (ediff-ptch-test-bug26084):
28322 Use just "-b" patch option. Don't assume a particular suffix for
28325 2017-04-01 Jarno Malmari <jarno@malmari.fi>
28327 Initial implementation of HTTP Digest qop for url
28329 This also refactors digest authentication functions in url-auth.el.
28331 * lisp/url/url-auth.el (url-digest-auth, url-digest-auth-create-key):
28332 (url-digest-auth-build-response, url-digest-auth-directory-id-assoc):
28333 (url-digest-auth-name-value-string, url-digest-auth-source-creds):
28334 (url-digest-cached-key, url-digest-cache-key, url-digest-find-creds):
28335 (url-digest-find-new-key, url-digest-prompt-creds): Add new functions
28336 to simplify code and aid in unit testing.
28337 (url-digest-auth-build-response): Hook up new functionality, or fall
28339 (url-digest-auth-make-request-digest-qop):
28340 (url-digest-auth-make-cnonce, url-digest-auth-nonce-count):
28341 (url-digest-auth-name-value-string): Add new helper functions.
28342 * test/lisp/url/url-auth-tests.el (url-auth-test-colonjoin):
28343 (url-auth-test-digest-ha1, url-auth-test-digest-ha2):
28344 (url-auth-test-digest-request-digest): Add a few tests as now more
28345 features are testable via intermediate functions.
28346 (url-auth-test-challenges, url-auth-test-digest-request-digest): Test
28347 the new implementation. Parts of these were accidentally already
28348 merged in the past.
28350 2017-04-01 Tino Calancha <tino.calancha@gmail.com>
28352 Tweak ediff-ptch test in previous commit a bit more
28354 * test/lisp/vc/ediff-ptch-tests.el (ediff-ptch-test-bug26084):
28355 Apply patches without requiring a shell. Add some comments.
28357 2017-03-31 Glenn Morris <rgm@gnu.org>
28359 Tweak an ediff-ptch test
28361 * test/lisp/vc/ediff-ptch-tests.el (ediff-ptch-test-bug26084):
28362 Add skip conditions. Avoid going through shell where not needed.
28364 2017-03-31 Michael Albinus <michael.albinus@gmx.de>
28366 * lisp/net/tramp-smb.el (tramp-smb-errors):
28368 Add "NT_STATUS_PASSWORD_MUST_CHANGE".
28370 2017-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
28372 * test/lisp/emacs-lisp/cl-lib-tests.el (cl-lib-symbol-macrolet): New test.
28374 2017-03-31 Tino Calancha <tino.calancha@gmail.com>
28376 dired-mark-suffix: New command
28378 Now dired-mark-extension prepends '.' to extension when not present.
28379 Add command dired-mark-suffix to preserve the previous
28380 behavior (Bug#25942).
28381 * lisp/dired-x.el (dired-mark-suffix): New command;
28382 mark files ending in a given suffix.
28383 (dired--mark-suffix-interactive-spec): New defun.
28384 (dired-mark-extension, dired-mark-suffix): Use it.
28385 * doc/misc/dired-x.texi (Advanced Mark Commands): Update manual.
28386 * test/lisp/dired-x-tests.el: New test suite; add test for these features.
28388 2017-03-31 Tino Calancha <tino.calancha@gmail.com>
28390 default-directory: Remark that it must be a directory name
28392 * src/buffer.c (default-directory): Update docstring (Bug#26272).
28394 2017-03-31 Tino Calancha <tino.calancha@gmail.com>
28396 Delete confuse statement in manual
28398 * doc/misc/cl.texi (For Clauses): Delete confuse statement
28399 and its example (Bug#23550).
28401 2017-03-31 Paul Eggert <eggert@cs.ucla.edu>
28403 Use find -delete if available
28405 This shortens the ‘make’ output and should avoid some
28406 repetitive scanning of directories during a build.
28407 * configure.ac (FIND_DELETE): New var.
28408 * lisp/Makefile.in (compile-always, bootstrap-clean):
28409 * test/Makefile.in (clean, bootstrap-clean): Use it.
28410 * test/Makefile.in (ELCFILES, LOGSAVEFILES): Remove; no longer needed.
28412 2017-03-31 Mark Oteiza <mvoteiza@udel.edu>
28416 * lisp/gnus/gnus-start.el (gnus-display-time-event-handler): Use
28418 * lisp/gnus/gnus-util.el (gnus-boundp): Remove.
28420 2017-03-31 Niels Möller <nisse@lysator.liu.se> (tiny change)
28422 Stop `fixup-whitespace' adding trailing whitespace (Bug#18783)
28424 * lisp/simple.el (fixup-whitespace): Insert no spaces if point is at
28425 end of line after deleting horizontal whitespace.
28427 2017-03-31 Paul Eggert <eggert@cs.ucla.edu>
28429 * src/inotify.c (add_watch): Add comment.
28431 2017-03-31 Andreas Politz <politza@hochschule-trier.de>
28433 Minor filenotify.el fixes
28435 * lisp/filenotify.el: Require subr-x.
28436 (file-notify-callback): Use equal, not eq.
28438 2017-03-31 Noam Postavsky <npostavs@gmail.com>
28440 Improve packaging documentation
28442 * doc/lispref/package.texi (Packaging Basics):
28443 * doc/lispref/tips.texi (Library Headers): Clarify some header
28444 formats, relation between file headers and package
28445 attributes (Bug#13281).
28447 2017-03-31 John Mastro <john.b.mastro@gmail.com>
28449 Fix a small incompatibility in ibuffer
28451 Translate nil values from column functions to the empty string, so that
28452 subsequent calls to string-width don't signal an error (Bug#26317).
28453 * lisp/ibuffer.el (ibuffer-compile-format): If a column function returns
28454 nil, treat it like the empty string.
28456 2017-03-30 Alan Mackenzie <acm@muc.de>
28458 Fix C++ fontification problems 500 bytes after typing a space, and other bugs
28460 Also implement the "asymmetric space" rule for fontifying otherwise
28462 declarations/expressions.
28464 * lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Don't set
28465 c-new-BEG or c-new-END when there is no need.
28466 (c-forward-decl-or-cast-1): Add "CASE 17.5" to implement the "asymmetric
28469 * lisp/progmodes/cc-fonts.el (c-get-fontification-context): New function,
28470 extracted from c-font-lock-declarations. Add to this function processing to
28471 make `context' 'decl for lines contained within parens when these are also
28473 (c-font-lock-declarations): Call the newly extracted function above in place
28476 * lisp/progmodes/cc-mode.el (c-fl-decl-start): Set point before calling
28479 * lisp/progmodes/cc-vars.el (c-asymmetry-fontification-flag): New user option.
28481 * doc/misc/cc-mode.texi (Misc Font Locking): New node documenting the new
28482 "asymmetric fontification" rule, including the variable
28483 c-asymmetric-fontification-flag.
28485 2017-03-30 Paul Eggert <eggert@cs.ucla.edu>
28487 Some inotify cleanup
28489 This catches some problems with integer overflow and races
28490 that I noticed in inotify.c after reviewing the changes
28491 installed to fix Bug#26126.
28492 * src/fns.c, src/lisp.h (equal_no_quit): Now extern.
28493 * src/inotify.c (aspect_to_inotifymask):
28494 Check for cycles and for improper lists.
28495 (make_lispy_mask, lispy_mask_match_p): Remove.
28496 All callers changed to use INTEGER_TO_CONS and CONS_TO_INTEGER.
28497 (inotifyevent_to_event, add_watch):
28498 Don’t assume watch descriptors and cookies fit in fixnums.
28499 (add_watch): Use assoc_no_quit, not Fassoc.
28500 Avoid integer overflow in (very!) long-running processes where
28501 the Emacs watch ID could overflow. Avoid some duplicate code.
28502 (find_descriptor): New function.
28503 (remove_descriptor): First arg is now the returned value from
28504 find_descriptor, rather than the descriptor. This way, the
28505 value can be removed without calling Fdelete, which might quit.
28506 Wait until the end (when watch_list is consistent) before signaling
28508 (remove_watch, inotify_callback):
28509 Use find_descriptor to avoid the need for Fdelete.
28510 (inotify_callback): Use simpler tests for ioctl failure.
28511 Free temporary buffer if signaled, and put it on the stack if small.
28512 Use ssize_t to index through read results, to avoid a cast.
28513 (valid_watch_descriptor): New function, with a tighter check.
28514 (Finotify_rm_watch, Finotify_valid_p): Use it.
28515 (Finotify_valid_p): Use assoc_no_quit and ass_no_quit instead
28516 of Fassoc. Do not assume the first assoc succeeds.
28517 * test/src/inotify-tests.el (inotify-valid-p-simple):
28518 Add inotify-valid-p tests, some of which dump core without
28519 the fixes noted above.
28521 2017-03-30 Michael Albinus <michael.albinus@gmx.de>
28523 * lisp/net/tramp-sh.el (tramp-get-remote-locale): Add "C.UTF-8" as candidate.
28525 2017-03-30 Stefan Monnier <monnier@iro.umontreal.ca>
28527 * lisp/cedet/semantic/wisent/wisent.el (wisent-automaton-p): Use obarrayp.
28529 2017-03-30 Paul Eggert <eggert@cs.ucla.edu>
28531 Fix assoc_no_quit so that it does not quit
28533 The problem was that it called Fequal, which can quit.
28534 * src/fns.c (enum equal_kind):
28535 New enum, to be used in place of a boolean.
28536 (equal_no_quit): New function.
28537 (Fmemql, Feql): Use it to compare floats, as a minor tuneup.
28538 (assoc_no_quit): Use it to avoid quitting, the main point here.
28539 (internal_equal): Generalize bool to enum equal_kind arg, so that
28540 there are now 3 possibilities instead of 2. Do not signal an
28541 error if EQUAL_NO_QUIT. Put the arg before the depth, since depth
28542 should be irrelevant if the arg is EQUAL_NO_QUIT. All callers
28545 2017-03-29 Alan Mackenzie <acm@muc.de>
28547 Amend gitmerge to recognize the injunction "don't merge".
28549 * admin/gitmerge.el (gitmerge-skip-regexp): amend regexp to match "don't" as
28552 2017-03-29 Simen Heggestøyl <simenheg@gmail.com>
28554 Add one more CSS pseudo-class
28556 * lisp/textmodes/css-mode.el (css-pseudo-class-ids): Add
28559 2017-03-29 Simen Heggestøyl <simenheg@gmail.com>
28561 Update list of CSS pseudo-classes
28563 * lisp/textmodes/css-mode.el (css-pseudo-class-ids): Update list of
28566 2017-03-29 Noam Postavsky <npostavs@gmail.com>
28568 Adjust some search failure errors in info.el
28570 * lisp/info.el (Info-select-node): The search for beginning of node is
28571 an internal detail, and is not normally expected to fail, so it should
28572 not be a user error.
28573 (Info-complete-menu-item): Failing to find a menu indicates the user
28574 searched for a menu when there isn't one, so change to `use-error'.
28576 2017-03-28 Alan Mackenzie <acm@muc.de>
28578 * lisp/progmodes/cc-defs.el (c-version): Restore c-version to 5.33
28580 2017-03-28 Paul Eggert <eggert@cs.ucla.edu>
28582 Don’t mishandle (format "%i" -1.0)
28584 * src/editfns.c (styled_format): Treat %i like %d when converting arg.
28586 2017-03-28 Noam Postavsky <npostavs@gmail.com>
28588 * lisp/emacs-lisp/ert.el (ert-run-tests): Make INTERACTIVE arg optional.
28590 2017-03-28 Michael Albinus <michael.albinus@gmx.de>
28592 * src/inotify.c (Finotify_add_watch): aspect can also be a symbol.
28594 2017-03-28 Noam Postavsky <npostavs@gmail.com>
28596 Don't add `search-failed' to ignored errors in info.el (Bug#6106)
28598 * lisp/info.el: Stop adding `search-failed' to `debug-ignored-errors'.
28599 (Info-select-node, Info-search): Replace (signal 'search-failed ...)
28600 with (user-error "Search failed: "...).
28602 2017-03-27 Paul Eggert <eggert@cs.ucla.edu>
28604 Fix obsolete ‘test/automated’ references
28606 * Makefile.in (mostlyclean, clean, maybeclean_dirs, distclean)
28607 (bootstrap-clean, maintainer-clean):
28608 Clean ‘test’, not ‘test/automated’. Test for existence of
28609 subdirectory only for ‘test’, not for directories that should
28611 * admin/MAINTAINERS, etc/TODO, lisp/emacs-lisp/bytecomp.el:
28612 * lisp/emacs-lisp/seq.el, lisp/emacs-lisp/thunk.el:
28613 * lisp/man.el (Man-parse-man-k):
28614 * lisp/url/url-domsuf.el, make-dist:
28615 * test/file-organization.org:
28616 Fix obsolete references to test/automated.
28618 2017-03-27 Katsumi Yamaoka <yamaoka@jpl.org>
28620 shr-image-fetched: Work for narrowed Gnus article
28622 See <8737e3msun.fsf@gmail.com> of bug#26231 in the bug-gnu-emacs list.
28624 * lisp/net/shr.el (shr-image-fetched): Work for narrowed article.
28626 2017-03-27 Michael Albinus <michael.albinus@gmx.de>
28628 * lisp/net/tramp.el (tramp-file-name-handler): Autoload it.
28630 2017-03-27 Eric Abrahamsen <eric@ericabrahamsen.net>
28632 Expand manual section on quitting windows
28634 * doc/lispref/windows.texi (Quitting Windows): Provide more
28635 information about the elements of the quit-restore window parameter,
28636 and how they affect the behavior of quit-restore-window.
28638 2017-03-26 Philipp Stephani <phst@google.com>
28640 Add check for expected backtrace in module calls.
28642 * test/manual/cedet/tests/test.el
28643 (mod-test-non-local-exit-signal-test): Compare actual backtrace to
28644 expected backtrace.
28646 2017-03-26 Eli Zaretskii <eliz@gnu.org>
28648 Fix redisplay glitches due to recent change in redisplay_internal
28650 * src/xdisp.c (redisplay_internal): A better fix for bug#26097.
28651 See https://lists.gnu.org/r/emacs-devel/2017-03/msg00695.html
28652 for the problems caused by the original fix.
28654 2017-03-26 Michael Albinus <michael.albinus@gmx.de>
28658 * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
28659 * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
28660 * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
28661 * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist):
28662 Autoload. Call `tramp-register-foreign-file-name-handler'. (Bug#26258)
28664 * lisp/net/tramp.el (tramp-autoload-file-name-handler): Remove.
28665 (tramp-register-autoload-file-name-handlers)
28666 (tramp-register-file-name-handlers): Do not handle
28667 `tramp-autoload-file-name-handler' anymore. Mark `operations'
28668 the handlers are responsible for.
28669 (tramp-register-foreign-file-name-handler): New defun.
28671 2017-03-26 Noam Postavsky <npostavs@gmail.com>
28673 Fix docstring of dabbrev-abbrev-char-regexp
28675 * lisp/dabbrev.el (dabbrev-abbrev-char-regexp): Using a value of nil
28676 is equivalent to "\\sw\\|\\s_", and has no special behavior. If the
28677 previous character doesn't match, we search backwards for one that
28678 does, not throw an error. Replace Lisp example with C based one to
28679 make it clear that "symbol" means a sequence of word and symbol
28680 constituent characters, not a Lisp symbol (Bug#358).
28682 2017-03-26 Johan Claesson <johanclaesson@bredband.net> (tiny change)
28684 * doc/misc/cl.texi (Iteration Clauses): Clarify example (Bug#19515).
28686 2017-03-26 Andreas Politz <politza@hochschule-trier.de>
28688 Minor fixes for inotify.c and filenotify.el
28690 * lisp/filenotify.el (file-notify--watch-absolute-filename):
28692 (file-notify-callback): Simplify.
28694 * src/inotify.c (Finotify_add_watch): Adapt docstring.
28696 2017-03-26 Andreas Politz <politza@hochschule-trier.de>
28698 Fix issues regarding inotify file-notification
28700 Remove special code handling the inotify back-end.
28701 * lisp/filenotify.el (file-notify--watch): New struct
28702 representing a file-watch.
28703 (file-notify-descriptors): Use the new struct as hash-value.
28704 (file-notify-handle-event): Check that event is a cons.
28705 (file-notify--rm-descriptor, file-notify--event-watched-file)
28706 (file-notify--event-file-name, file-notify--event-file1-name)
28707 (file-notify-callback, file-notify-add-watch)
28708 (file-notify-rm-watch, file-notify-valid-p): Use new struct.
28709 Remove special code handling inotify descriptors. Remove code
28710 handling multiple clients per descriptor.
28711 (file-notify--descriptor): Remove unused function.
28713 Let inotify-add-watch return a unique descriptor on every
28714 call, like every other back-end does (Bug#26126). Prevent
28715 multiple clients from interfering with each other, when
28716 watching a shared descriptor.
28717 * src/inotify.c (watch_list): Extend the format by including a
28718 id and the provided mask.
28719 (INOTIFY_DEFAULT_MASK): Default mask used for all clients.
28720 (make_watch_descriptor): Removed.
28721 (make_lispy_mask, lispy_mask_match_p): New functions.
28722 (inotifyevent_to_event): Match event against the mask provided
28724 (add_watch, remove_descriptor, remove_watch): New functions
28725 for managing the watch_list.
28726 (inotify_callback): Use the new functions.
28727 (Finotify_add_watch, Finotify_rm_watch): Remove deprecated
28728 flags from documentation. Add check for validity of provided
28729 descriptor. Use the new functions. Use the default mask.
28730 (INOTIFY_DEBUG): Add new debug conditional.
28731 (inotify-watch-list, inotify-allocated-p): New debug functions.
28732 (symbol_to_inotifymask, syms_of_inotify): Remove deprecated symbols.
28734 * test/lisp/filenotify-tests.el:
28735 (file-notify-test02-rm-watch): Remove expected failure for inotify.
28737 2017-03-26 Paul Pogonyshev <pogonyshev@gmail.com>
28739 * lisp/emacs-lisp/pcase.el (pcase): Comment debug message (Bug#26177).
28741 2017-03-25 Jens Uwe Schmidt <ju.schmidt@gmx.de> (tiny change)
28743 Stop edebug getting stuck on backquote (Bug#23651)
28745 * lisp/emacs-lisp/edebug.el (edebug-read-sexp): Move forward after
28746 reading backquote or comma.
28748 2017-03-25 Eric Abrahamsen <eric@ericabrahamsen.net>
28750 Expand manual section on quitting windows
28752 * doc/lispref/windows.texi (Quitting Windows): Provide more
28753 information about the elements of the quit-restore window parameter,
28754 and how they affect the behavior of quit-restore-window.
28756 2017-03-25 Eli Zaretskii <eliz@gnu.org>
28758 Support in ispell.el multiple dictionaries loaded by Hunspell
28760 * lisp/textmodes/ispell.el (ispell-find-hunspell-dictionaries):
28761 Support Hunspell configurations that load more than one dictionary
28762 by default. Doc fix. (Bug#25830)
28764 2017-03-25 Michael Albinus <michael.albinus@gmx.de>
28766 Simplify Tramp autoloading.
28768 * lisp/net/tramp.el (tramp-completion-file-name-handler):
28769 Simplify autoloading. Give it the `operations' property.
28770 (tramp-completion-handle-expand-file-name): Remove.
28772 2017-03-25 Eli Zaretskii <eliz@gnu.org>
28774 Fix a segfault due to failure to realize some faces
28776 * src/xdisp.c (redisplay_internal): If the frame becomes garbaged
28777 while redisplaying its windows, redisplay all of its windows
28779 (init_iterator): When freeing all realized faces on all frames,
28780 reset the 'face_change' flag of the frame whose window we are
28783 2017-03-25 Philipp Stephani <phst@google.com>
28785 Use a named function for 'safe-local-variable
28787 This improves the help screen for `version-control' (Bug#25431).
28789 * lisp/files.el (version-control-safe-local-p): New function.
28790 (version-control): Use it.
28792 2017-03-25 Eli Zaretskii <eliz@gnu.org>
28794 ;* doc/misc/info.texi (Choose menu subtopic): Improve indexing. (Bug#26236)
28796 2017-03-25 Helmut Eller <eller.helmut@gmail.com>
28798 Make it easier to abort a series of tests with C-g
28800 * lisp/emacs-lisp/ert.el (ert-run-tests): Add "interactively" arg. If
28801 interactively is true and a test was aborted then ask if the remaining
28802 tests should be aborted too.
28803 (ert-run-tests-batch, ert-run-tests-interactively): Pass in
28806 2017-03-24 Paul Eggert <eggert@cs.ucla.edu>
28808 Don’t require chown/chgrp for game installation
28810 Problem reported by Joseph Mingrone in:
28811 https://lists.gnu.org/r/emacs-devel/2017-03/msg00622.html
28812 * lib-src/Makefile.in (exp_archlibdir): Don’t fail if chown or
28813 chgrp fails with update-game-score and the game directory.
28814 Instead, expect the installer to fix this up afterwards.
28816 2017-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
28818 * lisp/emacs-lisp/lisp-mode.el: Don't highlight \( at BOL
28820 (elisp--font-lock-backslash): Extract from lisp-el-font-lock-keywords-2.
28821 Don't highlight \ at BOL. Don't assume syntax-ppss preserves match-data.
28823 2017-03-23 Philipp Stephani <phst@google.com>
28825 Protect against an infloop in python-mode
28827 There appears to be an edge case caused by using `syntax-ppss' in a
28828 narrowed buffer during JIT lock inside of Python triple-quote strings.
28829 Unfortunately it is impossible to reproduce without manually
28830 destroying the syntactic information in the Python buffer, but it has
28831 been observed in practice. In that case it can happen that the syntax
28832 caches get sufficiently out of whack so that there appear to be
28833 overlapping strings in the buffer. As Python has no nested strings,
28834 this situation is impossible and leads to an infloop in
28835 `python-nav-end-of-statement'. Protect against this by checking
28836 whether the search for the end of the current string makes progress.
28838 * lisp/progmodes/python.el (python-nav-end-of-statement): Protect
28840 * test/lisp/progmodes/python-tests.el
28841 (python-tests--python-nav-end-of-statement--infloop): Add unit test.
28843 2017-03-23 Michael Albinus <michael.albinus@gmx.de>
28845 * doc/lispref/os.texi (File Notifications):
28847 Strengthen the recommendation to use filenotify.el.
28849 2017-03-23 Paul Eggert <eggert@cs.ucla.edu>
28854 2017-03-22 getopt: merge from glibc
28855 * build-aux/config.sub, lib/getopt.c, lib/getopt.in.h:
28856 * lib/getopt1.c, lib/getopt_int.h: Copy from gnulib.
28857 * lib/gnulib.mk.in: Regenerate.
28859 2017-03-23 Michael Albinus <michael.albinus@gmx.de>
28861 Use lexical-bind in Tramp
28863 * lisp/net/tramp*.el: Add lexical-binding cookie. Move declarations up.
28865 * lisp/net/tramp-adb.el (tramp-adb-parse-device-names): Use `push'
28866 rather than `add-to-list'.
28867 (tramp-adb-get-device): Remove unused variable.
28869 * lisp/net/tramp-gvfs.el (tramp-gvfs-parse-device-names): Remove unused
28872 * lisp/net/tramp.el (auto-save-file-name-transforms): Declare.
28873 (tramp-find-file-name-coding-system-alist): Use `push' rather
28874 than `add-to-list'.
28876 * test/lisp/net/tramp-tests.el: Add lexical-binding cookie.
28877 Require 'dired. Move declarations up.
28878 (tramp-test32-make-nearby-temp-file): Wrap `make-nearby-temp-file'
28879 and `temporary-file-directory' calls with `with-no-warnings'.
28880 (tramp-test35-asynchronous-requests): Mark unused variable.
28882 2017-03-23 Kaushal Modi <kaushal.modi@gmail.com>
28883 Noam Postavsky <npostavs@gmail.com>
28885 Do not include comment start chars in ffap string
28887 * lisp/ffap.el (ffap-string-at-point): If the point is in a comment,
28888 ensure that the returned string does not contain the comment start
28889 characters (especially for major modes that have '//' as comment start
28890 characters). Otherwise, in a major mode like c-mode, with `ido-mode'
28891 enabled and `ido-use-filename-at-point' set to `guess', doing "C-x
28892 C-f" on a "//foo" comment will initiate an attempt to access a path
28893 "//foo" (Bug#24057).
28895 2017-03-23 Martin Rudalics <rudalics@gmx.at>
28897 c:/Temp/gtk-window-move/ChangeLog.txt
28899 2017-03-22 Michael Albinus <michael.albinus@gmx.de>
28901 Fix filenotify.el issue for kqueue
28903 * lisp/filenotify.el (file-notify-add-watch): Use directory
28904 for remote file name handlers.
28906 * test/lisp/filenotify-tests.el (file-notify-test01-add-watch):
28907 Create/delete temporary file only for "kqueue".
28908 (file-notify-test02-rm-watch): Create/delete temporary files.
28910 2017-03-22 Michael Albinus <michael.albinus@gmx.de>
28912 Extend `file-notify-test02-rm-watch'
28914 * test/lisp/filenotify-tests.el (file-notify-test02-rm-watch):
28915 Expect it failed for inotify. Divide tests into different
28916 `unwind-protect' clauses. Check, that removing watch
28917 descriptors out of order do not harm. (Bug#26126)
28919 2017-03-22 Noam Postavsky <npostavs@gmail.com>
28921 * test/lisp/emacs-lisp/lisp-mode-tests.el (indent-subsexp): Test for Bug#26187
28923 2017-03-22 Graham Dobbins <gdobbins@protonmail.com> (tiny change)
28925 * lisp/emacs-lisp/lisp-mode.el (indent-sexp): Fix null endpos case
28927 2017-03-21 Paul Eggert <eggert@cs.ucla.edu>
28929 Improve configure --with-pop etc. diagnostics
28931 * configure.ac: Improve diagnostics re --with-pop and
28932 --with-mailutils (Bug#26102).
28934 2017-03-21 Eli Zaretskii <eliz@gnu.org>
28936 Revert "Make --without-pop the default."
28938 This reverts commit 9319de675e395517f9a7b50cae1a3aad9cd0abc2.
28940 2017-03-21 Paul Eggert <eggert@cs.ucla.edu>
28942 Don’t remove dependency files when configuring
28944 Problem reported by Tom Tromey in:
28945 https://lists.gnu.org/r/emacs-devel/2017-03/msg00533.html
28946 * configure.ac: Don’t remove */*.o and */deps/* when
28947 --enable-autodepend is in effect.
28949 2017-03-21 Paul Eggert <eggert@cs.ucla.edu>
28951 Make --without-pop the default.
28953 Suggested by Angelo Graziosi in:
28954 https://lists.gnu.org/r/emacs-devel/2017-03/msg00431.html
28955 * configure.ac: Change the default from --with-pop to
28956 --without-pop. Adjust diagnostics to match.
28958 2017-03-21 Paul Eggert <eggert@cs.ucla.edu>
28960 Streamline dependency-file generation
28962 * configure.ac (AUTODEPEND_PARENTS): New var.
28963 mkdir the dependency directories here, to simplify ‘make’.
28964 Remove dependency files just before outputting Makefiles, so that
28965 they are preserved if ‘configure’ exits early due to some other problem.
28966 * lib/Makefile.in, lwlib/Makefile.in, oldXMenu/Makefile.in:
28967 * src/Makefile.in: Adjust deps strategies to be similar, as follows:
28968 (MKDEPDIR): Remove. All uses removed. This cuts down on the
28969 number of processes spun off by ‘make’.
28970 (clean mostlyclean): Remove $(DEPDIR) contents, not $(DEPDIR) itself.
28971 (distclean): Remove $(DEPDIR) itself.
28972 * lwlib/Makefile.in (all): Move to front, so that depdir includes
28973 do not alter default action.
28975 2017-03-21 Paul Eggert <eggert@cs.ucla.edu>
28977 Port and simplify example sh script
28979 * doc/misc/org.texi (noweb-ref): Simplify shell script example and
28980 don’t use ‘tail -1’, which is not portable.
28982 2017-03-21 Noam Postavsky <npostavs@gmail.com>
28984 Narrow scope of modification hook renabling in org-src fontification
28986 Modification hooks should be enabled while modifying text in the
28987 org-src temp buffer, but in 2017-01-29 "Call modification hooks in
28988 org-src fontify buffers" the hooks were enabled also for modifications
28989 to the original org buffer. This causes fontification errors when
28990 combined with certain packages, as reported in
28991 https://lists.gnu.org/r/emacs-orgmode/2017-03/msg00420.html.
28993 * lisp/org/org-src.el (org-src-font-lock-fontify-block): Reduce scope
28994 of inhibit-modification-hooks let-binding.
28996 2017-03-21 Tino Calancha <tino.calancha@gmail.com>
28998 epatch: Save right backups in Git multipatches
29000 Multipatches on N Git files save wrong backups for
29001 N-1 files; only the last one has a correct backup (Bug#26084).
29002 * lisp/vc/diff-mode.el (diff-file-junk-re): Add 'Prereq: '
29003 * lisp/vc/ediff-ptch.el (ediff-map-patch-buffer): Use 'diff-file-junk-re'.
29004 * test/lisp/vc/ediff-ptch-tests.el (ediff-ptch-test-bug25010):
29005 Rename from ibuffer-test-bug25010.
29006 (ediff-ptch-test-bug26084): New test.
29008 2017-03-21 Michael R. Mauger <michael@mauger.com>
29010 * lisp/progmodes/sql.el: Version 3.6
29012 (sql-login-params): Added :must-match for completition of
29013 `server' and `database' login parameters.
29014 (sql-sqlite-login-params, sql-postgres-login-params): Set
29015 :must-match to `confirm'.
29016 (sql-get-login-ext): Use :must-match value to control
29017 `read-file-name' or `completing-read'.
29018 (sql-connect): Added optional BUF-NAME parameter; Reworked
29019 connection variable processing; Pass buffer name to
29020 `sql-product-interactive'.
29021 (sql-product-interactive): Pass buffer name along.
29022 (sql-comint): Add optional BUF-NAME and calculate reasonable default.
29023 (sql-comint-oracle, sql-sybase-comint, sql-comint-informix)
29024 (sql-comint-sqlite, sql-comint-mysql, sql-comint-solid)
29025 (sql-comint-ingres, sql-comint-ms, sql-comint-postgres)
29026 (sql-comint-interbase, sql-comint-db2, sql-comint-linter)
29027 (sql-comint-vertica): Add optional BUF-NAME, pass to
29029 (sql-oracle--list-oracle-name): New function.
29030 (sql-oracle-list-all): Use it.
29031 (sql-oracle-completion-object): Enhanced.
29033 2017-03-20 Vincent Belaïche <vincentb1@users.sourceforge.net>
29035 Solve ses-recalculate-cell updating only current line bug.
29037 * lisp/ses.el (ses-recalculate-cell): Add optional argument
29038 ses--curcell to avoid overwriting ses--curcell when function is
29039 called from ses-recalculate-all. Update docstring accordingly.
29040 (ses-recalculate-all): Call ses-recalculate-cell with argument
29041 ses--curcell to avoid its overwriting.
29043 2017-03-20 Paul Eggert <eggert@cs.ucla.edu>
29045 Fix problem with out-of-date dependencies
29047 Problem reported by Robert Marshall in:
29048 https://lists.gnu.org/r/emacs-devel/2017-03/msg00501.html
29049 Although this problem has been with us for a while, the recent
29050 change from Automake to GNU Make exposed it again.
29051 * configure.ac (AUTO_DEPEND): When autodepending, clean out any
29052 leftover dependency and object files, since the previous sources'
29053 dependencies may disagree with the current ones. Reconfiguring
29054 typically needs to force a rebuild anyway.
29056 2017-03-20 Mark Oteiza <mvoteiza@udel.edu>
29058 Simpler filter implementation
29060 * lisp/play/dunnet.el (dun-endgame-question): Get or set
29061 dun-endgame-questions one time only. Use dolist and an index to
29064 2017-03-20 Mark Oteiza <mvoteiza@udel.edu>
29066 * lisp/button.el (forward-button): Use user-error instead.
29068 2017-03-19 Paul Eggert <eggert@cs.ucla.edu>
29072 This gets Emacs working again with HP-UX Itanium cc.
29074 2017-03-19 stdalign: tweak version# and test for HP-UX IA64
29075 2017-03-18 stdalign: restore previous behavior for HP-UX IA64
29076 2017-03-17 stat-time, timespec: Support header files in C++ mode
29077 2017-03-17 stdalign: Make it work with HP-UX cc
29078 2017-03-17 flexmember: try to detect HP-UX 11.31 cc bug
29079 2017-03-16 stdint: Fix test compilation failure with HP-UX 11 cc.
29080 2017-03-14 gnulib-tool: don't produce tests with only snippets
29081 2017-03-14 limits-h: Make it work with HP-UX cc.
29082 * etc/PROBLEMS: Remove now-obsolete entry for HP-UX 11.31.
29083 * lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
29084 * lib/limits.in.h, lib/stat-time.h, lib/stdalign.in.h:
29085 * lib/stdint.in.h, lib/timespec.h, m4/flexmember.m4, m4/stdalign.m4:
29088 2017-03-19 Paul Eggert <eggert@cs.ucla.edu>
29090 * ChangeLog.2: Merge from emacs-25.
29092 2017-03-19 Paul Eggert <eggert@cs.ucla.edu>
29094 Fixups after merge from emacs-25
29096 * etc/NEWS: Remove stray entry.
29097 * etc/NEWS.25: Copy from Emacs emacs-25 etc/NEWS.
29098 * lisp/textmodes/rst.el (rst-package-emacs-version-alist):
29099 Make it nondecreasing.
29101 2017-03-19 Paul Eggert <eggert@cs.ucla.edu>
29103 Merge from origin/emacs-25
29105 d71e071 Improve documentation of interactive "r".
29107 2017-03-19 Paul Eggert <eggert@cs.ucla.edu>
29109 Merge from origin/emacs-25
29111 a094732 * etc/PROBLEMS: Say that HP-UX cc doesn't work.
29112 1925dd9 Fix duplicate wording in Emacs manual
29113 6de8429 * lisp/paren.el (show-paren--default, show-paren-function): A...
29114 2d671fd Fix wording in Emacs manual
29115 a8766a2 Document how to customize input methods
29116 6eb8995 * lisp/net/eww.el (eww-reload): Doc fix. (Bug#25981)
29117 aceac95 Fix warning message about native completion (Bug#25984)
29118 a314c1f Clarify documentation of 'raise' and 'height' display specs
29119 f366f6e Mention problems with GPaste in PROBLEMS
29120 6e788ef ; etc/PROBLEMS: Explain about the python+libedit problem (Bug...
29121 6406618 Fix doc strings in info.el
29122 c1ed152 ; * src/keyboard.c (Fposn_at_point): Fix last change.
29123 eed9677 Fix doc string of 'posn-at-point'
29124 0d5957e Documentation fix in elisp reference manual
29126 2017-03-19 Paul Eggert <eggert@cs.ucla.edu>
29128 Merge from origin/emacs-25
29130 ec4226d * lisp/woman.el (woman): Fix docstring prefix arg description.
29131 2b774fa Mention "editor" in Emacs man page header
29132 ae60d0c Document problems with nerd-fonts
29133 2fdb5a9 ; Details about pinning Emacs to w32 task bar
29134 5c3105e * doc/lispref/modes.texi (Derived Modes): Make example more i...
29135 4c51ef4 Clarify what is the "cursor"
29136 8303c32 ; * etc/NEWS: Copyedits.
29137 3f7493e ; Fix a typo in comment
29138 c54cf8d Improve commentary in lisp.h
29139 8b92f86 ; * admin/make-tarball.txt: Cross-reference admin/release-pro...
29140 0ba9932 Disable native completion for ipython (Bug#25067)
29141 38fc456 Fix a typo in ada-mode manual
29142 00e75ba ; * src/coding.c (Fencode_coding_region): Fix a typo in the d...
29143 a541c21 Clarify documentation of 'bufferpos-to-filepos' and 'filepos-...
29149 2017-03-19 Paul Eggert <eggert@cs.ucla.edu>
29151 Merge from origin/emacs-25
29153 02d9ad8 * admin/make-tarball.txt: Add documentation regarding the rel...
29155 2017-03-19 Paul Eggert <eggert@cs.ucla.edu>
29157 Merge from origin/emacs-25
29159 e1171de * CONTRIBUTE (Documenting your changes): Index new vars/comma...
29161 2017-03-19 Paul Eggert <eggert@cs.ucla.edu>
29163 Merge from origin/emacs-25
29165 ab0a60a ; * CONTRIBUTE (Generating ChangeLog entries): Drop duplicate...
29166 7e02a47 Index byte-compile-debug
29167 7c1e598 Document `byte-compile-debug' in the ELisp manual
29168 4d81eb4 Document variable `byte-compile-debug'
29169 72ef710 Fix call to debugger on assertion failure
29170 ae8264c Call modification hooks in org-src fontify buffers
29171 b3139da ; Fix last change in doc/lispref/strings.texi
29172 c331f39 Improve documentation of 'format' conversions
29173 9f52f67 Remove stale functions from ert manual
29174 c416b14 Fix a typo in Eshell manual
29175 06695a0 ; Fix a typo in ediff-merg.el
29176 954e9e9 Improve documentation of hooks related to saving buffers
29177 9fcab85 Improve documentation of auto-save-visited-file-name
29178 2236c53 fix typo in mailcap-mime-extensions
29179 85a3e4e Fix typos in flymake.el
29180 a1ef10e More NEWS checking for admin.el's set-version
29183 # lisp/emacs-lisp/bytecomp.el
29185 2017-03-19 Paul Eggert <eggert@cs.ucla.edu>
29187 Merge from origin/emacs-25
29189 5569e64 ; Spelling fixes
29190 24a5f57 * lisp/net/eww.el (eww-tag-meta): Handle single quoted URLs (...
29191 9b89896 * lisp/progmodes/sql.el (sql-product-alist): Doc tweak
29192 69b50f5 * lisp/progmodes/sql.el (sql-product-alist): Doc fix. (Bug#2...
29193 42eae54 Improve documentation of dabbrevs
29194 b0ade0d Clarify that easy-menu-add is a nop (Bug#25382)
29195 3c69f2c * lisp/textmodes/rst.el (rst-package-emacs-version-alist): Fi...
29198 # lisp/textmodes/rst.el
29200 2017-03-19 Paul Eggert <eggert@cs.ucla.edu>
29202 Merge from origin/emacs-25
29204 0e35405 Improve documentation of coding-systems
29205 c2fd04c Improve definition of 'variable-pitch' face on MS-Windows
29206 16fb50d Fix an error message in python.el
29207 a2a2073 Clarify major mode switching
29208 fc38671 Add helpful comment to compile-command's docstring
29209 ee65d85 Fix ':version' of 'select-enable-primary'
29211 2017-03-19 Paul Pogonyshev <pogonyshev@gmail.com>
29213 Fix bug in generator function with pcase (Bug#26068)
29215 * lisp/emacs-lisp/cl-macs.el (cl--sm-macroexpand): Remove some calls
29218 2017-03-19 Alan Mackenzie <acm@muc.de>
29220 Fix chaotic indentation of C++ lambda. Enhance documentation thereof
29222 * lisp/progmodes/cc-engine.el (c-looking-at-inexpr-block): qualify an
29223 invocation of c-on-identifier with a check we're not at the _end_ of an
29226 * doc/misc/cc-mode.texi: (Tex title page): Remove @subtitlefont because the
29227 perl versions of texi2dvi haven't implemented it.
29228 (Syntactic Symbols): Note that `inlambda' is also used in C++ Mode, not just
29230 (Statement Block Symbols): Add a section illustrating a C++ lambda function.
29231 (FAQ): Add a question about "excessive" indentation of the contents of a C++
29232 lambda function, and how to get rid of it.
29234 2017-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
29236 Remove unused vars in cl-extra.el and tramp.el.
29238 * lisp/emacs-lisp/cl-extra.el (cl--print-table): Remove unused vars.
29240 * lisp/net/tramp.el (tramp-dissect-file-name): Remove unused `match'.
29241 (outline-regexp, ls-lisp-use-insert-directory-program): Declare.
29242 (tramp-find-foreign-file-name-handler): Mark unused arg, remove unused `v`.
29244 2017-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
29246 Improve describe-symbol's layout of slots when describing types
29248 * lisp/emacs-lisp/cl-extra.el (cl--print-table): New function.
29249 (cl--describe-class-slots): Use it.
29251 2017-03-18 Michael Albinus <michael.albinus@gmx.de>
29255 * lisp/net/tramp.el (tramp-completion-file-name-handler-alist):
29256 <expand-file-name>: Remove handler. (Bug#26156)
29258 2017-03-18 Stefan Monnier <monnier@iro.umontreal.ca>
29260 * lisp/obarray.el (obarray-size): Avoid compiler warning.
29262 2017-03-18 Eli Zaretskii <eliz@gnu.org>
29264 Fix last change in lib/Makefile.in
29266 * lib/Makefile.in (srcdir): Define, as including
29267 $(srcdir)/../nt/gnulib-cfg.mk needs that.
29269 2017-03-18 Paul Eggert <eggert@cs.ucla.edu>
29271 * configure.ac: Fix typo in diagnostic.
29273 2017-03-18 Paul Eggert <eggert@cs.ucla.edu>
29275 Port out-of-source builds to windows-nt
29277 Problem reported by Angelo Graziosi in:
29278 https://lists.gnu.org/r/emacs-devel/2017-03/msg00431.html
29279 * lib/Makefile.in: Prepend $(srcdir) to ../nt/gnulib-cfg.mk,
29280 to handle out-of-source builds if windows-nt.
29282 2017-03-17 Eli Zaretskii <eliz@gnu.org>
29284 MS-Windows followup for switch from Automake
29287 * nt/INSTALL.W64: Remove references to Automake. (Bug#26100)
29289 2017-03-17 Eli Zaretskii <eliz@gnu.org>
29291 Improve documentation of interactive "r".
29293 * doc/lispref/commands.texi (Interactive Codes): Mention that mark
29294 must be set for "r" to work.
29296 2017-03-17 Paul Eggert <eggert@cs.ucla.edu>
29298 Fixups for GNU Make switchover
29300 This fixes some minor problems introduced in the recent switch to GNU
29301 Make, discovered by further testing. Without some of these changes
29302 'make -j' would sometimes have race conditions caused by missing
29303 dependencies. (Bug#26100)
29304 * .gitignore: Remove src/stamp-h.in, src/stamp-h1.
29305 * Makefile.in ($(MAKEFILE_NAME)): Depend on configure, not
29306 src/config.in, since the former's timestamp now represents
29308 ($(srcdir)/configure): Use plain ./autogen.sh, for consistency
29309 with other autogen.sh invocations.
29310 ($(srcdir)/src/stamp-h.in):
29311 Remove rule, as this file is no longer created.
29312 * Makefile.in (top_distclean):
29313 * src/Makefile.in (bootstrap-clean):
29314 No need to remove stamp-h1, as that was an Automake byproduct
29315 and Automake is no longer in use.
29316 * lib/Makefile.in, src/Makefile.in:
29317 (AUTOCONF_INPUTS, $(top_srcdir)/configure): Remove.
29318 (../config.status, Makefile): Simplify by limiting dependencies
29319 to files we care about and files in the repository, and by
29320 using just one file to represent the timestamps on multiple
29321 targets updated by the same rule.
29322 * autogen.sh: Do not create or use src/stamp-h.in.
29323 Instead, have 'find' test the two output files directly.
29325 2017-03-17 Paul Eggert <eggert@cs.ucla.edu>
29327 Switch from Automake to GNU Make
29329 Emacs assumes GNU Make, and GNU Make has much of the functionality of
29330 Automake built-in. The Emacs build process uses Automake primarily
29331 because Emacs uses some Gnulib code and Gnulib formerly required
29332 Automake. Now that Gnulib no longer requires Automake, Emacs can
29333 stop using Automake and this should simplify Emacs maintenance
29334 in the future (Bug#26100). Although this patch may look long, most of
29335 it is generated automatically: the changes to build-aux/config.guess,
29336 build-aux/config.sub, build-aux/install-sh, and lib/gnulib.mk.in are
29337 all done by admin/merge-gnulib.
29338 * .gitignore: Remove build-aux/ar-lib, build-aux/compile,
29339 build-aux/config.guess, build-aux/config.sub, build-aux/depcomp,
29340 build-aux/install-sh, build-aux/missing, and lib/Makefile.in,
29341 as they are no longer built by autogen.sh.
29342 Add lib/gnulib.mk, as it is now built by 'configure'.
29343 Remove nt/gnulib.mk, as it is no longer built by 'make'.
29344 * INSTALL.REPO, README, admin/make-tarball.txt:
29345 Remove mention of Automake.
29346 * Makefile.in (AUTOCONF, AUTOMAKE, AUTOHEADER, ACLOCAL, lib)
29347 (AUTOCONF_INPUTS, ACLOCAL_PATH, ACLOCAL_INPUTS)
29348 ($(srcdir)/aclocal.m4, AUTOMAKE_INPUTS)
29349 ($(srcdir)/lib/Makefile.in, $(srcdir)/nt/gnulib.mk, am--refresh):
29351 ($(MAKEFILE_NAME)): Depend on lib/gnulib.mk.in.
29352 ($(srcdir)/configure, $(srcdir)/src/stamp-h.in)
29353 ($(srcdir)/src/config.in):
29354 Use autogen.sh instead of doing it by hand.
29355 * admin/merge-gnulib (AVOIDED_MODULES, avoided_flags)):
29356 New vars, to simplify processing of avoided modules.
29357 (GNULIB_TOOL_FLAGS): Move --avoid flags into AVOIDED_MODULES.
29358 Add --gnu-make, and change makefile name to gnulib.mk.in.
29359 Copy config.guess, config.sub, and install-sh too, since
29360 Automake no longer does that for us.
29361 * admin/notes/copyright:
29362 * admin/update_autogen (genfiles):
29363 Update list of files.
29364 Remove hack for nt/gnulib.mk, a file that is no longer needed.
29365 * autogen.sh (progs): Remove Automake.
29366 (automake_min): Remove.
29367 Build aclocal.m4 so that autoreconf need not use aclocal.
29368 * build-aux/config.guess, build-aux/config.sub:
29369 * build-aux/install-sh:
29370 New files, copied from Gnulib. These are now updated by
29371 admin/merge-gnulib instead by autogen.sh.
29372 * configure.ac (AC_PROG_MAKE_SET, ACLOCAL_PATH, AM_CONDITIONAL):
29374 (AM_INIT_AUTOMAKE, AM_SILENT_RULES): Remove call.
29375 (AC_PROG_CC_C_O): Call this instead of AM_PROG_CC_C_O.
29376 (BUILDING_FOR_WINDOWSNT, HYBRID_MALLOC_LIB): Remove; no longer needed.
29377 (--disable-silent-rules): New option, since Automake no longer
29379 (AM_V, AM_DEFAULT_V): Set unconditionally, and do not bother
29380 with AM_SUBST_NOTMAKE.
29381 (AC_PROG_INSTALL): Add call.
29382 (MAKEINFO): Do not bother with the 'missing' program.
29383 (MAKEINFO, SYSTEM_TYPE): AC_SUBST.
29384 (AC_CONFIG_FILES): Add Makefile, lib/gnulib.mk.
29385 (SUBDIR_MAKEFILES): Remove duplication.
29386 * lib/Makefile.am: Remove, replacing with:
29387 * lib/Makefile.in: New file, with the old Makefile.am contents
29388 and with the following changes:
29389 (AUTOMAKE_OPTIONS, BUILT_SOURCES, CLEANFILES, EXTRA_DIST)
29390 (MOSTLYCLEANDIRS, MOSTLYCLEANFILES, noinst_LIBRARIES, SUFFIXES)
29391 (AM_CFLAGS, DEFAULT_INCLUDES, libegnu_a_SOURCES, libegnu_a_LIBADD)
29392 (EXTRA_libegnu_a_SOURCES, libegnu_a_SHORTNAME, libegnu_a_CPPFLAGS):
29394 (VPATH, abs_top_builddir, top_builddir, top_srcdir, all, AM_V_AR)
29395 (AM_V_CC, AM_V_GEN, AM_V_at, DEPDIR, DEPFLAGS, MKDEPDIR, SYSTEM_TYPE)
29396 (libgnu.a, libegnu.a, ETAGS, $(ETAGS), tags, TAGS, clean)
29397 (mostlyclean, distclean, bootstrap-clean, maintainer-clean):
29398 New macros and rules, since Automake no longer does them.
29399 Include ../nt/gnulib-cfg.mk if SYSTEM_TYPE is windows-nt,
29400 instead of including ../nt/gnulib.mk if BUILDING_FOR_WINDOWS_NT.
29401 Include dependency files if AUTO_DEPEND.
29402 (ALL_CFLAGS, AUTOCONF_INPUTS, libgnu_a_OBJECTS, libegnu_a_OBJECTS):
29404 (bootstrap-clean): Depend on distclean, not maintainer-clean,
29405 and remove gnulib.mk.
29406 (AUTOCONF_INPUTS, $(top_srcdir)/configure, ../config.status, Makefile):
29407 New macros and rules, copied from ../Makefile.in.
29408 ($(libegnu_a_OBJECTS), $(libgnu_a_OBJECTS)): Depend on BUILT_SOURCES.
29409 (.c.o, e-%.o): New generic rules.
29410 * lib/gnulib.mk: Remove.
29411 * lib/gnulib.mk.in: New file, which is built by autogen.sh
29412 and contains much of what used to be in lib/gnulib.mk.
29413 * m4/gnulib-common.m4: Copy from gnulib.
29414 * make-dist: Do not distribute build-aux/compile, build-aux/depcomp,
29415 build-aux/missing, build-aux/ar-lib, lib/Makefile.am, nt/gnulib.mk,
29416 nt/gnulib-modules-to-delete.cfg. Distribute lib/Makefile.in,
29417 lib/gnulib.mk.in, and nt/gnulib-cfg.mk instead.
29418 * nt/Makefile.in (AM_V_GEN, am__v_GEN_, am__v_GEN_0)
29419 (am__v_GEN_1, ${srcdir}/gnulib.mk): Remove.
29420 * nt/gnulib-cfg.mk: New file, which supersedes ...
29421 * nt/gnulib-modules-to-delete.cfg: ... this file, which is removed.
29422 * src/Makefile.in (ACLOCAL_INPUTS): Remove.
29423 (AUTOCONF_INPUTS): Merge ACLOCAL_INPUTS into it.
29424 ($(top_srcdir)/configure, ../config.status, config.in Makefile):
29425 Defer to parent Makefile.
29427 2017-03-17 Paul Eggert <eggert@cs.ucla.edu>
29429 Don't suggest Mailutils on MS-Windows
29431 * configure.ac: Don't suggest GNU Mailutils on MS-Windows, as it
29432 hasn't been ported.
29434 2017-03-17 Thien-Thi Nguyen <ttn@gnu.org>
29436 Fix bug: Range-check integer ‘alpha’ frame parm value
29438 Typo introduced 2013-04-01, "Prefer < to >
29439 in range checks such as 0 <= i && i < N".
29441 * src/frame.c (x_set_alpha): Use ‘ialpha’, not ‘alpha’.
29443 2017-03-17 Thien-Thi Nguyen <ttn@gnu.org>
29445 Fix bug: Range-check integer ‘alpha’ frame parm value
29447 Typo introduced 2013-04-01, "Prefer < to >
29448 in range checks such as 0 <= i && i < N".
29450 * src/frame.c (x_set_alpha): Use ‘ialpha’, not ‘alpha’.
29452 2017-03-17 Michael Albinus <michael.albinus@gmx.de>
29456 * lisp/filenotify.el (file-notify--rm-descriptor): Check, that
29457 there is a function which could be called. (Bug#26127)
29459 * test/lisp/filenotify-tests.el (file-notify--test-cleanup):
29460 Clear also `file-notify-descriptors'.
29461 (file-notify--test-make-temp-name): Move up.
29462 (file-notify-test02-rm-watch): New test.
29463 (file-notify-test03-events, file-notify-test04-autorevert)
29464 (file-notify-test05-file-validity)
29465 (file-notify-test06-dir-validity)
29466 (file-notify-test07-many-events, file-notify-test08-backup)
29467 (file-notify-test09-watched-file-in-watched-dir)
29468 (file-notify-test10-sufficient-resources): Rename.
29470 2017-03-17 Paul Eggert <eggert@cs.ucla.edu>
29472 * etc/PROBLEMS: Say that HP-UX cc doesn't work.
29474 2017-03-17 Paul Eggert <eggert@cs.ucla.edu>
29476 Emacs 'movemail' is now a configure-time option
29478 The new configure option --with-mailutils lets the builder say
29479 that Emacs should assume that GNU Mailutils is installed, instead
29480 of continuing to build and install its own limited and insecure
29481 substitute for 'movemail'.
29482 * INSTALL, etc/NEWS, etc/PROBLEMS: Mention --with-mailutils.
29483 * configure.ac: Add --with-mailutils option.
29484 (with_mailutils): New variable.
29485 Do not bother configuring 'movemail' when not building it.
29486 Warn about issues relating to --with-mailutils.
29487 * doc/emacs/rmail.texi (Movemail): Mention --with-mailutils.
29488 (Movemail, Remote Mailboxes): Document port numbers in
29490 * lib-src/Makefile.in (with_mailutils): New macro.
29491 (UTILITIES): Use it.
29493 2017-03-16 Stefan Monnier <monnier@iro.umontreal.ca>
29495 Add obarray-size and fix tests accordingly. Use obarrayp in cedet.
29497 * lisp/obarray.el (obarray-size): New function.
29499 * lisp/cedet/semantic/lex-spp.el (semantic-lex-spp-symbol)
29500 (semantic-lex-spp-save-table, semantic-lex-spp-macros):
29501 * lisp/cedet/semantic/bovine/c.el (semantic-c-describe-environment):
29504 * test/lisp/obarray-tests.el (obarray-make-default-test)
29505 (obarray-make-with-size-test): Use it.
29507 2017-03-16 Michael Albinus <michael.albinus@gmx.de>
29509 Document remote file name syntax change
29511 * doc/emacs/files.texi (Remote Files, Quoted File Names):
29512 * doc/misc/org.texi (dir): Change examples to use a method.
29514 * doc/misc/tramp.texi (Top) [trampf]: Remove macro. Add
29515 `Testing' menu entry.
29516 (History): Fix typos. Mention syntax change.
29517 (Configuration, Default Host, File name Syntax)
29518 (File name completion, Frequently Asked Questions):
29519 Change examples to use a method.
29520 (External methods, Default Host, Multi-hops, Remote processes):
29522 (Default Method): Mention pseudo method "-".
29523 (External packages): Rewrite intention of `non-essential'.
29525 * etc/NEWS: Mark recent Tramp entries as documented.
29527 2017-03-16 Stefan Monnier <monnier@iro.umontreal.ca>
29529 (semantic-lex-type-invalid): Fix nested backquote.
29531 * lisp/cedet/semantic/lex.el: Use lexical-binding.
29532 (semantic-lex-type-invalid): Fix nested backquote.
29533 (semantic-lex-map-symbols, semantic-lex-type-symbol)
29534 (semantic-lex-keyword-symbol): Use obarrayp.
29536 2017-03-15 Michael Albinus <michael.albinus@gmx.de>
29538 * lisp/ido.el (ido-read-internal, ido-complete): Do not bind `non-essential'.
29540 2017-03-15 Mark Oteiza <mvoteiza@udel.edu>
29542 Write a named function
29544 * lisp/comint.el (comint-nonblank-p): New function.
29545 (comint-input-filter): Use it.
29547 2017-03-15 Mark Oteiza <mvoteiza@udel.edu>
29549 Replace more nested ifs with cond
29551 This is a continuation of 0db5ba4 "Replace nested ifs with cond".
29552 * lisp/play/dunnet.el (dun-special-object, dun-inven, dun-drop):
29553 (dun-drop-check, dun-swim, dun-break): Use when and cond where
29555 (dun-examine): Fix indentation.
29556 (dun-doverb): Use when.
29557 (dun-read-line): Refactor.
29559 2017-03-15 Noam Postavsky <npostavs@gmail.com>
29561 Recomplexify ‘delete-trailing-whitespace’ by treating \n as whitespace again
29563 Mostly reverts "Simplify ‘delete-trailing-whitespace’ by not treating
29564 \n as whitespace" from 2016-07-04. Setting \n to non-whitespace
29565 causes the regex engine to backtrack a lot when searching for
29566 "\\s-+$" (Bug#26079).
29568 * lisp/simple.el (delete-trailing-whitespace): Don't change newline
29569 syntax, search for "\\s-$" and then skip backward over trailing
29572 2017-03-14 Paul Eggert <eggert@cs.ucla.edu>
29577 2017-03-14 snippets: move unadjusted snippet sources to lib
29578 2017-03-14 gnulib-tool: fix typo in comment output
29579 2017-03-14 snippets: work around GNU Make 3.82 VPATH
29580 2017-03-13 gnulib-tool: minor --gnu-make fixups
29581 2017-03-12 gnulib-tool: new option --gnu-make
29582 * .gitignore: Remove lib/arg-nonnull.h, lib/c++defs.h,
29583 lib/warn-on-use.h. Change exception from
29584 build-aux/snippet/_Noreturn.h to lib/_Noreturn.h.
29585 * admin/authors.el (authors-renamed-files-regexps):
29586 * admin/notes/copyright, make-dist:
29587 The snippet files moved from build-aux/snippet to lib.
29588 * lib/_Noreturn.h: Rename from build-aux/snippet/_Noreturn.h.
29589 * lib/arg-nonnull.h: Rename from build-aux/snippet/arg-nonnull.h.
29590 * lib/c++defs.h: Rename from build-aux/snippet/c++defs.h.
29591 * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
29592 * lib/warn-on-use.h: Rename from build-aux/snippet/warn-on-use.h.
29594 2017-03-14 Eli Zaretskii <eliz@gnu.org>
29596 Fix duplicate wording in Emacs manual
29598 * doc/emacs/programs.texi (Which Function): Delete duplicate
29599 wording. (Bug#26098)
29601 2017-03-14 Michael Albinus <michael.albinus@gmx.de>
29603 Reenable lost Tramp test case
29605 * test/lisp/net/tramp-tests.el (tramp-test24-file-name-completion):
29606 Reenable lost test case.
29608 2017-03-14 Alan Third <alan@idiocy.org>
29610 Revert "Remove NSEvent loop from ns_select (bug#25265)"
29612 This reverts commit 3bd2e9e975ed29daaf03ca7559e4664aade0674f.
29614 2017-03-14 Alan Third <alan@idiocy.org>
29616 Revert "Add missing timeout value in ns_select"
29618 This reverts commit a65236214d9202fb69a6ba5169d4ac1a4bcb0b0d.
29620 2017-03-14 Alan Third <alan@idiocy.org>
29622 Remove old macOS compatibility code
29624 * src/nsimage.m, src/nsmenu.m, src/nsterm.m: Remove code only for
29625 macOS versions below 10.6 as they are not supported in Emacs 25+.
29627 2017-03-14 Michael Albinus <michael.albinus@gmx.de>
29629 Tune `tramp-completion-file-name-regexp-unified'
29631 * lisp/net/tramp.el (tramp-completion-file-name-regexp-unified):
29632 Extend this regexp to match also "/".
29634 2017-03-14 Tino Calancha <tino.calancha@gmail.com>
29636 Show ancestor buffer in 3way merges
29638 Add an option ediff-show-ancestor', to control if the ancestor buffer
29639 must be shown in 3way merges (Bug#25493); set it non-nil by default.
29640 Add a toggle to change this option interactively; the original
29641 value of the option is restored on exit.
29643 Update the window setup so that the ancestor buffer is
29644 shown in 3way merges when ediff-show-ancestor is non-nil.
29646 Any operation on ediff windows must take in account the
29647 ancestor window as well, when this is shown.
29649 * lisp/vc/ediff-init.el (ediff-show-ancestor): New option.
29650 (ediff--show-ancestor-orig): New defvar.
29651 * lisp/vc/ediff-wind.el (ediff-window-Ancestor): New defvar.
29652 (ediff-setup-windows-plain-merge, ediff-setup-windows-multiframe-merge):
29653 Display ancestor buffer if ediff-show-ancestor is non-nil.
29654 (ediff-keep-window-config): Expect ancestor window in
29655 ediff-window-config-saved.
29656 (ediff-window-alist): Add entry for the ancestor window.
29657 * lisp/vc/ediff-util.el (ediff-setup-control-buffer):
29658 ediff-window-config-saved contains ancestor window.
29659 (ediff-show-ancestor): Delete this command.
29660 (ediff-setup-keymap): Bind ediff-toggle-show-ancestor to '/' for merge jobs.
29661 (ediff-update-diffs): Compute new diffs using ancestor buffer in 3way merges;
29662 don't cheat it to think that is performing a comparison, that trick is not
29663 necessary anymore: simply call 'ediff-setup-diff-regions-function'
29664 with file-A, file-B and the file ancestor.
29665 (ediff-recenter): Update doc string. Consider the ancestor buffer.
29666 (ediff--check-ancestor-exists): New defun.
29667 (ediff-toggle-show-ancestor): New command; toggle ediff-show-ancestor.
29668 (ediff--restore-options-on-exit): Restore ediff-show-ancestor on exit.
29669 (ediff-scroll-vertically, ediff-scroll-horizontally)
29670 (ediff-operate-on-windows): Consider the ancestor as well.
29671 * lisp/vc/ediff-help.el (ediff-long-help-message-merge):
29672 List ediff-toggle-show-ancestor.
29673 * doc/misc/ediff.texi (Introduction, Quick Help Commands): Update manual.
29675 2017-03-14 Tino Calancha <tino.calancha@gmail.com>
29677 diff-mode: Improve default faces for buffer ancestor
29679 * lisp/vc/ediff-init.el (ediff-current-diff-Ancestor)
29680 (ediff-fine-diff-Ancestor): Use defaults consistent with
29681 faces for 'ediff-buffer-A' and 'ediff-buffer-B'.
29683 2017-03-14 Hong Xu <hong@topbug.net>
29685 * lisp/paren.el (show-paren--default, show-paren-function): Add docstring.
29687 2017-03-13 Paul Eggert <eggert@cs.ucla.edu>
29691 * make-dist: Fix typo introduced in the Bug#25895 fix.
29693 2017-03-13 Eli Zaretskii <eliz@gnu.org>
29695 Fix wording in Emacs manual
29697 * doc/emacs/text.texi (Paragraphs): Fix a garbled sentence.
29700 2017-03-13 Michael Albinus <michael.albinus@gmx.de>
29702 etc/NEWS: Remote file names require a method.
29704 2017-03-13 Michael Albinus <michael.albinus@gmx.de>
29706 Require method in remote file name syntax
29708 * lisp/minibuffer.el (completion--nth-completion):
29709 Do not bind `non-essential'.
29711 * lisp/net/tramp-adb.el (tramp-adb-maybe-open-connection):
29712 * lisp/net/tramp-gvfs.el (tramp-gvfs-maybe-open-connection):
29713 * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
29714 * lisp/net/tramp-smb.el (tramp-smb-maybe-open-connection): Do not call
29715 `tramp-check-proper-method-and-host'.
29717 * lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options): Better traces.
29718 (tramp-maybe-open-connection): Do not use argument for
29719 ´tramp-completion-mode-p'.
29721 * lisp/net/tramp.el (tramp-default-method-marker): New defconst.
29722 (tramp-prefix-format, tramp-postfix-method-format)
29723 (tramp-prefix-ipv6-format, tramp-postfix-ipv6-format)
29724 (tramp-prefix-port-format, tramp-postfix-host-format)
29725 (tramp-file-name-regexp, tramp-completion-file-name-regexp):
29726 Use `eq' instead of `eqal'.
29727 (tramp-method-regexp, tramp-domain-regexp)
29728 (tramp-remote-file-name-spec-regexp)
29729 (tramp-file-name-regexp-unified)
29730 (tramp-completion-file-name-regexp-unified)
29731 (tramp-completion-file-name-regexp-separate): Adapt regexp.
29732 (tramp-completion-file-name-handler-alist)
29733 (tramp-run-real-handler): Autoload them.
29734 (tramp-find-method): Handle `tramp-default-method-marker'.
29735 (tramp-check-proper-method-and-host)
29736 (tramp-completion-run-real-handler): Remove them.
29737 (tramp-error-with-buffer, tramp-connectable-p): Do not use
29738 argument for ´tramp-completion-mode-p'.
29739 (tramp-find-foreign-file-name-handler): Remove COMPLETION
29740 argument. Do not apply heuristic for completion.
29741 (tramp-file-name-handler): Do not modify `non-essential'.
29742 (tramp-completion-file-name-handler): Change implementation.
29743 (tramp-autoload-file-name-handler)
29744 (tramp-completion-handle-file-name-all-completions):
29745 Call `tramp-run-real-handler'.
29746 (tramp-completion-mode-p): Do not autoload. Remove argument.
29747 Do not apply heuristic for completion.
29748 (tramp-completion-dissect-file-name): Simplify implementation.
29749 (tramp-handle-file-name-as-directory): Call `tramp-connectable-p'.
29751 * test/lisp/net/tramp-tests.el (tramp-test01-file-name-syntax)
29752 (tramp-test02-file-name-dissect)
29753 (tramp-test03-file-name-defaults)
29754 (tramp-test06-directory-file-name): Adapt to the new syntax.
29755 (tramp-test11-copy-file, tramp-test12-rename-file)
29756 (tramp--test-check-files): Deactivate temporarily tests with
29758 (tramp-test16-directory-files, tramp-test17-insert-directory):
29760 (tramp-test24-file-name-completion): Do not check for
29762 (tramp-test31-make-auto-save-file-name): Deactivate temporarily
29765 2017-03-13 Eli Zaretskii <eliz@gnu.org>
29767 Fix bidi paragraph direction when inserting text at newline
29769 * src/insdel.c (invalidate_buffer_caches): Invalidate the bidi
29770 paragraph cache when inserting immediately after a newline.
29773 2017-03-13 Tino Calancha <tino.calancha@gmail.com>
29775 * test/lisp/emacs-lisp/cl-print-tests.el (cl-print-tests-1): Fix regexp.
29777 2017-03-13 Stefan Monnier <monnier@iro.umontreal.ca>
29779 * lisp/emacs-lisp/cl-print.el (cl-print-compiled): New variable
29781 (cl-print-object) <compiled-function>: Print the docstring and
29782 interactive form. Obey cl-print-compiled.
29784 2017-03-13 Noam Postavsky <npostavs@gmail.com>
29786 Fix indent-sexp when called from inside a string (Bug#21343)
29788 * lisp/emacs-lisp/lisp-mode.el (indent-sexp): Get initial syntax parse
29789 state from `syntax-ppss'.
29791 2017-03-13 Noam Postavsky <npostavs@gmail.com>
29793 * lisp/emacs-lisp/lisp-mode.el (indent-sexp): Simplify.
29795 * test/lisp/emacs-lisp/lisp-mode-tests.el (indent-sexp):
29796 (indent-subsexp, indent-sexp-in-string): New tests.
29798 2017-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
29800 Use switch on pseudovector types; plus cleanups along the way
29802 * src/lisp.h (PSEUDOVECTOR_TYPE): New function, extracted from mark_object.
29803 (PSEUDOVECTOR_TYPEP): Change type of `code'.
29805 * src/alloc.c (sweep_vectors): Remove out-of-date assertion.
29806 (mark_object): Use PSEUDOVECTOR_TYPE.
29808 * src/data.c (Ftype_of): Use switch on pvec type.
29810 * src/print.c (print_object): Use switch on pvec type.
29812 * lisp/emacs-lisp/cl-generic.el (cl--generic-typeof-types):
29813 Add recently added types.
29815 2017-03-12 Paul Eggert <eggert@cs.ucla.edu>
29817 Install update-game-score only on request
29819 Most distributions do not install update-game-score properly
29820 due to setuid/setgid complications, so install it only when
29821 the installer specifies a user or group (Bug#25895).
29822 * .gitattributes: Remove lib-src/update-game-score.exe.manifest.
29823 * Makefile.in (gameuser, gamegroup, use_gamedir, PATH_GAME):
29825 (epaths-force): Use PATH_GAME.
29826 (uninstall): Remove snake-scores and tetris-scores only if shared.
29827 * configure.ac: Default --with-gameuser to 'no'.
29828 (UPDATE_MANIFEST): Remove.
29829 * etc/NEWS: Mention this.
29830 * lib-src/Makefile.in (UPDATE_MANIFEST): Remove.
29831 (use_gamedir): New macro.
29832 (UTILITIES): Remove update-game-score unless use_gamedir.
29833 (SCRIPTS): Remove $(UPDATE_MANIFEST).
29834 ($(DESTDIR)${archlibdir}): Install game directory program and data
29835 only if use_gamedir.
29836 * lib-src/update-game-score.exe.manifest: Remove, as
29837 update-game-score is no longer installed on MS-Windows.
29838 * lisp/play/gamegrid.el (gamegrid-add-score-with-update-game-score):
29839 Use auxiliary program only if setuid or setgid.
29840 * make-dist: Do not distribute update-game-score.exe.manifest.
29841 * src/callproc.c (init_callproc):
29842 Set Vshared_game_score_directory based on PATH_GAME, not DOS_NT.
29843 (syms_of_callproc): Remove unnecessary initialization of
29844 Vshared_game_score_directory.
29846 2017-03-12 Simen Heggestøyl <simenheg@gmail.com>
29848 Add `touch-action' to list of CSS properties
29850 * lisp/textmodes/css-mode.el (css-property-alist): Add `touch-action'
29853 2017-03-12 Eli Zaretskii <eliz@gnu.org>
29855 Teach etags to process ENUM_BF correctly
29857 * lib-src/etags.c (sym_type): New enumeration value st_C_enum_bf.
29858 (hash): Regenerated values for asso_values[] array.
29859 (in_word_set): Update values of TOTAL_KEYWORDS and
29860 MAX_HASH_VALUE. Add "ENUM_BF" to the wordlist[] array.
29861 (in_enum_bf): New file-global variable.
29862 (consider_token): Skip ENUM_BF if not in a macro definition.
29863 (C_entries): Reset the in_enum_bf flag when past its closing
29866 * test/manual/etags/ETAGS.good_1:
29867 * test/manual/etags/ETAGS.good_2:
29868 * test/manual/etags/ETAGS.good_3:
29869 * test/manual/etags/ETAGS.good_4:
29870 * test/manual/etags/ETAGS.good_5:
29871 * test/manual/etags/ETAGS.good_6:
29872 * test/manual/etags/CTAGS.good: Adapt to changes in etags.
29874 2017-03-12 Michael Albinus <michael.albinus@gmx.de>
29876 Use path/to/file instead of path/to.file in tramp.texi
29878 * doc/misc/tramp.texi (Configuration, File name Syntax):
29879 Use path/to/file instead of path/to.file.
29881 2017-03-12 Paul Eggert <eggert@cs.ucla.edu>
29883 Remove some stray gnulib files
29885 * admin/merge-gnulib: rm m4/gnulib-tool.m4 too.
29886 (GNULIB_MODULES): Remove unsetenv, as it is not needed and
29887 the --avoid=unsetenv option avoided most of it anyway.
29888 * lib/unsetenv.c, m4/gnulib-tool.m4, m4/setenv.m4: Remove.
29889 * lib/gnulib.mk: Regenerate.
29891 2017-03-12 Paul Eggert <eggert@cs.ucla.edu>
29896 2017-03-11 gnulib-common.m4: avoid aclocal.m4 bloat
29897 * doc/misc/texinfo.tex, m4/gnulib-common.m4: Copy from gnulib.
29899 2017-03-12 Glenn Morris <rgm@gnu.org>
29901 Remove trivial duplication in epg-config
29903 * lisp/epg-config.el (epg-config--program-alist):
29904 Use epg-gpg-minimum-version.
29906 2017-03-12 Glenn Morris <rgm@gnu.org>
29908 Small epg-find-configuration improvement
29910 * lisp/epg-config.el (epg-find-configuration):
29911 Handle epg-gpg-program customized but not saved. (Bug#25947)
29913 2017-03-11 Stefan Monnier <monnier@iro.umontreal.ca>
29915 Improve last change
29917 * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2):
29918 Use ppss to check escaping and add help-echo.
29920 2017-03-11 Stefan Monnier <monnier@iro.umontreal.ca>
29922 Highlight useless backslashes in Elisp strings
29924 * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2):
29925 Put warning face on backslashes that have no effect.
29927 2017-03-11 Eli Zaretskii <eliz@gnu.org>
29929 Document how to customize input methods
29931 * doc/emacs/mule.texi (Input Methods): Document how to customize
29934 2017-03-11 Eli Zaretskii <eliz@gnu.org>
29936 * lisp/net/eww.el (eww-reload): Doc fix. (Bug#25981)
29938 2017-03-11 Eli Zaretskii <eliz@gnu.org>
29940 Fix generation of nt/gnulib.mk on macOS
29942 * nt/Makefile.in (${srcdir}/gnulib.mk): Don't use the -f- option
29943 to Sed, as that is not portable with non-GNU Sed variants.
29946 2017-03-11 Eli Zaretskii <eliz@gnu.org>
29948 Avoid aborts/assertion violations due to 'vim-empty-lines-mode'
29950 * src/xdisp.c (handle_single_display_spec): If position to be
29951 restored after processing the display property comes from an
29952 overlay, protect against that overlay's end point being outside of
29953 the narrowed region.
29954 Reported by Filipe Silva <filipe.silva@gmail.com> in
29955 https://lists.gnu.org/r/emacs-devel/2017-03/msg00176.html.
29957 2017-03-10 Glenn Morris <rgm@gnu.org>
29959 Small improvement for epa-display-error (bug#24553)
29961 * lisp/epa.el (epa-display-error): Report the actual program in use.
29963 2017-03-10 Paul Eggert <eggert@cs.ucla.edu>
29965 Tweak X toolkit code to pacify modern GCC
29967 * lwlib/lwlib-Xaw.c, lwlib/lwlib-Xm.c, lwlib/lwlib.c:
29968 Don’t include <stdlib.h>, since this code now calls emacs_abort
29970 * lwlib/lwlib-Xaw.c (make_dialog, xaw_generic_callback)
29971 (wm_delete_window):
29972 * lwlib/lwlib-Xm.c (make_menu_in_widget, do_call):
29973 * lwlib/lwlib.c (instantiate_widget_instance, lw_make_widget):
29974 * lwlib/xlwmenu.c (abort_gracefully, draw_separator)
29975 (separator_height, XlwMenuInitialize):
29976 Use emacs_abort, not abort. Without this change, some calls
29977 to ‘abort’ were invalid, as stdlib.h was not always included.
29978 * src/widget.c (resources, emacsFrameClassRec):
29979 * src/xfns.c (x_window) [USE_X_TOOLKIT]:
29980 * src/xmenu.c (create_and_show_popup_menu) [USE_X_TOOLKIT]:
29981 * src/xterm.c (emacs_options) [USE_X_TOOLKIT}:
29982 (x_term_init) [USE_X_TOOLKIT]:
29983 Cast string constants to char * to pacify --enable-gcc-warnings.
29985 2017-03-10 Michael Albinus <michael.albinus@gmx.de>
29987 * doc/misc/tramp.texi (Android shell setup): Require adb program
29989 2017-03-10 Michael Albinus <michael.albinus@gmx.de>
29991 Adapt tramp-tests.el
29993 * test/lisp/net/tramp-tests.el (tramp-test06-directory-file-name)
29994 (tramp-test24-file-name-completion): Call
29995 `tramp-completion-mode-p' with argument.
29997 2017-03-10 Thien-Thi Nguyen <ttn@gnu.org>
29999 [doc] Replace bindat example: s/fortune cookie/rfc868 payload/
30001 * doc/lispref/processes.texi (Bindat Examples):
30002 Mention two examples in intro blurb; rewrite first example.
30004 2017-03-10 Paul Eggert <eggert@cs.ucla.edu>
30006 Simplify checks for xdg-open and xdg-email
30008 browse-url's xdg-open detection was too picky on some GNU/Linux
30009 desktops; see Bug#25778. Simplify the code by assuming xdg-open works
30010 if it is executable, as nowadays this is more likely to be correct than
30011 trying to use heuristics from a few years ago. Don't test for nohup: it
30012 is ineffective nowadays, as xdg-open's child uses the default action for
30013 SIGHUP even if xdg-open's invoker ignores SIGHUP. While we're at it,
30014 allow for Wayland here, as "emacs -nw" might be running in a non-X
30016 * lisp/mail/emacsbug.el (report-emacs-bug-can-use-xdg-email):
30017 * lisp/net/browse-url.el (browse-url-can-use-xdg-open):
30018 Simplify to a test for DISPLAY and whether the helper program is
30019 executable. Allow WAYLAND_DISPLAY as an option.
30021 2017-03-09 Vibhav Pant <vibhavp@gmail.com>
30023 Byte compile cond clauses without any bodies correctly.
30025 * lisp/emacs-lisp/bytecomp.el (byte-compile-cond-jump-table): When a
30026 cond clause has no body, push t on to the stack.
30028 2017-03-09 Michael Albinus <michael.albinus@gmx.de>
30032 * lisp/minibuffer.el (completion--nth-completion):
30033 Let-bind `non-essential'.
30035 * lisp/net/tramp.el (tramp-completion-mode): Fix docstring.
30036 (tramp-completion-mode-p): Optional parameter VEC. Replace
30037 check for `last-input-event' by analysing VEC argument.
30038 (tramp-error-with-buffer, tramp-file-name-handler)
30039 (tramp-connectable-p, tramp-handle-file-name-as-directory):
30040 * lisp/net/tramp-sh.el (tramp-maybe-open-connection): Use it.
30042 2017-03-09 Vibhav Pant <vibhavp@gmail.com>
30044 etc/NEWS: Add entry for new `switch' bytecode.
30046 2017-03-08 Paul Eggert <eggert@cs.ucla.edu>
30048 * src/data.c (arithcompare): Add comments.
30050 2017-03-08 Glenn Morris <rgm@gnu.org>
30052 Update a cl-print test
30054 * test/lisp/emacs-lisp/cl-print-tests.el (cl-print-tests-1):
30055 Update for recent change in cl-print-object function output.
30057 2017-03-08 Sam Steingold <sds@gnu.org>
30059 Replace change-log-date-face -> change-log-date
30061 This fixes c430f7e23fc2c22f251ace4254e37dea1452dfc3.
30063 2017-03-08 Michael Albinus <michael.albinus@gmx.de>
30067 * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer):
30068 Check, whether file is too large. (Bug#26011)
30070 2017-03-08 Andreas Schwab <schwab@linux-m68k.org>
30072 * src/data.c (minmax_driver): Use CHECK_NUMBER_OR_FLOAT_COERCE_MARKER.
30073 (Fmax, Fmin): Restore documentation.
30075 * src/data.c (cons_to_unsigned, cons_to_signed, Fstring_to_number): Reorder
30076 comparisons that are written backward.
30078 2017-03-08 Thien-Thi Nguyen <ttn@gnu.org>
30080 [doc elisp] Add some index entries for "old" advice mechanism
30082 * doc/lispref/functions.texi (Porting old advice):
30083 Add one @cindex and two @findex entries.
30085 2017-03-08 Paul Eggert <eggert@cs.ucla.edu>
30087 * etc/NEWS: Adjust to match previous patch.
30089 2017-03-08 Paul Eggert <eggert@cs.ucla.edu>
30091 min and max should not return markers
30093 Problem reported by Glenn Morris in:
30094 https://lists.gnu.org/r/emacs-devel/2017-03/msg00147.html
30095 * src/data.c (minmax_driver): Convert any marker result to an
30096 integer, since some callers assume this.
30097 * test/src/data-tests.el (data-tests-max, data-tests-min):
30100 2017-03-08 Stefan Monnier <monnier@iro.umontreal.ca>
30102 * lisp/emacs-lisp/cl-print.el (cl-print-object): Use #f(..) for functions.
30104 2017-03-08 Alan Third <alan@idiocy.org>
30106 Add missing timeout value in ns_select
30108 * src/nsterm.m (ns_select): Set timeout to distant future when relying
30109 on fd_handler's timeout.
30111 2017-03-07 Glenn Morris <rgm@gnu.org>
30113 * admin/update_autogen: Ensure nt/gnulib.mk exists, for autoreconf.
30115 2017-03-07 Paul Eggert <eggert@cs.ucla.edu>
30117 Remove isnan hack for Solaris 10 gcc 3.4.3
30119 This seems to have been a false alarm (Bug#26018).
30120 * src/data.c (isnan):
30121 * src/floatfns.c (isfinite, isnan):
30122 Use standard implementation if available.
30124 2017-03-07 Eli Zaretskii <eliz@gnu.org>
30126 Support browsing URLs with embedded spaces on MS-Windows
30128 * lisp/net/browse-url.el (browse-url-default-windows-browser):
30129 Unhex %XX hex-encoded characters, as w32-shell-execute doesn't
30130 support that in file:// URLs. (Bug#26014)
30132 2017-03-07 Paul Eggert <eggert@cs.ucla.edu>
30134 Define copysign on all platforms
30136 * configure.ac (copysign): Remove test.
30137 * src/floatfns.c (signbit): New macro, if not already defined.
30138 (Fcopysign): Use it instead of copysign.
30139 (Fcopysign, syms_of_floatfns): Define the function on all platforms.
30141 2017-03-07 Phillip Lord <phillip.lord@russet.org.uk>
30143 Revert "Replace ldefs-boot with a much smaller file"
30145 This reverts commit c27b645956a11fab1dd8fa189254d525390958f5.
30147 This commit has been reverted because the new mechanism was too
30148 sensitive to changes in the lisp source, generation of new ldefs-boot
30149 files was platform specific and resulted in warnings about undefined
30152 See also 11436e2890d.
30154 2017-03-07 Phillip Lord <phillip.lord@russet.org.uk>
30156 Revert "Record autoloads till emacs dump"
30158 This reverts commit 72c668a9042ac6475eadedfee5c87fb1e6b2d753.
30160 This commit has been reverted because the new mechanism was too
30161 sensitive to changes in the lisp source, generation of new ldefs-boot
30162 files was platform specific and resulted in warnings about undefined
30165 See also 11436e2890d.
30167 2017-03-07 Phillip Lord <phillip.lord@russet.org.uk>
30169 Revert "Remove unused ldefs-boot.el"
30171 This reverts commit ef8c9f8fc922b615aca91b47820d1f1900fddc96.
30173 This commit has been reverted because the new mechanism was too
30174 sensitive to changes in the lisp source, generation of new ldefs-boot
30175 files was platform specific and resulted in warnings about undefined
30178 See also 11436e2890d.
30180 2017-03-07 Phillip Lord <phillip.lord@russet.org.uk>
30182 Revert "Remove conditional includes from bootstrap"
30184 This reverts commit 1b946305182312faa7fcd838caf55dcb07b2ab04.
30186 This commit has been reverted because the new mechanism was too
30187 sensitive to changes in the lisp source, generation of new ldefs-boot
30188 files was platform specific and resulted in warnings about undefined
30191 See also 11436e2890d.
30193 2017-03-07 Phillip Lord <phillip.lord@russet.org.uk>
30195 Revert "Speed generation of ldefs-boot-auto"
30197 This reverts commit 7b5e1c8238ef961fd3305b1dce053b9bced684ba.
30199 This commit has been reverted because the new mechanism was too
30200 sensitive to changes in the lisp source, generation of new ldefs-boot
30201 files was platform specific and resulted in warnings about undefined
30204 See also 11436e2890d.
30206 2017-03-07 Phillip Lord <phillip.lord@russet.org.uk>
30208 Revert "Fix minor problems with loaddefs autogeneration"
30210 This reverts commit f2bd2c1e6476acc71e71f6cb2a1c56c5edd900ba.
30212 This commit has been reverted because the new mechanism was too
30213 sensitive to changes in the lisp source, generation of new ldefs-boot
30214 files was platform specific and resulted in warnings about undefined
30217 2017-03-07 Noam Postavsky <npostavs@gmail.com>
30219 Set default when asking for send-mail-function (Bug#25874).
30221 * lisp/mail/sendmail.el (sendmail-query-user-about-smtp): Pass first
30222 option as default for `completing-read'.
30224 2017-03-07 Paul Eggert <eggert@cs.ucla.edu>
30226 min and max now return one of their arguments
30228 * doc/lispref/numbers.texi (Comparison of Numbers):
30229 * etc/NEWS: Document this.
30230 * src/data.c (Amax, Amin): Remove constants. All uses removed.
30231 (minmax_driver): New function.
30232 (Fmax, Fmin): Use it instead of arith_driver.
30233 * test/src/data-tests.el (data-tests-max, data-tests-min): New tests.
30235 2017-03-06 Alan Third <alan@idiocy.org>
30237 Remove NSEvent loop from ns_select (bug#25265)
30239 * src/nsterm.m (ns_select): Remove event processing loop and replace
30240 with simple test for a new event.
30242 2017-03-06 Eli Zaretskii <eliz@gnu.org>
30244 A better fix for bug#25845
30246 * src/xdisp.c (font_for_underline_metrics): New function.
30247 * src/dispextern.h: Add its prototype.
30248 * src/xterm.c (x_draw_glyph_string):
30249 * src/w32term.c (x_draw_glyph_string):
30250 * src/nsterm.m (ns_draw_text_decoration): Call it. This avoids
30251 having identical code 3 times in 3 different files.
30253 2017-03-06 Noam Postavsky <npostavs@gmail.com>
30255 Fix warning message about native completion (Bug#25984)
30257 * lisp/progmodes/python.el (python-shell-completion-native-turn-on-maybe):
30258 The relevant variable is `python-shell-completion-native-enable'.
30260 2017-03-06 Tom Tromey <tom@tromey.com>
30262 Fix typos in EIEIO manual
30264 * doc/misc/eieio.texi (Slot Options, Class Options): Fix typos.
30266 2017-03-05 Paul Eggert <eggert@cs.ucla.edu>
30271 2017-03-04 dtotimespec: simplify
30272 * lib/dtotimespec.c: Copy from gnulib.
30274 2017-03-05 Paul Eggert <eggert@cs.ucla.edu>
30276 ffloor etc. now accept only floats
30278 * etc/NEWS: Say why.
30279 * src/floatfns.c (Ffceiling, Fffloor, Ffround, Fftruncate):
30280 Require arg to be float.
30281 * test/src/floatfns-tests.el (fround-fixnum): Check this.
30283 2017-03-05 Eli Zaretskii <eliz@gnu.org>
30285 Fix display of cursor on underlined text
30287 * src/nsterm.m (ns_draw_text_decoration):
30288 * src/xterm.c (x_draw_glyph_string):
30289 * src/w32term.c (x_draw_glyph_string): Compute the position and
30290 thickness of the underline by looking for the first glyph of the
30291 run of underlined glyphs that includes the glyph string we are
30292 drawing. (Bug#25845)
30294 2017-03-05 Mark Oteiza <mvoteiza@udel.edu>
30296 Add more CL concept index items, print Concept Index
30298 * doc/misc/cl.texi: Print concept index.
30299 (Generalized Variables, Variable Bindings):
30300 (Dynamic Bindings, Function Bindings, Macro Bindings, Conditionals):
30301 (Blocks and Exits, Iteration, Multiple Values): Add concept index
30304 2017-03-05 Mark Oteiza <mvoteiza@udel.edu>
30306 Add 'loop facility' to the CL concept index
30308 * doc/misc/cl.texi (Loop Facility): Add "loop facility" as a concept
30311 2017-03-05 martin rudalics <rudalics@gmx.at>
30313 In `window--display-buffer' fix behavior reported in Bug#25946
30315 * lisp/window.el (window--display-buffer): Set the dedicated
30316 status of the window used and clear its history of previous
30317 buffers also for the case that the window already shows the
30318 buffer to be displayed. (Bug#25946)
30320 2017-03-05 Paul Eggert <eggert@cs.ucla.edu>
30322 Compare and round more carefully
30324 * etc/NEWS: Document this.
30325 * src/data.c (store_symval_forwarding):
30326 * src/sound.c (parse_sound):
30327 Do not botch NaN comparison.
30328 * src/data.c (cons_to_unsigned, cons_to_signed):
30329 Signal an error if a floating-point arg is not integral.
30330 * src/data.c (cons_to_unsigned, cons_to_signed):
30331 * src/fileio.c (file_offset):
30332 Use simpler overflow check.
30333 * src/dbusbind.c (xd_extract_signed, xd_extract_unsigned):
30334 Avoid rounding error in overflow check.
30335 (Fcar_less_than_car): Use arithcompare directly.
30336 * test/src/charset-tests.el: New file.
30338 2017-03-05 Paul Eggert <eggert@cs.ucla.edu>
30340 Fewer rounding errors with (format "%f" fixnum)
30342 * etc/NEWS: Document this.
30343 * src/editfns.c (styled_format): When formatting integers via a
30344 floating-point format, use long double instead of double
30345 conversion, if long double’s extra precision might help.
30347 2017-03-05 Paul Eggert <eggert@cs.ucla.edu>
30349 * src/floatfns.c (Fftruncate): Simplify via emacs_trunc.
30351 * src/editfns.c (styled_format): Omit unnecessary code for "%0d" etc.
30353 2017-03-04 Eli Zaretskii <eliz@gnu.org>
30355 Clarify documentation of 'raise' and 'height' display specs
30357 * doc/lispref/display.texi (Other Display Specs): Clarify the
30358 effect of 'height' display spec on the following 'raise'.
30361 2017-03-04 Eli Zaretskii <eliz@gnu.org>
30363 Fix header shown by Info 'L' command
30365 * lisp/info.el (Info-history-find-node): A better heading for the
30366 list of visited nodes. (Bug#25876)
30368 2017-03-04 K. Handa <handa@gnu.org>
30370 Add a section about incorrect Bengali rendering.
30372 2017-03-04 Eli Zaretskii <eliz@gnu.org>
30374 Fix minor problems with loaddefs autogeneration
30376 * admin/ldefs-clean.el (ldefs-clean): Bind coding-system-for-read
30377 and coding-system-for-write, to produce a UTF-8 file with Unix
30378 EOLs on MS-Windows.
30380 * lisp/ldefs-boot-manual.el (image-type): Add autoload cookie.
30382 2017-03-04 David Bremner <david@tethera.net> (tiny change)
30384 Fix issues with dedicated windows in shr.el
30386 * lisp/net/shr.el (shr-pixel-buffer-width, shr-render-td-1): Make
30387 the window not dedicated, to avoid errors if it was, before
30388 setting its buffer temporarily. (Bug#25828)
30390 2017-03-04 Eli Zaretskii <eliz@gnu.org>
30392 Mention problems with GPaste in PROBLEMS
30394 * etc/PROBLEMS (GPaste): Mention the problem in yanking caused by
30395 GPaste, and its solution. (Bug#25902)
30397 2017-03-04 Glenn Morris <rgm@gnu.org>
30399 Avoid duplicate gud menu items with gdb-mi
30401 * lisp/progmodes/gud.el (gud-menu-map): Avoid duplicate "Run"
30402 entries in gdbmi mode. (Bug#23923)
30404 2017-03-03 Paul Eggert <eggert@cs.ucla.edu>
30406 * src/editfns.c (styled_format): Omit unnecessary code.
30408 2017-03-03 Paul Eggert <eggert@cs.ucla.edu>
30410 logb now works correctly on large integers
30412 * admin/merge-gnulib (GNULIB_MODULES): Add count-leading-zeros.
30413 * etc/NEWS: Document the change.
30414 * lib/count-leading-zeros.c, lib/count-leading-zeros.h:
30415 * m4/count-leading-zeros.m4: New files, copied from Gnulib.
30416 * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
30417 * src/floatfns.c: Include count-leading-zeros.h.
30418 (Flogb): Do not convert fixnum to float before taking the log,
30419 as the rounding error can cause the answer to be off by 1.
30420 * src/lisp.h (EMACS_UINT_WIDTH): New constant.
30421 * test/src/floatfns-tests.el (logb-extreme-fixnum): New test.
30423 2017-03-03 Paul Eggert <eggert@cs.ucla.edu>
30428 2017-02-25 maintainer-makefile: Fix AC_PROG_SED with autoconf cache.
30429 2017-02-24 ftoastr: port to -Wdouble-promotion
30430 * lib/ftoastr.c, m4/gnulib-common.m4: Copy from gnulib.
30432 2017-03-03 Eli Zaretskii <eliz@gnu.org>
30434 Avoid duplicating characters recorded in macros
30436 * src/keyboard.c (record_char): Don't store in macro definitions
30437 characters that came from executing a macro. (Bug#25860)
30439 2017-03-03 Eli Zaretskii <eliz@gnu.org>
30441 Fix color component calculations in color.el
30443 * lisp/color.el (color-name-to-rgb): Use 16 bits per color component.
30444 (color-rgb-to-hex): Accept an optional argument
30445 DIGITS-PER-COMPONENT, defaulting to 4, and format the hexadecimal
30446 notation either for 8 or 16 bits per component. (Bug#25890)
30447 * lisp/net/shr-color.el (shr-color->hexadecimal): Call
30448 color-rgb-to-hex with the optional argument of 2, to match color
30449 processing on the Web.
30451 2017-03-03 Tino Calancha <tino.calancha@gmail.com>
30453 Use lexical binding in benchmark.el
30455 * lisp/emacs-lisp/benchmark.el: Enable lexical binding.
30456 (benchmark-elapse): Use 'declare'.
30457 * test/lisp/emacs-lisp/benchmark-tests.el: Add test suite.
30459 2017-03-03 Noam Postavsky <npostavs@gmail.com>
30461 Switch pp.el to lexical binding
30463 Additionally, do some minor code cleanup.
30465 * lisp/emacs-lisp/pp.el: Set lexical-binding.
30466 (pp-buffer): Use skip-syntax-forward.
30467 (pp-eval-expression): Use push.
30468 (pp-last-sexp): Use with-syntax-table.
30469 * test/lisp/emacs-lisp/pp-tests.el: New tests.
30471 2017-03-03 Chunyang Xu <mail@xuchunyang.me> (tiny change)
30473 Fix completing-read call in reb-change-syntax
30475 * lisp/emacs-lisp/re-builder.el (reb-change-syntax): Use 'default' arg
30476 of completing-read.
30478 2017-03-03 Rolf Ade <rolf@pointsman.de> (tiny change)
30480 sql-mode w/ sqlite: In-memory database
30482 Enable the usage of an in-memory database. Prior to this, sql-mode w/
30483 sqlite could only be used with file databases.
30484 * lisp/progmodes/sql.el (sql-get-login-ext): Don't expand an empty
30485 file name provided by the user, but call sub-process sqlite with that,
30486 in which case it uses an in-memory database.
30488 2017-03-03 Allen Li <vianchielfaura@gmail.com>
30490 Stop abbrev-prefix-mark from adding extra newline (Bug#25767)
30492 `abbrev--before-point' does not adjust `pos' to account for when it
30493 deletes the "-" left by abbrev-prefix-mark. Therefore, when
30494 `abbrev-before-point' goes to restore point, it moves point one
30495 character too far forward.
30497 * lisp/abbrev.el (abbrev--before-point): Adjust pos when deleting "-".
30499 2017-03-03 Tino Calancha <tino.calancha@gmail.com>
30501 * lisp/subr.el (apply-partially): Move to 'Basic Lisp functions' section.
30503 2017-03-02 Paul Eggert <eggert@cs.ucla.edu>
30505 Restore XFLOATINT but with restricted args
30507 Turn instances of extract_float into XFLOAT_DATA when possible,
30508 and to a resurrected XFLOATINT when the arg is a number.
30509 The resurrected XFLOATINT is more like XFLOAT and XINT in
30510 that is valid only if its arg is a number. This clarifies
30511 the ways in which floats can be extracted at the C level.
30512 * src/editfns.c (styled_format):
30513 * src/floatfns.c (extract_float, Fexpt):
30514 Use XFLOATINT rather than open-coding it.
30515 * src/fns.c (internal_equal):
30516 * src/image.c (imagemagick_load_image):
30517 * src/xdisp.c (resize_mini_window):
30518 Prefer XFLOAT_DATA to extract_float on values known to be floats.
30519 * src/frame.c (x_set_screen_gamma):
30520 * src/frame.h (NUMVAL):
30521 * src/image.c (x_edge_detection, compute_image_size):
30522 * src/lread.c (read_filtered_event):
30523 * src/window.c (Fset_window_vscroll):
30524 * src/xdisp.c (handle_single_display_spec, try_scrolling)
30525 (redisplay_window, calc_pixel_width_or_height, x_produce_glyphs)
30527 Prefer XFLOATINT to extract_float on values known to be numbers.
30528 * src/lisp.h (XFLOATINT): Bring back this function, except
30529 it now assumes its argument is a number.
30531 2017-03-02 Glenn Morris <rgm@gnu.org>
30533 Ert commands to error if no test at point (bug#25931)
30535 * lisp/emacs-lisp/ert.el (ert-results-mode-menu):
30536 Deactivate some items if no test at point.
30537 (ert--results-test-at-point-no-redefinition):
30538 Add option to signal an error rather than return nil.
30539 (ert-results-pop-to-backtrace-for-test-at-point)
30540 (ert-results-pop-to-messages-for-test-at-point)
30541 (ert-results-pop-to-should-forms-for-test-at-point)
30542 (ert-results-describe-test-at-point): Error if no test at point.
30544 2017-03-02 Paul Eggert <eggert@cs.ucla.edu>
30548 * src/lisp.h (XFLOATINT): Remove this alias for extract_float.
30549 All callers changed to use extract_float.
30550 * src/frame.h (NUMVAL): Now an inline function, not a macro.
30552 2017-03-02 Paul Eggert <eggert@cs.ucla.edu>
30554 Fix rounding errors in <, =, etc.
30556 * etc/NEWS: Document this.
30557 * src/bytecode.c (exec_byte_code):
30558 * src/data.c (arithcompare):
30559 Do not lose information when comparing floats to integers.
30560 * test/src/data-tests.el (data-tests-=, data-tests-<)
30561 (data-tests->, data-tests-<=, data-tests->=):
30564 2017-03-02 Eli Zaretskii <eliz@gnu.org>
30566 Fix display of mouse-highlight produced by overlapping overlays
30568 * src/xfaces.c (face_at_buffer_position): If called to find the
30569 mouse-face, only consider the highest-priority source for that
30570 face, and ignore the rest. Previously, all the mouse-face
30571 definitions at POS were merged in that case.
30572 * src/xdisp.c (note_mouse_highlight): Record the overlay that
30573 specifies mouse-face _after_ clearing the info about the previous
30574 overlay, so as not to clear the information about the just-recorded
30575 overlay. (Bug#25906)
30577 2017-03-02 Eli Zaretskii <eliz@gnu.org>
30579 Fix display of strike-through text in variable-height lines
30581 * src/nsterm.m (ns_draw_text_decoration):
30582 * src/xterm.c (x_draw_glyph_string):
30583 * src/w32term.c (x_draw_glyph_string): Fix calculation of the
30584 strike-through y-coordinate for a glyph row which is taller than
30585 the strike-through text. (Bug#25907)
30587 2017-03-02 Martin Rudalics <rudalics@gmx.at>
30589 Don't call x_net_wm_state for scroll bar windows (Bug#24963, Bug#25887)
30591 * src/xterm.c (handle_one_xevent): For ConfigureNotify events
30592 don't call x_net_wm_state when the window is a scroll bar window.
30593 (Bug#24963, Bug#25887)
30595 2017-03-02 Katsumi Yamaoka <yamaoka@jpl.org>
30597 gnus-summary-select-article-buffer: Don't re-render existing article
30599 * lisp/gnus/gnus-sum.el (gnus-summary-select-article-buffer):
30600 Don't re-render existing article.
30602 2017-03-02 Katsumi Yamaoka <yamaoka@jpl.org>
30604 Don't add debbugs address to message body (bug#25896)
30606 * lisp/gnus/gnus-group.el (gnus-read-ephemeral-bug-group):
30607 Don't add debbugs address to message body (bug#25896), and
30608 don't add it to message header either if it already exists.
30610 2017-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
30612 * lisp/cedet/semantic/db-global.el: Make dynbind use explicit
30614 (semanticdb--ih): Declare.
30615 (semanticdb-enable-gnu-global-databases): Use it instead of `ih'.
30616 (semanticdb-enable-gnu-global-in-buffer, semanticdb-get-database-tables)
30617 (semanticdb-find-tags-for-completion-method): Silence compiler warning.
30619 2017-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
30621 * lisp/help-fns.el (describe-variable): Use cl-print for the value
30623 Use `pp-buffer' rather than `pp' so as to avoid calling prin1 twice.
30625 2017-03-02 Glenn Morris <rgm@gnu.org>
30627 * test/lisp/net/puny-tests.el: New file.
30629 2017-03-02 Glenn Morris <rgm@gnu.org>
30633 * lisp/net/puny.el (puny-decode-string-internal):
30634 Handle strings with no ascii parts. (Bug#23688)
30636 2017-03-02 Glenn Morris <rgm@gnu.org>
30638 Small recover-this-file improvement
30640 * lisp/files.el (recover-this-file): Explicit error if not
30641 visiting a file. (Bug#23671)
30643 2017-03-01 Glenn Morris <rgm@gnu.org>
30645 Fix for coding-system completion (bug#23670)
30647 * lisp/international/mule.el (read-buffer-file-coding-system):
30648 Ensure that completion-pcm--delim-wild-regex is enclosed in parens,
30649 so that completion-pcm--pattern->regex can append "*?".
30651 2017-03-01 Paul Eggert <eggert@cs.ucla.edu>
30653 Fix rounding error in ‘ceiling’ etc.
30655 Without this fix, (ceiling most-negative-fixnum -1.0) returns
30656 most-negative-fixnum instead of correctly signaling range-error,
30657 and similarly for floor, round, and truncate.
30658 * configure.ac (trunc): Add a check, since Gnulib’s doc says
30659 ‘trunc’ is missing from MSVC 9. The Gnulib doc says ‘trunc’ is
30660 also missing from some other older operating systems like Solaris
30661 9 which I know we don’t care about any more, so MSVC is the only
30662 reason to worry about ‘trunc’ here.
30663 * src/editfns.c (styled_format): Formatting a float with %c is now an
30664 error. The old code did not work in general, because FIXNUM_OVERFLOW_P
30665 had rounding errors. Besides, the "if (FLOATP (...))" was in there
30666 only as a result of my misunderstanding old code that I introduced
30667 2011. Although %d etc. is sometimes used on floats that represent
30668 huge UIDs or PIDs etc. that do not fit in fixnums, this cannot
30669 happen with characters.
30670 * src/floatfns.c (rounding_driver): Rework to do the right thing
30671 when the intermediate result equals 2.305843009213694e+18, i.e.,
30672 is exactly 1 greater than MOST_POSITIVE_FIXNUM on a 64-bit host.
30673 Simplify so that only one section of code checks for overflow,
30675 (double_identity): Remove. All uses changed to ...
30676 (emacs_trunc): ... this new function. Add replacement for
30677 platforms that lack ‘trunc’.
30678 * src/lisp.h (FIXNUM_OVERFLOW_P, make_fixnum_or_float):
30679 Make it clear that the arg cannot be floating point.
30680 * test/src/editfns-tests.el (format-c-float): New test.
30681 * test/src/floatfns-tests.el: New file, to test for this bug.
30683 2017-03-01 Glenn Morris <rgm@gnu.org>
30685 Small help--loaded-p fix
30687 * lisp/help-fns.el (help--loaded-p): Handle entry in load-history
30688 with nil file name. (Bug#25847)
30690 2017-03-01 Leo Liu <sdl.web@gmail.com>
30692 * src/fns.c (Fbuffer_hash): Doc fix.
30694 2017-03-01 Eric Abrahamsen <eric@ericabrahamsen.net>
30696 Don't use mapconcat with chars in gnus registry marks (Bug#25839)
30698 * lisp/gnus/gnus-registry.el (gnus-registry-article-marks-to-chars):
30699 Instead, use a plain concat, which will create a string out of a list
30702 2017-03-01 Noam Postavsky <npostavs@gmail.com>
30704 Fix epg-tests with dummy-pinentry program (Bug#23619)
30706 * test/data/epg/dummy-pinentry: New file.
30707 * test/lisp/epg-tests.el (with-epg-tests): Add it to gpg-agent.conf
30708 when a passphrase is required. Add debug declaration. Set
30709 GPG_AGENT_INFO non-destructively.
30711 2017-02-28 Phillip Lord <phillip.lord@russet.org.uk>
30713 Speed generation of ldefs-boot-auto
30715 Previously, generation of ldefs-boot-auto required at least one full
30716 bootstrap and, in extreme cases, two. Now, from build system, it
30717 requires the same time as taken to dump Emacs.
30719 * Makefile.in: Remove all calls, pass to src.
30720 * admin/ldefs-clean.el: Update for changed messages.
30721 * lisp/Makefile.in (compile-first-delete): Add.
30722 * lisp/ldefs-boot-auto.el: Update.
30723 * src/Makefile.in (generate-ldefs-boot): Add.
30725 2017-02-28 Phillip Lord <phillip.lord@russet.org.uk>
30727 Add error handling to magic-mode-alist
30729 * lisp/files.el (set-auto-mode): Add explicit error handling in two
30732 2017-02-28 Phillip Lord <phillip.lord@russet.org.uk>
30734 Remove conditional includes from bootstrap
30736 Previously, bootstrap-emacs includes optional functionality, depending
30737 on the platform which is not needed for bootstrap function. As a
30738 result, bootstrap-emacs contains different functions in different
30739 circumstances. If ldefs-boot-auto.el is generated, then loaded
30740 functions will not be added to ldefs-boot-auto.el, although they may be
30741 required during some builds. With this change, bootstrap-emacs should
30742 always behave the same way and, therefore, require the same autoloads.
30744 * lisp/loadup.el: No longer load optional includes during bootstrap
30746 * lisp/ldefs-boot-auto.el: Regenerate.
30747 * lisp/ldefs-boot-manual.el: Add two autoloads.
30749 2017-02-28 Phillip Lord <phillip.lord@russet.org.uk>
30751 Do not use find-file non-interactively
30753 * lisp/international/titdic-cnv.el (miscdic-convert): Use
30754 insert-file-contents in place of find-file.
30756 2017-02-28 Stefan Monnier <monnier@iro.umontreal.ca>
30758 * src/xdisp.c (overlay_arrows_changed_p): Fix return value and doc
30760 (update_overlay_arrows): Skip non-markers.
30762 2017-02-28 Ken Brown <kbrown@cornell.edu>
30764 Try to avoid hang when logging out of MS-Windows
30766 * src/w32term.c (x_update_window_begin, x_update_window_end)
30767 (my_show_window, my_set_window_pos, my_set_focus)
30768 (my_set_foreground_window, my_destroy_window)
30769 (my_bring_window_to_top, x_iconify_frame): Replace calls to
30770 SendMessage by calls to SendMessageTimeout with a 6-second
30771 timeout. (Bug#25875)
30773 2017-02-28 Stefan Monnier <monnier@iro.umontreal.ca>
30775 * lisp/textmodes/reftex-toc.el (reftex-re-enlarge): Demote errors.
30777 2017-02-28 Stefan Monnier <monnier@iro.umontreal.ca>
30779 * doc/misc/eieio.texi: Update to account for the cl-generic facilities
30781 (Quick Start, Class Options, Generics): Adjust names for cl-generic.
30782 (Methods): Document cl-defmethod.
30783 Explain in more detail the order in which the various
30784 methods are executed. Document the conditions under which a method
30785 is redefined. Remove reference to `eieio-generic-call-arglst`.
30786 Don't document the precise return value of cl-next-method-p.
30787 (Static Methods): Adjust to use `subclass` specializer.
30788 (Method Invocation): Use cl-call-next-method and drop mention of :primary.
30789 (Signal Handling, Signals): Adjust names and args for cl-generic; add
30790 cl-no-primary-method.
30791 (CLOS compatibility, Wish List): Adjust to new featureset.
30793 2017-02-28 Stefan Monnier <monnier@iro.umontreal.ca>
30795 * lisp/cedet/mode-local.el (define-mode-local-override): Declare doctring.
30797 * lisp/nxml/nxml-mode.el (nxml-mode): Use new sgml-syntax-propertize.
30799 2017-02-28 Stefan Monnier <monnier@iro.umontreal.ca>
30801 * lisp/textmodes/sgml-mode.el: syntax-propertize <![CDATA and <?..?>
30803 (sgml-syntax-propertize-function): Mark <![CDATA and <?..?>.
30804 (sgml-syntax-propertize-inside): New fun.
30806 2017-02-28 Stefan Monnier <monnier@iro.umontreal.ca>
30808 * lisp/textmodes/css-mode.el (css-completion-at-point): Auto-insert
30810 ": ;" after completing a property.
30812 2017-02-28 Tino Calancha <tino.calancha@gmail.com>
30814 Show Ibuffer and jump to line listing current buffer
30816 * lisp/ibuffer.el (ibuffer-jump): New command (Bug#25577).
30818 2017-02-27 Juri Linkov <juri@linkov.net>
30820 * lisp/vc/add-log.el (change-log-next-buffer): Check if file exists
30822 before adding it to the list of files.
30824 2017-02-27 Juri Linkov <juri@linkov.net>
30826 Put text properties on query-replace separator string instead of "\0"
30828 * lisp/replace.el (query-replace--split-string):
30829 Split at a substring instead of just character.
30830 (query-replace-read-from): Put text properties on the
30831 separator string instead of "\0". (Bug#25482)
30833 2017-02-27 Juri Linkov <juri@linkov.net>
30835 Add file name and its extension to suggestions in dired-mark-files-regexp
30837 * lisp/dired.el (dired-mark-files-regexp): Add file name
30838 and its extension to the list of suggested defaults. (Bug#25578)
30840 2017-02-27 Chunyang Xu <mail@xuchunyang.me> (tiny change)
30842 Prompt default extension in dired-mark-extension
30844 * lisp/dired-x.el (dired-mark-extension): Prompt default extension
30845 based on extension of file at point. (Bug#25578)
30847 2017-02-27 Tino Calancha <tino.calancha@gmail.com>
30849 Prevent for consing in cl-mapc and cl-mapl
30851 * lisp/emacs-lisp/cl-extra.el (cl--mapcar-many): Add optional arg ACC;
30852 If non-nil, accumulate values in the result (Bug#25826).
30853 (cl-mapc): Do computations inside function instead of call cl-map.
30854 (cl-mapl): Do computations inside function instead of call cl-maplist.
30855 * lisp/emacs-lisp/cl-lib.el (mapcar): Add autoload cookie.
30856 Call cl--mapcar-many with non-nil 3rd argument.
30857 * test/lisp/emacs-lisp/cl-extra-tests.el (cl-extra-test-map)
30858 (cl-extra-test-mapc, cl-extra-test-mapcar, cl-extra-test-mapl)
30859 (cl-extra-test-maplist): New tests.
30861 2017-02-27 Tino Calancha <tino.calancha@gmail.com>
30863 Choose the right target dir on dired operations
30865 Prevent from changing the input target dir
30866 when dired-dwim-target is non-nil (Bug#25609).
30867 * lisp/dired-aux.el (dired-do-create-files):
30868 If dired-dwim-target is non-nil, then bind 'default' to nil.
30869 * test/lisp/dired-tests.el (dired-test-bug25609): Add test.
30871 2017-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
30873 * src/xdisp.c (overlay_arrows_changed_p): Fix last change.
30875 2017-02-27 Noam Postavsky <npostavs@gmail.com>
30877 Don't record eshell/clear "command" in history (Bug#25838)
30879 `eshell/clear' is implemented by sending a series of blank lines,
30880 which is not a useful thing to have in the history.
30882 * lisp/eshell/em-hist.el (eshell-input-filter-default): Use
30883 `string-blank-p' which does check for newlines (even though newlines
30884 have comment-end syntax, not whitespace syntax class).
30885 * lisp/eshell/esh-mode.el (eshell/clear): Remove
30886 `eshell-add-to-history' from `eshell-input-filter-functions' while
30887 sending the blank lines. This change is needed to solve the bug if
30888 the user customizes `eshell-input-filter' to something that doesn't
30891 2017-02-26 Paul Eggert <eggert@cs.ucla.edu>
30893 Remove a few unused C functions
30895 * src/eval.c (let_shadows_global_binding_p):
30896 * src/print.c (write_string):
30897 * src/systhread.c (sys_mutex_destroy, sys_thread_equal):
30899 * src/print.c (write_string): Rename from write_string_1.
30902 2017-02-26 Eli Zaretskii <eliz@gnu.org>
30904 Avoid segfault in overlay_arrows_changed_p
30906 * src/xdisp.c (overlay_arrows_changed_p): Fix recent change
30907 to avoid a segfault.
30909 2017-02-26 Noam Postavsky <npostavs@gmail.com>
30911 Don't call package--ensure-init-file if initialized during startup
30913 * lisp/emacs-lisp/package.el (package-initialize): Check
30914 `after-init-time' rather than `load-file-name' to decide if
30915 `package--ensure-init-file' should be called. Depending on
30916 `load-file-name' will fail if the user calls `pacakge-initialize' in
30917 file which is loaded from the init file (Bug#24643, Bug#25819).
30919 2017-02-26 Eli Zaretskii <eliz@gnu.org>
30921 Fix display of before- and after-strings at invisible text
30923 * src/xdisp.c (next_overlay_string): Don't raise the
30924 ignore_overlay_strings_at_pos_p flag if the iterator is already
30925 set to continue at a buffer position different from the one
30926 where the overlay strings we just processed were loaded. (Bug#25856)
30928 2017-02-26 Michael Albinus <michael.albinus@gmx.de>
30930 Work on `tramp-completion-mode-p'
30932 * etc/NEWS: Say that `tramp-completion-mode' is obsolete.
30934 * lisp/net/tramp.el (tramp-completion-mode): Make it obsolete.
30935 (tramp-completion-mode-p): Reintroduce the check for 'tab.
30937 2017-02-25 Tom Tromey <tom@tromey.com>
30939 Use font-lock-doc-face in js-mode
30942 * lisp/progmodes/js.el (js-font-lock-syntactic-face-function): New
30945 * test/lisp/progmodes/js-tests.el (js-mode-doc-comment-face): New
30948 2017-02-25 Noam Postavsky <npostavs@gmail.com>
30950 Don't use IP 0.0.0.0 for package test server (Bug#22582)
30952 * test/lisp/emacs-lisp/package-resources/package-test-server.py: Set
30953 'server_address' when port number is given on the command line. Print
30954 IP and port number as a URL, and flush it after printing.
30955 * test/lisp/emacs-lisp/package-tests.el:
30956 (package-test-update-archives-async): Grab the whole URL from server
30959 2017-02-25 Tom Tromey <tom@tromey.com>
30961 Add more branch support to vc-dir
30964 * lisp/vc/vc-dir.el (vc-dir-mode-map) Add "B" bindings.
30965 * lisp/vc/vc.el (vc-revision-history): New defvar.
30966 (vc-read-revision): Use vc-revision-history.
30967 (vc-print-branch-log): New function.
30968 * doc/emacs/maintaining.texi (VC Directory Commands): Document new
30970 * etc/NEWS: Mention new vc-dir bindings.
30972 2017-02-25 Alan Mackenzie <acm@muc.de>
30974 Allow for the :: operator in C++ "enum class" declarations.
30976 * lisp/progmodes/cc-engine.el (c-backward-typed-enum-colon): Check for
30979 2017-02-25 Michael Albinus <michael.albinus@gmx.de>
30983 * lisp/net/tramp-sh.el (tramp-do-file-attributes-with-ls):
30984 Simplify error handling for huge inodes.
30985 (tramp-convert-file-attributes): Handle very huge inodes. (Bug#25854)
30987 2017-02-25 Eli Zaretskii <eliz@gnu.org>
30989 Avoid leaving garbage on screen when using 'raise' display property
30991 * src/xdisp.c (display_line): Reset voffset value of the iterator
30992 when it hits ZV, to avoid "inheriting" it to glyph rows past ZV,
30993 which then leaves stuff on screen that needs to be cleared by
30994 redisplay. (Bug#25855)
30996 2017-02-25 Eli Zaretskii <eliz@gnu.org>
30998 Fix doc strings in info.el
31000 * lisp/info.el (Info-selection-hook, Info-mode-hook)
31001 (Info-edit-mode-hook): Doc fixes. (Bug#25794)
31003 2017-02-25 Eli Zaretskii <eliz@gnu.org>
31005 Fix doc string of 'posn-at-point'
31007 * src/keyboard.c (Fposn_at_point): Clarify the doc string.
31010 2017-02-25 Peder O. Klingenberg <peder@klingenberg.no>
31012 New option -u / --suppress-output to emacsclient
31014 * lib-src/emacsclient.c (print_help_and_exit, longopts)
31015 (decode_options, main): Implement new option --suppress-output / -u to
31016 suppress printing of eval-results.
31017 * doc/emacs/misc.texi (emacsclient Options): Document the new
31018 "--suppress-output/-u" options.
31019 * etc/NEWS: Mention the new options.
31021 2017-02-25 Noam Postavsky <npostavs@gmail.com>
31023 Fix scrolling with partial line corner case (Bug#25792)
31025 Also fix up the scrolling tests so that they don't make so many
31026 assumptions about the current window configuration.
31028 * src/xdisp.c (try_window): Take partial line height into account when
31029 comparing cursor position against scroll margin.
31031 * test/manual/scroll-tests.el (scroll-tests-with-buffer-window): Add
31032 HEIGHT argument, to allow setting up window with exact height and
31034 (scroll-tests-display-buffer-with-height): New display-buffer action
31036 (scroll-tests-scroll-margin-over-max):
31037 (scroll-tests--scroll-margin-whole-window): Pass HEIGHT to
31038 `scroll-tests--scroll-margin-whole-window'.
31039 (scroll-tests-conservative-show-trailing-whitespace): New test.
31040 (scroll-tests-scroll-margin-negative): Fix line counting.
31041 (scroll-tests--point-in-middle-of-window-p): Set window height
31044 2017-02-25 Tom Tromey <tom@tromey.com>
31046 Fix indentation error in js.el
31048 * lisp/progmodes/js.el (js--indent-in-array-comp): Wrap forward-sexp
31049 call in condition-case.
31050 * test/lisp/progmodes/js-tests.el (js-mode-indentation-error): New
31053 2017-02-24 Tom Tromey <tom@tromey.com>
31055 add "async" and "await" keywords
31057 * lisp/progmodes/js.el (js--keyword-re): Add async, await.
31059 2017-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
31061 Use cl-print for Edebug and EIEIO
31063 * lisp/emacs-lisp/edebug.el (edebug-prin1-to-string): Use cl-print.
31064 (edebug-prin1, edebug-print): Remove.
31066 * lisp/emacs-lisp/eieio.el (object-print): Declare obsolete.
31067 (cl-print-object): Add a method for EIEIO objects.
31068 (eieio-edebug-prin1-to-string): Delete.
31069 (edebug-prin1-to-string): Don't advise any more.
31071 * lisp/emacs-lisp/eieio-datadebug.el (data-debug-insert-object-button):
31072 Replace `object-print' -> `cl-prin1-to-string'.
31074 2017-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
31076 Fix left over uses of `call-next-method'
31078 * lisp/cedet/semantic/db-global.el (object-print):
31079 * lisp/cedet/semantic/db.el (object-print): Use `cl-call-next-method'.
31081 2017-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
31083 Minor redisplay optimizations
31085 * src/frame.c (Ficonify_frame): No need to redisplay everything.
31087 * src/xdisp.c (overlay_arrows_changed_p): Add `set_redisplay' argument.
31088 (redisplay_internal): Use it to avoid redisplaying everything.
31089 (try_window_id): Use it keep the same behavior as before.
31091 2017-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
31093 * lisp/emacs-lisp/cl-print.el: New file
31095 * lisp/emacs-lisp/nadvice.el (advice--where): New function.
31096 (advice--make-docstring): Use it.
31098 * src/print.c (print_number_index): Don't declare here any more.
31099 (Fprint_preprocess): New function.
31101 * test/lisp/emacs-lisp/cl-print-tests.el: New file.
31103 2017-02-24 Peder O. Klingenberg <peder@klingenberg.no>
31105 Make calc's least common multiple positive (bug#25255)
31107 * lisp/calc/calc-comb.el (calcFunc-lcm): Return absolute value.
31108 * doc/misc/calc.texi (Combinatorial Functions): Update for the above.
31110 2017-02-24 Tino Calancha <tino.calancha@gmail.com>
31112 Documentation fix in elisp reference manual
31114 * doc/lispref/macros.texi (Defining Macros): Drop redundant mention
31115 on 'declare' forms (Bug#25846).
31117 2017-02-24 Gemini Lasswell <gazally@runbox.com>
31119 Support read syntax for circular objects in Edebug (Bug#23660)
31121 * lisp/emacs-lisp/edebug.el (edebug-read-special): New name
31122 for edebug-read-function. Handle the read syntax for circular
31124 (edebug-read-objects): New variable.
31125 (edebug-read-and-maybe-wrap-form1): Reset edebug-read-objects.
31127 * src/lread.c (Fsubstitute_object_in_subtree): Make
31128 substitute_object_in_subtree into a Lisp primitive.
31130 2017-02-24 Lixin Chin <lixinchin@gmail.com> (tiny change)
31132 Add Conference to the list of valid bibtex entry types
31134 * lisp/textmodes/bibtex.el (bibtex-BibTeX-entry-alist):
31135 Add Conference as a duplicate of InProceedings. (Bug#25143)
31137 2017-02-23 Glenn Morris <rgm@gnu.org>
31139 * lisp/comint.el (comint-password-prompt-regexp): Add SUDO. (Bug#24817)
31141 2017-02-23 Glenn Morris <rgm@gnu.org>
31143 Small dunnet score file improvements
31145 * lisp/play/dunnet.el (dun-log-file): Switch to per-user default.
31146 (dun-do-logfile): Handle non-existing score file.
31148 2017-02-23 Glenn Morris <rgm@gnu.org>
31150 * lisp/play/dunnet.el (dun-help): Doc fix.
31152 2017-02-23 Mark Oteiza <mvoteiza@udel.edu>
31154 Declare dun-line and dun-line-list
31156 Previously, there were free variables 'line' and 'line-list'.
31157 * lisp/play/dunnet.el (dun-line, dun-line-list): New variables.
31158 (dun-press, dun-vparse, dun-parse2, dun-unix-parse, dun-batch-parse):
31159 (dun-batch-parse2, dun-batch-loop, dun-batch-dos-interface):
31160 (dun-batch-unix-interface): Use them.
31162 2017-02-23 Paul Eggert <eggert@cs.ucla.edu>
31167 2017-02-16 xbinary-io: rename from xsetmode
31168 2017-02-15 xsetmode: new module
31169 * lib-src/etags.c (main):
31170 * lib-src/hexl.c (main):
31171 * src/emacs.c (main) [MSDOS]:
31172 Prefer set_binary_mode to the obsolescent SET_BINARY.
31173 * lib/binary-io.c, lib/binary-io.h: Copy from gnulib.
31175 2017-02-23 Paul Eggert <eggert@cs.ucla.edu>
31177 hexl: handle large files and I/O errors
31179 * lib-src/hexl.c: Include inttypes.h, for PRIxMAX etc.
31180 Do not include ctype.h, as the code no longer uses isdigit.
31181 (DEFAULT_GROUPING, un_flag, iso_flag, group_by): Now local to ‘main’.
31182 (DEFAULT_BASE, endian): Remove; was not really used.
31183 (usage): Remove; now done by ‘main’, as that’s simpler.
31184 (progname): Now static.
31185 (output_error, hexchar): New functions.
31186 (main): Use them. Simplify. Remove "-oct", "-big-endian", and
31187 "-little-endian" options, as they did not work and were not used.
31188 Use SET_BINARY only on stdin, and fopen with "rb" otherwise.
31189 Use SET_BINARY only once on stdout.
31190 Do not assume file offsets fit in ‘long’.
31191 If an I/O error occurs, report it and exit with nonzero status.
31193 2017-02-23 Eli Zaretskii <eliz@gnu.org>
31195 Avoid quitting inside a critical section on MS-Windows
31197 * src/w32uniscribe.c (uniscribe_list_family):
31198 * src/w32font.c (w32font_list_family, w32font_text_extents)
31199 (w32font_list_internal, w32font_match_internal)
31200 (list_all_matching_fonts): Prevent quitting while these functions
31201 cons lists of fonts, to avoid leaving the critical section taken
31202 by the main thread, which will then cause any other thread
31203 attempting to enter the critical section to hang. (Bug#25279)
31205 2017-02-22 Dmitry Gutov <dgutov@yandex.ru>
31207 Use revision-completion-table in vc-retrieve-tag
31209 * lisp/vc/vc.el (vc-retrieve-tag): Use the
31210 revision-completion-table command for completion (bug#25710).
31212 2017-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
31214 * lisp/emacs-lisp/cl-generic.el (cl--generic-typeof-types): Add `atom'
31216 remove entries whose car can't be returned by type-of.
31217 (cl--generic-all-builtin-types): New var.
31218 (cl-generic-generalizers): Use it to avoid requiring
31219 extra entries in cl--generic-typeof-types.
31221 2017-02-22 Noam Postavsky <npostavs@gmail.com>
31223 Find macro binding for symbol-bound macros too (Bug#6848)
31225 There are 2 ways to bind a macro: with global-set-key or
31226 kmacro-bind-to-key. The former binds a key to a symbol, while the
31227 latter binds to a lambda. In 2010-03-03 "Fix keyboard macro key
31228 lookup (Bug#5481)", `insert-kbd-macro' was fixed to detect the lambda
31229 case, but broke the symbol case.
31231 * lisp/macros.el (insert-kbd-macro): Also check for bindings of
31234 2017-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
31236 * lisp/emacs-lisp/cl-generic.el (cl-defgeneric): Fix last change
31238 2017-02-22 Juri Linkov <juri@linkov.net>
31240 * lisp/isearch.el (lazy-highlight-max-at-a-time): Doc fix (bug#21092).
31242 2017-02-22 Juri Linkov <juri@linkov.net>
31244 * lisp/isearch.el (isearch-lazy-highlight): New choice ‘all-windows’.
31246 (isearch-lazy-highlight-update): Check it to decide whether to apply
31247 overlays only on the selected window.
31249 * lisp/follow.el (follow-mode): Set isearch-lazy-highlight to ‘all-windows’.
31250 (Bug#17453, bug#21092)
31252 2017-02-22 Paul Eggert <eggert@cs.ucla.edu>
31254 Minor weak hash table performance tweaks
31256 * src/fns.c (make_hash_table): Omit unnecessary assignment to
31257 h->next_weak when the hash table is not weak.
31258 (copy_hash_table): Put the copy next to the original in the
31259 weak_hash_tables list, as this should have better locality
31260 when scanning the weak hash tables.
31262 2017-02-22 Paul Eggert <eggert@cs.ucla.edu>
31264 Use float instead of Lisp_Object for rehash_size
31266 * src/alloc.c (purecopy_hash_table):
31267 * src/fns.c (maybe_resize_hash_table, Fmake_hash_table):
31268 (Fhash_table_rehash_size):
31269 * src/lisp.h (struct Lisp_Hash_Table.rehash_size):
31270 The rehash_size member of struct Lisp_Hash_Table is now a
31271 float, not a Lisp_Object.
31272 * src/alloc.c (purecopy_hash_table): Assign members in order.
31273 * src/fns.c (make_hash_table): Use EMACS_INT for size and
31274 float for rehash_size, instead of Lisp_Object for both.
31275 All callers changed.
31276 * src/lisp.h (DEFAULT_REHASH_SIZE): Now float, not double,
31278 * src/print.c (print_object): Simplify by calling
31279 Fhash_table_rehash_size and Fhash_table_rehash_threshold.
31280 Avoid unnecessary NILP.
31282 2017-02-22 Paul Eggert <eggert@cs.ucla.edu>
31284 Use ptrdiff_t instead of Lisp_Object for collision
31286 * src/alloc.c (purecopy_hash_table): Assign, don’t purecopy.
31287 * src/fns.c (set_hash_next_slot, set_hash_index_slot): Hash index
31288 arg is now ptrdiff_t index (or -1 if empty), not Lisp_Object
31289 integer (or Qnil if empty). All callers changed.
31290 (larger_vecalloc): New static function.
31291 (larger_vector): Use it.
31292 (HASH_NEXT, HASH_INDEX): Move here from lisp.h. Return ptrdiff_t
31293 index (or -1) not Lisp_Object integer (or Qnil). All callers changed.
31294 * src/fns.c (make_hash_table, maybe_resize_hash_table, hash_lookup)
31295 (hash_put, hash_remove_from_table, hash_clear, sweep_weak_table):
31296 * src/profiler.c (evict_lower_half, record_backtrace):
31297 -1, not nil, is now the convention for end of collision list.
31298 * src/fns.c (maybe_resize_hash_table): Avoid double-initialization
31299 of the free list. Reallocate H->next last, in case other
31300 reallocations exhaust memory.
31301 * src/lisp.h (struct Lisp_Hash_Table): ‘next_free’ is now
31302 ptrdiff_t, not Lisp_Object. Adjust commentary for ‘next’ and
31303 ‘index’, which no longer contain nil.
31304 (HASH_NEXT, HASH_INDEX): Move to src/fns.c.
31306 2017-02-22 Paul Eggert <eggert@cs.ucla.edu>
31308 Hash table threshold is now float, not double
31310 Change default from 0.8 to 0.8125 so it fits in float without
31312 * doc/lispref/hash.texi (Creating Hash):
31313 * doc/lispref/objects.texi (Hash Table Type):
31316 * src/fns.c (make_hash_table, maybe_resize_hash_table)
31317 (Fmake_hash_table): Threshold is now float, not double.
31318 Be consistent about how this is rounded.
31319 * src/lisp.h (struct Lisp_Hash_Table.rehash_threshold):
31320 Change back to float, now that the other code rounds consistently.
31321 (DEFAULT_REHASH_THRESHOLD): Now float 0.8125 instead of double 0.8.
31323 2017-02-22 Juri Linkov <juri@linkov.net>
31325 Avoid flicker in lazy-highlight by doing all updates without redisplay.
31327 * lisp/isearch.el (lazy-highlight-max-at-a-time):
31328 Change default value from 20 to nil to not trigger redisplay
31329 between updating iterations.
31330 (lazy-highlight-cleanup): New arg ‘procrastinate’ to not remove
31331 overlays when non-nil.
31332 (isearch-lazy-highlight-new-loop): Call lazy-highlight-cleanup
31333 with non-nil second arg when the search string is not empty.
31334 Run timer with isearch-lazy-highlight-start instead of
31335 isearch-lazy-highlight-update.
31336 (isearch-lazy-highlight-start): New function. (Bug#25751)
31338 2017-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
31340 * lisp/emacs-lisp/autoload.el (make-autoload): Support cl-defgeneric
31342 * lisp/emacs-lisp/cl-generic.el (cl-defgeneric): Tweak for autoloading.
31344 2017-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
31346 * lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Fix duplication
31348 which resulted in incomplete list of parents in one copy of the
31349 cl-structure-class class.
31351 2017-02-21 Glenn Morris <rgm@gnu.org>
31353 Tweak recent custom-reevaluate-setting change
31355 * lisp/custom.el (custom-reevaluate-setting):
31356 Tweak previous change to avoid font-lock init issues.
31358 2017-02-21 Glenn Morris <rgm@gnu.org>
31360 Ensure delayed-init custom variables get marked special
31362 * lisp/custom.el (custom-reevaluate-setting):
31363 If the variable has never been set, defvar it. (Bug#25770)
31365 2017-02-21 Mark Oteiza <mvoteiza@udel.edu>
31367 Turn on lexical-binding in dunnet.el
31369 * lisp/play/dunnet.el: Turn on lexical-binding. Re-instate lexical
31370 byte compile warnings.
31372 2017-02-21 Mark Oteiza <mvoteiza@udel.edu>
31374 Make dunnet insertion functions n-ary
31376 * lisp/play/dunnet.el (dun-mprinc, dun-mprincl, dun-minsert):
31377 (dun-minsertl, dun-batch-mprinc, dun-batch-mprincl): Change to accept
31378 any number of arguments.
31379 (dun-parse, dun-describe-room, dun-quit, dun-inven, dun-shake):
31380 (dun-take, dun-go, dun-move, dun-press, dun-score):
31381 (dun-compile-save-out, dun-do-logfile): Collect arguments from
31382 multiple insertion calls into less calls with more args.
31384 2017-02-21 Katsumi Yamaoka <yamaoka@jpl.org>
31386 message-goto-body-1: Fix regexp so as not to match multi-line
31388 * lisp/gnus/message.el (message-goto-body-1):
31389 Fix regexp so as not to match multi-line.
31391 2017-02-20 Noam Postavsky <npostavs@gmail.com>
31393 Simplify cl-get using `plist-member'
31395 * lisp/emacs-lisp/cl-extra.el (cl-get, cl-getf, cl--set-getf): Use
31396 `plist-member' instead of explicit loop.
31397 * test/lisp/emacs-lisp/cl-extra-tests.el: New tests.
31399 2017-02-20 Paul Eggert <eggert@cs.ucla.edu>
31401 Verify xwidget USE_LSB_TAG assumption
31403 * src/xwidget.c (Fxwidget_webkit_execute_script):
31404 Add verification. Problem reported by Andreas Schwab (Bug#25816#8).
31406 2017-02-20 Stefan Monnier <monnier@iro.umontreal.ca>
31408 * src/insdel.c (make_gap): Improve comment.
31410 2017-02-20 Mark Oteiza <mvoteiza@udel.edu>
31412 Do not use switch-to-buffer for working in a temp buffer
31414 * lisp/play/dunnet.el (dunnet): Use pop-to-buffer-same-window instead,
31416 (dun-load-d, dun-eval, dun-save-game, dun-do-logfile): Use
31417 with-temp-buffer instead.
31419 2017-02-20 Mark Oteiza <mvoteiza@udel.edu>
31421 Make dun-room-shorts a defconst
31423 * lisp/play/dunnet.el (dun-room-shorts): Make defconst and collect
31424 initial value into the declaration.
31425 (dun-space-to-hyphen): Remove.
31427 2017-02-20 Paul Eggert <eggert@cs.ucla.edu>
31429 Port xwidget to -DCHECK_LISP_OBJECT_TYPE
31431 * src/xwidget.c (webkit_javascript_finished_cb)
31432 (Fxwidget_webkit_execute_script): Don't assume Lisp_Object is an
31433 integer. This fix is just a hack; I’ll file a bug report about
31434 the underlying problem.
31436 2017-02-20 Katsumi Yamaoka <yamaoka@jpl.org>
31438 mm-decode.el: Simplify regexp used to search html meta tag
31440 * lisp/gnus/mm-decode.el (mm-add-meta-html-tag, mm-shr):
31441 Simplify regexp used to search html meta tag.
31443 2017-02-20 Katsumi Yamaoka <yamaoka@jpl.org>
31445 mm-shr: Ignore coding-system `ascii'
31447 * lisp/gnus/mm-decode.el (mm-shr): Ignore coding-system `ascii'.
31449 2017-02-20 Tom Tromey <tom@tromey.com>
31451 vc-log-outgoing fixes for git; add binding to vc-dir
31453 * lisp/vc/vc-dir.el (vc-dir-mode-map): Bind "O" to vc-log-outgoing.
31454 * lisp/vc/vc-git.el (vc-git-log-outgoing, vc-git-log-incoming): Use
31456 (vc-git-log-view-mode): Also truncate lines for log-outgoing and
31458 * lisp/vc/vc.el (vc-log-incoming, vc-log-outgoing): Don't pass nil
31459 as remote-location argument.
31461 2017-02-20 Tom Tromey <tom@tromey.com>
31463 Remove stale comments from vc-git and vc-hg
31465 * lisp/vc/vc-git.el (vc-git-retrieve-tag): Remove comment.
31466 * lisp/vc/vc-hg.el (vc-hg-retrieve-tag): Remove comment.
31468 2017-02-20 Mark Oteiza <mvoteiza@udel.edu>
31470 Remove member clone
31472 * lisp/play/dunnet.el (dun-answer): Use member instead.
31473 (dun-members): Remove.
31475 2017-02-20 Mark Oteiza <mvoteiza@udel.edu>
31479 * lisp/play/dunnet.el (room): Rename to dun-room.
31480 (dun-messages, dunnet, dun-describe-room, dun-drop, dun-move):
31481 (dun-restore, dun-do-logfile, dun-batch-loop): Use new name.
31483 2017-02-20 Mark Oteiza <mvoteiza@udel.edu>
31485 Replace nested ifs with cond
31487 * lisp/play/dunnet.el (dun-messages, dun-describe-room, dun-examine):
31488 (dun-eat, dun-put-objs, dun-turn, dun-press, dun-ls, dun-cd): Use when
31489 and cond where appropriate.
31490 (dun-sauna-heat): Accept sauna level as an argument. Use cond.
31491 (dun-take): Use null and dun-mprincl.
31492 (dun-inven-weight, dun-load-d): Reformat.
31493 (dun-remove-obj-from-inven, dun-remove-obj-from-room): Nix setq to nil.
31495 2017-02-19 Paul Eggert <eggert@cs.ucla.edu>
31497 Fix glitches in recent hash table changes
31499 * src/fns.c (Fmake_hash_table): Simplify the machine code slightly
31500 by using 0 rather than -1.
31501 * src/lisp.h (struct Lisp_Hash_Table.pure): Now bool rather
31502 than a bitfield, for speed (the bitfield did not save space).
31503 (struct Lisp_Hash_Table.rehash_threshold): Now double rather than
31504 float, since the float caused unwanted rounding errors, e.g.,
31505 (hash-table-rehash-threshold (make-hash-table)) yielded
31506 0.800000011920929 instead of the correct 0.8.
31508 2017-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
31510 * src/insdel.c (make_gap): Increase enough to avoid O(N^2) behavior.
31512 2017-02-19 Eli Zaretskii <eliz@gnu.org>
31514 Avoid aborts during loadup
31516 * src/emacs-module.c (syms_of_module):
31517 * src/image.c (xpm_make_color_table_h): Update calls to
31518 make_hash_table to adjust to a recent change in fns.c.
31519 * src/fns.c (make_hash_table):
31520 * src/lisp.h (make_hash_table): 4th arg is now of type double.
31522 2017-02-19 Michael Albinus <michael.albinus@gmx.de>
31524 Rework connection local variables
31526 For connection local variables interface, `class' is renamed
31527 to `profile'. All arguments `criteria' are a plist now.
31529 * doc/lispref/variables.texi (Connection Local Variables):
31532 * lisp/files-x.el (connection-local-profile-alist): Rename
31533 from `connection-local-class-alist'. Adapt docstring.
31534 (connection-local-criteria-alist): Adapt docstring.
31535 (connection-local-normalize-criteria): New defun.
31536 (connection-local-get-profiles): Rename from
31537 `connection-local-get-classes'. Rewrite.
31538 (connection-local-set-profiles): Rename from
31539 `connection-local-set-classes'. Rewrite.
31540 (connection-local-get-profile-variables): Rename from
31541 `connection-local-get-class-variables'. Rewrite.
31542 (connection-local-set-profile-variables): Rename from
31543 `connection-local-set-class-variables'. Rewrite.
31544 (hack-connection-local-variables)
31545 (hack-connection-local-variables-apply)): Rewrite.
31546 (with-connection-local-profiles): Rename from
31547 `ith-connection-local-classes'. Rewrite.
31549 * lisp/net/tramp.el (tramp-set-connection-local-variables):
31552 * lisp/net/tramp-cmds.el (tramp-bug):
31553 Use `connection-local-profile-alist'.
31555 * test/lisp/files-x-tests.el (files-x-test--variables1)
31556 (files-x-test--variables2, files-x-test--variables3)
31557 (files-x-test--variables4, files-x-test--criteria1)
31558 (files-x-test--criteria2): Make them a defconst.
31559 (files-x-test--application)
31560 (files-x-test--another-application, files-x-test--protocol)
31561 (files-x-test--user, files-x-test--machine): New defconst.
31562 (files-x-test--criteria): New defvar.
31563 (files-x-test--criteria3): Remove.
31564 (files-x-test-connection-local-set-profile-variables):
31565 Rename from `files-x-test-connection-local-set-class-variables'.
31567 (files-x-test-connection-local-set-profiles): Rename from
31568 `files-x-test-connection-local-set-classes'. Rewrite.
31569 (files-x-test-hack-connection-local-variables-apply) Rewrite.
31570 (files-x-test-with-connection-local-profiles): Rename from
31571 `files-x-test-with-connection-local-classes'. Rewrite.
31573 2017-02-19 Mark Oteiza <mvoteiza@udel.edu>
31575 Set up combination and random item location
31577 * lisp/play/dunnet.el (dun-combination): Make defconst.
31578 (tloc, tcomb): Remove. Replace with a top-level form.
31580 2017-02-19 Mark Oteiza <mvoteiza@udel.edu>
31582 Replace movement variables with an alist and accessor
31584 * lisp/play/dunnet.el (north, south, east, west, northeast, southeast):
31585 (northwest, southwest, up, down, in, out): Remove.
31586 (dun-movement-alist): New constant.
31587 (dun-movement): New function.
31588 (dun-n, dun-s, dun-e, dun-w, dun-ne, dun-se, dun-nw, dun-sw, dun-up):
31589 (dun-down, dun-in, dun-out): Use a symbol for indicating movement.
31590 (dun-move, dun-special-move): Translate movement symbol to an
31593 2017-02-19 Mark Oteiza <mvoteiza@udel.edu>
31595 Change top-level setq forms to defvar or defconst
31597 Also collect some code onto fewer lines and reindent.
31598 * lisp/play/dunnet.el (dun-visited, dun-current-room, dun-exitf):
31599 (dun-badcd, dun-computer, dun-floppy, dun-key-level, dun-hole):
31600 (dun-correct-answer, dun-lastdir, dun-numsaves, dun-jar, dun-dead):
31601 (room, dun-numcmds, dun-wizard, dun-endgame-question, dun-logged-in):
31602 (dungeon-mode, dun-unix-verbs, dun-dos-verbs, dun-batch-mode):
31603 (dun-cdpath, dun-cdroom, dun-uncompressed, dun-ethernet):
31604 (dun-restricted, dun-ftptype, dun-endgame, dun-rooms):
31605 (dun-light-rooms, dun-verblist, dun-inbus, dun-nomail, dun-ignore):
31606 (dun-mode, dun-sauna-level, north, south, east, west, northeast):
31607 (southeast, northwest, southwest, up, down, in, out, dungeon-map):
31608 (dun-objnames, obj-special, dun-room-objects, dun-room-silents):
31609 (dun-inventory, dun-objects, dun-object-lbs, dun-object-pts):
31610 (dun-objfiles, dun-perm-objects, dun-physobj-desc, dun-permobj-desc):
31611 (dun-diggables, dun-room-shorts, dun-endgame-questions): Change
31612 declaration to use defvar or defconst.
31613 (dun-doverb, dun-vparse, dun-vparse2, dun-batch-parse):
31614 (dun-batch-parse2): Omit the dun- prefix from arguments dun-ignore
31615 dun-verblist. Those are now constants and the byte compiler doesn't
31616 allow defconsts in lambda lists.
31618 2017-02-19 Mark Oteiza <mvoteiza@udel.edu>
31620 Move all dunnet globals up to the top
31622 * lisp/play/dunnet.el: Adjust comments to reflect moved forms.
31623 (dun-visited, dun-current-room, dun-exitf):
31624 (dun-badcd, dun-computer, dun-floppy, dun-key-level, dun-hole):
31625 (dun-correct-answer, dun-lastdir, dun-numsaves, dun-jar, dun-dead):
31626 (room, dun-numcmds, dun-wizard, dun-endgame-question, dun-logged-in):
31627 (dungeon-mode, dun-unix-verbs, dun-dos-verbs, dun-batch-mode):
31628 (dun-cdpath, dun-cdroom, dun-uncompressed, dun-ethernet):
31629 (dun-restricted, dun-ftptype, dun-endgame, dun-rooms):
31630 (dun-light-rooms, dun-verblist, dun-inbus, dun-nomail, dun-ignore):
31631 (dun-mode, dun-sauna-level, north, south, east, west, northeast):
31632 (southeast, northwest, southwest, up, down, in, out, dungeon-map):
31633 (dun-objnames, obj-special, dun-room-objects, dun-room-silents):
31634 (dun-inventory, dun-objects, dun-object-lbs, dun-object-pts):
31635 (dun-objfiles, dun-perm-objects, dun-physobj-desc, dun-permobj-desc):
31636 (dun-diggables, dun-room-shorts, dun-endgame-questions): Move to the
31637 top of the file, before any uses.
31639 2017-02-19 Michael Albinus <michael.albinus@gmx.de>
31643 * lisp/net/tramp.el (tramp-autoload-file-name-handler):
31644 Do not load tramp.el just for "/". (Bug#25788)
31646 2017-02-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
31648 Fix fringe bitmap initialization on MS-Windows
31650 * src/fringe.c (init_fringe_bitmap) [HAVE_NTGUI]: Fix initialization
31651 of fb->bits. (Bug#25673)
31653 2017-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
31655 Change type of `rehash_threshold' and `pure' fields in hash-tables
31657 * src/lisp.h (struct Lisp_Hash_Table): Change type of
31658 `rehash_threshold' and `pure' fields and move them after `count'.
31659 * src/fns.c (make_hash_table): Change type of `rehash_threshold' and `pure'.
31660 (Fmake_hash_table, Fhash_table_rehash_threshold):
31661 * src/category.c (hash_get_category_set):
31662 * src/xterm.c (syms_of_xterm):
31663 * src/profiler.c (make_log):
31664 * src/print.c (print_object):
31665 * src/alloc.c (purecopy_hash_table, purecopy): Adjust accordingly.
31667 2017-02-19 Paul Eggert <eggert@cs.ucla.edu>
31669 Use 'char *FOO' instead of 'char* FOO'
31671 2017-02-19 Mark Oteiza <mvoteiza@udel.edu>
31673 More json.el changes
31675 * lisp/json.el (json-read-keyword, json-read-number, json-read-object):
31676 (json-read-array): Just use = for char comparison.
31678 2017-02-18 Noam Postavsky <npostavs@gmail.com>
31680 * lisp/woman.el (woman): Fix docstring prefix arg description.
31682 2017-02-18 Alan Mackenzie <acm@muc.de>
31684 Fix edebug-spec on c-lang-defvar.
31686 This allows c-lang-defvars with the symbol 'dont-doc in the place of the
31687 optional documentation to be instrumented for edebug.
31689 lisp/progmodes/cc-langs.el (top-level): Amend the edebug-spec for
31691 (c-opt-identifier-concat-key, c-decl-prefix-or-start-re): remove redundant
31694 2017-02-18 Lars Ingebrigtsen <larsi@gnus.org>
31696 Lists used as plists now have to be an even length
31698 * lisp/net/eww.el (eww-size-text-inputs): `eww-form' isn't a plist.
31699 (eww-process-text-input): Not here, either.
31701 2017-02-18 Michael Albinus <michael.albinus@gmx.de>
31703 Unset `non-essential' in Tramp when not needed anymore
31705 * doc/misc/trampver.texi:
31706 * lisp/net/trampver.el: Change version to "2.3.2-pre".
31708 * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
31709 Use `tramp-completion-mode-p'.
31711 * lisp/net/tramp.el (tramp-file-name-handler): Unset `non-essential'
31712 when file name doesn't match `tramp-completion-file-name-regexp'.
31714 2017-02-18 Eli Zaretskii <eliz@gnu.org>
31716 Automatically regenerate emacs.1 and *.rc files
31718 * Makefile.in (CONFIG_STATUS_FILES_IN): New variable, lists
31719 non-Makefile files produced by config.status.
31720 ($(MAKEFILE_NAME)): Depend on $(CONFIG_STATUS_FILES_IN), so that
31721 their targets are regenerated when the source changes.
31723 2017-02-18 Alan Mackenzie <acm@muc.de>
31725 Set the syntax table in AWK Mode.
31727 This is a partial reversion of CC Mode commit on 2016-05-09 17:49:45 +0000.
31728 It fixes bug #25722.
31730 lisp/progmodes/cc-mode.el (awk-mode): Explicitly set the syntax table.
31732 2017-02-18 Eli Zaretskii <eliz@gnu.org>
31734 Mention "editor" in Emacs man page header
31736 * doc/man/emacs.1.in: Mention "editor" in the header line.
31737 (Bug#25771, Bug#25779)
31739 2017-02-18 Göktuğ Kayaalp <self@gkayaalp.com>
31741 Fix Turkish language environment setup
31743 * lisp/language/european.el ("Turkish"): Fix a typo in Turkish
31744 language setup. (Bug#25763)
31746 2017-02-18 Rami Ylimäki <rami.ylimaki@vincit.fi>
31748 Support 24-bit direct colors on text terminals
31750 * src/term.c (init_tty): Use 24-bit terminal colors if corresponding
31751 foreground and background functions are present in terminal type
31753 * src/tparam.h: Define prototype for tigetstr.
31755 * lisp/term/tty-colors.el (tty-color-define): Convert color palette
31756 index to pixel value on 16.7M color terminals.
31757 (tty-color-24bit): New function to convert color palette index to
31758 pixel value on 16.7M color terminals.
31759 (tty-color-desc): Don't approximate colors on 16.7M color terminals.
31760 * lisp/term/xterm.el (xterm-register-default-colors): Define all named
31761 TTY colors on 16.7M color terminals.
31763 * doc/misc/efaq.texi (Colors on a TTY): Add instructions on how to
31764 enable direct color TTY mode.
31765 * etc/NEWS: Mention direct color TTY mode and point to FAQ.
31767 2017-02-18 Rami Ylimäki <rami.ylimaki@vincit.fi>
31769 Remove unused TN_max_pairs field
31771 * src/termchar.h (tty_display_info): Remove TN_max_pairs field,
31772 describing maximum number of terminal background/foreground color pairs.
31773 * src/term.c (tty_default_color_capabilities, tty_setup_colors)
31774 (init_tty): Remove references to TN_max_pairs.
31776 2017-02-18 Eli Zaretskii <eliz@gnu.org>
31778 Improve documentation of query-replace-from-to-separator
31780 * doc/emacs/search.texi (Query Replace): Document the meaning of
31781 the nil value of query-replace-from-to-separator. (Bug#25482)
31783 2017-02-18 Eli Zaretskii <eliz@gnu.org>
31785 Document problems with nerd-fonts
31787 * etc/PROBLEMS (fonts): Describe the potential problems with
31788 nerd-fonts that cause slow display. (Bug#25697)
31790 2017-02-18 Eli Zaretskii <eliz@gnu.org>
31792 Improve commentary for a recent change in keyboard.c
31794 * src/keyboard.c (Fset__this_command_keys): Add a comment about
31795 the magic 248 value. (Bug#25612)
31797 2017-02-18 Eli Zaretskii <eliz@gnu.org>
31799 Avoid infloop in rect.el
31801 * lisp/rect.el (rectangle--*-char): Avoid inflooping when called
31802 with argument N whose absolute value is greater than 1. (Bug#25773)
31804 2017-02-18 Eli Zaretskii <eliz@gnu.org>
31806 Remove annoying warnings about let-binding
31808 * src/data.c (Fmake_variable_buffer_local, Fmake_local_variable):
31809 Remove warnings about making symbols local while let-bound.
31812 2017-02-18 Hong Xu <hong@topbug.net>
31814 Avoid errors when flyspell-generic-check-word-predicate is a lambda.
31816 * lisp/textmodes/flyspell.el (flyspell-auto-correct-word, flyspell-word): Apply
31817 functionp instead of fboundp on
31818 flyspell-generic-check-word-predicate (Bug#25765).
31820 2017-02-18 Glenn Morris <rgm@gnu.org>
31822 Remove the build number from emacs-version variable
31824 It's a largely internal detail that can confuse users. (Bug#25590)
31825 * lisp/version.el (emacs-build-number): New constant.
31826 (emacs-version): Use emacs-build-number.
31827 * lisp/loadup.el (top-level): When dumping, increment
31828 emacs-build-number rather than emacs-version.
31829 * src/emacs.c (emacs-version): Doc fix.
31830 * doc/lispref/intro.texi (Version Info): Update emacs-version details.
31831 Mention emacs-build-number.
31832 * lisp/gnus/gnus-util.el (gnus-emacs-version):
31833 * lisp/mail/emacsbug.el (report-emacs-bug):
31834 * admin/admin.el (set-version): Update for emacs-version change.
31836 2017-02-18 Glenn Morris <rgm@gnu.org>
31838 Ensure that user-mail-address always has a value
31840 * lisp/startup.el (user-mail-address): Initialize in the normal way.
31841 (command-line): Reset user-mail-address if needed using
31842 standard custom machinery.
31843 * lisp/mail/feedmail.el (feedmail-fiddle-from):
31844 * lisp/mail/rmail.el (rmail-unknown-mail-followup-to):
31845 * lisp/mail/rmailsum.el (rmail-header-summary):
31846 Simplify now that user-mail-address is always set.
31848 2017-02-18 Mark Oteiza <mvoteiza@udel.edu>
31850 Turn on lexical-binding in ruby-mode
31852 * lisp/progmodes/ruby-mode.el: Turn on lexical-binding.
31853 (ruby-font-lock-syntax-table): Use make-syntax-table.
31854 (ruby-mode): 'define-derived-mode' writes the keys for us.
31856 2017-02-18 Mark Oteiza <mvoteiza@udel.edu>
31858 Turn on lexical-binding in elint.el
31860 * lisp/emacs-lisp/elint.el: Quote entry point commands in commentary.
31861 (elint-running, elint-current-pos): Move these dynamic vars to toward
31862 the top of the file.
31863 (elint-check-quote-form): Ignore unused argument.
31864 (elint-check-conditional-form): Remove unused binding.
31866 2017-02-18 Gemini Lasswell <gazally@runbox.com>
31868 * lisp/emacs-lisp/subr-x.el (if-let*): Fix Edebug spec (Bug#24748)
31870 2017-02-18 Mark Oteiza <mvoteiza@udel.edu>
31872 Enable erc-accidental-paste-threshold-seconds by default
31874 * lisp/erc/erc.el (erc-accidental-paste-threshold-seconds): Set
31875 default to 0.2 (Bug#25709).
31877 2017-02-17 Michal Nazarewicz <mina86@mina86.com>
31879 Fix build failure caused by ‘Generate upcase and downcase tables from Unicode’
31881 The [5ec3a584: Generate upcase and downcase tables from Unicode data]
31882 commit broke bootstrap from a truly clean tree (e.g. a fresh clone or
31883 one created with ‘make extraclean’), see
31884 <http://hydra.nixos.org/build/48774928>.
31886 The failure was caused by characters.el trying to read Unicode
31887 property tables which aren’t available so early in the build process.
31889 Wrap the part that requires Unicode property tables in a condition
31890 checking if those are available. If they aren’t they case and syntax
31891 tables won’t be fully set but later on, the characters.el file will be
31892 evaluated again and this time with Unicode properties available so
31893 final Emacs ends up with the exact same case and syntax tables.
31895 2017-02-17 Katsumi Yamaoka <yamaoka@jpl.org>
31897 mm-add-meta-html-tag: Improve regexp
31899 * lisp/gnus/mm-decode.el (mm-add-meta-html-tag):
31900 Improve regexp to search html meta tag.
31902 2017-02-17 Katsumi Yamaoka <yamaoka@jpl.org>
31904 mm-shr: Prefer charset specified in html meta tag
31906 * lisp/gnus/mm-decode.el (mm-shr): Prefer charset specified in html
31907 meta tag than mail-parse-charset in the case there is no charset spec
31910 2017-02-17 Glenn Morris <rgm@gnu.org>
31912 Stop duplicating some custom-types in message.el
31914 * lisp/gnus/message.el (user-mail-address, user-full-name):
31915 No need to re-specify custom-type.
31917 2017-02-17 Glenn Morris <rgm@gnu.org>
31919 Whitespace trivia in dunnet.el
31921 * lisp/play/dunnet.el (dun-special-object, dun-put-objs)
31922 (dun-rlogin-endgame): Whitespace trivia.
31924 2017-02-17 Glenn Morris <rgm@gnu.org>
31926 Explicit error on changing case of negative integers
31928 * src/casefiddle.c (casify_object): Reject negative integers:
31929 Emacs characters are positive integers. (Bug#25684)
31931 2017-02-17 Dmitry Gutov <dgutov@yandex.ru>
31933 Fix buffers update in vc-retrieve-tag
31935 * lisp/vc/vc.el (vc-retrieve-tag): When the granularity is
31936 `repository', use the repository root and pass it to
31937 vc-resynch-buffer (bug#25714).
31939 2017-02-16 Paul Eggert <eggert@cs.ucla.edu>
31941 * src/buffer.h: Fix indenting.
31943 2017-02-16 Paul Eggert <eggert@cs.ucla.edu>
31945 Add sanity checks for Bswitch hash tables
31947 * src/bytecode.c (exec_byte_code) [BYTE_CODE_SAFE]:
31948 Check that operand is a hash table and hashes to ints.
31950 2017-02-16 Paul Eggert <eggert@cs.ucla.edu>
31952 * src/keyboard.c (read_key_sequence): Fix integer-overflow glitch.
31954 2017-02-16 Vibhav Pant <vibhavp@gmail.com>
31956 bytecomp.el: Avoid unnecessary calculation for jump table addresses.
31958 * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode): Don't do
31959 redundant operations while calculating the correct jump addresses
31960 from TAGs in jump tables.
31962 2017-02-16 Mark Oteiza <mvoteiza@udel.edu>
31964 Minor changes in json.el
31966 * lisp/json.el (json-advance): Simpler docstring.
31967 (json-read-escaped-char): Use xdigit subform in rx expression.
31968 (json-read-string): Just use = for char comparison.
31970 2017-02-16 Mark Oteiza <mvoteiza@udel.edu>
31972 Don't expand body inside a let-binding when there are no bindings
31974 * lisp/emacs-lisp/pcase.el (pcase-codegen): Only let-bind if VARS
31977 2017-02-16 Glenn Morris <rgm@gnu.org>
31979 Handle user-mail-address being the empty string
31981 * lisp/mail/feedmail.el (feedmail-fiddle-from):
31982 * lisp/mail/rmail.el (rmail-unknown-mail-followup-to):
31983 * lisp/mail/rmailsum.el (rmail-header-summary):
31984 Belated update for 2002-09-29 startup.el change, 680ebfa, where
31985 the value of user-mail-address during initialization was changed
31986 from nil to the empty string.
31988 2017-02-15 Michael Albinus <michael.albinus@gmx.de>
31990 Continue to fix bug#25607
31992 * lisp/ido.el (ido-complete): Let-bind `non-essential' to nil.
31993 (ido-file-name-all-completions-1): Do not bind `non-essential'.
31995 * lisp/net/tramp.el: (tramp-completion-file-name-handler):
31996 Improve autoloaded version.
31997 (tramp-completion-file-name-handler): Remove old compat code.
31998 Check only for `tramp-completion-mode-p'.
31999 (tramp-completion-mode-p): Autoload. Do not check any longer
32000 for `last-input-event'.
32001 (tramp-completion-handle-expand-file-name): Simplify. (Bug#25607)
32003 2017-02-15 Michal Nazarewicz <mina86@mina86.com>
32005 casing: don’t assume letters are *either* upper- or lower-case (bug#24603)
32007 A compatibility digraph characters, such as Dž, are neither upper- nor
32008 lower-case. At the moment however, those are reported as upper-case¹
32009 despite the fact that they change when upper-cased.
32011 Stop checking if a character is upper-case before trying to up-case it
32012 so that title-case characters are handled correctly. This fixes one of
32013 the issues mentioned in bug#24603.
32015 ¹ Because they change when converted to lower-case. Notice an asymmetry
32016 in that for a character to be considered lower-case it must not be
32017 upper-case (plus the usual condition of changing when upper-cased).
32019 * src/buffer.h (upcase1): Delete.
32020 (upcase): Change to upcase character unconditionally just like downcase
32021 does it. This is what upcase1 was.
32023 * src/casefiddle.c (casify_object, casify_region): Use upcase instead
32024 of upcase1 and don’t check !uppercasep(x) before calling upcase.
32026 * src/keyboard.c (read_key_sequence): Don’t check if uppercase(x), just
32027 downcase(x) and see if it changed.
32029 * test/src/casefiddle-tests.el (casefiddle-tests--characters,
32030 casefiddle-tests-casing): Update test cases which are now passing.
32032 2017-02-15 Michal Nazarewicz <mina86@mina86.com>
32034 Generate upcase and downcase tables from Unicode data (bug#24603)
32036 Use Unicode data to generate case tables instead of mostly repeating
32037 them in lisp code. Do that in a way which maps ‘Dz’ (and similar)
32038 digraph to ‘dz’ when down- and ‘DZ’ when upcasing.
32040 https://debbugs.gnu.org/cgi/bugreport.cgi?msg=89;bug=24603 lists all
32041 changes to syntax table and case tables introduced by this commit.
32043 * lisp/international/characters.el: Remove case-pairs defined with
32044 explicit Lisp code and instead use Unicode character properties.
32046 * test/src/casefiddle-tests.el (casefiddle-tests--characters,
32047 casefiddle-tests-casing): Update test cases which are now working
32050 2017-02-15 Michal Nazarewicz <mina86@mina86.com>
32052 Add tests for casefiddle.c (bug#24603)
32054 Fixes cases marked FIXME upcoming in followup commits.
32056 * test/src/casefiddle-tests.el (casefiddle-tests-char-properties,
32057 casefiddle-tests-case-table, casefiddle-tests-casing-character,
32058 casefiddle-tests-casing, casefiddle-tests-casing-byte8,
32059 casefiddle-tests-casing-byte8-with-changes): New tests.
32060 (casefiddle-tests--test-casing): New helper function for runnig
32063 2017-02-15 Michal Nazarewicz <mina86@mina86.com>
32065 oldXMenu: add missing #include <string.h>
32067 Some of the files in oldXMenu use functions from string.h without
32068 including that header which results in compile warnings:
32070 ChgPane.c:46:5: warning: implicit declaration of function ‘strlen’
32071 ChgPane.c:46:20: warning: incompatible implicit declaration of
32072 built-in function ‘strlen’
32073 ChgSel.c:62:2: warning: implicit declaration of function ‘strlen’
32074 ChgSel.c:62:17: warning: incompatible implicit declaration of built-in
32076 Create.c:220:5: warning: implicit declaration of function ‘strcmp’
32077 InsPane.c:65:5: warning: implicit declaration of function ‘strlen’
32078 InsPane.c:65:20: warning: incompatible implicit declaration of
32079 built-in function ‘strlen’
32080 InsSel.c:68:5: warning: implicit declaration of function ‘strlen’
32081 InsSel.c:68:20: warning: incompatible implicit declaration of built-in
32083 InsSel.c:75:5: warning: implicit declaration of function ‘strcmp’
32085 Add the necessary ‘#include <string.h>’.
32087 oldXMenu/ChgPane.c, oldXMenu/ChgSel.c, oldXMenu/Create.c, oldXMenu/InsPane.c,
32088 oldXMenu/InsSel.c: add missing #include <string.h>
32090 2017-02-15 Paul Eggert <eggert@cs.ucla.edu>
32092 Fixup recent rmail patch
32094 * lisp/mail/rmail.el (rmail-epa-decrypt): Remove unused local.
32096 2017-02-15 Richard Stallman <rms@gnu.org>
32100 * lisp/mail/rmail.el (rmail-epa-decrypt-1): Include the just-decrypted text
32101 as element 4 of the value.
32102 (rmail-epa-decrypt): Take the text to insert from that element.
32104 2017-02-15 Vibhav Pant <vibhavp@gmail.com>
32106 bytecomp-tests.el: Store all test forms in one constant.
32108 * test/lisp/emacs-lisp/bytecomp-tests.el: Store all test expressions
32109 in a single constant (byte-opt-testsuite-arith-data), add new forms
32110 which generate lapcode with adjacent/redundant tags.
32112 2017-02-15 Glenn Morris <rgm@gnu.org>
32116 * doc/lispref/os.texi (User Identification):
32117 Remove extraneous detail about user-mail-address.
32119 2017-02-15 Katsumi Yamaoka <yamaoka@jpl.org>
32121 Document fill-separate-heterogeneous-words-with-space (bug#25685)
32123 * doc/lispref/text.texi (Filling):
32124 Document fill-separate-heterogeneous-words-with-space (bug#25685).
32126 2017-02-15 Noam Postavsky <npostavs@gmail.com>
32128 Test comment-multi-line = nil auto fill case too
32130 * test/lisp/progmodes/js-tests.el (js-mode-auto-fill): Test with
32131 `comment-multi-line' both nil and non-nil.
32132 * lisp/newcomment.el (comment-multi-line): Mark safe if it's a
32134 * etc/NEWS: Mention that `js-mode' now sets `comment-multi-line'.
32136 2017-02-15 Katsumi Yamaoka <yamaoka@jpl.org>
32138 Don't delete leading and trailing space from CJK word (bug#25685)
32140 * lisp/textmodes/fill.el (fill-delete-newlines):
32141 Don't delete leading and trailing space from CJK word.
32142 (fill-separate-heterogeneous-words-with-space):
32143 New user option that controls it (bug#25685).
32145 2017-02-15 Juri Linkov <juri@linkov.net>
32147 ‘M-s w RET word C-s’ repeats incremental search.
32149 * lisp/isearch.el (isearch-new-nonincremental): New variable.
32150 (with-isearch-suspended): Bind isearch-new-nonincremental to
32151 isearch-nonincremental, and restore it afterwards.
32152 (isearch-forward-exit-minibuffer, isearch-reverse-exit-minibuffer):
32153 Set isearch-new-nonincremental to nil. (Bug#25562)
32155 2017-02-14 Tom Tromey <tom@tromey.com>
32157 Make vc-git detect conflict state for vc-dir
32159 * lisp/vc/vc-git.el (vc-git-dir-status-state): New struct.
32160 (vc-git-dir-status-update-file): New function.
32161 (vc-git-after-dir-status-stage, vc-git-dir-status-goto-stage): Use
32162 vc-git-dir-status-state; add 'ls-files-conflict state.
32163 (vc-git-dir-status-files): Create a vc-git-dir-status-state.
32165 2017-02-14 Vibhav Pant <vibhavp@gmail.com>
32167 byte-opt: Replace merged tags in jump tables too. (bug#25716)
32169 * lisp/emacs-lisp/byte-opt.el (byte-optimize-lapcode): While merging
32170 adjacent tags, make sure that the old tag is replaced in all jump
32171 tables, if any. This fixes the bytecode VM jumping to the wrong
32172 address in compiled cond forms where the body of a clause was a loop
32175 2017-02-14 Glenn Morris <rgm@gnu.org>
32177 Remove overly broad element from default mail-dont-reply-to-names
32179 * lisp/mail/mail-utils.el (mail-dont-reply-to):
32180 Do not include just "user@" in mail-dont-reply-to-names, and simplify.
32181 Ref: lists.gnu.org/archive/html/help-gnu-emacs/2017-02/msg00049.html
32182 * lisp/gnus/message.el (message-dont-reply-to-names): Doc fix.
32183 * doc/misc/message.texi (Wide Reply): Tiny fix re dont-reply-to-names.
32185 2017-02-14 Juri Linkov <juri@linkov.net>
32187 * etc/NEWS: Mention query-replace-from-to-separator. (Bug#25482)
32189 2017-02-13 Arash Esbati <arash@gnu.org>
32191 Match all characters in optional argument of \documentclass
32193 * lisp/textmodes/reftex.el (reftex-TeX-master-file): Match all
32194 characters in optional argument containing name of the main file.
32196 2017-02-13 Vibhav Pant <vibhavp@gmail.com>
32198 Merge branch 'master' into feature/byte-switch
32200 2017-02-13 Katsumi Yamaoka <yamaoka@jpl.org>
32202 Fix non-ASCII text encoding (bug#25658)
32204 * lisp/gnus/mm-bodies.el (mm-encode-body):
32205 Fix non-ASCII text encoding (bug#25658).
32207 2017-02-13 Vibhav Pant <vibhavp@gmail.com>
32209 test/lisp/emacs-lisp/bytecomp-tests.el: Add more tests for switch.
32211 2017-02-13 Stefan Monnier <monnier@iro.umontreal.ca>
32213 * doc/lispref/modes.texi (Derived Modes): Make example more idiomatic
32215 2017-02-13 Glenn Morris <rgm@gnu.org>
32217 Fix recent bootstrap issue by moving string-to-list
32219 * lisp/international/mule-util.el (string-to-list, string-to-vector):
32221 * lisp/subr.el (string-to-list, string-to-vector): ...to here.
32222 The implementation is trivial and at least string-to-list
32223 has ended up being needed early during bootstrap.
32225 2017-02-13 Glenn Morris <rgm@gnu.org>
32227 Doc fixes related to mail-host-address
32229 * lisp/startup.el (mail-host-address): Doc fix.
32230 * doc/lispref/os.texi (System Environment):
32231 Remove extraneous details of mail-host-address.
32233 2017-02-13 Glenn Morris <rgm@gnu.org>
32235 Simplify time-stamp mail host usage
32237 * lisp/time-stamp.el (time-stamp-mail-host-name): Remove function.
32238 (time-stamp-string-preprocess): Handle "h" (mail host) directly.
32240 2017-02-13 Glenn Morris <rgm@gnu.org>
32242 Doc fix for vhdl-mode re mail-host-address
32244 * lisp/progmodes/vhdl-mode.el (vhdl-file-header): Doc fix.
32245 (mail-host-address): Do not add to vhdl-related custom group,
32246 since vhdl-template-replace-header-keywords doesn't use it.
32248 2017-02-13 Mark Oteiza <mvoteiza@udel.edu>
32250 Substitute leading $HOME/ in xdg-user-dirs
32252 * lisp/xdg.el (xdg--substitute-home-env): New function.
32253 (xdg--user-dirs-parse-line): Use it.
32254 (xdg-user-dir): Expand ~/ in xdg-user-dirs values.
32256 2017-02-13 Mark Oteiza <mvoteiza@udel.edu>
32258 * lisp/buff-menu.el: Turn on lexical-binding.
32260 2017-02-13 Juri Linkov <juri@linkov.net>
32262 * lisp/replace.el (query-replace-from-to-separator): Move propertize
32264 and char-displayable-p test to query-replace-read-from.
32265 Add choice nil to disable this feature.
32266 (query-replace-read-from): Don't reevaluate custom setting.
32267 Use char-displayable-p to test the first non-whitespace character
32268 in query-replace-from-to-separator, use " -> " when fails.
32269 Add prompt for the case when separator is nil but
32270 query-replace-defaults is non-nil.
32271 Remove unused test for regexp-flag.
32272 Thanks to Thierry Volpiatto <thierry.volpiatto@gmail.com>
32274 2017-02-13 Karl Fogel <kfogel@red-bean.com>
32276 Convert more uses of `looking-at' to `following-char'
32278 This follows up to Mark Oteiza's commit of 12 Feb 2017, 14:46:03 UTC
32279 (commit 91478f46238a) with more of the same.
32281 * lisp/bookmark.el (bookmark-send-edited-annotation):
32282 (bookmark-bmenu-execute-deletions): Replace instances of looking-at
32283 with char comparisons using following-char.
32285 2017-02-12 Paul Eggert <eggert@cs.ucla.edu>
32287 Fix typos in tests for lax-plist-get etc.
32289 Problem reported by Eli Zaretskii (Bug#25606#62).
32290 * test/src/fns-tests.el (test-cycle-lax-plist-get)
32291 (test-cycle-plist-put, test-cycle-lax-plist-put):
32292 Fix tests to match behavior.
32294 2017-02-12 Michael Albinus <michael.albinus@gmx.de>
32298 * lisp/net/tramp.el (tramp-completion-file-name-handler):
32299 Improve autoloaded version.
32300 (tramp-autoload-file-name-handler): Avoid recursive load.
32301 (tramp-completion-handle-expand-file-name): Handle empty NAME.
32304 2017-02-12 Mark Oteiza <mvoteiza@udel.edu>
32306 Remove server-buffer-clients string from minor-mode-alist
32308 * lisp/server.el: Don't put an element for server-buffer-clients into
32309 minor-mode-alist. (Bug#20201)
32311 2017-02-12 Mark Oteiza <mvoteiza@udel.edu>
32313 Nix some useless uses of looking-at, looking-back
32315 * lisp/allout.el (allout-kill-topic):
32316 (allout-next-topic-pending-encryption):
32317 * lisp/bookmark.el (bookmark-kill-line):
32318 * lisp/cus-edit.el (custom-save-variables, custom-save-faces):
32319 * lisp/cus-theme.el (custom-theme-write-variables):
32320 (custom-theme-write-faces):
32321 * lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
32322 * lisp/emacs-lisp/bytecomp.el (byte-compile-from-buffer):
32323 * lisp/emacs-lisp/checkdoc.el (checkdoc-interactive-loop):
32324 (checkdoc-interactive-ispell-loop):
32325 (checkdoc-message-interactive-ispell-loop, checkdoc-this-string-valid):
32326 (checkdoc-this-string-valid-engine):
32327 * lisp/emacs-lisp/elint.el (elint-get-top-forms):
32328 * lisp/emulation/viper-cmd.el (viper-backward-indent):
32329 * lisp/image-dired.el (image-dired-delete-char):
32330 * lisp/simple.el (kill-visual-line): Replace instances of looking-at,
32331 looking-back with char comparisons using following-char, preceding-char.
32333 2017-02-12 Eli Zaretskii <eliz@gnu.org>
32335 Clarify what is the "cursor"
32337 * doc/lispref/windows.texi (Window Point): Clarify the notion of
32340 2017-02-11 Tom Tromey <tom@tromey.com>
32342 Recognize JS regexp literals more correctly
32345 * lisp/progmodes/js.el (js--syntax-propertize-regexp-regexp): New
32347 (js-syntax-propertize-regexp): Use it. Remove "end" argument.
32348 (js--syntax-propertize-regexp-syntax-table): Remove.
32349 (js-syntax-propertize): Update.
32350 * test/lisp/progmodes/js-tests.el (js-mode-regexp-syntax-bug-25529):
32353 2017-02-11 Vibhav Pant <vibhavp@gmail.com>
32355 src/bytecode.c (exec_byte_code): Make hash_code a Lisp_Object.
32357 This avoids using XUINT every time while comparing it with
32358 HASH_HASH (h, i), replacing it with EQ.
32360 2017-02-11 Vibhav Pant <vibhavp@gmail.com>
32362 src/bytecode.c (exec_byte_code): Remove unnecessary (e)assert.
32364 2017-02-11 Tom Tromey <tom@tromey.com>
32366 Fix bug in css--mdn-find-symbol
32368 * lisp/textmodes/css-mode.el (css--mdn-find-symbol): Skip whitespace
32369 before skipping word characters.
32370 test/lisp/textmodes/css-mode-tests.el (css-mdn-symbol-guessing): Add
32373 2017-02-11 Vibhav Pant <vibhavp@gmail.com>
32375 src/bytecode.c: Add optional sanity check for jump tables.
32377 * src/bytecode.c (exec_byte_code): When sanity checks are enabled,
32378 check that the jump table's size is equal to it's count.
32380 2017-02-11 Vibhav Pant <vibhavp@gmail.com>
32382 Merge branch 'master' into feature/byte-switch
32384 * src/bytecode.c: Refactor to follow GNU coding standards
32386 2017-02-11 Eli Zaretskii <eliz@gnu.org>
32388 Fix handling of XBM images on MS-Windows
32390 * src/image.c (xbm_load) [HAVE_NTGUI]: Fix calculation of
32391 'nbytes' when inverting XBM data bits. (Bug#25661)
32393 2017-02-11 Eli Zaretskii <eliz@gnu.org>
32395 Fix handling of PBM data
32397 * src/image.c (pbm_load): Handle PBM data with no blanks between
32398 individual pixel values correctly. (Bug#25660)
32400 2017-02-10 Noam Postavsky <npostavs@gmail.com>
32402 Fix warnings in debug tracing code
32404 * src/xdisp.c (dump_glyph, dump_glyph_string):
32405 * src/xfaces.c (dump_realized_face): Cast arguments or adjust format
32406 specifiers to match signedness.
32408 2017-02-10 Sam Steingold <sds@gnu.org>
32410 Extract grep-find-ignored-directories processing from rgrep-default-command
32412 (rgrep-find-ignored-directories): Extract from `rgrep-default-command'.
32413 Some Emacs packages use `grep-find-ignored-directories' to ignore some
32414 directories, so will use this function instead of custom code.
32415 (rgrep-default-command): Use `rgrep-find-ignored-directories'.
32417 2017-02-10 Vibhav Pant <vibhavp@gmail.com>
32419 src/bytecode.c: Avoid comparing values unnecessarily in Bswitch
32421 * src/bytecode.c: (exec_byte_code) While linear searching the jump
32422 table, compare the value's hash table first to avoid calling
32423 h->test.cmpfn every time.
32425 2017-02-10 Paul Eggert <eggert@cs.ucla.edu>
32427 Fix a few integer-overflow glitches
32429 * src/composite.c (composition_compute_stop_pos, composition_reseat_it):
32430 * src/dispextern.h (struct composition_it.rule_idx):
32431 * src/keyboard.c (Fset__this_command_keys):
32432 * src/xwidget.c (webkit_js_to_lisp):
32433 Don’t assume object sizes fit in ‘int’.
32434 * src/xwidget.c (Fxwidget_resize):
32435 Don’t assume Emacs integers fit in ‘int’.
32437 2017-02-10 Eli Zaretskii <eliz@gnu.org>
32439 Fix a bug with displaying an image after a TAB
32441 * src/xdisp.c (display_line): Handle TAB at end of screen line
32442 specially only when we are displaying characters. (Bug#25662)
32444 2017-02-10 Eli Zaretskii <eliz@gnu.org>
32446 Improve commentary in lisp.h
32448 * src/lisp.h: Explain in the comment why enlarging a Lisp_Misc
32449 object is discouraged.
32451 2017-02-10 Paul Eggert <eggert@cs.ucla.edu>
32453 Move cyclic tests to fns-tests.el
32455 * test/src/fns-tests.el (cyc1, cyc2, dot1, dot2): New functions.
32456 (test-cycle-length, test-cycle-safe-length, test-cycle-member)
32457 (test-cycle-memq, test-cycle-memql, test-cycle-assq)
32458 (test-cycle-assoc, test-cycle-rassq, test-cycle-rassoc)
32459 (test-cycle-delq, test-cycle-delete, test-cycle-reverse)
32460 (test-cycle-plist-get, test-cycle-lax-plist-get)
32461 (test-cycle-plist-member, test-cycle-plist-put)
32462 (test-cycle-lax-plist-put, test-cycle-equal, test-cycle-nconc):
32464 * test/manual/cyclic-tests.el: File deleted.
32466 2017-02-10 Gemini Lasswell <gazally@runbox.com>
32468 Fix instrumenting code with propertized strings in Edebug
32470 * lisp/emacs-lisp/edebug.el (edebug-read-function): Allow
32471 'read' to decide what is and isn't a syntax error. (Bug#25068)
32473 2017-02-10 Vladimir Panteleev <vladimir@thecybershadow.net>
32475 Improve fontification in bat-mode
32477 * lisp/progmodes/bat-mode.el (bat-font-lock-keywords): Match
32478 word and symbol constituents when looking for variable names
32479 to fontify; also, correct the syntax table and mark the equal
32480 sign (=) character as punctuation. Improve fontification
32481 accuracy of iteration/positional variables.
32482 (bat-mode): Set comment-start-skip. (Bug#25541)
32484 * test/lisp/progmodes/bat-mode-tests.el: New file, tests for
32487 2017-02-10 Eli Zaretskii <eliz@gnu.org>
32489 Restore special setting of this-command-keys by M-x
32491 It was lost when execute-extended-command was reimplemented in Lisp.
32493 * src/keyboard.c (Fset__this_command_keys): New function.
32494 (syms_of_keyboard): Defsubr it.
32496 * lisp/simple.el (execute-extended-command): Set this-command-keys
32497 as novice.el expects. (Bug#25612)
32499 2017-02-09 Juri Linkov <juri@linkov.net>
32501 * lisp/isearch.el (isearch-search-fun-default): Set isearch-adjusted
32503 to t to display "Pending" in the search prompt for lax
32504 word/symbol search (bug#25562). Don't use lax for lazy-highlighting
32505 when 'bound' is non-nil.
32506 (word-search-regexp, isearch-symbol-regexp): Don't depend on lax
32507 at the beginning of regexp (bug#22589).
32509 * lisp/info.el (Info-isearch-search):
32510 Use isearch--lax-regexp-function-p.
32512 * doc/emacs/search.texi (Word Search, Symbol Search):
32513 Mention "Pending" prompt for lax word/symbol search.
32515 2017-02-09 Vibhav Pant <vibhavp@gmail.com>
32517 src/bytecode.c (exec_byte_code): Remove unneeded assert.
32519 bytecode.c (exec_byte_code): Use h->count instead of HASH_TABLE_SIZE
32521 2017-02-09 Vibhav Pant <vibhavp@gmail.com>
32523 bytecode.c (exec_byte_code): don't check hash code in linear search.
32525 * src/bytecode.c (exec_byte_code): Don't check that the hash code is
32526 not nil when linear scanning the jump table. Hash tables for are
32527 declared with :size as the exact number of cases, so each entry i
32528 should have a hash code. When BYTE_CODE_SAFE, do it as a sanity
32531 2017-02-09 Tino Calancha <tino.calancha@gmail.com>
32533 Ibuffer: Update mode documentation
32535 * lisp/ibuffer.el (ibuffer-mode): List newest commands in mode documentation.
32537 2017-02-09 Steven Allen <steven@stebalien.com> (tiny change)
32539 Fix environment variable for xdg-data-dirs
32541 * lisp/xdg.el (xdg-data-dirs): Use XDG_DATA_DIRS, not XDG_CONFIG_DIRS
32543 2017-02-09 Tino Calancha <tino.calancha@gmail.com>
32545 Ibuffer: Erase output buffer before shell commands
32547 * lisp/ibuf-macs.el (define-ibuffer-op): Add keyword arguments
32548 BEFORE and AFTER; they are forms to run before/after the operation.
32549 * lisp/ibuf-ext.el (ibuffer--maybe-erase-shell-cmd-output):
32550 New defun; if shell-command-dont-erase-buffer is nil, then
32551 erase shell command output buffer.
32552 (ibuffer-do-shell-command-pipe, ibuffer-do-shell-command-file): Use it.
32554 2017-02-09 Tino Calancha <tino.calancha@gmail.com>
32556 Ibuffer: Don't truncate shell command output
32558 * lisp/ibuf-ext.el (ibuffer-do-shell-command-pipe)
32559 (ibuffer-do-shell-command-pipe-replace)
32560 Use 'call-shell-region' (Bug#22679).
32561 (ibuffer-do-shell-command-file): Use call-process-shell-command.
32562 If FILE, the file that the buffer object is visiting,
32563 exists and the buffer is up-to-date, then use
32564 FILE instead of creating a temporary file (Bug#22679).
32566 2017-02-09 Vibhav Pant <vibhavp@gmail.com>
32568 Improve byte-switch execution.
32570 * lisp/emacs-lisp/byte-opt.el,
32571 lisp/emacs-lisp/bytecomp.el (byte-decompile-bytecode-1),
32572 (byte-compile-lapcode): Calculate the actual jump address while
32573 compiling, store it in the jump table.
32575 * src/bytecode.c: Jump to the looked up value directly, do a linear
32576 search when the number of elements is <= 5.
32578 2017-02-09 Noam Postavsky <npostavs@gmail.com>
32580 Make sure eshell pipelines don't drop data
32582 * lisp/eshell/esh-proc.el (eshell-sentinel): If called while still
32583 handling output of the process, make sure to close the pipes only later,
32584 so that the next process in the pipeline recieves EOF only after getting
32585 all its input (Bug#25549).
32587 2017-02-09 Katsumi Yamaoka <yamaoka@jpl.org>
32589 Make mm-shr use mail-parse-charset by default
32591 * lisp/gnus/mm-decode.el (mm-shr): Use mail-parse-charset by default.
32592 This helps an html message with no charset spec to be decoded.
32594 2017-02-08 Stephen Berman <stephen.berman@gmx.net>
32596 describe-char: unambiguous name for inserting ASCII 7
32598 * lisp/descr-text.el (describe-char): Make the input
32599 suggestion for inserting ASCII character 7 by name use the
32600 unambiguous name "BELL (BEL)" (bug#25641).
32602 2017-02-08 Michael Albinus <michael.albinus@gmx.de>
32604 Modify suppressing `vc-refresh-state' in filenotify-tests.el
32606 * test/lisp/filenotify-tests.el (file-notify-test03-autorevert):
32607 Use an advice rather than an alias for suppressing `vc-refresh-state'.
32609 2017-02-08 Noam Postavsky <npostavs@gmail.com>
32611 Disable native completion for ipython (Bug#25067)
32613 * lisp/progmodes/python.el:
32614 (python-shell-completion-native-disabled-interpreters): Add "ipython".
32616 2017-02-07 Michael Albinus <michael.albinus@gmx.de>
32618 Suppress undesired error messages in filenotify-tests.el
32620 * test/lisp/filenotify-tests.el (file-notify-test03-autorevert):
32621 Suppress `vc-refresh-state', it produces undesired error messages.
32623 2017-02-07 Eli Zaretskii <eliz@gnu.org>
32625 Fix a typo in ada-mode manual
32627 * doc/misc/ada-mode.texi (Project file variables): Add a missing
32628 right bracket. Reported by Jean-Christophe Helary
32629 <jean.christophe.helary@gmail.com>.
32631 2017-02-07 Lars Ingebrigtsen <larsi@gnus.org>
32633 Ensure that Gnus bugs show up in the Emacs tracker
32635 * lisp/gnus/gnus.el (gnus-bug-package): Include Emacs in the
32638 2017-02-07 Lars Ingebrigtsen <larsi@gnus.org>
32640 Revert "Don't tag Gnus bugs with "gnus""
32642 This reverts commit b6fa58072304c2a24f1fe8a0e06a4739a7f8211b.
32644 The debbugs syntax requires a package name
32646 2017-02-07 Vibhav Pant <vibhavp@gmail.com>
32648 Add tests for checking byte-switch code.
32650 * test/lisp/emacs-lisp/bytecomp-tests.el (bytecomp-cond): New test,
32651 test byte-switch bytecode.
32653 2017-02-07 Mark Oteiza <mvoteiza@udel.edu>
32657 * etc/NEWS: Mention new library.
32658 * lisp/xdg.el: New file.
32660 2017-02-07 Paul Eggert <eggert@cs.ucla.edu>
32662 Do not trick info/dir’s timestamp
32664 * Makefile.in (${srcdir}/info/dir): When making this file, do not
32665 do anything special about its timestamp. Previously this rule
32666 used move-if-change, which meant that this file’s timestamp could
32667 end up being older than the files it depends on, and this caused
32668 ‘make --question info’ to fail, which caused ‘make-dist’ to fail
32669 now that ‘make-dist’ invokes ‘make --question info’.
32671 2017-02-07 Paul Eggert <eggert@cs.ucla.edu>
32673 Make FOR_EACH_TAIL more like other FOR_EACH macros
32675 See comments by Stefan Monnier in:
32676 https://lists.gnu.org/r/emacs-devel/2017-02/msg00181.html
32677 and by Eli Zaretskii in:
32678 https://lists.gnu.org/r/emacs-devel/2017-02/msg00207.html
32679 * src/fns.c (internal_equal): Do not bypass check for depth
32680 overflow when tail-recursing via a dotted list tail or an overlay
32681 plist, to avoid a rare infloop.
32682 * src/lisp.h (FOR_EACH_TAIL, FOR_EACH_TAIL_SAFE): Take TAIL as an
32683 arg, and update it at each iteration, rather than have callers
32684 access it.tail. All callers changed.
32685 (FOR_EACH_TAIL): Do not check for dotted lists, as this is now
32686 the caller’s responsibility. All callers changed.
32687 (FOR_EACH_TAIL_CONS): Remove. All callers changed.
32688 (struct for_each_tail_internal.tail): Remove; no longer needed.
32689 (FOR_EACH_TAIL_INTERNAL): Remove dotted arg, and set the tail
32690 arg each time through the loop. All callers changed.
32692 2017-02-05 Paul Eggert <eggert@cs.ucla.edu>
32694 Port to clang 3.8.0
32696 It does not allow a for-loop's control var to be an anonymous struct.
32697 * src/lisp.h (struct for_each_tail_internal): New type.
32698 (FOR_EACH_TAIL_INTERNAL): Use it.
32700 2017-02-05 Paul Eggert <eggert@Penguin.CS.UCLA.EDU>
32702 Add cyclic-list tests
32704 * test/manual/cycle-tests.el: New file (Bug#25606).
32706 2017-02-05 Paul Eggert <eggert@Penguin.CS.UCLA.EDU>
32708 FOR_EACH_TAIL now checks for quit
32710 As per Eli Zaretskii (Bug#25606#20). Although these calls to
32711 maybe_quit are unnecessary in practice, Eli was not convinced
32712 that the calls are unnecessary.
32713 * src/lisp.h (FOR_EACH_TAIL, FOR_EACH_TAIL_CONS):
32714 Call maybe_quit every so often.
32715 (FOR_EACH_TAIL_INTERNAL): New arg CHECK_QUIT. All callers changed.
32717 2017-02-05 Paul Eggert <eggert@cs.ucla.edu>
32719 Signal list cycles in ‘length’ etc.
32721 Use macros like FOR_EACH_TAIL instead of maybe_quit to
32722 catch list cycles automatically instead of relying on the
32723 user becoming impatient and typing C-g (Bug#25606).
32724 * src/fns.c (Flength, Fmember, Fmemq, Fmemql, Fassq, Fassoc, Frassq)
32725 (Frassoc, Fdelete, Freverse):
32726 Use FOR_EACH_TAIL instead of maybe_quit.
32727 (Fnreverse): Use simple EQ to check for circular list instead
32728 of rarely_quit, as this suffices in this unusual case.
32729 (Fplist_put, Flax_plist_put, Flax_plist_put):
32730 Use FOR_EACH_TAIL_CONS instead of maybe_quit.
32731 (internal_equal): Use FOR_EACH_TAIL_CONS to check lists, instead
32732 of by-hand tail recursion that did not catch cycles.
32733 * src/fns.c (Fsafe_length, Fplist_get):
32734 * src/xdisp.c (display_mode_element):
32735 Use FOR_EACH_TAIL_SAFE instead of by-hand Floyd’s algorithm.
32736 * src/lisp.h (QUIT_COUNT_HEURISTIC): Remove; no longer needed.
32737 (rarely_quit): Simply count toward USHRT_MAX + 1, since the
32738 fancier versions are no longer needed.
32739 (FOR_EACH_TAIL_CONS, FOR_EACH_TAIL_SAFE)
32740 (FOR_EACH_TAIL_INTERNAL): New macros, the last with definiens
32741 mostly taken from FOR_EACH_TAIL.
32742 (FOR_EACH_TAIL): Rewrite in terms of FOR_EACH_TAIL_INTERNAL.
32744 2017-02-05 Paul Eggert <eggert@cs.ucla.edu>
32746 Simplify use of FOR_EACH_TAIL
32748 * src/data.c (circular_list): New function.
32749 * src/lisp.h (FOR_EACH_TAIL): Use Brent’s algorithm and C99 for-loop
32750 decl, to eliminate the need for the args TAIL, TORTOISE and N, and
32751 to speed things up a bit on typical hosts with optimization.
32752 All uses changed (Bug#25605).
32754 2017-02-05 Simen Heggestøyl <simenheg@gmail.com>
32756 * lisp/textmodes/css-mode.el: Require subr-x at compile time
32758 2017-02-05 Eli Zaretskii <eliz@gnu.org>
32760 Clarify documentation of 'bufferpos-to-filepos' and 'filepos-to-bufferpos'
32762 * doc/lispref/nonascii.texi (Text Representations): Clarify that
32763 'exact' value of QUALITY argument to 'bufferpos-to-filepos' and
32764 'filepos-to-bufferpos' can lead to expensive and slow processing.
32766 * lisp/international/mule-util.el (filepos-to-bufferpos)
32767 (bufferpos-to-filepos): Doc fix. (Bug#25626)
32769 2017-02-05 Vibhav Pant <vibhavp@gmail.com>
32771 Merge remote-tracking branch 'origin/master' into feature/byte-switch
32773 2017-02-05 Vibhav Pant <vibhavp@gmail.com>
32775 bytecomp.el: Use macroexp-const-p instead of bc-cond-valid-obj2-p.
32777 * lisp/emacs-lisp/bytecomp.el (byte-compile-cond-vars): Use
32778 (macroexp-cons-p) instead of (byte-compile-cond-valid-obj2-p) to
32779 make sure that obj1/obj2 can be compared with `eq'.
32781 2017-02-05 Vibhav Pant <vibhavp@gmail.com>
32783 * lisp/emacs-lisp/byte-opt.el (byte-decompile-bytecode-1): Use eq instead of =.
32785 2017-02-05 Vibhav Pant <vibhavp@gmail.com>
32787 bytecomp.el: Inline lapcode containing `byte-switch' correctly.
32789 * lisp/emacs-lisp/bytecomp.el (byte-compile-inline-lapcode):
32790 Restore value of byte-compile-depth after emitting a jump to a tag
32791 in a jump table, or default/done tags.
32792 Set the depth of final tags for byte-switch to nil after emitting
32795 2017-02-05 Vibhav Pant <vibhavp@gmail.com>
32797 byte-opt.el: Replace jump tables while decompiling correctly.
32799 * lisp/emacs-lisp/byte-opt.el (byte-decompile-bytecode-1):
32800 Don't make a copy of the constant vector, as it isn't used with
32801 the decompiled lapcode.
32802 Make sure that the correct lapcode pair/list is being modified while
32803 replacing the jump table.
32805 2017-02-05 Vibhav Pant <vibhavp@gmail.com>
32807 bytecomp.el: Don't store non-keyword symbols in jump-tables.
32809 * lisp/emacs-lisp/bytecomp.el (byte-compile-cond-valid-obj2-p) return
32810 nil when OBJ is a non-keyword symbol (i.e a variable), as the jump
32811 table can only be used when comparing variables with constant values.
32813 2017-02-04 Tom Tromey <tom@tromey.com>
32817 (css--colon-inside-selector-p): Fix typo in docstring.
32819 2017-02-04 Tom Tromey <tom@tromey.com>
32821 Set comment-multi-line in js-mode
32824 * lisp/progmodes/js.el (js-mode): Set comment-multi-line to t.
32825 * test/lisp/progmodes/js-tests.el (js-mode-auto-fill): New test.
32827 2017-02-04 Simen Heggestøyl <simenheg@gmail.com>
32829 * test/manual/indent/scss-mode.scss: Fix indentation
32831 2017-02-04 Simen Heggestøyl <simenheg@gmail.com>
32833 Fix indentation of multiline CSS property values
32835 * lisp/textmodes/css-mode.el (css-smie-grammar): Give colons belonging
32836 to properties higher precedence.
32837 (css--colon-inside-selector-p, css--colon-inside-funcall): New
32838 functions for helping SMIE during tokenization.
32839 (css-smie--forward-token, css-smie--backward-token): Distinguish
32840 colons belonging to properties from other colons.
32842 * test/manual/indent/css-mode.css: Add tests for the changes above.
32844 * test/manual/indent/scss-mode.scss: Ditto.
32846 2017-02-04 Gemini Lasswell <gazally@runbox.com>
32848 Add tests for lisp/kmacro.el
32850 * test/lisp/kmacro-tests.el: New file. (Bug#24939)
32852 2017-02-04 Eli Zaretskii <eliz@gnu.org>
32854 Fix autorevert-tests on MS-Windows
32856 * test/lisp/autorevert-tests.el
32857 (auto-revert-test02-auto-revert-deleted-file): Don't check that
32858 auto-revert-use-notify was reset to nil on w32.
32860 2017-02-04 Gemini Lasswell <gazally@runbox.com>
32862 New macro 'ert-with-message-capture'
32864 * lisp/emacs-lisp/ert-x.el (ert-with-message-capture): New macro.
32867 * test/lisp/autorevert-tests.el (auto-revert--wait-for-revert)
32868 (auto-revert-test00-auto-revert-mode)
32869 (auto-revert-test01-auto-revert-several-files)
32870 (auto-revert-test02-auto-revert-deleted-file)
32871 (auto-revert-test03-auto-revert-tail-mode)
32872 (auto-revert-test04-auto-revert-mode-dired):
32873 * test/lisp/filenotify-tests.el (file-notify-test03-autorevert): Use
32874 ert-with-message-capture.
32876 2017-02-04 Gemini Lasswell <gazally@runbox.com>
32878 Avoid invalid read syntax errors due to 'ert-with-test-buffer'
32880 * lisp/emacs-lisp/ert-x.el (ert-with-test-buffer): Fix the
32881 'declare' form. (Bug#24722)
32883 2017-02-04 Eli Zaretskii <eliz@gnu.org>
32885 Fix a syntax error when evaluating pcase.el under Edebug
32887 * lisp/emacs-lisp/pcase.el (pcase-MACRO): Replace def-edebug-spec
32888 with an explicit 'put' form. Suggested by Gemini Lasswell
32889 <gazally@runbox.com>. (Bug#24717)
32891 2017-02-04 Gemini Lasswell <gazally@runbox.com>
32892 Eli Zaretskii <eliz@gnu.org>
32894 Change edebug-max-depth from defconst to defcustom
32896 * lisp/emacs-lisp/edebug.el (edebug-max-depth): Add defcustom.
32899 * etc/NEWS: Mention edebug-max-depth.
32901 * doc/lispref/edebug.texi (Checking Whether to Stop): Mention
32902 edebug-max-depth and index it. Add cross-references for
32903 max-lisp-eval-depth and max-specpdl-size.
32905 2017-02-04 Eli Zaretskii <eliz@gnu.org>
32907 Support options with embedded whitespace in 'dired-listing-switches'
32909 * lisp/dired.el (dired-listing-switches): Document how to quote
32910 options with embedded whitespace.
32912 * lisp/files.el (insert-directory): Use split-string-and-unquote
32913 to support dired-listing-switches that specify command-line
32914 options with embedded spaces. (Bug#25485)
32916 2017-02-04 Gemini Lasswell <gazally@runbox.com>
32917 Noam Postavsky <npostavs@users.sourceforge.net>
32919 Add tests for lisp/emacs-lisp/testcover.el
32921 * test/lisp/emacs-lisp/testcover-tests.el: New file.
32922 * test/lisp/emacs-lisp/testcover-resources/testcases.el: New file.
32924 2017-02-04 Eli Zaretskii <eliz@gnu.org>
32926 Document 'save-some-buffers-default-predicate'
32928 * doc/lispref/files.texi (Saving Buffers):
32929 * doc/emacs/files.texi (Save Commands): Document
32930 save-some-buffers-default-predicate.
32932 2017-02-04 Richard Stallman <rms@gnu.org>
32934 New defcustom 'save-some-buffers-default-predicate'
32936 * lisp/files.el (save-some-buffers-default-predicate): New defcustom.
32937 (save-some-buffers): Use it when PRED is nil or omitted.
32939 2017-02-04 Mark Oteiza <mvoteiza@udel.edu>
32941 Rename to if-let* and when-let*
32943 Make the existing if-let and when-let aliases.
32944 * lisp/emacs-lisp/subr-x.el (if-let*, when-let*): New macros. Rewrite
32945 docstrings, incorporating that from let* and the existing if-let.
32946 (if-let, when-let, and-let*): Alias them.
32948 2017-02-03 Vibhav Pant <vibhavp@gmail.com>
32950 Revert "Use maphash instead of cl-loop."
32952 This reverts commit bfa88520136dd6b187ba101e6db5a5f8f0d5e874.
32954 2017-02-03 Nicolas Petton <nicolas@petton.fr>
32956 Bump Emacs version to 25.2 RC1
32960 * msdos/sed2v2.inp:
32961 * nt/README.W32: Bump Emacs version.
32962 * lisp/ldefs-boot.el: Update.
32964 2017-02-03 Nicolas Petton <nicolas@petton.fr>
32966 * admin/make-tarball.txt: Add documentation regarding the release banner.
32968 2017-02-03 Tino Calancha <tino.calancha@gmail.com>
32970 * CONTRIBUTE (Documenting your changes): Index new vars/commands in manual.
32972 2017-02-03 Paul Eggert <eggert@cs.ucla.edu>
32974 Re-port alloc.c to Solaris sparc and simplify
32976 alloc.c had bitrotted a bit, and used an undefined symbol
32977 stack_base when Emacs was built on Solaris sparc, leading to
32978 compilation failures. Also, code related to __builtin_unwind_init
32979 was unnecessarily duplicated. Fix the bitrot and remove some
32981 * src/alloc.c: Remove uses of GC_SAVE_REGISTERS_ON_STACK, since it
32983 (test_setjmp) [!HAVE___BUILTIN_UNWIND_INIT && GC_SETJMP_WORKS]:
32984 Define a no-op dummy, to simplify use.
32985 (test_setjmp) [!GC_SETJMP_WORKS]: Test setjmp_tested_p here rather
32986 than in the caller, to simplify use.
32987 (stacktop_sentry): New type.
32988 (__builtin_unwind_init) [!HAVE___BUILTIN_UNWIND_INIT]: New macro.
32989 (SET_STACK_TOP_ADDRESS): New macro, containing code that was duplicated.
32990 (flush_stack_call_func, Fgarbage_collect): Use it.
32991 (init_alloc): Omit unnecessary initialization.
32992 After dumping, Emacs need not re-test setjmp.
32994 2017-02-03 Noam Postavsky <npostavs@gmail.com>
32996 Add tests for scrolling
32998 * test/manual/scroll-tests.el: New tests for scroll-margin behavior.
33000 2017-02-03 Noam Postavsky <npostavs@gmail.com>
33002 Fix scrolling with partial lines
33004 * src/xdisp.c (partial_line_height): New function.
33006 * src/window.c (window_scroll_pixel_based): Use it for calculating the
33007 pixel scroll margin correctly in a window with partial lines.
33009 2017-02-03 Noam Postavsky <npostavs@gmail.com>
33011 Make limit on scroll-margin variable
33013 * src/xdisp.c (maximum-scroll-margin): New variable.
33014 * lisp/cus-start.el: Make it customizable.
33015 * etc/NEWS: Mention it.
33016 * doc/emacs/display.texi (Auto Scrolling):
33017 * doc/lispref/windows.texi (Textual Scrolling): Document it.
33018 * src/window.c (window_scroll_pixel_based): Use it instead of hardcoding
33019 division by 4 (Bug #5718).
33021 2017-02-03 Noam Postavsky <npostavs@gmail.com>
33023 Don't count mode line for scroll-margin limit
33025 * src/window.c (window_scroll_margin): Use window_box_height to avoid
33026 counting header line, scrollbars for scroll-margin limit (Bug #5718).
33028 2017-02-03 Noam Postavsky <npostavs@gmail.com>
33030 Refactor uses of scroll_margin to a function
33032 Its effective range needs to be clamped between 0 and (window height /
33033 4), so it's better to have this constraint in a single place.
33035 * src/window.c (window_scroll_margin): New function.
33036 (window_scroll_pixel_based, window_scroll_line_based):
33037 (Frecenter, Fmove_to_window_line):
33038 * src/xdisp.c (try_scrolling, try_cursor_movement):
33039 (redisplay_window, try_window, try_window_id): Use it.
33041 2017-02-03 Dmitry Gutov <dgutov@yandex.ru>
33043 (xref-collect-matches): Use '-E' together with '-e'
33045 * lisp/progmodes/xref.el (xref-collect-matches): Use '-E'
33046 together with '-e', as suggested by Noam Postavsky
33047 (https://lists.gnu.org/r/emacs-devel/2017-01/msg00780.html).
33049 2017-02-03 Paul Eggert <eggert@cs.ucla.edu>
33051 Pacify Oracle Studio 12.5
33053 * src/emacs.c (main): Do not silently convert char * to bool.
33055 2017-02-02 Paul Eggert <eggert@cs.ucla.edu>
33057 Fix lisp.h underparenthesization
33059 * src/lisp.h (STACK_CONS, AUTO_STRING_WITH_LEN):
33060 Parenthesize compound literals that are function call args.
33061 Although this does not fix any bugs, it is the proper style for
33062 macro parenthesization as it means this code will continue to
33063 work even if make_lisp_ptr is changed to a macro.
33065 2017-02-02 Stefan Monnier <monnier@iro.umontreal.ca>
33067 * lisp/doc-view.el (doc-view-mode): Don't require a final newline
33069 (doc-view-revert-buffer): Silence overflow warnings.
33071 2017-02-02 Paul Eggert <eggert@cs.ucla.edu>
33075 2017-01-30 Port to PGI 16.10 x86-64
33076 2017-01-20 time_rz: fix comment typo
33077 2017-01-14 strftime: %z is -00 if unknown
33079 * doc/misc/texinfo.tex, lib/c-ctype.h, lib/strftime.c:
33080 * lib/time-internal.h, lib/verify.h:
33083 2017-02-02 Tino Calancha <tino.calancha@gmail.com>
33085 Check if there are hunks before kill or refine a hunk
33087 * lisp/vc/diff-mode.el (diff--some-hunks-p): New predicate.
33088 (diff-hunk-kill, diff-file-kill, diff-refine-hunk): Use it (Bug#25571).
33090 2017-02-02 Tino Calancha <tino.calancha@gmail.com>
33092 Ignore error after kill last file or hunk
33094 * lisp/vc/diff-mode.el (diff-hunk-kill): Go to beginning of hunk before kill.
33095 Ignore error after kill last hunk (Bug#25570).
33096 (diff-file-kill): Idem.
33098 2017-02-02 Tino Calancha <tino.calancha@gmail.com>
33100 Show current line highlighted in *Occur* buffer
33102 * lisp/replace.el (list-matching-lines-current-line-face)
33103 (list-matching-lines-jump-to-current-line): New user options.
33104 (occur--orig-line, occur--orig-line-str): New variables.
33105 (occur, occur-engine): Use them.
33106 (occur--final-pos): New variable.
33108 (occur-engine): Idem.
33109 Show the current line with 'list-matching-lines-current-line-face'.
33110 Set point on the first matching line after the current one.
33111 * etc/NEWS: Add entry for the new option.
33113 2017-02-02 Tino Calancha <tino.calancha@gmail.com>
33115 Allow occur command to operate on the region
33118 https://lists.gnu.org/r/emacs-devel/2016-12/msg01084.html
33119 * lisp/replace.el (occur--region-start, occur--region-end)
33120 (occur--matches-threshold): New variables.
33121 (occur-engine): Use them.
33123 Add optional arg REGION; if non-nil occur applies in that region.
33124 * doc/lispintro/emacs-lisp-intro.texi (Keybindings): Update manual
33125 * doc/emacs/search.texi (Other Repeating Search): Idem.
33127 2017-02-02 Mark Oteiza <mvoteiza@udel.edu>
33129 Treat list-buffers-directory as a string
33131 Another step in the long history of list-buffers-directory. A thread
33132 branch discussing the meaning/use of the variable starts here
33133 https://lists.gnu.org/r/emacs-devel/2009-09/msg00684.html
33134 Also see (info "(elisp) Buffer File Name").
33135 * lisp/buff-menu.el: Relocate special case code into info.el. Nix
33137 (Buffer-menu--pretty-file-name): Remove special case. Use
33139 (Buffer-menu-info-node-description): Remove.
33140 * lisp/ibuffer.el (ibuffer-buffer-file-name): Treat
33141 list-buffers-directory as a string.
33142 * lisp/info.el (Info-node-description): New function.
33143 (Info-select-node): Use it.
33145 2017-02-02 Mark Oteiza <mvoteiza@udel.edu>
33147 Turn on lexical-binding in parse-time.el
33149 * lisp/calendar/parse-time.el: Turn on lexical-binding.
33150 (parse-time-iso8601-regexp, parse-iso8601-time-string): Remove unused
33153 2017-02-02 Mark Oteiza <mvoteiza@udel.edu>
33155 Prevent creating thumbnails of all gif frames
33157 With the previous defaults, doing image-dired on a directory with an
33158 animated foo.gif would cause creation of foo.thumb-N.gif for each of
33159 N frames in foo.gif. By default image-dired looks for foo.thumb.gif, so
33160 there additionally is no usable thumbnail after all the needless effort.
33161 image-dired never handled animation, regardless.
33162 * lisp/image-dired.el: Mention limitation.
33163 (image-dired-cmd-create-thumbnail-options):
33164 (image-dired-cmd-create-temp-image-options):
33165 (image-dired-cmd-create-standard-thumbnail-options): Append [0] to
33166 filename to indicate only converting the 0th frame.
33167 (image-dired-display-image-mode): Don't show a cursor.
33169 2017-02-02 Paul Eggert <eggert@cs.ucla.edu>
33171 Fix quitting bug when buffers are frozen
33173 Problem noted by Eli Zaretskii in:
33174 https://lists.gnu.org/r/emacs-devel/2017-01/msg00721.html
33175 This patch also fixes some other issues in that report.
33176 * src/lisp.h (incr_rarely_quit): Remove.
33177 All callers changed to use rarely_quit directly.
33178 * src/search.c (freeze_buffer_relocation)
33179 (thaw_buffer_relocation): New functions.
33180 (looking_at_1, fast_looking_at, search_buffer):
33181 Use them to fix bug when quitting when buffers are frozen.
33182 * src/sysdep.c (emacs_intr_read): Rename from emacs_nointr_read.
33185 2017-02-02 Paul Eggert <eggert@cs.ucla.edu>
33187 Revamp quitting and fix infloops
33189 This fixes some infinite loops that cannot be quitted out of,
33190 e.g., (defun foo () (nth most-positive-fixnum '#1=(1 . #1#)))
33191 when byte-compiled and when run under X. See:
33192 https://lists.gnu.org/r/emacs-devel/2017-01/msg00577.html
33193 This also attempts to keep the performance improvements I recently
33194 added, as much as possible under the constraint that the infloops
33195 must be caught. In some cases this fixes infloop bugs recently
33196 introduced when I removed immediate_quit.
33197 * src/alloc.c (Fmake_list):
33198 Use rarely_quit, not maybe_quit, for speed in the usual case.
33199 * src/bytecode.c (exec_byte_code):
33200 * src/editfns.c (Fcompare_buffer_substrings):
33201 * src/fns.c (Fnthcdr):
33202 * src/syntax.c (scan_words, skip_chars, skip_syntaxes)
33203 (Fbackward_prefix_chars):
33204 Use rarely_quit so that users can C-g out of long loops.
33205 * src/callproc.c (call_process_cleanup, call_process):
33206 * src/fileio.c (read_non_regular, Finsert_file_contents):
33207 * src/indent.c (compute_motion):
33208 * src/syntax.c (scan_words, Fforward_comment):
33209 Remove now-unnecessary maybe_quit calls.
33210 * src/callproc.c (call_process):
33211 * src/doc.c (get_doc_string, Fsnarf_documentation):
33212 * src/fileio.c (Fcopy_file, read_non_regular, Finsert_file_contents):
33213 * src/lread.c (safe_to_load_version):
33214 * src/sysdep.c (system_process_attributes) [GNU_LINUX]:
33215 Use emacs_read_quit instead of emacs_read in places where
33216 C-g handling is safe.
33217 * src/eval.c (maybe_quit): Move comment here from lisp.h.
33218 * src/fileio.c (Fcopy_file, e_write):
33219 Use emacs_write_quit instead of emacs_write_sig in places where
33220 C-g handling is safe.
33221 * src/filelock.c (create_lock_file): Use emacs_write, not
33222 plain write, as emacs_write no longer has a problem.
33223 (read_lock_data): Use emacs_read, not read, as emacs_read
33224 no longer has a problem.
33225 * src/fns.c (rarely_quit): Move to lisp.h and rename to
33226 incr_rarely_quit. All uses changed..
33227 * src/fns.c (Fmemq, Fmemql, Fassq, Frassq, Fplist_put, Fplist_member):
33228 * src/indent.c (compute_motion):
33229 * src/syntax.c (find_defun_start, back_comment, forw_comment)
33230 (Fforward_comment, scan_lists, scan_sexps_forward):
33231 Use incr_rarely_quit so that users can C-g out of long loops.
33232 * src/fns.c (Fnconc): Move incr_rarely_quit call to within
33233 inner loop, so that it catches C-g there too.
33234 * src/keyboard.c (tty_read_avail_input): Remove commented-out
33235 and now-obsolete code dealing with interrupts.
33236 * src/lisp.h (rarely_quit, incr_rarely_quit): New functions,
33237 the latter moved here from fns.c and renamed from rarely_quit.
33238 (emacs_read_quit, emacs_write_quit): New decls.
33239 * src/search.c (find_newline, search_buffer, find_newline1):
33240 Add maybe_quit to catch C-g.
33241 * src/sysdep.c (get_child_status): Always invoke maybe_quit
33242 if interruptible, so that the caller need not bother.
33243 (emacs_nointr_read, emacs_read_quit, emacs_write_quit):
33245 (emacs_read): Rewrite in terms of emacs_nointr_read.
33246 Do not handle C-g or signals; that is now for emacs_read_quit.
33247 (emacs_full_write): Replace PROCESS_SIGNALS two-way arg
33248 with INTERRUPTIBLE three-way arg. All uses changed.
33250 2017-02-02 Paul Eggert <eggert@cs.ucla.edu>
33252 Remove immediate_quit.
33254 The old code that sets and clears immediate_quit was
33255 ineffective except when Emacs is running in terminal mode, and
33256 has problematic race conditions anyway, so remove it. This
33257 will introduce some hangs when Emacs runs in terminal mode,
33258 and these hangs should be fixed in followup patches.
33259 * src/keyboard.c (immediate_quit): Remove. All uses removed.
33261 2017-02-01 Alan Mackenzie <acm@muc.de>
33263 Allow C++ nested brace-list-entries to be better indented.
33265 This fixes bug #24431. The key change of this bug fix is correctly analyzing
33266 nested brace lists when the opening element stands on the same line as both
33267 its introductory brace and an enclosing parameter list parenthesis.
33269 * lisp/progmodes/cc-align.el (c-lineup-under-anchor): New line-up function.
33271 * lisp/progmodes/cc-engine.el (c-looking-at-or-maybe-in-bracelist): Accept the
33272 presence of exactly an identifier between an open parenthesis and an open
33273 brace as evidence of the brace starting a brace list.
33274 (c-looking-at-statement-block): New function, extracted from
33275 c-looking-at-inexpr-block. Enhance it to analyze inner blocks recursively
33277 (c-looking-at-inexpr-block): Extract new function (see above) and call it.
33278 (c-add-stmt-syntax): Enhance, with new &optional parameter, to supply the
33279 prime syntactic symbol with a fixed anchor point. When this is used, restrict
33280 all added syntactic symbols to those having an anchor point on the same line.
33281 Add, in addition to the current additional symbols, c-brace-list-entry when
33282 needed; use c-looking-at-statement-block to determine the latter.
33283 (c-guess-basic-syntax, CASE 9D): Use c-add-stmt-syntax rather than just
33284 c-add-syntax, to assemble the syntactic context of a 'brace-list-entry, thus
33285 getting, possibly, several accompanying syntactic entries.
33287 * lisp/progmodes/cc-styles.el (c-style-alist, "gnu" style): New entry for
33288 'brace-list-intro, namely c-lineup-arglist-intro-after-paren.
33290 * lisp/progmodes/cc-vars.el (c-offsets-alist): Change the factory default
33291 offset for 'brace-list-entry from 0 to c-lineup-under-anchor.
33293 * doc/misc/cc-mode.texi (Syntactic Symbols): Amend the definition of
33295 (Brace List Symbols): Amend the example to show the new analysis of brace
33296 lists when the first element comes on the same line as the opening brace.
33297 (Misc Line-Up): Document the new line-up function c-lineup-under-anchor.
33299 2017-02-01 Lars Ingebrigtsen <larsi@gnus.org>
33301 Revert "DOn't use string-as-unibyte in Gnus"
33303 This reverts commit d1c931009004aef847105b7bac6b6ffafd985b82.
33305 Not all the cases where we had string-as-unibyte were characters,
33306 so this needs to be considered more thoroughly before being redone.
33308 2017-02-01 Vibhav Pant <vibhavp@gmail.com>
33310 Use maphash instead of cl-loop.
33312 * lisp/emacs-lisp/bytecomp.el: (byte-compile-lapcode) Use maphash
33315 2017-02-01 Michael Albinus <michael.albinus@gmx.de>
33317 Fix a subtle problem in Tramp with timers
33319 * lisp/net/tramp.el (tramp-accept-process-output): Change argument
33320 list. Make it work when called inside a timer. See
33321 <https://lists.gnu.org/r/tramp-devel/2017-01/msg00010.html>.
33323 2017-01-31 Eli Zaretskii <eliz@gnu.org>
33325 Index byte-compile-debug
33327 * doc/lispref/compile.texi (Compilation Functions): Index
33328 byte-compile-debug.
33330 2017-01-31 Philipp Stephani <phst@google.com>
33332 Document `byte-compile-debug' in the ELisp manual
33334 * doc/lispref/compile.texi: Document variable `byte-compile-debug'.
33336 2017-01-31 Ted Zlatanov <tzz@lifelogs.com>
33338 read-multiple-choice: explain dialog popups more
33340 * lisp/emacs-lisp/subr-x.el (read-multiple-choice): Explain
33341 when a graphical popup is used and how it can be avoided.
33343 2017-01-31 Ted Zlatanov <tzz@lifelogs.com>
33345 auth-source-user-and-password: add forgotten user parameter
33347 * lisp/auth-source.el (auth-source-user-and-password): Use
33348 accidentally unused "user" parameter.
33349 Reported by Oscar Najera <najera.oscar@gmail.com>.
33351 2017-01-31 Simen Heggestøyl <simenheg@gmail.com>
33353 Fix typo in a NEWS entry for CSS mode
33355 2017-01-31 Philipp Stephani <phst@google.com>
33357 Document variable `byte-compile-debug'
33359 * lisp/emacs-lisp/bytecomp.el (byte-compile-debug): Document variable.
33361 2017-01-31 Lars Ingebrigtsen <larsi@gnus.org>
33363 DOn't use string-as-unibyte in Gnus
33365 * lisp/gnus/nnmail.el (nnmail-parse-active): Don't use
33367 (nnmail-insert-xref): Ditto.
33369 * lisp/gnus/canlock.el (canlock-make-cancel-key): Ditto.
33371 * lisp/gnus/gnus-art.el (gnus-article-browse-html-parts): Ditto.
33373 * lisp/gnus/gnus-srvr.el (gnus-browse-foreign-server): Ditto.
33374 (gnus-browse-foreign-server): Ditto.
33375 (gnus-browse-foreign-server): Ditto.
33377 * lisp/gnus/gnus-start.el
33378 (gnus-update-active-hashtb-from-killed): Ditto.
33379 (gnus-read-newsrc-el-file): Ditto.
33381 * lisp/gnus/mml.el (mml-generate-mime-1): Ditto.
33383 * lisp/gnus/nnir.el (nnir-get-active): Ditto.
33384 (nnir-get-active): Ditto.
33386 2017-01-31 Juri Linkov <juri@linkov.net>
33388 Allow C-s C-w to yank ' to the search ring in the Gnus article buffer
33390 * lisp/gnus/gnus-art.el (gnus-article-mode-syntax-table): Make
33391 M-. in article buffers work for `foo' strings, and still allow
33392 C-s C-w to yank ' to the search ring (bug#22248).
33394 2017-01-31 Paul Eggert <eggert@cs.ucla.edu>
33396 * src/alloc.c, src/lisp.h: Fix minor glitches in recent changes.
33398 2017-01-31 Tino Calancha <tino.calancha@gmail.com>
33400 * test/lisp/vc/diff-mode-tests.el: Require diff-mode.
33402 2017-01-31 Dima Kogan <dima@secretsauce.net>
33404 New test for diff-mode handling trailing --
33406 test/lisp/vc/diff-mode-tests.el: New test file
33408 2017-01-31 Dima Kogan <dima@secretsauce.net>
33410 Handle patch terminators produced by git and bzr patch export
33412 Patch by Juri Linkov posted in the #9597 bug report
33414 * lisp/vc/diff-mode.el (diff-sanity-check-hunk): Find and ignore
33415 terminator (Bug #9597, #5302)
33417 2017-01-31 Dima Kogan <dima@secretsauce.net>
33419 Revert two accidental commits
33421 This reverts commit f3c77d11af65f3b319b1784b4c3cf08c51aa7997.
33422 This reverts commit 3c941b900007c9e79c00af0f21d88154f6d8af1a.
33424 2017-01-31 Dima Kogan <dima@secretsauce.net>
33428 2017-01-31 Dima Kogan <dima@secretsauce.net>
33430 comint-get-old-input-default: behavior follows docstring
33432 lisp/comint.el (comint-get-old-input-default): Modify behavior to follow
33433 docstring: if `comint-use-prompt-regexp' is nil, then return the CURRENT LINE,
33434 if point is on an output field.
33436 2017-01-31 Noam Postavsky <npostavs@gmail.com>
33438 Fix call to debugger on assertion failure
33440 * lisp/emacs-lisp/cl-preloaded.el (cl--assertion-failed): The first
33441 argument must be `error', and the second is a list of arguments for
33444 2017-01-30 Tom Tromey <tom@tromey.com>
33446 css-mode documentation lookup feature
33448 * etc/NEWS: Mention new feature.
33449 * lisp/textmodes/css-mode.el (css-mode-map): New defvar.
33450 (css--mdn-lookup-history): New defvar.
33451 (css-lookup-url-format): New defcustom.
33452 (css--mdn-property-regexp, css--mdn-completion-list): New defconsts.
33453 (css--mdn-after-render, css--mdn-find-symbol, css-lookup-symbol): New
33455 * test/lisp/textmodes/css-mode-tests.el (css-mdn-symbol-guessing): New
33458 2017-01-30 Glenn Morris <rgm@gnu.org>
33460 edt-mapper: just loading a library should not run code
33462 * lisp/emulation/edt-mapper.el (edt-mapper): New function,
33463 containing code previously at top-level.
33464 * lisp/emulation/edt.el (edt-load-keys): After loading edt-mapper,
33465 run edt-mapper function.
33467 2017-01-30 Glenn Morris <rgm@gnu.org>
33469 mh-compat.el: remove duplicate definition
33471 * lisp/mh-e/mh-compat.el (mh-make-obsolete-variable):
33472 Remove duplicate definition.
33474 2017-01-30 Paul Eggert <eggert@cs.ucla.edu>
33476 Add delq list arg check
33478 * src/fns.c (Fdelq): Check that list is a proper list.
33479 This is more compatible with what ‘delete’ does.
33481 2017-01-30 Stefan Monnier <monnier@iro.umontreal.ca>
33483 * lisp/indent.el (indent-region-line-by-line): New function.
33485 Extracted from indent-region.
33486 (indent-region, indent-region-function): Use it.
33488 2017-01-30 Stefan Monnier <monnier@iro.umontreal.ca>
33490 * lisp/subr.el (string-make-unibyte, string-make-multibyte): Obsolete.
33492 2017-01-30 Eli Zaretskii <eliz@gnu.org>
33494 More fixes to prevent crashes on C-g
33496 * src/fns.c (Fassq, Frassq, Fplist_put): Reset immediate_quit
33497 before returning, to avoid crashes in quit. (Bug#25566)
33499 2017-01-30 Eli Zaretskii <eliz@gnu.org>
33501 Avoid crashes on C-g in TTY sessions
33503 * src/keyboard.c (handle_interrupt): Don't quit if
33504 waiting_for_input is set, as doing that is "unsafe": it will
33507 2017-01-30 Vibhav Pant <vibhavp@gmail.com>
33509 * lisp/emacs-lisp/bytecomp.el: Create jump tables with :purecopy t
33511 Merge remote-tracking branch 'origin/master' into feature/byte-switch
33513 2017-01-30 Vibhav Pant <vibhavp@gmail.com>
33515 Fix hash tables not being purified correctly.
33518 (purecopy_hash_table) New function, makes a copy of the given hash
33519 table in pure storage.
33520 Add new struct `pinned_object' and `pinned_objects' linked list for
33522 (Fpurecopy) Allow purifying hash tables
33523 (purecopy) Pin hash tables that are either weak or not declared with
33524 `:purecopy t`, use purecopy_hash_table otherwise.
33525 (marked_pinned_objects) New function, marks all objects in pinned_objects.
33526 (garbage_collect_1) Use it. Mark all pinned objects before sweeping.
33527 * src/lisp.h: Add new field `pure' to struct `Lisp_Hash_Table'.
33528 * src/fns.c: Add `purecopy' parameter to hash tables.
33529 (Fmake_hash_table): Check for a `:purecopy PURECOPY' argument, pass it
33530 to make_hash_table.
33531 (make_hash_table): Add `pure' parameter, set h->pure to it.
33532 (Fclrhash, Fremhash, Fputhash): Enforce that the table is impure with
33534 * src/lread.c: (read1) Parse for `purecopy' parameter while reading
33536 * src/print.c: (print_object) add the `purecopy' parameter while
33537 printing hash tables.
33538 * src/category.c, src/emacs-module.c, src/image.c, src/profiler.c,
33539 src/xterm.c: Use new (make_hash_table).
33541 2017-01-29 Dmitry Gutov <dgutov@yandex.ru>
33543 Escape dash in xref rgrep regexp
33545 * lisp/progmodes/xref.el (xref-collect-matches): Escape dash
33546 in REGEXP if it's the first character.
33548 2017-01-29 Dmitry Gutov <dgutov@yandex.ru>
33550 Say JavaScript, not Javascript
33552 * lisp/progmodes/js.el (js-mode-map, js-syntax-propertize)
33553 (js-js-error, js-eval, js-set-js-context)
33554 (js--get-js-context):
33555 Refer to the language consistently as JavaScript.
33557 2017-01-29 Juanma Barranquero <lekktu@gmail.com>
33559 lisp/*.el: Fix some warnings
33561 * lisp/battery.el (dbus-get-property):
33562 * lisp/dired-aux.el (format-spec): Declare function.
33564 * lisp/net/zeroconf.el (zeroconf-list-service-names)
33565 (zeroconf-list-service-types, zeroconf-list-services):
33566 Mark unused lexical arg.
33568 * lisp/progmodes/hideshow.el (hs-hide-block-at-point):
33569 * lisp/progmodes/sql.el (sql-end-of-statement):
33570 Pass LIMIT to 'looking-back'.
33572 2017-01-29 Noam Postavsky <npostavs@gmail.com>
33574 Don't warn about obsolete defgenerics when defining them
33576 * lisp/emacs-lisp/cl-generic.el (cl-defgeneric): The declaration code
33577 should run after the definition code (Bug#25556).
33579 2017-01-29 Noam Postavsky <npostavs@gmail.com>
33581 Call modification hooks in org-src fontify buffers
33583 * lisp/org/org-src.el (org-src-font-lock-fontify-block): Let-bind
33584 `inhibit-modification-hooks' to nil, since this function can be called
33585 from jit-lock-function which binds that variable to t (Bug#25132).
33587 2017-01-29 Tino Calancha <tino.calancha@gmail.com>
33591 * lisp/vc/diff-mode.el (diff-beginning-of-hunk):
33592 Return position at the beginning off the hunk.
33593 (diff-file-junk-re): Add SVN keywords.
33595 2017-01-28 Stephen Berman <stephen.berman@gmx.net>
33597 hl-line.el: Don't try to operate on a killed buffer
33599 * lisp/hl-line.el (hl-line-maybe-unhighlight): Examine only
33600 live buffers (bug#25522).
33602 2017-01-28 Mark Oteiza <mvoteiza@udel.edu>
33604 Use access-file in EWW to check before downloading a file
33606 * lisp/net/eww.el (eww-download): Check accessibility of
33607 eww-download-directory to prevent starting a download that will fail
33609 * src/fileio.c (Faccess_file): Clarify the use of string argument in
33612 2017-01-28 Yuri D'Elia <wavexx@thregr.org>
33614 Subject: Check Bcc after the Messag hook has run
33616 * lisp/gnus/message.el (message-send): If the hook modifies
33617 the message (mml tags or headers), we should check bcc on the
33618 final message, not on the original.
33620 2017-01-28 Eli Zaretskii <eliz@gnu.org>
33622 Improve documentation of 'format' conversions
33624 * src/editfns.c (Fformat): More accurate description of %g and
33625 effects of the various flags on it. More accurate description of
33626 integer conversions.
33628 * doc/lispref/strings.texi (Formatting Strings): More accurate
33629 description of %g and effects of the various flags on it. More
33630 accurate description of integer conversions. (Bug#25557)
33632 2017-01-28 Juanma Barranquero <lekktu@gmail.com>
33634 test/*.el: Avoid byte-compiler warnings
33636 * test/lisp/abbrev-tests.el (abbrev-table-p-test): Remove unused 'let*'.
33638 * test/lisp/faces-tests.el (faces--test): New customization group.
33639 (faces--test1, faces--test2): Use it.
33641 * test/lisp/ffap-tests.el (ffap-tests-25243):
33642 Call 'mark-whole-buffer' interactively.
33644 * test/lisp/ibuffer-tests.el (ibuffer-filter-groups, ibuffer-filtering-alist)
33645 (ibuffer-filtering-qualifiers, ibuffer-save-with-custom)
33646 (ibuffer-saved-filter-groups, ibuffer-saved-filters): Defvar.
33647 (ibuffer-format-qualifier, ibuffer-unary-operand): Declare.
33649 * test/lisp/minibuffer-tests.el (completion-test1):
33650 Mark unused lexical arguments.
33652 * test/lisp/simple-tests.el (simple-test--dummy-buffer): Wrap result in
33653 'with-no-warnings' to avoid them when the macro is invoked for effect.
33655 * test/lisp/emacs-lisp/cl-seq-tests.el (cl-seq-count-test):
33656 Mark unused lexical arguments.
33658 * test/lisp/emacs-lisp/let-alist-tests.el (let-alist-surface-test):
33659 Mark unused lexical arguments.
33660 (let-alist-cons): Remove unused let binding.
33662 * test/lisp/net/dbus-tests.el (dbus-debug): Defvar.
33663 (dbus-get-unique-name): Declare.
33665 * test/lisp/progmodes/python-tests.el (python-bob-infloop-avoid):
33666 Call 'font-lock-fontify-buffer' interactively.
33668 * test/lisp/textmodes/tildify-tests.el (tildify-space-undo-test--test):
33669 Mark unused lexical argument.
33671 2017-01-27 Eli Zaretskii <eliz@gnu.org>
33673 Restore a test that was removed by a recent commit
33675 * src/fileio.c (Ffile_accessible_directory_p): Don't overwrite the
33676 errno value unless it's necessary. (Bug#25419)
33678 2017-01-27 Mark Oteiza <mvoteiza@udel.edu>
33680 Fix a couple eww customization types
33682 * lisp/new/eww.el (eww-download-directory, eww-bookmarks-directory):
33683 Change customization type to "directory".
33685 2017-01-27 Philipp Stephani <phst@google.com>
33687 Don't require a shell when loading htmlfontify
33689 * lisp/htmlfontify.el (hfy-which-etags): Don't call a shell for
33690 detecting the etags version (Bug#25468).
33691 * test/lisp/htmlfontify-tests.el (htmlfontify-bug25468): Add unit
33694 2017-01-27 Paul Eggert <eggert@cs.ucla.edu>
33696 Slightly tune file-accessible-directory-p fix
33698 * src/fileio.c (Ffile_accessible_directory_p):
33699 Remove unnecessary test (Bug#25419).
33701 2017-01-27 Arash Esbati <arash@gnu.org>
33703 Add \citetitle to biblatex cite format
33705 * lisp/textmodes/reftex-vars.el (reftex-cite-format-builtin): Add
33706 \citetitle[*] to `reftex-cite-format' and bind them to keys i/I
33708 https://lists.gnu.org/r/auctex/2017-01/msg00049.html.
33710 2017-01-27 Lars Ingebrigtsen <larsi@gnus.org>
33712 Fix charsets and encodings from non-file MIME parts
33714 * lisp/gnus/mml.el (mml-generate-mime-1): Get the charsets and
33715 encoding right for parts that do not originate from files.
33717 2017-01-27 Eli Zaretskii <eliz@gnu.org>
33719 Fix 'describe-variable' for longish variable values
33721 * lisp/help-fns.el (describe-variable): Don't accidentally remove
33722 the last character of a variable's value. (Bug#25545)
33724 2017-01-27 Vladimir Panteleev <git@thecybershadow.net> (tiny change)
33726 Remove stale functions from ert manual
33728 * doc/misc/ert.texi (Useful Techniques when Writing Tests):
33729 Replace ert--mismatch references with its cl-lib replacement,
33732 2017-01-27 Eli Zaretskii <eliz@gnu.org>
33734 Fix a typo in Eshell manual
33736 * doc/misc/eshell.texi (History): Fix a typo. Reported by Mak
33737 Kolybabi <mak@kolybabi.com>.
33739 2017-01-27 Eli Zaretskii <eliz@gnu.org>
33741 Ensure last line is at window bottom in shell buffers
33743 * lisp/shell.el (shell-mode): Use setq-local. Set
33744 scroll-conservatively to 101 locally. See the discussion at
33745 https://lists.gnu.org/r/emacs-devel/2016-12/msg00736.html
33748 2017-01-27 Michael Hoffman <emacs-hoffman@sneakemail.com> (tiny change)
33750 Support Bash Ctrl-Z indication of directory name in term.el
33752 * lisp/term/xterm.el (term-emulate-terminal): Do not display ?\032 escape
33753 codes even when 'handled-ansi-message' is non-nil. (Bug#11919)
33755 2017-01-27 Eli Zaretskii <eliz@gnu.org>
33757 Don't report zero errno for inaccessible directory
33759 * src/fileio.c (Ffile_accessible_directory_p): Report EACCES when
33760 a file handler reports a failure. (Bug#25419)
33762 2017-01-27 Eli Zaretskii <eliz@gnu.org>
33764 Fix filenotify-tests on MS-Windows
33766 * test/lisp/filenotify-tests.el (file-notify-test04-file-validity)
33767 (file-notify-test05-dir-validity)
33768 (file-notify-test06-many-events)
33769 (file-notify-test08-watched-file-in-watched-dir): Manually remove
33770 the watch descriptor before calling file-notify--test-cleanup-p.
33773 2017-01-27 Hong Xu <hong@topbug.net>
33775 python-mode: Fix detection for opening blocks.
33777 * lisp/progmodes/python.el
33778 (python-info-dedenter-opening-block-positions): There can't be any
33779 back-indented lines between an opening block and the current line.
33781 * test/lisp/progmodes/python-tests.el
33782 (python-indent-electric-colon-4): Add an indent test case where
33783 there is one-more indented previous opening block.
33785 2017-01-27 Lars Ingebrigtsen <larsi@gnus.org>
33787 Fix Message check for bogus domain names
33789 * lisp/gnus/message.el (message-make-fqdn): Fix check for
33790 bogus system names (bug#24570).
33792 2017-01-27 Øyvind Stegard <oyvind@stegard.net> (tiny change)
33794 Subject: Restore correct Gnus newsgroup name after sending message
33796 * lisp/gnus/gnus-msg.el (gnus-msg-mail): Set the value of
33797 gnus-newsgroup-name in the correct buffer (bug#24329).
33799 2017-01-27 Lars Ingebrigtsen <larsi@gnus.org>
33801 Mention the new Gnus sorting command
33803 2017-01-27 Lars Ingebrigtsen <larsi@gnus.org>
33805 Don't try to find charsets of non-text MIME parts
33807 * lisp/gnus/mml.el (mml-generate-mime-1): It seems nonsensical
33808 to try to determine the charset of non-text message parts, so
33809 skip that (bug#24190). This will also remove messages like
33810 "bunzip2ing /tmp/acsb.cpio.bz2...done" while sending messages
33811 if you include such files.
33813 2017-01-27 Lars Ingebrigtsen <larsi@gnus.org>
33815 Add new command gnus-article-sort-by-marks
33817 * doc/misc/gnus.texi (Summary Sorting): Mention
33818 gnus-summary-sort-by-marks.
33820 * lisp/gnus/gnus-sum.el (gnus-article-sort-by-marks): New
33821 function (bug#23393).
33822 (gnus-thread-sort-by-marks): Ditto.
33823 (gnus-summary-sort-by-mark): New command suggested by Dan Jacobson.
33824 (gnus-summary-mode-map): Add keystroke.
33825 (gnus-summary-make-menu-bar): Add to menu.
33827 2017-01-26 Katsumi Yamaoka <yamaoka@jpl.org>
33829 Make `C-h b' work correctly in Gnus article buffer (bug#18257)
33831 * lisp/gnus/gnus-art.el (gnus-article-describe-bindings):
33832 Ignore summary commands that aren't bound to
33833 gnus-article-read-summary-keys keys (bug#18257).
33835 2017-01-26 Lars Ingebrigtsen <larsi@gnus.org>
33837 Fix crossposting in non-primary groups
33839 * lisp/gnus/message.el
33840 (message-cross-post-followup-to-header): Gnus server prefixes
33841 shouldn't be included in the group names (bug#21661).
33842 (message-cross-post-followup-to): Ditto.
33844 2017-01-26 Lars Ingebrigtsen <larsi@gnus.org>
33846 Gnus doc clarification
33848 * doc/misc/gnus.texi (Unavailable Servers): Explicitly say
33849 that "unreachable" is the same as disabling it (bug#21630).
33851 2017-01-26 Lars Ingebrigtsen <larsi@gnus.org>
33853 Remove dead code from rfc2047
33855 * lisp/mail/rfc2047.el (rfc2047-fold-field): Remove dead code.
33857 It's been disabled since 2005, when I made the change with the
33860 (rfc2047-encode-message-header): Disabled header folding -- not
33861 all headers can be folded, and this should be done by the message
33862 composition mode. Probably. I think.
33864 2017-01-26 Lars Ingebrigtsen <larsi@gnus.org>
33866 Fill too long mail headers
33868 * lisp/gnus/message.el (message--fold-long-headers): New
33869 function to fold too-long headers (bug#21608).
33870 (message-send-mail): Use it to fill headers longer than 998
33871 characters (which is the protocol limit).
33873 2017-01-26 Lars Ingebrigtsen <larsi@gnus.org>
33875 Make nndoc more resilient against corrupted files
33877 * lisp/gnus/nndoc.el (nndoc-possibly-change-buffer): Don't bug
33878 out on invalid files, like invalid .gz files (bug#21538).
33879 This may hinder Gnus from starting up.
33881 2017-01-26 Lars Ingebrigtsen <larsi@gnus.org>
33883 Respect buffer-local message-fcc-handler-function
33885 * lisp/gnus/message.el (message-do-fcc): Copy the local
33886 variables from the Message buffer so that local settings of
33887 `message-fcc-handler-function' etc are respected (bug#21174).
33889 2017-01-26 Lars Ingebrigtsen <larsi@gnus.org>
33891 (message-do-fcc): Modernize the code slightly.
33893 * lisp/gnus/message.el (message-do-fcc): Modernize the code slightly.
33895 2017-01-26 Lars Ingebrigtsen <larsi@gnus.org>
33897 Avoid a regexp overflow in message-goto-body
33899 * lisp/gnus/message.el (message-goto-body-1): Avoid using a
33900 complicated backtracking regexp, because they may overflow on
33901 large headers (bug#21160).
33903 2017-01-26 Lars Ingebrigtsen <larsi@gnus.org>
33905 Refactor message-goto-body
33907 * lisp/gnus/message.el (message-goto-body-1): Refactor out for reuse.
33909 2017-01-26 Lars Ingebrigtsen <larsi@gnus.org>
33911 Fix typo in last checkin
33913 * lisp/gnus/nnimap.el (nnimap-shell-program): Document
33914 nnimap-shell-program (bug#20651).
33916 2017-01-26 Lars Ingebrigtsen <larsi@gnus.org>
33918 Document nnimap-shell-program
33920 * lisp/gnus/nnimap.el (nnimap-shell-program): Document
33921 nnimap-shell-program (bug#20651).
33923 2017-01-26 Lars Ingebrigtsen <larsi@gnus.org>
33925 Document :shell-command in `make-network-process'
33927 * doc/lispref/processes.texi (Network): Document :shell-command.
33929 * lisp/net/network-stream.el (open-network-stream): Document
33930 the :shell-command parameter (bug#20651).
33932 2017-01-26 Lars Ingebrigtsen <larsi@gnus.org>
33934 Gnus doc clarification
33936 * lisp/gnus/gnus-sum.el (gnus-summary-save-article): Mention
33937 the gnus-prompt-before-saving variable (bug#20500).
33939 2017-01-26 Lars Ingebrigtsen <larsi@gnus.org>
33941 Fix the previous mml patch better
33943 * lisp/gnus/mml.el (mml-minibuffer-read-file): Fix the
33944 previous patch in a better way (bug#20480).
33946 2017-01-26 Lars Ingebrigtsen <larsi@gnus.org>
33948 Give a slight better error message in mml-minibuffer-read-file
33950 * lisp/gnus/mml.el (mml-minibuffer-read-file): Give a slightly
33951 better error message when the user enters nothing (bug#20480).
33953 2017-01-26 Vibhav Pant <vibhavp@gmail.com>
33955 * lisp/emacs-lisp/bytecomp.el:(bc-cond-jump-table-info)add docstring
33957 2017-01-26 Lars Ingebrigtsen <larsi@gnus.org>
33959 Make eww buffers prettier in the buffer listing
33961 * lisp/net/eww.el (eww-render): Put the currently visited URL
33962 into the buffer listing (bug#23738).
33963 (eww-render): Ditto.
33965 2017-01-26 Lars Ingebrigtsen <larsi@gnus.org>
33967 Allow mml-attach-file to prompt less
33969 * lisp/gnus/mml.el (mml-attach-file): If given a prefix, don't
33970 prompt for type/description/disposition, but use defaults
33973 2017-01-26 Lars Ingebrigtsen <larsi@gnus.org>
33975 Don't allow message-newline-and-reformat to be run outside the body
33977 * lisp/gnus/message.el (message-newline-and-reformat): Error
33978 out if run outside the body of a message (bug#18820).
33980 2017-01-26 Vibhav Pant <vibhavp@gmail.com>
33982 * lisp/emacs-lisp/bytecomp.el: Use correct function to push nil
33984 * lisp/emacs-lisp/bytecomp.el: (byte-compile-cond-jump-table) Use
33985 byte-compile-constant instead of byte-compile-form to push nil.
33987 2017-01-26 Vibhav Pant <vibhavp@gmail.com>
33989 * lisp/emacs-lisp/disass.el: Fix spacing while showing jump tables
33991 2017-01-26 Paul Eggert <eggert@cs.ucla.edu>
33993 Replace QUIT with maybe_quit
33995 There’s no longer need to have QUIT stand for a slug of C statements.
33996 Use the more-obvious function-call syntax instead.
33997 Also, use true and false when setting immediate_quit.
33998 These changes should not affect the generated machine code.
33999 * src/lisp.h (QUIT): Remove. All uses replaced by maybe_quit.
34001 2017-01-26 Paul Eggert <eggert@cs.ucla.edu>
34003 A quicker check for quit
34005 On some microbenchmarks this lets Emacs run 60% faster on my
34006 platform (AMD Phenom II X4 910e, Fedora 25 x86-64).
34007 * src/atimer.c: Include keyboard.h, for pending_signals.
34008 * src/editfns.c (Fcompare_buffer_substrings):
34009 * src/fns.c (Fnthcdr, Fmemq, Fmemql, Fassq, Frassq, Fplist_put)
34010 (Fnconc, Fplist_member):
34011 Set and clear immediate_quit before and after loop instead of
34012 executing QUIT each time through the loop. This is OK for loops
34013 that affect only locals.
34014 * src/eval.c (process_quit_flag): Now static.
34015 (maybe_quit): New function, containing QUIT’s old body.
34016 * src/fns.c (rarely_quit): New function.
34017 (Fmember, Fassoc, Frassoc, Fdelete, Fnreverse, Freverse)
34018 (Flax_plist_get, Flax_plist_put, internal_equal, Fnconc):
34019 Use it instead of QUIT, for
34020 speed in tight loops that might modify non-locals.
34021 * src/keyboard.h (pending_signals, process_pending_signals):
34022 These belong to keyboard.c, so move them here ...
34023 * src/lisp.h: ... from here.
34024 (QUIT): Redefine in terms of the new maybe_quit function, which
34025 contains this macro’s old definiens. This works well with branch
34026 prediction on processors with return stack buffers, e.g., x86
34027 other than the original Pentium.
34029 2017-01-26 Paul Eggert <eggert@cs.ucla.edu>
34031 Simplify make-list implementation
34033 * src/alloc.c (Fmake_list): Don’t unroll loop, as the complexity
34034 is not worth it these days.
34036 2017-01-26 Mark Oteiza <mvoteiza@udel.edu>
34038 Make use of cl-loop destructuring
34040 * lisp/progmodes/js.el (js--get-tabs): Replace extraneous bits with
34042 (with-js): Add declare forms.
34044 2017-01-25 Lars Ingebrigtsen <larsi@gnus.org>
34046 Revert "Bind C-c keys in the article buffer"
34048 This reverts commit 6b4195f2ace1f6328c5a833fde40f39babef4fa6.
34050 The commit somehow lead to problems in other parts of Emacs.
34052 2017-01-25 Lars Ingebrigtsen <larsi@gnus.org>
34054 Document how to quote MML tags
34056 * doc/misc/emacs-mime.texi (MML Definition): Mention how to
34057 quote MML tags (bug#18881).
34059 2017-01-25 Lars Ingebrigtsen <larsi@gnus.org>
34061 Make address parsing more robust
34063 * lisp/mail/ietf-drums.el (ietf-drums-parse-address): Don't
34064 bug out on addresses like
34065 (ietf-drums-parse-address "\"Foo \"bar\" <larsi@gnus.org>")
34068 2017-01-25 Lars Ingebrigtsen <larsi@gnus.org>
34070 Fix the %P (line number) thing in Gnus summary buffers
34072 * lisp/gnus/gnus-salt.el (gnus-pick-line-number): Remove hack.
34074 * lisp/gnus/gnus-sum.el (gnus-summary-read-group-1): Reset the
34075 "pick" mode line number on entry instead of relying in a hack (bug#18311).
34077 2017-01-25 Lars Ingebrigtsen <larsi@gnus.org>
34079 Fix wrong documentation on nnmairix keystrokes
34081 * doc/misc/gnus.texi (nnmairix keyboard shortcuts): The
34082 nnmairix commands are on G G, not $ (bug#18260).
34084 2017-01-25 Lars Ingebrigtsen <larsi@gnus.org>
34086 Bind C-c keys in the article buffer
34088 * lisp/gnus/gnus-art.el (gnus-article-mode-map): Also bind the
34089 C-c keys so that they execute in the summary buffer
34090 (bug#18257). This makes commands like `C-c C-f' work from the
34093 2017-01-25 Lars Ingebrigtsen <larsi@gnus.org>
34095 Don't mark articles in Gnus as displayed when they aren't
34097 * lisp/gnus/gnus-sum.el (gnus-summary-read-group-1): Don't
34098 mark any articles as selected if we're not selecting any
34099 articles (bug#18255).
34101 2017-01-25 Vibhav Pant <vibhavp@gmail.com>
34103 * lisp/emacs-lisp/disass.el: Display jump tables for switch.
34105 * lisp/emacs-lisp/bytecomp.el:Use correct size for switch jump-table
34107 * lisp/emacs-lisp/bytecomp.el: Simplify b-c-cond-valid-obj2-p
34109 * lisp/emacs-lisp/bytecomp.el: Fix byte-switch codegen with symbols.
34111 2017-01-25 Vibhav Pant <vibhavp@gmail.com>
34113 * lisp/emacs-lisp/byte-opt.el: Add support for decompiling switch
34115 * lisp/emacs-lisp/byte-opt.el: (byte-decompile-bytecode-1) When the
34116 constant encountered precedes a byte-switch op, replace all the
34117 addresses in the jump table with tags.
34119 2017-01-25 Mark Oteiza <mvoteiza@udel.edu>
34121 Move cXXXr and cXXXXr to subr.el
34123 * etc/NEWS: Mention new core Elisp.
34124 * doc/lispref/lists.texi (List Elements): Document and index the new
34126 * doc/misc/cl.texi (List Functions): Change "defines" to "aliases".
34127 * lisp/subr.el (caaar, caadr, cadar, caddr, cdaar, cdadr, cddar)
34128 (cdddr, caaaar caaadr, caadar, caaddr, cadaar, cadadr, caddar):
34129 (cadddr, cdaaar, cdaadr, cdadar, cdaddr, cddaar, cddadr, cdddar):
34130 (cddddr): New functions.
34131 * lisp/emacs-lisp/cl-lib.el (cl-caaar, cl-caadr, cl-cadar, cl-caddr):
34132 (cl-cdaar, cl-cdadr, cl-cddar cl-cdddr, cl-caaaar cl-caaadr):
34133 (cl-caadar, cl-caaddr, cl-cadaar, cl-cadadr, cl-caddar, cl-cadddr):
34134 (cl-cdaaar, cl-cdaadr, cl-cdadar, cl-cdaddr, cl-cddaar, cl-cddadr):
34135 (cl-cdddar, cl-cddddr): Alias to new subr functions.
34136 * lisp/emacs-lisp/cl.el (cl-unload-function): Remove cXXXr and cXXXXr
34139 2017-01-25 Lars Ingebrigtsen <larsi@gnus.org>
34141 Only save .newsrc file if the native method is NNTP
34143 * lisp/gnus/gnus-start.el (gnus-save-newsrc-file): Only save
34144 the .newsrc file if the native select method is NNTP
34145 (bug#18198). This avoids problems with invalid IMAP group
34146 names and the like in the .newsrc file.
34148 2017-01-25 Lars Ingebrigtsen <larsi@gnus.org>
34150 Only save .newsrc file if the native method is NNTP
34152 * lisp/gnus/gnus-start.el (gnus-save-newsrc-file): Only save
34153 the .newsrc file if the native select method is NNTP
34154 (bug#18198). This avoids problems with invalid IMAP group
34155 names and the like in the .newsrc file.
34157 2017-01-25 Lars Ingebrigtsen <larsi@gnus.org>
34159 Gnus custom spec fix
34161 * lisp/gnus/gnus-art.el (gnus-signature-limit): Fix customize
34162 spec to match the doc string (bug#17679).
34164 2017-01-25 Lars Ingebrigtsen <larsi@gnus.org>
34166 Clarify confusing Gnus error message
34168 * lisp/gnus/gnus-topic.el (gnus-topic-unindent): Clarify
34169 confusing error message (bug#17677).
34171 2017-01-25 Lars Ingebrigtsen <larsi@gnus.org>
34173 Make C-u C-x m work with Message as documented
34175 * lisp/gnus/message.el (message-mail): Respect the CONTINUE
34176 parameter (bug#17175).
34178 2017-01-25 Lars Ingebrigtsen <larsi@gnus.org>
34180 Fix problem with auto-mode and dir-locals-collect-variables
34182 * lisp/files.el (dir-locals-collect-variables): When run from
34183 auto-mode, the file in question may not be an absolute path
34188 Debugger entered--Lisp error: (args-out-of-range "compile-1st-in-loa
34189 dir-locals-collect-variables(((emacs-lisp-mode (indent-tabs-mode))
34190 hack-dir-local-variables()
34191 hack-local-variables(no-mode)
34192 run-mode-hooks(diff-mode-hook)
34194 mm-display-inline-fontify((#<buffer *mm*-923037> ("text/x-diff" (
34196 2017-01-25 Lars Ingebrigtsen <larsi@gnus.org>
34198 Attach text files correctly in Message
34200 * lisp/gnus/mml.el (mml-generate-mime-1): Detect which coding
34201 system has been used in attached text files, and don't try to
34202 do any encoding of these files (bug#13808).
34204 2017-01-25 Lars Ingebrigtsen <larsi@gnus.org>
34206 Build fix for older gnutls versions
34208 * src/gnutls.c (emacs_gnutls_handle_error):
34209 GNUTLS_E_PREMATURE_TERMINATION is apparently only present in
34212 2017-01-25 Tino Calancha <tino.calancha@gmail.com>
34214 ediff-difference-vector-alist: Drop duplicated definition
34216 * lisp/vc/ediff-init.el (ediff-difference-vector-alist):
34217 Drop duplicated definition.
34218 (ediff-difference-vector-A, ediff-difference-vector-B)
34219 (ediff-difference-vector-C, ediff-difference-vector-Ancestor):
34220 Move definition before 'ediff-difference-vector-alist'.
34222 2017-01-25 Lars Ingebrigtsen <larsi@gnus.org>
34224 Revert "nnimap.el: support additional expunge options"
34226 This reverts commit 4e9baea6aba1633074889339dcc7cdc9d73880d3.
34228 The patch broke fetching new mail:
34230 Debugger entered--Lisp error: (error "Format specifier doesn’t match argument type")
34231 format("%d .*\n" (t ("OK" ("HIGHESTMODSEQ" "914696") "Expunge" "completed.") ("VANISHED" "1825937") ("0" "RECENT")))
34232 (looking-at (format "%d .*\n" sequence))
34233 (not (looking-at (format "%d .*\n" sequence)))
34234 (progn (while (and (not (bobp)) (progn (forward-line -1) (looking-at "\\*\\|[0-9]+ OK NOOP")))) (not (looking-at (format "%d .*\n" sequence))))
34236 2017-01-25 Nikolaus Rath <Nikolaus@rath.org>
34238 nnimap.el: support additional expunge options
34240 * lisp/gnus/nnimap.el (nnimap-close-group)
34241 (nnimap-request-expire-articles, nnimap-delete-article)
34242 (nnimap-request-scan): add new 'never, 'immediate, and 'on-exit
34243 settings for nnimap-expunge (bug#20670).
34245 2017-01-25 Lars Ingebrigtsen <larsi@gnus.org>
34247 Don't tag Gnus bugs with "gnus"
34249 * lisp/gnus/gnus-msg.el (gnus-bug): Remove the bug package tags.
34251 * lisp/gnus/gnus.el (gnus-bug-package): Removed; Gnus doesn't
34252 have its own package any more in the bug tracker.
34254 2017-01-25 Lars Ingebrigtsen <larsi@gnus.org>
34256 Tweak TLS error messaging on closed connections
34258 * src/gnutls.c (emacs_gnutls_handle_error): Demote the normal
34259 peer-closed-connection "The TLS connection was non-properly
34260 terminated" message to a lower level so that it isn't shown to
34261 the user by default.
34263 2017-01-24 Lars Ingebrigtsen <larsi@gnus.org>
34265 Avoid having eww unexpectedly open external browsers
34267 * lisp/net/eww.el (eww-render): Instead of opening unsupported
34268 content types like audio/mpeg directly in an external browser
34269 (which can be very confusing especially when something
34270 redirects to a file like that), just display a simple
34271 interstitial that people can choose to click on or not
34274 2017-01-24 Lars Ingebrigtsen <larsi@gnus.org>
34276 When opening new eww buffers, use buffer names based on the host name
34278 * lisp/net/eww.el (eww-browse-url): When opening in a new
34279 window, use a buffer name based on the host name (bug#23738).
34280 (eww--dwim-expand-url): Refactored out into its own function
34283 2017-01-24 David Engster <deng@randomsample.de>
34285 xml: Fix parsing of default namespace with quoted names
34287 * lisp/xml.el (xml-parse-attlist): Properly extract namespace when
34288 parsing is done with quoted symbol names (bug#23440).
34289 * test/lisp/xml-tests.el (xml-parse-test--default-namespace-qnames)
34290 (xml-parse-test-default-namespace-qnames): Test for the above.
34292 2017-01-24 Lars Ingebrigtsen <larsi@gnus.org>
34294 Fix rendering of some complex SVG images
34296 * lisp/net/shr.el (shr-parse-image-data): Don't transform
34297 SVG->DOM->XML unless we're blocking images, as this is apt to
34298 destroy the SVG (bug#24111).
34300 2017-01-24 Lars Ingebrigtsen <larsi@gnus.org>
34302 Clarify the last clarification
34304 * lisp/net/shr.el (shr-width): Clarify the interaction with
34305 `shr-use-fonts' (bug#24928).
34307 2017-01-24 Lars Ingebrigtsen <larsi@gnus.org>
34309 shr-width doc clarification
34311 * lisp/net/shr.el (shr-width): Clarify the interaction with
34312 `shr-use-fonts' (bug#24928).
34314 2017-01-24 Lars Ingebrigtsen <larsi@gnus.org>
34316 Allow passing in max-width/height
34318 * lisp/net/shr.el (shr-rescale-image): Allow passing in
34319 max-width/height (bug#25287).
34321 2017-01-24 Stefan Monnier <monnier@iro.umontreal.ca>
34323 * lisp/progmodes/vhdl-mode.el: Avoid add-to-list on local vars
34325 Require `cl' for `pushnew'.
34326 (vhdl-scan-project-contents, vhdl-compose-wire-components)
34327 (vhdl-uniquify): Use `pushnew' instead of `add-to-list'.
34329 2017-01-24 Noam Postavsky <npostavs@gmail.com>
34331 Fix comment detection on open parens
34333 Characters having both open paren syntax and comment start syntax were
34334 being detected as open parens even when they should have been part a
34335 comment starter (Bug#24870).
34337 * src/syntax.c (in_2char_comment_start): New function, extracted from
34338 `scan_sexps_forward'.
34339 (scan_sexps_forward): Add check for a 2-char comment starter before the
34340 loop. Inside the loop, do that check after incrementing the 'from'
34341 character index. Move the single char comment syntax cases into the
34342 switch instead of special casing them before.
34343 * test/src/syntax-tests.el (parse-partial-sexp-paren-comments):
34344 (parse-partial-sexp-continue-over-comment-marker): New tests.
34346 2017-01-23 Alan Mackenzie <acm@muc.de>
34348 Give , and .@ doc strings. Fixes bug #24561.
34350 Also make *Help* links to ``' possible. Also make usable as such doc strings
34351 on the function-documentation property of a symbol.
34353 * lisp/emacs-lisp/backquote.el (top-level): Give , and '@ doc strings on the
34354 function-documentation property. Also give these symbols a reader-construct
34357 * lisp/help-fns.el (describe-function): Allow the function-documentation
34358 property to work. Use princ rather than prin1 to print the function's name
34359 when it has a reader-construct property.
34360 (help-fns-signature): Don't insert `high-usage' for a reader-construct.
34361 (describe-function-1): Adapt to process documentation on the
34362 function-documentation property. Print "a reader construct" when appropriate.
34364 * lisp/help-mode.el (help-xref-symbol-regexp): Amend this regexp also to match
34367 2017-01-22 Paul Eggert <eggert@cs.ucla.edu>
34369 Improve uses of CHECK_LIST etc.
34371 * src/eval.c (FletX): Report an error for invalid constructs like
34372 ‘(let* (a . 0))’, so that ‘let*’ is more consistent with ‘let’.
34373 (lambda_arity): Use plain CHECK_CONS.
34374 * src/fns.c (CHECK_LIST_END): Move from here to lisp.h.
34375 (Fcopy_alist): Remove unnecessary CHECK_LIST call, since
34376 concat does that for us.
34377 (Fnthcdr, Fmember, Fmemql, Fdelete, Fnreverse):
34378 Use CHECK_LIST_END, not CHECK_LIST_CONS. This hoists a
34379 runtime check out of the loop.
34380 (Fmemq): Simplify and use CHECK_LIST_END instead of CHECK_LIST.
34381 (Fassq, Fassoc, Frassq, Frassoc):
34382 Simplify and use CHECK_LIST_END instead of CAR.
34383 (assq_no_quit, assoc_no_quit): Simplify and assume proper list.
34384 (Fnconc): Use plain CHECK_CONS, and do-while instead of while loop.
34385 * src/fontset.c (Fnew_fontset):
34386 * src/frame.c (Fmodify_frame_parameters):
34387 Use CHECK_LIST_END at end, rather than CHECK_LIST at start, for a
34388 more-complete check.
34389 * src/gfilenotify.c (Fgfile_add_watch):
34390 Omit unnecessary CHECK_LIST, since Fmember does that for us.
34391 * src/lisp.h (lisp_h_CHECK_LIST_CONS, CHECK_LIST_CONS):
34392 Remove; no longer used.
34393 (CHECK_LIST_END): New inline function.
34395 2017-01-22 Tino Calancha <tino.calancha@gmail.com>
34397 Prevent to use tabulated-list--near-rows unbound
34399 * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-entry):
34400 Make sure 'tabulated-list--near-rows' is bound before use it (Bug#25506).
34402 2017-01-22 Juri Linkov <juri@linkov.net>
34404 * lisp/simple.el (region-bounds): New function.
34406 (region-noncontiguous-p): Use it.
34407 https://lists.gnu.org/r/emacs-devel/2017-01/msg00044.html
34409 2017-01-21 Alan Mackenzie <acm@muc.de>
34411 Fix low-level handling of (big) C macros.
34413 In particular, ensure that a comment detected by its syntax is not a CPP
34414 construct marked with generic comment delimiter syntax-table text
34417 * lisp/progmodes/cc-engine.el (c-beginning-of-macro, c-end-of-macro): Set
34418 c-macro-cache-syntactic to nil when the cached macro changes.
34419 (c-syntactic-end-of-macro, c-no-comment-end-of-macro)
34420 (c-state-semi-pp-to-literal, c-state-full-pp-to-literal)
34421 (c-state-pp-to-literal, c-parse-ps-state-to-cache)
34422 (c-state-cache-non-literal-place, c-literal-limits, c-literal-start)
34423 (c-determine-limit): When checking a parse syntax for a comment, check that
34424 we're not in a CPP construct marked by syntax-table generic comment delimiter
34426 (c-state-pp-to-literal): Change from a defsubst to a defun.
34428 * lisp/progmodes/cc-mode.el (c-neutralize-syntax-in-and-mark-CPP): Check a
34429 parse syntax as described above under cc-engine.el.
34431 2017-01-21 Vibhav Pant <vibhavp@gmail.com>
34433 * lisp/emacs-lisp/bytecomp.el: Remove unused debugging statements.
34435 2017-01-21 Noam Postavsky <npostavs@gmail.com>
34437 Don't wait for frame to become visible
34439 * src/xterm.c (x_make_frame_visible): Remove code that waits for the
34440 frame to become visible. We have to deal with invisible frames anyway,
34441 the loop could sometimes before the frame turned visible, and for some
34442 window managers (e.g., XMonad, i3wm) it caused Emacs to get stuck in a
34443 busy loop (Bug#24091).
34445 2017-01-21 Tino Calancha <tino.calancha@gmail.com>
34447 diff-hunk-kill independent of point inside headers
34449 Make diff-apply-hunk and diff-hunk-kill independent of the point
34450 position in a diff header (Bug#17544).
34451 This change allows to apply hunks in order. It also makes possible to
34452 press M-k repeatedly to kill hunks in the order they appear in the buffer.
34453 See discussion on #Bug25105.
34454 * lisp/vc/diff-mode.el (diff-file-junk-re):
34455 Move definition before it's used.
34456 (diff--at-diff-header-p): New predicate; return non-nil when point
34457 is inside a hunk header, a file header, or within a line
34458 matching diff-file-junk-re.
34459 (diff-beginning-of-hunk): Use it.
34460 Check if the point is inside a diff header, in the middle of a hunk,
34461 or before the first hunk.
34462 (diff-apply-hunk): Call diff-beginning-of-hunk with non-nil arg
34463 before apply the hunk.
34464 (diff-hunk-kill, diff-file-kill):
34465 Call diff-beginning-of-hunk with non-nil arg after kill the hunks.
34466 (diff-post-command-hook): Call diff-beginning-of-hunk with non-nil argument.
34468 2017-01-20 Eli Zaretskii <eliz@gnu.org>
34470 Improve documentation of hooks related to saving buffers
34472 * lisp/files.el (write-file-functions, write-contents-functions)
34473 (before-save-hook, after-save-hook): Note that these are only used
34476 * doc/lispref/backups.texi (Auto-Saving):
34477 * doc/lispref/files.texi (Saving Buffers): Mention that
34478 save-related hooks are not run by auto-saving. (Bug#25460)
34480 2017-01-20 Eli Zaretskii <eliz@gnu.org>
34482 Improve documentation of auto-save-visited-file-name
34484 * doc/emacs/files.texi (Auto Save Files): Mention subtle
34485 differences between saving the buffer and auto-saving with
34486 auto-save-visited-file-name set non-nil. (Bug#25478)
34488 2017-01-20 Noam Postavsky <npostavs@gmail.com>
34490 Fix free var FOO-mode-{syntax,abbrev}-table warnings
34492 * lisp/emacs-lisp/derived.el (define-derived-mode): Unconditionally
34493 defvar the syntax and abbrev tables so that the compiler will know that
34494 they are dynamically bound variables (Bug#25446).
34496 2017-01-19 Vibhav Pant <vibhavp@gmail.com>
34498 * lisp/emacs-lisp/bytecomp.el: Fix errors with matching quoted forms
34500 * lisp/emacs-lisp/bytecomp.el: (byte-compile-cond-jump-table-info)
34501 eval obj2 to avoid quoted forms being stored as is.
34503 2017-01-19 Vibhav Pant <vibhavp@gmail.com>
34505 lisp/emacs-lisp/bytecomp.el: Use byte-switch only for quoted symbols
34507 2017-01-19 Vibhav Pant <vibhavp@gmail.com>
34509 * lisp/emacs-lisp/bytecomp.el: Add default-case for last cond clause.
34511 * lisp/emacs-lisp/bytecomp.el: (byte-compile-cond-jump-table) Add
34512 default-case for last cond clause.
34514 2017-01-19 Philipp Stephani <phst@google.com>
34516 Check that variable lists are actually lists
34518 'let' and 'let*' document that their first argument has to be a list,
34519 but don't check for that; instead, they allow (and silently ignore)
34520 other types. Introduce an explicit type check.
34522 * src/eval.c (Flet, FletX): Check that the variable list is indeed a
34524 * test/src/eval-tests.el: Add unit tests.
34526 2017-01-19 Vibhav Pant <vibhavp@gmail.com>
34528 Add type checking for Bswitch, when enabled at compile time.
34530 * src/bytecode.c: (exec_byte_code) If BYTE_CODE_SAFE is enabled at
34531 compile time, use CHECK_TYPE to verify that the jump table is a hash table.
34533 2017-01-19 Vibhav Pant <vibhavp@gmail.com>
34535 Use byte-switch for all symbols.
34537 * lisp/emacs-lisp/bytecomp.el: (byte-compile-cond-valid-obj2-p) Return
34538 t for all symbols (instead for just keywords)
34540 2017-01-19 Noam Postavsky <npostavs@gmail.com>
34542 Avoid inefficient regex in diff-refine-hunk (Bug#25410)
34544 * lisp/vc/diff-mode.el (diff--forward-while-leading-char): New function.
34545 (diff-refine-hunk): Use it instead of trying to match multiple lines
34546 with a single lines.
34548 2017-01-18 Eli Zaretskii <eliz@gnu.org>
34550 Remove lock file when auto-saving into the visited file
34552 * src/fileio.c (write_region): When auto-saving into the visited
34553 file, unlock the file whenever we mark the buffer unmodified.
34556 2017-01-18 Vibhav Pant <vibhavp@gmail.com>
34558 * src/bytecode.c: (exec_byte_code) Use hash_lookup for Bswitch
34560 Fgethash type checks the provided table object, which is unnecessary
34561 for compiled bytecode.
34563 2017-01-18 Tom Tromey <tom@tromey.com>
34565 fix typo in mailcap-mime-extensions
34567 * lisp/net/mailcap.el (mailcap-mime-extensions): Use "text/x-patch",
34568 not "test/x-patch". (Bug#25472)
34570 2017-01-18 Lele Gaifax <lele@metapensiero.it> (tiny change)
34572 Fix typos in flymake.el
34574 * lisp/progmodes/flymake.el (flymake-check-patch-master-file-buffer):
34575 Spelling fixes in the doc string.
34577 2017-01-18 Eli Zaretskii <eliz@gnu.org>
34579 Fix a bug with signaling a thread that waits for condvar
34581 * src/thread.c (lisp_mutex_lock_for_thread): New function,
34582 with all the guts of lisp_mutex_lock.
34583 (lisp_mutex_lock): Call lisp_mutex_lock_for_thread.
34584 (condition_wait_callback): Don't call post_acquire_global_lock
34585 before locking the mutex, as that could cause a signaled thread to
34586 exit prematurely, because the condvar's mutex is recorded to be
34587 not owned by any thread, and with-mutex wants to unlock it as part
34588 of unwinding the stack in response to the signal.
34590 2017-01-18 Eli Zaretskii <eliz@gnu.org>
34592 Rudimentary error handling for non-main threads
34594 * src/thread.c (last_thread_error): New static variable.
34595 (syms_of_threads): Staticpro it.
34596 (record_thread_error, Fthread_last_error): New functions.
34597 (syms_of_threads): Defsubr Fthread_last_error.
34599 * doc/lispref/threads.texi (Basic Thread Functions): Document
34602 * test/src/thread-tests.el (thread-errors, thread-signal-early)
34603 (threads-condvar-wait): Test the values returned by
34606 2017-01-17 Tom Tromey <tom@tromey.com>
34608 Add info-lookup help for gdb-script-mode
34611 * lisp/info-look.el (info-lookup-guess-gdb-script-symbol): New
34613 Add help for gdb-script-mode.
34615 2017-01-17 Tom Tromey <tom@tromey.com>
34617 Treat ":root" as a css-selector
34619 * lisp/textmodes/css-mode.el (css--font-lock-keywords): Recognize bare
34620 ":root" as selector.
34622 2017-01-17 Tom Tromey <tom@tromey.com>
34624 Fix JS regexp literal syntax propertization in expressions
34627 * lisp/progmodes/js.el (js-syntax-propertize): Recognize a regexp
34628 literal after "!", "&", and "|".
34629 test/lisp/progmodes/js-tests.el (js-mode-regexp-syntax): New test.
34631 2017-01-17 Glenn Morris <rgm@gnu.org>
34633 More NEWS checking for admin.el's set-version
34635 * admin/admin.el (set-version): Warn if temporary NEWS markup
34636 still present in release candidates.
34638 2017-01-17 Mark Oteiza <mvoteiza@udel.edu>
34640 Mark unused arguments and remove unused variables
34642 * lisp/play/dunnet.el (dun-mode, dun-die, dun-inven, dun-try-take):
34643 (dun-dig, dun-type, dun-n, dun-s, dun-e, dun-w, dun-ne, dun-se):
34644 (dun-nw, dun-sw, dun-up, dun-down, dun-in, dun-out, dun-long):
34645 (dun-swim, dun-score, dun-flush, dun-piss, dun-sleep, dun-drive):
34646 (dun-superb, dun-power, dun-unix-parse, dun-bin, dun-fascii):
34647 (dun-ftpquit, dun-ftphelp, dun-uexit, dun-pwd, dun-dos-parse):
34648 (dun-dos-invd, dun-dos-spawn, dun-dos-exit, dun-dos-nil):
34649 (dungeon-nil): Mark arguments as unused.
34650 (dun-drop, dun-objnum-from-args, dun-get-path, dun-ftp):
34651 (dun-restore): Remove unused variable.
34653 2017-01-17 Michael Albinus <michael.albinus@gmx.de>
34655 Fix auto-save-file-name problem in Tramp on MS Windows
34657 * lisp/files.el (make-auto-save-file-name): Use `file-remote-p'
34658 rather than an ange-ftp regexp.
34660 * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
34661 Fix a problem when running on MS Windows.
34663 * test/lisp/net/tramp-tests.el (tramp-test31-make-auto-save-file-name):
34666 2017-01-17 Michael Albinus <michael.albinus@gmx.de>
34668 Fix auto-save-file-name problem in Tramp on MS Windows. Do not merge
34670 * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
34671 Fix a problem when running on MS Windows.
34673 2017-01-17 Paul Eggert <eggert@cs.ucla.edu>
34675 Merge from origin/emacs-25
34677 42614fa Update remaining copyright years with admin.el M-x set-copyright
34678 f17a006 * lisp/ffap.el (ffap-lax-url): Bump :version after recent cha...
34680 2017-01-17 Mark Oteiza <mvoteiza@udel.edu>
34682 Nix some uses of eval
34684 * lisp/play/dunnet.el: Fix triple negative.
34685 (dun-doverb): Use funcall instead of eval.
34686 (dun-echo): Just call dun-mprinc.
34687 (dun-save-val): Just bind value without eval.
34689 2017-01-17 Tom Tromey <tom@tromey.com>
34691 Fix comment in css-mode.el
34693 * lisp/textmodes/css-mode.el: Remove obsolete comment.
34695 2017-01-16 Vibhav Pant <vibhavp@gmail.com>
34699 2017-01-16 Ian Dunn <dunni@gnu.org> (tiny change)
34701 * lisp/net/eww.el (eww-tag-meta): Handle single quoted URLs (Bug#25445).
34703 2017-01-15 Noam Postavsky <npostavs@gmail.com>
34705 Improve ffap-gopher-at-point handling of long lines
34707 * lisp/ffap.el (ffap-gopher-regexp): Only match the KEY part. Note
34708 setting to nil is now supported.
34709 (ffap--gopher-var-on-line): New function.
34710 (ffap-gopher-at-point): Use it instead of the old ffap-gopher-regexp
34711 which could overflow the regexp stack on long lines (Bug#25391). Use
34712 `let-alist' instead of calling `set' on local variables.
34713 * test/lisp/ffap-tests.el (ffap-gopher-at-point): New test.
34715 2017-01-15 Vibhav Pant <vibhavp@gmail.com>
34717 * lisp/emacs-lisp/byte-opt.el: Optimize how tags are checked for use.
34719 * lisp/emacs-lisp/byte-opt.el: (byte-optimize-lapcode): Return nil instantly on
34720 finding the tag in a jump table.
34722 2017-01-15 Vibhav Pant <vibhavp@gmail.com>
34724 * lisp/emacs-lisp/bytecomp.el: Add documentation, remove code duplication
34726 2017-01-14 Vibhav Pant <vibhavp@gmail.com>
34728 Add new 'switch' byte-code.
34730 'switch' takes two arguments from the stack: the variable to test, and
34731 a jump table (implemented as a hash-table with the appropriate :test
34732 function). By looking up the value of the variable in the hash table,
34733 the interpreter can jump to the label pointed to by the value, if any.
34734 This implementation can only be used for `cond' forms of the type
34735 `(cond ((test x 'foo) 'bar) ...)`, such that the function `test` and
34736 variable `x` is same for all clauses.
34738 * lisp/emacs-lisp/bytecomp.el:
34740 * Add (byte-compile-cond-valid-obj2-p), (byte-compile-cond-vars),
34741 (byte-compile-cond-jump-table-info), (byte-compile-jump-table-add-tag),
34742 (byte-compile-cond-jump-table), byte-compile-jump-tables.
34744 * Add defcustom `byte-compile-cond-use-jump-table'.
34746 * (byte-compile-cond): Use them.
34748 * (byte-compile-lapcode): Patch tags present in jump tables, if any.
34750 * lisp/emacs-lisp//byte-opt.el: (byte-optimize-lapcode): Add checks to
34751 some peephole optimizations to prevent them from messing up any code
34752 involving `byte-switch`.
34754 * src/bytecode.c: (exec_byte_code): Add bytecode Bswitch.
34756 2017-01-14 Alan Third <alan@idiocy.org>
34758 Fix NS main thread check (bug#25265)
34760 * src/nsterm.m (ns_read_socket, ns_select): Replace mainThread with
34763 2017-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
34765 * lisp/progmodes/sql.el (sql-product-alist): Doc tweak
34767 `:sqli-comint-func' does not have to be a symbol.
34769 2017-01-14 Alan Mackenzie <acm@muc.de>
34771 Correct c-parse-state-get-strategy for moving HERE backward into a macro.
34773 * lisp/progmodes/cc-engine.el (c-parse-state-get-strategy): When HERE is below
34774 its previous value, we chose strategy 'forward, and the new HERE is in a
34775 (different) macro, ensure the returned START-POINT is not above the start of
34778 2017-01-14 Eli Zaretskii <eliz@gnu.org>
34780 Include "Date:" in mail messages filed by 'sendmail-send-it'
34782 * lisp/mail/sendmail.el (mail-do-fcc): Insert a 'Date:' header
34783 into the filed message. In the outgoing message, sendmail will
34784 add the date, but the composed message body doesn't have it.
34787 2017-01-14 Eli Zaretskii <eliz@gnu.org>
34789 * lisp/progmodes/sql.el (sql-product-alist): Doc fix. (Bug#25440)
34791 2017-01-14 Dmitry Gutov <dgutov@yandex.ru>
34793 Remove leftover references to log-view-message-face
34795 * lisp/vc/vc-bzr.el (vc-bzr-log-view-mode): Use log-view-message.
34797 * lisp/vc/vc-git.el (vc-git-root-log-format): Same.
34799 * lisp/vc/vc-hg.el (vc-hg-root-log-format): Same.
34801 2017-01-13 Phillip Lord <phillip.lord@russet.org.uk>
34803 Record autoloads till emacs dump
34805 * admin/ldefs-clean.el (ldefs-clean-up): Record autoloads till emacs dump
34806 * lisp/ldefs-boot-auto.el (batch-byte-compile): Update
34808 Previously, autoloads were collected till loaddefs.el was generated as
34809 part of the build. However, bootstrap-emacs does not load
34810 loaddefs (rather it is dumped), hence we must record autoloads until the
34811 full emacs binary is dumped.
34813 2017-01-13 Tom Tromey <tom@tromey.com>
34815 Add chained indentation to js-mode
34818 * lisp/progmodes/js.el (js-chain-indent): New variable.
34819 (js--skip-term-backward, js--skip-terms-backward)
34820 (js--chained-expression-p): New functions.
34821 (js--proper-indentation): Call js--chained-expression-p.
34822 * test/manual/indent/js-chain.js: New file.
34823 * test/manual/indent/js.js: Add (non-)chained indentation test.
34825 2017-01-13 Tom Tromey <tom@tromey.com>
34827 Fix js-mode indentation bug
34830 * lisp/progmodes/js.el (js--find-newline-backward): New function.
34831 (js--continued-expression-p): Use it.
34832 * test/manual/indent/js.js: Add new test.
34834 2017-01-13 Tom Tromey <tom@tromey.com>
34836 Fix definition of EMACS in test/manual/indent/Makefile
34838 * test/manual/indent/Makefile (EMACS): Add one more "..".
34840 2017-01-13 Tom Tromey <tom@tromey.com>
34842 Add .jsx to auto-mode-alist
34845 * lisp/files.el (auto-mode-alist): Add entry for .jsx.
34847 2017-01-13 Tom Tromey <tom@tromey.com>
34849 Fix two js-mode filling bugs
34851 Bug#19399 and Bug#22431:
34852 * lisp/progmodes/js.el (js-mode): Set comment-line-break-function and
34853 c-block-comment-start-regexp.
34854 * test/lisp/progmodes/js-tests.el: New file.
34856 2017-01-13 Eli Zaretskii <eliz@gnu.org>
34860 * test/src/thread-tests.el (threads-condvar-wait): Revert
34861 previous change. Make sure no other threads from previous
34862 tests are running, to avoid interfering with our thread counts.
34864 2017-01-13 Eli Zaretskii <eliz@gnu.org>
34866 Fix the new condvar test
34868 * test/src/thread-tests.el (threads-condvar-wait): Enlarge the
34869 time we sleep in the main thread to let the other thread
34870 process notifications.
34872 2017-01-13 Eli Zaretskii <eliz@gnu.org>
34874 Minor improvements in the new condvar test
34876 * test/src/thread-tests.el (threads-test-condvar-wait): Use
34877 with-mutex instead of emulating it inline.
34878 (threads-condvar-wait): Improve comments. Check that the new
34879 thread is alive before waiting for it to become blocked on the
34880 conditional variable.
34882 2017-01-13 Eli Zaretskii <eliz@gnu.org>
34884 Fix a bug in waiting for condition variable
34886 * src/thread.c (lisp_mutex_lock, lisp_mutex_unlock)
34887 (lisp_mutex_unlock_for_wait, condition_wait_callback)
34888 (condition_notify_callback): Improve commentary.
34889 (condition_wait_callback): Call post_acquire_global_lock before
34890 attempting to lock the mutex, to make sure the lock's owner is
34891 recorded correctly.
34893 * test/src/thread-tests.el (threads-condvar-wait): New test.
34895 2017-01-13 Eli Zaretskii <eliz@gnu.org>
34897 Improve documentation of dabbrevs
34899 * doc/emacs/abbrevs.texi (Dynamic Abbrevs): Add a cross reference
34900 to "Dabbrev Customization".
34901 (Dabbrev Customization): More details about the default value of
34902 dabbrev-abbrev-char-regexp and use cases when it might not be good
34903 enough. (Bug#25432)
34905 2017-01-13 Katsumi Yamaoka <yamaoka@jpl.org>
34907 Fix last change of dd80ee6 (was: mm-uu.el: Don't dissect patch part)
34909 2017-01-13 Katsumi Yamaoka <yamaoka@jpl.org>
34911 mm-uu.el: Don't dissect patch part
34913 This fixes a bug that the patch part is broken in the article
34914 <87inpjzhpb.fsf@users.sourceforge.net> in the bug-gnu-emacs list.
34916 * lisp/gnus/mm-uu.el (mm-uu-dissect-text-parts):
34917 Don't dissect patch part.
34919 2017-01-13 Dmitry Lazurkin <dilaz03@gmail.com>
34921 Fix extracting async def type and name in python mode imenu
34923 * lisp/progmodes/python.el (python-imenu--get-defun-type-name):
34925 (python-imenu--build-tree): Use python-imenu--get-defun-type-name for
34926 extract async or simple def type and name at current
34927 position (Bug#24820).
34928 * test/lisp/progmodes/python-tests.el (python-imenu-create-index-1):
34929 (python-imenu-create-flat-index-1): Add async def's.
34931 2017-01-13 Katsumi Yamaoka <yamaoka@jpl.org>
34933 Remove garbage from Content-Transfer-Encoding value (bug#25420)
34935 * lisp/mail/ietf-drums.el (ietf-drums-strip-cte): New function.
34936 (ietf-drums-remove-garbage): New function.
34937 (ietf-drums-remove-whitespace): Remove CR as well.
34939 * lisp/mail/mail-parse.el (mail-header-strip-cte):
34940 Alias to ietf-drums-strip-cte.
34942 * lisp/gnus/gnus-art.el (article-decode-charset):
34943 * lisp/gnus/gnus-sum.el (gnus-summary-enter-digest-group):
34944 * lisp/gnus/mm-decode.el (mm-dissect-buffer):
34945 * lisp/gnus/nndoc.el (nndoc-decode-content-transfer-encoding)
34946 (nndoc-rfc822-forward-generate-article):
34947 * lisp/mh-e/mh-mime.el (mh-decode-message-body):
34948 Replace mail-header-strip with mail-header-strip-cte.
34950 2017-01-13 Paul Eggert <eggert@cs.ucla.edu>
34952 Restore behavior of ‘./autogen.sh autoconf git’
34954 * autogen.sh: Do both autoconf and git setup when invoked
34955 as ‘./autogen.sh autoconf git’. Avoid unnecessary newline in chatter.
34956 Mention new --no-check option in usage message. (Bug#25359)
34958 2017-01-12 Glenn Morris <rgm@gnu.org>
34960 * autogen.sh: Simplify argument parsing.
34962 2017-01-12 Noam Postavsky <npostavs@gmail.com>
34964 Clarify that easy-menu-add is a nop (Bug#25382)
34966 * lisp/emacs-lisp/easymenu.el (easy-menu-add): Make it into an alias of
34967 `ignore', like `easy-menu-remove'.
34969 2017-01-12 Glenn Morris <rgm@gnu.org>
34971 * lisp/textmodes/rst.el (rst-package-emacs-version-alist): Fix entry.
34973 2017-01-11 Glenn Morris <rgm@gnu.org>
34975 * autogen.sh: Add --no-check option. (Bug#25359)
34977 2017-01-11 Glenn Morris <rgm@gnu.org>
34979 Convert some network test failures to skipping
34981 These tests intermittently fail on hydra.nixos.org for unclear
34982 reasons related to starting the external process.
34983 This isn't an Emacs issue, and the failures cause noise on
34984 the emacs-buildstatus list. (Bug#24503)
34985 * test/lisp/net/network-stream-tests.el (echo-server-nowait)
34986 (connect-to-tls-ipv4-nowait): Skip rather than fail if the
34987 external process fails to start properly.
34989 2017-01-11 Eli Zaretskii <eliz@gnu.org>
34991 Revert "Add DNS keywords and remove duplications"
34993 This reverts commit 1cb9aa5b14867983d0013a61709b4d0af18364ff.
34995 2017-01-11 Alexander Kuleshov <kuleshovmail@gmail.com>
34997 Add DNS keywords and remove duplications
34999 * lisp/textmodes/dns-mode.el (dns-mode-types): Add two TLSA and
35000 NSEC" DNS related keywords and remove duplication of "NSAP".
35002 2017-01-11 Alexander Kuleshov <kuleshovmail@gmail.com>
35004 Add DNS keywords and remove duplications
35006 * lisp/textmodes/dns-mode.el (dns-mode-types): Add two TLSA and
35007 NSEC" DNS related keywords and remove duplication of "NSAP".
35009 2017-01-11 Alan Mackenzie <acm@muc.de>
35011 Handle syntactic WS cache properties more accurately at buffer changes.
35013 This fixes bug #25362.
35015 * lisp/progmodes/cc-engine.el (c-sws-lit-type, c-sws-lit-limits)
35016 (c-invalidate-sws-region-before, c-invalidate-sws-region-after-del)
35017 (c-invalidate-sws-region-after-ins): New variables and functions.
35018 (c-invalidate-sws-region-after): Change from a defsubst to a defun.
35020 it the standard OLD-LEN argument. Call both
35021 c-invalidate-sws-region-after-{ins,del} to check for "dangerous" WS
35025 * lisp/progmodes/cc-langs.el (c-block-comment-ender-regexp): New language
35028 * lisp/progmodes/cc-mode.el (c-before-change): Call
35029 c-invalidate-sws-region-before.
35030 (c-after-change): Pass old-len to c-invalidate-sws-region-after.
35032 2017-01-11 Michael Albinus <michael.albinus@gmx.de>
35034 Support stat 8.26 in Tramp
35036 * lisp/net/tramp-sh.el (tramp-get-remote-stat): Use QUOTING_STYLE
35037 environment variable of newer coreutils. (Bug#23422)
35039 2017-01-10 Eli Zaretskii <eliz@gnu.org>
35041 Improve documentation of coding-systems
35043 * doc/lispref/nonascii.texi (Coding System Basics): Mention
35044 'prefer-utf-8'. Index it and 'undecided'.
35045 (Encoding and I/O): Fix a typo.
35046 (User-Chosen Coding Systems): Improve the documentation of
35047 ACCEPT-DEFAULT-P argument to select-safe-coding-system. Document
35048 select-safe-coding-system-function.
35049 (Specifying Coding Systems): Document coding-system-require-warning.
35051 2017-01-10 Paul Eggert <eggert@cs.ucla.edu>
35056 2017-01-09 maint: time stamp -> timestamp
35057 2017-01-07 stdioext: Port to Minix 3.2 and newer
35058 2017-01-06 glob, intprops, xalloc: work around Clang bug
35059 2017-01-02 revert copyright-year change to synced files
35060 * doc/misc/texinfo.tex, lib/fpending.c, lib/intprops.h, lib/mktime.c:
35061 * lib/stat-time.h, lib/stdio-impl.h, lib/time.in.h, lib/timespec.h:
35062 * lib/utimens.c, lib/xalloc-oversized.h:
35065 2017-01-10 Eli Zaretskii <eliz@gnu.org>
35067 Don't use unsafe encoding for the bookmark file
35069 * lisp/bookmark.el (bookmark-write-file): Handle the case when the
35070 explicitly specified encoding of the bookmark file cannot encode the
35071 additional bookmarks just added. (Bug#25365)
35073 2017-01-09 Eli Zaretskii <eliz@gnu.org>
35075 Improve definition of 'variable-pitch' face on MS-Windows
35077 * lisp/faces.el (variable-pitch): Don't specify too many
35078 attributes of the font, otherwise faces that request different
35079 weight or slant or size will not get them.
35081 2017-01-09 Eli Zaretskii <eliz@gnu.org>
35083 Fix an error message in python.el
35085 * lisp/progmodes/python.el (python-shell-get-process-or-error):
35086 Don't repeat the same key binding twice. (Bug#25405)
35088 2017-01-09 Phillip Lord <phillip.lord@russet.org.uk>
35090 Remove unused ldefs-boot.el
35092 * lisp/ldefs-boot.el: Remove
35094 This file was not removed as reported in c27b645956a11, but accidentally
35097 2017-01-09 Noam Postavsky <npostavs@gmail.com>
35098 Eli Zaretskii <eliz@gnu.org>
35100 Use expanded stack during regex matches
35102 While the stack is increased in main(), to allow the regex stack
35103 allocation to use alloca we also need to modify regex.c to actually take
35104 advantage of the increased stack, and not limit stack allocations to
35107 * src/regex.c (MATCH_MAY_ALLOCATE): Remove obsolete comment about
35108 allocations in signal handlers which no longer happens and correct
35109 description about when and why MATCH_MAY_ALLOCATE should be defined.
35110 (emacs_re_safe_alloca): New variable.
35111 (REGEX_USE_SAFE_ALLOCA): Use it as the limit of stack allocation instead
35113 (emacs_re_max_failures): Rename from `re_max_failures' to avoid
35114 confusion with glibc's `re_max_failures'.
35115 * src/emacs.c (main): Increase the amount of fixed 'extra' bytes we add
35116 to the stack. Instead of changing emacs_re_max_failures based on the
35117 new stack size, just change emacs_re_safe_alloca; emacs_re_max_failures
35118 remains constant regardless, since if we run out stack space SAFE_ALLOCA
35119 will fall back to heap allocation.
35121 2017-01-09 Noam Postavsky <npostavs@gmail.com>
35123 Fix computation of regex stack limit
35125 The regex stack limit was being computed as the number of stack entries,
35126 whereas it was being compared with the current size as measured in
35127 bytes. This could cause indefinite looping when nearing the stack limit
35128 if re_max_failures happened not to be a multiple of sizeof
35129 fail_stack_elt_t (Bug #24751).
35131 * src/regex.c (GROW_FAIL_STACK): Compute both current stack size and
35132 limit as numbers of stack entries.
35134 2017-01-08 Alan Third <alan@idiocy.org>
35138 * src/nsterm.m (ns_select, ns_read_socket): Remove apploopnr and only
35139 allow app loop to run in main thread.
35141 2017-01-08 Glenn Morris <rgm@gnu.org>
35143 Remove unused configure output variable
35145 * configure.ac (GNULIB_MK):
35146 * Makefile.in (gnulib_mk): Remove, no longer used.
35148 2017-01-08 Glenn Morris <rgm@gnu.org>
35150 Fix automake dependencies
35152 * Makefile.in (AUTOMAKE_INPUTS): Add nt/gnulib.mk. (Bug#25372)
35153 All platforms need this file to exist.
35155 2017-01-08 Paul Eggert <eggert@cs.ucla.edu>
35157 Remove unnecessary blankp code
35159 * src/character.c (blankp): Remove redundant code that slows Emacs
35160 down a bit. The caller already does the test.
35162 2017-01-08 Stefan Merten <stefan@merten-home.de>
35164 * lisp/textmodes/rst.el: Fix rst-forward-indented-block.
35166 * lisp/textmodes/rst.el (rst-cvs-header, rst-svn-rev)
35167 (rst-svn-timestamp)
35168 (rst-official-version, rst-official-cvs-rev)
35169 (rst-package-emacs-version-alist): Maintain version numbers.
35170 (rst-forward-indented-block): Fix. Start searching at next
35171 line again. Fixes fontification of comments continuing on the
35172 same line they started.
35174 2017-01-08 Paul Eggert <eggert@cs.ucla.edu>
35176 Remove @SET_MAKE@ from manually-maintained files
35178 Emacs now assumes GNU Make, so @SET_MAKE@ is no longer needed.
35179 * Makefile.in, lwlib/Makefile.in, nextstep/Makefile.in:
35180 * src/Makefile.in: Remove @SET_MAKE@.
35182 2017-01-07 Michael Albinus <michael.albinus@gmx.de>
35184 Fix a problem with `start-file-process' in Tramp
35186 * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
35187 `start-file-process' shall work when `non-essential' is
35188 non-nil, but there is already an established connection.
35189 <https://github.com/company-mode/company-mode/issues/462>
35191 2017-01-07 Rolf Ade <rolf@pointsman.de> (tiny change)
35193 Fix selecting SQLite database files with sql-mode (Bug#23566)
35195 * lisp/progmodes/sql.el (sql-sqlite-login-params): Allow any name as
35196 SQLite database file name, by default.
35197 (sql-get-login-ext): Fixed read-file-name arguments to provide
35198 path completion even if a database name pattern is customized and to
35199 allow creation of new SQLite database files.
35201 2017-01-07 Noam Postavsky <npostavs@gmail.com>
35203 Clarify major mode switching
35205 * doc/emacs/modes.texi (Major Modes):
35206 * doc/lispref/modes.texi (Modes, Major Modes): Explictly say that each
35207 buffer has exactly one major mode and can't be "turned off", only
35208 switched away from (Bug#25357).
35210 2017-01-07 Noam Postavsky <npostavs@gmail.com>
35212 Add helpful comment to compile-command's docstring
35214 * lisp/progmodes/compile.el (compile-command): Mention trailing space in
35215 docstring (Bug#25337).
35217 2017-01-07 Eli Zaretskii <eliz@gnu.org>
35219 Specify encoding of the bookmark file
35221 * lisp/bookmark.el (bookmark-insert-file-format-version-stamp):
35222 Accept an argument CODING and include a 'coding:' cookie in the
35223 bookmark file preamble.
35224 (bookmark-upgrade-file-format-from-0): Call
35225 'bookmark-insert-file-format-version-stamp' with the file buffer's
35226 encoding, as detected when it was read.
35227 (bookmark-file-coding-system): New variable.
35228 (bookmark-load): Set bookmark-file-coding-system to the encoding
35229 of the loaded file.
35230 (bookmark-write-file): Bind coding-system-for-write to either the
35231 user setting via "C-x RET c" or to the existing file encoding,
35232 defaulting to 'utf-8-emacs'. Update the value of
35233 bookmark-file-coding-system. (Bug#25365)
35235 2017-01-07 Eli Zaretskii <eliz@gnu.org>
35237 Avoid infloop in 'ispell-region'
35239 * lisp/textmodes/ispell.el (ispell-begin-skip-region-regexp):
35240 Protect against 'ispell-skip-region-alist' being nil. Reported by
35241 Ernest Adrogué <nfdisco@gmail.com>, see
35242 https://lists.gnu.org/r/help-gnu-emacs/2017-01/msg00007.html.
35244 2017-01-06 Philipp Stephani <phst@google.com>
35246 Add support for Unicode whitespace in [:blank:]
35250 * src/character.c (blankp): New function for checking Unicode
35251 horizontal whitespace.
35252 * src/regex.c (ISBLANK): Use 'blankp' for non-ASCII horizontal
35254 (BIT_BLANK): New bit for range table.
35255 (re_wctype_to_bit, execute_charset): Use it.
35256 * test/lisp/subr-tests.el (subr-tests--string-match-p--blank): Add
35257 unit test for [:blank:] character class.
35258 * test/src/regex-tests.el (test): Adapt unit test.
35259 * doc/lispref/searching.texi (Char Classes): Document new Unicode
35260 behavior for [:blank:].
35262 2017-01-06 Eli Zaretskii <eliz@gnu.org>
35264 Fix ':version' of 'select-enable-primary'
35266 * lisp/select.el (select-enable-primary): Fix a typo in
35267 ':version'. (Bug#25375)
35269 2017-01-06 Stefan Monnier <monnier@iro.umontreal.ca>
35271 (feedmail-deduce-address-list): Avoid add-to-list on local variables.
35275 * lisp/mail/feedmail.el (feedmail-deduce-address-list):
35276 Avoid add-to-list on local variables.
35278 2017-01-06 Noam Postavsky <npostavs@gmail.com>
35280 Fix isearch handling of C-u C-u...
35282 * lisp/isearch.el: Add `isearch-scroll' property to
35283 universal-argument-more so that `isearch-allow-scroll' will apply to it
35285 (isearch-pre-command-hook): Let `isearch-allow-prefix' apply to
35286 `universal-argument-more' as well (Bug#25302).
35288 2017-01-05 Paul Eggert <eggert@cs.ucla.edu>
35290 Shorten autogen.sh script
35292 * autogen.sh: Use a shorter script, as some 'sed' implementations
35293 mishandle long scripts.
35295 2017-01-05 Eli Zaretskii <eliz@gnu.org>
35297 Yet another fix for autogen.sh
35299 * autogen.sh (gnulib.mk): Make the Sed script more portable.
35301 * nt/Makefile.in (${srcdir}/gnulib.mk): Adapt the Sed command to
35302 the changes in autogen.sh.
35304 2017-01-05 Eli Zaretskii <eliz@gnu.org>
35306 * autogen.sh (gnulib.mk): Another attempt to fix macOS build.
35308 2017-01-05 Eli Zaretskii <eliz@gnu.org>
35310 Fix dependencies of nt/gnulib.mk
35312 * Makefile.in ($(srcdir)/nt/gnulib.mk): Avoid circular dependency
35313 of nt/gnulib.mk on lib/Makefile.in.
35315 2017-01-05 Eli Zaretskii <eliz@gnu.org>
35317 Unbreak macOS build
35319 * autogen.sh (gnulib.mk): Don't use non-portable extensions of GNU
35322 2017-01-05 Johan Claesson <johanclaesson@bredband.net> (tiny change)
35324 Fix term.el handling of ^Z-sequences spanning chunks
35326 Bash will after each command send ?\032 and the current directory "/tmp"
35327 to inform term.el. Bash output is buffered in 4096 bytes chunks. If a
35328 command outputs roughly 4096 bytes then the end of the first chunk will
35329 be "/tm" (Bug#13350).
35331 * lisp/term.el (term-emulate-terminal): Change the regexp to find the
35332 end of the ?\032 sequence to use \n instead of $, the latter can match
35333 end of string as well.
35335 2017-01-05 Mark Oteiza <mvoteiza@udel.edu>
35337 Turn on lexical-binding in mb-depth.el
35339 * lisp/mb-depth.el: Turn on lexical-binding.
35340 (minibuffer-depth-setup): Bind things used multiple times.
35342 2017-01-04 Alan Third <alan@idiocy.org>
35344 Revert "Rework NS event handling (bug#25265)"
35346 This reverts commit e0e5b0f4a4ce1d19ee0240c514dedd873d4165dc.
35348 2017-01-04 Glenn Morris <rgm@gnu.org>
35350 Update remaining copyright years with admin.el M-x set-copyright
35352 * etc/refcards/ru-refcard.tex (cyear): Set to 2017.
35354 2017-01-04 Glenn Morris <rgm@gnu.org>
35356 * lisp/ffap.el (ffap-lax-url): Bump :version after recent change.
35358 2017-01-04 Paul Eggert <eggert@cs.ucla.edu>
35360 Port recent autogen.sh changes to Darwin
35362 Problem reported by Sam Steingold (Bug#25347).
35363 * autogen.sh: Don't assume 'sed -f-' reads a script from stdin, as
35364 POSIX does not require it and it does not work on Darwin.
35366 2017-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
35368 Avoid add-to-list on local variables
35370 * lisp/gnus/nnir.el: Use lexical-binding and cl-lib.
35371 (nnir-retrieve-headers): Use pcase.
35372 (nnir-search-thread): Avoid add-to-list on local variables.
35374 * lisp/gnus/smime.el: Use lexical-binding and cl-lib.
35375 (smime-verify-region): Avoid add-to-list on local variables.
35377 * lisp/mail/undigest.el: Use lexical-binding and cl-lib.
35378 (rmail-digest-parse-mime, rmail-digest-rfc1153)
35379 (rmail-digest-parse-rfc934): Avoid add-to-list on local variable.
35381 * lisp/net/ldap.el (ldap-search): Move init into declaration.
35383 * lisp/net/newst-backend.el (newsticker--cache-add):
35384 Avoid add-to-list on local variables; Simplify code with `assq'.
35386 * lisp/net/zeroconf.el: Use lexical-binding and cl-lib.
35387 (dbus-debug): Remove declaration, unused.
35388 (zeroconf-service-add-hook, zeroconf-service-remove-hook)
35389 (zeroconf-service-browser-handler, zeroconf-publish-service):
35390 Avoid add-to-list and *-hook on local variables.
35392 * lisp/org/org-archive.el (org-all-archive-files):
35393 * lisp/org/org-agenda.el (org-agenda-get-restriction-and-command):
35394 Avoid add-to-list on local variables.
35396 * lisp/org/ox-publish.el (org-publish--run-functions): New function.
35397 (org-publish-projects): Use it to avoid run-hooks on a local variable.
35398 (org-publish-cache-file-needs-publishing): Avoid add-to-list on
35401 * lisp/progmodes/ada-prj.el: Use setq instead of (set '...).
35402 (ada-prj-load-from-file): Avoid add-to-list on local variables.
35404 * lisp/progmodes/ada-xref.el (ada-initialize-runtime-library): Simplify.
35405 (ada-gnat-parse-gpr, ada-parse-prj-file-1)
35406 (ada-xref-find-in-modified-ali): Avoid add-to-list on local variables.
35408 * lisp/progmodes/idlw-shell.el (idlwave-shell-update-bp-overlays):
35409 Avoid add-to-list on local variables.
35411 2017-01-04 Mark Oteiza <mvoteiza@udel.edu>
35413 Turn on lexical-binding in md4.el
35415 * lisp/md4.el: Turn on lexical-binding.
35416 * test/lisp/md4-tests.el: New file.
35418 2017-01-03 Stefan Merten <stefan@merten-home.de>
35420 Lots of refactorings and a few minor improvements.
35422 User visible improvements and changes:
35423 * Improve and debug `rst-forward-section` and `rst-backward-section`.
35424 * Auto-enumeration may be used with all styles for list insertion.
35425 * Improve and debug `rst-toc-insert`.
35426 * Adapt change in Emacs to use customization group `text` instead of `wp`.
35427 * Bind `n` and `p` in `rst-toc-mode`.
35428 * `z` in `toc-mode` returns to the previous window configuration.
35429 * Require Emacs version >= 24.1.
35431 Lots of refactorings including:
35432 * Silence byte compiler.
35433 * Use lexical binding.
35435 * Add tests and raise test coverage.
35437 2017-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
35439 (cl-defstruct): Improve error message for slots w/o value (bug#25312)
35441 * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Don't signal an error but
35442 emit a warning for those coders who forgot to put a default value in
35445 2017-01-03 Philipp Stephani <p.stephani2@gmail.com>
35447 Small patch for ffap.el
35449 * lisp/ffap.el (ffap-alist): Document that ffap sets the match data
35450 while walking 'ffap-alist'.
35452 2017-01-03 Eli Zaretskii <eliz@gnu.org>
35454 Generate nt/gnulib.mk from lib/gnulib.mk
35456 This was proposed by Paul Eggert <eggert@cs.ucla.edu>,
35457 with the purpose of avoiding manual maintenance of
35460 * nt/gnulib-modules-to-delete.cfg: New file.
35461 * nt/Makefile.in (AM_V_GEN, am__v_GEN_, am__v_GEN_0)
35462 (am__v_GEN_1): New variables.
35463 (${srcdir}/gnulib.mk): Rules to generate gnulib.mk from
35464 lib/gnulib.mk and list of modules in gnulib-modules-to-delete.cfg.
35466 * make-dist (nt): Add gnulib-modules-to-delete.cfg to the list of
35468 * configure.ac (GNULIB_MK): Compute the value according to $opsys.
35469 * autogen.sh: Create nt/gnulib.mk if it doesn't exist, before
35470 running autoreconf.
35471 * Makefile.in (gnulib_mk): New variable.
35472 ($(srcdir)/nt/gnulib.mk): Rule to produce it.
35473 (AUTOMAKE_INPUTS): Use $(gnulib_mk) instead of a literal file
35475 * .gitignore: Add nt/gnulib.mk.
35477 * src/w32.c (acl_errno_valid): Implement it here, as we no longer
35478 build the acl-permissions module from Gnulib.
35480 2017-01-03 Noam Postavsky <npostavs@gmail.com>
35482 Handle multibyte chars spanning chunks in term.el
35484 * lisp/term.el (term-terminal-undecoded-bytes): New variable.
35485 (term-mode): Make it buffer local. Don't make `term-terminal-parameter'
35486 buffer-local twice.
35487 (term-emulate-terminal): Check for bytes of incompletely decoded
35488 characters, and save them until the next call when they can be fully
35489 decoded (Bug#25288).
35491 2017-01-03 Michael Albinus <michael.albinus@gmx.de>
35493 Finish work on filenotify-tests.el
35495 * test/lisp/filenotify-tests.el (file-notify--test-monitors):
35497 (file-notify--test-cleanup, file-notify--test-monitor): Use it.
35498 (file-notify--test-read-event, file-notify-test02-events)
35499 (file-notify-test04-file-validity): Handle "gvfs-monitor-dir.exe".
35500 (file-notify-test03-autorevert)
35501 (file-notify-test08-watched-file-in-watched-dir):
35502 Set `file-notify--test-desc' for proper work of
35503 `file-notify--test-monitor'. (Bug#21804)
35505 2017-01-02 Michael Albinus <michael.albinus@gmx.de>
35507 Check also for "gvfs-monitor-dir.exe" in Tramp
35509 * lisp/net/tramp-sh.el (tramp-get-remote-gvfs-monitor-dir): Check also
35510 for "gvfs-monitor-dir.exe".
35512 2017-01-02 Eli Zaretskii <eliz@gnu.org>
35514 Fix compilation --without-x
35516 * src/composite.c (autocmp_chars) [HAVE_WINDOW_SYSTEM]: Call
35517 font_range only if it is compiled in. (Bug#25334)
35519 2017-01-02 Sašo Živanović <saso.zivanovic@guest.arnes.si>
35521 Fix RefTeX to show table of contents for dtx files (tiny change)
35523 * lisp/textmodes/reftex.el (reftex-compile-variables): Change the
35524 section regexp so that it accepts lines starting with the comment
35525 character. (tiny change)
35526 * lisp/textmodes/reftex-parse.el (reftex-parse-from-file): Filter
35527 gathered toc entries, accepting a commented entry if and only if the
35528 source file is a ".dtx" file. (tiny change)
35530 2017-01-02 Paul Eggert <eggert@cs.ucla.edu>
35532 Remove mistakenly-added files
35534 Problem reported by Glenn Morris in:
35535 https://lists.gnu.org/r/emacs-devel/2017-01/msg00008.html
35536 * lisp/gnus/gnus-ems.el, lisp/gnus/gnus-sync.el:
35537 * lisp/gnus/messcompat.el, lisp/nxml/nxml-glyph.el:
35538 * lisp/nxml/nxml-uchnm.el, lisp/obsolete/awk-mode.el:
35539 * lisp/obsolete/iso-acc.el, lisp/obsolete/iso-insert.el:
35540 * lisp/obsolete/iso-swed.el, lisp/obsolete/resume.el:
35541 * lisp/obsolete/scribe.el, lisp/obsolete/spell.el:
35542 * lisp/obsolete/swedish.el, lisp/obsolete/sym-comp.el:
35543 Remove files that were added by mistake during a merge.
35545 2017-01-01 Noam Postavsky <npostavs@gmail.com>
35547 Warn about incomplete untarring of link files
35549 The current tar-mode doesn't really support unpacking symlinks, it
35550 simply creates an empty file of the same name.
35552 * lisp/tar-mode.el (tar--describe-as-link): New function extracted from
35553 `tar--check-descriptor'.
35554 (tar-untar-buffer): Use it to warn about imperfectly untarred link
35557 2017-01-01 Noam Postavsky <npostavs@gmail.com>
35559 Remove sh-mode's skeleton-end-hook
35561 * lisp/progmodes/sh-script.el (sh-mode): Remove local setting of
35562 `skeleton-end-hook', `skeleton-insert' already does `newline-and-indent'
35563 and also respects `skeleton-end-newline' (Bug#16634).
35565 2017-01-01 Paul Eggert <eggert@cs.ucla.edu>
35567 * nt/gnulib.mk (stdint.h): Update to match lib/gnulib.mk here.
35569 2017-01-01 Mark Oteiza <mvoteiza@udel.edu>
35573 Since tmux version 2.1, new tmux terminfos are shipped due to oddities
35574 with xterm and screen terminfos. This is simply a duplication of
35575 term/screen.el with screen -> tmux.
35576 * lisp/term/tmux.el: New file.
35578 2017-01-01 Philipp Stephani <phst@google.com>
35580 Fix encoding of JSON surrogate pairs
35582 JSON requires that such pairs be treated as UTF-16 surrogate pairs, not
35583 individual code points; cf. Bug #24784.
35585 * lisp/json.el (json-read-escaped-char): Fix decoding of surrogate
35587 (json--decode-utf-16-surrogates): New defun.
35589 * test/lisp/json-tests.el (test-json-read-string): Add test for
35592 2017-01-01 Michael Albinus <michael.albinus@gmx.de>
35594 Remove tramp-gw.el, which was synced from emacs-25 by accident
35596 2017-01-01 Paul Eggert <eggert@cs.ucla.edu>
35598 Do not use Gnulib’s m4/wint_t.m4.
35600 * admin/merge-gnulib: Remove m4/wint_t.m4 when merging.
35601 Fix typo so that warn-on-use.m4 is removed too.
35602 * configure.ac (gt_TYPE_WINT_T): New macro, replacing Gnulib’s.
35603 * m4/wint_t.m4: Remove.
35605 2017-01-01 Paul Eggert <eggert@cs.ucla.edu>
35607 Merge from gnulib, continued
35609 * m4/wint_t.m4: New file, copied from gnulib.
35611 2017-01-01 Paul Eggert <eggert@cs.ucla.edu>
35613 Update copyright year to 2017 in master
35615 Run admin/update-copyright in the master branch. This fixes files
35616 that were not already fixed in the emacs-25 branch before it was
35619 2017-01-01 Paul Eggert <eggert@cs.ucla.edu>
35621 Remove test/automated detritus from merge
35623 2017-01-01 Paul Eggert <eggert@cs.ucla.edu>
35628 2016-12-19 stdint: Fix WINT_MAX to match wint_t on mingw
35629 2016-12-18 getopt: Fix link error for users of getopt() in <unistd.h>
35630 2016-12-17 getlogin: Port to newer mingw
35631 2016-12-17 stdint: Fix WINT_MAX to match wint_t on MSVC
35632 2016-12-17 Avoid redefinition errors on MSVC
35633 * lib/getopt.in.h, lib/stdint.in.h, lib/stdio.in.h, lib/unistd.in.h:
35634 * m4/stdint.m4, m4/unistd_h.m4:
35636 * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
35637 Plus, this commit updates the indenting on copyright notices to
35638 match that of gnulib.
35640 2017-01-01 Paul Eggert <eggert@cs.ucla.edu>
35642 Merge from origin/emacs-25
35644 2e2a806 Fix copyright years by hand
35645 5badc81 Update copyright year to 2017
35647 2017-01-01 Paul Eggert <eggert@cs.ucla.edu>
35649 Merge from origin/emacs-25
35651 665be69 ; Update ChangeLog.2 and AUTHORS files
35656 2017-01-01 Paul Eggert <eggert@cs.ucla.edu>
35658 Merge from origin/emacs-25
35660 697167b ; Improve wording of previous change in variables.texi
35661 d7973e8 Document 'default-toplevel-value' and 'set-default-toplevel-v...
35662 8b71826 Don't modify minibuffer variables globally
35663 5b5e036 Revert to pre-25.1 behavior in ffap
35664 19994a1 * lisp/ffap.el: Fix obsolete comment referencing ffap-bug.
35665 3ace730 Attempt to fix 64-bit AIX build
35666 f69bd79 Clarify usage of 'ediff-cleanup-hook' (Bug#24675)
35667 c04ac8a Document that variable binding order is unspecified
35668 272554a * lisp/desktop.el (desktop-buffers-not-to-save): Doc fix.
35669 08de101 Fix M-x hints on Mac port
35670 86a297a Work around reporting a dpi change in apply_xft_settings
35671 cf1f985 ; lisp/skeleton.el (skeleton-insert): Fix typo in last change
35672 9e1209d Amend the version number of CC Mode 5.33 -> 5.32.99. Don't m...
35673 88cdf14 Improve skeleton docstrings
35675 2017-01-01 Paul Eggert <eggert@cs.ucla.edu>
35677 Merge from origin/emacs-25
35679 4179238 Improve documentation of 'w32-scroll-lock-modifier'
35681 2017-01-01 Paul Eggert <eggert@cs.ucla.edu>
35683 Merge from origin/emacs-25
35685 9adb101 Document 'describe-fontset'
35686 229315c ; Add missing symbol quoting.
35687 3d94931 Repair desktop restoration on text terminals
35688 43022f9 Ignore forward-sexp-function in js-mode indentation code
35689 b19fb49 Improve documentation of 'define-coding-system'
35690 467768f Fix Bug#25162
35691 6db78ae Fix a typo in define-abbrev-table
35692 5f7d906 Bump makeinfo requirement from 4.7 to 4.13
35693 442e2f6 Fixes related to select-enable-clipboard
35694 e4ac450 Define struct predicate before acccesors
35695 08decbd Doc fix for vc-git
35696 5531e75 Further improve make-dist checking
35697 953bf67 Improve previous make-dist change
35698 129645a Make make-dist --snapshot do some sanity checks
35703 2017-01-01 Alan Mackenzie <acm@muc.de>
35705 Give eval-and-compile a correct edebug spec. Fixes bug #16184 properly.
35707 * lisp/emacs-lisp/edebug.el (edebug_offset_indices): Revert abortive commit
35708 from Thu Dec 29 09:22:36 2016 +0000 which didn't really fix the bug.
35710 * lisp/emacs-lisp/byte-run.el (eval-and-compile): Change the edebug spec from
35711 t to (&rest def-form).
35713 2017-01-01 Paul Eggert <eggert@cs.ucla.edu>
35715 Fix copyright years by hand
35717 These are dates that admin/update-copyright did not update, or
35718 updated incorrectly.
35720 2017-01-01 Paul Eggert <eggert@cs.ucla.edu>
35722 Update copyright year to 2017
35724 Run admin/update-copyright.
35726 2016-12-31 Paul Eggert <eggert@cs.ucla.edu>
35728 Clarify internal_catch etc.
35730 The recent change to internal_catch and friends relied on some
35731 confusion I introduced to the code in 2013. Attempt to fix
35732 the confusion by clarifying the code instead. This saves an
35733 instruction and a load dependency in the typical case.
35734 * src/eval.c (internal_catch, internal_condition_case)
35735 (internal_condition_case_1, internal_condition_case_2)
35736 (internal_condition_case_n): Undo the previous change. Instead,
35737 use use ‘c’ rather than ‘handlerlist’ in the typical case.
35738 Also, use ‘eassert’ rather than ‘clobbered_eassert’ when possible.
35740 2016-12-31 Ken Brown <kbrown@cornell.edu>
35742 Further improve filenotify-tests.el
35744 * test/lisp/filenotify-tests.el
35745 (file-notify--test-read-event): Adapt to file monitors of type
35746 GFamFileMonitor, which occur on Cygwin.
35747 (file-notify--test-monitor): Update doc string.
35749 2016-12-31 Paul Eggert <eggert@cs.ucla.edu>
35751 * src/xdisp.c (string_from_display_spec): Simplify.
35753 2016-12-31 Alan Third <alan@idiocy.org>
35755 Rework NS event handling (bug#25265)
35757 * src/nsterm.m (unwind_apploopnr): Remove.
35758 (ns_read_socket): Remove references to apploopnr. Make processing the
35759 NS event loop conditional on being in the main thread.
35760 (ns_select): Remove references to apploopnr. Remove all fd_handler
35761 related stuff. Check if there are events waiting on the NS event
35762 queue rather than running the event loop. Remove unused variables and
35764 (fd_handler): Remove.
35765 (ns_term_init): Remove creation of fd_handler thread.
35766 (hold_event, EmacsApp:sendEvent, EmacsView:mouseMoved,
35767 EmacsView:windowDidExpose): Remove send_appdefined.
35768 (ns_send_appdefined): Always check the event queue for
35769 applicationDefined events rather than relying on send_appdefined var.
35770 * src/nsterm.h: Remove reference to fd_handler method.
35772 2016-12-31 Philipp Stephani <phst@google.com>
35774 Checkdoc: use syntax functions instead of regex
35776 In checkdoc.el, get rid of the error-prone regex to find definition
35777 forms, and use existing syntax-based navigation functions instead.
35778 This fixes a corner case with one-argument `defvar' forms.
35780 * lisp/emacs-lisp/checkdoc.el (checkdoc--next-docstring): New function.
35781 (checkdoc-next-docstring, checkdoc-defun): Use it.
35782 * test/lisp/emacs-lisp/checkdoc-tests.el (checkdoc-tests--next-docstring):
35785 2016-12-31 Eli Zaretskii <eliz@gnu.org>
35787 Don't define NOMINMAX on MS-Windows
35789 * src/callproc.c (NOMINMAX) [WINDOWSNT]: Don't define. This is no
35790 longer needed with the current sources and MinGW headers, while
35791 defining NOMINMAX causes an annoying compiler warning.
35793 2016-12-31 Chris Gregory <czipperz@gmail.com> (tiny change)
35795 Simplify code in eval.c that calls 'setjmp'
35797 * src/eval.c (internal_catch, internal_condition_case)
35798 (internal_condition_case_1, internal_condition_case_2)
35799 (internal_condition_case_n): Factor out the common tail of the
35802 2016-12-31 Chris Gregory <czipperz@gmail.com> (tiny change)
35804 Simplify code in 'string_from_display_spec'
35806 * src/xdisp.c (string_from_display_spec): Eliminate a redundant
35807 test before the loop.
35809 2016-12-31 Eli Zaretskii <eliz@gnu.org>
35811 Serialize random number generation on MS-Windows
35813 * src/w32.c (rand_as183): New function.
35814 (random): Use it instead of MS runtime's 'rand'. This avoids
35815 producing separate and identical random series in each Lisp
35817 (srandom): Modify to supply 3 seed values to 'rand_as183'.
35819 2016-12-31 Michael Albinus <michael.albinus@gmx.de>
35821 * src/gfilenotify.c (Fgfile_monitor_name): Return interned symbol.
35823 2016-12-30 Ken Raeburn <raeburn@raeburn.org>
35825 Don't call xg_select for a NextStep build.
35827 NextStep builds use glib but don't use xg_select.
35829 * src/process.c (wait_reading_process_output): Don't call xg_select
35830 for a NextStep build.
35832 2016-12-30 Ken Raeburn <raeburn@raeburn.org>
35834 Increase the obarray size.
35836 In a typical GNU/Linux/X11 build, we wind up with over 15k symbols by
35837 the time we've started. The old obarray size ensured an average chain
35838 length of 10 or more.
35840 * src/lread.c (OBARRAY_SIZE): Increase to 15121.
35842 2016-12-30 Ken Raeburn <raeburn@raeburn.org>
35844 Initialize thread support for Xlib.
35846 * src/xterm.c (x_initialize) [THREADS_ENABLED]: Call XInitThreads
35847 before doing anything else with X.
35849 2016-12-30 Paul Eggert <eggert@cs.ucla.edu>
35851 Rename primary_thread to main_thread
35853 This avoids the confusion of using two different phrases "main thread"
35854 and "primary thread" internally to mean the same thing. See:
35855 https://lists.gnu.org/r/emacs-devel/2016-12/msg01142.html
35856 * src/thread.c (main_thread): Rename from primary_thread,
35857 since the new name no longer clashes with main_thread_id
35858 and Emacs internals normally call this the "main thread".
35859 (init_main_thread): Rename from init_primary_thread.
35860 (main_thread_p): Rename from primary_thread_p.
35863 2016-12-30 Paul Eggert <eggert@cs.ucla.edu>
35865 Rename main_thread to main_thread_id and simplify
35867 * src/emacs-module.c: Include syssignal.h, for main_thread_id.
35868 [HAVE_PTHREAD]: Do not include pthread.h.
35869 (main_thread): Remove. All uses replaced by main_thread_id,
35870 or by dwMainThreadId on NT. Since the HAVE_PTHREAD code is now using
35871 the main_thread_id established by sysdep.c, there is no need for a
35872 separate copy of the main thread ID here.
35873 (module_init): Remove. All uses removed.
35874 * src/sysdep.c (main_thread_id) [HAVE_PTHREAD]:
35875 Rename from main_thread. All uses changed. Now extern.
35877 2016-12-30 Michael Albinus <michael.albinus@gmx.de>
35879 * src/gfilenotify.c (Fgfile_monitor_name): Return a symbol.
35881 2016-12-30 Paul Eggert <eggert@cs.ucla.edu>
35883 * src/sysdep.c (deliver_process_signal): Improve comment.
35885 2016-12-30 Alan Mackenzie <acm@muc.de>
35887 CC Mode: Fix the fontification of a spuriously recognized enum member.
35889 The "enum" was in an argument list, but triggered the fontification of a
35890 following identifier in the function block as though it were in an enum
35893 * lisp/progmodes/cc-fonts.el (c-font-lock-enum-body): New function.
35894 (c-basic-matchers-after): Replace the inline stanza for enum elements with a
35895 call to c-font-lock-enum-body.
35897 * lisp/progmodes/cc-langs.el (c-enum-clause-introduction-re): New language
35900 2016-12-30 Nicolas Petton <nicolas@petton.fr>
35902 Bump Emacs version to 25.1.91
35906 * msdos/sed2v2.inp:
35907 * nt/README.W32: Bump Emacs version.
35908 * lisp/ldefs-boot.el: Update.
35910 2016-12-30 Eli Zaretskii <eliz@gnu.org>
35912 Attempt to fix crashes with threads in GTK builds
35914 * src/xgselect.c (xg_select): Call pselect via thread_select, not
35915 directly, to avoid running Lisp (via unblock_input) when more than
35916 one thread could be running. (Bug#25247)
35917 * src/process.c (wait_reading_process_output) [HAVE_GLIB]: Call
35918 xg_select directly instead of through thread_select.
35919 * src/xgselect.h (xg_select): Last 2 arguments are no longer
35920 'const', for consistency with thread_select.
35922 2016-12-30 Arash Esbati <arash.esbati@gmail.com>
35924 Add entry for biblatex
35926 * lisp/textmodes/reftex-vars.el (reftex-cite-format-builtin): Add
35927 entry for biblatex macros.
35929 2016-12-30 Alan Mackenzie <acm@muc.de>
35931 Backport: Remove an ambiguity from defvar's doc string. Fixes bug #25292.
35933 The ambiguity was whether INITVALUE is evaluated when it's not going to be
35934 used to set SYMBOL's value.
35936 * src/eval.c (defvar): Rewrite a paragraph of the doc string.
35938 (cherry picked from commit 8295e97f18490a535d1188a3daf0b0fd1bf4fa0d)
35940 2016-12-30 Tino Calancha <tino.calancha@gmail.com>
35942 ffap-string-at-point: Limit max length of active region
35944 Prevents that 'ffap-guesser' waste time checking large strings
35945 which are likely not valid candidates (Bug#25243).
35946 * lisp/ffap.el (ffap-max-region-length): New variable.
35947 (ffap-string-at-point): Use it.
35948 * test/lisp/ffap-tests.el: New test suite.
35949 (ffap-tests-25243): Add test for this bug.
35951 2016-12-30 Thien-Thi Nguyen <ttn@gnu.org>
35953 last-chance: Also ignore NEWS files + typo fixes
35955 * admin/last-chance.el: Fix typo in copyright notice.
35956 (last-chance-uninteresting-regexps): Add entry to match NEWS files.
35957 (last-chance-cleanup): Fix typo in docstring.
35959 2016-12-29 Mike Kupfer <mkupfer@alum.berkeley.edu>
35961 * lisp/mh-e/mh-e.el (mh-fetch-x-image-url): Fix a docstring typo.
35963 2016-12-29 Alan Mackenzie <acm@muc.de>
35965 Remove an ambiguity from defvar's doc string. Fixes bug #25292.
35967 The ambiguity was whether INITVALUE is evaluated when it's not going to be
35968 used to set SYMBOL's value.
35970 * src/eval.c (defvar): Rewrite a paragraph of the doc string.
35972 2016-12-29 Michael Albinus <michael.albinus@gmx.de>
35974 Improve filenotify-tests.el
35976 * src/inotify.c (Finotify_valid_p):
35977 * src/kqueue.c (Fkqueue_valid_p):
35978 * src/w32notify.c (Fw32notify_valid_p):
35979 * src/gfilenotify.c (Fgfile_valid_p): Fix typo in docstring.
35980 (Fgfile_monitor_name): New defun.
35981 (syms_of_gfilenotify): Declare Sgfile_monitor_name.
35983 * test/lisp/filenotify-tests.el (file-notify--test-read-event):
35984 New defun, derived from `file-notify--test-read-event-timeout'.
35985 Replace all calls of `read-event' by this.
35986 (file-notify--test-timeout): Fix docstring.
35987 (file-notify--test-monitor): New defun.
35988 (file-notify--deftest-remote): Do not bind
35989 `file-notify--test-read-event-timeout' anymore.
35990 (file-notify-test00-availability): Print also monitor, if existent.
35991 (file-notify--test-with-events): Add an additional
35992 `file-notify--test-read-event' call, in order to get it work
35993 after `file-notify-add-watch'. Remove special timeout for cygwin.
35994 (file-notify-test02-events): Make a better check for cygwin.
35995 (file-notify-test06-many-events): Improve event list for cygwin.
35996 (file-notify-test08-watched-file-in-watched-dir): Add cygwin case.
35998 2016-12-29 Alan Mackenzie <acm@muc.de>
36000 Partially correct fontification of "(b*3)", and the like, in C++ Mode
36002 This problem is caused by the fundamental ambiguity in C++ between
36003 argument declarations and initialization clauses.
36005 * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): If we have an open
36006 paren preceded by an arithmetic operator, we give this the context nil, not
36009 * lisp/progmodes/cc-langs.el (c-arithmetic-operators, c-arithmetic-op-regexp):
36010 New lang consts and vars.
36012 2016-12-29 Alan Mackenzie <acm@muc.de>
36014 Initialize edebug-offset-indices to a cons, not nil. Fixes bug #16184.
36016 This is because there are times when this variable is changed by setcar before
36017 an atom is pushed onto it by debug-enter. This happens, for example, whilst
36018 instrumenting c-font-lock-declarations in .../lisp/progmodes/cc-fonts.el.
36020 * lisp/emacs-lisp/edebug.el (edebug-offset-indices): initialize to '(0).
36022 2016-12-28 Stefan Monnier <monnier@iro.umontreal.ca>
36024 * lisp/emacs-lisp/inline.el: Fix apply-conversion (bug#25280)
36026 (inline--dont-quote): Quote the function with #' when passing it to `apply'.
36027 Cherry picked from commit e6161f648903d821865b9610b3b6aa0f82a5dcb7.
36029 2016-12-27 Michael Albinus <michael.albinus@gmx.de>
36031 Release Tramp 2.3.1
36033 * doc/misc/trampver.texi:
36034 * lisp/net/trampver.el: Change version to "2.3.1".
36036 * lisp/net/tramp.el (tramp-eshell-directory-change): Add it to
36037 `eshell-mode-hook' but `eshell-first-time-mode-hook'.
36039 * lisp/net/tramp-compat.el (tramp-compat-file-name-quoted-p)
36040 (tramp-compat-file-name-quote)
36041 (tramp-compat-file-name-unquote): Embed them in `eval-and-compile'.
36043 2016-12-27 Paul Eggert <eggert@cs.ucla.edu>
36045 Simplify prog1 implementation
36047 Inspired by a suggestion from Chris Gregory in:
36048 https://lists.gnu.org/r/emacs-devel/2016-12/msg00965.html
36049 On my platform, this generates exactly the same machine insns.
36050 * src/eval.c (prog_ignore): Rename from unwind_body, since
36051 it’s more general than that. All callers changed.
36052 (Fprog1): Simplify by using prog_ignore.
36053 (Fwhile): Clarify by using prog_ignore.
36055 2016-12-27 Stefan Monnier <monnier@iro.umontreal.ca>
36057 * lisp/emacs-lisp/inline.el: Fix apply-conversion (bug#25280)
36059 (inline--dont-quote): Quote the function with #' when passing it to `apply'.
36061 2016-12-27 Mark Oteiza <mvoteiza@udel.edu>
36063 Remove a use of lexical-let
36065 * lisp/gnus/message.el (message-completion-function): Just use let,
36066 since the file now uses lexical-binding.
36068 2016-12-27 Ken Brown <kbrown@cornell.edu>
36070 Improve filenotify-tests.el on Cygwin (Bug #21804)
36072 * test/lisp/filenotify-tests.el [CYGWIN]
36073 (file-notify--test-read-event-timeout): Increase.
36074 (file-notify--test-with-events): Add delay before executing body.
36075 (file-notify-test02-events, file-notify-test04-file-validity):
36076 Adjust expected results.
36078 2016-12-27 Eli Zaretskii <eliz@gnu.org>
36080 Fix expand-file-name on DOS_NT systems when /: escaping is used
36082 * src/fileio.c (Fexpand_file_name) [DOS_NT]: Don't expand "~" in
36083 file names escaped by "/:". Don't recursively expand
36084 default-directory escaped with "/:" which is not followed by a
36085 drive spec. (Bug#25183)
36087 2016-12-27 Bake Timmons <65pandas@gmail.com>
36089 Fix `mail-sources' value of `(group)' in Gnus manual (bug#25275)
36091 * doc/misc/gnus.texi (Mail Source Specifiers):
36092 Replace wrong `mail-sources' value of `(group)' in Gnus manual with
36093 the correct `((group))' value. (bug#25275) (tiny change)
36095 2016-12-27 Bake Timmons <65pandas@gmail.com>
36097 Fix bug in customizing `mail-sources' variable (bug#25274)
36099 * lisp/gnus/mail-source.el (mail-sources): Use list instead of cons
36100 for lone argument. (bug#25274) (tiny change)
36102 2016-12-26 Philipp Stephani <phst@google.com>
36104 Checkdoc: Don't require a space before an arg list
36108 * lisp/emacs-lisp/checkdoc.el (checkdoc-defun-regexp): Don't require a
36109 space before a argument list.
36110 * test/lisp/emacs-lisp/checkdoc-tests.el (checkdoc-tests--bug-24998):
36113 2016-12-26 Eli Zaretskii <eliz@gnu.org>
36115 Document 'default-toplevel-value' and 'set-default-toplevel-value'
36117 * doc/lispref/variables.texi (Default Value): Document
36118 'default-toplevel-value' and 'set-default-toplevel-value'.
36120 2016-12-25 Michihito Shigemura <m_shigemura@shigemk2.com> (tiny change)
36122 Add zshrc and zshenv detection to sh-mode (bug#25217)
36124 * lisp/progmodes/sh-script.el (sh-mode): Add zsh string-match
36126 2016-12-25 Paul Eggert <eggert@cs.ucla.edu>
36128 Fix typo in lisp.h reordering patch
36130 * src/lisp.h (XUNTAG) [!USE_LSB_TAG]: Remove duplicate defn.
36131 Reported by Eli Zaretskii (Bug#25128#19).
36133 2016-12-25 Paul Eggert <eggert@cs.ucla.edu>
36135 regex.h now includes sys/types.h
36137 * src/dired.c, src/emacs.c, src/search.c, src/syntax.c, src/thread.h:
36138 Do not include sys/types.h; no longer needed.
36139 * src/regex.h: Include <sys/types.h>, as that's what Gnulib and
36140 glibc regex.h does, and POSIX has blessed this since 2008.
36142 2016-12-25 Paul Eggert <eggert@cs.ucla.edu>
36144 Reorder lisp.h to declare types before using them
36146 This puts basic functions for types to be after the corresponding
36147 type definitions. This is a more-common programming style in C,
36148 and will make it easier to port Emacs to gcc
36149 -fcheck-pointer-bounds, since the functions now have access to the
36150 corresponding types' sizes. This patch does not change the code;
36151 it just moves declarations and definitions and removes
36152 no-longer-needed forward declarations (Bug#25128).
36153 * src/buffer.c, src/data.c, src/image.c:
36154 Include process.h, for PROCESSP.
36155 * src/buffer.h (BUFFERP, CHECK_BUFFER, XBUFFER):
36156 * src/process.h (PROCESSP, CHECK_PROCESS, XPROCESS):
36157 * src/termhooks.h (TERMINALP, XTERMINAL):
36158 * src/window.h (WINDOWP, CHECK_WINDOW, XWINDOW):
36159 * src/thread.h (THREADP, CHECK_THREAD, XTHREAD, MUTEXP, CHECK_MUTEX)
36160 (XMUTEX, CONDVARP, CHECK_CONDVAR, XCONDVAR):
36161 Move here from lisp.h.
36162 * src/intervals.h: Include buffer.h, for BUFFERP.
36163 Include lisp.h, for Lisp_Object.
36164 * src/lisp.h: Reorder declarations and definitions as described
36165 above. Move thread includes to be later, so that they can use the
36166 reordered definitions. Move some symbols to other headers (noted
36167 elsewhere). Remove forward decls that are no longer needed.
36168 * src/thread.h: Include systhread.h here, not in lisp.h,
36169 since lisp.h itself does not need systhread.h.
36171 2016-12-25 Leo Liu <sdl.web@gmail.com>
36173 Don't modify minibuffer variables globally
36175 * lisp/files.el (cd): Use setq-local instead. (Bug#25260)
36177 2016-12-25 Dima Kogan <dima@secretsauce.net>
36179 diff-mode auto-refines only after a successful motion
36181 Prior to this patch (if enabled) auto-refinement would kick in after all
36182 hunk navigation commands, even if the motion failed. This would result
36183 in a situation where the hunk navigation would signal an error and beep,
36184 but yet still accomplish potentially useful work, by auto-refining.
36185 This patch moves the auto-refinement code to only run when a motion was
36188 * lisp/vc/diff-mode.el (diff--internal-hunk-next,
36189 diff--internal-hunk-prev): Removed auto-refinement-triggering code
36190 * lisp/vc/diff-mode.el (diff--wrap-navigation): Added
36191 auto-refinement-triggering code
36193 2016-12-25 Dima Kogan <dima@secretsauce.net>
36195 diff-mode is able to better handle file headers
36197 This fixes a regression introduced in
36199 https://git.savannah.gnu.org/gitweb/?p=emacs.git;a=commit;h=2c8a7e50d24daf19ea7d86f1cfeaa98a41c56085
36201 This bug was filed in
36203 https://debbugs.gnu.org/cgi/bugreport.cgi?bug=25105
36205 Patches generated from a VCS such as git contain a patch message at the
36206 start, and diff-mode is now once-again able to properly able to ignore
36207 this message when issuing navigation commands around the message.
36209 * lisp/vc/diff-mode.el (diff-beginning-of-file-and-junk): More
36210 thoroughly ignore the header when looking for a beginning of file
36213 2016-12-25 Paul Eggert <eggert@cs.ucla.edu>
36215 Use libpng-config --ldflags, not --libs
36217 Problem reported by James K. Lowden (Bug#25268).
36218 * configure.ac (LIBPNG): Pass --ldflags, not --libs, to libpng-config.
36220 2016-12-24 Eli Zaretskii <eliz@gnu.org>
36222 Revert to pre-25.1 behavior in ffap
36224 * lisp/ffap.el (ffap-lax-url): Change the default to t, to produce
36225 the same behavior as in Emacs 24.x. (Bug#25264)
36226 Explain the trade-offs of customizing this in the doc string.
36228 2016-12-24 Noam Postavsky <npostavs@gmail.com>
36230 * lisp/ffap.el: Fix obsolete comment referencing ffap-bug.
36232 2016-12-24 Noam Postavsky <npostavs@gmail.com>
36234 Remove redundant `save-match-data' in whitespace.el
36236 * lisp/whitespace.el (whitespace-cleanup, whitespace-cleanup-region):
36237 (whitespace-report-region): Remove redundant `save-match-data' calls.
36239 2016-12-24 Noam Postavsky <npostavs@gmail.com>
36241 Fix whitespace eob cleanup
36243 * lisp/whitespace.el (whitespace-empty-at-eob-regexp): Match any number
36244 of empty lines at end of buffer.
36245 * test/lisp/whitespace-tests.el (whitespace-cleanup-eob): New test.
36246 (whitespace-tests--cleanup-string): New helper function for tests.
36248 2016-12-24 Hong Xu <hong@topbug.net>
36250 Fix timezone detection of parse-iso8601-time-string
36252 * lisp/calendar/parse-time.el (parse-iso8601-time-string): Fix timezone
36253 parsing. Add a doc string. (Bug#25086)
36254 * src/editfns.c (Fdecode-time): Doc fix.
36255 * doc/misc/emacs-mime.texi (time-date): Add an example for
36256 parse-iso8601-time-string.
36257 * test/lisp/calendar/parse-time-tests.el (parse-time-tests): Add
36258 tests for parse-iso8601-time-string.
36260 2016-12-24 Paul Eggert <eggert@cs.ucla.edu>
36262 Simplify exec_byte_code via moving decls etc.
36264 * src/bytecode.c (exec_byte_code): Simplify, mostly by moving
36265 initializers into decls, and by omitting some unnecessary changes
36268 2016-12-24 Paul Eggert <eggert@cs.ucla.edu>
36270 Remove interpreter’s byte stack
36272 This improves performance overall on my benchmark on x86-64,
36273 since the interpreted program-counter resides in a machine
36274 register rather than in RAM.
36275 * etc/DEBUG, src/.gdbinit: Remove xbytecode GDB command, as there
36276 is no longer a byte stack to decode.
36277 * src/bytecode.c (struct byte_stack, byte_stack_list)
36278 (relocate_byte_stack): Remove. All uses removed.
36279 (FETCH): Simplify now that pc is now local (typically, in a
36280 register) and no longer needs to be relocated.
36281 (CHECK_RANGE): Remove. All uses now done inline, in a different way.
36282 (BYTE_CODE_QUIT): Remove; now done by op_relative_branch.
36283 (exec_byte_code): Allocate a copy of the function’s bytecode,
36284 so that there is no problem if GC moves it.
36285 * src/lisp.h (struct handler): Remove byte_stack member.
36287 * src/thread.c (unmark_threads): Remove. All uses removed.
36288 * src/thread.h (struct thread_state): Remove m_byte_stack_list member.
36289 All uses removed. m_stack_bottom is now the first non-Lisp field.
36291 2016-12-24 Paul Eggert <eggert@cs.ucla.edu>
36293 BYTE_CODE_SAFE typo fix
36295 * src/bytecode.c (FETCH): Depend on the value of BYTE_CODE_SAFE,
36296 not on whether it is defined.
36298 2016-12-24 Paul Eggert <eggert@cs.ucla.edu>
36300 BYTE_CODE_SAFE cleanups
36302 * src/bytecode.c (BYTE_MAINTAIN_TOP): Remove; no longer needed.
36303 (struct byte_stack) [BYTE_MAINTAIN_TOP]:
36304 Remove unused members ‘top’ and ‘bottom’.
36305 (exec_byte_code): Nest inside { } to avoid GCC warning about
36306 jumping over declaration when compiled with -DBYTE_CODE_SAFE.
36308 2016-12-24 Thien-Thi Nguyen <ttn@gnu.org>
36310 last-chance: new utility lib for dangling deterrence
36312 * admin/last-chance.el: New file.
36314 2016-12-24 Paul Eggert <eggert@cs.ucla.edu>
36316 Use max_align_t instead of void *
36318 * src/thread.c (run_thread): Don’t assume void * is aligned enough.
36320 2016-12-23 Eli Zaretskii <eliz@gnu.org>
36322 Attempt to fix 64-bit AIX build
36324 * src/unexaix.c (make_hdr, copy_text_and_data, write_segment): Fix
36325 type-casts that assumed 32-bit pointers. (Bug#25141)
36327 2016-12-23 Philipp Stephani <phst@google.com>
36329 Clarify usage of 'ediff-cleanup-hook' (Bug#24675)
36331 * doc/misc/ediff.texi (Hooks): Clarify usage of 'ediff-cleanup-hook'
36333 2016-12-23 Philipp Stephani <phst@google.com>
36335 Document that variable binding order is unspecified
36337 * doc/lispref/variables.texi (Local Variables):
36338 * doc/misc/cl.texi (Modify Macros): Document that binding order in 'let' and
36339 'cl-letf' is unspecified.
36341 2016-12-23 Eli Zaretskii <eliz@gnu.org>
36343 Prevent infloops in redisplay due to truncate-lines and overlays
36345 * src/xdisp.c (hscroll_window_tree): Avoid inflooping in
36346 redisplay_window when a screen line ends in an overlay string with
36347 a newline. (Bug#25246)
36349 2016-12-23 Philipp Stephani <phst@google.com>
36351 Treat incomplete integer literals as errors
36355 * src/lread.c (read_integer): Treat incomplete integer literals as errors.
36356 * test/src/lread-tests.el (lread-empty-int-literal): New unit test for
36357 incomplete integer literals.
36359 2016-12-23 Eli Zaretskii <eliz@gnu.org>
36361 * lisp/desktop.el (desktop-buffers-not-to-save): Doc fix.
36363 2016-12-23 Stefan Monnier <monnier@IRO.UMontreal.CA>
36365 Fix M-x hints on Mac port
36367 * lisp/simple.el (execute-extended-command--shorter): Call
36368 input-pending-p to trigger input processing on some systems, such
36369 as Mac port. (Bug#23002)
36371 2016-12-23 Michael Albinus <michael.albinus@gmx.de>
36373 * test/lisp/net/tramp-tests.el (tramp--test-check-files): Make it robust.
36375 2016-12-23 Eli Zaretskii <eliz@gnu.org>
36377 Avoid aborts due to unaligned byte stack of threads
36379 * src/thread.c (run_thread): Make sure the pointers to thread byte
36380 stack are properly aligned. (Bug#25247)
36382 2016-12-22 Paul Eggert <eggert@cs.ucla.edu>
36384 Pacify --enable-gcc-warnings
36386 * src/charset.c (load_charset_map):
36387 * src/coding.c (decode_coding_object):
36388 * src/frame.c (make_frame):
36389 * src/window.c (Frecenter):
36390 Mark locals with UNINIT to silence false alarms from
36391 -Wmaybe-uninitialized.
36392 * src/lisp.h (SYMBOL_ALIAS, SYMBOL_BLV, SYMBOL_FWD)
36393 (SET_SYMBOL_ALIAS, SET_SYMBOL_BLV, SET_SYMBOL_FWD):
36394 Check and assume that values are nonnull. This pacifies
36395 -Wmaybe-uninitialized in Fmake_variable_buffer_local and
36396 Fmake_local_variable.
36398 2016-12-22 Eli Zaretskii <eliz@gnu.org>
36400 Fix last change with thread marking under GC_CHECK_MARKED_OBJECTS
36402 * src/thread.c (primary_thread_p): New function.
36403 * src/alloc.c (mark_object): Use 'primary_thread_p' to bypass tests
36404 meant for thread objects allocated dynamically.
36405 * src/thread.h (primary_thread_p): Add prototype.
36407 2016-12-22 Martin Rudalics <rudalics@gmx.at>
36409 Work around reporting a dpi change in apply_xft_settings
36411 * src/xsettings.c (apply_xft_settings): Don't report a change
36412 when dpi settings do not differ substantially.
36414 2016-12-22 Noam Postavsky <npostavs@gmail.com>
36416 Use completion-at-point in verilog-mode
36418 There were some functions in verilog-mode that implemented in-buffer
36419 completion, but this needlessly duplicates completion-at-point
36420 functionality, and the popup window management had problems
36421 (see Bug #23842). We need to keep them for backwards compatibility with
36422 older emacs versions, but use completion-at-point if available.
36424 * lisp/progmodes/verilog-mode.el (verilog-toggle-completions): Mark as
36425 obsolete if completion-cycle-threshold is available.
36426 (verilog-mode-map, verilog-menu): Bind completion-at-point and
36427 completion-help-at-point in preference to verilog-complete-word and
36428 verilog-show-completions, respectively.
36429 (verilog-mode): Add verilog-completion-at-point to
36430 completion-at-point-functions.
36431 (verilog-completion-at-point): New function.
36432 (verilog-show-completions, verilog-complete-word): Use it to avoid code
36435 2016-12-21 Reuben Thomas <rrt@sc3d.org>
36437 Keep default CASECHARS/NOT-CASECHARS for ispell built-in dictionaries
36439 * lisp/textmodes/ispell.el (ispell-set-spellchecker-params): Do not
36440 override CASECHARS and NOT-CASECHARS. The ispell dictionaries
36441 retain their hardwired values, and all other dictionaries are given
36444 2016-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
36446 * lisp/textmodes/tex-mode.el (tex-compile-commands): Add luatex
36447 and xetex commands.
36449 2016-12-21 Eli Zaretskii <eliz@gnu.org>
36451 Fix aborts in GC under GC_CHECK_MARKED_OBJECTS
36453 * src/alloc.c (mark_object) [GC_CHECK_MARKED_OBJECTS]: Don't abort
36454 for thread objects. They are marked via the all_threads list, and
36455 therefore don't need to be inserted into the red-black tree, so
36456 mem_find will never find them. Reported by Daniel Colascione
36457 <dancol@dancol.org> in
36458 https://lists.gnu.org/r/emacs-devel/2016-12/msg00817.html.
36460 2016-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
36462 * src/data.c (Fmake_variable_frame_local): Remove
36464 * src/lisp.h (struct Lisp_Buffer_Local_Value): Remove `frame_local'.
36466 * src/data.c (swap_in_symval_forwarding, set_internal)
36467 (set_symbol_trapped_write, make_blv, Fmake_variable_buffer_local)
36468 (Fmake_local_variable, Fkill_local_variable, Flocal_variable_p):
36469 Don't pay attention to ->frame_local any more.
36470 (syms_of_data): Remove Qtrapping_frame_local and don't defsubr
36471 Smake_variable_frame_local.
36473 * etc/NEWS (Incompatible Lisp Changes in Emacs 26.1): Announce removal
36474 of make-variable-frame-local.
36476 * lisp/help-fns.el (describe-variable): Don't handle the now impossible
36479 * lisp/subr.el (make-variable-frame-local): Remove obsolescence data.
36481 * src/frame.c (store_frame_param):
36482 * src/eval.c (specbind): Don't pay attention to ->frame_local any more.
36484 * src/widget.c (first_frame_p): Remove, unused.
36486 2016-12-21 Paul Eggert <eggert@cs.ucla.edu>
36488 Port dumping better to WSL
36490 Problem reported by Angelo Graziosi in:
36491 https://lists.gnu.org/r/emacs-devel/2016-12/msg00822.html
36492 * src/sysdep.c (disable_address_randomization):
36493 Detect buggy platforms where 'personality' always returns 0.
36495 2016-12-21 Michael Albinus <michael.albinus@gmx.de>
36497 Remove gateway methods in Tramp
36499 * doc/misc/tramp.texi (Top, Configuration): Remove section
36500 `Gateway methods', insert section `Firewalls' in menu.
36501 (History): Gateways are removed now.
36502 (Gateway methods): Remove section.
36503 (Multi-hops, Traces and Profiles): Don't reference to gateways anymore.
36504 (Firewalls): New section.
36506 * etc/NEWS: Gateway methods in Tramp have been removed.
36508 * lisp/net/tramp.el (tramp-methods): Adapt docstring.
36509 (tramp-file-name-port, tramp-accept-process-output): Simplify.
36511 * lisp/net/tramp-gw.el: Remove.
36513 * lisp/net/tramp-sh.el (tramp-gw-tunnel-method)
36514 (tramp-gw-socks-method): Remove declarations.
36515 (tramp-methods) <scp, scpx, ssh, sshx, telnet, nc, plink, pscp>:
36516 Remove `tramp-gw-args' and `tramp-default-port'. (Bug#18967)
36517 (tramp-do-copy-or-rename-file-out-of-band)
36518 (tramp-compute-multi-hops, tramp-maybe-open-connection):
36519 Remove gateway support.
36521 * test/lisp/net/tramp-tests.el (tramp-test03-file-name-defaults):
36522 Remove gateway tests.
36524 2016-12-20 Alan Mackenzie <acm@muc.de>
36526 Amend the version number of CC Mode 5.33 -> 5.32.99. Don't merge to trunk.
36528 lisp/progmodes/cc-defs.el: Amend the version number.
36529 etc/NEWS: Add an item explaining the change.
36531 2016-12-20 Tino Calancha <tino.calancha@gmail.com>
36533 files-test-read-file-in-: Delete temporary dir on exit
36535 * test/lisp/files-tests.el (files-test-read-file-in-~):
36536 Create subdir inside dir.
36538 2016-12-20 Christopher Genovese <genovese@cmu.edu>
36540 ibuffer: New filters and commands
36542 Add several new filters and improve documentation.
36544 https://lists.gnu.org/r/emacs-devel/2016-11/msg00399.html
36545 * lisp/ibuf-ext.el: Add paragraph to file commentary.
36546 (ibuffer-saved-filters, ibuffer-filtering-qualifiers)
36547 (ibuffer-filter-groups): Update doc string.
36548 (ibuffer-unary-operand): Add new function that transparently
36549 handles 'not' formats for compound filters.
36550 (ibuffer-included-in-filter-p): Handle 'not' fully; update doc string.
36551 (ibuffer-included-in-filter-p-1): Handle 'and' compound filters.
36552 (ibuffer-decompose-filter): Handle 'and' as well,
36553 and handle 'not' consistently with other uses.
36554 (ibuffer-and-filter): New defun analogous to 'ibuffer-or-filter'.
36555 (ibuffer--or-and-filter): New defun.
36556 (ibuffer-or-filter, ibuffer-and-filter): Use it.
36557 (ibuffer-format-qualifier): Handle 'and' filters as well.
36558 (ibuffer-filter-by-basename, ibuffer-filter-by-file-extension)
36559 (ibuffer-filter-by-directory, ibuffer-filter-by-starred-name)
36560 (ibuffer-filter-by-modified, ibuffer-filter-by-visiting-file):
36561 Add new pre-defined filters.
36562 (ibuffer-filter-chosen-by-completion): Add new interactive command
36563 for easily choosing a filter from the descriptions.
36564 * lisp/ibuffer.el (ibuffer-mode-map):
36565 Bind ibuffer-filter-by-basename, ibuffer-filter-by-file-extension,
36566 ibuffer-filter-by-starred-name, ibuffer-filter-by-modified,
36567 ibuffer-filter-by-visiting-file to '/b', '/.', '/*', '/i', '/v'
36568 respectively; bind 'ibuffer-or-filter', 'ibuffer-and-filter',
36569 'ibuffer-pop-filter' ,'ibuffer-pop-filter-group' and
36570 'ibuffer-filter-disable' to '/|', '/&', '/<up>', '/S-<up>'
36571 and '/ DEL' respectively.
36572 * test/lisp/ibuffer-tests.el (ibuffer-autoload): Add appropriate
36573 skip specification.
36574 Add menu entries for the new filters.
36575 (ibuffer-filter-inclusion-1, ibuffer-filter-inclusion-2
36576 ibuffer-filter-inclusion-3, ibuffer-filter-inclusion-4
36577 ibuffer-filter-inclusion-5, ibuffer-filter-inclusion-6
36578 ibuffer-filter-inclusion-7, ibuffer-filter-inclusion-8
36579 ibuffer-decompose-filter, ibuffer-and-filter
36580 ibuffer-or-filter): Add new tests; they are skipped unless
36581 ibuf-ext is loaded.
36583 2016-12-20 Mark Oteiza <mvoteiza@udel.edu>
36587 * etc/NEWS (Image-Dired): New section.
36589 2016-12-20 Mark Oteiza <mvoteiza@udel.edu>
36591 Recognize graphicsmagick in image-dired
36593 * lisp/image-dired.el (image-dired-cmd-create-thumbnail-program):
36594 (image-dired-cmd-create-thumbnail-options):
36595 (image-dired-cmd-create-temp-image-program):
36596 (image-dired-cmd-create-temp-image-options):
36597 (image-dired-cmd-create-standard-thumbnail-options):
36598 (image-dired-cmd-rotate-thumbnail-program):
36599 (image-dired-cmd-rotate-thumbnail-options): Account for existence of
36602 2016-12-20 Noam Postavsky <npostavs@gmail.com>
36604 Improve skeleton docstrings
36606 * lisp/skeleton.el (skeleton-end-newline): Remove mention of
36607 `skeleton-end-hook', its default code was moved into `skeleton-insert'.
36608 (skeleton-insert): Mention `skeleton-end-newline' and move reference to
36609 `skeleton-end-hook' above the explanation of skeleton syntax.
36611 2016-12-20 Mark Oteiza <mvoteiza@udel.edu>
36613 Implement asynchronous thumbnail generation in image-dired
36615 Additionally, all FOO-options defcustoms that were in fact shell command
36616 strings have been converted to argument lists. Another method for
36617 shrinking PNG thumbs with optipng(1) has been added.
36618 * lisp/image-dired.el: Remove TODO item in commentary.
36619 (image-dired-cmd-create-thumbnail-options):
36620 (image-dired-cmd-create-temp-image-options):
36621 (image-dired-cmd-rotate-thumbnail-options):
36622 (image-dired-cmd-rotate-original-options):
36623 (image-dired-cmd-write-exif-data-options):
36624 (image-dired-cmd-read-exif-data-options): Convert to argument lists.
36625 (image-dired-cmd-pngnq-program, image-dired-cmd-pngcrush-program):
36626 Change string type to file.
36627 (image-dired-cmd-create-standard-thumbnail-command): Remove.
36628 (image-dired-cmd-pngnq-options):
36629 (image-dired-cmd-create-standard-thumbnail-options):
36630 (image-dired-cmd-optipng-program, image-dired-cmd-optipng-options):
36632 (image-dired-queue, image-dired-queue-active-jobs):
36633 (image-dired-queue-active-limit): New variables.
36634 (image-dired-pngnq-thumb, image-dired-pngcrush-thumb):
36635 (image-dired-optipng-thumb): New functions.
36636 (image-dired-create-thumb-1): Renamed from image-dired-create-thumb.
36637 Use start-process instead of call-process. Set file modes. Trigger
36638 PNG file optimization in process sentinel.
36639 (image-dired-thumb-queue-run, image-dired-create-thumb): New functions.
36640 (image-dired-display-thumbs):
36641 (image-dired-create-thumbs): Don't expect call-process return value.
36642 (image-dired-display-image, image-dired-rotate-thumbnail): Use
36643 start-process instead of call-process.
36644 (image-dired-rotate-original, image-dired-set-exif-data):
36645 (image-dired-get-exif-data): Adapt to arguments being an arg list.
36647 2016-12-19 Andreas Schwab <schwab@linux-m68k.org>
36649 Protect change of window's buffer in vertical-motion against unwinds (bug#25209)
36651 * src/indent.c (restore_window_buffer): New function.
36652 (Fvertical_motion): Use it to restore window's buffer.
36654 2016-12-19 Glenn Morris <rgm@gnu.org>
36656 Improve default load-path for uninstalled CANNOT_DUMP builds
36658 * src/lread.c (load_path_default) [CANNOT_DUMP]:
36659 Use build load-path if we seem to be running uninstalled. (Bug#24974)
36660 I think this became an issue several years ago when we stopped
36661 using EMACSLOADPATH in the Makefiles; however this change should
36662 improve the CANNOT_DUMP uninstalled case in general.
36664 2016-12-19 Eli Zaretskii <eliz@gnu.org>
36666 Improve documentation of 'w32-scroll-lock-modifier'
36668 * doc/emacs/msdos.texi (Windows Keyboard): Document how to set up
36669 w32-scroll-lock-modifier so that Scroll Lock toggles the LED.
36671 * src/w32fns.c (syms_of_w32fns) <w32-scroll-lock-modifier>: Doc
36674 2016-12-19 Eli Zaretskii <eliz@gnu.org>
36676 Document 'describe-fontset'
36678 * doc/emacs/mule.texi (Fontsets): Document 'describe-fontset'.
36681 2016-12-19 Eli Zaretskii <eliz@gnu.org>
36683 Document 'describe-fontset'
36685 * doc/emacs/mule.texi (Fontsets): Document 'describe-fontset'.
36688 2016-12-19 Eli Zaretskii <eliz@gnu.org>
36690 Fix crashes upon C-g on Posix TTY frames
36692 * src/thread.h (struct thread_state): New member not_holding_lock.
36693 (maybe_reacquire_global_lock): Add prototype.
36694 * src/thread.c: Include syssignal.h.
36695 (maybe_reacquire_global_lock): New function.
36696 (really_call_select): Set the not_holding_lock member of the
36697 thread state before releasing the lock, and rest it after
36698 re-acquiring the lock when the select function returns. Block
36699 SIGINT while doing this to make sure we are not interrupted on TTY
36701 * src/sysdep.c (block_interrupt_signal, restore_signal_mask): New
36703 * src/syssignal.h (block_interrupt_signal, restore_signal_mask):
36705 * src/keyboard.c (read_char) [THREADS_ENABLED]: Call
36706 maybe_reacquire_global_lock. (Bug#25178)
36708 2016-12-19 Sam Steingold <sds@gnu.org>
36710 avoid Eager macro-expansion failure: (void-function string-to-list)
36712 * lisp/loadup.el [ns]: "ucs-normalize" uses `string-to-list' which is defined
36713 in "mule-util", so we have to load "mule-util" before "ucs-normalize",
36714 otherwise I get "Eager macro-expansion failure" on "make bootstrap"
36716 2016-12-19 Michael Albinus <michael.albinus@gmx.de>
36720 * lisp/ido.el (ido-add-virtual-buffers-to-list):
36721 Suppress Tramp invocation. (Bug#24980)
36723 2016-12-18 Philipp Stephani <phst@google.com>
36725 Add a new compile error regexp for Clang includes
36727 Clang uses a slight variation of GCC's include format, causing includes
36728 to be treated as warnings instead of informational messages. Use a new
36729 regular expression instead.
36731 * lisp/progmodes/compile.el
36732 (compilation-error-regexp-alist-alist): New element
36733 `clang-include' for Clang-style "included from" lines.
36734 * test/lisp/progmodes/compile-tests.el
36735 (compile-tests--test-regexps-data): Add unit test.
36737 2016-12-18 Alan Third <alan@idiocy.org>
36739 Reinstate ispell character offset (bug#25219)
36741 * lisp/textmodes/ispell.el (ispell-process-line): insert -1 where
36742 ispell-offset used to be.
36744 2016-12-18 Mark Oteiza <mvoteiza@udel.edu>
36746 Bind new image-mode scroll commands in image-dired
36748 * lisp/image-dired.el (image-dired-display-image-mode-map): Add bindings
36749 to new image-mode commands.
36751 2016-12-18 Noam Postavsky <npostavs@gmail.com>
36753 Fix rx-any with range with ?\] and ?-
36755 * lisp/emacs-lisp/rx.el: Make sure not to produce a circular
36757 * test/lisp/emacs-lisp/rx-tests.el (rx-char-any): New test.
36759 2016-12-18 Mark Oteiza <mvoteiza@udel.edu>
36761 Use floor of mtime instead of rounding for thumb property
36763 This seems to be the correct thing to do, at least more in line with
36764 what at least one other implementation does. Anything using
36765 gnome-desktop [0] effectively does the same, as
36766 gnome_desktop_thumbnail_is_valid applies atol(3) to mtime for
36767 comparison and time_t on GNU/Linux is a signed int.
36768 [0] https://git.gnome.org/browse/gnome-desktop/
36769 * lisp/image-dired.el (image-dired-create-thumb): Use floor here.
36771 2016-12-17 Reuben Thomas <rrt@sc3d.org>
36773 Fix spelling mistake in private defun name (Bug#25218)
36775 lisp/textmodes/flyspell.el (flyspell-ajust-cursor-point): Rename to
36776 `flyspell-adjust-cursor-point'.
36778 2016-12-17 Reuben Thomas <rrt@sc3d.org>
36780 Remove XEmacs support from flyspell.el (Bug#25218)
36782 lisp/textmodes/flyspell.el (flyspell-prog-mode, flyspell-mode-on):
36783 (flyspell-word, flyspell-delete-region-overlays):
36784 (flyspell-correct-word-before-point): Remove XEmacs support.
36785 (flyspell-xemacs-popup): Remove XEmacs-specific defun.
36787 2016-12-17 Michael Albinus <michael.albinus@gmx.de>
36789 More tests for Tramp
36791 * lisp/net/tramp.el (tramp-drop-volume-letter): Handle quoted
36794 * lisp/net/tramp-sh.el (tramp-make-copy-program-file-name): Quote file
36797 * test/lisp/net/tramp-tests.el (tramp-test05-expand-file-name):
36798 Mark quoted file name as absolute. (Bug#25183)
36799 (tramp--test-windows-nt-and-batch)
36800 (tramp--test-windows-nt-and-pscp-psftp-p): New defuns.
36801 (tramp--test-windows-nt-or-smb-p): Rename from
36802 `tramp--test-smb-windows-nt-p'. Adapt callees.
36803 (tramp--test-check-files): Improve checks for environment variables.
36804 (tramp-test33-special-characters)
36805 (tramp-test33-special-characters-with-stat)
36806 (tramp-test33-special-characters-with-perl)
36807 (tramp-test33-special-characters-with-ls, tramp-test34-utf8)
36808 (tramp-test34-utf8-with-stat, tramp-test34-utf8-with-perl)
36809 (tramp-test34-utf8-with-ls): Add more checks for skip.
36811 2016-12-17 Eli Zaretskii <eliz@gnu.org>
36815 * src/thread.h (struct thread_state): Fix comments.
36816 * src/process.c (wait_reading_process_output): Fix a typo in
36819 2016-12-17 Eli Zaretskii <eliz@gnu.org>
36821 Repair desktop restoration on text terminals
36823 * lisp/desktop.el (desktop-restoring-frameset-p): Test for the GUI
36824 frame here, instead of in desktop-restoring-frameset. That's
36825 because desktop-read wants to know whether frameset will actually
36826 be restored, and has fallback procedures up its sleeve when it
36827 won't be; these fallbacks need to be invoked when the frameset is
36828 not going to be restored. (Bug#24298)
36830 2016-12-17 Eli Zaretskii <eliz@gnu.org>
36832 Fix crashes on MS-Windows during dumping
36834 * src/unexw32.c (get_section_info): Make extra_bss_size be the
36835 maximum of extra_bss_size and extra_bss_size_static. This avoids
36836 computing the size of the output file smaller than it actually
36837 needs to be, which then causes copy_executable_and_dump_data to
36838 write beyond the requested size of the file mapping, thus relying
36839 on the OS roundup to page boundary to save us from ourselves. See
36840 https://lists.gnu.org/r/emacs-devel/2016-12/msg00642.html
36843 * lib/stdio-impl.h: Revert the workaround fix of not including
36846 2016-12-17 Dmitry Gutov <dgutov@yandex.ru>
36848 Ignore forward-sexp-function in js-mode indentation code
36850 * lisp/progmodes/js.el (js--multi-line-declaration-indentation)
36851 (js--maybe-goto-declaration-keyword-end):
36852 Bind forward-sexp-function to nil (bug#25215).
36854 2016-12-16 Mark Oteiza <mvoteiza@udel.edu>
36856 Be more selective clearing the image cache
36858 * lisp/image-dired.el (image-dired-create-thumbs):
36859 (image-dired-rotate-thumbnail, image-dired-refresh-thumb): Only clear
36860 the current thumbnail file from the image cache.
36862 2016-12-16 Eli Zaretskii <eliz@gnu.org>
36864 Unbreak the MinGW build
36866 * lib/stdio-impl.h [__MINGW32__]: Don't include errno.h. Without
36867 this, temacs crashes while dumping.
36869 2016-12-16 Nicolas Petton <nicolas@petton.fr>
36871 Make seq-into return the sequence when no conversion needed
36873 * lisp/emacs-lisp/seq.el (seq-into): Do not convert the sequence when
36874 no conversion is needed.
36875 * test/lisp/emacs-lisp/seq-tests.el (test-seq-into-and-identity): Add
36876 a regression test checking for identity.
36878 2016-12-16 Eli Zaretskii <eliz@gnu.org>
36880 Improve documentation of 'define-coding-system'
36882 * lisp/international/mule.el (define-coding-system): Warn against
36883 possible infinite recursion in pre-write-conversion and
36884 post-read-conversion functions. (Bug#25203)
36886 2016-12-16 Mark Oteiza <mvoteiza@udel.edu>
36888 New commands image-scroll-left and image-scroll-right
36890 * etc/NEWS: Mention them.
36891 * lisp/image-mode.el (image-scroll-left, image-scroll-right): New
36894 2016-12-16 Mark Oteiza <mvoteiza@udel.edu>
36896 More image-dired refactoring
36898 * lisp/image-dired.el (image-dired-thumbnail-mode):
36899 (image-dired-display-image-mode): Add :group 'image-dired so
36900 customize-mode works.
36901 (image-dired-display-image): Rearrange.
36902 (image-dired-copy-with-exif-file-name): This map is for side effect.
36903 (image-dired-dired-edit-comment-and-tags): Just use #'identity.
36905 2016-12-16 Mark Oteiza <mvoteiza@udel.edu>
36907 * lisp/image-dired.el: Turn on lexical-binding.
36909 2016-12-16 Mark Oteiza <mvoteiza@udel.edu>
36911 Teach image-dired to also generate large thumbs
36913 * lisp/image-dired.el (image-dired-thumbnail-storage): Add
36914 standard-large option.
36915 (image-dired-thumb-size): Add condition for standard-large storage.
36916 (image-dired-insert-thumbnail): Check for new option. Change
36917 thumbnail path conditionally.
36918 (image-dired-thumb-size): New function.
36919 (image-dired-create-thumb, image-dired-line-up-dynamic): Use it.
36921 2016-12-15 Paul Eggert <eggert@cs.ucla.edu>
36926 2016-12-14 xalloc-oversized: check for PTRDIFF_MAX too
36927 2016-12-12 fpending: port to native Windows with MSVC
36928 * .gitignore: Do not ignore lib/stdio-impl.h.
36929 * lib/fpending.c, lib/xalloc-oversized.h, m4/fpending.m4:
36931 * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
36932 * lib/stdio-impl.h:
36933 New file, copied from gnulib.
36934 * nt/gnulib.mk (EXTRA_DIST): Add stdio-impl.h.
36936 2016-12-15 Paul Eggert <eggert@cs.ucla.edu>
36938 * etc/images/icons/hicolor/scalable/mimetypes/emacs-document.svg:
36941 2016-12-15 Mark Oteiza <mvoteiza@udel.edu>
36943 Don't abuse princ and spam messages
36945 * lisp/image-dired.el (image-dired-format-properties-string): Nix princ.
36946 (image-dired-display-thumb-properties):
36947 (image-dired-dired-display-properties): Nix princ. Bind
36948 message-log-max to nil.
36950 2016-12-15 Mark Oteiza <mvoteiza@udel.edu>
36952 Inherit things from special-mode and image-mode
36954 * lisp/image-dired.el: Require image-mode library.
36955 (image-dired-thumbnail-mode-map): Remove superfluous binding.
36956 (image-dired-display-image-mode-map): Remove superfluous binding.
36957 Add movement remaps from image-mode-map.
36958 (image-dired-thumbnail-mode): Derive from special-mode.
36959 (image-dired-display-image-mode): Derive from special-mode. Call
36960 image-mode-setup-winprops.
36962 2016-12-15 Mark Oteiza <mvoteiza@udel.edu>
36964 Fix some image-dired customization types
36966 * lisp/image-dired.el (image-dired): Add info link to defgroup.
36967 (image-dired-dir, image-dired-gallery-dir): Set type to directory.
36968 (image-dired-db-file, image-dired-temp-image-file):
36969 (image-dired-cmd-create-thumbnail-program):
36970 (image-dired-cmd-create-temp-image-program):
36971 (image-dired-cmd-rotate-thumbnail-program):
36972 (image-dired-cmd-rotate-original-program):
36973 (image-dired-temp-rotate-image-file):
36974 (image-dired-cmd-write-exif-data-program):
36975 (image-dired-cmd-read-exif-data-program): Set type to file.
36976 (image-dired-create-thumb, image-dired-line-up-dynamic): Check storage
36977 type at runtime, since setting image-dired-thumb-size does not
36978 automatically set image-dired-thumb-width and image-dired-thumb-height.
36980 2016-12-15 Eli Zaretskii <eliz@gnu.org>
36982 Prevent crashes in xg_select due to concurrency
36984 * src/xgselect.c (xg_select): Don't call Glib functions that use
36985 'context' if we failed to acquire it. This means some other
36986 thread owns the context, in which case both using the context and
36987 calling block_input/unblock_input will step on that thread's toes
36988 and eventually lead to crashes. (Bug#25172)
36990 2016-12-15 Nicolas Petton <nicolas@petton.fr>
36992 Fix circular list handling in seq-mapn
36994 * lisp/emacs-lisp/seq.el (seq-mapn): Do not copy list arguments.
36995 * test/lisp/emacs-lisp/seq-tests.el (test-seq-mapn-circular-lists):
36996 Add a regression test.
36998 2016-12-15 Michael Albinus <michael.albinus@gmx.de>
37000 Check in tramp-tests.el, that environment variables are set correctly
37002 * test/lisp/net/tramp-tests.el (tramp--test-check-files):
37003 Check also, that environment variables are set correctly.
37005 2016-12-15 Dominique Quatravaux <dominique.quatravaux@epfl.ch> (tiny change)
37007 Protect environment variables with double quotes in Tramp
37009 * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
37010 Protect environment variables with double quotes.
37012 2016-12-15 Tino Calancha <tino.calancha@gmail.com>
37014 * lisp/ibuf-macs.el (define-ibuffer-filter): Wrap ,@body in a progn.
37016 2016-12-15 Mark Oteiza <mvoteiza@udel.edu>
37018 * lisp/image-dired.el (image-dired-create-thumb): Create parent directories.
37020 2016-12-14 Mark Oteiza <mvoteiza@udel.edu>
37022 * lisp/image-mode.el (image-mode-winprops-alist): Add docstring.
37024 2016-12-14 Mark Oteiza <mvoteiza@udel.edu>
37026 Recognize pngnq or pngnq-s9
37028 * lisp/image-dired.el (image-dired-cmd-pngnq-program): Also consider
37029 pngnq-s9 as a possible executable.
37031 2016-12-14 Mark Oteiza <mvoteiza@udel.edu>
37033 Update standard image-dired thumbnail location
37035 * lisp/image-dired.el (image-dired-thumb-name): Conform to the latest
37036 standard: consider XDG_CACHE_HOME, falling back on ~/.cache.
37038 2016-12-14 Mark Oteiza <mvoteiza@udel.edu>
37040 Reset window scroll when displaying an image
37042 When viewing a large image full size and scrolling, for instance, to
37043 the lower right corner, then selecting a much smaller image in the
37044 thumbnail buffer, the window stays scrolled so the new image is out of
37045 the window. One must scroll back to the "origin" to view the new
37046 displayed image, or just kill the image-dired-display-image buffer and
37047 try again. This fixes the issue.
37048 * lisp/image-dired.el (image-dired-display-window-width):
37049 (image-dired-display-window-height): Operate on a window as argument.
37050 (image-dired-display-image): Bind (image-dired-display-window) and use
37051 it. Set window vscroll and hscroll to zero when refreshing the
37054 2016-12-14 Mark Oteiza <mvoteiza@udel.edu>
37056 More image-dired polish
37058 * lisp/image-dired.el (image-dired-file-name-at-point): New function.
37059 (image-dired-thumbnail-mode, image-dired-display-image-mode): Disable
37060 undo list. Add image-dired-file-name-at-point to
37061 file-name-at-point-functions to facilitate find-file and friends.
37062 (image-dired-thumbnail-display-external):
37063 (image-dired-dired-display-external): Use start-process instead, to
37064 avoid needlessly blocking and using a shell.
37066 2016-12-13 Phillip Lord <phillip.lord@russet.org.uk>
37068 Replace ldefs-boot with a much smaller file
37070 * Makefile.in (bootstrap-build,generate-ldefs-boot): New targets.
37071 (bootstrap): Depend on bootstrap-build.
37072 * admin/ldefs-clean.el: New file.
37073 * lisp/Makefile.in (compile-first): Depend on loaddefs.el
37074 * lisp/ldefs-boot.el: Remove.
37075 * lisp/ldefs-boot-auto.el: New file.
37076 * lisp/ldefs-boot-manual.el: New file.
37077 * lisp/loadup.el: Load ldefs-boot-manual.el.
37078 * src/emacs.c (generating_ldefs_boot): New variable.
37079 (main): Check whether we are generating ldefs.
37080 * src/eval.c (autoload-do-load): Dump autoload forms to stderr when
37082 * src/lisp.h (generating_ldefs_boot): New variable.
37083 * admin/gitmerge.el, admin/make-tarball.txt, admin/notes/copyright,
37084 lisp/Makefile.in, lisp/cus-dep.el, lisp/emacs-lisp/elint.el,
37085 lisp/finder.el, lisp/loadup.el, msdos/mainmake.v2: Update reference to
37087 * admin/update_autogen: Alter mechanism for ldefs-boot generation.
37089 2016-12-13 Reuben Thomas <rrt@sc3d.org>
37091 Remove support for aspell < 0.60 (from 2004)
37093 lisp/textmodes/ispell.el (ispell-check-version): Require Aspell 0.60.
37094 (ispell-aspell-dictionary-alist): Remove check that we have Aspell 0.60.
37096 2016-12-13 Reuben Thomas <rrt@sc3d.org>
37098 Minor docstring and comment fixes to ispell.el
37100 lisp/textmodes/ispell.el (ispell-aspell-dictionary-alist): Mention
37101 ispell-aspell-dictionary-alist, not ispell-dictionary-alist.
37102 (ispell-set-spellchecker-params): Change double-single quotes to
37103 single single quotes in comment.
37105 2016-12-13 Reuben Thomas <rrt@sc3d.org>
37107 Remove unused variable
37109 * lisp/textmodes/ispell.el (current-ispell-directory): Remove.
37111 2016-12-13 Reuben Thomas <rrt@sc3d.org>
37113 Remove XEmacs-specific ispell-with-no-warnings
37115 * lisp/textmodes/ispell.el (ispell-with-no-warnings): Remove this
37116 defmacro, needed only for XEmacs.
37117 (ispell-command-loop, ispell-message): Use with-no-warnings directly.
37119 2016-12-13 Reuben Thomas <rrt@sc3d.org>
37121 Remove meaningless defconst ispell-version
37123 * lisp/textmodes/ispell.el (ispell-version): Since ispell.el is now
37124 firmly part of Emacs, and the version hasn’t changed since 2003, and
37125 isn’t used anywhere, remove it. 3rd-party code can better use the
37126 Emacs version, or feature or function checks.
37127 (ispell-check-version): No longer report ispell.el version.
37129 2016-12-13 Reuben Thomas <rrt@sc3d.org>
37131 Remove boundp test for always-bound symbol
37133 * lisp/textmodes/ispell.el (ispell-message): mail-yank-prefix is
37134 defvar’d at the top of the file, so remove a test to see if it is
37137 2016-12-13 Reuben Thomas <rrt@sc3d.org>
37139 Remove support for ispell < 3.1.12
37141 * lisp/textmodes/ispell.el (ispell-offset): Remove.
37142 (ispell-check-version): Require ispell >= 3.1.12, released in 1994.
37143 (ispell-process-line): No longer use ispell-offset.
37145 2016-12-13 Reuben Thomas <rrt@sc3d.org>
37147 Remove unused constant
37149 * lisp/textmodes/ispell.el (ispell-required-version): Remove.
37151 2016-12-13 Reuben Thomas <rrt@sc3d.org>
37153 Remove support for old versions of supercite and GNUS from ispell.el
37155 * lisp/textmodes/ispell.el (ispell-message): Require supercite >= 3.0
37156 and GNUS >= 5. Not exactly the bleeding edge!
37158 2016-12-13 Reuben Thomas <rrt@sc3d.org>
37160 Remove remaining mentions of XEmacs from ispell.el
37162 * lisp/textmodes/ispell.el (ispell-valid-dictionary-list):
37163 (ispell-add-per-file-word-list): Remove mentions of XEmacs from
37166 2016-12-13 Reuben Thomas <rrt@sc3d.org>
37168 Remove XEmacs-specific minibuffer handling code from ispell.el
37170 * lisp/textmodes/ispell.el (ispell-init-process): Assume we are not in
37173 2016-12-13 Reuben Thomas <rrt@sc3d.org>
37175 Remove XEmacs-specific horizontal scrollbar handling in ispell.el
37177 * lisp/textmodes/ispell.el (ispell-command-loop): Remove
37178 XEmacs-specific code.
37180 2016-12-13 Reuben Thomas <rrt@sc3d.org>
37182 Remove XEmacs-specific code dealing with enable-multibyte-characters
37184 * lisp/textmodes/ispell.el (ispell-decode-string):
37185 (ispell-init-process): Remove XEmacs-specific guard.
37187 2016-12-13 Reuben Thomas <rrt@sc3d.org>
37189 Remove XEmacs-specific code from ispell.el
37191 * lisp/textmodes/ispell.el (ispell-menu-xemacs): Remove
37192 (ispell-menu-map-needed): Remove XEmacs-specific check.
37193 (ispell-word): Remove XEmacs-specific extent code.
37194 (ispell-init-process): Remove XEmacs workaround for local add-hook.
37195 Assume we have set-process-query-on-exit-flag.
37196 (ispell-kill-ispell, ispell-change-dictionary): Remove XEmacs
37197 workaround for called-interactively-p.
37199 2016-12-13 Reuben Thomas <rrt@sc3d.org>
37201 Remove some commented-out code
37203 lisp/textmodes/ispell.el (ispell-process)
37204 ispell-valid-dictionary-list): Remove commented-out code.
37206 2016-12-13 Reuben Thomas <rrt@sc3d.org>
37208 Remove XEmacs and old Emacs highlighting code
37210 * lisp/textmodes/ispell.el
37211 (ispell-highlight-spelling-error-xemacs): Remove.
37212 (ispell-highlight-spelling-error): Assume display-color-p exists.
37214 2016-12-13 Reuben Thomas <rrt@sc3d.org>
37216 Assume Emacs supports [:alpha:] in regexps
37218 * lisp/textmodes/ispell.el (ispell-emacs-alpha-regexp): Remove.
37219 (ispell-set-spellchecker-params): Remove tests of
37220 ispell-emacs-alpha-regexp.
37222 2016-12-13 Reuben Thomas <rrt@sc3d.org>
37224 Remove some XEmacs-specific code from ispell.el
37226 * lisp/textmodes/ispell.el: Remove XEmacs menubar setup.
37227 (ispell-int-char): Remove.
37229 2016-12-13 Reuben Thomas <rrt@sc3d.org>
37231 Generalize over-specific documentation
37233 * lisp/textmodes/ispell.el (ispell-personal-dictionary): Rather than
37234 document precise personal wordlist filenames for only two supported
37235 spelling checkers, simply say that the default personal dictionary
37236 depends on the chosen spelling checker. The user can check the
37237 spelling checker’s documentation if necessary. This is simpler, and
37238 works for other supported (and future, or unknown) spelling checkers.
37240 2016-12-13 Reuben Thomas <rrt@sc3d.org>
37242 Remove tests for built-in functions
37244 * lisp/textmodes/ispell.el (buffer-substring-no-properties): Remove
37245 back-up definition.
37246 (ispell-add-per-file-word-list): Remove tests for comment-padright and
37247 comment-normalize-vars.
37249 2016-12-13 Reuben Thomas <rrt@sc3d.org>
37251 Remove unused ispell-looking-back
37253 * lisp/textmodes/ispell.el (ispell-looking-back): Remove unused alias.
37255 2016-12-13 Reuben Thomas <rrt@sc3d.org>
37257 Assume we have version<= for checking ispell version
37259 * lisp/textmodes/ispell.el (ispell-check-minver): Remove.
37260 (ispell-check-version): Use version<= directly.
37262 2016-12-13 Reuben Thomas <rrt@sc3d.org>
37264 Remove ispell.el pre-GNU Emacs comments
37266 * lisp/textmodes/ispell.el (Commentary): Remove original maintainer
37267 details, as Emacs version, bug report address and so forth should be
37268 used instead for this version. Remove in-line change history; use
37271 2016-12-13 Mark Oteiza <mvoteiza@udel.edu>
37273 More small fixes for image-dired
37275 * lisp/image-dired.el: Fix commentary to refer to correct Emacs manual
37277 (image-dired--with-db-file): Add declare forms.
37278 (image-dired-hidden-p): Rewrite with cl-loop. It's not necessary to
37279 run through the whole list.
37281 2016-12-13 Mark Oteiza <mvoteiza@udel.edu>
37283 Remove image-dired-kill-buffer-and-window
37285 This breaks window layout, especially when quitting a
37286 image-dired-display-image-mode buffer.
37287 * lisp/image-dired.el (image-dired-thumbnail-mode-map):
37288 (image-dired-display-image-mode-map): Replace in keymap and menu items
37289 bindings to image-dired-kill-buffer-and-window with quit-window.
37290 (image-dired-kill-buffer-and-window): Remove.
37292 2016-12-13 Mark Oteiza <mvoteiza@udel.edu>
37294 Replace image-dired-setup-dired-keybindings with a minor mode
37296 * lisp/image-dired.el (image-dired-thumbnail-mode): Fix docstring to
37297 remove mention of nonexistent image-dired-dired and to refer to the
37299 (image-dired-minor-mode-map): New keymap assimilated from
37300 image-dired-setup-dired-keybindings. In the future, the keymap parent
37301 should be removed, and perhaps also the duplicate bindings that
37302 already exist in dired-mode-map.
37303 (image-dired-setup-dired-keybindings): Remove. Replace with an
37304 obsolete function alias.
37305 (image-dired-minor-mode): New minor mode, assuming the role of
37306 image-dired-setup-dired-keybindings.
37308 2016-12-13 Paul Eggert <eggert@cs.ucla.edu>
37310 * test/src/regex-resources/PTESTS: Convert to UTF-8.
37312 2016-12-13 Noam Postavsky <npostavs@gmail.com>
37314 Clarify thread-signal semantics
37316 * doc/lispref/threads.texi (Basic Thread Functions): Explain that the
37317 thread will be signaled as soon as possible.
37319 2016-12-13 Noam Postavsky <npostavs@gmail.com>
37321 Clean up var watcher disabling on thread switching
37323 * src/data.c (Fset_default): Move code into new C level function,
37324 `set_default_internal'.
37325 (set_default_internal): New function, like `Fset_default' but also takes
37326 additional bindflag parameter.
37327 (set_internal): Only call `notify_variable_watchers' if bindflag is not
37328 SET_INTERNAL_THREAD_SWITCH.
37329 * src/eval.c (do_specbind, do_one_unbind): Add bindflag parameter,
37330 passed on to set_internal and set_default_internal. Adjust callers.
37331 (rebind_for_thread_switch, unbind_for_thread_switch): Pass
37332 SET_INTERNAL_THREAD_SWITCH to do_specbind, do_one_unbind instead of
37333 temporarily adjusting symbol's trapped_write field.
37335 2016-12-13 Glenn Morris <rgm@gnu.org>
37337 Minor fix for define-derived-mode
37339 * lisp/emacs-lisp/derived.el (define-derived-mode):
37340 Do not let eg eval-defun reset the values of syntax or abbrev tables,
37341 since they might have been defined externally. (Bug#16160)
37343 2016-12-12 Paul Eggert <eggert@cs.ucla.edu>
37345 * build-aux/git-hooks/pre-commit: Add whitespace comment.
37347 2016-12-12 Clément Pit--Claudel <clement.pitclaudel@live.com>
37349 Move backtrace to ELisp using a new mapbacktrace primitive
37351 * src/eval.c (get_backtrace_starting_at, backtrace_frame_apply)
37352 (Fmapbacktrace, Fbacktrace_frame_internal): New functions.
37353 (get_backtrace_frame, Fbacktrace_debug): Use `get_backtrace_starting_at'.
37355 * lisp/subr.el (backtrace--print-frame): New function.
37356 (backtrace): Reimplement using `backtrace--print-frame' and `mapbacktrace'.
37357 (backtrace-frame): Reimplement using `backtrace-frame--internal'.
37359 * lisp/emacs-lisp/debug.el (debugger-setup-buffer): Pass a base to
37360 `mapbacktrace' instead of searching for "(debug" in the output of
37363 * test/lisp/subr-tests.el (subr-test-backtrace-simple-tests)
37364 (subr-test-backtrace-integration-test): New tests.
37366 * doc/lispref/debugging.texi (Internals of Debugger): Document
37367 `mapbacktrace' and missing argument BASE of `backtrace-frame'.
37369 2016-12-12 Paul Eggert <eggert@cs.ucla.edu>
37371 Use C99 syntax for font drivers
37373 Problem reported by Daniel Colascione in:
37374 https://lists.gnu.org/r/emacs-devel/2016-12/msg00515.html
37375 * src/ftcrfont.c (ftcrfont_driver):
37376 * src/ftfont.c (ftfont_driver):
37377 * src/ftxfont.c (ftxfont_driver):
37378 * src/macfont.m (macfont_driver):
37379 * src/nsfont.m (nsfont_driver):
37380 * src/xfont.c (xfont_driver):
37381 * src/xftfont.c (xftfont_driver):
37382 Use C99 syntax, not the old GNU C syntax.
37384 2016-12-12 Glenn Morris <rgm@gnu.org>
37388 * lisp/gs.el: Move to lisp/obsolete. (Bug#1524)
37389 * doc/lispref/display.texi (Image Formats): Remove postscript.
37390 (PostScript Images): Remove section.
37391 * doc/lispref/elisp.texi: Update menu.
37393 2016-12-12 Glenn Morris <rgm@gnu.org>
37395 Un-revert recent Ffset change
37397 * src/data.c (Ffset): Reinstate the check for "nil".
37399 2016-12-12 Glenn Morris <rgm@gnu.org>
37401 Minor advice.el fix
37403 * lisp/emacs-lisp/advice.el (ad-preactivate-advice):
37404 Avoid setting the function definition of nil.
37405 This was happening during bootstrap of org-compat.el,
37406 apparently due to eager macro expansion of code behind
37407 a (featurep 'xemacs) test.
37409 2016-12-12 Eli Zaretskii <eliz@gnu.org>
37411 Make etags-tests work in out-of-tree builds
37413 * test/lisp/progmodes/etags-tests.el (etags-bug-158)
37414 (etags-bug-23164): Make them work in an out-of-tree build.
37415 Reported by Ken Brown <kbrown@cornell.edu>.
37417 2016-12-12 Eli Zaretskii <eliz@gnu.org>
37419 Avoid crashing if a new thread is signaled right away
37421 * src/thread.c (post_acquire_global_lock): Don't raise the pending
37422 signal if the thread's handlers were not yet set up, as that will
37423 cause Emacs to exit with a fatal error. This can happen if a
37424 thread is signaled as soon as make-thread returns, before the new
37425 thread had an opportunity to acquire the global lock, set up the
37426 handlers, and call the thread function.
37428 * test/src/thread-tests.el (thread-signal-early): New test.
37430 2016-12-12 Eli Zaretskii <eliz@gnu.org>
37432 Fix point motion in cloned buffers
37434 * src/thread.c (post_acquire_global_lock): Call
37435 set_buffer_internal_2 instead of tricking set_buffer_internal_1
37436 into resetting the current buffer even if it didn't change. This
37437 avoids bug#25165, caused by failing to record the modified values
37438 of point and mark, because current_buffer was set to NULL. Also,
37439 don't bother re-setting the buffer if there was no thread switch,
37440 as that just wastes cycles.
37441 * src/buffer.c (set_buffer_internal_2): New function, with most of
37442 the body of set_buffer_internal_1, but without the test for B
37443 being identical to the current buffer.
37444 (set_buffer_internal_1): Call set_buffer_internal_2 if B is not
37445 identical to the current buffer.
37446 * src/buffer.h (set_buffer_internal_2): Add prototype.
37448 * test/src/thread-tests.el (thread-sticky-point): New test.
37450 2016-12-12 Michael Albinus <michael.albinus@gmx.de>
37452 Further improvements in Tramp's file name unquoting
37454 * lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy)
37455 (tramp-adb-handle-write-region): Unquote localname.
37456 (tramp-adb-handle-copy-file): Implement direct copy on remote device.
37457 (tramp-adb-handle-rename-file): Quote arguments, add "-f" to force.
37459 * lisp/net/tramp.el (tramp-file-name-unquote-localname): New defun.
37460 (tramp-handle-file-name-case-insensitive-p):
37461 * lisp/net/tramp-gvfs.el (tramp-gvfs-get-file-attributes)
37462 (tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec)
37463 (tramp-gvfs-maybe-open-connection):
37464 * lisp/net/tramp-sh.el (tramp-make-copy-program-file-name):
37465 * lisp/net/tramp-smb.el (tramp-smb-get-share)
37466 (tramp-smb-get-localname): Use it.
37468 * test/lisp/net/tramp-tests.el (tramp--test-docker-p): New defun.
37469 (tramp--test-special-characters, tramp-test34-utf8)
37470 (tramp-test34-utf8-with-stat, tramp-test34-utf8-with-perl)
37471 (tramp-test34-utf8-with-ls): Use it.
37473 2016-12-12 Martin Rudalics <rudalics@gmx.at>
37475 Strengthen conditions for resizing sibling windows (Bug#25169)
37477 * lisp/window.el (window-resize, delete-window): Resize other siblings
37478 only if `window-combination-resize' equals t (Bug#25169).
37480 2016-12-12 Noam Postavsky <npostavs@gmail.com>
37482 Quote filenames containing '~' in prompts
37484 When in a directory named '~', the default value given by
37485 `read-file-name' should be quoted by prepending '/:', in order to
37486 prevent it from being interpreted as referring to the $HOME
37487 directory (Bug#16984).
37489 * lisp/minibuffer.el (minibuffer-maybe-quote-filename): New function.
37490 (completion--sifn-requote, read-file-name-default): Use it instead of
37491 `minibuffer--double-dollars'.
37492 * test/lisp/files-tests.el (files-test-read-file-in-~): Test it.
37494 2016-12-11 Eli Zaretskii <eliz@gnu.org>
37496 Undo part of last change
37500 * src/keyboard.h: Undo part of last change:
37501 input_available_clear_time is again a global variable.
37503 2016-12-11 Eli Zaretskii <eliz@gnu.org>
37505 Avoid aborts when a thread signals an error
37507 * src/thread.h (struct thread_state): Add members
37508 m_waiting_for_input and m_input_available_clear_time.
37509 (waiting_for_input, input_available_clear_time): New macros.
37510 * src/keyboard.c (waiting_for_input, input_available_clear_time):
37511 Remove; they are now macros that reference the current thread.
37513 * src/w32select.c: Don't include keyboard.h.
37515 * test/src/thread-tests.el (thread-errors): New test.
37517 2016-12-11 Philipp Stephani <phst@google.com>
37519 Clean up compile-tests.el
37521 Switch to lexical binding. Make checkdoc happy.
37523 * test/lisp/progmodes/compile-tests.el (compile--test-error-line)
37524 (compile-test-error-regexps): Instead of checking a single Boolean
37525 value, use `should' for each attribute of the message to be compared.
37526 (compile-tests--test-regexps-data): Document sixth list element
37529 2016-12-11 Michael Albinus <michael.albinus@gmx.de>
37533 * doc/emacs/files.texi (Reverting): Document
37534 auto-revert-remote-files and auto-revert-verbose.
37536 * lisp/autorevert.el (auto-revert-verbose, auto-revert-mode)
37537 (auto-revert-tail-mode, global-auto-revert-mode): Fix docstring.
37539 2016-12-11 Glenn Morris <rgm@gnu.org>
37541 Fix a typo in define-abbrev-table
37543 * lisp/abbrev.el (define-abbrev-table): Fix typo in docstring handling.
37545 2016-12-11 Glenn Morris <rgm@gnu.org>
37547 Improve previous cperl-mode change
37549 * lisp/progmodes/cperl-mode.el (cperl-mode-abbrev-table):
37550 Improve previous change.
37552 2016-12-11 Glenn Morris <rgm@gnu.org>
37554 Mark default cperl abbrevs as system ones
37556 * lisp/progmodes/cperl-mode.el (cperl-mode):
37557 Mark our abbrevs as system ones. (Bug#10934)
37559 2016-12-11 Glenn Morris <rgm@gnu.org>
37561 Revert earlier Ffset change
37563 * src/data.c (Ffset): Allow nil again, since it caused
37564 eager macro-expansion failures.
37566 2016-12-11 Glenn Morris <rgm@gnu.org>
37568 Tweaks for message bogus address detection
37570 * lisp/gnus/message.el (message-bogus-recipient-p):
37571 Do not require "@", since some mailers deliver to local addresses
37572 without one. (Bug#23054)
37573 Move "@.*@" from here...
37574 (message-bogus-addresses): ...to here, so it can be customized.
37576 2016-12-11 Glenn Morris <rgm@gnu.org>
37578 Do not allow nil to be defined as a function
37580 * lisp/emacs-lisp/byte-run.el (defun):
37581 * src/data.c (Ffset): Do not allow "nil". (Bug#25110)
37583 2016-12-11 Glenn Morris <rgm@gnu.org>
37585 Bump makeinfo requirement from 4.7 to 4.13
37587 * configure.ac: Bump makeinfo version requirement from 4.7 to 4.13.
37588 We need at least 4.8, and that may be buggy, so go for the last
37589 of the 4 series, which is 8 years old. (Bug#25108)
37591 2016-12-11 Glenn Morris <rgm@gnu.org>
37593 Fixes related to select-enable-clipboard
37595 * lisp/menu-bar.el (clipboard-yank, clipboard-kill-ring-save)
37596 (clipboard-kill-region):
37597 * lisp/eshell/esh-io.el (eshell-virtual-targets)
37598 (eshell-clipboard-append):
37599 Replace option gui-select-enable-clipboard with
37600 select-enable-clipboard; renamed October 2014. (Bug#25145)
37602 2016-12-11 Nicolas Richard <theonewiththeevillook@yahoo.fr>
37604 Add some sanity checking of defun arglist
37606 * lisp/emacs-lisp/byte-run.el (defun):
37607 Check for malformed argument lists. (Bug#15715)
37609 2016-12-11 Matt Armstrong <marmstrong@google.com> (tiny change)
37611 Minor shell-mode fix for zsh
37613 * lisp/shell.el (shell-mode): Prevent shell-dirstack-query
37614 becoming confused by zsh abbreviations. (Bug#24632)
37616 2016-12-10 Noam Postavsky <npostavs@gmail.com>
37618 Define struct predicate before acccesors
37620 The accessor functions use the predicate function, which causes problems
37621 when reloading after unload-feature: the compiler-macro property is
37622 still present on the predicate symbol, and the compiler fails to find
37623 the definition when trying to inline it into the accessor
37624 function (Bug#25088).
37626 * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Move predicate definition
37627 before field accessor definitions.
37629 2016-12-10 Andreas Schwab <schwab@linux-m68k.org>
37631 * Makefile.in (install-etc): Don't prepend $(DESTDIR) to commands in
37634 2016-12-10 Eli Zaretskii <eliz@gnu.org>
37636 Support concurrency in Emacs Lisp
37638 Merge branch 'test-concurrency'
37643 * src/systhread.h: New files.
37644 * src/xgselect.c (xg_select): Avoid using SAFE_NALLOCA and use
37645 xnmalloc unconditionally.
37646 * src/window.c (struct save_window_data): Rename current_buffer to
37648 * src/w32proc.c (sys_select): Change the function signature to
37649 closer fit 'pselect' on Posix hosts.
37651 * src/regex.h: Convert some globals to macros that reference
37652 thread-specific values.
37653 * src/process.c (pset_thread, add_non_keyboard_read_fd)
37654 (add_process_read_fd, add_non_blocking_write_fd)
37655 (recompute_input_desc, compute_input_wait_mask)
37656 (compute_non_process_wait_mask, compute_non_keyboard_wait_mask)
37657 (compute_write_mask, clear_waiting_thread_info)
37658 (update_processes_for_thread_death, Fset_process_thread)
37659 (Fprocess_thread): New functions.
37660 (enum fd_bits): New enumeration.
37661 (fd_callback_data): Add 'thread' and 'waiting_thread', rename
37662 'condition' to 'flags'.
37663 (set_process_filter_masks, create_process, create_pty)
37664 (Fmake_serial_process, finish_after_tls_connection)
37665 (connect_network_socket, deactivate_process)
37666 (server_accept_connection, wait_reading_process_output)
37667 (Fcontinue_process, Fstop_process, keyboard_bit_set)
37668 (add_timer_wait_descriptor, add_keyboard_wait_descriptor)
37669 (delete_keyboard_wait_descriptor): Use the new functions instead
37670 of manipulating fd flags and masks directly.
37671 (syms_of_process): Defsubr the new primitives.
37672 * src/print.c (print_object): Print threads, mutexes, and
37673 conditional variables.
37674 * src/lisp.h (enum pvec_type): New values PVEC_THREAD, PVEC_MUTEX,
37676 (XTHREAD, XMUTEX, XCONDVAR, THREADP, MUTEXP, CONDVARP)
37677 (CHECK_THREAD, CHECK_MUTEX, CHECK_CONDVAR): New inline functions.
37678 (XSETTHREAD, XSETMUTEX, XSETCONDVAR): New macros.
37679 (struct handler): Add back byte_stack. Rename lisp_eval_depth to
37681 * src/eval.c (specpdl_kind, specpdl_arg, do_specbind)
37682 (rebind_for_thread_switch, do_one_unbind)
37683 (unbind_for_thread_switch): New functions.
37684 (init_eval): 'handlerlist' is not malloc'ed.
37685 (specbind): Call do_specbind.
37686 (unbind_to): Call do_one_unbind.
37687 (mark_specpdl): Accept 2 arguments.
37688 (mark_specpdl): Mark the saved value in a let-binding.
37689 * src/emacs.c (main): Call init_threads_once, init_threads, and
37691 * src/data.c (Ftype_of): Support thread, mutex, and condvar
37693 (Fthreadp, Fmutexp, Fcondition_variable_p): New functions.
37694 (syms_of_data): DEFSYM and defsubr new symbols and primitives.
37695 * src/bytecode.c (struct byte_stack, FETCH, CHECK_RANGE)
37696 (BYTE_CODE_QUIT): Add back.
37697 (exec_byte_code): Add back byte stack manipulation.
37698 * src/alloc.c (cleanup_vector): Handle threads, mutexes, and
37699 conditional variables.
37700 (mark_stack): Now extern; accept additional argument 'bottom'.
37701 (flush_stack_call_func): New function.
37702 (garbage_collect_1): Call mark_threads and unmark_threads. Don't
37704 * src/.gdbinit (xbytecode): Add back.
37706 * test/src/thread-tests.el: New tests.
37707 * test/src/data-tests.el (binding-test-manual)
37708 (binding-test-setq-default, binding-test-makunbound)
37709 (binding-test-defvar-bool, binding-test-defvar-int)
37710 (binding-test-set-constant-t, binding-test-set-constant-nil)
37711 (binding-test-set-constant-keyword)
37712 (binding-test-set-constant-nil): New tests.
37714 * doc/lispref/processes.texi (Processes and Threads): New
37716 * doc/lispref/threads.texi: New file
37717 * doc/lispref/elisp.texi (Top): Include it.
37718 * doc/lispref/objects.texi (Thread Type, Mutex Type)
37719 (Condition Variable Type): New subsections.
37720 (Type Predicates): Add thread-related predicates.
37721 * doc/lispref/objects.texi (Editing Types):
37722 * doc/lispref/elisp.texi (Top): Update higher-level menus.
37724 * etc/NEWS: Mention concurrency features.
37726 2016-12-10 Eli Zaretskii <eliz@gnu.org>
37728 Fix error messages in thread.c
37730 * src/thread.c (lisp_mutex_unlock, Fcondition_wait)
37731 (Fcondition_notify, Fthread_join): Fix error messages.
37733 2016-12-10 Eli Zaretskii <eliz@gnu.org>
37735 Improve doc strings in thread.c
37737 * src/thread.c (Fmake_condition_variable, Fcondition_wait)
37738 (Fcondition_notify, Fcondition_mutex, Fcondition_name, Fmake_thread)
37739 (Fthread_join, Fall_threads): Doc fixes.
37741 2016-12-10 Eli Zaretskii <eliz@gnu.org>
37743 Fix building with check-lisp-object-type
37745 * src/thread.c (mark_one_thread): Use NILP to compare with
37746 m_saved_last_thing_searched, which is a Lisp object. Reported by
37747 Andreas Politz <politza@hochschule-trier.de>.
37749 2016-12-10 Eli Zaretskii <eliz@gnu.org>
37751 Documentation and commentary improvements
37755 * src/xgselect.c (xg_select): Improve commentary and formatting.
37757 * doc/lispref/objects.texi (Thread Type, Mutex Type)
37758 (Condition Variable Type): New subsections.
37759 (Type Predicates): Add thread-related predicates.
37760 * doc/lispref/objects.texi (Editing Types):
37761 * doc/lispref/elisp.texi (Top): Update higher-level menus.
37763 2016-12-09 Michael Albinus <michael.albinus@gmx.de>
37765 Fix further problems with quoted file names in Tramp
37767 * lisp/net/tramp.el (tramp-quoted-name-p, tramp-quote-name)
37768 (tramp-unquote-name): Move defsubst ...
37769 * lisp/net/tramp-compat.el (tramp-compat-file-name-quoted-p)
37770 (tramp-compat-file-name-quote)
37771 (tramp-compat-file-name-unquote): ... here. Adapt callees.
37773 * lisp/net/tramp-cache.el (tramp-flush-file-property)
37774 (tramp-flush-directory-property):
37775 * lisp/net/tramp-gvfs.el (tramp-gvfs-url-file-name):
37776 * lisp/net/tramp-sh.el (tramp-make-copy-program-file-name):
37777 * lisp/net/tramp-smb.el (tramp-smb-handle-copy-file)
37778 (tramp-smb-handle-substitute-in-file-name)
37779 (tramp-smb-get-share, tramp-smb-get-localname): Handle quoted files.
37781 2016-12-09 Eli Zaretskii <eliz@gnu.org>
37783 *src/sysdep.c: Fix a comment.
37785 2016-12-09 Eli Zaretskii <eliz@gnu.org>
37787 Fix compilation error on Fedora 24
37789 * src/sysdep.c [HAVE_H_ERRNO]: Remove declaration of h_errno.
37790 Reported by Paul Eggert <eggert@cs.ucla.edu>.
37792 2016-12-09 Eli Zaretskii <eliz@gnu.org>
37794 Fix compilation warnings due to prototype of thread_select
37796 * src/thread.h <int select_func>: Make the 5th and 6th arguments
37798 * src/process.c [WINDOWSNT]:
37799 * src/w32proc.c: Make the 5th and 6th argument to sys_select be
37802 2016-12-09 Eli Zaretskii <eliz@gnu.org>
37804 Fix compilation on Debian GNU/Linux
37806 * src/thread.h: Include sys/types.h, for ssize_t that regex.h
37807 uses. Reported by Robert Marshall <robert.marshall@codethink.co.uk>.
37809 2016-12-09 Eli Zaretskii <eliz@gnu.org>
37811 Fix subtle errors with let-binding of localized variables
37813 * src/eval.c (do_specbind): Don't require a "symbol" that is
37814 actually a cons cell, in order to call set-default, as there are
37815 no longer such bindings. This makes do_specbind work like the
37816 pre-concurrency implementation in specbind for bindings of
37817 forwarded symbols. Use specpdl_kind to access the type of the
37819 (specpdl_kind): New function.
37821 2016-12-09 Michael Albinus <michael.albinus@gmx.de>
37823 Document file-name-quote, file-name-unquote and file-name-quoted-p
37825 * doc/lispref/files.texi (File Name Expansion):
37826 * etc/NEWS: Mention file-name-quote, file-name-unquote and
37827 file-name-quoted-p.
37829 * lisp/files.el (file-name-non-special): Revert using
37830 file-name-quote, file-name-unquote and file-name-quoted-p.
37832 2016-12-09 Noam Postavsky <npostavs@gmail.com>
37834 Fix bad quoting of python-shell-interpreter
37836 `python-shell-calculate-command' was using `shell-quote-argument' as if
37837 it was generating a shell command, but its callers don't pass the result
37838 to a shell, and they expect to parse it with `split-string-and-unquote'.
37839 This caused problems depending on the flavor of shell quoting in
37840 effect (Bug#25025).
37842 * lisp/progmodes/python.el (python-shell-calculate-command): Use
37843 `combine-and-quote-strings' to quote the interpreter, so that it can be
37844 parsed by `python-shell-make-comint' successfully using
37845 `split-string-and-unquote'.
37847 2016-12-09 Paul Eggert <eggert@cs.ucla.edu>
37849 * src/lisp.h (struct terminal): Remove unnecessary forward decl.
37851 2016-12-08 Paul Eggert <eggert@cs.ucla.edu>
37853 Make read1 more reentrant
37855 This is needed if ‘read’ is called soon after startup, before the
37856 Unicode tables have been set up, and it reads a \N escape and
37857 needs to look up a value the Unicode tables, a lookup that in turn
37858 calls read1 recursively. Although this change doesn’t make ‘read’
37859 fully reentrant, it’s good enough to handle this case.
37860 * src/lread.c (read_buffer_size, read_buffer): Remove static vars.
37861 (grow_read_buffer): Revamp to use locals, not statics, and to
37862 record memory allocation un the specpdl. All callers changed.
37863 (read1): Start with a stack-based buffer, and use the heap
37864 only if the stack buffer is too small. Use unbind_to to
37865 free any heap buffer allocated. Use bool for boolean.
37866 Redo symbol loop so that only one call to grow_read_buffer
37868 (init_obarray): Remove no-longer-needed initialization.
37870 2016-12-08 Eli Zaretskii <eliz@gnu.org>
37872 Fix compilation warnings
37874 * src/thread.c (Fmake_thread): Call emacs_abort, to avoid
37875 compilation warning.
37877 2016-12-08 Paul Eggert <eggert@cs.ucla.edu>
37879 Fix unlikely substitute-command-keys memory leak
37881 * src/doc.c (Fsubstitute_command_keys):
37882 Free buffer when unwinding.
37884 2016-12-08 Michael Albinus <michael.albinus@gmx.de>
37886 Add file-name-quoted-p, file-name-quote, file-name-unquote
37888 * lisp/files.el (file-name-quoted-p, file-name-quote)
37889 (file-name-unquote): New defsubst.
37890 (find-file--read-only, find-file-noselect)
37891 (file-name-non-special): Use them.
37893 2016-12-08 Eli Zaretskii <eliz@gnu.org>
37897 2016-12-08 Glenn Morris <rgm@gnu.org>
37899 Minor fix for symbol-file
37901 * lisp/subr.el (symbol-file): Avoid false matches with "require"
37902 elements in load-history. (Bug#25109)
37904 2016-12-08 Glenn Morris <rgm@gnu.org>
37908 * lisp/vc/vc-git.el (vc-git-region-history): Add a doc string.
37910 2016-12-08 Tino Calancha <tino.calancha@gmail.com>
37914 * lisp/buff-menu.el (list-buffers--refresh):
37915 List buffers with name starting with " " if they visit a file.
37916 * test/lisp/buff-menu-tests.el (buff-menu-24962):
37917 Update test result as pass.
37919 2016-12-08 Tino Calancha <tino.calancha@gmail.com>
37921 ediff-fixup-patch-map: Improve prompt
37923 * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
37924 Make clear in the prompt when we are applying a multi patch.
37926 2016-12-08 Glenn Morris <rgm@gnu.org>
37928 Retain message logging in map-y-or-n-p
37930 * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
37931 Stop disabling logging to Messages buffer. (Bug#13326)
37933 2016-12-08 Glenn Morris <rgm@gnu.org>
37935 Doc fix for recent change
37937 * lisp/simple.el (region-modifiable-p): Doc fix.
37939 2016-12-08 Glenn Morris <rgm@gnu.org>
37941 Quieten make-dist default operation
37943 * make-dist: Add --verbose option. Default to quieter operation.
37945 2016-12-08 Glenn Morris <rgm@gnu.org>
37947 Further improve make-dist checking
37949 * make-dist: Print status messages when checking.
37951 2016-12-08 Glenn Morris <rgm@gnu.org>
37953 Improve previous make-dist change
37955 * make-dist: Let make check the info files more thoroughly.
37957 2016-12-08 Glenn Morris <rgm@gnu.org>
37959 Make make-dist --snapshot do some sanity checks
37961 * make-dist: Snapshot mode no longer disables checks.
37962 Checks now includes checks for freshness. (Bug#25084)
37963 Checks now exits with an error if problems were found.
37965 2016-12-07 Tino Calancha <tino.calancha@gmail.com>
37967 Fix regression introduced by commit 7b1e97f
37969 * lisp/ibuf-ext.el (ibuffer-decompose-filter): Use cdr instead
37970 of cadr; required after commit 20f5a5b.
37972 2016-12-07 Paul Eggert <eggert@cs.ucla.edu>
37974 Put post-25 ChangeLog entries into ChangeLog.3
37976 * ChangeLog.2: Copy from emacs-25 branch.
37977 * ChangeLog.3: New file, with changes only in master.
37978 * Makefile.in (CHANGELOG_HISTORY_INDEX_MAX): Bump from 2 to 3.
37980 2016-12-07 Eli Zaretskii <eliz@gnu.org>
37982 Fix network streams.
37984 The original code messed up flags in fd_callback_data[], and also
37985 didn't call add_process_read_fd for process-related file descriptors.
37987 2016-12-07 Eli Zaretskii <eliz@gnu.org>
37989 Minimize spurious diffs from master.
37991 2016-12-06 Eli Zaretskii <eliz@gnu.org>
37995 * test/automated/bindings.el: Contents moved to
37996 test/src/data-tests.el.
37997 * test/automated/threads.el: Moved to test/src/thread-tests.el.
37999 2016-12-06 Eli Zaretskii <eliz@gnu.org>
38001 Fix a typo in bytecode.c.
38003 2016-12-05 Eli Zaretskii <eliz@gnu.org>
38005 Fix compilation problems.
38007 Fix merged code in process.c and eval.c.
38009 2016-12-04 Eli Zaretskii <eliz@gnu.org>
38011 Merge branch 'concurrency'
38013 Conflicts (resolved):
38025 2015-11-02 Eli Zaretskii <eliz@gnu.org>
38027 Fix the MS-Windows build
38029 * src/thread.h [WINDOWSNT]: Include sys/socket.h.
38031 * src/sysselect.h: Don't define fd_set and FD_* macros for
38033 * src/w32.h: Define them here.
38035 * src/process.h (sys_select): Declare prototype.
38041 * src/callproc.c: Move inclusion of sys/select.h after lisp.h.
38042 * nt/inc/socket.h: Include w32.h instead of sysselect.h
38044 2015-11-01 Ken Raeburn <raeburn@raeburn.org>
38048 2013-10-19 Barry O'Reilly <gundaetiapo@gmail.com>
38050 * src/eval.c (unbind_for_thread_switch): Fix iteration over the
38053 2013-10-18 Tom Tromey <tromey@redhat.com>
38055 change condition-variablep to condition-variable-p
38057 2013-09-01 Eli Zaretskii <eliz@gnu.org>
38059 Fix crashes when unbind_for_thread_switch signals an error.
38061 src/eval.c (unbind_for_thread_switch): Accept a 'struct
38062 thread_state *' argument and use specpdl_ptr and specpdl of that
38063 thread. Fixes crashes if find_symbol_value signals an error.
38064 src/thread.c (post_acquire_global_lock): Update current_thread
38065 before calling unbind_for_thread_switch. Pass the previous thread
38066 to unbind_for_thread_switch.
38068 2013-08-31 Eli Zaretskii <eliz@gnu.org>
38070 Improve MS-Windows implementation of threads.
38072 src/systhread.c (sys_cond_init): Set the 'initialized' member to
38073 true only if initialization is successful. Initialize wait_count
38074 and wait_count_lock.
38075 (sys_cond_wait, sys_cond_signal, sys_cond_broadcast): If
38076 'initialized' is false, do nothing.
38077 (sys_cond_wait): Fix the implementation to avoid the "missed
38078 wakeup" bug: count the waiting threads, and reset the broadcast
38079 event once the last thread was released.
38080 (sys_cond_signal, sys_cond_broadcast): Use SetEvent instead of
38081 PulseEvent. Don't signal the event if no threads are waiting.
38082 (sys_cond_destroy): Only close non-NULL handles.
38083 (sys_thread_create): Return zero if unsuccessful, 1 if successful.
38084 src/systhread.h (w32thread_cond_t): New member 'initialized'.
38085 Rename waiters_count and waiters_count_lock to wait_count and
38086 wait_count_lock, respectively.
38088 2013-08-30 Eli Zaretskii <eliz@gnu.org>
38090 Enable thread support in the MS-Windows build.
38092 src/systhread.h (w32thread_critsect, w32thread_cond_t, sys_mutex_t)
38093 (sys_cond_t, sys_thread_t) [WINDOWSNT]: New data types.
38094 src/systhread.c (sys_mutex_init, sys_mutex_lock, sys_mutex_unlock)
38095 (sys_mutex_destroy, sys_cond_init, sys_cond_wait)
38096 (sys_cond_signal, sys_cond_broadcast, sys_cond_destroy)
38097 (sys_thread_self, sys_thread_equal, w32_beginthread_wrapper)
38098 (sys_thread_create, sys_thread_yield) [WINDOWSNT]: New functions.
38100 configure.ac (THREADS_ENABLED): Enable threads for MinGW, even
38101 if pthreads is not available.
38103 2013-08-27 Tom Tromey <tromey@redhat.com>
38105 use condition-notify in the docs, not condition-signal
38107 zap until-condition docs
38109 zap until-condition
38111 rename thread-blocker to thread--blocker
38113 remove binding_symbol
38115 fix style of threadp, mutexp, and condition-variable-p
38117 make thread_check_current_buffer return bool
38119 add a comment before flush_stack_call_func
38121 fix whitespace_regexp warning
38123 2013-08-26 Eli Zaretskii <eliz@gnu.org>
38125 Fix MS-Windows build.
38132 src/w32.c: Reshuffle Windows-specific headers to avoid errors with
38133 redefinition of fd_set etc.
38134 src/process.c: Don't use num_pending_connects when
38135 NON_BLOCKING_CONNECT is not defined.
38136 src/sysselect.h: Move definitions of FD_* macros and of SELECT_TYPE
38138 src/w32proc.c (sys_select): Adjust the argument types to what
38141 nt/inc/sys/socket.h: Include stdint.h. Include sysselect.h instead
38144 2013-08-26 Tom Tromey <tromey@redhat.com>
38146 use record_unwind_protect_void, avoid warning
38148 implement --enable-threads and a thread-less mode
38150 2013-08-25 Tom Tromey <tromey@redhat.com>
38154 2013-08-20 Tom Tromey <tromey@redhat.com>
38156 fix up some merge errors in process.c
38158 remove a dead function
38159 clean up a fixme I added in create_pty during the merge
38161 2013-08-20 Tom Tromey <tromey@redhat.com>
38165 2013-07-26 Tom Tromey <tromey@redhat.com>
38169 2013-07-13 Tom Tromey <tromey@redhat.com>
38173 2013-07-12 Tom Tromey <tromey@redhat.com>
38175 Use thread_alive_p in a couple more spots
38177 2013-07-07 Tom Tromey <tromey@redhat.com>
38179 fix xfree bug in run_thread
38181 this fixes run_thread to account for the dummy slot
38184 2013-07-07 Tom Tromey <tromey@redhat.com>
38188 this merges frmo trunk and fixes various build issues.
38189 this needed a few ugly tweaks.
38190 this hangs in "make check" now
38192 2013-07-06 Tom Tromey <tromey@redhat.com>
38194 add assertion to flush_stack_call_func
38196 functions called via flush_stack_call_func are assumed
38197 to return with the global lock held again, and with
38198 current_thread reset. this assertion verifies part of this
38200 2013-07-06 Tom Tromey <tromey@redhat.com>
38202 call init_primary_thread from init_threads
38204 2013-07-05 Tom Tromey <tromey@redhat.com>
38208 avoid SAFE_ALLOCA in xgselect.c.
38209 in this code it is just as easy to always use malloc;
38210 and it avoids thread-switching problems, as the safe-alloca
38211 stuff implicitly refers to the current thread
38213 2013-07-05 Tom Tromey <tromey@redhat.com>
38215 avoid current_thread sometimes
38217 this tweaks thread.c to use 'self' instead of current_thread
38218 in a couple spots. this is clearer and more robust
38220 2013-07-05 Tom Tromey <tromey@redhat.com>
38222 initialize saved_value
38224 initialize the saved_value field in all needed cases
38225 also, add an assertion to do_one_unbind
38227 2013-07-04 Tom Tromey <tromey@redhat.com>
38229 fix buglet in test case
38231 2013-07-04 Tom Tromey <tromey@redhat.com>
38233 unlink thread later
38235 unlink thread from global list later
38236 also remove some unnecessary destruction code
38238 2013-07-04 Tom Tromey <tromey@redhat.com>
38240 introduce thread_alive_p macro
38242 This introduces the thread_alive_p macro and changes
38243 thread-alive-p to use it. This is a minor cleanup.
38244 It also changes all-threads to ignore dead threads.
38246 2013-07-03 Tom Tromey <tromey@redhat.com>
38248 Don't call unbind_for_thread_switch in run_thread
38250 This removes the call to unbind_for_thread_switch from run_thread.
38251 This isn't necessary because acquire_global_lock does it properly.
38253 2013-07-03 Tom Tromey <tromey@redhat.com>
38255 remove unused field from struct thread_state
38259 2013-06-13 Tom Tromey <tromey@redhat.com>
38263 2013-06-06 Tom Tromey <tromey@redhat.com>
38265 fix a few latent issues in the thread patch
38267 * we called unbind_for_thread_switch unconditionally, but this
38268 is wrong if the previous thread exited
38269 * likewise, exiting a thread should clear current_thread
38270 * redundant assignment in run_thread
38271 * clean up init_threads - no need to re-init the primary thread
38273 This patch still sometimes causes weird hangs in "make check".
38274 However, I think that is a kernel bug, since Emacs enters the zombie
38275 state but its parent process hangs in wait. This shouldn't happen.
38277 2013-06-04 Tom Tromey <tromey@redhat.com>
38279 update eval.c to make it build again after the merge
38281 2013-06-03 Tom Tromey <tromey@redhat.com>
38283 merge from trunk; clean up some issues
38285 2013-03-18 Tom Tromey <tromey@redhat.com>
38287 don't let kill-buffer kill a buffer if it is current in any thread
38289 2013-03-18 Tom Tromey <tromey@redhat.com>
38293 Fix some process-related bugs, mostly thinkos from the conversion to
38294 recording fd state as flags.
38295 This now passes the test suite without hanging.
38297 2013-03-17 Tom Tromey <tromey@redhat.com>
38301 2013-03-08 Tom Tromey <tromey@redhat.com>
38305 2013-01-16 Tom Tromey <tromey@redhat.com>
38309 2013-01-06 Tom Tromey <tromey@redhat.com>
38313 2012-12-23 Tom Tromey <tromey@redhat.com>
38315 mention let bindings and lack of other ways to rewind
38317 2012-12-17 Tom Tromey <tromey@redhat.com>
38319 Remove bit accidentally left over from the merge
38323 2012-09-04 Tom Tromey <tromey@redhat.com>
38327 link from thread docs to match data
38329 2012-08-27 Tom Tromey <tromey@redhat.com>
38331 cannot thread-join the current thread
38333 fix test suite for condition-variable-p name change
38335 add tests for variable bindings
38337 2012-08-25 Tom Tromey <tromey@redhat.com>
38339 minor update to thread-join docs
38341 2012-08-24 Tom Tromey <tromey@redhat.com>
38343 minor documentation updates
38345 2012-08-23 Tom Tromey <tromey@redhat.com>
38347 document until-condition
38349 first draft of threads documentation
38351 rename condition-variablep to condition-variable-p
38353 document process-thread and set-process-thread
38355 2012-08-20 Tom Tromey <tromey@redhat.com>
38357 pass the thread name to the OS if possible
38359 use prctl to pass the thread name to the OS, if possible
38361 2012-08-20 Tom Tromey <tromey@redhat.com>
38363 add convenience macros with-mutex and until-condition
38365 with-mutex is a safe way to run some code with a mutex held.
38366 until-condition is a safe way to wait on a condition variable.
38368 2012-08-20 Tom Tromey <tromey@redhat.com>
38372 2012-08-19 Tom Tromey <tromey@redhat.com>
38374 another docstring fixlet
38376 minor docstring fixup
38378 add condition-mutex and condition-name
38380 ensure name of a thread is a string
38382 ensure name of a mutex is a string
38386 2012-08-19 Tom Tromey <tromey@redhat.com>
38388 condition variables
38390 This implements condition variables for elisp.
38391 This needs more tests.
38393 2012-08-19 Tom Tromey <tromey@redhat.com>
38397 2012-08-19 Tom Tromey <tromey@redhat.com>
38399 refactor systhread.h
38401 This refactors systhread.h to move the notion of a "lisp mutex"
38402 into thread.c. This lets us make make the global lock and
38403 post_acquire_global_lock static.
38405 2012-08-17 Tom Tromey <tromey@redhat.com>
38407 write docstrings for the thread functions
38409 declare unbind_for_thread_switch and rebind_for_thread_switch in lisp.h
38411 2012-08-15 Tom Tromey <tromey@redhat.com>
38413 add test case for I/O switching
38415 2012-08-15 Tom Tromey <tromey@redhat.com>
38419 This changes wait_reading_process_output to handle threads better. It
38420 introduces a wrapper for select that releases the global lock, and it
38421 ensures that only a single thread can select a given file descriptor
38424 This also adds the thread-locking feature to processes. By default a
38425 process can only have its output accepted by the thread that created
38426 it. This can be changed using set-process-thread. (If the thread
38427 exits, the process is again available for waiting by any thread.)
38429 Note that thread-signal will not currently interrupt a thread blocked
38430 on select. I'll fix this later.
38432 2012-08-15 Tom Tromey <tromey@redhat.com>
38434 Prepare process.c for threads by not having global select masks.
38435 The next step is to make it so selects can choose fds by thread.
38437 2012-08-15 Tom Tromey <tromey@redhat.com>
38439 fix a latent bug in process.c
38441 * src/process.c (wait_reading_process_output): Check Writeok bits,
38444 2012-08-15 Tom Tromey <tromey@redhat.com>
38446 This adds thread-blocker, a function to examine what a thread is
38447 blocked on. I thought this would be another nice debugging addition.
38449 This adds names to mutexes. This seemed like a nice debugging
38452 This adds some tests of the threading code.
38454 2012-08-15 Tom Tromey <tromey@redhat.com>
38456 This supplies the mutex implementation for Emacs Lisp.
38458 A lisp mutex is implemented using a condition variable, so that we can
38459 interrupt a mutex-lock operation by calling thread-signal on the
38460 blocking thread. I did things this way because pthread_mutex_lock
38461 can't readily be interrupted.
38463 2012-08-15 Tom Tromey <tromey@redhat.com>
38465 This adds most of the thread features visible to emacs lisp.
38467 I roughly followed the Bordeaux threads API:
38469 http://trac.common-lisp.net/bordeaux-threads/wiki/ApiDocumentation
38471 ... but not identically. In particular I chose not to implement
38472 interrupt-thread or destroy-thread, but instead a thread-signaling
38475 I'm still undecided about *default-special-bindings* (which I did not
38476 implement). I think it would be more emacs-like to capture the let
38477 bindings at make-thread time, but IIRC Stefan didn't like this idea
38478 the first time around.
38480 There are one or two semantics issues pointed out in the patch where I
38481 could use some advice.
38483 2012-08-15 Tom Tromey <tromey@redhat.com>
38485 This turns thread_state into a pseudovector and updates various bits
38488 2012-08-15 Tom Tromey <tromey@redhat.com>
38490 This introduces some new functions to handle the specpdl. The basic
38491 idea is that when a thread loses the interpreter lock, it will unbind
38492 the bindings it has put in place. Then when a thread acquires the
38493 lock, it will restore its bindings.
38495 This code reuses an existing empty slot in struct specbinding to store
38496 the current value when the thread is "swapped out".
38498 This approach performs worse than my previously planned approach.
38499 However, it was one I could implement with minimal time and
38500 brainpower. I hope that perhaps someone else could improve the code
38503 2012-08-15 Tom Tromey <tromey@redhat.com>
38505 This introduces the low-level system threading support. It also adds
38506 the global lock. The low-level support is a bit over-eager, in that
38507 even at the end of the present series, it will not all be used. I
38508 think thiat is ok since I plan to use it all eventually -- in
38509 particular for the emacs lisp mutex implementation.
38511 I've only implemented the pthreads-based version. I think it should
38512 be relatively clear how to port this to other systems, though.
38514 I'd also like to do a "no threads" port that will turn most things
38515 into no-ops, and have thread-creation fail. I was thinking perhaps
38516 I'd make a future (provide 'threads) conditional on threads actually
38519 One other minor enhancement available here is to make it possible to
38520 set the name of the new thread at the OS layer. That way gdb, e.g.,
38521 could display thread names.
38523 2012-08-15 Tom Tromey <tromey@redhat.com>
38525 This parameterizes the GC a bit to make it thread-ready.
38527 The basic idea is that whenever a thread "exits lisp" -- that is,
38528 releases the global lock in favor of another thread -- it must save
38529 its stack boundaries in the thread object. This way the boundaries
38530 are always available for marking. This is the purpose of
38531 flush_stack_call_func.
38533 I haven't tested this under all the possible GC configurations.
38534 There is a new FIXME in a spot that i didn't convert.
38536 Arguably all_threads should go in the previous patch.
38538 2012-08-15 Tom Tromey <tromey@redhat.com>
38540 This introduces a thread-state object and moves various C globals
38541 there. It also introduces #defines for these globals to avoid a
38544 The #defines mean that this patch also has to rename a few fields
38545 whose names clash with the defines.
38547 There is currently just a single "thread"; so this patch does not
38548 impact Emacs behavior in any significant way.
38550 2016-12-07 Paul Eggert <eggert@cs.ucla.edu>
38552 Merge from origin/emacs-25
38554 eeecac7 Fix minor quoting problems in doc strings
38556 2016-12-07 Paul Eggert <eggert@cs.ucla.edu>
38558 Merge from origin/emacs-25
38560 35ce3fb Don't assume window-point and point are the same
38562 2016-12-07 Paul Eggert <eggert@cs.ucla.edu>
38564 Merge from origin/emacs-25
38566 ba2847f ; * lisp/vc/ediff-util.el (ediff-janitor): Fix last change. ...
38567 8b43f97 * lisp/vc/ediff-util.el (ediff-janitor): Doc fix. (Bug#25046)
38568 c20035c ; * doc/emacs/programs.texi (Man Page): Fix last change.
38569 93d8346 Improve indexing of 'man'
38571 2016-12-07 Paul Eggert <eggert@cs.ucla.edu>
38573 Merge from origin/emacs-25
38575 d31298d Fix documentation of `window-combination-resize'
38576 2086f4c Typo fixes in elisp manual
38578 2016-12-07 Paul Eggert <eggert@cs.ucla.edu>
38580 Merge from origin/emacs-25
38582 3980903 ; Update ChangeLog.2, etc/AUTHORS and ldef-boot.el for Emacs ...
38583 5878abf Fix 'expand-file-name' during startup on MS-Windows
38585 2016-12-07 Paul Eggert <eggert@cs.ucla.edu>
38587 Merge from origin/emacs-25
38589 9a857b9 * admin/authors.el (authors-renamed-files-alist): Addition.
38590 6d27423 Tweak refcard note about documentation location
38591 e46a134 Improve treatment of Fortran's "class is"
38593 2016-12-07 Paul Eggert <eggert@cs.ucla.edu>
38595 Merge from origin/emacs-25
38597 93c0f51 Handle TeX comments when making new paragraph
38598 e0884f1 Restore keystroke echo in 'C-q'
38599 a6213ce Improve documentation of 'current-word'
38600 0828126 Fix a typo in an Eshell defcustom
38601 2e361c7 Minor copyedits of electric-pair-mode
38602 7499ee8 ; Minor copyedit in the Emacs manual
38603 45b652b Fix documentation of 'invocation-directory'
38604 7f43d7c * admin/authors.el (authors-aliases): Add an entry.
38605 ba48880 ; Fix pl-refcard.tex
38607 2016-12-07 Paul Eggert <eggert@cs.ucla.edu>
38609 Merge from origin/emacs-25
38611 7287e96 ; * src/lread.c (openp): Correct an inaccuracy in commentary.
38613 2016-12-07 Paul Eggert <eggert@cs.ucla.edu>
38615 Merge from origin/emacs-25
38617 3d63b48 Update ChangeLog files and authors.el
38618 9d30264 Fix menu bindings of Dired 'A' and 'Q' commands
38619 a725592 Avoid errors in shr-pixel-column due to dedicated windows
38620 3138598 Update format-time-string documentation
38622 2016-12-07 Sam Steingold <sds@gnu.org>
38624 delete-trailing-whitespace: handle read-only text in buffer
38626 * lisp/simple.el (region-modifiable-p): New function.
38627 (delete-trailing-whitespace): Use it to avoid trying to delete read-only text.
38629 2016-12-07 Paul Eggert <eggert@cs.ucla.edu>
38631 Fix minor quoting problems in doc strings
38633 2016-12-07 Paul Eggert <eggert@cs.ucla.edu>
38635 Fix --enable-gcc-warnings --with-ns on Fedora
38637 * src/Makefile.in (NON_OBJC_CFLAGS): New macro.
38638 (ALL_OBJC_CFLAGS): Use it.
38639 (EMACS_CFLAGS): New macro, with most of the old ALL_CFLAGS.
38640 (ALL_CFLAGS, ALL_OBJC_FLAGS): Use it.
38642 2016-12-07 Michael Albinus <michael.albinus@gmx.de>
38644 Fix problems in quoting Tramp file names
38646 * lisp/net/tramp.el (tramp-get-remote-tmpdir): Add also hop to result.
38647 (tramp-unquote-shell-quote-argument): New defun.
38648 (tramp-shell-quote-argument):
38649 * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band)
38650 (tramp-make-copy-program-file-name):
38651 * lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory)
38652 (tramp-smb-handle-file-acl, tramp-smb-handle-set-file-acl)
38653 (tramp-smb-shell-quote-argument): Use it.
38655 2016-12-07 Tino Calancha <tino.calancha@gmail.com>
38657 ibuffer-map-deletion-lines: Re-included it
38659 It was deleted in previous commit, but it's referenced
38660 by the macro 'define-ibuffer-op'.
38661 * lisp/ibuffer.el (ibuffer-map-deletion-lines): Reinclude it.
38663 2016-12-07 Tino Calancha <tino.calancha@gmail.com>
38665 ibuffer-unmark-all: simplify code
38667 * lisp/ibuffer.el (ibuffer-map-deletion-lines): Delete it.
38668 (ibuffer-unmark-all): Simplify code.
38670 2016-12-07 Tino Calancha <tino.calancha@gmail.com>
38672 define-ibuffer-filter: Discard wrong filters
38674 * lisp/ibuf-macs.el (define-ibuffer-filter): Do not store
38675 in 'ibuffer-filtering-qualifiers' a wrong filter (Bug#25042).
38676 * test/lisp/ibuffer-tests.el (ibuffer-test-Bug25042): Add test.
38678 2016-12-07 Philipp Stephani <p.stephani2@gmail.com>
38680 * lisp/emacs-lisp/easy-mmode.el (define-minor-mode): Fix docstring
38682 so that it matches the actual implementation.
38683 See https://lists.gnu.org/r/help-gnu-emacs/2016-04/msg00071.html
38685 2016-12-07 Tino Calancha <tino.calancha@gmail.com>
38687 ibuffer-decompose-filter-group avoid unwanted side effects
38689 * lisp/ibuf-ext.el (ibuffer-delete-alist): Remove it.
38690 (ibuffer-remove-alist): New defun; it supersedes 'ibuffer-delete-alist'.
38691 All callers changed (Bug#25058).
38692 * test/lisp/ibuffer-tests.el (ibuffer-test-Bug25058): Add test.
38694 2016-12-07 Tino Calancha <tino.calancha@gmail.com>
38696 ibuffer-unmark-backward: Unmark the region when is active
38698 * lisp/ibuffer.el (ibuffer-unmark-backward):
38699 Use 'ibuffer-get-region-and-prefix'; call 'ibuffer-unmark-forward'
38700 with the region boundary as the first 2 arguments (Bug#24987).
38702 2016-12-07 Nicolas Petton <nicolas@petton.fr>
38704 Docstring improvement for seq-some (bug#25129)
38706 * lisp/emacs-lisp/seq.el (seq-some): Make the docstring less confusing
38707 regarding the returned value.
38709 2016-12-07 Tino Calancha <tino.calancha@gmail.com>
38711 dired-unmark-backward: Unmark the region when is active
38713 * lisp/dired.el (dired-unmark-backward): Call 'dired-unmark' with
38714 a non-nil second argument (Bug#24986).
38716 2016-12-07 Tino Calancha <tino.calancha@gmail.com>
38718 New test file for ediff
38720 Fix previous commit.
38721 * test/lisp/vc/ediff-ptch-tests.el: New test.
38723 2016-12-07 Tino Calancha <tino.calancha@gmail.com>
38725 ediff-context-diff-label-regexp: Detect the end of second file
38727 * lisp/vc/ediff-ptch.el (ediff-context-diff-label-regexp): Skip
38728 '\n' in file names (Bug#25010).
38729 * test/lisp/vc/ediff-ptch-tests.el: New file.
38730 (ibuffer-test-bug25010): Add test for Bug#25010.
38732 2016-12-07 Tino Calancha <tino.calancha@gmail.com>
38734 ibuffer-decompose-filter: Avoid side effects on error
38736 * lisp/ibuf-ext.el (ibuffer-decompose-filter):
38737 Update 'ibuffer-filtering-qualifiers' only if there is no error (Bug#24997).
38738 * test/lisp/ibuffer-tests.el (ibuffer-test-Bug24997):
38739 Update test result as pass.
38741 2016-12-07 Tino Calancha <tino.calancha@gmail.com>
38743 ibuffer: compare marks with EQ
38746 (ibuffer-update-title-and-summary)
38747 (ibuffer-redisplay-current)
38748 (ibuffer-buffer-name-face, ibuffer-unmark-all)
38749 (ibuffer-count-deletion-lines, ibuffer-buffer-names-with-mark):
38750 Use 'eq' instead of 'char-equal' when comparing mark characters
38752 * test/lisp/ibuffer-tests.el (ibuffer-test-Bug25000):
38753 Update test result as pass.
38755 2016-12-07 Christopher Genovese <genovese@cmu.edu>
38757 ibuffer-saved-filters: Remove extra nesting level
38760 * lisp/ibuf-ext.el (ibuffer-saved-filters): Remove extra
38761 nesting level; add transparent setter to adjust old-format values;
38763 (ibuffer-save-filters): Remove extra level of nesting
38764 in ibuffer-saved-filters values when saving new filters.
38765 (ibuffer-old-saved-filters-warning): New variable with
38766 clickable message with repair options to be displayed
38767 as a warning if 'ibuffer-repair-saved-filters' detects
38769 (ibuffer-repair-saved-filters): Add new command to check and
38770 repair saved filters format.
38771 (ibuffer-included-in-filter-p, ibuffer-decompose-filter):
38772 Change access of saved filter data (cadr->cdr) to account
38773 for reduced nesting.
38774 * test/lisp/ibuffer-tests.el (ibuffer-save-filters):
38775 New test; check that filters are saved in the proper format.
38777 2016-12-06 Paul Eggert <eggert@cs.ucla.edu>
38779 Clean out some IRIX cruft
38781 * etc/MACHINES: Remove obsolete discussion of IRIX.
38782 * src/process.c (allocate_pty) [__sgi]: Remove SGI-specific code.
38783 (create_process) [HAVE_PTYS]: Don't worry about IRIX.
38784 * src/syntax.c (scan_sexps_forward): Remove obsolete comment.
38785 * src/unexelf.c [__sgi]: Don't include <syms.h>.
38786 (unexec) [__sgi]: Remove SGI-specific code.
38788 2016-12-06 Paul Eggert <eggert@Penguin.CS.UCLA.EDU>
38790 Simplify FUNCTIONP implementation
38792 * src/bytecode.c (exec_byte_code):
38793 * src/image.c (parse_image_spec):
38794 Prefer FUNCTIONP (x) to !NILP (Ffunctionp (x)).
38795 * src/eval.c (FUNCTIONP): Move here ...
38796 * src/lisp.h: ... from here. No longer inline, as that
38797 bloats the text and does not help speed (at least on my platform).
38798 (functionp): Remove this name, since callers use FUNCTIONP.
38800 2016-12-06 Noam Postavsky <npostavs@gmail.com>
38802 Don't assume window-point and point are the same
38804 The function `cursor-sensor--detect' calls `bobp' to decide whether to
38805 check properties at (1- (window-point)). However, (window-point) may be
38806 at beginning of buffer, even if (point) is not. In this case an
38807 `args-out-of-range' error will be signaled (Bug#25104).
38809 * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Check the
38810 value of (window-point) against (point-min), rather than (bobp) to
38811 decide if (1- (window-point)) is accessible.
38813 2016-12-06 Noam Postavsky <npostavs@gmail.com>
38815 Give test-completion's PREDICATE the hashtable key
38817 For hashtable entries with symbol keys, `test-completion' would convert
38818 the key to a string before calling PREDICATE, unlike `try-completion'
38819 and `all-completions'.
38821 * src/minibuf.c (Ftest_completion): Pass original key from hashtable.
38823 2016-12-06 Noam Postavsky <npostavs@gmail.com>
38825 Give test-completion's PREDICATE full alist entry
38827 Since 2016-06-26 "Fix test-completion with completion-regexp-list", when
38828 calling test-completion with an alist collection, the predicate was
38829 recieving the string value instead of the alist entry (Bug#24966).
38831 * src/minibuf.c (Ftest_completion): Don't modify the found element, just
38832 test STRING against `completion-regexp-list'.
38833 * test/src/minibuf-tests.el: New tests for `try-completion',
38834 `all-completions', and `test-completion'.
38836 2016-12-06 Noam Postavsky <npostavs@gmail.com>
38838 Fix ert-tests when running compiled
38840 * test/lisp/emacs-lisp/ert-tests.el (ert-test-deftest): Don't test for
38841 specific macroexpansion, just check result of evaluation.
38842 (ert-test-record-backtrace): Don't hardcode representation of closure in
38843 expected backtrace, this lets the test succeed even when the test code
38846 * lisp/emacs-lisp/ert.el (ert--expand-should-1): Also pass
38847 `byte-compile-macro-environment' to `macroexpand', this allows the
38848 `should' macro to properly handle macroexpansion of macros that were
38849 defined in the same file when it's being compiled (Bug #17851).
38851 2016-12-06 Glenn Morris <rgm@gnu.org>
38853 Make "g" in vc push/pull buffers re-push/pull
38855 * lisp/vc/vc-bzr.el (vc-bzr--pushpull):
38856 * lisp/vc/vc-git.el (vc-git--pushpull):
38857 * lisp/vc/vc-hg.el (vc-hg--pushpull):
38858 Set compile-command so that "g" works. (Bug#11446)
38860 2016-12-06 Paul Eggert <eggert@cs.ucla.edu>
38862 Change two _Noreturn functions to return void
38864 This is a bit clearer than _Noreturn functions that (do not)
38865 return a non-void type.
38866 * src/callproc.c (call_process) [MSDOS]:
38867 Use 'status' local to record status.
38868 (child_setup): Return CHILD_SETUP_TYPE.
38869 * src/data.c, src/lisp.h (wrong_type_argument): Return void.
38870 All callers changed.
38871 * src/lisp.h (CHILD_SETUP_TYPE): New macro.
38873 2016-12-05 Paul Eggert <eggert@cs.ucla.edu>
38875 Fix GPG bug introduced by Oct file-missing change
38877 Problem with visiting nonexistent .gpg file
38878 reported by Herbert J Skuhra.
38879 * lisp/epa-file.el (epa-file--find-file-not-found-function):
38880 (epa-file-insert-file-contents, epa-file-write-region):
38881 Signal file-missing or file-error instead of epa-error.
38883 2016-12-05 Glenn Morris <rgm@gnu.org>
38885 Tweak recent flymake change
38887 * lisp/progmodes/flymake.el (flymake-report-fatal-status):
38888 Avoid double message when flymake-log-level >= 0.
38889 * doc/misc/flymake.texi (Customizable variables):
38890 No longer mention flymake-gui-warnings-enabled.
38892 2016-12-05 Katsumi Yamaoka <yamaoka@jpl.org>
38894 Make TAB and M-TAB run widget-forward and widget-backward (bug#25091)
38896 * lisp/gnus/mm-decode.el (mm-convert-shr-links): Avoid `shr-next-link'
38897 and `shr-previous-link' so TAB and M-TAB run `widget-forward' and
38898 `widget-backward' instead (bug#25091).
38900 2016-12-05 Michael Albinus <michael.albinus@gmx.de>
38902 Remove compat code in Tramp
38904 * lisp/net/tramp.el (tramp-parse-time-months): Remove.
38906 * lisp/net/tramp-compat.el (top): Require parse-time.
38908 * lisp/net/tramp-smb.el (tramp-smb-read-file-entry):
38909 Use `parse-time-months'.
38911 2016-12-05 Martin Rudalics <rudalics@gmx.at>
38913 Don't try to split side windows in ibuffer (Bug#25115)
38915 * lisp/ibuffer.el (ibuffer-confirm-operation-on): Don't try to
38916 split a side window (Bug#25115).
38918 2016-12-04 Paul Eggert <eggert@cs.ucla.edu>
38920 * src/lisp.h: Update comment to kick -Og down the road.
38922 2016-12-04 Mark Oteiza <mvoteiza@udel.edu>
38924 More image-dired refactoring
38926 * lisp/image-dired.el: Remove TODO comment. This appears to have been
38927 implemented in 5d7433a "image-dired: Signal an error before calling a
38928 missing executable".
38929 (image-dired-cmd-create-standard-thumbnail-command): Use %p specifier.
38931 (image-dired-display-thumbs, image-dired-create-thumbs): Use dolist and
38932 when. Remove superfluous call to image-dired-thumb-name. Move single nil
38933 binding and setq into dolist form.
38935 2016-12-04 Michael Albinus <michael.albinus@gmx.de>
38937 Implement quoting the local part of a remote file name
38939 * doc/emacs/files.texi (Quoted File Names):
38940 * etc/NEWS: Mention quoting the local part of a remote file name.
38942 * lisp/net/tramp.el (tramp-dissect-file-name): Check with
38943 `tramp-tramp-file-p'.
38944 (tramp-quoted-name-p, tramp-quote-name, tramp-unquote-name):
38946 (tramp-handle-substitute-in-file-name)
38947 (tramp-handle-make-auto-save-file-name): Handle quoted files.
38948 (tramp-shell-quote-argument): Unquote argument.
38950 * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename):
38951 Handle quoted files.
38953 * test/lisp/net/tramp-tests.el (tramp--test-expensive-test): New defvar.
38954 (tramp--test-make-temp-name): New argument QUOTED.
38955 (tramp-test01-file-name-syntax)
38956 (tramp-test02-file-name-dissect)
38957 (tramp-test04-substitute-in-file-name)
38958 (tramp-test05-expand-file-name, tramp-test07-file-exists-p)
38959 (tramp-test08-file-local-copy)
38960 (tramp-test09-insert-file-contents)
38961 (tramp-test10-write-region, tramp-test11-copy-file)
38962 (tramp-test12-rename-file, tramp-test13-make-directory)
38963 (tramp-test14-delete-directory, tramp-test15-copy-directory)
38964 (tramp-test16-directory-files)
38965 (tramp-test17-insert-directory)
38966 (tramp-test18-file-attributes)
38967 (tramp-test19-directory-files-and-attributes)
38968 (tramp-test20-file-modes, tramp-test21-file-links)
38969 (tramp-test22-file-times, tramp-test23-visited-file-modtime)
38970 (tramp-test24-file-name-completion, tramp-test25-load)
38971 (tramp-test26-process-file, tramp-test27-start-file-process)
38972 (tramp-test28-shell-command, tramp-test30-vc-registered)
38973 (tramp-test31-make-auto-save-file-name)
38974 (tramp--test-check-files)
38975 (tramp-test35-asynchronous-requests): Test also quoted file names.
38976 (tramp--test-shell-command-to-string-asynchronously): Rename.
38977 (tramp-test29-environment-variables): Use it.
38979 2016-12-04 Tino Calancha <tino.calancha@gmail.com>
38981 Fix typo in dired-omit-case-fold-p
38983 * lisp/dired-x.el (dired-omit-case-fold-p):
38984 Write 'file-name-case-insensitive-p' instead of
38985 'file-name-case-sensitive-p'.
38986 Add declaration of 'file-name-case-insensitive-p'.
38988 2016-12-04 Simen Heggestøyl <simenheg@gmail.com>
38990 Add HTML5 attributes for the input element
38992 * lisp/textmodes/sgml-mode.el (html-tag-alist): Add HTML5 attributes
38993 for the input element.
38995 2016-12-03 Glenn Morris <rgm@gnu.org>
38997 Obsolete sc-load-hook in favor of eval-after-load
38999 * lisp/mail/supercite.el (sc-load-hook): Make obsolete.
39000 * doc/misc/sc.texi (Getting Connected, Filling Cited Text):
39001 No longer mention sc-load-hook.
39003 2016-12-03 Glenn Morris <rgm@gnu.org>
39005 Obsolete calendar-load-hook in favor of eval-after-load
39007 * lisp/calendar/calendar.el (calendar-load-hook): Make obsolete.
39008 (calendar): Doc fix - no longer mention calendar-load-hook.
39009 * doc/emacs/cal-xtra.texi (Calendar Customizing):
39010 No longer mention calendar-load-hook.
39011 * doc/lispintro/emacs-lisp-intro.texi (X11 Colors):
39012 Replace calendar-load-hook in example with with-eval-after-load.
39014 2016-12-03 Glenn Morris <rgm@gnu.org>
39016 Fix markup in read-multiple-choice doc (Bug#25102)
39018 * lisp/emacs-lisp/subr-x.el (read-multiple-choice): Doc fix.
39020 2016-12-03 Glenn Morris <rgm@gnu.org>
39022 Stop flymake using dialog boxes for errors (Bug#16622)
39024 * lisp/progmodes/flymake.el (flymake-gui-warnings-enabled):
39026 (flymake-display-warning): Turn into an obsolete alias.
39027 (flymake-report-fatal-status): Just use message for a warning that
39028 was formerly displayed by default.
39030 2016-12-03 Mark Oteiza <mvoteiza@udel.edu>
39032 Clean up keymap and menu code in image-dired
39034 A function to populate these maps is not necessary, just define the maps
39036 * lisp/image-dired.el (image-dired-show-all-from-dir): Make prompt
39037 clearer and in the spirit of dired's.
39038 (image-dired-define-display-image-mode-keymap):
39039 (image-dired-define-thumbnail-mode-keymap): Remove.
39040 (image-dired-thumbnail-mode-map):
39041 (image-dired-thumbnail-mode-line-up-map):
39042 (image-dired-thumbnail-mode-tag-map): Assimilate all define-key and mode
39043 menu code from the aforementioned removed functions. Reorder so that
39044 the definitions are inherited properly.
39045 (image-dired-display-current-image-sized): Fix erroneous message.
39046 (image-dired-thumbnail-mode):
39047 (image-dired-display-image-mode): Remove defunct call.
39049 2016-12-03 Michael Albinus <michael.albinus@gmx.de>
39051 Mention `file-name-case-insensitive-p' as magic file name
39053 * doc/lispref/files.texi (Magic File Names):
39054 Mention `file-name-case-insensitive-p'.
39056 * doc/lispref/variables.texi (Connection Local Variables):
39059 2016-12-03 Mark Oteiza <mvoteiza@udel.edu>
39061 Clean up uses of cl-foo in image-dired
39063 Both instances here are just emulating cl-find-if.
39064 * lisp/image-dired.el: Use cl-lib at compile time.
39065 (image-dired-dired-toggle-marked-thumbs): Don't need let* at the top.
39066 Replace the cl-foo instances with equivalent cl-loops.
39068 2016-12-03 Eli Zaretskii <eliz@gnu.org>
39070 Avoid compilation warnings in nt/*.c files
39072 * nt/cmdproxy.c (fail, vfprintf, fprintf, printf, warn)
39073 (console_event_handler): Add prototypes.
39074 (canon_filename, skip_space, skip_nonspace, get_next_token)
39075 (batch_file_p, search_dir, make_absolute, try_dequote_cmdline)
39076 (spawn, get_env_size): Now static.
39077 * nt/ddeclient.c (DdeCallback): Provide prototype.
39078 * nt/addpm.c (DdeCallback): Provide prototype.
39079 (add_registry): Now static.
39081 2016-12-02 Mark Oteiza <mvoteiza@udel.edu>
39083 Display window before calculating width
39085 * lisp/image-dired.el (image-dired-display-thumbs): Display the buffer
39086 before calling image-dired-line-up and friends, which in turn calculate
39087 the window width. Otherwise, the thumbnail layout will be wrong in
39088 a side-by-side split.
39090 2016-12-02 Mark Oteiza <mvoteiza@udel.edu>
39092 Use pop-to-buffer-same-window
39094 * lisp/image-dired.el (image-dired-dired-with-window-configuration):
39095 (image-dired-dired-edit-comment-and-tags): Instead of switch-to-buffer,
39096 use pop-to-buffer-same-window cf. Bug#22244.
39097 (image-dired-forward-image, image-dired-backward-image): Ignore unused.
39099 2016-12-02 Noam Postavsky <npostavs@gmail.com>
39101 Document watchpoints
39103 * doc/lispref/debugging.texi (Variable Debugging):
39104 * doc/lispref/variables.texi (Watching Variables): New section.
39105 * etc/NEWS: Add entry for watchpoints
39107 2016-12-02 Noam Postavsky <npostavs@gmail.com>
39109 Add tests for watchpoints
39111 * test/src/data-tests.el (data-tests-variable-watchers):
39112 (data-tests-local-variable-watchers): New tests.
39114 2016-12-02 Noam Postavsky <npostavs@gmail.com>
39116 Ensure redisplay using variable watcher
39118 This replaces looking up the variable name in redisplay--variables when
39121 * lisp/frame.el: Replace redisplay--variables with add-variable-watcher
39123 * src/xdisp.c (Fset_buffer_redisplay): Rename from maybe_set_redisplay,
39124 set the redisplay flag unconditionally.
39125 (Vredisplay__variables): Remove it.
39126 * src/data.c (set_internal): Remove maybe_set_redisplay call.
39128 2016-12-02 Noam Postavsky <npostavs@gmail.com>
39130 Add function to trigger debugger on variable write
39132 * lisp/emacs-lisp/debug.el (debug-on-variable-change):
39133 (debug--variable-list):
39134 (cancel-debug-on-variable-change): New functions.
39135 (debugger-setup-buffer): Add watchpoint clause.
39137 2016-12-02 Noam Postavsky <npostavs@gmail.com>
39139 Show watchpoints when describing variables
39141 * src/data.c (Fget_variable_watchers): New function.
39142 * lisp/help-fns.el (describe-variable): Use it to detect watching
39145 2016-12-02 Noam Postavsky <npostavs@gmail.com>
39147 Add lisp watchpoints
39149 This allows calling a function whenever a symbol-value is changed.
39151 * src/lisp.h (lisp_h_SYMBOL_TRAPPED_WRITE_P):
39152 (SYMBOL_TRAPPED_WRITE_P): New function/macro.
39153 (lisp_h_SYMBOL_CONSTANT_P): Check for SYMBOL_NOWRITE specifically.
39154 (enum symbol_trapped_write): New enumeration.
39155 (struct Lisp_Symbol): Rename field constant to trapped_write.
39156 (make_symbol_constant): New function.
39158 * src/data.c (Fadd_variable_watcher, Fremove_variable_watcher):
39159 (set_symbol_trapped_write, restore_symbol_trapped_write):
39160 (harmonize_variable_watchers, notify_variable_watchers): New functions.
39162 * src/data.c (Fset_default): Call `notify_variable_watchers' for trapped
39164 (set_internal): Change bool argument BIND to 3-value enum and call
39165 `notify_variable_watchers' for trapped symbols.
39167 * src/data.c (syms_of_data):
39168 * src/data.c (syms_of_data):
39169 * src/font.c (syms_of_font):
39170 * src/lread.c (intern_sym, init_obarray):
39171 * src/buffer.c (syms_of_buffer): Use make_symbol_constant.
39173 * src/alloc.c (init_symbol):
39174 * src/bytecode.c (exec_byte_code): Use SYMBOL_TRAPPED_WRITE_P.
39175 * src/data.c (Fmake_variable_buffer_local, Fmake_local_variable):
39176 (Fmake_variable_frame_local):
39177 * src/eval.c (Fdefvaralias, specbind): Refer to Lisp_Symbol's
39178 trapped_write instead of constant.
39179 (Ffuncall): Move subr calling code into separate function.
39180 (funcall_subr): New function.
39182 2016-12-02 Glenn Morris <rgm@gnu.org>
39184 Starting doc of user options with "*" is long obsolete
39186 * lisp/battery.el (battery-upower-device): Doc fix.
39188 2016-12-02 Nicolas Petton <nicolas@petton.fr>
39192 * etc/themes/manoj-dark-theme.el: Fix two typos.
39194 (cherry picked from commit 66d6e7e9ecf5e481f8c2c3a4f88411f66c869a6e)
39196 2016-12-02 Reuben Thomas <rrt@sc3d.org>
39198 Fix docstrings to have a complete sentence in first line
39200 * lisp/dired-x.el (dired-omit-case-fold, dired-omit-case-fold-p): Fix
39203 2016-12-02 Reuben Thomas <rrt@sc3d.org>
39205 Remove obsolete comments and commented code from dired-x.el
39207 * lisp/dired-x.el (dired-mark-sexp): Remove a query from 1993 and its
39208 1997 answer about whether dired-mark-sexp is used.
39209 * lisp/dired-x.el (dired-buffers-for-dir-exact): Remove this function
39210 commented out since before dired-x.el was added to RCS in 1994.
39212 2016-12-02 Reuben Thomas <rrt@sc3d.org>
39214 Remove pre-customize dired-x.el documentation
39216 * lisp/dired-x.el (Commentary): Remove USAGE section explaining how to
39217 use dired-x from .emacs. It is now fully customizable.
39218 * lisp/dired-x.el (dired-guess-shell-alist-user): Remove explanation of
39219 how to set this custom variable in .emacs. It should be customized.
39221 2016-12-02 Reuben Thomas <rrt@sc3d.org>
39223 Allow files to be matched case-sensitively in dired-x
39225 * lisp/dired-x.el (dired-mark-unmarked-files): Add an argument which
39226 controls case folding for matching the regex (Bug#18716).
39227 (dired-omit-case-fold): New variable. Defaults to `t' on case-sensitive
39228 systems, `nil' otherwise.
39229 (dired-mark-omitted, dired-omit-expunge): Use dired-omit-case-fold.
39230 * doc/misc/dired-x.texi, etc/NEWS: Document dired-omit-case-fold.
39232 2016-12-02 Reuben Thomas <rrt@sc3d.org>
39234 Add support for curly quotation marks to electric-pair-mode
39236 * lisp/elec-pair.el (electric-pair-pairs, electric-pair-text-pairs): Add
39237 entries for left/right single/double quotation marks, from
39238 electric-quote-chars. Note that this is safe for single quotation marks,
39239 unlike with the ASCII apostrophe, since, although the right quotation
39240 mark can be used as an apostrophe, it is the left quotation mark that is
39241 typed to get a pair (Bug#24901).
39243 2016-12-02 Nicolas Petton <nicolas@petton.fr>
39247 * etc/themes/manoj-dark-theme.el: Fix two typos.
39249 2016-12-02 Michael Albinus <michael.albinus@gmx.de>
39251 Handle quoted file names in Tramp
39253 * lisp/net/tramp.el (tramp-file-name-handler): Handle also the
39254 case the file name is quoted. This is not trapped by the
39255 reassigned `tramp-file-name-regexp' anymore.
39257 2016-12-02 Evgeny Zajcev <lg.zevlg@gmail.com>
39259 * lisp/battery.el: Add 'battery-upower' -- very fast battery status.
39261 2016-12-02 Evgeny Zajcev <lg.zevlg@gmail.com>
39263 Support for rawrgb images using imagemagick
39265 * src/image.c (imagemagick_load_image): Set wand size before loading
39266 blob when ':width' and ':height' are provided.
39268 * lisp/image.el (image-format-suffixes): Add 'image/x-rgb'.
39270 2016-12-02 Nikolay Kudryavtsev <nikolay.kudryavtsev@gmail.com>
39272 Fix 'sql-connect' on first invocation
39274 * lisp/progmodes/sql.el (sql-connect): Reorder code which sets
39275 param-var. (Bug#19452)
39277 2016-12-02 Eli Zaretskii <eliz@gnu.org>
39279 * lisp/vc/ediff-util.el (ediff-janitor): Doc fix. (Bug#25046)
39281 2016-12-02 Eli Zaretskii <eliz@gnu.org>
39283 Improve indexing of 'man'
39285 * doc/emacs/programs.texi (Man Page): Index 'man', not
39286 'manual-entry', as the latter is an alias for the former.
39287 Suggested by Hong Xu <hong@topbug.net>. (Bug#25033)
39289 2016-12-01 Paul Eggert <eggert@cs.ucla.edu>
39293 Backport from master. Sun C 5.14 supports C11 but not GCC
39294 extensions, and so refuses to compile Emacs without this patch.
39295 * src/alloc.c (lmalloc, lrealloc): Don't use INT_ADD_WRAPV on
39296 size_t, as in general this macro is restricted to signed types.
39298 2016-12-01 Paul Eggert <eggert@cs.ucla.edu>
39300 Fix type typo on Solaris
39302 * src/sysdep.c (system_process_attributes) [SOLARIS2 && HAVE_PROCFS]:
39303 Fix type mismatch, caught by --enable-check-lisp-object-type.
39305 2016-12-01 Paul Eggert <eggert@cs.ucla.edu>
39310 2016-11-27 md4,md5,sha*: tune for recent glibc _STRING_INLINE_unaligned
39311 2016-11-21 snippet/c++defs: Simplify _GL_CXXALIAS_* macros.
39312 * build-aux/snippet/c++defs.h:
39313 * lib/md5.c, lib/sha1.c, lib/sha256.c, lib/sha512.c:
39316 2016-12-01 Paul Eggert <eggert@cs.ucla.edu>
39318 Make struct font_drivers read-only
39320 This simplifies the code a bit, and makes the structs more
39321 shareable and less likely to become corrupt.
39322 * src/alloc.c (cleanup_vector):
39323 * src/font.c (valid_font_driver, font_prepare_cache)
39324 (font_finish_cache, font_get_cache, font_clear_cache)
39325 (register_font_driver, font_update_drivers):
39326 * src/font.h (struct font, struct font_driver_list)
39327 (valid_font_driver):
39328 struct font_drivers are now const.
39329 * src/font.c, src/ftcrfont.c, src/ftfont.c, src/nsfont.m, src/xfont.c:
39330 Omit no-longer-necessary decls.
39331 * src/ftcrfont.c (syms_of_ftcrfont):
39332 * src/ftxfont.c (syms_of_ftxfont):
39333 * src/xftfont.c (syms_of_xftfont):
39334 Omit no-longer-necessary initialization code.
39335 * src/ftcrfont.c (ftcrfont_driver):
39336 * src/ftfont.c (ftfont_driver):
39337 * src/ftxfont.c (ftxfont_driver):
39338 * src/macfont.m (macfont_driver):
39339 * src/nsfont.m (nsfont_driver):
39340 * src/xfont.c (xfont_driver):
39341 * src/xftfont.c (xftfont_driver):
39342 Use C99-style initializer for ease of maintenance, and make it const.
39343 * src/ftcrfont.c, src/ftxfont.c, src/xftfont.c:
39344 Refer to functions like ftfont_text_extents directly.
39345 * src/ftfont.c (ftfont_get_cache, ftfont_list, ftfont_list_family)
39346 (ftfont_has_char, ftfont_encode_char, ftfont_text_extents)
39347 (ftfont_get_bitmap, ftfont_anchor_point, ftfont_otf_capability)
39348 (ftfont_variation_glyphs, ftfont_filter_properties)
39349 (ftfont_combining_capability):
39350 * src/xfont.c (xfont_get_cache):
39351 Now extern, so that other modules’ struct font_drivers can use
39353 * src/macfont.m (macfont_descriptor_entity):
39354 * src/nsfont.m (nsfont_open):
39355 Use constant directly; this is clearer.
39357 2016-12-01 Richard Stallman <rms@gnu.org>
39359 Fix mail-combine-fields
39361 * lisp/mail/sendmail.el (mail-combine-fields): Call `save-excursion' to
39362 avoid losing our place in the search loop.
39364 (cherry picked from commit 5fbba6cceaf843cfca449eb000a0a65243b61808)
39366 2016-12-01 Helmut Eller <eller.helmut@gmail.com>
39368 Forth related improvements for etags
39370 Generate correct tags names for things like "(foo)".
39371 Previously "(foo" created.
39373 Fix a bug where a tag for "-bar" was created when encountering things
39376 Recognize more words from the Forth-2012 Standard.
39378 * lib-src/etags.c (Forth_words): Check for whitespace after defining
39379 words. Create tag with make_tag instead of get_tag to avoid notiname
39380 which isn't appropriate for Forth.
39382 * test/manual/etags/forth-src/test-forth.fth: Add some test cases.
39383 * test/manual/etags/ETAGS.good_1:
39384 * test/manual/etags/ETAGS.good_2:
39385 * test/manual/etags/ETAGS.good_3:
39386 * test/manual/etags/ETAGS.good_4:
39387 * test/manual/etags/ETAGS.good_5:
39388 * test/manual/etags/ETAGS.good_6:
39389 * test/manual/etags/CTAGS.good: Adapt to the changes in etags.c and
39392 2016-12-01 Eli Zaretskii <eliz@gnu.org>
39394 Fix bugs with buffer-local tags tables
39396 * lisp/progmodes/etags.el (visit-tags-table): After
39397 'visit-tags-table-buffer' returns, retrieve the value of
39398 'tags-file-name' from the buffer we started in. Force
39399 recomputation of 'tags-completion-table' next time it is used,
39400 since the list of tags table has changed.
39401 (visit-tags-table-buffer): Accept an additional optional argument
39402 CBUF, the buffer in which to start processing, and switch to that
39403 buffer if CBUF is non-nil. All callers changed to supply a
39404 non-nil CBUF when they call 'visit-tags-table-buffer' in a loop.
39406 (tags-completion-table): Accept an optional argument, the buffer
39407 for which to build 'tags-completion-table', and build that
39408 buffer's completion table.
39409 (tags-lazy-completion-table): Pass the current buffer to
39410 'tags-completion-table'.
39411 (tags-file-name): Don't say in the doc string that setting this
39412 variable directly is enough; say that 'visit-tags-table' should be
39413 used for that. (Bug#158) (Bug#17326) (Bug#23164)
39415 * doc/emacs/maintaining.texi (Select Tags Table): Delete the
39416 advice to set 'tags-file-name' directly.
39418 * test/lisp/progmodes/etags-tests.el: New tests.
39420 2016-12-01 Martin Rudalics <rudalics@gmx.at>
39422 Fix documentation of `window-combination-resize'
39424 * src/window.c (Vwindow_combination_resize): Fix doc-string.
39425 * doc/lispref/windows.texi (Recombining Windows): Fix
39426 documentation of `window-combination-resize'.
39428 2016-12-01 Paul Eggert <eggert@cs.ucla.edu>
39430 * src/lisp.h (LISP_INITIALLY_ZERO): Remove.
39432 All uses replaced by LISPSYM_INITIALLY.
39434 2016-12-01 Paul Eggert <eggert@cs.ucla.edu>
39436 Make Cairo safer for --enable-gcc-warnings
39438 * src/image.c (xcolor_to_argb32, pbm_load, jpeg_load_body, gif_load):
39439 Avoid overflow warnings about ‘0xff << 24’.
39440 (xpm_load, gif_load): Avoid unnecessary casts.
39441 (gif_load): Fewer ifdefs.
39443 2016-11-30 Thierry Volpiatto <thierry.volpiatto@gmail.com>
39445 Fix Condition in kbd_buffer_store_buffered_event (bug#19547).
39447 * src/keyboard.c (kbd_buffer_store_buffered_event): Should be NILP and not
39450 2016-11-29 Noam Postavsky <npostavs@gmail.com>
39452 Fix previous commit
39454 * lisp/vc/diff-mode.el (diff-refine-hunk): Make sure to go to beginning
39455 of hunk before calling `diff-hunk-style'.
39457 2016-11-29 Noam Postavsky <npostavs@gmail.com>
39459 * lisp/vc/diff-mode.el (diff-refine-hunk): Remove redundant variable.
39461 2016-11-29 Glenn Morris <rgm@gnu.org>
39463 Use archive-mode for .cbr files
39465 * lisp/files.el (auto-mode-alist): Add cbr. (Bug#24994)
39467 2016-11-29 Paul Eggert <eggert@cs.ucla.edu>
39471 * src/lisp.h (enum Lisp_Save_Type): Put SAVE_UNUSED,
39472 SAVED_INTEGER, SAVE_FUNCPOINTER, SAVE_POINTER, and SAVE_OBJECT
39473 into this enum rather than into an anonymous enum. This avoids
39474 diagnostics from Sun C 5.14 and is a bit clearer anyway.
39476 2016-11-29 Paul Eggert <eggert@cs.ucla.edu>
39478 Adjust lwlib to recent config.h change
39480 * lwlib/lwlib-Xaw.c: Include <stdlib.h> for 'abort' (Bug#24506).
39482 2016-11-29 Paul Eggert <eggert@cs.ucla.edu>
39484 * src/eval.c (clobbered_eassert): Check E's syntax.
39486 2016-11-29 Michael Albinus <michael.albinus@gmx.de>
39488 Improve user retrieval from auth-source in Tramp
39490 * lisp/net/tramp.el (tramp-read-passwd, tramp-clear-passwd):
39491 Use user for auth-source request only in case it exists.
39493 2016-11-29 Katsumi Yamaoka <yamaoka@jpl.org>
39495 shr.el: Don't render a normal table twice
39497 * lisp/net/shr.el (shr-collect-extra-strings-in-table):
39498 Don't render a table if it is called for the first time,
39499 IOW, recognize it to never be invalid (bug#25051).
39501 2016-11-29 Bogdan Creanga <bogdan.creanga@gmail.com> (tiny change)
39503 Typo fixes in elisp manual
39505 * doc/lispref/sequences.texi: Add missing '4' in result (Bug#25047).
39506 * doc/lispref/strings.texi (Text Comparison): Avoid duplicate
39507 definitions of 'string-prefix-p' and 'string-suffix-p'.
39508 * doc/lispref/symbols.texi (Definitions): Pluralize 'definitions'.
39510 2016-11-28 Dima Kogan <Dmitriy.Kogan@jpl.nasa.gov>
39512 Improve diff-mode navigation/manipulation
39514 This is Bug #17544.
39516 Navigation and use of diff buffers had several annoying corner cases
39517 that this patch fixes. These corner cases were largely due to
39518 inconsistent treatment of file headers. Say you have a diff such as
39529 @@ -608,6 +608,6 @@
39531 @@ -654,7 +654,7 @@
39534 The file headers here are the '---' and '+++' lines. With the point on
39535 such a line, hunk operations would sometimes refer to the next hunk and
39536 sometimes to the previous hunk. Most of the time it would be the
39537 previous hunk, which is not what the user would expect. This patch
39538 consistently treats such headers as the next hunk. So with this patch,
39539 if the point is on the '--- ccc' line, the point is seen as referring to
39542 Specific behaviors this fixes are:
39544 1. It should be possible to place the point in the middle of a diff
39545 buffer, and press M-k repeatedly to kill hunks in the order they appear
39546 in the buffer. With the point on hunk1, M-k M-k would kill hunk1 then
39547 hunk2. With the point on hunk3, it would kill hunk3 then hunk4; this is
39548 fine. However, with the point on hunk2, it'd kill hunk2 then hunk1.
39549 This is fixed by this patch.
39551 2. Similarly, it should be possible to apply hunks in order. Previously
39552 with the point at the start, C-c C-a would apply the hunk1, then move
39553 the point to the first @@ header, and thus C-c C-a would try to apply
39554 the same hunk again.
39556 * lisp/vc/diff-mode.el (diff--wrap-navigation): New function to add better
39557 navigation logic to diff-{hunk,file}-{next,prev}.
39558 (diff-hunk-next, diff-hunk-prev):
39559 (diff-file-next, diff-file-prev): Better navigation logic if
39560 skip-hunk-start is true, which happens when called interactively.
39561 (diff-bounds-of-hunk, diff-find-source-location):
39562 (diff-apply-hunk, diff-current-defun, diff-refine-hunk): Small tweaks to
39563 improve hunk navigation.
39565 2016-11-28 Noam Postavsky <npostavs@gmail.com>
39567 Upcase Path and ComSpec in process-environment
39569 Since 2016-07-18 "Keep w32 environment settings internal only", the
39570 upcasing of environment variables "Path" and "ComSpec" occurred after
39571 initializing process-environment. This meant that Lisp code trying to
39572 override "PATH" environment had no effect (Bug #24956).
39574 * src/w32.c (init_environment): Upcase the "Path" and "ComSpec" entries
39575 in Vprocess_environment.
39577 2016-11-28 Philipp Stephani <phst@google.com>
39579 Guard terminal parameter in XTerm mouse mode
39581 It has been observed (in the HTerm terminal emulator) that the
39582 event stored in the 'xterm-mouse-last-down' terminal parameter gets
39583 overwritten during a mouse drag operation, causing Emacs to attempt to
39584 synthesize the non-existing <drag-mouse-0> event. Copy the event into
39585 the terminal parameter to protect against such modifications.
39587 * lisp/xt-mouse.el (xterm-mouse-translate-1): Guard against modification
39588 of input event list.
39590 2016-11-28 Paul Eggert <eggert@cs.ucla.edu>
39592 Fix template for module functions
39594 Reported by Syohei YOSHIDA (Bug#24932).
39595 * modules/modhelp.py (TEMPLATES):
39596 c_func’s 2nd arg is ptrdiff_t, not int.
39598 2016-11-27 Paul Eggert <eggert@cs.ucla.edu>
39600 Pacify gcc -Wswitch.
39602 * src/keyboard.c (kbd_buffer_store_buffered_event):
39603 Move initialization into default case.
39605 2016-11-27 Thierry Volpiatto <thierry.volpiatto@gmail.com>
39607 Reuse already existing lisp symbols for ignore_event (bug#19547).
39609 * lisp/subr.el (while-no-input-ignore-events): Use them instead.
39610 * src/keyboard.c (kbd_buffer_store_buffered_event):
39611 Use help-echo for HELP_EVENT, iconify-frame for ICONIFY_EVENT,
39612 and make-frame-visible for DEICONIFY_EVENT.
39613 (syms_of_keyboard): Remove unneeded symbols.
39615 2016-11-27 Thierry Volpiatto <thierry.volpiatto@gmail.com>
39617 Allow configuring which event throw-on-input should ignore (bug#19547).
39619 * src/keyboard.c (kbd_buffer_store_buffered_event):
39620 Translate event to corresponding symbol from `while-no-input-ignore-events`
39621 and check them with Fmemq.
39622 (syms_of_keyboard): Declare new lisp variable `while-no-input-ignore-events`
39625 * lisp/subr.el (while-no-input-ignore-events): Add default values.
39627 * doc/lispref/commands.texi (Event Input Misc):
39628 Document while-no-input-ignore-events.
39631 2016-11-26 Tino Calancha <tino.calancha@gmail.com>
39633 ash, lsh avoid code duplication
39636 https://lists.gnu.org/r/emacs-devel/2016-11/msg00469.html
39637 * src/data.c (ash_lsh_impl): New function.
39638 (ash, lsh): Use it.
39640 2016-11-26 Simen Heggestøyl <simenheg@gmail.com>
39642 Add will change module to CSS property list
39644 * lisp/textmodes/css-mode.el (css-property-alist)
39645 (css-value-class-alist): Add new property and value class from CSS
39646 Will Change Module.
39648 2016-11-26 Paul Eggert <eggert@cs.ucla.edu>
39650 Don't access pointers to freed storage in regex.c
39652 Remove __BOUNDED_POINTERS__ code, which does not work with
39653 -fcheck-pointer-bound and which has undefined behavior anyway.
39654 Problem found when trying to port to gcc -fcheck-pointer-bounds.
39655 (This code was removed from glibc and gnulib regex.c many years ago.)
39656 * src/regex.c (ELSE_EXTEND_BUFFER_HIGH_BOUND): Remove.
39657 (EXTEND_BUFFER): Use a more-portable approach that avoids
39658 undefined behavior due to inspecting pointers to freed storage.
39660 2016-11-25 Paul Eggert <eggert@cs.ucla.edu>
39662 Port build to gcc -fcheck-pointer-bounds
39664 This does not let Emacs run, just build.
39665 * lib-src/etags.c (main):
39666 * lib-src/profile.c (main):
39667 Use return, not exit.
39668 * src/bytecode.c (BYTE_CODE_THREADED) [__CHKP__]:
39669 Do not define, as -fcheck-pointer-bounds is incompatible with taking
39670 addresses of labels.
39671 * src/menu.c (Fx_popup_dialog): Use eassume, not eassert,
39672 to pacify gcc -fcheck-pointer-bounds -Wnull-dereference.
39674 2016-11-25 Tino Calancha <tino.calancha@gmail.com>
39676 * lisp/emacs-lisp/subr-x.el (hash-table-keys, hash-table-values): Use cl-loop.
39678 2016-11-25 Simen Heggestøyl <simenheg@gmail.com>
39680 * lisp/rot13.el: Use lexical-binding
39682 2016-11-25 Mark Oteiza <mvoteiza@udel.edu>
39684 Add "using" to cl-loop debug spec (Bug#24750)
39686 * lisp/emacs-lisp/cl-macs.el (cl-loop): Add element to account for
39687 "using" hash table clause.
39689 2016-11-25 Hong Xu <hong@topbug.net> (tiny change)
39691 Allow user control of progress messages in cpp.el
39693 * lisp/progmodes/cpp.el (cpp-message-min-time-interval): New defcustom.
39694 (cpp-progress-time): Use 'cpp-message-min-time-interval'. Improve
39696 (cpp-highlight-buffer): Use 'cpp-progress-message' instead of
39697 'message' to print messages. (Bug#24861)
39699 2016-11-25 Wojciech Gac <wojciech.s.gac@gmail.com> (tiny change)
39701 New input method 'polish-prefix'
39703 * lisp/leim/quail/latin-pre.el ("polish-prefix"): New input
39704 method. (Bug#24967)
39706 * etc/NEWS: Mention the new input method.
39708 2016-11-25 Damien Cassou <damien@cassou.me>
39710 * lisp/isearch.el: Add 'provide'. (Bug#25026)
39712 2016-11-25 Philippe Vaucher <philippe.vaucher@gmail.com>
39714 Add missing 'provide's in preloaded packages
39716 * lisp/composite.el:
39718 * lisp/textmodes/text-mode.el: Add provide statement. (Bug#24985)
39720 2016-11-24 Alan Mackenzie <acm@muc.de>
39722 Handle correctly an (undocumented) bare mode in hack-local-variables.
39724 lisp/files.el (hack-local-variables-prop-line): When a file's first line
39725 contains only a mode specification without the string "mode:", return the mode
39726 symbol only when `handle-mode' is t.
39728 2016-11-23 Dima Kogan <dima@secretsauce.net>
39730 Clarify ediff-directories prompt
39732 * lisp/vc/ediff-mult.el (ediff-filegroup-action):
39733 * lisp/vc/ediff.el (ediff-directories,ediff-directory-revisions,
39734 ediff-directories3, ediff-merge-directories,
39735 ediff-merge-directories-with-ancestor, ediff-merge-directory-revisions,
39736 ediff-merge-directory-revisions-with-ancestor): Clarify prompt message for
39737 filename filter in interactive ediff. The new message makes it clear what is
39740 2016-11-23 Tino Calancha <tino.calancha@gmail.com>
39742 * test/lisp/ibuffer-tests.el (ibuffer-test-Bug24997): Add test for Bug#24997.
39744 2016-11-23 Ulf Jasper <ulf.jasper@web.de>
39748 * lisp/calendar/icalendar.el (icalendar--do-create-ical-alarm): Quote
39749 bracket in doc string (make checkdoc happy).
39750 (icalendar-import-buffer),
39751 (icalendar-import-buffer),
39752 (icalendar--convert-ical-to-diary),
39753 (icalendar--add-diary-entry): Rename argument diary-file to
39754 diary-filename (make checkdoc happy).
39755 (icalendar--convert-recurring-to-diary): Take care of byday-clause
39756 in monthly recurring events. Actually fix Bug#24199.
39758 * test/lisp/calendar/icalendar-tests.el (icalendar-import-bug-24199): New.
39760 2016-11-23 Tino Calancha <tino.calancha@gmail.com>
39762 * test/lisp/ibuffer-tests.el (ibuffer-test-Bug25000): Add test for Bug25000.
39764 2016-11-22 Philipp Stephani <phst@google.com>
39766 Comint: new user option for C-c M-r and C-c M-s
39768 This option allows the user to specify where to place point after these
39771 * lisp/comint.el (comint-move-point-for-matching-input): New user option.
39772 (comint-previous-matching-input-from-input): Use user option.
39774 2016-11-22 Michael Albinus <michael.albinus@gmx.de>
39776 Add tramp-eshell-directory-change to eshell-first-time-mode-hook
39778 * lisp/net/tramp.el (tramp-eshell-directory-change): Add it also to
39779 `eshell-first-time-mode-hook'.
39781 2016-11-22 Michael Albinus <michael.albinus@gmx.de>
39783 Dump also connection local variables in Tramp bug reports
39785 * lisp/net/tramp-cmds.el (tramp-bug, tramp-append-tramp-buffers):
39786 Dump also connection local variables.
39788 2016-11-21 Mark Oteiza <mvoteiza@udel.edu>
39790 Make sure elided long buffer names have ellipses added (Bug#24972)
39792 * lisp/ibuffer.el (ibuffer-compile-make-eliding-form): Restore the
39793 string concat, and chop "strvar" less the width of the ellipsis.
39794 (ibuffer-compile-make-substring-form): Add space as padding, to fix
39795 off-by-one in alignment.
39797 2016-11-21 Tino Calancha <tino.calancha@gmail.com>
39799 Buffer-menu-no-header: Detect a fake header
39801 * lisp/buff-menu.el (Buffer-menu-no-header): Use
39802 'tabulated-list-header-overlay-p' (Bug#24855).
39804 2016-11-21 Tino Calancha <tino.calancha@gmail.com>
39806 buff-menu: Add command to unmark all buffers
39808 Bind 'U' in buff-menu, bs and electric-buff-menu to commands
39809 to unmark all buffers (Bug#24880).
39810 * lisp/emacs-lisp/tabulated-list.el (tabulated-list-header-overlay-p):
39811 New predicate; return non-nil if tabulated-list has a fake header.
39812 * lisp/buff-menu.el (Buffer-menu-unmark-all-buffers):
39813 New command; remove all flags that use a particular mark from all the lines.
39814 Bind it to 'M-DEL'.
39815 (Buffer-menu-unmark-all):
39816 New command; remove all flags from all the lines. Bind it to 'U'.
39817 (Buffer-menu-marker-char, Buffer-menu-del-char): New variables.
39818 (Buffer-menu-delete, Buffer-menu-mark): Use them.
39819 (Buffer-menu-mode-map): Update menus.
39820 (Buffer-menu-mode): Update mode doc.
39821 * lisp/bs.el (bs-unmark-all, bs-unmark-previous): New commands.
39822 (bs-mode-map): Bind them to 'U' and '<backspace>' respectively.
39823 (bs-mode): Update mode doc.
39824 * lisp/ebuff-menu.el (electric-buffer-menu-mode-map):
39825 Bind Buffer-menu-unmark-all to 'U' and Buffer-menu-unmark-all-buffers
39827 (bs--down, bs-down, bs--up, bs-up, bs-unmark-current, bs-mark-current):
39828 Use point instead of cursor in doc string.
39829 (electric-buffer-list): Update mode doc.
39830 * doc/emacs/buffers.texi (Several Buffers): Mention Buffer-menu-unmark-all
39831 and Buffer-menu-unmark-all-buffers.
39833 2016-11-21 Mark Oteiza <mvoteiza@udel.edu>
39835 Revert "* lisp/htmlfontify.el (hfy-force-fontification): Use font-lock-ensure."
39837 This reverts commit 10efaf718c5258af0ba62077cf4e2aaf9fb90227.
39839 2016-11-21 Mark Oteiza <mvoteiza@udel.edu>
39841 Port htmlfontify to cl-lib
39843 * lisp/htmlfontify.el: (hfy-box-to-border-assoc, hfy-box-to-style):
39844 (hfy-decor, hfy-face-to-style-i, hfy-face-at, hfy-merge-adjacent-spans):
39845 (hfy-fontify-buffer, htmlfontify-string, hfy-mark-tag-names): Replace
39846 instances of cl aliases with their cl-lib counterparts.
39848 2016-11-21 Mark Oteiza <mvoteiza@udel.edu>
39850 * lisp/htmlfontify.el (hfy-force-fontification): Use font-lock-ensure.
39852 2016-11-21 Paul Eggert <eggert@cs.ucla.edu>
39854 Fix another CANNOT_DUMP problem
39856 Reported by Robert Pluim in:
39857 https://lists.gnu.org/r/emacs-devel/2016-11/msg00468.html
39858 * src/emacs.c (might_dump) [CANNOT_DUMP]: Move enum decl from here ...
39859 * src/lisp.h: ... to here.
39861 2016-11-21 Mark Oteiza <mvoteiza@udel.edu>
39863 Add further consideration to string-width (Bug#24972)
39865 * lisp/ibuffer.el (ibuffer-compile-make-eliding-form):
39866 (ibuffer-compile-make-substring-form): Use truncate-string-to-width.
39868 2016-11-21 Katsumi Yamaoka <yamaoka@jpl.org>
39870 Don't collect strings existing out of <tr>...</tr>
39872 * lisp/net/shr.el (shr-collect-extra-strings-in-table):
39873 Don't collect strings existing out of <tr>...</tr> to avoid
39874 duplication with what `shr-tag-table' renders.
39876 2016-11-20 Katsumi Yamaoka <yamaoka@jpl.org>
39878 * lisp/gnus/gnus-mh.el (gnus-summary-save-in-folder): Slightly change
39881 2016-11-20 Mike Kupfer <m.kupfer@acm.org>
39883 Add a variable to pass additional options to rcvstore
39885 * lisp/gnus/gnus-mh.el (gnus-rcvstore-options): New variable.
39886 (gnus-summary-save-in-folder): Include gnus-rcvstore-options in
39887 the arguments that are passed to rcvstore.
39889 cf. <nntp://news.gmane.org/gmane.emacs.gnus.general/87263>
39890 and followups, i.e., ding mailing list.
39892 2016-11-20 Paul Eggert <eggert@cs.ucla.edu>
39894 Fix undefined refs on some GNU/Linux hosts
39896 Problem reported by Ken Raeburn in:
39897 https://lists.gnu.org/r/emacs-devel/2016-11/msg00463.html
39898 * src/emacs.c (heap_bss_diff) [CANNOT_DUMP]: Remove, as this is
39899 not needed in the CANNOT_UNDUMP case. All uses removed. This
39900 removes unwanted references to my_endbss and my_endbss_static,
39901 which are not optimized away on some platforms.
39903 2016-11-20 Paul Eggert <eggert@cs.ucla.edu>
39905 Make CANNOT_DUMP work better on GNU/Linux
39907 Clean up some of the bitrot affecting the CANNOT_DUMP code. This
39908 lets the build succeed again, and fixes the testing framework so
39909 that most test cases now pass. About twenty test cases still
39910 fail, though, and we still have Bug#24974.
39911 * configure.ac (CANNOT_DUMP): Now empty if CANNOT_DUMP.
39912 (SYSTEM_MALLOC): Now true if CANNOT_DUMP. There should no longer
39913 be any point to messing with a private memory allocator unless
39915 * src/alloc.c (alloc_unexec_pre, alloc_unexec_post, check_pure_size):
39916 * src/image.c (reset_image_types):
39917 * src/lastfile.c (my_endbss, _my_endbss, my_endbss_static):
39918 Do not define if CANNOT_DUMP.
39919 * src/emacs.c (might_dump) [CANNOT_DUMP]: Now always false and local.
39920 (daemon_pipe) [!WINDOWSNT]: Now static.
39921 * test/Makefile.in (mostlyclean): Remove *.tmp files.
39922 (make-test-deps.mk): Elide CANNOT_DUMP chatter.
39924 2016-11-20 Paul Eggert <eggert@cs.ucla.edu>
39926 * src/xdisp.c (block_buffer_flips, unblock_buffer_flips): Now static.
39928 2016-11-20 Paul Eggert <eggert@cs.ucla.edu>
39930 Pacify --enable-gcc-warnings CANNOT_DUMP=yes
39932 * src/editfns.c (dump_tz_string) [CANNOT_DUMP || !HAVE_TZSET]:
39933 Do not define. If defining, do it in a smaller scope.
39935 2016-11-20 Mark Oteiza <mvoteiza@udel.edu>
39937 * lisp/ibuffer.el (ibuffer-compile-format): Use string-width instead of length
39939 2016-11-20 Eli Zaretskii <eliz@gnu.org>
39941 Fix redrawing non-selected frame after resize on MS-Windows
39943 * src/xdisp.c (redisplay_internal): If all the frames were
39944 successfully updated, reset the "garbaged" flag of each frame, to
39945 make sure it doesn't stay set.
39947 * src/w32term.c (w32_read_socket): Don't clear the frame if it's
39948 "garbaged", since expose_frame won't redraw the foreground then.
39951 2016-11-20 Michael Albinus <michael.albinus@gmx.de>
39953 Add file-local-name
39955 * doc/lispref/files.texi (Magic File Names): Add `file-local-name'.
39956 (Unique File Names): Use it.
39958 * etc/NEWS: Mention `file-local-name'.
39960 * lisp/files.el (file-local-name): New defun.
39961 (file-expand-wildcards):
39962 * lisp/eshell/em-tramp.el (eshell/su, eshell/sudo):
39963 * lisp/eshell/esh-ext.el (eshell-remote-command):
39964 * lisp/eshell/esh-proc.el (eshell-gather-process-output):
39965 * lisp/org/ob-core.el (org-babel-local-file-name):
39966 * lisp/progmodes/gud.el (gud-common-init, gud-format-command):
39967 * lisp/progmodes/python.el (python-shell-send-file):
39968 * lisp/shell.el (shell):
39969 * lisp/vc/ediff-diff.el (ediff-same-file-contents):
39970 * lisp/vc/vc-git.el (vc-git-checkin): Use it.
39972 2016-11-20 Tino Calancha <tino.calancha@gmail.com>
39974 * lisp/ibuffer.el (ibuffer-formats): Mention locked column in doc string.
39976 2016-11-19 Tino Calancha <tino.calancha@gmail.com>
39978 * src/editfns.c (format-time-string): Mention %q in doc string.
39980 2016-11-19 Paul Eggert <eggert@cs.ucla.edu>
39982 Document format-time-string %q
39984 * doc/lispref/os.texi (Time Parsing):
39985 * etc/NEWS: Document new %q functionality taken from gnulib.
39987 2016-11-19 Paul Eggert <eggert@cs.ucla.edu>
39992 2016-11-15 sys_time: add gnulib::timeval for C++
39993 2016-11-14 snippet/c++defs: fix real-floating arg functions in C++ mode
39994 2016-11-13 strftime: don't use __THROW
39995 2016-11-12 strftime: tune %q
39996 2016-11-12 Merge strftime.c changes from glibc
39997 2016-11-09 manywarnings: fix -Wno-missing-field-initializers detection
39998 2016-11-05 strftime,strptime: support %q to represent the quarter
40000 The glibc changes in turn incorporate the following strftime.c changes:
40001 2015-10-20 Convert misc function definitions to prototype style
40002 2015-09-26 [BZ #18985] out of range data to strftime() causes segfault
40003 2010-01-09 Add support for XPG7 testing
40004 2009-10-30 Implement Burmese language locale for Myanmar
40005 2008-06-13 [BZ #6612] pass reference to tzset_called around
40006 2007-10-16 [BZ #5184] Add tzset_called argument
40008 * build-aux/snippet/c++defs.h, lib/strftime.c, lib/sys_time.in.h:
40009 * m4/manywarnings.m4: Copy from gnulib.
40011 2016-11-19 Paul Eggert <eggert@cs.ucla.edu>
40013 Merge from origin/emacs-25
40015 07f45d7 ; Spelling fix
40016 1a210f0 * admin/release-process: Update versions and blocking bug num...
40017 36bafc9 Improve documentation of functions that accept time values
40020 # admin/release-process
40023 2016-11-19 Paul Eggert <eggert@cs.ucla.edu>
40025 Merge from origin/emacs-25
40027 4af5981 Add a comment in generated refcards about the source
40028 ef880a5 ; * etc/refcards/calccard.tex: Remove obsolete comment.
40029 4887e7c js-mode: Fix indent problem after a regexp
40030 e992ac0 Fix sluggish display of symbols in UTF-8 language environment
40031 1fc101b Don't confuse how Texinfo outputs @var with the input
40032 91aa5d1 * doc/lispref/display.texi (Scroll Bars): * doc/lispref/frame...
40033 f758fcd * doc/emacs/cmdargs.texi (Initial Options): Copyedit for --da...
40034 5b0cddd More fixes in copyright notices in etc/refcards/
40035 f994c20 Update copyright text in refcards
40036 9ad2ae7 Fix Outline command names
40037 26c3554 Send text received by bracketed paste to process
40038 db0b58d Correct the statement about programming modes always running ...
40039 78aece4 Improve documentation of 'occur'
40040 eb364fd Do call debugger on failed cl-assert
40041 3ef4ee8 Avoid infloop in python
40042 8da810f Don't refer to obsolete FEATURE-unload-hook
40043 4f478ca Improve documentation of dabbrevs
40044 7272e5d * lisp/chistory.el (list-command-history): Doc fix. (Bug#24890)
40045 89b7482 * lisp/simple.el (set-mark-command): Doc fix. (Bug#24890)
40046 3b199f7 Improve documentation of some Help commands
40047 93d3a0e Fix documentation of yes-or-no prompts
40048 af04919 Fix documentation of partial completion style
40049 ed80184 Fix documentation of the mode line on emacsclient frames
40050 e6be855 Fix description of 'C-z' in User manual
40051 16f7007 Improve and clarify documentation of Outline Mode
40052 31d93aa Add Emacs version number to nt/README.W32
40053 0b6b815 Fix python-mode hideshow regexp
40054 dc152c5 Modernize usage of 'macOS' in doc and comments
40055 84c5343 Prefer comments /* like this */ in C code
40056 bb61e50 * doc/lispref/loading.texi (Autoload): Better link (Bug#24845).
40057 3ef86fd Clarify documentation of face attribute functions
40058 de51d59 ; * nt/README.W32: Minor copyedits.
40059 db436e9 Don't call debug on failed cl-assert
40062 # doc/emacs/cmdargs.texi
40065 # lisp/auth-source.el
40066 # lisp/net/tramp-sh.el
40068 2016-11-19 Mark Oteiza <mvoteiza@udel.edu>
40070 Port RefTeX to cl-lib
40072 * lisp/textmodes/reftex-auc.el:
40073 * lisp/textmodes/reftex-cite.el: Use cl-lib.
40074 (reftex-do-citation, reftex-create-bibtex-file): Substitute cl-lib
40076 * lisp/textmodes/reftex-dcr.el: Use cl-lib.
40077 (reftex-view-regexp-match): Substitute cl-lib macro.
40078 * lisp/textmodes/reftex-global.el: Use cl-lib.
40079 (reftex-find-duplicate-labels, reftex-renumber-simple-labels):
40080 (reftex-translate): Substitute cl-lib macros.
40081 * lisp/textmodes/reftex-index.el: Use cl-lib.
40082 (reftex-index, reftex-index-select-tag, reftex-index-mode-map):
40083 (reftex-index-next-phrase, reftex-index-phrases-info):
40084 (reftex-query-index-phrase): Substitute cl-lib macros.
40085 * lisp/textmodes/reftex-parse.el: Use cl-lib.
40086 (reftex-parse-from-file, reftex-where-am-I, reftex-what-macro):
40087 (reftex-nth-arg, reftex-init-section-numbers, reftex-section-number):
40088 Substitute cl-lib macros.
40089 * lisp/textmodes/reftex-ref.el: Use cl-lib.
40090 (reftex-uniquify-label, reftex-offer-label-menu): Substitute cl-lib
40092 * lisp/textmodes/reftex-sel.el: Use cl-lib.
40093 (reftex-select-shared-map): Set keymap parent to special-mode-map.
40094 Flatten loop and remove digits and hyphen definitions from the map.
40095 (reftex-select-label-mode-map):
40096 (reftex-select-bib-mode-map): Use cl-lib macro, and flatten other loop.
40097 (reftex-insert-docstruct, reftex-select-unmark): Use cl-lib macros.
40098 * lisp/textmodes/reftex-vars.el (reftex-vref-is-default): Use
40100 * lisp/textmodes/reftex.el: Use cl-lib.
40101 (reftex-docstruct-symbol): Use cl-incf.
40102 (reftex-ref-style-toggle): Replace add-to-list with append.
40103 (reftex-compile-variables): Use cl-lib macros, and functions with
40104 compiler macros. cl-first is just an alias.
40105 (reftex-parse-args, reftex-scanning-info-available-p):
40106 (reftex-select-external-document, reftex-get-file-buffer-force): Use
40108 (reftex-isearch-minor-mode): Replace add-to-list with append.
40110 2016-11-19 Tino Calancha <tino.calancha@gmail.com>
40112 ibuffer-exchange-filters: Simplify code
40114 * lisp/ibuf-ext.el (ibuffer-exchange-filters): Use cl-rotatef.
40116 2016-11-19 Eli Zaretskii <eliz@gnu.org>
40118 Implement getrlimit and setrlimit for MS-Windows
40120 * src/w32heap.c (getrlimit, setrlimit): New functions.
40122 * src/emacs.c (main): Use 'rlim_t', not 'long', for values that
40123 should be compatible with 'struct rlimit' members.
40125 * nt/inc/sys/resource.h: New header file.
40127 * nt/mingw-cfg.site (ac_cv_func_getrlimit, ac_cv_func_setrlimit):
40130 2016-11-18 Mark Oteiza <mvoteiza@udel.edu>
40132 Move key mappings into reftex-mode-map defvar
40134 * lisp/textmodes/reftex.el (reftex-mode-map): Assimilate top-level
40136 (reftex-reset-mode): Just use dolist.
40138 2016-11-18 Mark Oteiza <mvoteiza@udel.edu>
40140 Derive reftex-index-mode from special-mode
40142 * lisp/textmodes/reftex-index.el (reftex-index-mode-map): Flatten
40143 loop. Remove digit keys and hyphen, as reftex-index-mode is derived
40144 from special-mode now.
40145 (reftex-index-mode): Derive from special-mode.
40146 (reftex-index-phrases-mode-map): Flatten loop. Fix erroneous docstring.
40148 2016-11-18 Mark Oteiza <mvoteiza@udel.edu>
40150 Clean up reftex-toc-mode-map
40152 * lisp/textmodes/reftex-toc.el: Remove cl.
40153 (reftex-toc-mode-map): Flatten loop. Remove mapping digit keys and
40154 hyphen, as reftex-toc-mode is derived from special-mode nowadays.
40156 2016-11-18 Philipp Stephani <phst@google.com>
40158 Prevent dubious argument lists
40160 See Bug#24912 and Bug#24913.
40162 * src/eval.c (funcall_lambda): Detect more dubious argument lists.
40163 * lisp/emacs-lisp/bytecomp.el (byte-compile-check-lambda-list): Detect
40164 more dubious argument lists.
40165 * test/src/eval-tests.el (eval-tests--bugs-24912-and-24913): Add unit
40168 2016-11-18 Tino Calancha <tino.calancha@gmail.com>
40170 Add test suite for buff-menu.el
40172 * test/lisp/buff-menu-tests.el: New file.
40173 (buff-menu-24962): Add test for Bug#24962.
40175 2016-11-18 Wojciech Gac <wojciech.s.gac@gmail.com> (tiny change)
40177 Add cyrillic-tuvan input method
40179 * lisp/leim/quail/cyrillic.el ("cyrillic-tuvan"): New input
40180 method. (Bug#24942)
40182 * etc/NEWS: Mention addition of 'cyrillic-tuvan' input method.
40184 2016-11-18 Alexander Gramiak <agrambot@gmail.com>
40186 Extend 'indent-relative' when its arg is non-nil
40188 * lisp/indent.el (indent-relative-maybe): New obsolete alias.
40189 (indent-relative-first-indent-point): Renamed from
40190 'indent-relative-maybe'.
40191 (indent-relative): Now accepts an additional optional argument.
40192 The first argument was renamed to FIRST-ONLY. Doc fix. Support
40193 the additional arg. (Bug#24766)
40195 2016-11-17 Dmitry Gutov <dgutov@yandex.ru>
40197 Add example for bug#24854
40199 * test/manual/indent/js.js: Add example for bug#24854.
40201 2016-11-17 Mark Oteiza <mvoteiza@udel.edu>
40203 Port registry.el the rest of the way to cl-lib
40205 This file already is using cl-lib functions at runtime; eieio ultimately
40206 loads cl-lib, which explains why doing so wasn't an issue.
40207 * lisp/registry.el: Require cl-lib.
40208 (registry-db, registry--match, registry-search, registry-delete):
40209 (registry-insert, registry-reindex): Replace cl macros with cl-lib ones.
40210 (registry-collect-prune-candidates): Replace cl function with cl-lib one.
40212 2016-11-17 Mark Oteiza <mvoteiza@udel.edu>
40214 Fix arglist in python.el (Bug#24762)
40216 * lisp/progmodes/python.el: Remove unneeded second args.
40217 (python-define-auxiliary-skeleton): DOC arg should be &optional.
40219 2016-11-17 Simen Heggestøyl <simenheg@gmail.com>
40221 Add tests for rot13.el
40223 * lisp/rot13.el (rot13): Docstring correction.
40225 * test/lisp/rot13-tests.el: New file with tests for rot13.el.
40227 2016-11-17 Michael Albinus <michael.albinus@gmx.de>
40229 Fix Bug#24947 (Tramp + ido)
40231 * lisp/ido.el (ido-read-internal): Prevent eager Tramp connection.
40233 * lisp/net/tramp.el (tramp-handle-file-name-case-insensitive-p):
40234 Run remote tests only if a connection is established only. (Bug#24947)
40236 2016-11-16 Ken Brown <kbrown@cornell.edu>
40238 Unbreak the build on Darwin (Bug#24957)
40240 * src/fileio.c (file_name_case_insensitive_p) [DARWIN_OS]: Fix
40241 mistakes in recent commit.
40243 2016-11-16 Nicolas Petton <nicolas@petton.fr>
40245 Do not use map.el in seq-tests.el
40247 * test/lisp/emacs-lisp/seq-tests.el: Do not use map.el. map.el was
40248 introduced in Emacs 25.1, but seq.el is also available in GNU ELPA for
40251 2016-11-16 Tino Calancha <tino.calancha@gmail.com>
40253 Update parameter :version to 26.1 in several defcustom
40255 Following defcustom where added or modified for 25.2 release.
40256 In fact all these changes belong to 26.1 release.
40257 * lisp/battery.el (battery-linux-sysfs-regexp)
40258 * lisp/comint.el (comint-password-prompt-regexp)
40259 * lisp/dired.el (dired-always-read-filesystem)
40260 * lisp/image.el (image-scaling-factor)
40261 * lisp/ibuf-ext.el (ibuffer-never-search-content-name)
40262 (ibuffer-never-search-content-mode)
40263 * lisp/mouse.el (mouse-select-region-move-to-beginning)
40264 * lisp/net/net-utils.el (iwconfig-program, iwconfig-program-options)
40265 (netstat-program, route-program, route-program-options)
40266 * lisp/net/sieve-manage.el (sieve-manage-default-stream)
40267 * lisp/progmodes/grep.el (grep-save-buffers)
40268 * lisp/vc/add-log.el (change-log-directory-files)
40269 * lisp/url/url-vars.el (url-user-agent)
40270 * lisp/vc/vc-hg.el (vc-hg-symbolic-revision-styles)
40271 (vc-hg-use-file-version-for-mode-line-version)
40272 (vc-hg-parse-hg-data-structures)
40273 * lisp/wdired.el (wdired-create-parent-directories)
40274 * lisp/faces.el (homoglyph, nobreak-hyphen, read-multiple-choice-face)
40275 * lisp/gnus/gnus-art.el (gnus-article-encrypt-protocol)
40276 (gnus-button-url-regexp)
40277 * lisp/window.el (switch-to-buffer-preserve-window-point)
40278 * lisp/ibuffer.el (ibuffer-formats, ibuffer-locked-char)
40279 (ibuffer-locked-buffer)
40280 * lisp/textmodes/flyspell.el (flyspell-sort-corrections-function)
40281 * lisp/emacs-lisp/edebug.el (edebug-sit-on-break)
40282 * lisp/gnus/message.el (message-user-fqdn)
40283 * lisp/simple.el (shell-command-dont-erase-buffer)
40284 (extended-command-suggest-shorter)
40285 * lisp/net/shr.el (shr-use-fonts)
40286 * lisp/files.el (mounted-file-systems, kill-emacs-query-functions)
40288 2016-11-15 Glenn Morris <rgm@gnu.org>
40290 Add --new-daemon, which runs in the foreground and does not fork
40292 This is intended for modern init systems such as systemd,
40293 which manage many of the traditional aspects of daemon behavior
40294 themselves. (Bug#2677)
40295 * src/emacs.c (daemon_type): New integer.
40296 (usage, standard_args): Add --old-daemon and --new-daemon.
40297 (main): Handle --old-daemon and --new-daemon arguments.
40298 Restrict all the forking and complicated daemon stuff to old-daemon.
40299 (Fdaemon_initialized): Handle new-style daemon.
40300 * src/lisp.h (IS_DAEMON, DAEMON_RUNNING) [!WINDOWNT]:
40301 Replace daemon_pipe with daemon_type.
40302 * doc/emacs/cmdargs.texi (Initial Options):
40303 * doc/emacs/glossary.texi (Glossary):
40304 * doc/emacs/misc.texi (Emacs Server):
40305 * doc/lispref/display.texi (Window Systems):
40306 * doc/lispref/os.texi (Startup Summary): Related doc updates.
40307 * etc/NEWS: Mention this.
40308 * etc/emacs.service: Use Type=simple and --new-daemon.
40310 2016-11-15 Glenn Morris <rgm@gnu.org>
40312 * src/emacs.c (usage_message): Mention named daemon. (Bug#24949)
40313 * doc/man/emacs.1.in: Likewise.
40315 2016-11-15 Ken Brown <kbrown@cornell.edu>
40317 Simplify case-insensitivity checks on Mac OS X
40319 * src/fileio.c (file_name_case_insensitive_p): Try skipping the
40320 Darwin code and instead using pathconf with _PC_CASE_SENSITIVE.
40321 Leave in two alternatives conditionally compiled based on
40322 DARWIN_OS_CASE_SENSITIVE_FIXME in case pathconf doesn't work.
40324 * etc/PROBLEMS: Mention the possible problem with pathconf on
40327 2016-11-15 Glenn Morris <rgm@gnu.org>
40329 * src/emacs.c (sort_args): Warn about multiple matches.
40331 2016-11-15 Michael Albinus <michael.albinus@gmx.de>
40333 Implement file name handler for `file-name-case-insensitive-p'
40335 * doc/lispref/files.texi (Truenames): `file-name-case-insensitive-p'
40336 is also applicable for remote hosts.
40338 * lisp/net/tramp.el (tramp-methods): Improve docstring.
40339 (tramp-file-name-for-operation): Add `file-name-case-insensitive-p'.
40340 (tramp-handle-file-name-case-insensitive-p): New defun.
40342 * lisp/net/tramp-smb.el (tramp-methods) <smb>:
40343 Add `tramp-case-insensitive' entry.
40345 * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist)
40346 * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
40347 * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist)
40348 * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
40349 <file-name-case-insensitive-p>: Add handler. (Bug#22300, Bug#24441)
40351 2016-11-15 Mark Oteiza <mvoteiza@udel.edu>
40353 Nix more uses of default-FOO variables (Bug#24946)
40355 * lisp/cedet/semantic/util-modes.el (semantic-stickyfunc-mode):
40356 Check for header-line-format instead.
40357 * lisp/emulation/viper.el (viper-load-custom-file): Reference
40358 major-mode instead.
40359 * lisp/mail/feedmail.el (feedmail-fill-to-cc-fill-column): Use
40360 fill-column instead.
40362 2016-11-15 Simen Heggestøyl <simenheg@gmail.com>
40364 Complete the name of PostgreSQL databases
40366 * lisp/progmodes/sql.el (sql-postgres-login-params): Complete database
40368 (sql-postgres-list-databases): New function returning a list of
40369 available PostgreSQL databases.
40371 * test/lisp/progmodes/sql-tests.el: New file with tests for sql.el.
40373 2016-11-14 Sam Steingold <sds@gnu.org>
40375 add `vc-git-print-log-follow' and use it in `vc-git-print-log'
40377 When `vc-git-print-log-follow' is true and all files are
40378 non-directory, pass "--follow" to "git log".
40379 This works around bug#8756 and bug#16422.
40381 2016-11-14 Sam Steingold <sds@gnu.org>
40383 `toggle-truncate-lines' obsoletes `gnus-summary-toggle-truncation'
40385 vc-git-print-log: pass "--follow" to "log" to handle renamed files
40387 2016-11-14 Eli Zaretskii <eliz@gnu.org>
40389 Revert "Improve case-insensitive checks (Bug#24441)"
40391 This reverts commit 2f5e0b1bf7b0ac4f450847db34d599a072020600.
40392 I see no reason for removing code, documentation, and comments
40393 in the original commit.
40395 2016-11-14 Wilson Snyder <wsnyder@wsnyder.org>
40397 Update verilog-mode.el
40399 * lisp/progmodes/verilog-mode.el (verilog-read-decls)
40400 (verilog-calc-1): Fix "default clocking" indentation and
40401 preventing AUTOs from working, bug1084. Reported by Alan Morgan.
40402 (verilog-diff-report): Fix `verilog-diff-report'
40403 not returning bad status on differences, bug1087. Reported by
40405 (verilog-auto-inst-param-value)
40406 (verilog-auto-inst-param-value-type, verilog-read-sub-decls)
40407 (verilog-read-sub-decls-expr, verilog-read-sub-decls-gate)
40408 (verilog-read-sub-decls-line, verilog-read-sub-decls-sig)
40409 (verilog-read-sub-decls-type): When
40410 `verilog-auto-inst-param-value-type' is set, which is now the
40411 default, AUTOINPUT etc will now substitute parameter types from
40412 submodules, bug1061. Reported by Brad Dobbie.
40413 (verilog-auto-reset, verilog-backward-case-item)
40414 (verilog-extended-case-re, verilog-read-always-signals-recurse):
40415 Fix indentation of randcase, bug1072. Reported by David Rogoff.
40416 (verilog-read-sub-decls-expr)
40417 (verilog-sig-multidim-string): Fix AUTOINST ordering of dimensions
40418 in generated comments, bug1057. Reported by Kaushal Modi.
40419 (verilog-auto-wire-comment, verilog-insert-definition):
40420 Add `verilog-auto-wire-comment' to suppress wire comments. Reported by
40422 (verilog-extended-complete-re): Fix indentation
40423 of class static functions, bug1053. Reported by Gregory
40425 (verilog-module-filenames): Support tramp for
40426 finding verilog modules. Reported by Nevada Sanchez.
40428 2016-11-14 Paul Eggert <eggert@cs.ucla.edu>
40430 Improve case-insensitive checks (Bug#24441)
40432 * doc/lispref/files.texi (Truenames): Simplify documentation,
40433 to avoid giving too much platform-specific information that
40434 may not be accurate anyway.
40435 * src/fileio.c (file_name_case_insensitive_p): Use pathconf with
40436 _PC_CASE_SENSITIVE if _PC_CASE_INSENSITIVE is not available.
40437 Otherwise if one approach fails (e.g., with errno == EINVAL), fall
40438 back on an alternative rather than returning false. Try skipping
40439 the Darwin code, as it (1) no longer seems to be needed and (2)
40440 does not seem to match the Apple documentation. Leave in two
40441 alternatives conditionally compiled based on
40442 DARWIN_OS_CASE_SENSITIVE_FIXME in case (1) or (2) is incorrect.
40444 2016-11-14 Eli Zaretskii <eliz@gnu.org>
40446 Fix documentation changes of connection-local variables
40448 * etc/NEWS: Fix last change.
40449 * doc/lispref/variables.texi (Connection Local Variables): Minor fixes.
40450 * doc/lispref/elisp.texi (Top): Update the master menu.
40452 2016-11-14 Michael Albinus <michael.albinus@gmx.de>
40454 Implement connection-local variables
40456 * doc/lispref/variables.texi (Connection Local Variables): New section.
40458 * etc/NEWS: Mention connection-local variables.
40460 * lisp/files-x.el (enable-connection-local-variables)
40461 (connection-local-variables-alist, connection-local-class-alist)
40462 (connection-local-criteria-alist): New defvars.
40463 (connection-local-get-classes)
40464 (connection-local-get-class-variables): New defsubst.
40465 (connection-local-set-classes)
40466 (connection-local-set-class-variables)
40467 (hack-connection-local-variables)
40468 (hack-connection-local-variables-apply): New defuns.
40469 (with-connection-local-classes): New defmacro.
40471 * lisp/net/tramp.el (tramp-set-connection-local-variables): New defun.
40473 * lisp/net/tramp-adb.el (tramp-adb-maybe-open-connection):
40474 * lisp/net/tramp-gvfs.el (tramp-gvfs-maybe-open-connection):
40475 * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
40476 * lisp/net/tramp-smb.el (tramp-smb-maybe-open-connection): Use it.
40478 * test/lisp/files-x-tests.el: New file.
40480 2016-11-14 Tino Calancha <tino.calancha@gmail.com>
40482 tabulated-list: extend truncation into next align-right column
40485 https://lists.gnu.org/r/emacs-devel/2016-10/msg01101.html
40486 * lisp/emacs-lisp/tabulated-list.el
40487 (tabulated-list--near-rows): New variable.
40488 (tabulated-list-print, tabulated-list-set-col): Use it.
40489 (tabulated-list--col-local-max-widths): New defsubst.
40490 (tabulated-list-print-col): Use it. If the next column is
40491 align-right, and has some space left then don't truncate to width,
40492 use some of the available space from the next column.
40494 2016-11-13 Katsumi Yamaoka <yamaoka@jpl.org>
40496 * lisp/net/shr.el (shr-collect-extra-strings-in-table): Fix indentation.
40498 * lisp/net/shr.el (shr-tag-table): Avoid duplication of images.
40499 (shr-collect-extra-strings-in-table): Render images as well.
40501 2016-11-13 Ken Brown <kbrown@cornell.edu>
40503 Use the new 'file-name-case-insensitive-p' function
40505 * lisp/international/mule.el (auto-coding-alist-lookup):
40506 * lisp/files.el (file-truename):
40507 (abbreviate-file-name, set-auto-mode, file-relative-name):
40508 * lisp/emacs-lisp/package.el (package-untar-buffer): Use
40509 'file-name-case-insensitive-p' instead of 'system-type' to test
40510 case-insensitivity.
40512 2016-11-13 Glenn Morris <rgm@gnu.org>
40514 Include a systemd user unit file. (Bug#16507)
40516 * etc/emacs.service: New file.
40517 * doc/emacs/misc.texi (Emacs Server): Mention systemcl --user.
40518 * Makefile.in (libdir): New, set by configure.
40519 (systemdunitdir): New variable.
40520 (install-etc, uninstall): Handle the emacs.service file.
40522 2016-11-13 Paul Eggert <eggert@cs.ucla.edu>
40524 Port --enable-gcc-warnings to Ubuntu 16.10
40526 * src/gmalloc.c: Include <stdlib.h>, so it declares
40527 hybrid_aligned_alloc (the definiens of the aligned_alloc macro),
40528 so that GCC doesn't complain that hybrid_aligned_alloc is
40529 defined without being declared.
40531 2016-11-13 Ken Brown <kbrown@cornell.edu>
40533 Silence tramp warning
40535 * lisp/net/tramp.el (tramp-file-name-for-operation): Add
40536 'file-name-case-insensitive-p' as a known file primitive.
40539 2016-11-12 Ken Brown <kbrown@cornell.edu>
40541 Check case-sensitivity when renaming files
40543 * src/fileio.c (file_name_case_insensitive_p)
40544 (Ffile_name_case_insensitive_p): New functions.
40545 (Frename_file): Allow renames that simply change case when the
40546 FILE argument is on a case-insensitive filesystem. (Bug#24441)
40548 * lisp/dired-aux.el (dired-do-create-files): Use
40549 'file-name-case-insensitive-p' instead of 'system-type' to check
40550 for case-insensitivity. (Bug#24441)
40552 * doc/lispref/files.texi (Truenames): Document
40553 'file-name-case-insensitive-p'.
40555 2016-11-12 Ken Brown <kbrown@cornell.edu>
40557 Unbreak the build on Cygwin
40559 * configure.ac (system_malloc) [CYGWIN]: Unset.
40561 2016-11-11 Mark Oteiza <mvoteiza@udel.edu>
40565 * lisp/emacs-lisp/chart.el (chart-mode): Derive from special-mode.
40566 (chart-draw): Wrap in with-silent-modifications. Instead of inserting a
40567 fixed number of newlines, use window-height.
40569 (chart-trim): Use dolist.
40570 (chart-file-count): The previous implementation was buggy and missed
40571 extensions. Use file-name-extension instead to detect file extensions.
40572 Also use dolist and cl-incf to reduce verbosity.
40574 2016-11-11 Katsumi Yamaoka <yamaoka@jpl.org>
40576 * lisp/net/shr.el (shr--preferred-image): Add CR to whitespace regexps.
40577 (shr-collect-extra-strings-in-table):
40578 Render extra tables in an invalid html as well.
40580 2016-11-10 Katsumi Yamaoka <yamaoka@jpl.org>
40582 * lisp/net/shr.el (shr--preferred-image): Ignore whitespace (bug#24893).
40584 2016-11-09 Eli Zaretskii <eliz@gnu.org>
40586 Resurrect 'memory-limit' on MS-Windows
40588 * nt/mingw-cfg.site (ac_cv_func_sbrk): Set to "yes", otherwise
40589 'memory-limit' will produce a trivial and useless result on Windows.
40591 2016-11-09 Mark Oteiza <mvoteiza@udel.edu>
40595 * lisp/net/quickurl.el (quickurl-format-function):
40596 (quickurl-sort-function): Use named function.
40597 (quickurl-list-mode-map): Remove lines that are extraneous now that the
40598 parent mode is special-mode.
40599 (quickurl-format-url, quickurl-sort-urls): New functions.
40600 (quickurl-read, quickurl): Use defun, as no cl-defun feature appears to
40602 (quickurl-list-mode): Derive from special-mode. Nix setting
40603 buffer-read-only: special-mode does that.
40604 (quickurl-list-populate-buffer): Use dolist instead.
40605 (quickurl-list-quit): Use quit-window. It looks like this was written
40606 before the quit-window rewrite. quit-window is very useful now.
40608 2016-11-09 Michael Albinus <michael.albinus@gmx.de>
40610 Refine multi-hop specs in Tramp
40612 * lisp/net/tramp.el (tramp-tramp-file-p): Suppress "/:" and "/c:".
40614 * test/lisp/net/tramp-tests.el
40615 (tramp-test01-file-name-syntax): Multi-hop specs don't need a
40616 method. "/h:" is allowed on non MS Windows.
40618 2016-11-08 Daniel Colascione <dancol@dancol.org>
40620 Avoid infloop in python
40624 * lisp/progmodes/python.el (python-info-docstring-p): Improve
40625 infloop avoidance: replace (bobp) with generic test for
40627 * test/lisp/progmodes/python-tests.el (python-bob-infloop-avoid): Add
40630 2016-11-08 Daniel Colascione <dancol@dancol.org>
40632 Make gnus/message.el work correctly under lexical binding
40634 * lisp/gnus/message.el (message-send-mail): Rename `arg' to
40635 `_' to shut up the byte compiler.
40636 (sha1-maximum-internal-length, smtpmail-smtp-server)
40637 (smtpmail-smtp-service): add missing defvars
40639 2016-11-08 Michael Albinus <michael.albinus@gmx.de>
40643 * lisp/net/tramp.el (tramp-file-name-regexp): Make it a
40644 defvar. Fix docstring.
40645 (tramp-completion-file-name-handler-alist): Fix docstring.
40646 (tramp-register-file-name-handlers): Reassign
40647 `tramp-file-name-regexp' to the car of
40648 `tramp-file-name-structure'. (Bug#24889)
40650 2016-11-08 Paul Eggert <eggert@cs.ucla.edu>
40652 Port to FreeBSD 11 AMD
40654 Problem reported by Ashish Shukla (Bug#24892). I tested
40655 this on FreeBSD 11 x86-64 with HAVE_SBRK manually undefined.
40656 * configure.ac (system_malloc): Set to 'yes' if there is no sbrk.
40657 (sbrk): Check whether it exists.
40658 * src/alloc.c (my_heap_start) [!GNU_LINUX]:
40659 Do not define, since this function is now used only on GNU/Linux,
40660 and sbrk might not exist on other platforms.
40661 (malloc_initialize_hook) [!GNU_LINUX]:
40662 Do not call my_heap_start, since its side effect will never be used.
40663 (Fmemory_limit) [!HAVE_SBRK]: Do not call sbrk.
40664 * src/unexelf.c (unexec) [!HAVE_SBRK]: Assume that nothing like
40667 2016-11-08 Paul Eggert <eggert@cs.ucla.edu>
40669 Port emacsclient to FreeBSD 11 etc.
40671 * lib-src/emacsclient.c: Include <string.h>. This is needed on
40672 platforms like FreeBSD 11 that use code involving strlen etc., and
40673 because <config.h> no longer includes string.h.
40675 2016-11-07 Mark Oteiza <mvoteiza@udel.edu>
40677 Prescribe history for read-regexp in query-replace
40679 In the fix for bug#24580, the history argument for read-regexp was
40680 removed erroneously; read-regexp's history argument defaults to
40681 regexp-history, not minibuffer-history.
40682 * lisp/replace.el (query-replace-read-from): Tell read-regexp to use
40683 minibuffer-history. Fixes bug#24873.
40685 2016-11-07 Mark Oteiza <mvoteiza@udel.edu>
40687 Remove obsolete default-FOO variables
40689 * etc/NEWS: Indicate the removed variables.
40690 * lisp/emacs-lisp/edebug.el (edebug-outside-mark): Fix comment.
40691 * lisp/subr.el (default-mode-line-format, default-header-line-format):
40692 (default-line-spacing, default-abbrev-mode, default-ctl-arrow):
40693 (default-truncate-lines, default-left-margin, default-tab-width):
40694 (default-case-fold-search, default-left-margin-width):
40695 (default-right-margin-width, default-left-fringe-width):
40696 (default-right-fringe-width, default-fringes-outside-margins):
40697 (default-scroll-bar-width, default-vertical-scroll-bar):
40698 (default-indicate-empty-lines, default-indicate-buffer-boundaries):
40699 (default-fringe-indicator-alist, default-fringe-cursor-alist):
40700 (default-scroll-up-aggressively, default-scroll-down-aggressively):
40701 (default-fill-column, default-cursor-type):
40702 (default-cursor-in-non-selected-windows):
40703 (default-buffer-file-coding-system, default-major-mode):
40704 (default-enable-multibyte-characters): Remove obsolete declarations.
40705 * src/buffer.c (default-mode-line-format, default-header-line-format):
40706 (default-line-spacing, default-abbrev-mode, default-ctl-arrow):
40707 (default-truncate-lines, default-left-margin, default-tab-width):
40708 (default-case-fold-search, default-left-margin-width):
40709 (default-right-margin-width, default-left-fringe-width):
40710 (default-right-fringe-width, default-fringes-outside-margins):
40711 (default-scroll-bar-width, default-vertical-scroll-bar):
40712 (default-indicate-empty-lines, default-indicate-buffer-boundaries):
40713 (default-fringe-indicator-alist, default-fringe-cursor-alist):
40714 (default-scroll-up-aggressively, default-scroll-down-aggressively):
40715 (default-fill-column, default-cursor-type):
40716 (default-cursor-in-non-selected-windows):
40717 (default-buffer-file-coding-system, default-major-mode):
40718 (default-enable-multibyte-characters): Remove.
40719 * src/fileio.c (choose_write_coding_system): Fix comment.
40720 * src/lisp.h (DEFVAR_BUFFER_DEFAULTS): Remove.
40722 2016-11-07 Eli Zaretskii <eliz@gnu.org>
40724 Improve the tutorial
40726 * etc/tutorials/TUTORIAL: Minor copyedits. (Bug#24890)
40727 * etc/tutorials/TUTORIAL.he: Follow suit.
40729 2016-11-06 Paul Eggert <eggert@cs.ucla.edu>
40731 Restore file descriptor limit in subprocesses
40733 Problem reported by Philipp Stephani (Bug#24869).
40734 * src/callproc.c (child_setup) [!DOS_NT]:
40735 Call restore_nofile_limit in the child.
40736 * src/process.c (nofile_limit) [HAVE_SETRLIMIT]: New static var.
40737 (restore_nofile_limit): New function.
40738 (init_process_emacs) [HAVE_SETRLIMIT]: Set the new var.
40740 2016-11-06 Mark Oteiza <mvoteiza@udel.edu>
40742 Remove some subr.el functions obsoleted in 22.1
40744 * etc/NEWS: Document removed functions. Also mention the "face"
40745 variables that have been removed recently.
40746 * lisp/subr.el (window-dot, set-window-dot, read-input, show-buffer):
40747 (eval-current-buffer, string-to-int, insert-string, makehash): Remove.
40749 2016-11-05 Paul Eggert <eggert@cs.ucla.edu>
40751 Prefer comments /* like this */ in C code
40753 2016-11-05 Johan Bockgård <bojohan@gnu.org>
40755 * lisp/subr.el (copy-tree): Handle vector in cdr. (Bug#24876)
40757 2016-11-05 Nick Terrell <nickrterrell@gmail.com> (tiny change)
40759 Support zstd compressed files
40761 * lisp/jka-cmpr-hook.el (jka-compr-compression-info-list): Add
40762 zstd compression info: <http://facebook.github.io/zstd/>.
40763 (jka-compr-mode-alist-additions): Handle .tzst suffix for zstd
40764 compressed tar archives. (Bug#24853)
40766 2016-11-05 Eli Zaretskii <eliz@gnu.org>
40768 Enlarge DUMPED_HEAP_SIZE
40770 * src/w32heap.c (DUMPED_HEAP_SIZE) [_WIN64 || WIDE_EMACS_INT]:
40771 Enlarge to 21MB. Reported by Richard Copley <rcopley@gmail.com>.
40773 2016-11-04 Paul Eggert <eggert@cs.ucla.edu>
40778 2016-11-03 intprops: port to older XL C
40779 * lib/intprops.h: Copy from gnulib.
40781 2016-11-04 Paul Eggert <eggert@cs.ucla.edu>
40783 Merge from origin/emacs-25
40785 acae275 ; Spelling fixes
40786 d8fac73 Update README for precompiled windows Emacs.
40787 23570fd Clarify documentation of 'vc-responsible-backend' wrt symlinks
40788 f708cb2 Clarify doc string of 'transpose-sexps'
40789 cd05b1d Fix docstring of 'browse-url-firefox-new-window-is-tab'
40790 bdc89eb Improve documentation of 'font-lock-remove-keywords'
40791 4a0c590 Fix documentation of the command summary key
40792 0221b7a Mark relocation workarounds with REL_ALLOC
40794 2016-11-04 Paul Eggert <eggert@cs.ucla.edu>
40796 Merge from origin/emacs-25
40798 dbb3410 python.el: Fix detection of native completion in Python 3 (bu...
40799 91c97b6 * Makefile.in (install-arch-indep): Skip etc/refcards/emacsve...
40800 9c1cb8d * lisp/subr.el (set-transient-map): Exit for unbound events (...
40801 9c247d2 Update category-table for Chinese characters
40802 43986d1 Inhibit buffer relocation during regex searches
40803 fee4cef Revert fixes to allocation of regex matching
40805 2016-11-04 Mark Oteiza <mvoteiza@udel.edu>
40807 Fix references to long obsoleted functions/aliases
40809 * doc/lispintro/emacs-lisp-intro.texi (Miscellaneous):
40810 * doc/misc/cl.texi (Conditionals):
40811 * doc/misc/speedbar.texi (Major Display Modes): Use string-to-number,
40813 * lisp/emulation/viper.el (viper-go-away): Use major-mode, not
40814 default-major-mode.
40815 * lisp/textmodes/reftex-toc.el (reftex-toc-visit-location): show-window
40816 here is not a function call, but shorten the binding names anyways.
40817 Also, use pop-to-buffer-same-window instead of switch-to-buffer cf
40819 * lisp/textmodes/sgml-mode.el (html-tag-alist): Use read-string, not
40822 2016-11-04 Mark Oteiza <mvoteiza@udel.edu>
40824 * lisp/emacs-lisp/pcase.el (pcase-dolist): Add a docstring.
40826 2016-11-04 Katsumi Yamaoka <yamaoka@jpl.org>
40828 * lisp/net/shr.el (shr-collect-extra-strings-in-table) New function
40829 that gathers extra strings in an invalid html. (bug#24831)
40830 (shr-tag-table): Use it.
40832 2016-11-04 Vasilij Schneidermann <v.schneidermann@gmail.com>
40834 Add 'x-ctrl-keysym' support on X window system
40836 * src/xterm.c (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers):
40837 Support 'x-ctrl-keysym'.
40838 (syms_of_xterm): DEFSYM "ctrl" and put a proper modifier-value
40840 <x-ctrl-keysym>: New DEFVAR_LISP.
40841 <x-alt-keysym, x-hyper-keysym, x-meta-keysym, x-super-keysym>: Doc
40844 * etc/NEWS: Mention the addition of 'x-ctrl-keysym'.
40846 * doc/lispref/os.texi (X11 Keysyms): Document 'x-ctrl-keysym'.
40848 2016-11-04 Alexander Gramiak <agrambot@gmail.com>
40850 Improve autoload error reporting
40852 * src/eval.c (Fautoload_do_load): Include the absolute file name
40853 in the error message.
40855 2016-11-03 Reuben Thomas <rrt@sc3d.org>
40857 Stop force parameter of whitespace-report-region having global effect
40859 * lisp/whitespace.el (whitespace-report-region): Force parameter
40860 previously changed whitespace-style globally. Fix this, and use
40861 whitespace-active-style, to take account of any changes the user may
40862 have made. Simplify the documentation: the force parameter simply
40863 forces all classes of whitespace problem to be considered.
40866 2016-11-03 Reuben Thomas <rrt@sc3d.org>
40868 Document use of `tab-width'
40870 * lisp/whitespace.el: When talking about `8 or more spaces', mention
40871 `tab-width' instead of 8. (Bug#24745)
40873 2016-11-03 Reuben Thomas <rrt@sc3d.org>
40875 Make whitespace-report-region respect current settings
40877 * lisp/whitespace.el (whitespace-report-region): Make it respect
40878 whitespace-style, including any additions made by the force parameter.
40879 This means that the function does not return t unless a whitespace
40880 problem that the user cares about is reported. (Bug#24745)
40882 2016-11-03 Reuben Thomas <rrt@sc3d.org>
40884 Fix whitespace-space-after-tab-regexp
40886 * lisp/whitespace.el (whitespace-space-after-tab-regexp)
40887 (whitespace-regexp): Match all the spaces after tabs for highlighting,
40888 not just the first tab-width. Fix whitespace-space-after-tab::space
40889 version so that it requires at least tab-width spaces, not just 1.
40892 2016-11-03 Reuben Thomas <rrt@sc3d.org>
40894 Remove duplicate documentation
40896 * lisp/whitespace.el: Remove duplicate documentation from the Commentary
40897 section which duplicate and in some places contradict (due to being
40898 out of date) the docstrings (Bug#24745).
40900 2016-11-03 Reuben Thomas <rrt@sc3d.org>
40904 * lisp/whitespace.el (whitespace-empty-at-bob-regexp)
40905 (whitespace-empty-at-eob-regexp, whitespace-cleanup): Make `empty' checks
40906 work at beginning & end of buffer in whitespace-report-region, and only
40907 there (i.e. they will never match in regions that don't include the
40908 start or end of the buffer). (Bug#24745)
40910 2016-11-03 Tino Calancha <tino.calancha@gmail.com>
40912 (thing-at-point 'list) return nil if no list at point
40914 * lisp/thingatpt.el (thing-at-point-bounds-of-list-at-point):
40915 Check first if we are at the beginning of a top-level sexp (Bug#24627).
40916 If point is inside a comment or string, look for a list out of the
40918 Escape '[' in doc string.
40919 * test/lisp/thingatpt-tests.el (thing-at-point-bug24627): Update
40920 expected test result as pass.
40922 2016-11-02 Mark Oteiza <mvoteiza@udel.edu>
40924 Remove antlr face aliases obsoleted in 22.1
40926 * lisp/progmodes/antlr-mode.el: Remove obsolete aliases
40927 (antlr-default-face, antlr-keyword-face, antlr-syntax-face):
40928 (antlr-ruledef-face, antlr-tokendef-face, antlr-ruleref-face):
40929 (antlr-tokenref-face, antlr-literal-face):
40930 (antlr-literal-face): Remove.
40931 (antlr-font-lock-additional-keywords): Use face symbols instead.
40933 2016-11-02 Daniel Colascione <dancol@dancol.org>
40935 Revert "Disable bracketed paste in a terminal in char mode"
40937 This change causes regressions, and besides, disabling BPM frame-wide
40938 for the sake of one buffer is the wrong solution.
40940 This reverts commit cf566b46a6cf85c6d54d0b0db80e32ed6ae8d1ca.
40942 2016-11-02 Mark Oteiza <mvoteiza@udel.edu>
40944 Revert change to eww-suggest-uris
40946 The introduced append is ugly and can yield '(nil); doing delq on it
40947 would be hacks on hacks.
40948 * lisp/net/eww.el: Require cl-lib at run time.
40949 (eww-suggest-uris): Restore eww-current-url, reverting previous change.
40950 (eww): Remove erroneous append.
40951 (eww-open-in-new-buffer): Check if the return from eww-suggested-uris is
40952 equal to eww-current-url, which is nil anyways if we are not in an EWW
40955 2016-11-02 Mark Oteiza <mvoteiza@udel.edu>
40957 Add eww-open-in-new-buffer to EWW
40959 * doc/misc/eww.texi (Basic): Document new command and key.
40960 * etc/NEWS: Mention new key and its purpose.
40961 * lisp/net/eww.el (eww-suggest-uris): Remove eww-current-url.
40962 (eww): Append (eww-current-url) to the prompt defaults.
40963 (eww-open-in-new-buffer): New command.
40964 (eww-mode-map): Bind it and add a menu item.
40966 2016-11-02 Mark Oteiza <mvoteiza@udel.edu>
40968 Migrate auth-source to cl-lib
40970 * lisp/auth-source.el: Use cl-lib.
40971 (auth-source-read-char-choice, auth-source-backend-parse-parameters):
40972 (auth-source-search): Replace cl calls with cl-lib ones.
40973 (auth-source-netrc-cache):
40974 (auth-source-forget+): Use cl-do-symbols instead.
40975 (auth-source-specmatchp, auth-source-netrc-parse):
40976 (auth-source-netrc-search, auth-source-netrc-create):
40977 (auth-source-netrc-saver, auth-source-secrets-listify-pattern):
40978 (auth-source-secrets-search, auth-source-secrets-create):
40979 (auth-source-macos-keychain-search, auth-source--decode-octal-string):
40980 (auth-source-macos-keychain-search-items, auth-source-plstore-search):
40981 (auth-source-plstore-create): Replace cl calls with cl-lib ones.
40983 2016-11-01 Lars Ingebrigtsen <larsi@gnus.org>
40985 Don't segfault on timed-out TLS connections
40987 * src/process.c (finish_after_tls_connection): Check that the
40988 file descriptor is still alive before proceeding (bug#24811).
40989 Also clean up the code slightly.
40991 2016-11-01 Eli Zaretskii <eliz@gnu.org>
40993 Support 'TARGETS' in clipboard selections on MS-Windows
40995 * src/w32select.c (Fw32_selection_targets): New function.
40997 * lisp/term/w32-win.el (w32--get-selection): Call
40998 'w32-selection-targets' to obtain the list of data formats
40999 available in the clipboard.
41001 2016-11-01 Thomas Fitzsimmons <fitzsim@fitzsim.org>
41003 Fix documentation for 'eudc-options-file'
41005 * doc/misc/eudc.texi (The Server Hotlist): Update the default
41006 value of 'eudc-options-file'.
41008 2016-11-01 Tibor Csögör <tibi@tiborius.net>
41010 Fix documentation of 'eudc-inline-expansion-format'
41012 * doc/misc/eudc.texi (Inline Query Expansion): Fix the default value of
41013 'eudc-inline-expansion-format'. (Bug#24840)
41015 2016-10-31 Mark Oteiza <mvoteiza@udel.edu>
41017 Turn on lexical-binding in some more libs
41019 * lisp/calendar/icalendar.el:
41020 * lisp/emacs-lisp/regexp-opt.el:
41021 * lisp/emacs-lisp/timer.el:
41022 * lisp/gnus/message.el:
41023 * lisp/hex-util.el: Turn on lexical-binding.
41025 2016-10-31 Mark Oteiza <mvoteiza@udel.edu>
41027 Turn on lexical-binding in some net libs
41029 * lisp/net/dbus.el: Turn on lexical-binding.
41030 (dbus-list-hash-table, dbus-list-known-names):
41031 (dbus-introspect-get-node-names, dbus-introspect-get-interface-names):
41032 (dbus-introspect-get-method-names, dbus-introspect-get-signal-names):
41033 (dbus-introspect-get-property-names):
41034 (dbus-introspect-get-argument-names, dbus-get-all-properties):
41035 (dbus-property-handler, dbus-get-all-managed-objects):
41036 (dbus-managed-object-handler): Replace add-to-list with push. Add
41037 nreverse in some places where the APPEND argument of add-to-list was
41039 * lisp/net/network-stream.el: Turn on lexical-binding.
41040 * lisp/net/newsticker.el: Turn on lexical-binding.
41041 * lisp/net/shr.el: Turn on lexical-binding.
41042 (shr-make-placeholder-image): Remove unused variable binding.
41043 (shr-inspect-table): Replace ignored bindings with underscore.
41045 2016-10-31 Mark Oteiza <mvoteiza@udel.edu>
41047 Turn on lexical-binding in some url libs
41049 * lisp/url/url-auth.el:
41050 * lisp/url/url-expand.el:
41051 * lisp/url/url-future.el:
41052 * lisp/url/url-parse.el:
41053 * lisp/url/url-util.el: Turn on lexical-binding.
41055 2016-10-31 Johan Bockgård <bojohan@gnu.org>
41057 * lisp/emacs-lisp/cl-macs.el (cl-symbol-macrolet): Fix debug spec
41061 2016-10-30 Alan Mackenzie <acm@muc.de>
41063 Handle chars of syntax word which are also flagged as comment delimiters
41065 src/syntax.c (scan_sexps_forward): When chars of syntax word are also flagged
41066 as the start/end of two char comment delimiters, recognize a comment delimiter
41067 in preference to a portion of a word. This fixes bug #24767.
41069 2016-10-29 Daniel Colascione <dancol@dancol.org>
41071 Speed up initialization by preferring /dev/urandom to GnuTLS
41073 * src/sysdep.c (init_random): Try /dev/urandom before GnuTLS.
41075 2016-10-29 José L. Doménech <domenechjosel@gmail.com>
41077 Quote file names in dired compression commands
41079 * lisp/dired-aux.el (dired-do-compress-to): Change the string
41080 used as shell command for compression by quoting the filenames
41081 used for input and output (Bug #24620).
41083 2016-10-29 Eli Zaretskii <eliz@gnu.org>
41085 Avoid errors in posn-at-point for large images
41087 * src/keyboard.c (Fposn_at_point): If pos-visible-in-window-p
41088 returns a 6-member list for a partially visible glyph, pass the
41089 sum of Y and RTOP to posn-at-x-y, since that's where the visible
41090 portion of that glyph begins on display. (Bug#24804) (Bug#21832)
41093 2016-10-29 Eli Zaretskii <eliz@gnu.org>
41095 Unbreak MS-Windows build
41097 * src/w32term.c (XCreateGC): Second argument is now HWND, and its
41099 (x_set_cursor_gc, x_set_mouse_face_gc)
41100 (x_draw_glyph_string_background, x_draw_glyph_string_bg_rect)
41101 (x_draw_image_glyph_string, x_draw_stretch_glyph_string): Don't
41102 use s->window, which doesn't exist anymore.
41104 * src/w32term.h (XCreateGC): Adjust prototype.
41106 2016-10-28 Daniel Colascione <dancol@dancol.org>
41108 Add double-buffering support to reduce flicker
41110 * src/dispextern.h (struct glyph_string): Remove window member
41111 (block_buffer_flips, unblock_buffer_flips)
41112 (buffer_flipping_blocked_p): Declare.
41114 * src/xterm.h (struct x_display_info): New member supports_xdbe.
41115 (struct x_output): New members draw_desc and need_buffer_flip.
41116 (FRAME_X_DRAWABLE, FRAME_X_RAW_DRAWABLE)
41117 (FRAME_X_DOUBLE_BUFFERED_P)
41118 (FRAME_X_NEED_BUFFER_FLIP): New macros.
41119 (set_up_x_back_buffer, tear_down_x_back_buffer)
41120 (initial_set_up_x_back_buffer): Declare.
41122 * src/xterm.c: Include Xdbe.h.
41123 (x_begin_cr_clip, x_fill_rectangle, x_draw_rectangle)
41124 (x_draw_vertical_window_border, x_update_end)
41125 (x_setup_relief_color, x_draw_relief_rect)
41126 (x_draw_fringe_bitmap, x_shift_glyphs_for_insert)
41127 (x_scroll_run, x_draw_hollow_cursor, x_draw_bar_cursor): Use
41128 FRAME_X_DRAWABLE instead of FRAME_X_WINDOW; rename local
41129 variables appropriately; substitute calls to XClearArea with
41130 x_clear_area, which DTRT for double buffering.
41131 (x_clear_window, x_clear_area): In double-buffering mode, use
41132 rect-drawing X functions instead of XClearWindow and
41133 XClearArea, which always operate on the front buffer.
41134 (show_back_buffer): New function.
41135 (XTframe_up_to_date): Call show_back_buffer when done.
41136 (x_clear_frame, x_clear_frame_area): Remove obsolete calls to
41137 gtk_widget_queue_draw to refresh scroll bars; scroll bars are
41138 now independent X windows.
41139 (handle_one_xevent): Call font_drop_xrender_surfaces when
41140 XftDraw might need regenerating; perform buffer flip when
41141 responding to Expose events; issue front-buffer clearing
41142 commands as stopgap while we wait for redisplay.
41143 Call flush_dirty_back_buffers.
41144 (x_make_frame_visible): Un-bitrot comment; move XSETFRAME
41145 earlier in function.
41146 (x_free_frame_resources): Call tear_down_x_back_buffer when
41148 (x_term_init): Attempt to initialize double buffer extension.
41149 (x_flip_and_flush): New function.
41150 (x_redisplay_interface): Point to x_flip_and_flush instead of
41152 (flush_dirty_back_buffers): New function.
41153 (x_create_terminal): Register buffer_flipping_unblocked_hook.
41155 * src/xftfont.c (xftfont_drop_xrender_surfaces): Use
41156 FRAME_X_DRAWABLE instead of FRAME_X_WINDOW.
41157 (xftfont_draw): Call x_mark_frame_dirty.
41158 (xftfont_drop_xrender_surfaces): New function.
41159 (syms_of_xftfont): Register it.
41161 * src/xfont.c (xfont_draw): Use FRAME_X_DRAWABLE instead of
41164 * src/xfns.c: Include Xdbe.h.
41165 (x_set_inhibit_double_buffering, set_up_x_back_buffer)
41166 (Fx_double_buffered_p): New functions.
41167 (x_window): Call initial_set_up_x_back_buffer.
41168 (x_make_gc): Use FRAME_X_DRAWABLE instead of FRAME_X_WINDOW.
41169 (Fx_create_frame): Configure `inhibit-double-buffering'
41171 (x_create_tip_frame): Call initial_set_up_x_back_buffer.
41172 (x_frame_parm_handlers): Register
41173 x_set_inhibit_double_buffering.
41174 (syms_of_xfns): Register Sx_double_buffered_p.
41175 (x_mark_frame_dirty): Define.
41177 * src/xfaces.c (x_create_gc): Use FRAME_X_DRAWABLE instead of
41180 * src/xdisp.c (remember_mouse_glyph, init_glyph_string): Use
41181 FRAME_X_DRAWABLE instead of FRAME_X_WINDOW.
41182 (redisplay_internal): Restart redisplay if a frame is garbaged
41183 during updating; explain why. Block buffer flips
41185 (redisplay_preserve_echo_area): Block buffer flip during call
41186 to redisplay_internal.
41187 (buffer_flip_blocked_depth): New variable.
41188 (block_buffer_flips, unblock_buffer_flips)
41189 (buffer_flipping_blocked_p): New functions.
41190 (init_glyph_string): Stop setting window member of struct
41193 * src/w32fns.c (w32_frame_parm_handlers): Add placeholder for
41194 x_set_inhibit_double_buffering.
41196 * src/termhooks.h (struct terminal): Add
41197 buffer_flipping_unblocked_hook.
41199 * src/nsfns.m (ns_frame_parm_handlers): Add placeholder for
41200 x_set_inhibit_double_buffering.
41202 * src/image.c (x_create_bitmap_from_data)
41203 (x_create_bitmap_from_file, x_create_x_image_and_pixmap)
41204 (Create_Pixmap_From_Bitmap_Data)
41205 (x_create_bitmap_from_xpm_data, xpm_load, gs_load): Use
41206 FRAME_X_DRAWABLE instead of FRAME_X_WINDOW; rename local
41207 variables appropriately.
41209 * src/gtkutil.c: Include Xdbe.h.
41210 (xg_get_widget_from_map): Forward declare.
41211 (xg_clear_under_internal_border): Remove obsolete calls to
41212 refresh scroll bars.
41213 (xg_create_frame_widgets): Call initial_set_up_x_back_buffer.
41214 (xg_free_frame_widgets): Call tear_down_x_back_buffer; reset
41215 FRAME_X_DRAWABLE as well as FRAME_X_WINDOW and for the
41217 (xg_set_background_color): Set scroll bar background colors.
41218 (xg_finish_scroll_bar_creation): New function with common
41219 logic of xg_create_scroll_bar, xg_create_horizontal_scroll_bar. Force
41220 scroll bars to be real X11 windows.
41221 (xg_create_scroll_bar, xg_create_horizontal_scroll_bar): Call
41222 xg_finish_scroll_bar_creation.
41223 (xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos):
41224 Remove obsolete calls to refresh scroll bars; fix comments.
41226 * src/ftxfont.c (ftxfont_get_gcs, ftxfont_draw_bitmap,
41227 (ftxfont_draw_background): Use FRAME_X_DRAWABLE instead of
41230 * src/frame.c (frame_parms): Add table entry for new
41231 `inhibit-double-buffering' frame parameter
41232 (syms_of_frame): Register Qinhibit_double_buffering.
41234 * src/font.h (struct font_driver): Add new `flush_frame_caches' hook.
41235 (font_drop_xrender_surfaces): Declare.
41237 * src/font.c (font_drop_xrender_surfaces): New function.
41239 * src/Makefile.in (XDBE_LIBS, XDBE_CFLAGS): Substitute.
41241 * etc/NEWS: Mention use of double buffering
41243 * doc/lispref/frames.texi (Management Parameters): Document
41244 `inhibit-double-buffering' frame parameters.
41245 (Visibility of Frames): Document `x-double-buffered-p'.
41247 * configure.ac: Check for the X double buffer extension
41249 2016-10-28 Michael Albinus <michael.albinus@gmx.de>
41251 Improve result of `auth-source-search' in Tramp
41253 * lisp/net/tramp.el (tramp-read-passwd): Require :secret and
41254 :user in result of `auth-source-search'.
41256 2016-10-27 Mark Oteiza <mvoteiza@udel.edu>
41258 Fix avl-tree alias docstrings
41260 * lisp/emacs-lisp/avl-tree.el (avl-tree--node-branch):
41261 (avl-tree-stack-p, avl-tree-create):
41262 (avl-tree-compare-function): Add calling convention to docstrings.
41264 2016-10-27 Paul Eggert <eggert@cs.ucla.edu>
41269 2016-10-16 qsort_r: Fix macrology for platforms that lack the function.
41270 2016-10-13 stdint: port SIZE_MAX to glibc s390
41271 2016-10-11 maint: remove stray space after "." in AC_DEFINE comment.
41272 * lib/gnulib.mk: Regenerate.
41273 * lib/stdlib.in.h, m4/st_dm_mode.m4, m4/stdint.m4, m4/stdlib_h.m4:
41274 * m4/utimes.m4: Copy from gnulib.
41276 2016-10-27 Paul Eggert <eggert@cs.ucla.edu>
41278 electric-quote-chars fixups
41280 * lisp/electric.el (electric-quote-chars): Check types and safety
41282 (electric-quote-post-self-insert-function): Use more-mnemonic locals.
41283 Omit no-longer-necessary runtime error diagnostic.
41285 2016-10-27 Göktuğ Kayaalp <self@gkayaalp.com>
41287 New user variable 'electric-quote-chars'
41289 * doc/emacs/text.texi (Quotation Marks), etc/NEWS: Document this.
41290 * lisp/electric.el (electric-quote-chars): New defcustom.
41291 (electric-quote-post-self-insert-function): Use it.
41293 2016-10-27 Tino Calancha <tino.calancha@gmail.com>
41295 Add more tests for Bug#24627
41297 * test/lisp/thingatpt-tests.el (thing-at-point-bug24627):
41298 Add tests for 'list-at-point'.
41300 2016-10-26 Filipp Gunbin <fgunbin@fastmail.fm>
41302 * lisp/shell.el (shell--unquote&requote-argument): Match data misuse
41304 * lisp/shell.el (shell--unquote&requote-argument): Fix
41305 off-by-one thinko. Don't use match data after a failed string-match.
41307 2016-10-25 Paul Eggert <eggert@cs.ucla.edu>
41309 * src/xwidget.c (webkit_js_to_lisp): Now static.
41311 2016-10-25 Ricardo Wurmus <rekado@elephly.net>
41313 xwidget: Map "previous-line" and "next-line" to scroll
41315 * lisp/xwidget.el: Map "previous-line" and "next-line" to scrolling
41318 2016-10-25 Ricardo Wurmus <rekado@elephly.net>
41320 xwidget: Bind "beginning-of-buffer" and "end-of-buffer"
41322 * lisp/xwidget.el: Rebind "beginning-of-buffer" and "end-of-buffer" to
41323 "xwidget-webkit-scroll-top" and "xwidget-webkit-scroll-bottom",
41325 (xwidget-webkit-scroll-top,
41326 xwidget-webkit-scroll-bottom): New procedures.
41328 2016-10-25 Ricardo Wurmus <rekado@elephly.net>
41330 Implement zoom for WebKit widget.
41332 * src/xwidget.c (xwidget-webkit-zoom): New procedure.
41333 * lisp/xwidget.el: Bind "+" and "-" to zoom in and out, respectively.
41334 (xwidget-webkit-zoom): Declare procedure.
41335 (xwidget-webkit-zoom-in, xwidget-webkit-zoom-out): New procedures.
41337 2016-10-25 Ricardo Wurmus <rekado@elephly.net>
41339 Dynamically resize WebKit widget.
41341 * lisp/xwidget.el (xwidget-webkit-auto-adjust-size,
41342 xwidget-webkit-adjust-size-in-frame): New procedures.
41343 (xwidget-webkit-new-session): Remove hint to resize widget with `a'.
41344 (xwidget-webkit-adjust-size-dispatch): Resize current webkit widget.
41345 (xwidget-webkit-adjust-size-to-window): Make non-interactive,
41346 add widget and window as arguments.
41347 (xwidget-webkit-callback): Use xwidget-webkit-adjust-size-to-window.
41349 2016-10-25 Ricardo Wurmus <rekado@elephly.net>
41351 Let initial WebKit view fill window
41353 * lisp/xwidget.el (xwidget-webkit-new-session): Change default size of
41354 WebKit widget to window size.
41356 2016-10-25 Ricardo Wurmus <rekado@elephly.net>
41358 xwidget: Remove title hack.
41360 * src/xwidget.c (xwidget-webkit-get-title): Remove procedure.
41361 * lisp/xwidget.el (xwidget-webkit-get-title,
41362 xwidget-webkit-execute-script-rv): Remove procedures.
41364 2016-10-25 Ricardo Wurmus <rekado@elephly.net>
41366 xwidget: Get URL asynchronously.
41368 * lisp/xwidget.el (xwidget-webkit-current-url): Kill URL in callback.
41370 2016-10-25 Ricardo Wurmus <rekado@elephly.net>
41372 xwidget: Get selection with asynchronous JavaScript
41374 * lisp/xwidget.el (xwidget-webkit-get-selection): Add PROC argument to
41376 (xwidget-webkit-copy-selection-as-kill): Kill selection in callback.
41378 2016-10-25 Ricardo Wurmus <rekado@elephly.net>
41380 xwidget: Add function to find element by CSS selector
41382 * lisp/xwidget.el (xwidget-webkit-show-element): New procedure.
41384 2016-10-25 Ricardo Wurmus <rekado@elephly.net>
41386 xwidget: Simplify functions to scroll to elements
41388 * lisp/xwidget.el (xwidget-webkit-show-named-element,
41389 xwidget-webkit-show-id-element,
41390 xwidget-webkit-show-id-or-named-element): Simplify functions by
41391 scrolling exclusively with JavaScript.
41393 2016-10-25 Ricardo Wurmus <rekado@elephly.net>
41395 xwidget: Get title via asynchronous JavaScript.
41397 * lisp/xwidget.el (xwidget-webkit-callback): Get document title
41400 2016-10-25 Ricardo Wurmus <rekado@elephly.net>
41402 xwidget: Do not use `xwidget-execute-script-rv' to insert string
41404 * lisp/xwidget.el (xwidget-webkit-insert-string): Obtain JavaScript
41405 return value via callback instead of using
41406 `xwidget-webkit-execute-script-rv'.
41408 2016-10-25 Ricardo Wurmus <rekado@elephly.net>
41410 Remove scrolled window container around WebKit widget
41412 The WebKit widget can scroll on its own and does not need to wrapped
41413 with a scrolled window container.
41415 * src/xwidget.h: Remove struct member widgetscrolledwindow_osr.
41416 * src/xwidget.c: Remove widgetscrolledwindow_osr.
41417 (xwidget-set-adjustment): Remove.
41418 (xwidget-resize): Resize Webkit widget last.
41419 * lisp/xwidget.el (xwidget-set-adjustment): Remove.
41420 (xwidget-webkit-scroll-up, xwidget-webkit-scroll-down,
41421 xwidget-webkit-scroll-forward, xwidget-webkit-scroll-backward):
41422 Implement scrolling via JavaScript.
41424 2016-10-25 Ricardo Wurmus <rekado@elephly.net>
41426 xwidget: Pass JavaScript return value to optional callback procedure
41428 * lisp/xwidget.el (xwidget-webkit-execute-script): Accept optional
41430 (xwidget-webkit-callback): Handle "javascript-callback" event type.
41431 * src/xwidget.c (xwidget-webkit-execute-script): Accept optional
41432 argument FUN, a Lisp procedure to execute on the JavaScript return
41434 (store_xwidget_js_callback_event, webkit_javascript_finished_cb,
41435 webkit_js_to_lisp): New procedures.
41437 2016-10-25 Ricardo Wurmus <rekado@elephly.net>
41439 xwidget: Use WebKit2 API
41441 * configure.ac: Check for webkit2gtk-4.0.
41442 * src/xwidget.c: Adjust to use WebKit2 API.
41443 * lisp/xwidget.el (xwidget-webkit-callback): Adjust matches for
41444 `xwidget-event-type'.
41446 2016-10-25 Paul Eggert <eggert@cs.ucla.edu>
41448 Merge from origin/emacs-25
41450 4c3f738 Comment for bug#24793
41452 2016-10-25 Paul Eggert <eggert@cs.ucla.edu>
41454 Merge from origin/emacs-25
41456 96ac0c3 Yet another fix for using pointers into buffer text
41457 1047496 Another fix for using pointer to buffer text
41458 3121992 Fix Bug#24478
41460 2016-10-25 Paul Eggert <eggert@cs.ucla.edu>
41462 Merge from origin/emacs-25
41464 ee04aed Fix handling of buffer relocation in regex.c functions
41465 71ca4f6 Avoid relocating buffers while libxml2 reads its text
41466 1b3fc8a ; Remove redundant code in gmalloc.c
41467 9afea93 Attempt to catch reads from a buffer that is relocated
41469 2016-10-25 Nicolas Petton <nicolas@petton.fr>
41471 Minor fix in the documentation of seq-random-elt
41473 * doc/lispref/sequences.texi (Sequence Functions): Remove false
41476 2016-10-25 Eli Zaretskii <eliz@gnu.org>
41478 Minor copyedits in documentation of 'seq-random-elt'
41480 * doc/lispref/sequences.texi (Sequence Functions): Fix markup in
41481 last change. Use 2 spaces between sentences.
41483 2016-10-25 Nicolas Petton <nicolas@petton.fr>
41485 * lisp/emacs-lisp/seq.el (seq-random-elt): Fix docstring.
41487 2016-10-25 Damien Cassou <damien@cassou.me>
41489 Add seq-random-elt to seq.el
41491 * lisp/emacs-lisp/seq.el (seq-random-elt): Add function to return a
41492 random element from it's sequence parameter.
41494 * test/lisp/emacs-lisp/seq-tests.el (test-seq-random-elt-take-all
41495 test-seq-random-elt-return-nil): Test the new function
41497 * doc/lispref/sequences.texi: Document the new function
41499 2016-10-24 Ken Brown <kbrown@cornell.edu>
41501 * configure.ac: Stop using mmap for buffers on Cygwin.
41503 2016-10-24 Nicolas Petton <nicolas@petton.fr>
41505 * lisp/emacs-lisp/seq.el (seq-let): Fix debug spec (Bug#24738)
41507 2016-10-24 Karl Chen <Karl.Chen@quarl.org>
41509 Don't prompt user when killing Flymake processes
41511 * lisp/progmodes/flymake.el (flymake-start-syntax-check-process):
41512 Don’t prompt the user when killing Flymake processes.
41514 * doc/misc/flymake.texi (Starting the syntax check process):
41515 Document new behavior.
41517 2016-10-23 Paul Eggert <eggert@cs.ucla.edu>
41519 * src/regex.c (re_search_2): Use UNINIT, not IF_LINT.
41521 This finishes the merge of the recent emacs-25 regex changes into
41524 2016-10-23 Paul Eggert <eggert@cs.ucla.edu>
41526 Merge from origin/emacs-25
41528 50fa7d6 ;* src/w32heap.c: Fix typo and wording of the comments.
41529 6f1325e electric-quote mode no longer worries about coding
41530 c2a1792 * src/regex.c (re_search_2): Make new code safe for -Wjump-mi...
41531 f6134bb Port to GCC 6.2.1 + --enable-gcc-warnings
41532 b2ba630 Explain how to debug emacsclient lisp errors
41533 9da53e2 Let describe-function work for lambda again
41534 5c2da93 Fix kill-line's docstring
41535 ad66b3f Fix handling of allocation in regex matching
41536 5a26c9b * lisp/electric.el (electric-quote-mode): Improve doc (Bug#24...
41537 3877c91 vc-region-history: Search just on lines intersecting the region
41538 8988327 Fix documentation of 'alist-get'
41539 b6998ea * src/regex.h (re_match_object): Improve commentary.
41545 2016-10-23 Paul Eggert <eggert@cs.ucla.edu>
41547 Merge from origin/emacs-25
41549 8ad0d7d ; Fix quoting in etc/NEWS
41550 6b9dee1 Change Tramp version to "2.2.13.25.2"
41551 62f2684 * lisp/emacs-lisp/autoload.el (update-directory-autoloads): F...
41552 b2f32e4 Don't scan compiled module files for autoloads
41553 9a758b4 Fix Bug#24698
41554 baa8ba4 * lisp/subr.el (start-process): Doc fix. (Bug#24693)
41555 e535ca4 Fix display of vc-dir CVS file statuses in subdirectories
41556 12da149 Update URL of MS-Windows optional DLLs
41557 2331056 Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emac...
41558 a4285bc * lisp/simple.el (process-menu-mode, list-processes--refresh)...
41559 b0c447e * lisp/ibuf-ext.el (ibuffer-do-shell-command-file): Fix non-f...
41560 cf3c19b * lisp/ibuffer.el (ibuffer): Improve 'other-window' case. (B...
41563 # doc/misc/trampver.texi
41565 # lisp/net/tramp-sh.el
41566 # lisp/net/trampver.el
41568 2016-10-23 Paul Eggert <eggert@cs.ucla.edu>
41570 Merge from origin/emacs-25
41572 b73f466 * lisp/cus-start.el (exec-path): Handle nil elements. (Bug#2...
41573 55ebb70 Catch the imenu-unavailable error in sh-mode completion table
41574 993acb5 ; Minor fix for last change in characters.el
41575 30c4bb5 More char-width fixes
41576 4eb4463 Fix char-width-table values for some Emoji
41577 528997d Keep point when switching from and to *terminal* buffer
41578 2130005 * INSTALL: Use correct Emacs release number 25.
41579 10835b1 Avoid crashes due to objects read with the #n=object form
41580 4de671d Improve doc string of 'completion-at-point-functions'
41581 ceb46f0 Fix crash in evaluating functions
41582 d8374c4 * src/filelock.c (current_lock_owner): Update comment.
41584 2016-10-23 Paul Eggert <eggert@cs.ucla.edu>
41586 Merge from origin/emacs-25
41588 2deb20c Port last_marked change to full-program optimizers
41589 27eb668 Adapt GDB scripts to '--enable-check-lisp-object-type' builds
41590 dac64e3 Avoid optimizing out the last_marked[] array
41592 2016-10-22 Noam Postavsky <npostavs@gmail.com>
41594 Avoid infinite hscrolling in redisplay
41596 * src/xdisp.c (redisplay_internal): Add a counter to avoid horizontal
41597 scrolling (e.g., caused by pre-redisplay-functions) triggering infinite
41598 redisplay (Bug #24633).
41600 2016-10-22 Michael Albinus <michael.albinus@gmx.de>
41602 Fix error codes in Tramp
41604 * lisp/net/tramp-compat.el (tramp-compat-user-error): New defsubst,
41605 taken from tramp.el.
41606 (tramp-file-missing): New defconst.
41608 * lisp/net/tramp.el (tramp-user-error): Remove it.
41609 (tramp-check-proper-method-and-host)
41610 (tramp-dissect-file-name, tramp-debug-message)
41611 (tramp-handle-shell-command):
41612 * lisp/net/tramp-adb.el (tramp-adb-handle-shell-command):
41613 * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler):
41614 Use `tramp-compat-user-error'.
41616 * lisp/net/tramp.el (tramp-handle-insert-file-contents)
41617 (tramp-handle-load):
41618 * lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy):
41619 * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-local-copy)
41620 * lisp/net/tramp-sh.el (tramp-sh-handle-file-local-copy):
41621 * lisp/net/tramp-smb.el (tramp-smb-handle-file-local-copy):
41622 Use `tramp-file-missing'. (Bug#24714)
41624 * lisp/net/tramp-sh.el (tramp-sh-handle-add-name-to-file):
41625 * lisp/net/tramp-smb.el (tramp-smb-handle-make-symbolic-link):
41626 Use `file-already-exists'.
41628 2016-10-22 Jorgen Schaefer <contact@jorgenschaefer.de>
41630 Autoload all commands from misc.el
41632 Only two of the commands there were autoloaded, one of which is an
41634 * lisp/misc.el (copy-from-above-command):
41635 * lisp/misc.el (zap-up-to-char):
41636 * lisp/misc.el (mark-beginning-of-buffer):
41637 * lisp/misc.el (mark-end-of-buffer):
41638 * lisp/misc.el (upcase-char):
41639 * lisp/misc.el (forward-to-word):
41640 * lisp/misc.el (backward-to-word):
41641 Add autoload cookie.
41643 2016-10-22 Martin Rudalics <rudalics@gmx.at>
41645 On terminal frames ignore minibuffer frame parameter (Bug#24758)
41647 * src/frame.c (Fmake_terminal_frame): Don't complain when the
41648 caller asks for a deviant minibuffer setting (Bug#24758).
41650 2016-10-21 Paul Eggert <eggert@cs.ucla.edu>
41652 New error file-missing
41654 This fixes a recently-introduced bug in delete-directory,
41655 where the code assumes the C locale when determining
41656 whether a file-error corresponds to a missing file (Bug#24714).
41657 * doc/lispref/errors.texi (Standard Errors):
41658 * doc/lispref/files.texi (Changing Files):
41661 * doc/lispref/loading.texi (How Programs Do Loading):
41662 Say "a file-error" rather than "the error file-error" since
41663 it might be a file-missing now.
41664 * lisp/emacs-lisp/bytecomp.el (byte-compile-file):
41665 * lisp/epa-file.el (epa-file--find-file-not-found-function):
41666 (epa-file-insert-file-contents, epa-file-write-region):
41667 * lisp/ffap.el (find-file-at-point, dired-at-point):
41668 * lisp/jka-compr.el (jka-compr-insert-file-contents)
41669 (jka-compr-insert-file-contents):
41670 * lisp/net/ange-ftp.el (ange-ftp-barf-if-not-directory)
41671 (ange-ftp-insert-file-contents, ange-ftp-copy-file-internal):
41672 * lisp/progmodes/etags.el (visit-tags-table):
41673 * lisp/url/url-handlers.el (url-copy-file):
41674 * src/fileio.c (report_file_errno):
41675 Signal file-missing if appropriate.
41676 * lisp/epa-file.el (epa-file-insert-file-contents):
41677 * lisp/jka-compr.el (jka-compr-insert-file-contents):
41678 Don't assume file-error is a leaf in the error hierarchy.
41679 * lisp/files.el (files--force):
41680 * lisp/gnus/nnmaildir.el (nnmaildir--enoent-p):
41681 * lisp/jka-compr.el (jka-compr-insert-file-contents):
41682 Use file-missing to detect whether the file is missing.
41683 * lisp/url/url-handlers.el (url-copy-file):
41684 Signal file-already-exists if appropriate.
41685 * src/fileio.c (syms_of_fileio): Define file-missing.
41687 2016-10-18 Paul Eggert <eggert@cs.ucla.edu>
41689 2016-10-21 Mark Oteiza <mvoteiza@udel.edu>
41691 Teach browse-url to open man page urls
41693 * lisp/net/browse-url.el (browse-url-man-function): New custom option.
41694 (browse-url): Add a condition to catch links matching "^man:".
41695 (browse-url-man): New function.
41697 2016-10-21 Eli Zaretskii <eliz@gnu.org>
41699 Improve fontification of footnote references in Info buffers
41701 * lisp/info.el (Info-fontify-node): Don't fontify random numbers
41702 in parentheses as if they were footnote references. See
41703 https://lists.gnu.org/r/bug-texinfo/2016-10/msg00007.html
41706 2016-10-20 Philipp Stephani <phst@google.com>
41708 Minor fixes to cc-mode-tests.el
41712 * test/lisp/progmodes/cc-mode-tests.el: Rename from cc-mode.el; fix typo in
41713 file-local variable; add comments to make checkdoc happy.
41715 2016-10-20 Michael Albinus <michael.albinus@gmx.de>
41717 * etc/NEWS: Fix typos. Remove entries backported to Emacs 25.2.
41719 2016-10-20 Michael Albinus <michael.albinus@gmx.de>
41721 Document, how to suppress iTerm2 shell integration in Tramp
41723 * doc/misc/tramp.texi (Frequently Asked Questions):
41724 Suppress iTerm2 shell integration.
41726 2016-10-20 Tino Calancha <tino.calancha@gmail.com>
41728 cl-seq: Remove max limit on input sequence length
41730 * lisp/emacs-lisp/cl-seq.el (cl-fill, cl-replace, cl-delete)
41731 (cl--position, cl-nsubstitute, cl-substitute, cl-remove):
41732 Remove limit on maximum length for the input sequence
41734 * test/lisp/emacs-lisp/cl-seq-tests.el: Update test expected result as passed.
41736 2016-10-19 Mark Oteiza <mvoteiza@udel.edu>
41738 Derive dig-mode from special-mode
41740 * lisp/net/dig.el: Remove unused cl dependency. Remove top level
41741 mode-class assignment.
41742 (dig-mode-map): Unmap g, as dig has no notion of reverting the buffer.
41743 (dig-mode): Derive from special-mode.
41744 (dig-exit): Use quit-window instead.
41745 (dig): Use pop-to-buffer-same-window. Remove redundant assignments.
41746 (query-dig): Use pop-to-buffer-same-window.
41748 2016-10-18 Johan Bockgård <bojohan@gnu.org>
41750 cl-defstruct: Fix debug spec and check of slot options
41752 * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Improve checking of slot
41753 option syntax. Fix debug spec. (Bug#24700)
41755 2016-10-18 Johan Bockgård <bojohan@gnu.org>
41757 isearch: Fix bug in defstruct syntax
41759 * lisp/isearch.el (isearch--state): Use correct form of defstruct slot
41760 options. (Bug#24685)
41762 2016-10-18 Mark Oteiza <mvoteiza@udel.edu>
41764 Add an option for eshell-input-filter
41766 * etc/NEWS: Document changes.
41767 * lisp/eshell/em-hist.el (eshell-input-filter): Set value to function
41768 symbol. Change type to a radio for choosing functions. Refer to both
41770 (eshell-input-filter-default): New function. Same body as the previous
41771 value of eshell-input-filter.
41772 (eshell-input-filter-initial-space): New function.
41774 2016-10-18 Paul Eggert <eggert@cs.ucla.edu>
41776 delete-directory no longer errors when racing
41778 Problem reported by Glenn Morris for package-test.el (Bug#24714).
41779 * doc/lispref/files.texi (Create/Delete Dirs), etc/NEWS: Document this.
41780 * lisp/files.el (files--force): New function.
41781 (delete-directory): Use it to avoid error in this case.
41783 2016-10-17 Yuri Khan <yuri.v.khan@gmail.com> (tiny change)
41785 Support Shift selection in nxml-mode commands
41787 * lisp/nxml/nxml-mode.el (nxml-forward-balanced-item)
41788 (nxml-up-element, nxml-backward-up-element, nxml-down-element)
41789 (nxml-backward-down-element, nxml-forward-element)
41790 (nxml-backward-element, nxml-forward-paragraph)
41791 (nxml-backward-paragraph): Use "^p" as the interactive spec, to
41792 support shift-selection.
41794 2016-10-17 Mark Oteiza <mvoteiza@udel.edu>
41796 Simplify some loops and cons
41798 * lisp/net/mailcap.el: Replace cl with cl-lib.
41799 (mailcap--get-user-mime-data, mailcap--set-user-mime-data):
41800 (mailcap-parse-mailcaps, mailcap-parse-mailcap-extras):
41801 (mailcap-possible-viewers): Use push and dolist where possible.
41802 (mailcap-viewer-passes-test): Remove unused binding.
41803 (mailcap-add-mailcap-entry): Use push.
41804 (mailcap-mime-info): Remove unused binding. Use push.
41805 (mailcap-parse-mimetypes): Use dolist.
41807 2016-10-17 Mark Oteiza <mvoteiza@udel.edu>
41809 Turn on lexical-binding in auth-source
41811 * lisp/auth-source.el: Turn on lexical-binding.
41812 (auth-source-netrc-parse, auth-source-netrc-normalize):
41813 (auth-source-token-passphrase-callback-function):
41814 (auth-source-netrc-create, auth-source-secrets-search):
41815 (auth-source-macos-keychain-search-items):
41816 (auth-source-plstore-search): Use let instead of lexical-let.
41818 2016-10-17 Martin Rudalics <rudalics@gmx.at>
41820 Fix frame focus redirection with shared minibuffer windows (Bug#24500)
41822 * src/frame.c (do_switch_frame): Redirect frame focus also when
41823 the frame switched to has its minibuffer window on the selected
41825 * src/window.c (candidate_window_p): To qualify as candidate
41826 it's not sufficient for the window's frame to just share the
41827 minibuffer window - it must be active as well.
41829 2016-10-17 Eli Zaretskii <eliz@gnu.org>
41831 Fix time-related data types in 2 editfns.c functions
41833 * src/editfns.c (format_time_string, Fcurrent_time_zone): Pass a
41834 pointer to 'time_t' value to 'emacs_localtime_rz' and 'gmtime_r',
41835 instead of relying on struct timespec's 'tv_sec' member to be of
41838 2016-10-16 Martin Rudalics <rudalics@gmx.at>
41840 Document atomic windows in Elisp manual (Bug#18170)
41842 * lisp/window.el (display-buffer-in-atom-window): If no `side'
41843 alist entry was specified, use `below' as the doc tells.
41844 * doc/lispref/elisp.texi (Atomic Windows): Add menu entry.
41845 * doc/lispref/windows.texi (Atomic Windows): New section.
41846 (Window Parameters): Update reference.
41848 2016-10-16 Paul Eggert <eggert@cs.ucla.edu>
41852 Suggested by Eli Zaretskii, from a feature request by
41853 Alan Mackenzie (Bug#24468).
41854 * doc/emacs/display.texi (Standard Faces, Text Display):
41855 * etc/NEWS: Document this.
41856 * etc/themes/dichromacy-theme.el, etc/themes/leuven-theme.el:
41857 * etc/themes/light-blue-theme.el, etc/themes/manoj-dark-theme.el:
41858 * etc/themes/tango-dark-theme.el, etc/themes/tango-theme.el:
41859 * etc/themes/wombat-theme.el:
41860 Customize homoglyph to be the same as escape-glyph.
41861 * lisp/cus-theme.el (custom-theme--listed-faces):
41863 * lisp/faces.el (homoglyph): New face.
41864 * lisp/startup.el (startup--setup-quote-display): Use it.
41866 2016-10-16 Paul Eggert <eggert@cs.ucla.edu>
41868 Port to Ubuntu 16.10, which needs gcc -nopie
41870 * configure.ac (emacs_cv_prog_cc_no_pie): Rename from
41871 emacs_cv_prog_cc_nopie. All usages changed. Check for -no-pie in
41872 preference to -nopie (Bug#24682).
41874 2016-10-16 Michael Albinus <michael.albinus@gmx.de>
41876 Fix bug#24665 in Tramp
41878 * doc/misc/tramp.texi (External methods): Do not confuse
41879 method names. (Bug#24665)
41881 2016-10-15 Sam Steingold <sds@gnu.org>
41883 use full time objects (lists) instead of floats when possible
41885 * lisp/midnight.el (midnight-buffer-display-time): Remove
41886 (clean-buffer-list): Use float time only for time comparison
41888 2016-10-15 Sam Steingold <sds@gnu.org>
41890 Save and restore buffer-display-time
41892 * lisp/desktop.el (desktop-locals-to-save): Add `buffer-display-time'
41893 (desktop-read): Set `desktop-file-modtime' before loading the desktop file
41894 (desktop-create-buffer): Adjust `buffer-display-time' for the downtime
41896 2016-10-15 Philipp Stephani <phst@google.com>
41898 Disable bracketed paste in a terminal in char mode
41900 In char mode, a terminal doesn't accept bracketed paste events,
41901 therefore we should disable them; see Bug#24639. To decouple the XTerm
41902 management from term.el, introduce a per-buffer setting to disable
41903 bracketed paste for that buffer. If bracketed paste is inhiited for at
41904 least one buffer in a terminal, it is disabled for the whole terminal.
41906 * lisp/term/xterm.el (xterm-inhibit-bracketed-paste-mode): New mode to
41907 inhibit XTerm bracketed paste per buffer.
41908 (xterm--buffer-terminals, xterm--update-bracketed-paste)
41909 (xterm--bracketed-paste-possible, xterm--is-xterm): New helper
41911 (xterm--init-bracketed-paste-mode): Remove unused helper
41913 (terminal-init-xterm): Update bracketed paste status when
41914 initializing an XTerm and on window configuration change.
41916 * lisp/term.el (term-char-mode, term-line-mode): Inhibit XTerm
41917 bracketed paste in char mode.
41919 2016-10-15 Dima Kogan <dima@secretsauce.net>
41921 Undo the effect of CapsLock when other modifiers are present
41923 * src/keyboard.c (make_lispy_event): Effectively undo the effect
41924 of CapsLock if any modifiers other than Shift are present in a key.
41927 2016-10-15 Simen Heggestøyl <simenheg@gmail.com>
41929 Add tests for foreign completions in CSS mode
41931 * test/lisp/textmodes/css-mode-tests.el
41932 (css-test-foreign-completions): New test for
41933 `css--foreign-completions'.
41934 (css-test-complete-selector-tag): Rename test.
41935 (css-test-complete-selector-class): New test testing completion of
41936 class names in selectors.
41937 (css-test-complete-selector-id): New test testing completion of IDs in
41940 2016-10-13 Lars Ingebrigtsen <larsi@gnus.org>
41942 Cosmetic change to last mm-url change
41944 * lisp/gnus/mm-url.el (mm-url-encode-multipart-form-data):
41945 Tweak last change slightly for more readability.
41947 2016-10-13 Lars Ingebrigtsen <larsi@gnus.org>
41949 Fix problem with submitting binary data via HTTP forms
41951 * lisp/gnus/mm-url.el (mm-url-encode-multipart-form-data):
41952 Document the parameters, clean up the code, and make uploading
41953 binary data really work (which it didn't if the binary bits
41954 were in the last part of the data).
41956 2016-10-13 Mark Oteiza <mvoteiza@udel.edu>
41958 * lisp/time.el (display-time-string-forms): Fix custom type.
41960 2016-10-13 Mark Oteiza <mvoteiza@udel.edu>
41962 Derive Man and WoMan modes from special-mode
41964 * lisp/man.el (Man-mode-map): Set parent to map composed from both
41965 button-buffer-map and special-mode-map. Remove redundant bindings.
41966 Fix menu to refer to the quit-window command.
41967 (Man-mode): Derive from special-mode. Fix docstring. Remove redundant
41968 buffer-read-only binding.
41969 (Man-quit): Remove.
41970 * lisp/woman.el (woman-really-find-file): Use setq-local.
41971 (woman-mode-map): Refer to woman-mode in docstring.
41972 (woman-mode): Derive from special-mode. Document woman-mode-map in
41973 docstring. Use setq-local where possible; imenu-generic-expression is
41974 already buffer-local.
41975 (woman-negative-vertical-space): Replace unused binding with _.
41977 2016-10-13 Philipp Stephani <phst@google.com>
41979 Fix crash in evaluating functions
41983 * src/eval.c (funcall_lambda): Fix crash for bogus functions such
41986 * test/src/eval-tests.el (eval-tests--bug24673): Add test.
41988 2016-10-13 Tino Calancha <tino.calancha@gmail.com>
41990 Add test for Bug#24627
41992 * test/lisp/thingatpt-tests.el (thing-at-point-bug24627): New test.
41994 2016-10-12 Eli Zaretskii <eliz@gnu.org>
41996 * lib-src/etags.c (invalidate_nodes): Remove a redundant nullp test.
41998 2016-10-11 Paul Eggert <eggert@cs.ucla.edu>
42000 Work around Samba bug with ':' in symlink contents
42002 * src/filelock.c (current_lock_owner): When reading the contents
42003 of a lock, treat the UTF-8 for U+F022 as if it were ':' (Bug#24656).
42005 2016-10-11 Stefan Monnier <monnier@iro.umontreal.ca>
42007 If autoloads buffer is unchanged, mark it as such (bug#23692)
42009 * lisp/emacs-lisp/autoload.el (update-directory-autoloads):
42010 If autoloads buffer is unchanged, mark it as such (bug#23692).
42012 2016-10-11 Michael Albinus <michael.albinus@gmx.de>
42014 Use "26.1" version string in Tramp, fix some comments
42016 * lisp/net/tramp-gvfs.el (tramp-gvfs-methods):
42017 * lisp/net/tramp-sh.el (tramp-remote-process-environment):
42018 Use "26.1" version string.
42020 2016-10-10 Tino Calancha <tino.calancha@gmail.com>
42022 form-at-point work for all kind of THINGS
42024 * lisp/thingatpt.el (form-at-point):
42025 Use thing-at-point--read-from-whole-string only if thing-at-point
42026 returns a string (Bug#24605).
42028 2016-10-10 Eli Zaretskii <eliz@gnu.org>
42030 Fix compilation warnings on MS-Windows
42032 * src/w32.c (_ANONYMOUS_UNION, _ANONYMOUS_STRUCT): Remove
42033 definitions of these macros, which seem to be unneeded and cause
42035 * src/fileio.c (NOMINMAX): Avoid compiler warnings about unused
42037 * src/firstfile.c (dummy_main_reference): Rename from 'dummy' and
42038 make it external, to avoid compiler warning.
42040 2016-10-10 Paul Eggert <eggert@cs.ucla.edu>
42042 Spelling and clarity fixes
42044 2016-10-10 Paul Eggert <eggert@cs.ucla.edu>
42046 Merge from origin/emacs-25
42048 4f406e9 CC Mode manual: remove reference to former Emacs variable las...
42049 44e402e Allow to disable compaction of font caches
42050 4ff4b66 Allow selection of font for symbols as in Emacs 24.x
42051 c03d44b ; Fix last commit
42052 d4be4f3 ; Fix indexing in lispref manual
42053 ed399f2 ; Minor improvement in documentation of generators
42054 197a6bc Fix horizontal scrolling during Isearch
42055 3566644 Fix infloop in redisplay due to truncated lines and invisible...
42060 2016-10-10 Paul Eggert <eggert@cs.ucla.edu>
42062 Merge from origin/emacs-25
42064 c4a5e7e Improve documentation of 'menu-bar-open'
42066 2016-10-10 Paul Eggert <eggert@cs.ucla.edu>
42068 Merge from origin/emacs-25
42070 4b347fe Clarify that doc fixes are okay in feature freeze
42071 01669ad Avoid crashes when setting the cursor
42072 f2144ee Restore 'command-debug-status' functionality
42073 ec6e4b9 ; Minor addition to CONTRIBUTE
42075 2016-10-10 Paul Eggert <eggert@cs.ucla.edu>
42077 Merge from origin/emacs-25
42079 74b4f13 Document nil args of compare-buffer-substrings
42080 9fc81bc * doc/misc/message.texi (Bcc Warning): Fix markup.
42081 95baa25 * doc/misc/message.texi (Bcc Warning): Document mml-secure-sa...
42083 2016-10-10 Paul Eggert <eggert@cs.ucla.edu>
42085 Merge from origin/emacs-25
42087 f1247f0 * lisp/frame.el (blink-cursor-delay): Doc fix. (Bug#24372)
42088 ace7f14 * lisp/gnus/gnus-art.el (gnus-button-handle-library): Fix typo.
42089 bbf1ffd Regexp Functions doc minor fixes
42091 2016-10-08 Philipp Stephani <phst@google.com>
42093 Don’t consider nested let-alist forms
42097 * lisp/emacs-lisp/let-alist.el (let-alist--deep-dot-search): Don’t
42098 consider symbols in nested ‘let-alist’ forms.
42100 * test/lisp/emacs-lisp/let-alist-tests.el
42101 (let-alist--deep-dot-search--nested): Add a unit test.
42103 2016-10-08 Alain Schneble <a.s@realize.ch>
42105 Support SIGTRAP in kill emulation on Windows
42107 * src/w32proc.c (sys_kill): Translate SIGTRAP signal into a call to
42108 'DebugBreakProcess' to cause a breakpoint exception to occur in the
42109 specified process. On Windows versions prior to Windows XP that do
42110 not support 'DebugBreakProcess' return -1 and set errno to ENOTSUP
42111 (as opposed to EINVAL before this change).
42112 * src/w32proc.c: Add typedef for 'DebugBreakProcess' function pointer
42113 and global variable to track state of run-time dynamic linking of this
42116 * etc/NEWS: Add entry to document that 'signal-process' now supports
42119 2016-10-08 Eli Zaretskii <eliz@gnu.org>
42121 Deprecate 'wp' group and introduce a new group 'text'
42123 * lisp/textmodes/tildify.el (tildify):
42124 * lisp/textmodes/text-mode.el (text-mode-hook):
42125 * lisp/textmodes/table.el (table):
42126 * lisp/textmodes/rst.el (rst):
42127 * lisp/textmodes/refer.el (refer):
42128 * lisp/textmodes/refbib.el (refbib):
42129 * lisp/textmodes/picture.el (picture):
42130 * lisp/textmodes/nroff-mode.el (nroff):
42131 * lisp/textmodes/enriched.el (enriched):
42132 * lisp/textmodes/bib-mode.el (bib):
42133 * lisp/progmodes/ebnf2ps.el (ebnf2ps):
42134 * lisp/nxml/rng-valid.el (relax-ng):
42135 * lisp/view.el (view):
42136 * lisp/ps-print.el (ps-print):
42137 * lisp/printing.el (printing):
42138 * lisp/outline.el (outlines):
42139 * lisp/lpr.el (lpr):
42140 * lisp/delim-col.el (columns): Use 'text' group instead of 'wp'.
42141 * lisp/cus-edit.el (wp): Remove the "text" tag.
42142 (text): New defgroup, inherits from the deprecated 'wp'.
42143 (outlines): Remove, in favor of the definition in outline.el.
42144 (tex): Inherit from 'text'.
42145 Suggested by Drew Adams <drew.adams@oracle.com>. (Bug#24549)
42147 2016-10-08 Laimonas Vėbra <laimonas.vebra@yahoo.com> (tiny change)
42149 Extend dictionary and library-directory handling for Ispell
42151 * lisp/textmodes/ispell.el (ispell-check-version): Allow
42152 overriding LIBDIR via the variable defined by LIBRARYVAR (usually
42154 (ispell-valid-dictionary-list): If the -d option to Ispell
42155 specifies an absolute file name, use that regardless of
42156 ispell-library-directory. (Bug#24439)
42158 2016-10-07 Tassilo Horn <tsdh@gnu.org>
42160 Fix unescaped \begin{...} in docstring
42162 * lisp/textmodes/reftex-cite.el (reftex-bib-or-thebib): Fix unescaped
42163 \begin{...} in docstring.
42165 2016-10-06 Noah Friedman <friedman@splode.com>
42169 2016-10-06 Eli Zaretskii <eliz@gnu.org>
42171 Fix compilation with MinGW runtime 3.22.2 and w32api 3.18.2
42173 * nt/inc/ms-w32.h (_WIN32_WINNT) [!MINGW_W64]: Undefine before
42174 defining to avoid redefinition warnings.
42176 * nt/inc/sys/stat.h (_SYS_STAT_H, _INC_STAT_H): Define, to avoid
42177 inclusion of sys/stat.h from the system headers, which could then
42178 lead to compilation errors due to redefinition of 'struct stat'
42179 etc. This is needed because latest versions of MinGW runtime
42180 include sys/stat.h from wchar.h.
42182 * src/image.c (__MINGW_MAJOR_VERSION) [WINDOWSNT]: Temporarily
42183 redefine to 4 to avoid conflict between 2 definitions of
42184 MemoryBarrier. (Bug#24613)
42186 2016-10-05 Mark Oteiza <mvoteiza@udel.edu>
42188 * lisp/url/url-parse.el (url-generic-parse-url): Unquote macro URL argument.
42190 2016-10-05 Mark Oteiza <mvoteiza@udel.edu>
42192 Autoload entry point testcover-start
42194 * lisp/emacs-lisp/testcover.el: Add autoload cookie for
42197 2016-10-05 Thomas Fitzsimmons <fitzsim@fitzsim.org>
42199 Bump version of ntlm.el to 2.1.0
42201 * lisp/net/ntlm.el: Bump version to 2.1.0.
42203 2016-10-05 Thomas Fitzsimmons <fitzsim@fitzsim.org>
42205 lisp/net/ntlm.el: Fix comment and docstring formatting
42207 2016-10-05 Thomas Fitzsimmons <fitzsim@fitzsim.org>
42209 lisp/net/ntlm.el: Match Mozilla Type 1 and 3 message behavior
42211 * lisp/net/ntlm.el (ntlm-build-auth-request): Only set
42212 "negotiate domain supplied" bit when a domain is supplied. Do
42213 not set "negotiate workstation supplied" bit.
42214 (ntlm-build-auth-response): Set domain to empty string by
42215 default. Set workstation name to "WORKSTATION". Set flags to
42216 logical and of Type 1 and Type 2 message flags. Remove four
42217 trailing 0 bytes. Always set LM response. Hard-code domain
42218 offset. Reorder buffer fields.
42220 2016-10-05 Martin Rudalics <rudalics@gmx.at>
42222 Document return value of `display-buffer-in-side-window'
42224 * doc/lispref/windows.texi (Displaying Buffers in Side Windows):
42225 * lisp/window.el (display-buffer-in-side-window): Describe
42226 return value of `display-buffer-in-side-window'.
42228 2016-10-05 Eli Zaretskii <eliz@gnu.org>
42230 Improve wording in side windows documentation
42232 * doc/lispref/windows.texi (Displaying Buffers in Side Windows)
42233 (Side Window Options and Functions)
42234 (Frame Layouts with Side Windows): Minor wording improvements.
42236 2016-10-05 Martin Rudalics <rudalics@gmx.at>
42238 Document and fix some bugs with side windows
42240 Add a documentation for side windows and fix some bugs
42241 found when testing their behavior. Also add a new window
42242 parameter `no-delete-other-window', a new `display-buffer'
42243 alist member called `window-parameters', and functions to
42244 toggle and reverse side windows on a frame. Add new function
42245 `window-swap-states' to exchange states of two live windows.
42247 * lisp/window.el (display-buffer-in-atom-window): Use
42248 `split-window-no-error'.
42249 (window-sides-vertical): Maybe change layouts when setting this
42251 (window-sides-reversed): New option.
42252 (window-sides-slots): Rewrite doc-string and help echoes.
42253 (window-sides-shown): New buffer-local variable set when showing
42254 a buffer in a side window.
42255 (window--sides-inhibit-check): New variable.
42256 (window--sides-reverse-on-frame-p, window-toggle-side-windows)
42257 (window--sides-reverse-all, window--sides-reverse-frame)
42258 (window--sides-reverse-side, window--sides-reverse)
42259 (window--sides-verticalize-frame, window--sides-verticalize)
42260 (window--sides-check-failed): New functions.
42261 (window--side-window-p): Remove function.
42262 (window--major-non-side-window): Rename to `window-main-window',
42263 adjust callers, rewrite doc-string.
42264 (window--major-side-window): Rename to
42265 `window--make-major-side-window-next-to', adjust caller, fix
42267 (display-buffer-in-major-side-window): Rename to
42268 `window--make-major-side-window', adjust
42269 caller, rewrite doc-string. Make `window-side' and
42270 `window-slot' parameters persistent (Bug#23858). Don't set
42271 `delete-window' parameter. Add `preserve-size' entry to ALIST.
42272 (delete-side-window): Remove function.
42273 (display-buffer-in-side-window): Fix doc-string. Don't set
42274 `delete-window' parameter. Add `preserve-size' entry to ALIST.
42275 (window--side-check): Rename to window--sides-check. Rewrite
42276 completely. Adjust caller.
42277 (window-resize-no-error): Don't describe PIXELWISE argument.
42278 (adjust-window-trailing-edge): Fix bug that disallowed
42279 re-enlarging windows that were too small.
42280 (window-deletable-p): Don't tell that a minibuffer window on a
42281 non-minibuffer-only frame can be deleted. Fix doc-string.
42282 (delete-window): Handle deleting a side window here (the
42283 `delete-window' parameter is no more set for side windows).
42284 (delete-other-windows): Handle ‘no-delete-other-window'
42285 parameter. Don't treat side windows separately (see discussion
42286 of Bug#24368) but keep optimization that makes the main window
42287 the root window of its frame.
42288 (switch-to-prev-buffer, switch-to-next-buffer): Handle side
42289 windows and buffers shown in side windows separately.
42290 (split-window-no-error): New function.
42291 (window--state-get-1): Use right buffer when storing window
42292 point and start positions and WRITABLE is nil (Bug#24368).
42293 (window--state-put-1): Fix handling of `window-combination-limit'.
42294 Use `split-window-no-error'.
42295 (window--state-put-2): Try to restore windows with preserved
42296 size to their original size. Fix bug where a fixed window's width
42298 (window-state-put): When reducing an internal window to a live
42299 one, don't choose a side window.
42300 (window-swap-states): New function.
42301 (window-splittable-p): Don't call `window--side-window-p'.
42302 (window--display-buffer): Handle `window-parameters' ALIST entry.
42304 (display-buffer): Mention `window-parameters' entry in
42306 (display-buffer-at-bottom): Call `split-window-no-error'.
42308 * doc/lispref/elisp.texi (Top): New section "Side Windows".
42309 * doc/lispref/windows.texi (Deleting Windows): Fix descriptions
42310 of `delete-window' and `delete-other-windows' wrt window
42311 parameters and side windows.
42312 (Display Action Functions): Mention `window-parameters' ALIST
42314 (Side Windows): New section (Bug#18170).
42315 (Window Configurations): Describe new function `window-swap-states'.
42316 (Window Parameters): Say that functions may behave specially when
42317 their homonymous window parameter has been set. Mention new
42318 parameter `no-delete-other-window'. Add cross reference for
42319 `window-side' and `window-slot' parameters.
42321 2016-10-04 John Wiegley <johnw@newartisans.com>
42323 Add documentation note from Alex
42325 2016-10-04 Mark Oteiza <mvoteiza@udel.edu>
42327 Avoid dynamic binding on a symbol
42329 Instead, bind history in the default minibuffer-history.
42331 * lisp/replace.el (query-replace-read-from): Let-bind
42332 minibuffer-history. Change read-regexp and read-from-minibuffer's
42333 HISTORY arguments to nil so that they use minibuffer-history.
42335 2016-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
42337 * src/fileio.c (Finsert_file_contents): Fix hook handling (bug#24340)
42339 * src/fileio.c (Finsert_file_contents): Run before-change-hooks before
42340 deleting the old buffer content.
42341 * src/lisp.h (del_range_byte):
42342 * src/insdel.c (del_range_byte): Drop the last argument.
42343 * src/fns.c (Fbase64_encode_region): Adjust accordingly.
42345 2016-10-03 Tino Calancha <tino.calancha@gmail.com>
42347 Ibuffer: 'w' and 'B' default to buffer at current line
42350 https://lists.gnu.org/r/emacs-devel/2016-09/msg00384.html
42351 * lisp/ibuffer.el (ibuffer--near-buffers): New defun;
42352 return buffers near current line.
42353 * lisp/ibuf-ext.el (ibuffer-copy-buffername-as-kill): Use it.
42354 Add argument ARG; if a non-zero integer, return next ARG buffers.
42355 Otherwise return the marked buffers.
42356 If there are not marked buffers, return buffer at current line
42357 without prompting the user.
42358 Use ibuffer-get-marked-buffers instead of ibuffer-map-marked-lines.
42359 Append to kill ring when last command was a kill-region.
42360 (ibuffer-copy-filename-as-kill): Idem.
42362 Use ibuffer-buffer-file-name instead of buffer-file-name to
42363 include buffers in Dired mode.
42365 2016-10-03 Tino Calancha <tino.calancha@gmail.com>
42367 dired-mark-extension: Unmark if called with C-u prefix
42369 See discussion in #Bug2518 and:
42370 https://lists.gnu.org/r/emacs-devel/2016-09/msg00711.html
42371 * lisp/dired-x.el (dired-mark-extension):
42372 Update interactive calls: a prefix arg C-u unmark files;
42373 a prefix C-u C-u prompt for MARKER-CHAR and mark files with it.
42375 Show in the prompt that we are unmarking if called with a prefix argument.
42376 * doc/misc/dired-x.texi (Advanced Mark Commands):
42377 Update documentation for 'dired-mark-extension'.
42379 2016-10-02 Karl Fogel <kfogel@red-bean.com>
42381 Document yank behavior in the right place
42383 * lisp/simple.el (yank): Document the handling of the
42384 `yank-handled-properties' and `yank-excluded-properties' variables,
42385 and the `yank-handler' text property.
42386 (yank-pop): Refer to `yank' now (bug#286)
42388 * lisp/subr.el (insert-for-yank): Refer to `yank' now.
42389 (insert-for-yank-1): Refer to `insert-for-yank' now.
42391 See this thread for discussion:
42393 https://lists.gnu.org/r/emacs-devel/2016-09/threads.html#00329
42396 Subject: Question about intended behavior of 'insert-for-yank-1'.
42397 Date: Mon, 12 Sep 2016 00:17:14 -0500
42398 Message-ID: <874m5lr92d.fsf@red-bean.com>
42400 2016-10-02 Philipp Stephani <phst@google.com>
42402 Restart blink cursor timers on interval changes
42404 This prevents surprising behavior when timer interval customizations are
42405 only applied whenever the timers happen to be restarted (see Bug#24372).
42407 * lisp/frame.el (blink-cursor--start-idle-timer)
42408 (blink-cursor--start-timer): New functions.
42409 (blink-cursor-start, blink-cursor-check, blink-cursor-mode): Use
42410 the new helper functions.
42411 (blink-cursor-delay, blink-cursor-interval): Restart timers when
42412 the value is changed.
42414 2016-10-01 Philipp Stephani <phst@google.com>
42416 Use a simple keyword for a non-nil argument
42418 The second argument of `run-with-idle-timer' is Boolean, i.e. only nil
42419 and non-nil values are distinguished. Passing a number here is
42420 confusing. Pass a descriptive symbol instead.
42422 * lisp/frame.el (blink-cursor-mode, blink-cursor-check): Use
42423 :repeat symbol instead of number for second argument of
42424 `run-with-idle-timer'
42426 2016-10-01 Philipp Stephani <phst@google.com>
42428 Make querying to kill processes customizable
42430 Introduce a new customization option, `confirm-kill-processes', that
42431 users can set to nil if they don't want Emacs to nag them about killing
42434 * lisp/files.el (confirm-kill-processes): New customization option.
42435 (save-buffers-kill-emacs): Use customization option.
42437 * test/lisp/files-tests.el
42438 (files-test--save-buffers-kill-emacs--confirm-kill-processes): Add
42439 test for new customization option.
42441 * doc/emacs/entering.texi (Exiting): Document new user option.
42443 * doc/lispref/processes.texi (Query Before Exit): Document new
42446 * etc/NEWS: Document new user option.
42448 2016-10-01 Eli Zaretskii <eliz@gnu.org>
42450 Set :version of 'debugger-stack-frame-as-list'
42452 * lisp/cus-start.el (debugger-stack-frame-as-list): Give value to
42453 the ':version' attribute.
42455 2016-10-01 Eli Zaretskii <eliz@gnu.org>
42457 Bump Emacs version to 26.0.50
42462 * etc/refcards/ru-refcard.tex:
42463 * msdos/sed2v2.inp:
42464 * src/msdos.c: Increment Emacs version to 26.0.50.
42465 * etc/NEWS.25: New file, copied from etc/NEWS with post-25.1 stuff
42468 2016-10-01 Eli Zaretskii <eliz@gnu.org>
42470 Avoid compilation warning on MinGW
42472 * src/w32.c: Include string.h, needed for the prototype of
42473 'strerror', shadowed by 'sys_strerror'. This avoids a compiler
42474 warning about "no previous prototype". The string.h header
42475 must be included after ms-w32.h, but before "#undef strerror".
42477 2016-09-30 Alan Third <alan@idiocy.org>
42479 Fix compatibility with macOS 10.12 pmset (bug#24537)
42481 * lisp/battery.el (battery-pmset): Recognize and ignore battery id if
42484 2016-09-30 Paul Eggert <eggert@cs.ucla.edu>
42486 Limit <config.h>’s includes
42488 This follows up on recent problems with the fact that config.h
42489 includes stdlib.h etc.; some files need to include stdlib.h later.
42490 config.h generally should limit itself to includes that are
42491 universally safe; outside of MS-Windows, only stdbool.h makes
42492 the cut among the files currently included. So, move the
42493 other includes to just the files that need them (Bug#24506).
42494 * configure.ac (config_opsysfile): Remove, as this generic hook
42495 is no longer needed.
42496 * lib-src/etags.c, src/unexmacosx.c, src/w32.c, src/w32notify.c:
42497 * src/w32proc.c (_GNU_SOURCE):
42498 Remove, as it’s OK for config.h to do this now.
42499 * src/conf_post.h: Include <ms-w32.h>, instead of the generic
42500 config_opsysfile, for simplicity as this old way of configuring is
42501 now done only for the MS-Windows port. Do not include <ms-w32.h>
42502 if DEFER_MS_W32_H, for the benefit of the few files that want its
42503 effects later. Do not include <alloca.h>, <string.h>, or
42504 <stdlib.h>. Other files modified to include these headers as
42505 needed, or to not include headers that are no longer needed.
42506 * src/lisp.h: Include <alloca.h> and <string.h> here, since
42507 some of the inline functions need them.
42508 * src/regex.c: Include <alloca.h> if not emacs. (If emacs,
42509 we can rely on SAFE_ALLOCA.) There is no longer any need to
42510 worry about HAVE_ALLOCA_H.
42511 * src/unexmacosx.c: Rely on config.h not including stdlib.h.
42512 * src/w32.c, src/w32notify.c, src/w32proc.c (DEFER_MS_W32_H):
42513 Define before including <config.h> first, and include <ms-w32.h>
42514 after the troublesome headers.
42516 2016-09-30 Vasilij Schneidermann <v.schneidermann@gmail.com>
42518 New user option 'debugger-stack-frame-as-list'
42520 * src/eval.c (syms_of_eval) <debugger-stack-frame-as-list>: New
42522 * lisp/cus-start.el (standard): Add debugger-stack-frame-as-list.
42523 * lisp/emacs-lisp/debug.el (debugger-setup-buffer): Adjust
42524 backtrace processing for the value of debugger-stack-frame-as-list.
42525 * lisp/emacs-lisp/edebug.el (edebug-backtrace): Adjust backtrace
42526 processing for the value of debugger-stack-frame-as-list.
42527 * doc/lispref/debugging.texi (Internals of Debugger): Document
42528 debugger-stack-frame-as-list.
42529 * etc/NEWS: Mention 'debugger-stack-frame-as-list'.
42531 2016-09-30 Aurelien Aptel <aaptel@suse.com>
42533 * src/alloc.c: call only non-null finalizers
42535 2016-09-30 Eli Zaretskii <eliz@gnu.org>
42537 Avoid compiler warnings in image.c on MS-Windows
42539 * src/image.c (DrawText, g_type_init) [WINDOWSNT]: Avoid compiler
42540 warning about unused macros.
42542 2016-09-30 Paul Rankin <hello@paulwrankin.com>
42544 * lisp/outline.el (outline-invisible-p): Only return `t' for
42545 the 'outline property.
42547 2016-09-29 Paul Eggert <eggert@cs.ucla.edu>
42549 Fix problems found by static checking --with-ns
42551 This is for Fedora 24 when configured with --enable-gcc-warnings.
42552 Although it does not fix all the problems, it fixes many of them.
42553 * src/frame.c (XParseGeometry):
42554 * src/nsterm.m (mouseDown:):
42555 Mark locals with UNINIT to pacify --enable-gcc-warnings.
42556 * src/image.c (PIX_MASK_DRAW, DefaultDepthOfScreen):
42557 Remove unused macros.
42558 (slurp_file xbm_scan, xbm_read_bitmap_data, xbm_load_image)
42559 (xbm_file_p, xbm_load, xpm_scan, xpm_make_color_table_v)
42560 (xpm_put_color_table_v, xpm_get_color_table_v)
42561 (xpm_make_color_table_h, xpm_put_color_table_h)
42562 (xpm_get_color_table_h, xpm_load_image, xpm_load)
42563 (pbm_next_char, pbm_scan_number, pbm_load, svg_load)
42565 * src/nsfns.m (x_get_string_resource):
42566 * src/nsimage.m (ns_image_from_XBM):
42567 Fix pointer signedness problems.
42568 * src/image.c (xpm_load_image, x_build_heuristic_mask, pbm_load)
42569 (imagemagick_load_image): Omit unused locals.
42570 * src/nsfns.m (ns_send_types, ns_return_types, ns_drag_types)
42571 (Fx_open_connection):
42572 * src/nsfont.m (ns_antialias_threshold):
42573 Move extern decl to nsterm.h so it can be checked.
42574 * src/nsmenu.m (svcsMenu, dockMenu):
42575 Move to the only file that uses them, so they can be static.
42576 * src/nsterm.h (find_and_call_menu_selection):
42577 * src/nsterm.m (x_set_frame_alpha):
42578 Omit duplicate decls.
42579 * src/nsterm.h (ns_dump_glyphstring): Mark as EXTERNALLY_VISIBLE.
42580 * src/nsfns.m (ns_tooltip, ns_display_info_for_name)
42581 (ns_set_name_as_filename, x_set_menu_bar_lines)
42582 (x_set_tool_bar_lines, x_set_internal_border_width):
42583 * src/nsterm.m (ns_drag_types, ns_draw_text_decoration):
42585 * src/nsfns.m (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp):
42586 * src/nsterm.m (ns_free_indexed_color, ns_color_to_lisp):
42588 * src/nsfont.m (ns_dump_glyphstring):
42589 * src/nsterm.m (hide_bell, ns_get_color, ns_color_to_lisp)
42590 (ns_clear_frame, keyDown:):
42591 Fix signedness problem with printf arg.
42592 * src/nsterm.h (ns_input_events, ns_finish_events):
42593 * src/nsterm.m (ns_finish_events, hide_bell):
42594 Prototype the decls.
42595 * src/nsterm.m (NSMenuDidBeginTrackingNotification):
42596 Omit unnecessary decl.
42598 (mainMenu) [NS_IMPL_COCOA]: Now static, and in this file.
42599 (ns_dumpglyphs_box_or_relief, changeFont:, initFrameFromEmacs:)
42600 (toggleFullScreen:): Use FACE_FROM_ID instead of
42601 FACE_FROM_ID_OR_NULL in contexts where the caller expects the
42602 result to be non-null.
42603 (applicationShouldTerminate:): Fix misleading indentation.
42605 2016-09-28 Mark Oteiza <mvoteiza@udel.edu>
42607 Turn on more lexical-binding
42611 * lisp/htmlfontify.el: Turn on lexical-binding.
42612 (htmlfontify-string): Use pushnew instead of add-to-list.
42613 * lisp/info-xref.el:
42617 * lisp/ps-print.el:
42618 * lisp/replace.el: Turn on lexical-binding. Require cl-lib at compile
42620 (multi-occur): Use cl-pushnew instead of add-to-list.
42621 (replace-match-string-symbols): Remove unused lexical variable.
42622 (replace-search, replace-highlight): Fix argument shadowing.
42624 * lisp/xml.el: Turn on lexical-binding.
42625 (xml--parse-buffer): Use push instead of add-to-list.
42626 * lisp/xt-mouse.el: Turn on lexical-binding.
42628 2016-09-27 Michael Albinus <michael.albinus@gmx.de>
42630 * admin/notes/bug-triage: Do not mention closed bugs
42632 * admin/notes/bug-triage: Do not mention closed bugs, they are
42633 suppressed by default in debbugs-{gnu,org}.
42635 2016-09-27 Michael Albinus <michael.albinus@gmx.de>
42637 * etc/PROBLEMS: Remove problem Bug#22814, again.
42639 2016-09-26 Paul Eggert <eggert@cs.ucla.edu>
42641 Stick with debbugs-supported tags in triage
42643 * admin/notes/bug-triage: Stick to the tag "unreproducible", which
42644 debbugs supports, rather than suggesting "doneunreproducible" or
42647 2016-09-26 Paul Eggert <eggert@cs.ucla.edu>
42649 Merge from origin/emacs-25
42651 9fc9988 Improve documentation of 'expand-abbrev' and wrapper hooks
42652 c14a1d4 Minor copyedits of MS-Windows installation instructions
42653 f281924 Fix display of cursor when 'blink-cursor-delay' has small value
42656 # lisp/minibuffer.el
42658 2016-09-26 Paul Eggert <eggert@cs.ucla.edu>
42660 Merge from origin/emacs-25
42662 0ae9a81 Document 'timerp'
42663 2c72c46 Improve documentation of overlay priorities
42664 f6fa160 Fix 'dired-compress-files'
42665 2b8c5f0 Update commentary of STRING_CHAR and FETCH_MULTIBYTE_CHAR
42672 2016-09-26 Paul Eggert <eggert@cs.ucla.edu>
42674 Merge from origin/emacs-25
42676 cf9e174 Document the optional zlib library in MS-Windows builds
42677 84eb144 ; * admin/notes/unicode: Mention BidiCharacterTest.txt.
42678 73c67dd Fix tagging of DEFUN by etags
42679 ea1960b Avoid resetting track-mouse by mouse clicks
42680 505fef3 Improve nt/README.W32 instructions
42681 1229cc4 Document that desktop file overrides frame parameters
42682 f0eb70d ; Update ChangeLog.2 and ldef-boot.el for Emacs 25.1 release
42686 # admin/notes/unicode
42687 # lisp/ldefs-boot.el
42689 2016-09-26 Paul Eggert <eggert@cs.ucla.edu>
42691 Merge from origin/emacs-25
42693 0ffc9ce Update admin/authors.el
42694 0ad7410 Update Antinews in ELisp manual
42695 ea0f750 Fix comments on window height macros
42696 0bbdeed Fix 'url-http-create-request' when cookies are used
42697 0045998 Fix cross reference in frames.texi
42698 1392894 ; * etc/DEBUG: Minor copyedits.
42699 304a5c8 ; * etc/DEBUG: Improve documentation of getting control to GDB.
42700 56bf7d7 Fix regexp-opt documentation (bug #17862)
42701 803ad6f ; Fix documentation of seq-subseq
42702 ed4530d * lisp/emacs-lisp/gv.el (gv-ref): Fix example of PLACE in doc...
42703 88ea396 ; Spelling fixes
42704 17197d0 Fix tags-query-replace docstring
42705 80a7f8b Clarify documentation of precision in format specs
42706 88a5052 Improve and clarify documentation of subprocesses
42707 89eb09f * etc/PROBLEMS: Mention gnutls-cli 3.5.3 (Bug#24247).
42713 2016-09-26 Michael Albinus <michael.albinus@gmx.de>
42715 * lisp/net/tramp-compat.el (tramp-compat-funcall): Don't use `subrp'.
42717 2016-09-24 Eli Zaretskii <eliz@gnu.org>
42719 Fix 'dired-mark-extension' with prefix argument
42721 * lisp/dired-x.el (dired-mark-extension): Allow to specify
42722 MARKER-CHAR interactively as a string, not as a character's
42723 codepoint. (Bug#24518)
42725 * doc/misc/dired-x.texi (Advanced Mark Commands): Document the
42726 behavior when invoked with a prefix arg.
42728 2016-09-24 Simen Heggestøyl <simenheg@gmail.com>
42730 Support completion of classes and IDs in CSS mode
42732 * lisp/textmodes/css-mode.el (css-class-list-function): New variable
42733 holding the function to call for retrieving completions of class
42735 (css-id-list-function): New variable holding the function to call for
42736 retrieving completions of IDs.
42737 (css--foreign-completions): New function for retrieving completions
42738 from other buffers.
42739 (css--complete-selector): Support completing HTML class names and IDs
42740 from other buffers in addition to completing HTML tags.
42742 * lisp/textmodes/sgml-mode.el (html--buffer-classes-cache): New
42743 variable holding a cache for `html-current-buffer-classes'.
42744 (html--buffer-ids-cache): New variable holding a cache for
42745 `html-current-buffer-ids'.
42746 (html-current-buffer-classes): New function returning a list of class
42747 names used in the current buffer.
42748 (html-current-buffer-ids): New function returning a list of IDs used
42749 in the current buffer.
42750 (html-mode): Set `css-class-list-function' and `css-id-list-function'
42751 to `html-current-buffer-classes' and `html-current-buffer-ids'
42754 2016-09-24 Eli Zaretskii <eliz@gnu.org>
42756 Update test suite files due to removal of test/lisp/legacy
42758 * test/README: Reference file-organization.org.
42759 * test/file-organization.org: Remove the description of files in
42760 the lisp/legacy/ directory.
42762 2016-09-24 Eli Zaretskii <eliz@gnu.org>
42764 Incorporate syntax-tests in lisp-tests.
42766 * test/lisp/emacs-lisp/lisp-tests.el: Add tests from
42767 test/lisp/legacy/syntax-tests.el.
42768 * test/lisp/legacy/syntax-tests.el: File deleted.
42770 2016-09-24 Eli Zaretskii <eliz@gnu.org>
42772 Incorporate occur-tests in replace-tests
42774 * test/lisp/replace-tests.el: Add tests from
42775 test/lisp/legacy/occur-tests.el.
42776 * test/lisp/legacy/occur-tests.el: File deleted.
42778 2016-09-24 Eli Zaretskii <eliz@gnu.org>
42780 Incorporate lexbind-tests.el in bytecomp-test.el
42782 * test/lisp/emacs-lisp/bytecomp-tests.el: Added tests from
42783 test/lisp/legacy/lexbind-tests.el.
42784 * test/lisp/legacy/lexbind-tests.el: File deleted.
42786 2016-09-24 Paul Eggert <eggert@cs.ucla.edu>
42788 Improve integer overflow handling a bit
42790 * src/charset.c (read_hex): Use INT_LEFT_SHIFT_OVERFLOW for clarity.
42791 The machine code is the same on my platform.
42792 * src/doprnt.c (doprnt):
42793 * src/emacs-module.c (module_funcall):
42794 * src/font.c (font_intern_prop):
42795 * src/keyboard.c (Frecursion_depth):
42796 * src/lread.c (read1):
42797 Use WRAPV macros instead of checking overflow by hand.
42798 * src/editfns.c (hi_time, time_arith, decode_time_components):
42799 * src/emacs-module.c (Fmodule_load):
42800 Simplify by using FIXNUM_OVERFLOW_P.
42801 * src/emacs-module.c: Include intprops.h.
42802 * src/xdisp.c (percent99): New function.
42803 (decode_mode_spec): Use it to simplify overflow avoidance and
42804 formatting of %p and %P.
42806 2016-09-24 Eli Zaretskii <eliz@gnu.org>
42808 Incorporate core-elisp-tests in lisp-tests
42810 * test/lisp/emacs-lisp/lisp-tests.el: Added tests from
42811 test/lisp/legacy/core-elisp-tests.el.
42812 * test/lisp/legacy/core-elisp-tests.el: File removed.
42814 2016-09-24 Eli Zaretskii <eliz@gnu.org>
42816 Move coding-tests.el and decoder-test.el to their places
42818 * test/src/coding-tests.el: Added all the tests from
42819 test/lisp/legacy/decoder-tests.el.
42820 * test/lisp/legacy/decoder-tests.el: File deleted.
42822 2016-09-23 Vibhav Pant <vibhavp@gmail.com>
42824 Use correct TYPE value for displaying error messages in (erc-display-message)
42826 2016-09-23 Eli Zaretskii <eliz@gnu.org>
42828 Bump the version to 25.2.50
42833 * msdos/sed2v2.inp: Increment the Emacs version to 25.2.50.
42835 2016-09-22 Tino Calancha <tino.calancha@gmail.com>
42837 ibuffer-do-view-other-frame: Display each buffer in a new frame
42839 * lisp/ibuffer.el (ibuffer-do-view-1):
42840 When TYPE equals 'other-frame, then display each buffer
42841 in a new frame (Bug#24086).
42843 2016-09-22 Paul Eggert <eggert@cs.ucla.edu>
42848 2016-09-22 stdint: port to GCC 7
42849 2016-09-22 limits-h, stdint: don't assume extensions
42850 * doc/misc/texinfo.tex, m4/limits-h.m4, m4/stdint.m4: Copy from gnulib.
42852 2016-09-22 Alan Mackenzie <acm@muc.de>
42854 * lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): Fix coding error
42856 2016-09-21 Paul Eggert <eggert@cs.ucla.edu>
42858 Port recent flexmember changes to NetBSD
42860 The NetBSD library supports localtime_rz directly, and without
42861 this change 'configure' omitted the flexmember test that is marked
42862 as conditional on localtime_rz. Emacs now needs to use
42863 flexmember.m4 even when localtime_rz works.
42864 Problem reported by Thomas Klausner.
42865 * admin/merge-gnulib (GNULIB_MODULES): Add flexmember.
42866 * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
42868 2016-09-21 Paul Eggert <eggert@cs.ucla.edu>
42870 * doc/misc/texinfo.tex: Copy from gnulib.
42872 2016-09-21 Michael Albinus <michael.albinus@gmx.de>
42874 * lisp/net/tramp.el (tramp-clear-passwd): Call also `auth-source-forget'.
42876 2016-09-20 Paul Eggert <eggert@cs.ucla.edu>
42878 Use flexmembers on IBM XL C for AIX
42880 This removes a workaround where Emacs did not use flexible
42881 array members when compiled with IBM XL C. Instead, avoid
42882 the problem by making the aliasing issues more obvious to
42884 * admin/merge-gnulib: Don’t remove m4/flexmember.m4.
42885 * m4/flexmember.m4: Copy from gnulib.
42886 * configure.ac (AC_C_FLEXIBLE_ARRAY_MEMBER): Remove workaround.
42887 * src/alloc.c (allocate_string_data): Rephrase to avoid aliasing
42888 problem that would otherwise mess up code generated for flexible
42889 array members by IBM XL C for AIX, V12.1.
42890 * src/conf_post.h (FLEXIBLE_ARRAY_MEMBER): Remove; now done
42893 2016-09-19 Michael Albinus <michael.albinus@gmx.de>
42895 Fix a problem with Tramp when the temporary dir isn't C:/Temp on w32
42897 * lisp/net/tramp-sh.el (tramp-sh-handle-expand-file-name): Don't use
42898 `tramp-drop-volume-letter' any longer, it causes collateral
42899 damages. Reported by Chris Zheng <chriszheng99@gmail.com>.
42901 2016-09-17 Paul Eggert <eggert@cs.ucla.edu>
42903 Port January __morecore changes to AIX 7.1
42905 * src/vm-limit.c (__MALLOC_HOOK_VOLATILE, __morecore)
42906 (__after_morecore_hook):
42907 * src/ralloc.c (__morecore):
42908 Declare if DOUG_LEA_MALLOC is not defined, not if HAVE_MALLOC_H is
42909 not defined. <malloc.h> does not declare these in AIX 7.1.
42911 2016-09-17 Paul Eggert <eggert@cs.ucla.edu>
42913 Define _GNU_SOURCE in files delaying config.h
42915 Problem reported by Richard Copley in:
42916 https://lists.gnu.org/r/emacs-devel/2016-09/msg00440.html
42917 * src/w32.c, src/w32notify.c, src/w32proc.c (_GNU_SOURCE):
42920 2016-09-17 Eli Zaretskii <eliz@gnu.org>
42922 Update the bidi test code and data
42924 * test/manual/BidiCharacterTest.txt: Import the version from
42925 Unicode Standard 9.0.0.
42926 * test/manual/biditest.el (biditest-generate-testfile): Allow 'x'
42927 in the 4th field of the test data.
42929 2016-09-17 Tino Calancha <tino.calancha@gmail.com>
42931 ibuffer-do-toggle-read-only: Fix unused argument
42933 * lisp/ibuffer.el (ibuffer-do-toggle-read-only): Call
42934 'read-only-mode' with ARG when its an integer.
42935 Clarify the meaning of ARG in doc string.
42937 2016-09-17 Alan Mackenzie <acm@muc.de>
42939 Improve accuracy of line/column numbers in byte compiler's warning messages.
42941 * lisp/emacs-lisp/bytecomp.el (byte-compile-set-symbol-position): ensure new
42942 value of byte-compile-last-position is not lower than old value.
42943 (byte-compile-function-warn): call byte-compile-set-symbol-position.
42945 2016-09-17 Michael Albinus <michael.albinus@gmx.de>
42949 * lisp/net/tramp.el (tramp-get-buffer): Reuse connection
42950 property "process-buffer" if already existing.
42951 (tramp-connectable-p): Suppress debug messages.
42953 2016-09-16 Paul Eggert <eggert@cs.ucla.edu>
42955 Define _GNU_SOURCE in unexmacosx.c
42957 Problem reported by Bob Halley in:
42958 https://lists.gnu.org/r/emacs-devel/2016-09/msg00427.html
42959 * src/unexmacosx.c (_GNU_SOURCE): Define if not already defined.
42961 2016-09-16 Alan Mackenzie <acm@muc.de>
42963 C Mode: Fix mis-fontification of macro invocation as function declaration
42965 This happened with a macro invocation which was followed by a statement block
42968 * lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): CASE 11: distinguish
42969 between contexts nil and top, being less permissive in the former case.
42970 (c-just-after-func-arglist-p): call c-forward-decl-or-cast-1 with context top.
42972 2016-09-16 Eli Zaretskii <eliz@gnu.org>
42974 Improve the doc string of 'format'
42976 * src/editfns.c (Fformat): Fix ambiguity in the doc string's usage
42977 of a literal period. (Bug#24407)
42979 2016-09-16 Eli Zaretskii <eliz@gnu.org>
42981 Improve doc strings in whitespace.el
42983 * lisp/whitespace.el (whitespace-mode, whitespace-newline-mode)
42984 (global-whitespace-mode, global-whitespace-newline-mode): Improve
42985 the doc strings. (Bug#24413)
42987 2016-09-16 Eli Zaretskii <eliz@gnu.org>
42989 Improve detectability of 'next-logical-line' and 'previous-logical-line'
42991 * lisp/simple.el (next-line, previous-line): Mention
42992 'next-logical-line' and 'previous-logical-line' in the doc
42993 strings. (Bug#24443)
42995 2016-09-16 Paul Eggert <eggert@cs.ucla.edu>
43000 2016-09-16 extensions: fix typo in comment
43001 2016-09-16 stdio: don't redefine __USE_MINGW_ANSI_STDIO
43002 * m4/extensions.m4, m4/stdio_h.m4: Copy from gnulib.
43004 2016-09-15 Paul Eggert <eggert@cs.ucla.edu>
43006 Prefer now-standard int width macros
43008 * src/data.c (ULL_WIDTH):
43009 * src/lisp.h (EMACS_INT_WIDTH, BITS_PER_BITS_WORD):
43010 * src/lread.c (read_integer):
43011 * src/term.c (produce_glyphless_glyph):
43012 * src/xterm.c (x_send_scroll_bar_event):
43013 Use *_WIDTH macros instead of CHAR_BIT * sizeof.
43014 * src/data.c (ULL_WIDTH): Rename from BITS_PER_ULL for consistency
43015 with the *_WIDTH standard macros. All uses changed.
43016 * src/gmalloc.c (INT_BIT): Remove. All uses replaced with INT_WIDTH.
43017 * src/lisp.h (EMACS_INT_WIDTH): Rename from BITS_PER_EMACS_INT
43018 for consistency with the *_WIDTH standard macros. All uses changed.
43019 (BITS_PER_CHAR): Remove; all uses replaced by CHAR_BIT. This must
43020 be the same as CHAR_WIDTH and avoids confusion with Elisp
43021 char-width, which counts columns not bits.
43022 (BITS_PER_SHORT): Remove; all uses replaced by SHRT_WIDTH.
43023 (BITS_PER_LONG): Remove; all uses replaced by LONG_WIDTH.
43024 * src/lread.c: Do not include limits.h since CHAR_BIT is no longer
43027 2016-09-15 Paul Eggert <eggert@cs.ucla.edu>
43032 2016-09-15 stdint: support new _WIDTH macros
43033 2016-09-15 limits-h: new module
43034 2016-09-15 sys_types: avoid glibc 2.25 warnings about major()
43035 2016-09-15 extensions: port to more ISO C TSes
43036 2016-09-13 intprops: new macro TYPE_WIDTH
43037 2016-09-13 extensions: port to recent ISO C TRs
43038 * .gitignore: Add lib/limits.h.
43039 * doc/misc/texinfo.tex, lib/ftoastr.h, lib/intprops.h:
43040 * lib/stdint.in.h, m4/extensions.m4, m4/stdint.m4, m4/stdio_h.m4:
43041 * m4/sys_types_h.m4: Copy from gnulib.
43042 * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
43043 * lib/limits.in.h, m4/limits-h.m4: New files, copie from gnulib.
43044 * nt/gnulib.mk: Merge changes from lib/gnulib.mk.
43046 2016-09-15 Michael Albinus <michael.albinus@gmx.de>
43048 Rework fixing Bug#24432
43050 * lisp/net/tramp.el (tramp-get-buffer): Set connection property
43051 "process-buffer" in order to mark connection as active.
43053 * lisp/net/tramp-cache.el (tramp-get-hash-table)
43054 (tramp-set-connection-property)
43055 (tramp-dump-connection-properties): Do not use "active" property.
43056 (tramp-list-connections): Use "process-buffer" property.
43058 * lisp/net/tramp-cmds.el (tramp-cleanup-connection): Flush process
43059 properties prior deletion of process.
43061 2016-09-14 Johan Bockgård <bojohan@gnu.org>
43063 * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Fix debug spec (Bug#24430).
43065 * lisp/emacs-lisp/edebug.el (defun): Fix debug spec.
43067 2016-09-14 Eli Zaretskii <eliz@gnu.org>
43069 Avoid compiler warning on MS-Windows due to clone_file
43071 * src/fileio.c (clone_file): Condition on !WINDOWSNT, since the
43072 call to it is not compiled in that build, and having it defined
43073 causes compiler warnings.
43075 2016-09-14 Eli Zaretskii <eliz@gnu.org>
43077 Avoid aborts in GC due to abort_on_gc
43080 * src/print.c (Fprin1_to_string):
43081 * src/eval.c (signal_or_quit):
43082 * src/alloc.c (garbage_collect_1): Remove declarations, setting,
43083 and testing the value of abort_on_gc. It is no longer needed, and
43084 using it causes rare aborts in GC for no good reason. (Bug#23912)
43086 2016-09-14 Michael Albinus <michael.albinus@gmx.de>
43090 * lisp/net/tramp-cache.el (tramp-get-hash-table): Initialize a
43091 connection as inactive.
43092 (tramp-set-connection-property): Make the connection active.
43093 (tramp-dump-connection-properties): Don't save "active" property.
43094 (tramp-list-connections): List only active connections. (Bug#24432)
43096 2016-09-14 Lars Ingebrigtsen <larsi@gnus.org>
43098 Don't bug out on all-whitespace URLs
43100 * lisp/net/shr.el (shr-expand-url): Don't bug out on
43101 degenerate all-whitespace URLs.
43103 2016-09-13 Katsumi Yamaoka <yamaoka@jpl.org>
43105 sieve-manage.el: Rename sieve-manage-ignore-broken-tls
43107 * lisp/net/sieve-manage.el (sieve-manage-ignore-starttls):
43108 Rename from sieve-manage-ignore-broken-tls. If it is set,
43109 sieve-manage will never use STARTTLS even if the server says
43110 it is capable (but may be broken).
43112 2016-09-13 Paul Eggert <eggert@cs.ucla.edu>
43114 Port to ISO/IEC TS 18661-1:2014
43116 * src/character.h (CHARACTER_WIDTH): Rename from CHAR_WIDTH.
43119 2016-09-13 Tino Calancha <tino.calancha@gmail.com>
43121 dired-jump: Expand file-name before dired-goto-file call
43123 Command dired-goto-file requires its argument to be an absolute
43124 file name. Interactively FILE-NAME is read with read-file-name,
43125 which could return an abbreviated file name (Bug#24409).
43126 * lisp/dired-x.el (dired-jump): Use expand-file-name on FILE-NAME.
43127 Clarify in doc string the meaning of arg FILE-NAME.
43129 2016-09-13 Tino Calancha <tino.calancha@gmail.com>
43131 Add test for Bug#21454
43133 * test/lisp/legacy/files-tests.el (files-test-bug-21454): New test.
43135 2016-09-12 Katsumi Yamaoka <yamaoka@jpl.org>
43137 * lisp/net/sieve-manage.el (sieve-manage-ignore-broken-tls): Add :version.
43139 2016-09-12 TSUCHIYA Masatoshi <tsuchiya@namazu.org>
43141 sieve.el: Make the buffer to edit unmodified initially (bug#24423)
43143 * lisp/net/sieve.el (sieve-edit-script):
43144 Make the buffer to edit be not modified-p initially (bug#24423).
43146 2016-09-12 TSUCHIYA Masatoshi <tsuchiya@namazu.org>
43148 sieve-manage.el: Allow user to avoid STARTTLS capability test (bug#24422)
43150 * lisp/net/sieve-manage.el
43151 (sieve-manage-ignore-broken-tls): New user option.
43152 (sieve-manage-open-server):
43153 Don't test STARTTLS capability if the option is set (bug#24422).
43155 2016-09-12 Michal Nazarewicz <mina86@mina86.com>
43157 Fix compiler thinking width and height may be unitialized in frame.c
43159 This fixes the following warning:
43161 frame.c: In function ‘x_set_frame_parameters’:
43162 frame.c:3329:25: error: ‘width’ may be used uninitialized in
43163 this function [-Werror=maybe-uninitialized]
43164 adjust_frame_size (f, width_change ? width : -1,
43167 * src/frame.c (x_set_frame_parameters): Drop width_changed and
43168 height_changed variables in favor of storing that information in
43169 width and height variables.
43171 2016-09-12 Michal Nazarewicz <mina86@mina86.com>
43173 Fix compiler thinking tmpdir may be unitialized in emacsclient
43175 This fixes the following warning:
43177 emacsclient.c: In function ‘set_local_socket’:
43178 /usr/include/x86_64-linux-gnu/bits/string3.h:111:3: error:
43179 ‘tmpdir’ may be used uninitialized in this function
43180 [-Werror=maybe-uninitialized]
43181 return __builtin___stpcpy_chk (__dest, __src, __bos (__dest));
43183 emacsclient.c:1197:17: note: ‘tmpdir’ was declared here
43184 const char *tmpdir;
43186 * lib-src/emacsclient.c (set_local_socket): Get rid of use_tmpdir
43187 variable and instead use tmpdir being non-NULL as sign that it should
43190 2016-09-12 Tino Calancha <tino.calancha@gmail.com>
43192 image-dired: Signal an error before calling a missing executable
43194 Reverts commit ca473907
43195 Add a defun to check if an executable exists, and call it
43196 on each function using an external program: when the executable
43197 is not available signal an error.
43199 https://lists.gnu.org/r/emacs-devel/2016-09/msg00135.html
43200 * lisp/image-dired.el (image-dired--check-executable-exists): New defun.
43201 Throw and error when the executable arg is missing.
43202 (image-dired-display-image, image-dired-rotate-thumbnail)
43203 (image-dired-rotate-original, image-dired-set-exif-data)
43204 (image-dired-get-exif-data):
43207 2016-09-12 Eli Zaretskii <eliz@gnu.org>
43209 Fix daemon shutdown when emacs-kill-hooks ask questions
43211 * lisp/server.el (server-start): Put the server's kill-emacs-hook
43212 last, to allow other hooks to have a frame to interact with the
43215 2016-09-12 Paul Eggert <eggert@cs.ucla.edu>
43217 * src/casefiddle.c (casify_word): Simplify.
43219 * src/casefiddle.c (casify_word): Return Qnil.
43221 2016-09-12 Michal Nazarewicz <mina86@mina86.com>
43223 Refactor common code in {upcase,downcase,capitalize}-word functions
43225 * src/casefiddle.c (operate_on_word): Removed in favor of…
43226 (casify_word) …new function which does what operate_on_word did plus
43227 what all of the common code from *-word functions.
43228 (upcase-word, downcase-word, capitalize-word): Move code common between
43229 those functions (pretty much the whole body of those functions) into
43230 casify_word and use that instead of now deleted operate_on_word.
43232 2016-09-11 Paul Eggert <eggert@cs.ucla.edu>
43234 * doc/lispref/files.texi: Remove @vindex.
43236 2016-09-11 Paul Eggert <eggert@cs.ucla.edu>
43238 Remove unnecessary ref to coreutils manual
43240 * doc/lispref/files.texi: Document write-region-inhibit-fsync.
43242 2016-09-11 Alan Mackenzie <acm@muc.de>
43244 Correctly fontify C++ direct initializations with parens inside functions
43246 Or, more clearly, when something looks like a function declaration and it's
43247 inside a function, fontify it as a direct initialization.
43249 For this purpose, introduce a "brace stack" for each buffer, where an entry on
43250 the brace stack states how deeply nested a particular position is inside
43251 braces inside a "top level", which includes classes and namespaces.
43253 Also introduce a new "context", "top", with which c-font-lock-declarations
43254 signals to c-forward-decl-or-cast-1 that point is at the top level.
43256 * lisp/progmodes/cc-langs.el (c-get-state-before-change-functions): add
43257 c-truncate-bs-cache.
43258 (c-flat-decl-block-kwds, c-brace-stack-thing-key, c-brace-stack-no-semi-key)
43259 (c-type-decl-operator-prefix-key): new language constants/variables.
43261 * lisp/progmodes/cc-engine.el (c-bs-interval, c-bs-cache, c-bs-cache-limit)
43262 (c-bs-prev-pos, c-bs-prev-stack): New mostly local variables for the brace
43264 (c-init-bs-cache, c-truncate-bs-cache, c-truncate-bs-cache, c-brace-stack-at)
43265 (c-bs-at-toplevel-p): New functions which manipulate the brace stack (cache).
43266 (c-find-decl-prefix-search): Keep track of whether we're at top level.
43267 (c-find-decl-spots): New local variable cfd-top-level which records what it
43268 says. On calling cfd-fun, pass cfd-top-level as an additional argument.
43269 (c-forward-declarator): Add new element DECORATED to the result list. Set it
43270 to non-nil when a match for c-type-decl-operator-prefix-key is found.
43271 (c-forward-decl-or-cast-1): Handle the newly introduced context "top".
43272 Introduce "CASE 9.5", which recognizes direct initializations.
43274 * lisp/progmodes/cc-fonts.el (c-font-lock-complex-decl-prepare)
43275 (c-font-lock-enum-tail, c-font-lock-cut-off-declarators)
43276 (c-font-lock-enclosing-decls, c-simple-decl-matchers, c-basic-matchers-after):
43277 Add appropriate `not-top' argument to calls to c-font-lock-declarators.
43278 (c-font-lock-declarators): Additional parameter `not-top'. Use not-top to
43279 participate in the decision whether to fontify an identifier as a function or
43281 (c-font-lock-declarations): The internal lambda function takes an additional
43282 argument `toplev' from c-find-decl-spots, which it uses in determining the
43283 "context" of a declaration. Add appropriate `not-top' argument to calls to
43284 c-font-lock-declarators.
43285 (c-font-lock-objc-methods): Add extra parameter to internal lambda function,
43286 like for c-font-lock-declarators.
43288 * lisp/progmodes/cc-mode.el (c-basic-common-init): Initialize the brace stack
43291 2016-09-11 Eli Zaretskii <eliz@gnu.org>
43293 Avoid signaling errors when computing "Stop" in GDB menu
43295 * lisp/progmodes/gdb-mi.el (gdb-show-stop-p): Don't assume
43296 'gdb-running-threads-count' must have a numeric value.
43299 2016-09-11 Philipp Stephani <phst@google.com>
43301 Stop calling ‘byte-compile-log-warning’
43303 For errors, use ‘byte-compile-report-error’ instead so that the error
43304 is registered and causes compilation to fail (Bug#24359).
43306 For warnings, use ‘byte-compile-warn’ instead so that
43307 ‘byte-compile-error-on-warn’ is honored (Bug#24360).
43309 * lisp/emacs-lisp/macroexp.el (macroexp--funcall-if-compiled)
43310 (macroexp--warn-and-return): Use ‘byte-compile-warn’ instead of
43311 ‘byte-compile-log-warning’.
43313 * lisp/emacs-lisp/bytecomp.el (byte-compile-form, byte-compile-unfold-bcf)
43314 (byte-compile-setq, byte-compile-funcall): Use
43315 ‘byte-compile-report-error’ instead of ‘byte-compile-log-warning’.
43316 (byte-compile-log-warning): Convert comment to documentation
43317 string. Explain that the function shouldn’t be called directly.
43318 (byte-compile-report-error): Add optional FILL argument.
43320 * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
43321 (cconv--analyze-function, cconv-analyze-form): Use
43322 ‘byte-compile-warn’ instead of ‘byte-compile-log-warning’.
43324 * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand): Use
43325 ‘byte-compile-warn’ instead of ‘byte-compile-log-warning’.
43327 * lisp/subr.el (add-to-list): Use ‘byte-compile-report-error’ instead
43328 of ‘byte-compile-log-warning’.
43329 (do-after-load-evaluation): Use ‘byte-compile-warn’ instead of
43330 ‘byte-compile-log-warning’.
43332 2016-09-10 Paul Eggert <eggert@cs.ucla.edu>
43334 * etc/NEWS: Remove comment lost in emacs-25 merge.
43336 2016-09-10 Paul Eggert <eggert@cs.ucla.edu>
43338 Document file synchronization issues
43340 * doc/lispref/files.texi (Files and Storage): New section.
43342 2016-09-10 Paul Eggert <eggert@cs.ucla.edu>
43344 copy-file now uses GNU/Linux file cloning
43346 From a suggestion by Kieran Colford (see Bug#23904).
43347 * configure.ac: Check for linux/fs.h.
43348 * src/fileio.c [HAVE_LINUX_FS_H]: Include sys/ioctl.h and linux/fs.h.
43349 (clone_file): New function.
43350 (Fcopy_file): Use it.
43352 2016-09-10 Alan Third <alan@idiocy.org>
43354 Invert y coord of NS image files (bug#7847)
43356 * src/nsterm.m (ns_dumpglyphs_image): Invert y co-ordinate of the image
43359 2016-09-10 Noam Postavsky <npostavs@gmail.com>
43361 Don't require isearch-update before isearch-done
43363 It is useful to be able to call `isearch-done' unconditionally to
43364 ensure a non-isearching state.
43366 * lisp/isearch.el (isearch-done): Check that `isearch--current-buffer'
43367 is a live buffer before using it (Bug #21091).
43368 * test/lisp/isearch-tests.el (isearch--test-done): Test it.
43370 2016-09-09 Simen Heggestøyl <simenheg@gmail.com>
43372 * lisp/emacs-lisp/ring.el: Use lexical-binding
43374 * lisp/emacs-lisp/ring.el (ring-elements): Don't use the RESULT
43375 argument of `dotimes' when the iteration variable isn't referred by
43377 (ring-member): Don't pass nil as the RESULT argument of `dotimes'
43378 since it's the default.
43380 2016-09-08 Michal Nazarewicz <mina86@mina86.com>
43382 Split regex character class test into smaller chunks
43384 Having one test for all character classes it is not always trivial to
43385 determine which class is failing. This happens when failure is caused
43386 by ‘(should (equal (point) (point-max)))’ not being met.
43388 With per-character class tests, it is immidiatelly obvious which test
43389 causes issues plus tests for all classes are run even if some of them
43392 * test/src/regex-tests.el (regex-character-classes): Delete and split
43394 (regex-tests-alnum-character-class, regex-tests-alpha-character-class,
43395 regex-tests-ascii-character-class, regex-tests-blank-character-class,
43396 regex-tests-cntrl-character-class, regex-tests-digit-character-class,
43397 regex-tests-graph-character-class, regex-tests-lower-character-class,
43398 regex-tests-multibyte-character-class,
43399 regex-tests-nonascii-character-class,
43400 regex-tests-print-character-class, regex-tests-punct-character-class,
43401 regex-tests-space-character-class,
43402 regex-tests-unibyte-character-class,
43403 regex-tests-upper-character-class, regex-tests-word-character-class,
43404 regex-tests-xdigit-character-class): …new tests.
43406 2016-09-08 Michal Nazarewicz <mina86@mina86.com>
43408 Don’t allocate char-table’s extra slots in regexp-out-charset
43410 * lisp/emacs-lisp/regexp-opt.el (regexp-opt-charset): Do not use
43411 'case-table as charmap char-table’s property. The function has nothing
43412 to do with casing and in addition using 'case-table causes unnecessary
43413 extra slots to be allocated which ‘regexp-opt-charset’ does not use.
43415 2016-09-08 Michal Nazarewicz <mina86@mina86.com>
43417 Remove dead loop iterations in regex.c
43419 RE_CHAR_TO_MULTIBYTE(c) yields c for ASCII characters and a byte8
43420 character for c ≥ 0x80. Furthermore, CHAR_BYTE8_P(c) is true only
43421 for byte8 characters. This means that
43423 c = RE_CHAR_TO_MULTIBYTE (ch);
43424 if (! CHAR_BYTE8_P (c) && re_iswctype (c, cc))
43429 if (! false && re_iswctype (c, cc))
43431 for 0 ⪬ c < 0x80, and
43433 c = BYTE8_TO_CHAR (c);
43434 if (! true && re_iswctype (c, cc))
43436 for 0x80 ⪬ c < 0x100. In other words, the loop never executes for
43437 c ≥ 0x80 and RE_CHAR_TO_MULTIBYTE call is unnecessary for c < 0x80.
43439 * src/regex.c (regex_compile): Simplyfy a for loop by eliminating
43440 dead iterations and unnecessary macro calls.
43442 2016-09-08 Michal Nazarewicz <mina86@mina86.com>
43444 Replace decimalnump with alphanumericp
43446 decimalnump was used in regex.c only in ISALNUM macro which ored it with
43447 alphabeticp. Because both of those functions require Unicode general
43448 category lookup, this resulted in unnecessary lookups (if alphabeticp
43449 return false decimalp had to perform another lookup). Drop decimalnump
43450 in favor of alphanumericp which combines decimelnump with alphabeticp.
43452 * src/character.c (decimalnump): Remove in favor of…
43453 (alphanumericp): …new function.
43455 * src/regex.c (ISALNUM): Use alphanumericp.
43457 2016-09-08 Michal Nazarewicz <mina86@mina86.com>
43459 Remove inaccurate comment in regex.c
43461 * src/regex.c (regex_compile): Remove comment indicating that wctype of
43462 some character classes may be negative. All wctypes are in fact
43465 2016-09-08 Michal Nazarewicz <mina86@mina86.com>
43467 STRING_CHAR does not unify characters; update documentation
43469 * src/character.h (STRING_CHAR): Update doc.
43470 * src/buffer.h (FETCH_MULTIBYTE_CHAR): Update doc. While at it, change
43471 the function to use BYTE_POS_ADDR instead of open-coding it.
43473 2016-09-08 Simen Heggestøyl <simenheg@gmail.com>
43475 Add tests for ring.el
43477 * test/lisp/emacs-lisp/ring-tests.el: New file with tests for ring.el.
43479 2016-09-07 Martin Rudalics <rudalics@gmx.at>
43481 New file test/src/marker-tests.el
43483 2016-09-07 Paul Eggert <eggert@cs.ucla.edu>
43485 Port flexible array members to GCC + valgrind
43487 These changes are needed to conform to the C standard's rule for
43488 allocating structs containing flexible array members. C11 says
43489 that malloc (offsetof (struct s, m) + n) does not suffice to
43490 allocate a struct with an n-byte tail; instead, malloc’s arg
43491 should be rounded up to the nearest multiple of alignof (struct s).
43492 Although this is arguably a defect in C11, gcc -O2 + valgrind
43493 sometimes complains when this rule is violated, and when debugging
43494 it’s better to keep valgrind happy.
43495 For details please see the thread containing the message at:
43496 https://gcc.gnu.org/ml/gcc-patches/2016-09/msg00416.html
43497 * lib-src/ebrowse.c, src/alloc.c, src/image.c, src/process.c:
43498 Include flexmember.h.
43499 * lib-src/ebrowse.c (add_sym, add_member, make_namespace)
43500 (register_namespace_alias):
43501 * src/alloc.c (SDATA_SIZE, allocate_string_data):
43502 * src/image.c (xpm_cache_color, imagemagick_create_cache):
43503 * src/process.c (Fmake_network_process):
43504 Use FLEXSIZEOF instead of offsetof and addition.
43505 * src/alloc.c (SDATA_SIZE, vector_alignment):
43506 Use FLEXALIGNOF instead of sizeof (ptrdiff_t).
43507 * src/lisp.h (ALIGNOF_STRUCT_LISP_VECTOR):
43508 Remove, as alloc.c can now calculate this on its own.
43510 2016-09-07 Paul Eggert <eggert@cs.ucla.edu>
43515 2016-09-07 flexmember: new macro FLEXALIGNOF
43516 2016-09-07 flexmember: port better to GCC + valgrind
43517 2016-08-18 Port modules to use getprogname explicitly
43518 2016-09-02 manywarnings: add -fno-common
43519 * admin/merge-gnulib (GNULIB_TOOL_FLAGS): Don’t avoid flexmember,
43520 since time_rz now uses part of it. Instead, remove m4/flexmember.m4.
43521 * configure.ac (AC_C_FLEXIBLE_ARRAY_MEMBER): Define away,
43522 since Emacs assumes C99 and therefore removes m4/flexmember.m4.
43523 * lib/euidaccess.c, lib/group-member.c, lib/time_rz.c:
43524 * m4/manywarnings.m4: Copy from gnulib.
43525 * lib/flexmember.h: New file, from gnulib.
43526 * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
43528 2016-09-07 Noam Postavsky <npostavs@gmail.com>
43530 Don't --load directories
43532 * lisp/startup.el (command-line-1): Only pass expanded FILENAME argument
43533 of --load when it refers to a normal file, since `load' doesn't handle
43534 directories (Bug #16406).
43536 2016-09-07 Peder O. Klingenberg <peder@klingenberg.no>
43538 Avoid error in icalendar--read-element
43540 * lisp/calendar/icalendar.el (icalendar--read-element): Avoid a regex
43541 stack overflow by not using regex to extract values from calendar
43542 events. (Bug#24315)
43544 2016-09-07 Kaushal Modi <kaushal.modi@gmail.com>
43546 Fix back-white <-> black-white typo
43548 * lisp/ps-print.el (ps-begin-job): back-white -> black-white (Bug#24308)
43550 2016-09-07 Alan Third <alan@idiocy.org>
43552 Fix cursor at bottom left of rectangle (bug#24364)
43554 * lisp/rect.el (rectangle--col-pos): Don't assume point at EOL doesn't
43555 require rectangle--point-crutches to be set.
43557 2016-09-07 Eli Zaretskii <eliz@gnu.org>
43559 Fix documentation of convert-standard-filename on MS-Windows
43561 * lisp/files.el (convert-standard-filename): Doc fix. (Bug#24387)
43563 * etc/NEWS: Suggest a way for mirroring slashes where previously
43564 'convert-standard-filename' was used.
43566 2016-09-06 Paul Eggert <eggert@cs.ucla.edu>
43568 Use DEV_TTY more consistently
43570 * src/conf_post.h (DEV_TTY): Move from here ...
43571 * src/keyboard.c, src/keyboard.h: ... to here, as it doesn’t need
43572 to be visible everywhere. Make it a constant.
43573 * src/keyboard.c (handle_interrupt, Fset_quit_char):
43574 * src/process.c (create_process): Prefer DEV_TTY to "/dev/tty".
43576 2016-09-06 Eli Zaretskii <eliz@gnu.org>
43578 Avoid assertion violations when using marker positions
43580 * src/intervals.c (set_point_from_marker): If MARKER comes from
43581 another buffer, recalculate its byte position before using it to
43583 * src/marker.c (set_marker_internal): If POSITION is a marker from
43584 another buffer, recalculate its byte position before using it.
43587 2016-09-06 Alan Mackenzie <acm@muc.de>
43589 * lisp/progmodes/cc-engine.el (c-syntactic-re-search-forward): Fix coding bug
43591 2016-09-06 Alan Mackenzie <acm@muc.de>
43593 New options for handling of literals in c-syntactic-re-search-forward
43595 * lisp/progmodes/cc-engine.el (c-syntactic-re-search-forward): `noerror' can
43596 be given the values `before-literal' and `after-literal', so that when a
43597 search fails, and the `bound' is inside a literal, point is left respectively
43598 before or after that literal.
43600 2016-09-05 Eli Zaretskii <eliz@gnu.org>
43602 Avoid assertion violations when scrolling narrowed buffer
43604 * src/window.c (window_scroll_pixel_based):
43605 * src/xdisp.c (pos_visible_p): Don't allow simulated redisplay to
43606 start outside the accessible portion of the buffer. This avoids
43607 assertion violations when some Lisp narrows the buffer to less
43608 than the current window, and then attempts to scroll the buffer.
43610 2016-09-05 Eli Zaretskii <eliz@gnu.org>
43612 Treat SIGINT correctly in GUI sessions on MS-Windows
43614 * src/w32proc.c (sys_signal): Don't reject SIGINT, as it is
43615 supported by MS runtime.
43616 * src/term.c (DEV_TTY): Move from here ...
43617 * src/conf_post.h (DEV_TTY): ... to here. Separate definitions
43618 for WINDOWSNT and for the rest.
43619 * src/keyboard.c (handle_interrupt_signal): Use DEV_TTY instead of
43620 a literal "/dev/tty".
43622 * etc/NEWS: Mention the behavior change.
43624 2016-09-04 Alan Third <alan@idiocy.org>
43626 Fix synthetic bold on macOS retina displays
43628 * src/macfont.m (macfont_draw): Multiply the synthetic bold scaling
43629 factor by the OS window backing scale factor.
43631 2016-09-04 Tino Calancha <tino.calancha@gmail.com>
43633 image-dired: Report when a necessary executable is not found
43636 https://lists.gnu.org/r/emacs-devel/2016-08/msg00552.html
43637 * lisp/image-dired.el (image-dired-cmd-rotate-original-program)
43638 (image-dired-cmd-create-thumbnail-program)
43639 (image-dired-cmd-create-temp-image-program)
43640 (image-dired-cmd-rotate-thumbnail-program)
43641 (image-dired-cmd-write-exif-data-program)
43642 (image-dired-cmd-read-exif-data-program):
43643 Use executable-find to set the default value of this option.
43644 (image-dired-cmd-rotate-original-program): Idem.
43645 Search for program 'convert' if 'jpegtran' is not available.
43646 (image-dired-cmd-rotate-original-options):
43647 Set the default value consistent with the executable in
43648 image-dired-cmd-rotate-original-program.
43649 (image-dired-create-thumb, image-dired-display-image)
43650 (image-dired-rotate-thumbnail, image-dired-rotate-original)
43651 (image-dired-set-exif-data, image-dired-get-exif-data):
43652 Throw and error when the executable used in the function is missing.
43653 (image-dired-next-line, image-dired-previous-line):
43654 Use 'forward-line'.
43656 2016-09-03 Tino Calancha <tino.calancha@gmail.com>
43658 image-type-from-file-name: Perform a case insensitive match
43661 * lisp/image.el (image-type-from-file-name): Bind case-fold-search
43662 to a non-nil value to force a case insensitive match.
43663 * lisp/image-dired.el (image-dired-rotate-original):
43664 Use image-type (Bug#24317).
43665 (image-dired-get-exif-file-name): Idem.
43666 Set 'no-exif-data-found' and 'data' in same setq call.
43667 Use file-attribute-modification-time.
43669 2016-09-03 Tino Calancha <tino.calancha@gmail.com>
43671 image-increase-size: Fix non-interactive calls
43673 * lisp/image.el (image-increase-size, image-decrease-size):
43674 Compute a floating point division.
43675 Problem reported in:
43676 https://lists.gnu.org/r/emacs-devel/2016-09/msg00067.html
43678 2016-09-03 Robert Cochran <robert-git@cochranmail.com>
43680 Fix uses of (call-interactively) in lisp/emacs-lisp/checkdoc.el
43682 Passing the prefix argument as the 3rd argument to 'call-interactively'
43683 causes the prefix argument to be interpreted as events, which is not
43684 only wrong, but also causes a type error, as 'current-prefix-arg' can
43685 never be a vector as 'call-interactively' expects. 'call-interactively'
43686 automatically passes its prefix argument to the called function, so just
43687 do that, eliminating faulty behavior.
43689 * lisp/emacs-lisp/checkdoc.el (checkdoc-ispell):
43690 (checkdoc-ispell-current-buffer):
43691 (checkdoc-ispell-interactive):
43692 (checkdoc-ispell-message-text):
43693 (checkdoc-ispell-start):
43694 (checkdoc-ispell-continue):
43695 (checkdoc-ispell-comments):
43696 (checkdoc-ispell-defun):
43697 Do not pass 'current-prefix-arg' to 'call-interactively' as an event
43698 vector; merely allow it to propagate forward to the interactive call.
43700 2016-09-03 Richard Stallman <rms@gnu.org>
43702 Fix mail-combine-fields
43704 * lisp/mail/sendmail.el (mail-combine-fields): Call `save-excursion' to
43705 avoid losing our place in the search loop.
43707 2016-09-02 Stefan Monnier <monnier@iro.umontreal.ca>
43709 Check actual contents before promting about changed file
43711 * lisp/userlock.el (userlock--check-content-unchanged)
43712 (userlock--ask-user-about-supersession-threat): New functions.
43713 * src/filelock.c (lock_file): Use them to avoid spurious prompting.
43714 * doc/lispref/buffers.texi (Modification Time): Update doc of
43715 ask-user-about-supersession-threat.
43717 2016-09-02 Michael Albinus <michael.albinus@gmx.de>
43719 Make a reference to fakecygpty in the Tramp manual
43721 * doc/misc/tramp.texi (Windows setup hints): Make a reference to
43722 fakecygpty on the Emacs Wiki.
43723 (Frequently Asked Questions): Fix url.
43725 2016-09-01 Paul Eggert <eggert@cs.ucla.edu>
43727 Don’t create fd >= FD_SETSIZE
43729 This avoids a potential crash if too many subprocesses (Bug#24325).
43730 * src/process.c [HAVE_SETRLIMIT]: Include <sys/resource.h>.
43731 (init_process_emacs): If ulimit -n is greater than FD_SETSIZE,
43732 set it to FD_SETSIZE.
43734 2016-09-01 Alan Mackenzie <acm@muc.de>
43736 Fix c-declaration-limits to return correct limits in all cases.
43738 This function is the guts of c-indent-defun and c-mark-function.
43740 In particular, when c-defun-tactic is nil, return a correct value rather than
43741 always nil, and when it's 'go-outward, go through an intricate algorithm to
43742 determine the requisite narrowing before the "top-level" defuns go to work.
43744 * lisp/progmodes/cc-cmds.el (c-narrow-to-most-enclosing-decl-block): Enhance
43745 to take additional optional parameter LEVEL, saying how many enclosing levels
43746 of decl-block to narrow to.
43747 (c-declaration-limits): Introduce algorithm to determine narrowing. Use
43748 c-where-wrt-to-brace-block to determine whether to go back to BOD to determine
43751 2016-09-01 Eli Zaretskii <eliz@gnu.org>
43753 * nt/inc/ms-w32.h (execve) [MINGW_W64]: Make commentary more accurate.
43755 2016-09-01 Eli Zaretskii <eliz@gnu.org>
43757 Avoid compiler warnings with MinGW64 GCC 6
43759 * nt/inc/ms-w32.h (execve) [MINGW_W64]: Make the prototype match
43760 the GCC 6 builtin, to avoid warnings. For more details, see
43761 https://lists.gnu.org/r/emacs-devel/2016-08/msg00721.html.
43763 2016-08-31 Paul Eggert <eggert@cs.ucla.edu>
43765 Fix over-substitution of quotes on error
43767 Problem reported by Tino Calancha in:
43768 https://lists.gnu.org/r/emacs-devel/2016-09/msg00000.html
43769 * src/print.c (print_error_message):
43770 Substitute quotes in errmsg only when gotten from a property.
43772 2016-08-31 Eli Zaretskii <eliz@gnu.org>
43774 Improve testing of etags
43776 * test/manual/etags/y-src/cccp.c:
43777 * test/manual/etags/y-src/parse.c: Correct #line directives to
43778 allow testing invalidate_nodes in etags.c.
43779 * test/manual/etags/ETAGS.good_1:
43780 * test/manual/etags/ETAGS.good_2:
43781 * test/manual/etags/ETAGS.good_3:
43782 * test/manual/etags/ETAGS.good_4:
43783 * test/manual/etags/ETAGS.good_5:
43784 * test/manual/etags/ETAGS.good_6:
43785 * test/manual/etags/CTAGS.good: Adapt to changes in test files.
43787 2016-08-31 Eli Zaretskii <eliz@gnu.org>
43789 * lib-src/etags.c (invalidate_nodes): Fix another thinko.
43791 2016-08-31 Paul Eggert <eggert@cs.ucla.edu>
43793 Fix etags problems found by static checking
43795 * lib-src/etags.c (invalidate_nodes, put_entry):
43796 Remove now-unnecessary tests for null pointers. Simplify.
43797 (put_entries): Rewrite to avoid GCC 6.2 warning about
43798 dereferencing null pointer.
43800 2016-08-31 Eli Zaretskii <eliz@gnu.org>
43802 Fix a thinko in etags.c
43804 * lib-src/etags.c (invalidate_nodes): Don't try to dereference
43807 2016-08-31 Eli Zaretskii <eliz@gnu.org>
43809 Avoid recursive calls in etags
43811 * lib-src/etags.c (stack_entry): New struct.
43812 (push_node, pop_node, put_entry): New functions.
43813 (free_tree, add_node, invalidate_nodes, put_entries): Re-implement
43814 in a non-recursive way, to avoid stack overflow. (Bug#5847)
43816 2016-08-31 Leo Liu <sdl.web@gmail.com>
43818 Add 451 to url-http-codes
43820 * lisp/url/url-http.el (url-http-codes): Add 451.
43822 2016-08-30 Paul Eggert <eggert@Penguin.CS.UCLA.EDU>
43824 * src/editfns.c (Fformat_message): Fix doc to match current behavior.
43826 2016-08-30 Paul Eggert <eggert@cs.ucla.edu>
43828 Minor doc quoting fixes
43830 * doc/misc/htmlfontify.texi (Interactive):
43831 * lisp/htmlfontify.el (htmlfontify-buffer):
43832 Spell out character names, for clarity. The old doc string
43833 generated the *Help* text ‘^L ([FF]) or ¤ (244)’, where ‘[FF]’
43834 stands for a form feed character; this was confusing.
43835 * lisp/electric.el (electric-quote-mode):
43836 * src/doc.c (syms_of_doc):
43837 * src/editfns.c (Fformat_message):
43838 Remove no-longer-necessary ‘\=’s in doc strings.
43840 2016-08-30 Paul Eggert <eggert@cs.ucla.edu>
43845 2016-08-30 intprops: tune INT_NEGATE_OVERFLOW for GCC 5 and 6
43846 2016-08-29 xalloc-oversized.h: port change to GCC 6.2.0
43847 2016-08-29 intprops.h: port recent changes to GCC 6.2.0
43848 2016-08-29 intprops.h: use __typeof__ with GCC 7
43849 2016-08-29 intprops.h, xalloc-oversized.h: work with gcc 7
43850 2016-08-24 intprops: fix paren typo on old platforms
43851 2016-08-24 intprops: port to OpenVMS
43852 * lib/intprops.h, lib/xalloc-oversized.h: Copy from gnulib.
43854 2016-08-30 Tassilo Horn <tsdh@gnu.org>
43856 Fix rules for \phi and \varphi which were reversed
43858 * lisp/leim/quail/latin-ltx.el: Special-case phi/varphi because those
43859 are reversed in ucs-names. Also remove FIXME stating sigma/varsigma
43860 were reversed which is not true (anymore?).
43862 2016-08-30 Tassilo Horn <tsdh@gnu.org>
43864 Fix prettification of \phi, \varphi, and \varsigma
43866 * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Fix
43867 prettification of \phi, \varphi, and \varsigma.
43869 Concretely, \phi's symbol was actually varphi, \varphi was missing, and
43870 \varsigma was commented out with a FIXME that it was reversed with
43871 \sigma which it was not.
43873 2016-08-30 Karl Fogel <kfogel@red-bean.com>
43875 Use normal double quotes in TeX / LaTeX comments
43877 * lisp/textmodes/tex-mode.el (tex-insert-quote): When in a comment,
43878 default to inserting a normal double quote (") instead of TeX-style
43879 open (``) or close ('') quote marks.
43881 * etc/NEWS (TeX mode): Note the change.
43883 * test/lisp/electric-tests.el (autowrapping-7): Adjust accordingly.
43885 See this thread for discussion:
43887 https://lists.gnu.org/r/emacs-devel/2016-08/msg00611.html
43888 From: Karl Fogel <kfogel {_AT_} red-bean.com>
43889 To: Emacs Development <emacs-devel {_AT_} gnu.org>
43890 Subject: [PATCH] Have LaTeX mode use normal double quotes in comments.
43891 Date: Mon, 29 Aug 2016 14:44:12 -0500
43892 Message-ID: <87twe3icmr.fsf@red-bean.com>
43894 2016-08-30 Alan Mackenzie <acm@muc.de>
43896 Correctly analyze C++ list initialization in member init areas.
43898 * lisp/progmodes/cc-engine.el (c-back-over-list-of-member-inits): Remove a
43899 superfluous call to c-backward-syntactic-ws.
43900 (c-looking-at-or-maybe-in-bracelist): Change calling convention, so that it
43901 reports encountering the Java "new" keyword. Add, as an alternative, a check
43902 that we can move back over member initializations, and handle this as finding
43904 (c-looking-at-special-brace-list, c-guess-continued-construct): Adapt to the
43905 new calling convention of c-looking-at-or-maybe-in-bracelist.
43906 (c-guess-basic-syntax, CASE 5A.3): Replace lots of inline ad-hoc code with
43907 calls to c-backward-over-enum-header and c-looking-at-or-maybe-in-bracelist,
43908 using the extra info from the value of that function to generate a
43909 topmost-into-cont element where needed (in Java).
43911 * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Adapt to the new
43912 calling convention of c-looking-at-or-maybe-in-bracelist.
43914 * lisp/progmodes/cc-mode.el (c-fl-decl-start): Adapt to the new calling
43915 convention of c-looking-at-or-maybe-in-bracelist.
43917 2016-08-30 Michael Albinus <michael.albinus@gmx.de>
43919 Use `file-attribute-*' in Tramp
43921 * lisp/net/tramp-compat.el (tramp-compat-file-attribute-type)
43922 (tramp-compat-file-attribute-link-number)
43923 (tramp-compat-file-attribute-user-id)
43924 (tramp-compat-file-attribute-group-id)
43925 (tramp-compat-file-attribute-modification-time)
43926 (tramp-compat-file-attribute-size)
43927 (tramp-compat-file-attribute-modes): New defaliases.
43929 * lisp/net/tramp.el (tramp-handle-file-modes)
43930 (tramp-handle-file-newer-than-file-p)
43931 (tramp-handle-file-regular-p, tramp-handle-file-symlink-p)
43932 (tramp-handle-set-visited-file-modtime)
43933 (tramp-handle-verify-visited-file-modtime)
43934 (tramp-get-local-gid, tramp-check-cached-permissions):
43935 * lisp/net/tramp-adb.el (tramp-adb-handle-file-directory-p)
43936 (tramp-adb-handle-file-truename, tramp-adb-handle-copy-file):
43937 * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-delete-directory)
43938 (tramp-gvfs-handle-file-directory-p)
43939 (tramp-gvfs-handle-write-region, tramp-gvfs-get-remote-uid)
43940 (tramp-gvfs-get-remote-gid):
43941 * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
43942 (tramp-sh-handle-set-visited-file-modtime)
43943 (tramp-sh-handle-verify-visited-file-modtime)
43944 (tramp-sh-handle-file-newer-than-file-p)
43945 (tramp-sh-handle-file-ownership-preserved-p)
43946 (tramp-do-copy-or-rename-file)
43947 (tramp-do-copy-or-rename-file-via-buffer)
43948 (tramp-do-copy-or-rename-file-directly)
43949 (tramp-do-copy-or-rename-file-out-of-band)
43950 (tramp-sh-handle-file-local-copy)
43951 (tramp-sh-handle-write-region):
43952 * lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory)
43953 (tramp-smb-handle-copy-file)
43954 (tramp-smb-handle-file-directory-p)
43955 (tramp-smb-handle-file-writable-p)
43956 (tramp-smb-handle-insert-directory): Use them.
43958 2016-08-30 Martin Rudalics <rudalics@gmx.at>
43960 In `pop-to-buffer' handle case where `display-buffer' fails (Bug#24332)
43962 * lisp/window.el (pop-to-buffer): Don't assume that
43963 `display-buffer' has supplied a window (Bug#24332).
43964 Rename BUFFER argument to BUFFER-OR-NAME.
43965 * doc/lispref/windows.texi (Switching Buffers): Fix
43966 `pop-to-buffer' documentation.
43968 2016-08-29 Alan Third <alan@idiocy.org>
43972 * src/nsterm.m: Clarified that ns-x-modifier variables require a symbol.
43974 2016-08-29 Michael Albinus <michael.albinus@gmx.de>
43976 Use `process-live-p' in Tramp
43978 * lisp/net/tramp-compat.el (tramp-compat-process-live-p): New defun.
43980 * lisp/net/tramp.el (tramp-connectable-p, tramp-handle-file-remote-p)
43981 (tramp-handle-file-notify-valid-p)
43982 (tramp-action-process-alive, tramp-action-out-of-band)
43983 (tramp-wait-for-regexp):
43984 * lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
43985 (tramp-adb-maybe-open-connection):
43986 * lisp/net/tramp-cache.el (tramp-get-connection-property):
43987 * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
43988 * lisp/net/tramp-gw.el (tramp-gw-gw-proc-sentinel)
43989 (tramp-gw-aux-proc-sentinel, tramp-gw-open-connection):
43990 * lisp/net/tramp-sh.el (tramp-process-sentinel)
43991 (tramp-sh-handle-file-notify-add-watch)
43992 (tramp-maybe-open-connection):
43993 * lisp/net/tramp-smb.el (tramp-smb-action-with-tar)
43994 (tramp-smb-handle-copy-directory, tramp-smb-action-get-acl)
43995 (tramp-smb-handle-process-file, tramp-smb-action-set-acl)
43996 (tramp-smb-get-cifs-capabilities)
43997 (tramp-smb-get-stat-capability)
43998 (tramp-smb-maybe-open-connection, tramp-smb-wait-for-output)
43999 (tramp-smb-kill-winexe-function): Use it.
44001 2016-08-29 Eli Zaretskii <eliz@gnu.org>
44003 Avoid crashes for invalid value of key modifiers
44005 * src/keyboard.c (parse_solitary_modifier): If the argument SYMBOL
44006 is not a symbol, don't try to recognize it. See
44007 https://lists.gnu.org/r/emacs-devel/2016-08/msg00502.html
44010 * test/src/keymap-tests.el (keymap-where-is-internal-test): New
44011 test, for testing the above fix.
44013 2016-08-29 Oleh Krehel <ohwoeowho@gmail.com>
44015 Make dired-do-compress understand files with spaces in them
44017 * lisp/dired-aux.el (dired-compress-file): Add `shell-quote-argument'
44018 and `literal' flag to `replace-regexp-in-string'.
44020 2016-08-28 Paul Eggert <eggert@cs.ucla.edu>
44022 * INSTALL.REPO: Suggest Texinfo 4.13 or later.
44024 2016-08-28 Simen Heggestøyl <simenheg@gmail.com>
44026 Add tests for dom.el
44028 * test/lisp/dom-tests.el: New file with tests for dom.el.
44030 2016-08-28 Paul Eggert <eggert@cs.ucla.edu>
44032 Memory allocator alignment fixes
44034 These changes remove some assumptions about heap allocator
44035 alignment that may not be true on unusual platforms.
44036 * src/alloc.c (POWER_OF_2): New macro.
44038 (BLOCK_ALIGN): Verify that it is a power of 2.
44039 (aligned_alloc): Check that alignment passed to posix_memalign
44040 satisfies POSIX restrictions.
44041 (lisp_align_malloc): Check that size passed to aligned_alloc
44042 satisfies C11 restrictions.
44043 (MALLOC_IS_GC_ALIGNED): Check that GCALIGNMENT is 8, since the
44044 code has not been verified to work with other GCALIGNMENT values
44045 and the ice is thin here. On GNU/Linux, malloc can return a value
44046 that is a multiple of 8 but not 16, even though __alignof__
44047 (max_align_t) is 16. See:
44048 https://gcc.gnu.org/ml/gcc-patches/2016-08/msg01902.html
44049 (lmalloc) [USE_ALIGNED_ALLOC]: Use aligned_alloc only if size
44050 is a multiple of alignment, since C11 says the behavior is
44051 undefined otherwise.
44052 (lmalloc, lrealloc): Don't use INT_ADD_WRAPV on size_t, as in
44053 general this macro is restricted to signed types. Remove
44054 assertion that the result is a multiple of GCALIGNMENT, as that
44057 2016-08-28 Paul Eggert <eggert@cs.ucla.edu>
44059 Pacify --enable-gcc-warnings for lib-src/pop.c
44061 * lib-src/pop.c: Include c-ctype.h.
44062 (socket_connection): Pacify --enable-gcc-warnings by rewriting to
44063 avoid 'if (v = E) ...'. Use c_tolower, instead of a combination
44064 of the (undeclared) isupper and tolower. Fix pointer constness
44067 2016-08-27 Alan Mackenzie <acm@muc.de>
44069 Handle the C++ "identifiers" "final" and "override" correctly.
44071 This fixes bug #24319, allowing destructors affixed with these identifiers to
44072 be correctly fontified.
44074 * lisp/progmodes/cc-engine.el (c-forward-type, c-forward-decl-or-cast-1):
44075 After reaching the "end" of a type expression, skip over any occurrences of
44076 c-type-decl-suffix-ws-ids-key.
44078 * lisp/progmodes/cc-langs.el (c-type-modifier-kwds): Remove "override" and
44079 "final" from the C++ value.
44080 (c-type-decl-suffix-ws-ids-kwds, c-type-decl-suffix-ws-ids-key): New lang
44081 constants/variables for "final" and "override".
44083 2016-08-27 Stefan Monnier <monnier@iro.umontreal.ca>
44085 * lisp/textmodes/page-ext.el (pages-directory-mode): Use special-mode.
44087 2016-08-27 Alan Mackenzie <acm@muc.de>
44089 Handle template delimiters in C++ member init constructs.
44091 * lisp/progmodes/cc-engine.el (c-back-over-list-of-member-inits): Add
44092 handling for "<....>"s.
44094 2016-08-26 Eli Zaretskii <eliz@gnu.org>
44096 Fix etags test suite messed up by merges from emacs-25
44098 * test/manual/etags/go-src/test.go:
44099 * test/manual/etags/go-src/test1.go: Move from test/etags/.
44100 * test/manual/etags/ruby-src/test1.ru: Replace test1.ruby.
44101 * test/etags/: Directory deleted.
44103 2016-08-26 Simen Heggestøyl <simenheg@gmail.com>
44105 Add "supports" to list of CSS at-rules
44107 * lisp/textmodes/css-mode.el (css-at-ids): Add "supports" at-rule.
44109 2016-08-26 Michael Albinus <michael.albinus@gmx.de>
44111 * lisp/net/tramp-sh.el (tramp-get-remote-perl): Perform a basic check.
44115 2016-08-25 Tino Calancha <tino.calancha@gmail.com>
44117 Rename option to shell-command-dont-erase-buffer
44119 Suggested by Clément Pit--Claudel in:
44120 https://lists.gnu.org/r/emacs-devel/2016-08/msg00487.html
44121 * lisp/simple.el (shell-command-dont-erase-buffer):
44122 (shell-command--save-pos-or-erase):
44123 (shell-command--set-point-after-cmd):
44124 (shell-command-on-region):
44125 * doc/emacs/misc.texi (shell-command-dont-erase-buffer):
44126 * etc/NEWS (Changes in Emacs 25.2):
44127 Rename from shell-command-not-erase-buffer.
44129 2016-08-25 Alan Mackenzie <acm@muc.de>
44131 Fix an infinite loop in C++ Mode when we have "{ .... [ .... }"
44133 * lisp/progmodes/cc-fonts.el (c-font-lock-c++-lambda-captures): In the inner
44134 `while' form's condition, check for "\\s)" rather than merely "\\]", so that
44135 the loop won't hang at a "terminating" paren of a different type (due to the
44136 c-syntactic-re-search-forward at the end of the loop stopping at such
44139 2016-08-25 Tino Calancha <tino.calancha@gmail.com>
44141 call-shell-region: New defun
44143 Suggested by Stefan Monnier in Bug#22679.
44144 * lisp/subr.el (call-shell-region): New defun; execute a command
44145 in an inferior shell with the buffer region as input.
44146 * lisp/simple.el (shell-command-on-region): Use it.
44147 * lisp/gnus/message.el (message-do-fcc): Idem.
44148 * doc/lispref/processes.texi: Document call-shell-region in the manual.
44149 ;* etc/NEWS: Add entry for this new function.
44151 2016-08-25 Martin Rudalics <rudalics@gmx.at>
44153 In ‘clone-indirect-buffer’ fix argument mixup (Bug#24306)
44155 * lisp/simple.el (clone-indirect-buffer): Add value for ACTION
44156 argument in `pop-to-buffer' call (Bug#24306).
44158 2016-08-25 Martin Rudalics <rudalics@gmx.at>
44160 Some fixes around `delete-other-frames' and `next-frame'
44162 * src/frame.c (Fdelete_frame): Clarify doc-string.
44163 * lisp/frame.el (delete-other-frames): Delete other frames on
44164 FRAME's terminal instead of the current terminal. Delete
44165 non-minibuffer-only surrogate frames too. See
44166 https://lists.gnu.org/r/emacs-devel/2016-08/msg00467.html
44167 * doc/lispref/frames.texi (Deleting Frames): Minor fixes for
44168 docs of `delete-frame' and `frame-live-p'. Add entry for
44169 `delete-other-frames'.
44170 (Finding All Frames): Fix doc of `next-frame'.
44172 2016-08-24 Lars Magne Ingebrigtsen <larsi@gnus.org>
44174 Find message.el thumbnail toggling
44176 * lisp/gnus/message.el (message-toggle-image-thumbnails):
44177 Don't infloop when toggling thumbnails.
44179 2016-08-24 Alan Third <alan@idiocy.org>
44181 Fix macOS 12 deprecation notices
44183 * src/nsterm.h: Add #defines to allow older versions of macOS to use the
44184 new constant names.
44185 * src/nsmenu.m: Replace old constant names with
44187 (fillWithWidgetValue): Remove calls to deprecated
44188 setMenuChangedMessagesEnabled.
44189 * src/nsterm.m: Replace old constant names with new.
44190 * src/nsfns.m: Replace old constant names with new.
44192 2016-08-23 Alan Mackenzie <acm@muc.de>
44194 Analyze and fontify correctly a C++ `enum' with colon, but lacking a tag.
44196 * lisp/progmodes/cc-engine.el (c-backward-typed-enum-colon): Check for "enum"
44197 directly preceding the colon, and handle it.
44199 2016-08-23 Noah Friedman <friedman@splode.com>
44201 * src/xfns.c (Fx_change_window_property): Modify previous change.
44202 Instead of forcing format to 8 for strings, check that the length of
44203 the string is appropriate for whatever format given.
44204 (Fx_window_property_attributes): If prop isn't found on frame's inner window,
44205 try its outer window. This mimics the behavior of Fx_window_property.
44207 2016-08-23 Lars Ingebrigtsen <larsi@gnus.org>
44209 Fix invalid image rotations
44211 * lisp/image.el (image-rotate): Limit rotation to 360 degrees.
44213 2016-08-23 Tino Calancha <tino.calancha@gmail.com>
44215 call-process instead of call-process-region with empty region
44217 * lisp/calc/calc-graph.el (calc-graph-show-tty):
44218 Use call-process and shell-command-switch.
44220 2016-08-22 Paul Eggert <eggert@cs.ucla.edu>
44222 Merge from origin/emacs-25
44224 927afa1 ; Update ChangeLog.2 and ldef-boot.el for Emacs 25.1 RC2
44225 6bf83b5 * etc/AUTHORS: Update the AUTHORS file
44226 73cbb81 ; ChangeLog spelling fixes
44227 9b99772 Some assorted documentation clarifications
44228 37d4723 Improve commentary in src/character.h
44229 5ccd593 ; Fix typo in /etc/NEWS
44230 96e3d16 * etc/NEWS: Mention the change in json-encode-string.
44231 2e524034 ; * etc/NEWS: Mention incompatible change in url-http-create...
44232 2e4e74e Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emac...
44233 66dea65 ; * doc/lispref/windows.texi (Window Parameters): Grammar twe...
44237 # lisp/ldefs-boot.el
44239 2016-08-22 Paul Eggert <eggert@cs.ucla.edu>
44241 Merge from origin/emacs-25
44243 66dea65 ; * doc/lispref/windows.texi (Window Parameters): Grammar twe...
44245 2016-08-22 Paul Eggert <eggert@cs.ucla.edu>
44247 Merge from origin/emacs-25
44249 8c2946e In NEWS describe new handling of window margins (Bug#24193)
44250 0cee66c Facultatively ignore margins when splitting and resizing wind...
44251 8d68147 Document CATEGORY arg to modify-category-entry
44252 8342e74 Document char-script-table's effect on word motion
44253 e9ff485 Further fix for 'url-http-create-request' and multibyte strings
44254 0695235 Fix docstring of eval-expression
44255 98b01dd Clarify when 'cursor' property is in effect
44256 75f1882 Convert the remaining strings to unibyte before concatenating
44257 d2db5dd Fix bug with handling the bidi cache
44258 ccd0e92 * doc/lispref/text.texi (Change Hooks): Minor copyedits.
44259 f785ff4 Clarify documentation of before/after-change-functions
44260 3c9cb57 Document use of vectors in keymaps
44265 2016-08-22 Michael Albinus <michael.albinus@gmx.de>
44267 Handle remote file names in gdb-mi.el
44269 * lisp/progmodes/gdb-mi.el (gdb-jsonify-buffer):
44270 If `default-directory' is remote, full file names are adapted
44271 accordingly. (Bug#23608)
44273 2016-08-22 Eli Zaretskii <eliz@gnu.org>
44275 Display mini-window resized even when there are several frames
44277 * src/xdisp.c (x_consider_frame_title): Bind inhibit-redisplay to
44278 t to avoid resizing back the mini-window as result of considering
44279 the title of other frames. (Bug#24285)
44280 (redisplay_window): No need to bind inhibit-redisplay here.
44282 2016-08-22 Michael Albinus <michael.albinus@gmx.de>
44284 Explain gdb warning on remote hosts
44286 * doc/misc/tramp.texi (Remote processes): Explain gdb warning
44287 on remote hosts. (Bug#4604, Bug#6360, Bug#622569)
44289 2016-08-21 Martin Rudalics <rudalics@gmx.at>
44291 Fix (next-frame nil t) crash (Bug#24281)
44293 * src/frame.c (candidate_frame): Check minibuf argument before
44294 comparing it to zero (Bug#24281).
44296 2016-08-21 Noah Friedman <friedman@splode.com>
44298 Fix interpretation of signed vs unsigned values when retrieving X
44299 Window properties, and make sure the full value is returned when not
44302 New subr to export type and format information about X Window
44303 properties to lisp.
44305 * src/xselect.c (selection_data_to_lisp_data): Treat any data as
44306 unsigned unless its actual type is INTEGER.
44307 CARDINALs, in particular, are unsigned.
44309 * src/xfns.c (Fx_change_window_property): If value is a string, ignore
44310 any provided format and force to 8.
44311 (x_window_property_intern): If returning value as a string, the length
44312 is actual_size times the actual format of each element, which is not
44314 (Fx_window_property_attributes): New subr.
44315 (syms_of_xfns): Declare it.
44317 2016-08-21 Noam Postavsky <npostavs@gmail.com>
44319 Improve error when installing non-package dirs
44321 * lisp/emacs-lisp/package.el (package-dir-info): Throw meaningful error
44322 when no file with package info is found (Bug #19851).
44324 2016-08-21 Alan Mackenzie <acm@muc.de>
44326 Adapt CC Mode for C++11 uniform initialization.
44328 For fontification, introduce a new "context", 'non-decl, to be used for
44330 lists; also a new value for the property 'c-type, called 'c-not-decl.
44332 * lisp/progmodes/cc-engine.el (c-back-over-compound-identifier): Check that
44333 an ostensible symbol we're going to move over isn't a keyword.
44334 (c-forward-decl-or-cast-1): CASE 1: Where we have two consecutive identifiers
44335 (hence a declaration), and an unmatched open paren, perform
44336 c-fdoc-shift-type-backwards to recognize the partial construct correctly.
44337 Whilst checking a type decl expression, check for and handle C++11's "copy
44338 initialization", where we have <type>(<constant>). Recognize
44339 <id><id>(... (where the paren is unclosed) as a declaration.
44340 (c-looking-at-or-maybe-in-bracelist): New function, extracted from
44341 c-inside-bracelist-p. Recognize as bracelists "{"s which are preceded by
44342 valid tokens other than "=". Recognize a bracelist when preceded by a
44343 template declaration.
44344 (c-inside-bracelist-p): Call c-looking-at-or-maybe-in-bracelist in place of
44346 (c-looking-at-inexpr-block): Amend so that it won't wrongly recognize an
44347 initialization starting "({" as an in-expression block, by checking for
44348 semicolons, as opposed to commas, separating elements inside it.
44349 (c-guess-continued-construct): (CASE B-2): Recognize a brace-list-open by
44350 calling c-looking-at-or-maybe-in-bracelist rather than checking for a
44351 preceding "=". (CASE B-5): New code to recognize new construct "return {
44353 (c-guess-basic-syntax): (CASE 5A.3): Additionally recognize a "{" preceded by
44354 "return", or "{" preceded by <type><identifier> as a bracelist.
44356 * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Recognize brace
44357 lists, giving them `context' 'non-decl. Pass over elements of one by regexp
44358 search for "," rather than calling c-forward-decl-or-cast-1.
44360 * lisp/progmodes/cc-langs.el (c-return-kwds, c-return-key): New lang
44361 constants/variables to recognize "return".
44362 (c-pre-id-bracelist-key): New lang constant/variable to recognize tokens
44363 which, when preceding an identifier followed by a brace, signify the brace as
44366 * lisp/progmodes/cc-mode.el (c-fl-decl-start): When searching outwards for
44367 the start of a "local" declaration, move out from an enclosing brace when
44368 that is the start of a brace list.
44370 2016-08-21 Paul Eggert <eggert@cs.ucla.edu>
44375 2016-08-17 maint: preprocessor changes to support z/OS
44376 2016-08-17 string: rename to avoid '__string'
44377 * doc/misc/texinfo.tex, lib/alloca.in.h, lib/string.in.h:
44380 2016-08-21 Paul Eggert <eggert@cs.ucla.edu>
44382 Minor text-quoting-style fixes
44384 * src/charset.c (check_iso_charset_parameter):
44385 * src/frame.c (store_frame_param):
44386 * src/xselect.c (x_fill_property_data):
44387 Use grave accent for left single quote in ‘error’ format strings.
44389 2016-08-21 Martin Rudalics <rudalics@gmx.at>
44391 Fix semantics of 'minibuffer' frame parameter
44393 The 'minibuffer' frame parameter is now t for a normal frame
44394 (a frame with a root window plus a minibuffer window) and the
44395 frame's minibuffer window for a minibuffer-less frame (a frame
44396 whose minibuffer window is on another frame). See also:
44397 https://lists.gnu.org/r/emacs-devel/2016-07/msg01259.html
44399 * src/frame.c (make_frame, make_frame_without_minibuffer)
44400 (make_minibuffer_frame): When assigning the frame's minibuffer
44401 window also store corresponding 'minibuffer' frame parameter.
44402 (store_frame_param): Move the 'minibuffer' parameter checks to
44403 the beginning so we can silently override the value before it
44404 gets stored in the parameter alist. Fix error handling.
44405 (Fframe_parameters): Return value of 'minibuffer' parameter
44408 * lisp/frameset.el (frameset-filter-minibuffer): When the cdr of
44409 the parameter is a minibuffer window, save (minibuffer . nil)
44410 instead of (minibuffer . t).
44411 (frameset--reuse-frame): To find a non-minibuffer-only frame
44412 look out for a frame whose 'minibuffer' parameter is t instead
44413 of that frame's minibuffer window.
44414 (frameset-minibufferless-first-p): To find a minibuffer-less
44415 frame look out for a frame whose 'minibuffer' parameter is a
44416 window instead of nil.
44418 2016-08-20 Alan Mackenzie <acm@muc.de>
44420 * lisp/progmodes/cc-defs.el (c-safe-scan-lists): Resolve overelaborate "nil"
44422 2016-08-20 Alan Mackenzie <acm@muc.de>
44424 In c-\(go-\)?-\(up-\|down-\)?list-\(forward\|backward\) check limit isn't nil
44426 Check the limit both at macro expansion time (for a hard coded nil) and at run
44427 time in the generated code. Tidy up these macros generally.
44429 * lisp/progmodes/cc-defs.el (c-safe-scan-lists): Check `limit' is present and
44430 not identically nil before generating a narrow-to-region call. Generate code
44431 to check `limit' is not nil at run time.
44432 (c-go-list-forward, c-go-list-backward): Remove the generation of redundant
44433 narrow-to-region, instead calling c-safe-scan-lists directly.
44434 (c-go-up-list-forward, c-go-up-list-backward, c-go-down-list-forward)
44435 (c-go-down-list-backward): Invoke the corresponding macros without the "go-"
44436 to determine the destination position instead of generating a redundant
44439 2016-08-19 Robert Cochran <robert-git@cochranmail.com>
44441 * lisp/emacs-lisp/map.el (map--dispatch): Fix docstring
44443 The docstring referenced a non-existant parameter, as well as a
44444 parameter that has been renamed since the docstring was written. Fix
44445 both errors, fixing (Bug#24182).
44447 2016-08-19 Alan Mackenzie <acm@muc.de>
44449 Amend hack-local-variables-prop-line not always to return any mode on line 1.
44451 This fixes bug #24266.
44453 * lisp/files.el (hack-local-variables-prop-line): Change the name of the
44454 parameter mode-only to handle-mode. Change its meaning, such that it being
44455 set to a value non-nil and not t removes any mode parameter from the result
44456 list. Leave its values nil and t with the same meanings they had.
44457 (hack-local-variables): Call hack-local-variables-prop-line appropriately.
44459 2016-08-19 Daiki Ueno <ueno@gnu.org>
44461 Improve doc string of epg-*-program
44463 * lisp/epg-config.el (epg-gpg-program, epg-gpgsm-program):
44464 Suggest to use Customize when setting. (Bug#24229)
44466 2016-08-19 Tino Calancha <tino.calancha@gmail.com>
44468 Add tests for Bug#24264
44470 * test/lisp/emacs-lisp/cl-seq-tests.el (cl-seq-test-bug24264):
44471 Add test for Bug#24264.
44472 (cl-seq-fill-test, cl-seq-replace-test)
44473 (cl-seq-remove-test ,cl-seq-delete-test)
44474 (cl-seq-remove-duplicates-test, cl-seq-substitute-test)
44475 (cl-seq-nsubstitute-test, cl-seq-position-test)
44476 (cl-seq-count-test, cl-seq-mismatch-test)
44477 (cl-seq-search-test, cl-seq-test-bug24264):
44478 Add tests for all functions in the file; test all keywords.
44480 2016-08-18 Johan Bockgård <bojohan@gnu.org>
44482 Fix bug in --eval reply message from server
44484 * lisp/server.el (server-reply-print): Fix check for truncated quote
44485 sequence at end of message. Problem reported in:
44486 https://lists.gnu.org/r/emacs-devel/2016-08/msg00101.html
44488 2016-08-18 Eli Zaretskii <eliz@gnu.org>
44490 Add tests for 'substitute-command-keys'
44492 * test/src/doc-tests.el (doc-test-substitute-command-keys): New
44495 2016-08-18 Oleh Krehel <ohwoeowho@gmail.com>
44497 lisp/textmodes/table.el (table-generate-source): Fix completing-read call
44499 Doesn't make sense to pass '(("html") ("latex") ("cals")) to
44502 2016-08-18 Oleh Krehel <ohwoeowho@gmail.com>
44504 lisp/dired-aux.el (dired-compress-file-suffixes): Add entry for tgz
44506 The previous behavior resulted in a "tgz" -> "tar" -> "tgz" loop,
44507 without any files being extracted.
44509 2016-08-18 Andreas Politz <politza@hochschule-trier.de>
44511 Don't let window start override window point in `window-state-put' (Bug#24240)
44513 * lisp/window.el (window--state-put-2): Set 'noforce argument
44514 when restoring a window's start position. This avoids that the
44515 effect of `set-window-point' gets overidden by that of
44516 `set-window-start' (Bug#24240).
44518 2016-08-17 Alan Mackenzie <acm@muc.de>
44520 Fontify constructs following "::" in C++ argument lists correctly - part 2.
44522 This fixes bug #24246.
44524 * lisp/progmodes/cc-engine.el (c-find-decl-prefix-search): Put a
44525 `save-match-data' around the new `looking-at' introduced by the previous CC
44526 Mode patch this evening.
44528 2016-08-17 Alan Mackenzie <acm@muc.de>
44530 Fontify constructs following "::" in C++ argument lists correctly.
44532 This fixes bug #24246.
44534 * lisp/progmodes/cc-engine.el (c-find-decl-prefix-search): In the "pseudo
44535 match" loop, test a found string for a match with c-opt-identifier-concat-key
44538 2016-08-17 Paul Eggert <eggert@cs.ucla.edu>
44540 * src/doc.c (Fsubstitute_command_keys): Clarify GC comments.
44542 2016-08-17 K. Handa <handa@gnu.org>
44544 Fix hz encoding and decoding (bug#23814)
44546 * lisp/language/china-util.el (decode-hz-region): Pay
44547 attention to "~~}" sequence at the end of Chinese character
44549 (hz-category-table): New variable.
44550 (encode-hz-region): Convert non-encodable characters to
44551 \u... and \U... Preserve ESC on ecoding. Put
44552 `chinese-gb2312' `charset' text property in advance to force
44553 iso-2022-encoding to select chinese-gb2312 designation.
44555 2016-08-17 Tino Calancha <tino.calancha@gmail.com>
44557 file-attribute-collect: New defun
44559 * lisp/files.el (file-attribute-collect):
44560 Return a sublist of the attributes returned by 'file-attributes'.
44561 Suggested by Ted Zlatanov in:
44563 https://lists.gnu.org/r/emacs-devel/2016-07/msg01195.html
44565 2016-08-17 Michael Albinus <michael.albinus@gmx.de>
44569 * lisp/comint.el (comint-password-prompt-regexp): Relax regexp. (Bug#24203)
44571 2016-08-16 Karl Fogel <kfogel@red-bean.com>
44573 Improve doc string.
44575 * src/fileio.c (Ffile_name_as_directory): Be precise about the
44576 conditions under which a slash is appended.
44578 2016-08-16 Paul Eggert <eggert@cs.ucla.edu>
44580 Omit substitute-command-keys code no longer needed
44582 * src/doc.c (Fsubstitute_command_keys):
44583 Remove duplicate initializations.
44585 2016-08-16 Tino Calancha <tino.calancha@gmail.com>
44587 Allow not erase output buffer in shell commands
44589 * lisp/simple.el (shell-command-not-erase-buffer): New option to allow
44590 not erasing the output buffer between shell commands. Defaults to nil.
44591 (shell-command-on-region): Use it.
44592 (shell-command--save-pos-or-erase): New defun; store a buffer position
44593 if 'shell-command-not-erase-buffer' is non-nil; otherwise
44594 erase the output buffer of the shell command.
44595 (shell-command, shell-command-on-region): Use it.
44596 (shell-command--set-point-after-cmd): New defun;
44597 if 'shell-command-not-erase-buffer' is non-nil, set point
44598 in the output buffer to the position in 'shell-command-saved-pos'.
44599 (shell-command-sentinel, shell-command-on-region): Use it.
44600 * doc/emacs/misc.texi (shell-command-not-erase-buffer):
44601 Document this feature in the manual.
44603 https://lists.gnu.org/r/emacs-devel/2016-07/msg00610.html
44605 2016-08-16 Michael Albinus <michael.albinus@gmx.de>
44607 Rearrange Tramp manual title page
44609 * doc/misc/tramp.texi: Move @insertcopying out of the title
44610 page. Do not use @ifnottex anymore.
44612 2016-08-15 Glenn Morris <rgm@gnu.org>
44614 * doc/misc/tramp.texi: Adapt 2016-08-14 change for makeinfo 4.
44616 2016-08-15 Alan Mackenzie <acm@muc.de>
44618 Fix minor bug in c-syntactic-re-search-forward.
44620 Bug was: when NOERROR is neither nil nor t, BOUND is non-nil, PAREN-LEVEL is
44621 non-nil, and the first internal search attempt fails, point wrongly ends up at
44622 BOUND, rather than just before the next closing paren.
44624 * lisp/progmodes/cc-engine.el (c-syntactic-re-search-forward): Guard against
44625 the above situation.
44627 2016-08-15 Alan Mackenzie <acm@muc.de>
44629 Handle C++11 lambda functions.
44631 * lisp/progmodes/cc-engine.el (c-looking-at-inexpr-block): Enhance also to
44632 handle C++ lambda functions.
44633 (c-looking-at-c++-lambda-capture-list): New function.
44635 * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Recognize the
44636 parameter list of a lambda function and set `context' and
44637 `c-restricted-<>-arglists' suitably for it.
44638 (c-font-lock-c++-lambda-captures): New function.
44639 (c-complex-decl-matchers): Insert c-font-lock-c++-lambda-captures into it.
44641 * lisp/progmodes/cc-langs.el (c-pre-lambda-tokens, c-pre-lambda-tokens-re):
44642 New language constants/variables.
44643 (c-paren-nontype-kwds): Include "noexcept" in the C++ value.
44645 * lisp/progmodes/cc-mode.el (c-fl-decl-start): Handle being in a C++ lambda
44646 function capture list.
44648 2016-08-15 Michael Albinus <michael.albinus@gmx.de>
44650 Fix stale cache problem in Tramp
44652 * lisp/net/tramp-cache.el (tramp-get-connection-property):
44653 Check, that a process as key is still running. (Bug#22478)
44655 2016-08-14 Paul Eggert <eggert@cs.ucla.edu>
44657 * doc/misc/tramp.texi (Configuration): Fix @xref typo.
44659 2016-08-14 Eli Zaretskii <eliz@gnu.org>
44661 Another fix for scroll-conservatively and overlay strings
44663 * src/xdisp.c (redisplay_window): Handle also the case where the
44664 calculated window-start point has an overlay string touching it.
44667 2016-08-14 Michael Albinus <michael.albinus@gmx.de>
44669 Improve handling of defcustoms in tramp
44671 * doc/misc/tramp.texi: Protect all multi-line examples by
44672 @group ... @end group. Use proper `custom-set-variables'
44673 examples. Use consequently @option for user options. Remove
44674 superfluous @cindex and @vindex entries.
44675 (Top): Remove reference to outdated mail archives.
44676 (Configuration): Tune references.
44677 (Default Method): Make `tramp-default-method' and
44678 `tramp-default-method-alist' a @defopt.
44679 (Default User): Make `tramp-default-user' and
44680 `tramp-default-user-alist' a @defopt.
44681 (Default Host): Make `tramp-default-host' and
44682 `tramp-default-host-alist' a @defopt.
44684 * lisp/net/tramp.el (tramp-mode, tramp-verbose)
44685 (tramp-backup-directory-alist, tramp-auto-save-directory)
44686 (tramp-encoding-shell, tramp-encoding-command-switch)
44687 (tramp-encoding-command-interactive, tramp-default-method)
44688 (tramp-default-method-alist, tramp-default-user)
44689 (tramp-default-user-alist, tramp-default-host)
44690 (tramp-default-host-alist, tramp-default-proxies-alist)
44691 (tramp-save-ad-hoc-proxies)
44692 (tramp-restricted-shell-hosts-alist)
44693 (tramp-local-end-of-line, tramp-rsh-end-of-line)
44694 (tramp-login-prompt-regexp, tramp-shell-prompt-pattern)
44695 (tramp-password-prompt-regexp, tramp-wrong-passwd-regexp)
44696 (tramp-yesno-prompt-regexp, tramp-yn-prompt-regexp)
44697 (tramp-terminal-prompt-regexp)
44698 (tramp-operation-not-permitted-regexp)
44699 (tramp-copy-failed-regexp, tramp-process-alive-regexp)
44700 (tramp-syntax, tramp-chunksize)
44701 (tramp-process-connection-type, tramp-connection-timeout)
44702 (tramp-connection-min-time-diff)
44703 (tramp-completion-reread-directory-timeout):
44704 * lisp/net/tramp-adb.el (tramp-adb-program)
44705 (tramp-adb-connect-if-not-connected, tramp-adb-prompt):
44706 * lisp/net/tramp-cache.el (tramp-connection-properties)
44707 (tramp-persistency-file-name):
44708 * lisp/net/tramp-gvfs.el (tramp-gvfs-methods)
44709 (tramp-gvfs-zeroconf-domain)
44710 (tramp-bluez-discover-devices-timeout):
44711 * lisp/net/tramp-sh.el (tramp-inline-compress-start-size)
44712 (tramp-copy-size-limit, tramp-terminal-type)
44713 (tramp-histfile-override)
44714 (tramp-use-ssh-controlmaster-options, tramp-remote-path)
44715 (tramp-remote-process-environment, tramp-sh-extra-args):
44716 * lisp/net/tramp-smb.el (tramp-smb-program, tramp-smb-acl-program)
44717 (tramp-smb-conf, tramp-smb-winexe-program)
44718 (tramp-smb-winexe-shell-command)
44719 (tramp-smb-winexe-shell-command-switch): Add :require 'tramp.
44721 2016-08-13 Paul Eggert <eggert@cs.ucla.edu>
44723 Minor text-quoting-style fixes
44725 * lisp/cus-edit.el (custom-buffer-create-internal):
44726 * lisp/recentf.el (recentf-edit-list):
44727 Follow text-quoting-style preference when quoting in UI strings.
44728 * src/doc.c (Fsubstitute_command_keys): Don’t say that curved
44729 quotes are substituted for, as this is no longer true.
44731 2016-08-13 Paul Eggert <eggert@cs.ucla.edu>
44733 Fix substitute-command-keys unibyte, alloc bugs
44735 * src/doc.c (Fsubstitute_command_keys): Fix some problems with
44736 unibyte strings and with buffer allocation. Make strings
44737 multibyte, to avoid problems with unibyte strings that are not
44738 valid UTF-8 (Bug#24206). Redo buffer allocation so that it is
44739 O(N), not O(N**2). Avoid going past the end of the input string
44740 when given invalid input. Avoid some unlikely problems in
44741 accessing the wrong storage after a GC.
44743 2016-08-13 Joakim Jalap <joakim.jalap@fastmail.com>
44745 Fix "C-u" when an input method is active
44747 * lisp/international/quail.el (quail-input-method): Defer to the
44748 input method iff 'overriding-terminal-local-map' is
44749 'universal-argument-map' and the given key has no binding there.
44752 2016-08-13 Martin Rudalics <rudalics@gmx.at>
44754 Fix docs on `display-buffer-below-selected' (Bug#24213)
44756 * lisp/window.el (display-buffer-below-selected): Fix
44757 doc-string (Bug#24213).
44758 * doc/lispref/windows.texi (Display Action Functions): Fix
44759 documentation of `display-buffer-below-selected'.
44761 2016-08-12 Tino Calancha <tino.calancha@gmail.com>
44763 cl-fill: Rename arguments to cl-seq and cl-item
44765 * lisp/emacs-lisp/cl-seq.el (cl-fill):
44766 Rename arguments to 'cl-seq' and 'cl-item' as elsewhere.
44768 2016-08-12 Thomas Fitzsimmons <fitzsim@fitzsim.org>
44770 Fix display.texi typo
44772 * doc/lispref/display.texi (Faces): Fix typo.
44774 2016-08-11 Paul Eggert <eggert@cs.ucla.edu>
44776 Fix process leak with make-network-process
44778 This problem was introduced by the recent async changes (Bug#23808).
44779 * src/process.c (Fmake_process): Move USE_SAFE_ALLOCA later,
44780 so that it follows the start_process_unwind unwind-protect.
44781 Set pid to -1 while the process is being created.
44782 (start_process_unwind): Omit unnecessary emacs_abort test.
44783 (connect_network_socket): Simplify use of counts. Unwind
44784 bind_polling_period a bit earlier, so that a remove_process
44785 unwind-protect can be added when needed; this is the heart of
44786 the fix. Undo the unwind-protect just before returning.
44788 2016-08-11 Eli Zaretskii <eliz@gnu.org>
44790 Avoid annoying re-scroll when buffer has many overlay strings
44792 * src/xdisp.c (redisplay_window): Add better recovery from a
44793 situation where window-start is on buffer position which has a
44794 before-string that includes newlines, with the result that point
44795 is not visible in the window, because the display engine starts
44796 displaying with the before-string. (Bug#24179)
44798 2016-08-10 Paul Eggert <eggert@cs.ucla.edu>
44800 Omit unnecessary process initialization
44802 * src/process.c (make_process, Fmake_process)
44803 (Fmake_pipe_process, Fmake_serial_process)
44804 (Fmake_network_process, server_accept_connection):
44805 Omit unnecessary initialization of already-cleared storage.
44807 2016-08-10 Tino Calancha <tino.calancha@gmail.com>
44809 cl-delete-duplicates: Parse :if to have cl-if bound
44811 * lisp/emacs-lisp/cl-seq.el (cl--delete-duplicates):
44812 We need also to parse keyword :if, otherwise cl-if
44814 This reverts commit:
44815 68fdbeb917b80e29e0b15506f18f7ed41d8ffdfd
44817 2016-08-10 Tino Calancha <tino.calancha@gmail.com>
44819 cl-delete-duplicates: do not parse :if keyword
44821 * lisp/emacs-lisp/cl-seq.el (cl--delete-duplicates):
44822 Parse only the supported keywords.
44824 2016-08-10 Michael Albinus <michael.albinus@gmx.de>
44826 Add compatibility layer for `temporary-file-directory-function'
44828 * lisp/net/tramp-compat.el
44829 (tramp-compat-temporary-file-directory-function): New defalias.
44831 * lisp/net/tramp.el (tramp-handle-make-nearby-temp-file): Use it.
44833 * test/lisp/net/tramp-tests.el (tramp-test32-make-nearby-temp-file):
44834 Skip for older Emacs versions.
44836 2016-08-10 Michael Albinus <michael.albinus@gmx.de>
44838 * lisp/comint.el (comint-password-prompt-regexp): Add "PEM" for OpenVPN.
44842 2016-08-10 Vincent Belaïche <vincentb1@users.sourceforge.net>
44844 Handle nil cell value in compiled printer functions.
44846 * doc/misc/ses.texi (Quick Tutorial): Minor clarification about the
44847 ses-range `!' modifier.
44848 (More on cell printing): Fix this that the fallback printer is
44849 `ses-prin1', not "%S". That makes a difference for any cell value for
44850 which "%S" would insert a backslash characters.
44852 * lisp/ses.el (ses-local-printer-compile): Handle the nil cell value
44853 --- contrary to emacs-25 branches ses-call-printer does not handle
44854 prior to calling a function printer. Not doing this would still work
44855 because the compiled function would throw and error and SES would in
44856 the end resort to the ses-prin1 fallback, however this way would not
44857 be in line with the raison d'être of compiling printer which is speed.
44859 2016-08-09 Mark Oteiza <mvoteiza@udel.edu>
44861 Turn on lexical-binding in json.el
44863 Measuring with (benchmark-run 100 (json-read-file "foobar.json"))
44864 showed 12-31% reduction in execution time.
44865 * lisp/json.el: Turn on lexical-binding.
44867 2016-08-09 Mark Oteiza <mvoteiza@udel.edu>
44869 Nudge WoMan toward lexical-binding
44871 * lisp/woman.el (woman-parse-man.conf, woman-manpath-add-locales):
44872 Use cl-pushnew instead of add-to-list.
44873 (woman-justify-list): Rename to woman-justify-styles.
44874 (woman-justify-styles): New array.
44875 (woman-justify, woman-decode-region, woman2-ad, woman2-na): Use it.
44876 (woman-cached-data): Use cl-pushnew instead of add-to-list.
44878 2016-08-09 Vincent Belaïche <vincentb1@users.sourceforge.net>
44880 Apply changes from commits 3c97b0f758 and 8a38e948b0 to master branch.
44882 Here follows the logs from the two commits which I apply to master.
44884 commit 3c97b0f7589e06aeb1ab0147f0ee32974c32926d
44885 Author: Vincent Belaïche <vincentb1@users.sourceforge.net>
44886 Date: Fri Jul 29 13:44:14 2016 +0200
44888 Fix ses-delete-blanks to delete only blanks + documentation.
44890 * doc/misc/ses.texi (Quick Tutorial): Mention the '!'
44891 'ses-range' modifier as an alternative to 'ses+'.
44892 (Advanced Features): Add a refernce to node 'Nonrelocatable
44893 references' concerning function 'ses-rename-cell'.
44894 (Standard formula functions): Mention the '!' 'ses-range'
44895 modifier as an alternative to 'ses-delete-blanks'.
44896 (More on cell printing): Fix fallback printer
44897 definition. Minor editorial formatting changes.
44898 (Nonrelocatable references): Document the use of
44899 'ses-rename-cell' as a better way to make cell reference
44901 (The data area): Document the presence of local printer
44902 definitions in the data area.
44904 * lisp/ses.el (ses-delete-blanks): Do not remove
44905 *error*. Any error in an argument should propagate into the
44906 using formula rather than being silently hidden !
44908 commit 8a38e948b039516e70176ebe20c5349e2ade6ac5
44909 Author: Vincent Belaïche <vincentb1@users.sourceforge.net>
44910 Date: Thu Jul 28 19:49:37 2016 +0200
44912 Fix local printer set to left aligned string formatter.
44914 * lisp/ses.el (ses-local-printer-compile): Add missing case
44915 for left-aligned string formatter.
44917 2016-08-09 Paul Eggert <eggert@cs.ucla.edu>
44919 * .dir-locals.el (c-noise-macro-names): Remove NONVOLATILE.
44921 2016-08-09 Stefan Monnier <monnier@iro.umontreal.ca>
44923 * lisp/emacs-lisp/cconv.el: Fix λ-lifting in the presence of shadowing
44925 Change the code which detects and circumvents the case where one of the
44926 variables used in λ-lifting is shadowed, so that it also works when the
44927 shadowing comes before the λ-lifted function (bug#24171).
44929 (cconv--remap-llv): New function, extracted from cconv-convert.
44930 (cconv-convert): Use it, but differently for `let' and `let*'.
44932 2016-08-09 Alan Mackenzie <acm@muc.de>
44934 CC Mode: check for and fix missing call to before_change_functions.
44936 Fixes bug #24094 and bug #24074.
44938 This can happen with `revert-buffer' or sometimes `find-file', when the file
44939 is already in a buffer, but the file has been changed outside of Emacs.
44941 * lisp/progmodes/cc-mode.el (c-after-change): When we detect a missing
44942 invocation of c-before-change-functions, we assume the changed region is the
44943 entire buffer, and call c-before-change explicitly before proceding.
44945 2016-08-09 Alan Mackenzie <acm@muc.de>
44947 Make c-deprepertize-CPP work on deletion/insertion of "s. Fixes bug #24132.
44949 * lisp/progmodes/cc-mode.el (c-depropertize-CPP): Rewrite function.
44951 2016-08-09 Michael Albinus <michael.albinus@gmx.de>
44953 Support $ENV in Tramp
44955 * doc/misc/tramp.texi (Remote processes): Explain setting $ENV.
44957 * etc/NEWS: Explain the "ENV" environment variable in
44958 `tramp-remote-process-environment'.
44960 * lisp/net/tramp-sh.el (tramp-remote-process-environment): Add "ENV=''".
44961 (tramp-open-shell): Read $ENV value from
44962 `tramp-remote-process-environment'.
44963 (tramp-open-connection-setup-interactive-shell): Set values in
44966 2016-08-09 Paul Eggert <eggert@cs.ucla.edu>
44968 Simplify exec_byte_code via moving decls etc.
44970 * src/bytecode.c (exec_byte_code): Simplify, mostly by moving
44971 initializers into decls, and by omitting some unnecessary
44972 changes to ‘top’. This improves performance a bit on x86-64,
44975 2016-08-09 Paul Eggert <eggert@cs.ucla.edu>
44977 Remove interpreter’s byte stack
44979 This improves performance overall on my benchmark on x86-64,
44980 since the interpreted program-counter resides in a machine
44981 register rather than in RAM.
44982 * etc/DEBUG, src/.gdbinit: Remove xbytecode GDB command, as there
44983 is no longer a byte stack to decode.
44984 * src/bytecode.c (struct byte_stack, byte_stack_list)
44985 (relocate_byte_stack): Remove. All uses removed.
44986 (FETCH): Simplify now that pc is now local (typically, in a
44987 register) and no longer needs to be relocated.
44988 (CHECK_RANGE): Remove. All uses now done inline, in a different way.
44989 (BYTE_CODE_QUIT): Remove; now done by op_relative_branch.
44990 (exec_byte_code): Allocate a copy of the function’s bytecode,
44991 so that there is no problem if GC moves it.
44992 * src/lisp.h (struct handler): Remove byte_stack member.
44994 (SAFE_ALLOCA_LISP_EXTRA): New macro, a generalization of
44996 (SAFE_ALLOCA_LISP): Use it.
44998 2016-08-09 Paul Eggert <eggert@cs.ucla.edu>
45000 Remove arbitrary limit on bytecode maxdepth
45002 * src/bytecode.c (exec_byte_code): Remove MAX_ALLOCA-based limit
45003 on bytecode maxdepth, by using SAFE_ALLOCA_LISP instead of alloca.
45005 2016-08-09 Paul Eggert <eggert@cs.ucla.edu>
45007 Tune bytecode quitting
45009 * src/bytecode.c (BYTE_CODE_QUIT): Check for GC, too. Do the
45010 check only once every 256 times. This should be good enough, and
45011 improves performance significantly on x86-64 as branch-prediction
45012 typically assumes checking will not be done so the instruction
45013 pipeline stays fuller.
45014 (exec_byte_code): Set up the quit counter. Don’t call maybe_gc
45015 directly, as BYTE_CODE_QUIT does that now.
45017 2016-08-09 Paul Eggert <eggert@cs.ucla.edu>
45019 Simplify BYTE_CODE_SAFE checking
45021 * src/bytecode.c (BYTE_CODE_SAFE): Default to false, so that it
45022 can be used outside #if. All uses of ‘defined BYTE_CODE_SAFE’
45023 changed to ‘BYTE_CODE_SAFE’. Use BYTE_CODE_SAFE in plain
45024 expressions instead of #if expressions when this is easy.
45025 (struct byte_stack) [BYTE_CODE_SAFE]: Remove member ‘bottom’,
45026 as it is no longer needed.
45027 (exec_byte_code): Omit #if BYTE_CODE_SAFE when this is easy.
45028 Simplify stack-overflow checking when BYTE_CODE_SAFE.
45030 2016-08-09 Paul Eggert <eggert@cs.ucla.edu>
45032 Get BYTE_CODE_METER working again
45034 BYTE_CODE_METER hasn’t worked since 2013, and nobody seems to have
45035 noticed. Perhaps we should remove it?
45036 * src/bytecode.c (METER_2) [BYTE_CODE_METER]:
45037 Use *aref_addr instead of AREF, since it needs to be an lvalue.
45039 2016-08-08 Eli Zaretskii <eliz@gnu.org>
45041 Fix cursor position under scroll-conservatively and overlay strings
45043 * src/xdisp.c (try_scrolling): Handle the case where the last
45044 visible screen line of a window displays a before- or after-string
45045 that takes up the whole screen line, and therefore there's no
45046 place to display the cursor, even though the window does seem to
45047 include the position of point. (Bug#24179)
45049 2016-08-08 Michael Albinus <michael.albinus@gmx.de>
45051 * lisp/files.el (file-ownership-preserved-p): Fix docstring. (Bug#23998)
45053 2016-08-07 Paul Eggert <eggert@cs.ucla.edu>
45055 Tune interpretation of integer arglist descriptor
45057 * src/bytecode.c (exec_byte_code):
45058 Simplify and tune when INTEGERP (args_template).
45060 2016-08-07 Noam Postavsky <npostavs@gmail.com>
45062 Fix debugging of string-match-p errors
45064 * src/eval.c (call_debugger): Bind inhibit-changing-match-data to nil so
45065 that debugger code that needs to do regexp match won't break
45066 (Bug #23949, Bug #24166, Bug#16294).
45068 2016-08-07 Michael Albinus <michael.albinus@gmx.de>
45070 Add `make-nearby-temp-file' and `temporary-file-directory'
45072 * doc/lispref/files.texi (Unique File Names):
45073 Introduce `make-nearby-temp-file' and `temporary-file-directory'.
45074 (Magic File Names): Mention `make-nearby-temp-file' and
45075 `temporary-file-directory'.
45077 * etc/NEWS (provided): Mention `make-nearby-temp-file' and
45078 `temporary-file-directory'.
45080 * lisp/files.el (mounted-file-systems): New defcustom.
45081 (temporary-file-directory, make-nearby-temp-file): New defuns.
45082 (normal-backup-enable-predicate): Fix docstring.
45084 * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
45085 * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
45086 * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
45087 * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist):
45088 <make-nearby-temp-file, temporary-file-directory>: Add handler.
45090 * lisp/net/tramp.el (tramp-file-name-for-operation):
45091 Add `make-nearby-temp-file' and `temporary-file-directory'.
45092 (tramp-get-remote-tmpdir): Remove compatibility code.
45093 (tramp-handle-temporary-file-directory)
45094 (tramp-handle-make-nearby-temp-file): New defuns.
45096 * lisp/org/ob-core.el (org-babel-local-file-name):
45097 * lisp/progmodes/gud.el (gud-common-init):
45098 * lisp/vc/vc-hooks.el (vc-user-login-name): Use `file-remote-p'.
45100 * lisp/vc/vc-git.el (vc-git-checkin): Handle remote log message.
45102 * test/lisp/net/tramp-tests.el (tramp-test06-directory-file-name):
45103 Check `tramp--test-enabled'.
45104 (tramp-test18-file-attributes): Add tests for
45105 `file-ownership-preserved-p'.
45106 (tramp-test27-start-file-process, tramp-test28-shell-command):
45107 Reduce timeouts in `accept-process-output'.
45108 (tramp-test--shell-command-to-string-asynchronously): Add timeout.
45109 (tramp-test29-environment-variables): Remove additional sleep calls.
45110 (tramp-test32-make-nearby-temp-file): New test.
45111 (tramp--test-special-characters, tramp--test-utf8): Adapt docstring.
45112 (tramp-test33-special-characters)
45113 (tramp-test33-special-characters-with-stat)
45114 (tramp-test33-special-characters-with-perl)
45115 (tramp-test33-special-characters-with-ls, tramp-test34-utf8)
45116 (tramp-test34-utf8-with-stat, tramp-test34-utf8-with-perl)
45117 (tramp-test34-utf8-with-ls)
45118 (tramp-test35-asynchronous-requests)
45119 (tramp-test36-recursive-load, tramp-test37-unload): Rename.
45120 (tramp--test-ftp-p): Simplify check.
45121 (tramp--test-sh-p): New defun.
45122 (tramp-test20-file-modes, tramp-test22-file-times)
45123 (tramp-test26-process-file, tramp-test27-start-file-process)
45124 (tramp-test28-shell-command)
45125 (tramp-test29-environment-variables)
45126 (tramp-test30-vc-registered)
45127 (tramp-test33-special-characters-with-stat)
45128 (tramp-test33-special-characters-with-perl)
45129 (tramp-test33-special-characters-with-ls)
45130 (tramp-test34-utf8-with-stat, tramp-test34-utf8-with-perl)
45131 (tramp-test34-utf8-with-ls)
45132 (tramp-test35-asynchronous-requests): Use it.
45134 2016-08-06 Michael Albinus <michael.albinus@gmx.de>
45136 Add missing dcstrings in Tramp, remove chec for obsolee methods
45138 * lisp/net/tramp.el (tramp-progress-reporter-update)
45139 (tramp-unload-file-name-handlers, tramp-get-local-uid)
45140 (tramp-get-local-gid, tramp-get-local-locale):
45141 * lisp/net/tramp-adb.el (tramp-adb-ls-date-regexp)
45142 (tramp-adb-ls-toolbox-regexp, tramp-adb-get-ls-command):
45143 * lisp/net/tramp-compat.el (tramp-compat-funcall):
45144 * lisp/net/tramp-ftp.el (tramp-ftp-enable-ange-ftp):
45145 * lisp/net/tramp-gw.el (tramp-gw-process-filter):
45146 * lisp/net/tramp-sh.el (tramp-get-remote-path)
45147 (tramp-get-remote-locale, tramp-get-ls-command)
45148 (tramp-get-ls-command-with-dired)
45149 (tramp-get-ls-command-with-quoting-style)
45150 (tramp-get-ls-command-with-w-option)
45151 (tramp-get-test-nt-command, tramp-get-file-exists-command)
45152 (tramp-get-remote-ln, tramp-get-remote-perl)
45153 (tramp-get-remote-stat, tramp-get-remote-readlink)
45154 (tramp-get-remote-trash, tramp-get-remote-touch)
45155 (tramp-get-remote-gvfs-monitor-dir)
45156 (tramp-get-remote-inotifywait, tramp-get-remote-id)
45157 (tramp-get-remote-uid-with-id)
45158 (tramp-get-remote-uid-with-perl, tramp-get-remote-python)
45159 (tramp-get-remote-uid-with-python, tramp-get-remote-uid)
45160 (tramp-get-remote-gid-with-id)
45161 (tramp-get-remote-gid-with-perl)
45162 (tramp-get-remote-gid-with-python, tramp-get-remote-gid)
45163 (tramp-get-env-with-u-option): Add missing docstrings.
45165 * lisp/net/tramp.el (tramp-obsolete-methods)
45166 (tramp-warned-obsolete-methods): Remove.
45167 (tramp-find-method): Do not check for obsolete methods any longer.
45169 2016-08-06 Noam Postavsky <npostavs@gmail.com>
45171 Make sh-mode always use p-s-lookup-properties
45173 This lets functions which rely on syntax-propertize for parsing
45174 work correctly even before font lock has a chance to run.
45176 * lisp/progmodes/sh-script.el (sh-set-shell): Set
45177 parse-sexp-lookup-properties unconditionally (Bug #4920).
45179 2016-08-06 Noam Postavsky <npostavs@gmail.com>
45181 Fix cl-assert with atomp FORM, non-nil SHOW-ARGS
45183 * lisp/emacs-lisp/cl-macs.el (cl-assert): Don't require that FORM is a
45184 list when showing its (non-existent) arguments (Bug #18587).
45186 2016-08-06 Noam Postavsky <npostavs@gmail.com>
45188 Don't delete selection after indent-rigidly
45190 * lisp/indent.el (indent-rigidly): Pass `deactivate-mark' as the ON-EXIT
45191 function to `set-transient-map', this prevents `delete-selection-mode'
45192 from deleting the text that was just indented (Bug #20408).
45194 2016-08-06 Noam Postavsky <npostavs@gmail.com>
45196 Fix byte-compile of interactive closures
45198 * lisp/emacs-lisp/bytecomp.el (byte-compile--reify-function): Put
45199 bindings after docstring and `interactive' form, if any (Bug #24122).
45201 2016-08-06 Noam Postavsky <npostavs@gmail.com>
45203 Error if --eval arg has text beyond 1 expression
45205 * lisp/startup.el (command-line-1): If --eval argument has more data
45206 than constitutes a single Lisp expression, signal an error (Bug #23159).
45208 2016-08-06 Noam Postavsky <npostavs@gmail.com>
45210 Fix quoted lambda warning from lexical-let
45212 * lisp/emacs-lisp/cl.el (cl--function-convert): Quote the inner lambda
45213 with `function', not `quote' (Bug #11357).
45215 2016-08-06 Noam Postavsky <npostavs@gmail.com>
45217 Make emerge always use shell-quote-argument
45219 * lisp/vc/emerge.el (emerge-metachars): Obsolete.
45220 (emerge-protect-metachars): Delete.
45221 (emerge-make-diff-list, emerge-make-diff3-list): Replace all calls to
45222 `emerge-protect-metachars' with `shell-quote-argument' so that shell
45223 quoting is done the same on all system types (Bug #6136). Also shell
45224 quote `emerge-diff-program' and `emerge-diff3-program'.
45226 2016-08-06 Eli Zaretskii <eliz@gnu.org>
45228 Fix 'dired-diff' when backup file is in another directory
45230 * lisp/dired-aux.el (dired-diff): Clarify the doc string wrt how
45231 the default for FILE is computed, especially when backup files
45232 are involved. Support backup files in another directory.
45233 Don't suggest the default FILE if it doesn't exist. (Bug#24089)
45235 2016-08-06 Eli Zaretskii <eliz@gnu.org>
45237 Fix the 'T' command in Dired with non_ASCII file names
45239 * lisp/dired-aux.el (dired-do-chxxx): Bind coding-system-for-write
45240 to correctly encode file names passed to the invoked PROGRAM.
45243 2016-08-05 Noam Postavsky <npostavs@gmail.com>
45245 * lisp/files.el (version-control): Drop :group vc (Bug #14687)
45247 2016-08-05 Paul Eggert <eggert@cs.ucla.edu>
45249 Merge from origin/emacs-25
45251 d841a03 ; Spelling fix
45252 a6ae479 Post AppDefined events from the main thread ONLY (bug#23934)
45253 d35d398 Update to the AUTHORS file for Bob Weiner
45254 4d2f4df Revert "Fix local printer set to left aligned string formatter."
45255 cd1b4d6 Revert "Fix ses-delete-blanks to delete only blanks + documen...
45256 f7ceb8e Revert "Fix English."
45257 baa7abd Improve doc strings of 'gud-gdb' and 'gdb'
45258 aa4271a Fix doc string of 'minibuffer-message-timeout'
45259 b275cc7 Fix English.
45260 3c97b0f Fix ses-delete-blanks to delete only blanks + documentation.
45261 272391f profiler: document prefix arg for tree expansion
45262 442cc39 Clarify usage of eshell-visual-options
45263 b443c3c Fix comment in files-in-below-directory
45264 8a38e94 Fix local printer set to left aligned string formatter.
45265 0f0b191 ; Fix typos in NEWS
45266 6bdf687 ; * etc/NEWS: Remove temporary marks
45268 2016-08-05 Paul Eggert <eggert@cs.ucla.edu>
45270 Merge from origin/emacs-25
45272 d08afa1 * etc/AUTHORS: Update the AUTHORS file
45273 2668500 ;; * ChangeLog.2: ChangeLog update.
45274 7acfaea ; ChangeLog fixes
45275 97d28b4 * admin/authors.el (authors-valid-file-names): Addition.
45276 9ab52f6 * admin/authors.el: Additions.
45277 0e646c7 Warn about Cairo-related problems
45278 bc4c07f Don't let completion break `declare' handling
45279 66f95e0 Adjust match data before calling after-change-funs
45280 52cf0d5 Do not show string-rectangle preview if minibuffer is empty
45281 6a3d031 * etc/PROBLEMS: Add entry about selection problems under Plas...
45287 2016-08-05 Paul Eggert <eggert@cs.ucla.edu>
45289 Merge from origin/emacs-25
45292 9356fe2 Expand FIXME near definition of fboundp
45293 219b39f kill-rectangle should mention killed-rectangle
45294 59fa4c3 Avoid assertion violations in nhexl-mode
45296 2016-08-05 Paul Eggert <eggert@cs.ucla.edu>
45298 Merge from origin/emacs-25
45300 9ba51ed Document buffer-swap-text+save-excursion interaction
45301 452aa94 Fix eieio vs cl-generic incompatibilities found in Rudel (bug...
45302 248d5dd Include cl-generic in package--builtin-versions (bug#22817)
45303 8f5a8b6 Improve timing in `tramp-test29-environment-variables'
45304 05ba7a0 Add test for handling environment variables in Tramp
45305 e393d4f * lisp/emacs-lisp/package.el (describe-package-1) (package-st...
45306 5e38887 ; * lisp/net/tramp.el: Fix 2010-10-04 comment typo. (Bug#23913)
45307 90f2169 ; Spelling fixes
45308 069fc05 Improve documentation of search functions
45309 0a0144a Delete environment variables in Tramp when needed
45310 f624671 Add "New in Emacs 25" section to the FAQ
45311 658daf9 Fix 'vertical-motion' in non-interactive sessions
45312 686b520 Fix memory leak in imagemagick-types
45313 4069b71 Update ELisp manual to match 'string-collate-equalp' doc string
45314 1b2d6a6 Clarify docstring of find-feature-regexp
45315 aac62a6 Add details to cl-lib defining macros' docstrings
45316 d6aa4da Clarify doc string of 'save-buffer'
45317 03bcf11 Un-confuse doc string of 'string-collate-equalp'
45318 c53135b Clarify documentation of 'mouse-on-link-p'
45321 # lisp/emacs-lisp/eieio-core.el
45323 2016-08-05 Paul Eggert <eggert@cs.ucla.edu>
45325 Merge from origin/emacs-25
45327 6f285d9 Amend last addition to etc/PROBLEMS
45328 7067890 * etc/PROBLEMS: Mention GTK+ problem with unexpected frame wi...
45330 2016-08-05 Paul Eggert <eggert@cs.ucla.edu>
45332 Merge from origin/emacs-25
45334 d4c6774 Fix missing point information in undo
45335 3a9d629 Avoid crashes when buffer modification hooks clobber match data
45336 178b2f5 Note combine-and-quote-strings doesn't shell quote
45337 dec7567 Explain when package-initialize isn't called
45338 113d1e2 Fix escaping in sh-indent-after-continuation docstr
45339 80e2044 ; * etc/NEWS: Improve previous change.
45340 5bb9e6c ; * etc/NEWS: Document how to avoid horizontal scroll bars.
45341 38f4b8e Clarify the documentation of back-references in replacements
45343 2016-08-05 Paul Eggert <eggert@cs.ucla.edu>
45345 Merge from origin/emacs-25
45347 850ba44 Clarify lexical binding with symbol args behavior
45348 f981b31 * lisp/net/tramp-sh.el (tramp-remote-path): Doc fix.
45349 68fc964 * lisp/net/tramp-sh.el (tramp-remote-path): Doc fix. (Bug#23...
45350 21110af Avoid assertion violations when rendering some fonts
45351 6192b6c Document more details of package activation
45352 272ddc6 Fixup warning message regarding HOME a bit more
45353 43206d6 * lisp/leim/quail/indian.el ("bengali-probhat"): Change indic...
45354 d41f7ff Fix input method "probhat" for Bengali
45355 c150a64 ; Fix typo in commit before last
45356 ebf0472 Add to elisp-completion-at-point's docstring
45357 fd9fad0 Give more helpful warning about setting HOME
45358 ea6b01d ; * lisp/term.el (term-mode): FIXME comment about bidi reorde...
45363 2016-08-05 Paul Eggert <eggert@cs.ucla.edu>
45365 Merge from origin/emacs-25
45367 26d4da0 New input method "probhat" for Bengali
45368 4f445bf ; Spelling fix
45371 2016-08-05 Paul Eggert <eggert@cs.ucla.edu>
45373 Spelling and minor grammar fixes
45375 * test/file-organization.org: Rename from test/file-organisation.org.
45377 2016-08-04 Alan Mackenzie <acm@muc.de>
45379 Widen in certain low level CC Mode functions. This fixes bug #24148.
45381 * lisp/progmodes/cc-engine.el (c-state-semi-pp-to-literal)
45382 (c-state-full-pp-to-literal): Widen around the functionality.
45383 (c-parse-ps-state-below): Correct the order of save-excursion and
45386 2016-08-04 Stefan Monnier <monnier@iro.umontreal.ca>
45390 * lisp/subr.el (set-transient-map): Don't wait if MAP not present in
45391 overriding-terminal-local-map. (Bug#24149)
45393 2016-08-03 Paul Eggert <eggert@cs.ucla.edu>
45398 2016-07-03 mktime: call tzset as per POSIX
45399 * doc/misc/texinfo.tex, lib/mktime.c, m4/mktime.m4:
45402 2016-08-03 Paul Eggert <eggert@cs.ucla.edu>
45404 Fix GnuTLS includes
45406 * src/gnutls.c [HAVE_GNUTLS]: Don’t include gnutls/gnutls.h
45407 a second time; although it doesn’t hurt, it’s not needed.
45408 * src/sysdep.c [!HAVE_GNUTLS]: Don’t include gnutls/crypto.h,
45409 as it may not be available. Problem reported by Glenn Morris in:
45410 https://lists.gnu.org/r/emacs-devel/2016-08/msg00100.html
45412 2016-08-03 Michal Nazarewicz <mina86@mina86.com>
45414 Fix accessing regex-resources in out-of-tree test runs in regex-tests
45416 [82a487d: Fix reading of regex-resources in regex-tests] attempted to
45417 fix regex-tests failing when run from the source tree (i.e. via make)
45418 by hard-coding path to regex-resources directory relative to the test
45421 This fixed runs from the tree but broke the test when run using other
45424 Fix by trying ‘load-file-name’ or ‘buffer-file-name’, whichever is set.
45426 * test/src/regex-tests.el (regex-tests--resources-dir): New variable
45427 storing path to the regex-resources directory.
45428 (regex-tests-generic-line): Use aforementioned variable.
45430 2016-08-03 Paul Eggert <eggert@cs.ucla.edu>
45432 Simplify by assuming GnuTLS 2.12.2 or later
45434 * src/gnutls.c (gnutls_certificate_details):
45435 * src/sysdep.c: Assume GnuTLS 2.12.2 or later.
45437 2016-08-03 Paul Eggert <eggert@cs.ucla.edu>
45439 Port to systems lacking GNUTLS_NONBLOCK
45441 Problem reported by Colin Baxter in:
45442 https://lists.gnu.org/r/emacs-devel/2016-08/msg00096.html
45443 * src/gnutls.c (Fgnutls_boot): Don’t assume GNUTLS_NONBLOCK is defined.
45445 2016-08-03 Paul Eggert <eggert@cs.ucla.edu>
45447 Fix non-blocking GnuTLS with slow connection
45449 Although the problem is reported for OS X (Bug#23982), it seems to
45450 be possible on other POSIXish platforms.
45451 * src/gnutls.c (emacs_gnutls_nonblock_errno) [!WINDOWSNT]:
45453 (emacs_gnutls_handshake) [!WINDOWSNT]:
45454 Use it as the errno function, if non-blocking.
45455 (Fgnutls_boot): Use GNUTLS_NONBLOCK if non-blocking.
45457 2016-08-03 Paul Eggert <eggert@cs.ucla.edu>
45459 Require GnuTLS 2.12.2 or later
45461 * configure.ac, etc/NEWS: Require GnuTLS 2.12.2 or later,
45462 instead of merely 2.6.6 or later (Bug#23982#20).
45463 * src/gnutls.c (init_gnutls_functions, emacs_gnutls_handshake)
45464 [WINDOWSNT]: Don’t bother with gnutls_check_version or
45465 gnutls_transport_set_lowat, as they are no longer needed now that
45466 we require gnutls 2.12.2 or later.
45468 2016-08-02 Stefan Monnier <monnier@iro.umontreal.ca>
45470 * src/window.c (sanitize_window_sizes): Remove unused arg `frame'
45472 * src/window.h (sanitize_window_sizes): Adjust prototype.
45473 * src/frame.c (adjust_frame_size): Adjust calls.
45475 2016-08-02 Paul Eggert <eggert@cs.ucla.edu>
45477 Fix (mapcar F S) crash when F alters S’s length
45479 * src/fns.c (mapcar1): Return number of elements computed,
45480 which can be less than LENI if the function alters the list.
45481 All callers changed. (Bug#24118)
45483 2016-08-02 Paul Eggert <eggert@cs.ucla.edu>
45485 Port window changes to --enable-gcc-warnings
45487 * src/window.c (sanitize_window_sizes): Return void.
45488 This pacifies GCC, and no caller uses the return value anyway.
45490 2016-08-02 Stefan Monnier <monnier@iro.umontreal.ca>
45492 * src/window.c: Fix bootstrap failure due to window.el changes
45494 (sanitize_window_sizes): Adjust to new calling convention of
45495 window--sanitize-window-sizes and only call it if defined.
45496 (Fwindow__sanitize_window_sizes): Remove.
45497 (syms_of_window): Don't defsubr it.
45499 2016-08-02 Michael Albinus <michael.albinus@gmx.de>
45503 * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
45504 Call `process-actions' with adapted position. The connection
45505 buffer might have been cleaned up already. (Bug#23883)
45507 2016-08-02 Paul Eggert <eggert@cs.ucla.edu>
45509 Port regex changes to strict ISO C
45511 * src/regex.c (regex_compile): Redo casts.
45513 2016-08-02 Stefan Monnier <monnier@iro.umontreal.ca>
45515 * lisp/window.el: Use lexical-binding
45517 (window--min-size-ignore-p): Remove unused arg `horizontal'.
45518 (window--sanitize-window-sizes): Remove unused arg `frame'.
45519 (window-edges): Remove unused vars left-off and right-off.
45520 (display-buffer-reuse-mode-window): Remove unused var `frame?'.
45521 Avoid extraneous setq and do a bit of CSE.
45522 (fit-frame-to-buffer): Remove unused vars `window', `fit-width',
45523 and `toolbar-extra-height'.
45524 (window-adjust-process-window-size): Remove unused arg `process'.
45526 2016-08-02 Michal Nazarewicz <mina86@mina86.com>
45528 Fix unused lexical variable
45530 This fixes the following warning:
45533 src/regex-tests.el:416:1:Warning: Unused lexical variable ‘newline’
45535 * test/src/regex-tests.el (regex-tests-BOOST): Remove unused lexical
45538 2016-08-02 Michal Nazarewicz <mina86@mina86.com>
45540 Remove unused STREQ macro
45542 This fixes the following compilation warning:
45544 regex.c:516:0: warning: macro "STREQ" is not used [-Wunused-macros]
45545 #define STREQ(s1, s2) ((strcmp (s1, s2) == 0))
45548 * src/regex.c (STREQ): Remove unused macro. It should have been removed
45549 in a [4538a5e: Refactor regex character class parsing in [:name:]]
45550 commit but was mistakenly left out.
45552 2016-08-02 Stefan Monnier <monnier@iro.umontreal.ca>
45554 * lisp/emacs-lisp/cl-generic.el: Fix problems introduced by new
45555 load-history format
45557 * lisp/emacs-lisp/cl-generic.el (cl--generic-load-hist-format): New function.
45558 (cl-generic-define-method, cl--generic-describe): Use it.
45559 (cl--generic-search-method): Adjust for new format.
45561 * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions):
45562 * test/lisp/progmodes/elisp-mode-tests.el:
45563 Use cl--generic-load-hist-format rather than hard-coding cl-generic's
45566 2016-08-02 Michal Nazarewicz <mina86@mina86.com>
45568 Hardcode regex syntax to remove dead code handling different syntax
45570 Emacs only ever uses its own regex syntax so support for other syntaxes
45571 is never used. Hardcode the syntax so that the compilar can detect such
45572 dead code and remove it from compiled code.
45574 The only exception is RE_NO_POSIX_BACKTRACKING which can be separatelly
45575 specified. Handle this separatelly with a function argument (replacing
45576 now unnecessary syntax argument).
45578 With this patchset, size of Emacs binary on x86_64 machine is reduced by
45581 new-sizes:-rwx------ 3 mpn eng 30254720 Jul 27 23:31 src/emacs
45582 old-sizes:-rwx------ 3 mpn eng 30314828 Jul 27 23:29 src/emacs
45584 * src/regex.h (re_pattern_buffer): Don’t define syntax field #ifdef emacs.
45585 (re_compile_pattern): Replace syntax with posix_backtracking argument.
45587 * src/regex.c (print_compiled_pattern): Don’t print syntax #ifdef emacs.
45588 (regex_compile): #ifdef emacs, replace syntax argument with
45589 posix_backtracking which is now used instead of testing for
45590 RE_NO_POSIX_BACKTRACKING syntax.
45591 (re_match_2_internal): Don’t access bufp->syntax #ifndef emacs.
45592 (re_compile_pattern): Replace syntax with posix_backtracking argument.
45594 * src/search.c (compile_pattern_1): Pass boolean posix_backtracking
45595 instead of syntax to re_compile_pattern.
45597 2016-08-02 Michal Nazarewicz <mina86@mina86.com>
45599 Get rid of re_set_whitespace_regexp
45601 * src/regex.h (re_set_whitespace_regexp): Delete.
45602 (re_compile_pattern): Add whitespace_regexp argument #ifdef emacs.
45604 * src/regex.c (re_set_whitespace_regexp, whitespace_regexp): Delete.
45605 (regex_compile): Add whitespace_regexp argument #ifdef emacs and wrap
45606 whitespace_regexp-related code in an #ifdef emacs so it’s compiled out
45607 unless building Emacs.
45608 (re_compile_pattern): Pass whitespace_regexp argument to regex_compile
45610 * src/search.c (compile_pattern_1): Don’t use re_set_whitespace_regexp,
45611 pass the regex as argument to re_compile_pattern instead.
45613 2016-08-02 Michal Nazarewicz <mina86@mina86.com>
45615 Get rid of re_set_syntax
45617 Instead of using a global variable for storing regex syntax, pass it
45618 to re_compile_pattern. This is only enabled when compiling Emacs (i.e.
45621 * src/regex.h (re_set_syntax): Declare only #ifndef emacs.
45622 (re_compile_pattern): Now takes syntax argument #ifdef emacs.
45624 * src/regex.c (re_syntax_options): Define only #ifndef emacs.
45625 (re_compile_pattern): Use the new syntax argument #ifdef emacs.
45627 * src/search.c (compile_pattern_1): Don’t use re_set_syntax and
45628 instead pass syntax to re_compile_pattern directly.
45630 2016-08-02 Michal Nazarewicz <mina86@mina86.com>
45632 Remove dead opcodes in regex bytecode
45634 There is no way to specify before_dot and after_dot opcodes in a regex
45635 so code handling those ends up being dead. Remove it.
45637 * src/regex.c (print_partial_compiled_pattern, regex_compile,
45638 analyze_first, re_match_2_internal): Remove handling and references to
45639 before_dot and after_dot opcodes.
45641 2016-08-02 Michal Nazarewicz <mina86@mina86.com>
45643 Refactor regex character class parsing in [:name:]
45645 re_wctype function is used in three separate places and in all of
45646 those places almost exact code extracting the name from [:name:]
45647 surrounds it. Furthermore, re_wctype requires a NUL-terminated
45648 string, so the name of the character class is copied to a temporary
45651 The code duplication and unnecessary memory copying can be avoided by
45652 pushing the responsibility of parsing the whole [:name:] sequence to
45655 Furthermore, since now the function has access to the length of the
45656 character class name (since it’s doing the parsing), it can take
45657 advantage of that information in skipping some string comparisons and
45658 using a constant-length memcmp instead of strcmp which needs to take
45661 * src/regex.c (re_wctype): Delete function. Replace it with:
45662 (re_wctype_parse): New function which parses a whole [:name:] string
45663 and returns a RECC_* constant or -1 if the string is not of [:name:]
45665 (regex_compile): Use re_wctype_parse.
45666 * src/syntax.c (skip_chars): Use re_wctype_parse.
45668 2016-08-02 Michal Nazarewicz <mina86@mina86.com>
45670 Split regex glibc test cases into separet tests
45672 * test/src/regex-tests.el (regex-tests): Remove and split into multiple
45674 (regex-tests-glbic-BOOST, regex-tests-glibc-PCRE,
45675 regex-tests-glibc-PTESTS, regex-tests-glibc-TESTS): New test cases split
45676 from ‘regex-tests’.
45678 2016-08-02 Michal Nazarewicz <mina86@mina86.com>
45680 Don’t (require 'cl)
45682 * test/src/regex-tests.el: Don’t (require 'cl).
45683 (regex-tests-PCRE): s/loop/cl-loop/
45685 2016-08-02 Michal Nazarewicz <mina86@mina86.com>
45687 Fix reading of regex-resources in regex-tests
45689 * test/src/regex-tests.el (regex-tests-generic-line): Referring to
45690 ‘buffer-file-name’ does not work when running the test from command
45691 line, i.e. via make, which results in (wrong-type-argument stringp nil)
45692 failures. Replace it with hard-coded path.
45693 (regex-tests-BOOST, regex-tests-PCRE, regex-tests-PTESTS-whitelist,
45694 regex-tests-TESTS-whitelist): ‘regex-tests-generic-line’ now includes
45695 the ‘regex-resources’ path component so the tests don’t need to specify
45698 2016-08-02 Dima Kogan <dima@secretsauce.net>
45700 Added driver for the regex tests
45702 * test/src/regex-tests.el (regex-tests): Test executing glibc tests
45705 [mina86@mina86.com: merged test with existing file]
45707 2016-08-02 Dima Kogan <dima@secretsauce.net>
45709 New regex tests imported from glibc 2.21
45711 * test/src/regex-resources/BOOST.tests:
45712 * test/src/regex-resources/PCRE.tests:
45713 * test/src/regex-resources/PTESTS:
45714 * test/src/regex-resources/TESTS:
45715 New test data files
45717 [mina86@mina86.com: Moved files from test/src/regex/* to test/src/*.]
45719 2016-08-02 Paul Eggert <eggert@cs.ucla.edu>
45721 Fix use-after-close in connect_network_socket
45723 * src/process.c (connect_network_socket):
45724 Reverse sense of previous fix. Problem reported by Ken Brown in:
45725 https://lists.gnu.org/r/emacs-devel/2016-08/msg00004.html
45727 2016-08-01 Glenn Morris <rgm@gnu.org>
45729 * lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
45730 Respect autoload-timestamps for "actual autoloads are elsewhere" case.
45732 2016-07-31 Stefan Merten <stefan@merten-home.de>
45734 * lisp/textmodes/rst.el: Major refactoring, minor changes, minor fixes
45736 (rst-Ado, rst-Hdr, rst-Ttl, rst-Stn): Introduce classes
45737 representing reStructuredText section header concepts.
45738 (rst-mode-map, rst-new-preferred-hdr)
45739 (rst-update-section, rst-classify-adornment)
45740 (rst-ttl-at-point, rst-all-ttls-cache)
45741 (rst-hdr-hierarchy-cache, rst-reset-section-caches)
45742 (rst-all-ttls, rst-infer-hdr-hierarchy, rst-hdr-hierarchy)
45743 (rst-all-ttls-with-level, rst-get-previous-hdr)
45744 (rst-adornment-complete-p, rst-next-hdr, rst-adjust)
45745 (rst-adjust-section, rst-promote-region)
45746 (rst-display-hdr-hierarchy, rst-straighten-sections)
45747 (rst-all-stn, rst-remaining-stn, rst-toc-insert)
45748 (rst-toc-insert-node, rst-toc-node, rst-toc)
45749 (rst-forward-section, rst-adornment-level)
45750 (rst-font-lock-handle-adornment-pre-match-form)
45751 (rst-imenu-convert-cell, rst-imenu-create-index): Refactor
45753 (rst-compare-adornments, rst-get-adornment-match): Remove
45754 functions now in classes.
45755 (rst-re-alist-def, rst-toc-mode)
45756 (rst-font-lock-extend-region-extend): Minor improvements.
45757 (rst-mode, rst-compile): Use `setq-local'.
45758 (rst-cvs-header, rst-svn-rev, rst-svn-timestamp)
45759 (rst-official-version, rst-official-cvs-rev)
45760 (rst-package-emacs-version-alist): Maintain version tags.
45762 2016-07-30 Martin Rudalics <rudalics@gmx.at>
45764 Fix calculation of tool bar width reported by `frame-geometry' (Bug#24107)
45766 * src/w32fns.c (Fw32_frame_geometry): Fix calculation of tool
45767 bar width (Bug#24107). Reindent.
45768 * src/xfns.c (frame_geometry): Fix calculation of tool bar
45769 width on non-GTK builds.
45771 2016-07-30 Eli Zaretskii <eliz@gnu.org>
45773 Fix region display while dragging mouse
45775 * lisp/mouse.el (mouse-drag-track): Reset deactivate-mark in the
45776 buffer of the drag event, to allow mark to be set and the region
45777 be shown as we drag the mouse. (Bug#24030)
45779 2016-07-30 Tino Calancha <tino.calancha@gmail.com>
45781 Copy just non-empty strings to kill-ring
45783 * lisp/dired.el (dired-copy-filename-as-kill):
45784 Do not change the kill ring when the string is empty (Bug#24103).
45786 2016-07-30 Eli Zaretskii <eliz@gnu.org>
45788 Avoid warnings about undo list while decoding
45790 * src/coding.c (coding_restore_undo_list): New function.
45791 (decode_coding_gap, decode_coding_object): Temporarily set the
45792 buffer's undo list to t, to avoid warnings when decoding changes
45793 the buffer many times, e.g. due to post-read-conversion. Use
45794 coding_restore_undo_list to make sure the undo list is restored.
45797 2016-07-28 Noam Postavsky <npostavs@gmail.com>
45799 profiler: Add mouse-1 binding for tree expansion
45801 (profiler-report-mode-map): Add mouse-1 binding for
45802 profiler-report-toggle-entry (Bug #13455).
45804 2016-07-28 Vincent Belaïche <vincentb1@users.sourceforge.net>
45806 Enable addition of local printers from a mode hook.
45808 * doc/misc/ses.texi (Printer functions): Split the node into 5
45809 sub-nodes + add some extra documentation.
45810 (Various kinds of printer functions): Make an itemization to
45811 disintguish better the 3 types of printers, give an example of
45812 lambda printer definition.
45813 (Standard printer functions): Add documentation for ses-prin1
45815 (Local printer functions): Add documentation for creating
45816 local printers programmatically from a hook.
45817 (Writing a lambda printer function): Add documentation about
45818 anti-stackoverflow precautions to take when you call the
45819 standard printer functions from inside a local printer.
45821 * lisp/ses.el (ses-standard-printer-functions): Add ses-prin1
45822 among standard printer function, and update docstring
45824 (ses-call-printer, ses-export-tab): Call `ses-prin1' instead
45825 of prin1-to-string.
45826 (ses-define-local-printer): Add definition to arguments so
45827 that a local printer can be defined programmatically from a
45828 mode hook. Make docstring more substantial. Use completing
45829 read for local printer name input. Plus some minor
45831 (ses-define-if-new-local-printer): New defsubst.
45832 (ses-center, ses-center-span, ses-dashfill)
45833 (ses-dashfill-span, ses-tildefill-span): Allow to pass printer
45834 as an optional argument to superseed column printer/default
45835 spreadsheet printer.
45836 (ses-prin1): New defun.
45838 2016-07-27 Ted Zlatanov <tzz@lifelogs.com>
45840 Prompt to save gnus-cloud-method.
45842 Since `gnus-cloud-method' is a defcustom, when it's set, we should
45843 prompt the user to save it, so the customization is not lost on
45846 * lisp/gnus/gnus-srvr.el (gnus-server-toggle-cloud-method-server):
45847 Prompt to save the customization of `gnus-cloud-method'.
45849 2016-07-27 Ken Brown <kbrown@cornell.edu>
45851 Fix dired-test-bug22694
45853 * test/lisp/dired-tests.el (dired-test-bug22694): Delete the
45854 "bug22694" directory, if it exists, before running the test. It
45855 might be left over from a previous aborted run of the test.
45857 2016-07-27 Michal Nazarewicz <mina86@mina86.com>
45859 Fix ‘is multibyte’ test regex.c’s mutually_exclusive_p (bug#24020)
45861 * src/regex.c (mutually_exclusive_p): Fix how whether character is
45862 unibyte is tested when calling execute_charset function. This bug has
45863 been introduced by [6dc6b00: Fix ‘[[:cc:]]*literal’ regex failing to
45864 match ‘literal’] which dropped a call to IS_REAL_ASCII (c) macro.
45867 2016-07-27 Tino Calancha <tino.calancha@gmail.com>
45869 Remove hook when disabling ibuffer-auto-mode
45871 * lisp/ibuf-ext.el (ibuffer-auto-mode):
45872 Remove 'ibuffer-auto-update-changed' from 'post-command-hook'.
45874 2016-07-26 Stefan Monnier <monnier@iro.umontreal.ca>
45876 * lisp/subr.el (cancel-change-group): Reset cell in case of error
45878 Since the setcdr/setcdr is supposed to be temporary, use unwind-protect
45879 to make sure we properly undo the temporary change even in case of error.
45881 2016-07-26 Eli Zaretskii <eliz@gnu.org>
45883 Avoid segfaults in compute_motion
45885 * src/indent.c (compute_motion): Don't turn on and don't use the
45886 width cache unless the buffer's width-table is non-nil. This
45887 avoids segfaults because code that uses the width cache assumes
45888 the width-table exists. (Bug#24064)
45890 2016-07-26 Nicolas Petton <nicolas@petton.fr>
45892 Do not sharp-quote lambdas
45894 * lisp/progmodes/sql.el: Remove sharp-quotes in lambdas.
45896 2016-07-25 Ted Zlatanov <tzz@lifelogs.com>
45898 * lisp/gnus/gnus-cloud.el (gnus-cloud-encode-data): Fix
45899 'base64-gzip encoding.
45901 2016-07-25 Andrew Hyatt <ahyatt@gmail.com>
45903 Add warning to format-alist docs.
45905 */doc/lispref/files.texi (format-alist) Change documentation for
45906 format-alist to warn against file modifications when formatting, which
45907 leads to incorrect results. (Bug#5440)
45909 Changes suggested by Eli.
45911 2016-07-25 Katsumi Yamaoka <yamaoka@jpl.org>
45913 * lisp/gnus/mm-decode.el (mm-convert-shr-links):
45914 Preserve key bindings that shr adds (bug#23964).
45916 2016-07-25 Michal Nazarewicz <mina86@mina86.com>
45918 Fix ‘[[:cc:]]*literal’ regex failing to match ‘literal’ (bug#24020)
45920 The regex engine tries to optimize Kleene star by avoiding backtracking
45921 when it can detect that star’s operand cannot match what follows it in
45924 For example, when ‘[[:alpha:]]*1’ tries to match a ‘foo’, the engine
45925 will test the longest match for ‘[[:alpha:]]*’, namely ’foo’ which is
45926 the entire string. Literal digit one still present in the pattern will
45927 however not match the remaining empty string.
45929 Normally, backtracking would be performed trying a shorter match for the
45930 character class (namely ‘fo’ leaving ‘o’ in the string), but since the
45931 engine knows whatever would be put back into the string cannot possibly
45932 match literal digit one so no backtracking will be attempted.
45934 In the regexes of the form ‘[[:CC:]]*X’, the optimization can be applied
45935 if the character class CC does not match character X. In the above
45936 example, this holds because digit one is not in alpha character class.
45938 This test is performed by mutually_exclusive_p function but it did not
45939 check class bits of a charset opcode. This resulted in an assumption
45940 that character classes do not match multibyte characters. For example,
45941 it would incorrectly conclude that [[:alpha:]] doesn’t match ‘ż’.
45943 This, in turn, led to the aforementioned Kleene star optimization being
45944 incorrectly applied in patterns such as ‘[[:graph:]]*☠’ (which should
45945 match ‘☠’ but doesn’t as can be tested by executing
45946 (string-match-p "[[:graph:]]*☠" "☠")
45947 which should return 0 but instead yields nil.
45949 This issue affects any class witch matches multibyte characters, i.e.
45950 if ‘[[:cc:]]’ matches a multibyte character X then ‘[[:cc:]]*X’ will
45953 * src/regex.c (executing_charset): A new function for executing the
45954 charset and charset_not opcodes. It performs check on the character
45955 taking into consideration existing bitmap, range table and class bits.
45956 It also advances the pointer in the regex bytecode past the parsed
45958 (CHARSET_LOOKUP_RANGE_TABLE_RAW, CHARSET_LOOKUP_RANGE_TABLE): Removed.
45959 Code now included in executing_charset.
45960 (mutually_exclusive_p, re_match_2_internal): Changed to take advantage
45961 of executing_charset function.
45963 * test/src/regex-tests.el: New file with tests for the character class
45966 2016-07-25 Nicolas Petton <nicolas@petton.fr>
45968 Fix auto-reverting image-mode buffer (bug#21598)
45970 When auto-reverting an image buffer, `image-mode' is not called since
45971 `revert-buffer' is called with `preserve-modes' set to non-nil.
45973 * lisp/image-mode.el (image-after-revert-hook): Check if there is an
45974 image display property for the current buffer before updating it.
45976 2016-07-24 Paul Eggert <eggert@cs.ucla.edu>
45978 ‘signal’ no longer returns
45980 Although for decades ‘signal’ has been documented to not return,
45981 a corner case in the Lisp debugger causes ‘signal’ to return.
45982 Remove the corner case and adjust Emacs internals accordingly.
45983 An alternative would be to document the corner case, but this
45984 would complicate the Lisp API unnecessarily. (Bug#24047)
45985 * src/eval.c (signal_or_quit): New function, with most of the
45986 old contents of Fsignal.
45987 (quit): New function, which uses signal_or_quit and which
45988 might return. All keyboard-based callers of Fsignal (Qquit,
45989 Qnil) changed to use this new function instead.
45990 (Fsignal): Use signal_or_quit. Now _Noreturn. All callers
45992 (xsignal): Move to lisp.h.
45993 * src/lisp.h (xsignal): Now an inline function, as it's now
45994 just an alias for Fsignal.
45996 2016-07-24 Paul Eggert <eggert@cs.ucla.edu>
45998 Require libgnutls unless --with-gnutls=no
46000 * configure.ac: Report an error if the gnutls library is missing,
46001 unless --with-gnutls=no is specified.
46003 2016-07-23 Alan Mackenzie <acm@muc.de>
46005 Fontify C++ parameter packs.
46007 This fixes debbugs #23610.
46009 * lisp/progmodes/cc-langs.el (c-pack-ops, c-pack-key): New
46010 c-lang-defconsts/defvars.
46011 (c-type-decl-prefix-key): Add "..." and "&&" into the C++ version.
46013 * lisp/progmodes/cc-engine.el (c-forward-type): Handle matches of c-pack-key.
46015 2016-07-23 Alan Mackenzie <acm@muc.de>
46017 Java Mode: Handle strings as case labels correctly.
46019 This fixes debbugs #23901.
46021 * lisp/progmodes/cc-langs.el (c-nonlabel-token-key): Remove "\"" from the
46024 2016-07-22 Kaushal Modi <kaushal.modi@gmail.com>
46026 Avoid repeated warnings while restoring desktop
46028 * lisp/desktop.el (desktop-restore-file-buffer): Do not print warnings
46029 when files are being opened during desktop restore.
46031 2016-07-22 Eli Zaretskii <eliz@gnu.org>
46033 Fix compilation warning in the MinGW build
46035 * nt/inc/ms-w32.h: Include stdint.h.
46036 (_execvp, execve): Provide prototypes.
46038 * lib-src/emacsclient.c [WINDOWSNT]: Remove prototype for execvp,
46039 it is now in nt/inc/ms-w32.h.
46040 * lib-src/ntlib.c (getppid): Avoid compiler warnings due to format
46042 (sys_ctime): Remove, not used.
46044 2016-07-22 Lars Ingebrigtsen <larsi@gnus.org>
46046 Move read-multiple-choice to subr-x.el
46048 * lisp/faces.el (read-multiple-choice-face): Fix doc string.
46050 * lisp/emacs-lisp/subr-x.el (read-multiple-choice): Move here
46053 * lisp/gnus/message.el (subr-x): Ditto.
46055 * lisp/net/nsm.el: Require subr-x for read-multiple-choice.
46057 read-multiple-choice doesn't need to be in the dumped Emacs, so move
46058 it to a less central file.
46060 2016-07-22 Tino Calancha <tino.calancha@gmail.com>
46062 Update define-ibuffer-op doc string
46064 * lisp/ibuf-macs.el (define-ibuffer-op):
46065 Mention that BODY is evaluated with 'buf' bound to the actual
46066 marked buffer being processed.
46068 2016-07-22 Tino Calancha <tino.calancha@gmail.com>
46070 Update define-ibuffer-op doc string
46072 * lisp/ibuf-macs.el (define-ibuffer-op): Document arg COMPLEX
46073 instead of refer the reader to the source code.
46076 2016-07-21 Tino Calancha <tino.calancha@gmail.com>
46078 Fix shell-command[-on-region] doc strings
46080 * lisp/simple.el (shell-command, shell-command-on-region):
46081 Drop the sentence saying that the command may delete the buffer
46082 '*Shell Command Output*': the command never delete such
46083 buffer (Bug#23936).
46085 2016-07-21 Mark Oteiza <mvoteiza@udel.edu>
46087 ;Revert ";Partially revert 2649105a"
46089 This reverts commit b7651649c2b1321a0c510116c1ac2442599d9a2e.
46091 2016-07-21 Mark Oteiza <mvoteiza@udel.edu>
46093 ;Partially revert 2649105a
46095 * lisp/textmodes/tex-mode.el (tex-common-initialization): Use
46096 setq-local to modify prettify-symbols-compose-predicate.
46098 2016-07-21 Stefan Monnier <monnier@iro.umontreal.ca>
46100 * src/bytecode.c: Fix compilation with BYTE_CODE_SAFE
46102 (struct byte_stack): Re-add `bottom'.
46103 (exec_byte_code): Initialize it.
46105 2016-07-21 Tino Calancha <tino.calancha@gmail.com>
46107 Ibuffer: Use default output buffer for shell commands
46109 * lisp/ibuf-ext.el (shell-command-pipe): Insert the output in buffer
46110 '*Shell Command Output*', as command 'shell-command-file'.
46112 2016-07-21 Tino Calancha <tino.calancha@gmail.com>
46116 * test/lisp/erc/erc-track-tests.el (erc-track--erc-faces-in):
46117 Enable Font Lock mode in order to initialize
46118 'char-property-alias-alist' (Bug#23954).
46120 2016-07-21 Paul Eggert <eggert@cs.ucla.edu>
46122 Fix use-after-close in connect_network_socket
46124 * src/process.c (connect_network_socket): Don’t use
46125 external_sock_fd after closing it. Problem found by Coverity Scan.
46127 2016-07-21 Katsumi Yamaoka <yamaoka@jpl.org>
46129 * lisp/net/shr.el (shr-fill-line):
46130 Preserve text properties in folded lines (bug#24034).
46132 2016-07-20 Paul Eggert <eggert@cs.ucla.edu>
46134 Fix lifetime bug in tzlookup
46136 * src/editfns.c (tzlookup): Fix storage lifetime bug when
46137 INTEGERP (zone) && settz. Problem found by Coverity Scan.
46139 2016-07-20 Lars Ingebrigtsen <larsi@gnus.org>
46141 Fix shr.el/image build problem
46145 * lisp/net/shr.el: Require image, since some builds seem to
46146 break without it (bug#24035).
46148 2016-07-20 Ted Zlatanov <tzz@lifelogs.com>
46150 Bring the Gnus Cloud package into working order.
46152 * lisp/gnus/gnus-sync.el: Removed in favor of gnus-cloud.el.
46154 * lisp/gnus/gnus-cloud.el: Autoload EPG functions. Change storage format to
46155 simplify non-file data.
46156 (gnus-cloud-storage-method): New defcustom to support nil, Base64,
46157 Base64+gzip, or EPG encoding on the Gnus Cloud IMAP server. Defaults to
46158 EPG if that's available, Base64+gzip otherwise.
46159 (gnus-cloud-interactive): New defcustom to make Gnus Cloud operations
46160 interactive, defaults to enabled.
46161 (gnus-cloud-group-name): New variable for the Gnus Cloud group name.
46162 (gnus-cloud-make-chunk): Tag with "Gnus-Cloud-Version" instead of just
46164 (gnus-cloud-insert-data): Simplify and support :newsrc-data entries.
46165 (gnus-cloud-encode-data, gnus-cloud-decode-data): Support various
46166 storage methods as per gnus-cloud-storage-method.
46167 (gnus-cloud-parse-chunk): Look for "Gnus-Cloud-Version" marker.
46168 (gnus-cloud-parse-version-1): Fix parsing loop bug. Handle :newsrc-data
46170 (gnus-cloud-update-all): Handle :newsrc-data entries and dispatch to
46171 file and data handlers.
46172 (gnus-cloud-update-newsrc-data): New function to handle :newrsc-data
46174 (gnus-cloud-update-file): Rework to support gnus-cloud-interactive and
46176 (gnus-cloud-delete-file): Remove; merged into gnus-cloud-update-file.
46177 (gnus-cloud-file-covered-p, gnus-cloud-all-files)
46178 (gnus-cloud-files-to-upload, gnus-cloud-ensure-cloud-group)
46179 (gnus-cloud-add-timestamps, gnus-cloud-available-chunks)
46180 (gnus-cloud-prune-old-chunks): Fix indentation.
46181 (gnus-cloud-timestamp): New function to make a standard Gnus Cloud
46183 (gnus-cloud-file-new-p): Use it.
46184 (gnus-cloud-upload-all-data): Add interactive convenience function to
46186 (gnus-cloud-upload-data): Make interactive; collect files and newsrc
46187 data separately; refresh Gnus Cloud group after insert.
46188 (gnus-cloud-download-all-data): Add interactive convenience function to
46190 (gnus-cloud-download-data): Rework to support "Gnus-Cloud-Version"
46191 marker and different storage methods.
46192 (gnus-cloud-host-server-p): New function to check if a server is the
46194 (gnus-cloud-collect-full-newsrc): Tag entries with :newsrc-data.
46195 (gnus-cloud-host-acceptable-method-p): New function so
46196 other code can check if a server method can host the Gnus cloud.
46197 (gnus-cloud-storage-method): Use 'radio instead of 'choice for better UI.
46198 (gnus-cloud-method): Make this a defcustom and note how to set it.
46200 * lisp/gnus/gnus-group.el (gnus-group-cloud-map): Add Gnus Cloud autoloaded
46201 keybindings under the `~' prefix.
46203 * lisp/gnus/gnus-srvr.el (gnus-server-mode-map, gnus-server-make-menu-bar)
46204 (gnus-server-cloud, gnus-server-cloud-host)
46205 (gnus-server-font-lock-keywords, gnus-server-insert-server-line)
46206 (gnus-server-toggle-cloud-method-server): Support Gnus Cloud
46207 synchronized servers and synchronization host server toggling (`i' and
46208 `I') and visual display.
46209 (gnus-server-toggle-cloud-method-server): Use
46210 gnus-cloud-host-acceptable-method-p.
46211 (gnus-server-toggle-cloud-method-server): Use custom-set-variables to
46212 set the gnus-cloud-method. Ask the user if it's OK to upload the data
46215 * doc/misc/gnus.texi: Document Gnus Cloud package.
46217 2016-07-20 Paul Eggert <eggert@cs.ucla.edu>
46219 Remove CHECK_FRAME_FONT cruft from bytecode.c
46221 * src/bytecode.c [CHECK_FRAME_FONT]: Do not include frame.h, xterm.h.
46222 Remove some old ‘#if 0’ code.
46224 2016-07-20 Paul Eggert <eggert@cs.ucla.edu>
46226 Work around GCC bug 54561 in a better way
46228 The new approach is less selective, but also less intrusive on C code.
46229 * src/bytecode.c, src/image.c, src/keyboard.c: Ignore -Wclobbered.
46230 * src/conf_post.h (NONVOLATILE): Remove. All uses removed.
46232 2016-07-20 Paul Eggert <eggert@cs.ucla.edu>
46234 Fix port to glibc 2.24 (pre-release) + ppc64
46236 * src/callproc.c (child_setup): Use emacs_exec_file
46237 so that ASLR is enabled in the child process.
46238 * src/emacs.c: Move some personality details into sys/sysdep.c.
46239 Do not include <sys/personality.h>.
46240 (main): Disable ASLR earlier, so that we don’t chdir twice.
46241 * src/lisp.h (disable_address_randomization): New decl.
46242 * src/sysdep.c (disable_address_randomization)
46243 [HAVE_PERSONALITY_ADDR_NO_RANDOMIZE]: Move personality details
46245 (emacs_exec_file): New function.
46247 2016-07-19 Alan Third <alan@idiocy.org>
46249 Prevent bar cursor overwriting next glyph (bug#16856)
46251 * src/nsterm.m (ns_draw_window_cursor): Test glyph width vs cursor width
46252 before setting final size.
46254 2016-07-19 Eli Zaretskii <eliz@gnu.org>
46256 Fix 'transpose-regions' when LEAVE-MARKERS arg is non-nil
46258 * src/insdel.c (adjust_markers_bytepos): New function.
46259 * src/lisp.h (adjust_markers_bytepos): Add prototype.
46260 * src/insdel.c (replace_range, replace_range_2):
46261 * src/editfns.c (Ftranspose_regions): Call
46262 adjust_markers_bytepos. (Bug#5131)
46264 * test/src/editfns-tests.el (transpose-test-reverse-word)
46265 (transpose-test-get-byte-positions): New functions.
46266 (transpose-ascii-regions-test)
46267 (transpose-nonascii-regions-test-1)
46268 (transpose-nonascii-regions-test-2): New tests.
46270 2016-07-19 Katsumi Yamaoka <yamaoka@jpl.org>
46272 Make gif animation work (bug#24004)
46274 * lisp/image.el (image-animate-timeout): Fix the logic that tests if
46275 an animation is too big (bug#24004).
46277 2016-07-18 Stefan Monnier <monnier@iro.umontreal.ca>
46279 * lisp/simple.el (undo-amalgamate-change-group): New function
46281 * lisp/emulation/viper-cmd.el (viper-adjust-undo): Use it.
46282 (viper-set-complex-command-for-undo): Save current state with
46283 prepare-change-group.
46284 * lisp/emulation/viper-init.el (viper-undo-needs-adjustment)
46285 (viper-buffer-undo-list-mark): Remove.
46287 2016-07-18 Noam Postavsky <npostavs@gmail.com>
46289 Keep w32 environment settings internal only
46291 * src/emacs.c (main) [WINDOWSNT]: Move init_environment calls after the
46292 set_initial_environment call. This prevents Emacs' modifications to the
46293 environment from contaminating Vprocess_environment and
46294 Vinitial_environment (Bug #10980).
46295 * src/callproc.c (getenv_internal) [WINDOWSNT]: Consult Emacs' internal
46296 environment in as a fallback to Vprocess_environment.
46297 * test/src/callproc-tests.el (initial-environment-preserved): New Test.
46299 2016-07-18 Nicolas Petton <nicolas@petton.fr>
46301 Better documentation for cl-reduce (bug#24014)
46303 * lisp/emacs-lisp/cl-seq.el (cl-reduce): Explain what reducing means.
46305 2016-07-17 Alan Third <alan@idiocy.org>
46307 Remove separate pool for popup dialogs (bug#23856)
46309 * src/nsmenu.m (pop_down_menu, ns_popup_dialog): Remove references to
46310 autorelease pool and Popdown_data struct.
46312 2016-07-17 Mark Oteiza <mvoteiza@udel.edu>
46314 Use eldoc-documentation-functions
46316 * lisp/hexl.el (hexl-mode):
46317 * lisp/ielm.el (inferior-emacs-lisp-mode):
46318 * lisp/progmodes/cfengine.el (cfengine3-mode):
46319 * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
46320 * lisp/progmodes/octave.el (octave-mode, inferior-octave-mode):
46321 * lisp/progmodes/python.el (python-mode):
46322 * lisp/simple.el (read--expression): Add buffer-locally to hook
46323 eldoc-documentation-functions.
46325 2016-07-16 Noam Postavsky <npostavs@gmail.com>
46327 Optimize ucs-normalize.el compilation
46329 * lisp/international/ucs-normalize.el (ucs-normalize-combining-chars-regexp):
46330 (quick-check-list-to-regexp): Use regexp-opt-charset instead of
46332 * lisp/international/ucs-normalize.el (quick-check-list): Reuse a single
46333 temp buffer for the whole loop.
46335 2016-07-16 Noam Postavsky <npostavs@gmail.com>
46337 Add tests for ucs-normalize.el
46339 Some tests are marked as expected to fail.
46341 * test/lisp/international/ucs-normalize-tests.el: New tests.
46342 * admin/unidata/NormalizationTest.txt: Add data for tests.
46343 * admin/unidata/README: Add URL for NormalizationTest.txt.
46344 * admin/notes/unicode: Add note about running (and updating the data
46345 for) the new tests. Remove note about normalization being unsupported.
46347 2016-07-16 Alan Third <alan@idiocy.org>
46349 Fix cursor display (bug#23993)
46351 * src/xdisp.c (get_phys_cursor_geometry): Fix invalid C operator.
46353 2016-07-15 Paul Eggert <eggert@cs.ucla.edu>
46355 Stop worrying about Alliant in bytecode.c
46357 * src/bytecode.c (PUSH): Remove workaround for long-obsolete compiler.
46359 2016-07-15 Paul Eggert <eggert@cs.ucla.edu>
46361 Remove BYTE_MAINTAIN_TOP
46363 It is no longer needed now that we assume GC_MARK_STACK ==
46364 GC_MAKE_GCPROS_NOOPS.
46365 * src/bytecode.c (BYTE_MAINTAIN_TOP): Remove.
46366 All uses removed, and code simplified accordingly.
46367 (BEFORE_POTENTIAL_GC, AFTER_POTENTIAL_GC): Remove, since they
46368 are always no-ops now. All uses removed.
46369 (MAYBE_GC): Remove. All uses replaced by maybe_gc,
46370 since it is now equivalent.
46372 2016-07-15 Paul Eggert <eggert@cs.ucla.edu>
46374 Remove now-inaccurate bytecode comments
46376 * src/bytecode.c: Remove comments that are no longer accurate.
46377 Most of these are actually old ChangeLog entries.
46379 2016-07-15 Paul Eggert <eggert@cs.ucla.edu>
46381 Port to glibc 2.24 (pre-release) + ppc64
46383 Inspired by a suggestion by Florian Weimer in:
46384 https://sourceware.org/ml/libc-alpha/2016-07/msg00425.html
46385 * configure.ac (HAVE_PERSONALITY_ADDR_NO_RANDOMIZE):
46386 Rename from HAVE_PERSONALITY_LINUX32, and check for
46387 ADDR_NO_RANDOMIZE (the crucial thing) instead of for LINUX32.
46389 * src/emacs.c (main) [HAVE_PERSONALITY_ADDR_NO_RANDOMIZE]:
46390 Use ADDR_NO_RANDOMIZE from personality.h rather than inventing the
46391 flag ourselves. Just set that flag, rather than also setting the
46392 persona. When doing it, avoid functions like putenv that may
46395 2016-07-14 Mark Oteiza <mvoteiza@udel.edu>
46397 Revert "Add a couple cells to lisp-prettify-symbols-alist"
46399 This reverts commit bdda4855c635ecf4135e23321bdba023e9ae65c9.
46401 2016-07-14 Stefan Monnier <monnier@iro.umontreal.ca>
46403 * lisp/simple.el (shell-command): Add save-match-data comment
46405 2016-07-14 Alan Mackenzie <acm@muc.de>
46407 CC Mode: correct incorrect invocation of parse-partial-sexp.
46411 * lisp/progmodes/cc-engine.el (c-literal-limits): make the sixth argument of
46412 an invocation of parse-partial-sexp 'syntax-table, not the fourth.
46414 2016-07-14 Andreas Schwab <schwab@suse.de>
46416 Fix configure summary for hybrid malloc configurations
46418 * configure.ac ("$hybrid_malloc" = yes): Set GNU_MALLOC to no,
46419 parenthesize value of GNU_MALLOC_reason.
46421 2016-07-14 Stephen Berman <stephen.berman@gmx.net>
46423 Fix delete-duplicate-lines
46425 * lisp/sort.el (delete-duplicate-lines): Delete duplicate
46426 first line when operating backward (bug#23863).
46428 2016-07-14 Andreas Schwab <schwab@suse.de>
46430 Remove unused SHEAP_OBJ
46432 * Makefile.in (base_obj): Remove $(SHEAP_OBJ).
46434 2016-07-13 Katsumi Yamaoka <yamaoka@jpl.org>
46436 * lisp/gnus/mm-decode.el (mm-convert-shr-links):
46437 Use shr-image-map instead of shr-map (bug#23964).
46439 2016-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
46441 * lisp/mouse.el (mouse): Consolidate group definition here
46443 * lisp/cus-edit.el (mouse): Remove both group definitions.
46445 2016-07-13 Chris Feng <chris.w.feng@gmail.com>
46447 Include versioned preloaded libraries in `package--builtin-versions'
46449 * lisp/emacs-lisp/autoload.el (update-directory-autoloads): Do not
46450 exclude preloaded libraries or remove entries generated for them.
46451 (autoload-generate-file-autoloads): Do not generate autoload
46452 statements for preloaded libraries.
46454 2016-07-13 Paul Eggert <eggert@cs.ucla.edu>
46456 Omit unnecessary #includes from xwidget.c
46458 * src/xwidget.c: Remove #include directives that are not needed.
46459 Also, don’t conditionalize #includes on HAVE_X_WINDOWS, since this
46460 file is compiled only if the X interface is available.
46462 2016-07-13 Paul Eggert <eggert@cs.ucla.edu>
46464 Port xwidget.c to GCC 6 with --enable-gcc-warnings
46466 * src/xwidget.c (x_draw_xwidget_glyph_string, xwidget_end_redisplay):
46467 Adjust to pacify GCC. Add a couple of FIXME comments, suggesting
46468 possible bugs found by GCC.
46470 2016-07-12 Tino Calancha <tino.calancha@gmail.com>
46472 Escape meta chars in commands processed by shell
46474 * lisp/progmodes/grep.el (grep-compute-defaults): Quote braces
46475 in all commands to be passed to a shell (Bug#23959).
46477 2016-07-12 John Wiegley <johnw@newartisans.com>
46479 Revert "Cleanup tooltips"
46481 This reverts commit 20038f8ab75dd1551412a43cd58520c483c22921.
46483 I am reverting this change because it was applied without prior discussion
46484 on emacs-devel, and has been found to break the NS port. It needs more
46485 testing and review before it should be applied here.
46487 2016-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
46489 * lisp/emacs-lisp/cl-macs.el (cl--prog): New function
46491 (cl-prog, cl-prog*): New macros.
46493 2016-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
46495 * lisp/emacs-lisp/cl-generic.el (cl-defmethod): Make docstring dynamic
46497 * lisp/emacs-lisp/cl-generic.el (cl-defmethod): Make docstring dynamic.
46498 (cl--generic-make-defmethod-docstring): New function for that.
46499 (cl-defmethod, cl-generic-generalizers): Tweak docstrings accordingly.
46500 (cl-generic-define-method, cl--generic-describe): Change `load-history'
46501 format of cl-defmethods, so as not to confused methods with equal
46502 specializers but different qualifiers.
46503 * lisp/emacs-lisp/eieio-core.el (cl-generic-generalizers): Provide docstrings.
46505 2016-07-12 Eli Zaretskii <eliz@gnu.org>
46507 Don't install keyboard hook when debugged on MS-Windows
46509 * src/w32fns.c (setup_w32_kbdhook): Don't install the keyboard
46510 hook if we are being debugged. This avoids hosing the debugger,
46511 because the hook is global, and is called in the context of the
46512 thread which installed it, and that thread is stopped when GDB has
46513 control. Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
46515 2016-07-12 Alan Mackenzie <acm@muc.de>
46517 Amend CC Mode to handle big C++ raw strings correctly.
46519 Problems were caused by such a string spanning jit-lock chunks, and by a flaw
46520 in the +-500 bytes boundaries imposed for macros.
46522 * lisp/progmodes/cc-mode.el (c-extend-region-for-CPP): Check the +-500 byte
46523 macro boundaries here.
46524 (c-extend-font-lock-region-for-macros): Remove the check on the +-500 byte
46525 lower boundary. Fix the check on the upper boundary.
46527 * lisp/progmodes/cc-fonts.el (c-font-lock-raw-strings): Handle the starting
46528 point already being within a raw string.
46530 * lisp/progmodes/cc-engine.el (c-raw-string-pos)
46531 (c-depropertize-raw-strings-in-region, c-after-change-re-mark-raw-strings):
46532 Modify regexp element "\\{,16\\}" to "\\{0,16\\}" for greater compatibility
46533 with other Emacsen.
46535 2016-07-12 Stephen Berman <stephen.berman@gmx.net>
46537 * lisp/mouse.el (mouse-select-region-move-to-beginning): Add :group.
46539 2016-07-11 Dmitry Antipov <dmantipov@yandex.ru>
46543 * src/dispextern.h (toplevel): Remove 'tip_frame' and 'tip_window' decls.
46544 * src/frame.h (struct frame): New bitfield to indicate tooltip frame.
46545 (FRAME_TOOLTIP_P): New macro.
46546 * src/frame.c (make_frame): Mark new frame as regular frame by default.
46547 (Fframe_list, delete_frame): Redesign to use FRAME_TOOLTIP_P.
46548 (syms_of_frame): Don't DEFSYM 'Qtooltip' but use 'Qtooltip_timer'
46549 and 'Qtooltip_parameters' instead.
46550 * src/gtkutil.h (toplevel): Add 'xg_hide_tip' decl.
46551 * src/gtkutil.c (xg_hide_tip): New function.
46552 (xg_hide_tooltip): Adjust to cancel GTK event loop timeout if needed.
46553 * src/menu.c (Fx_popup_menu): Adjust call to Fx_hide_tip.
46554 * src/nsfns.m (toplevel): Remove 'tip_frame' leftover.
46555 * src/w32fns.c (unwind_create_tip_frame): Remove.
46556 (w32_display_monitor_attributes_list)
46557 (w32_display_monitor_attributes_list_fallback): Use FRAME_TOOLTIP_P.
46558 (toplevel): Remove 'tip_frame', 'tip_window' and 'last_show_tip_args'.
46559 (x_create_tip_frame): Use do_unwind_create_frame. Mark new frame
46560 as a tooltip frame and record it using appropriate display info.
46561 (x_hide_tooltip): Add frame arg.
46562 (Fx_show_tip): Adjust to avoid globals, store tooltip parameters among
46563 base frame parameters, store tooltip hide timer among tooltip frame
46565 (Fx_hide_tip): Add frame arg, hide tooltips on all displays by default.
46566 (syms_of_w32fns): Don't DEFSYM 'Qtip_frame', don't initialize
46567 and GC-protect 'tip_timer', 'tip_frame' and 'last_show_tip_args'.
46568 * src/w32term.c (w32_read_socket): Extract tooltip window id from
46569 per-display data. Use FRAME_TOOLTIP_P where appropriate.
46570 (x_new_font): Use FRAME_TOOLTIP_P.
46571 (x_free_frame_resources): Reset pointer to tooltip frame.
46572 * src/w32term.h (struct w32_display_info): New member 'w32_tooltip_frame'.
46573 * src/xdisp.c (init_iterator, x_consider_frame_title, prepare_menu_bars):
46574 Use FRAME_TOOLTIP_P.
46575 * src/xfns.c (x_make_monitor_attribute_list)
46576 (Fx_display_monitor_attributes_list): Likewise.
46577 (unwind_create_tip_frame): Remove.
46578 (toplevel): Remove 'tip_frame', 'tip_window' and 'last_show_tip_args'.
46579 (x_create_tip_frame): Use do_unwind_create_frame. Mark new frame
46580 as a tooltip frame and record it using appropriate display info.
46581 (x_hide_tooltip): Add frame arg.
46582 (Fx_show_tip): Adjust to avoid globals, store tooltip parameters among
46583 base frame parameters, store tooltip hide timer among tooltip frame
46584 parameters. To hide GTK system tooltip, use timeout hooked into GTK
46586 (Fx_hide_tip): Add frame arg, hide tooltips on all displays by default.
46587 (syms_of_xfns): Don't DEFSYM 'Qtip_frame', don't initialize
46588 and GC-protect 'tip_timer', 'tip_frame' and 'last_show_tip_args'.
46589 * src/xterm.c (handle_one_xevent): Extract tooltip window id from
46590 per-display data. Use FRAME_TOOLTIP_P where appropriate.
46591 (x_new_font, x_set_window_size): Use FRAME_TOOLTIP_P.
46592 (x_free_frame_resources): Reset pointer to tooltip frame.
46593 * src/xterm.h (struct x_display_info): New member 'x_tooltip_frame'.
46594 (struct x_output) [USE_GTK_TOOLTIP]: New member 'ttip_timeout'.
46596 2016-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
46598 * src/fns.c (syms_of_fns): Leave `features' lexically scoped
46600 2016-07-11 Mario Lang <mlang@delysid.org>
46604 * test/src/fns-tests.el (fns-tests-mapcan): New test.
46606 2016-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
46608 Prevent to apply funcall on t
46610 * lisp/vc/ediff-util.el (ediff-really-quit): Ignore the global part of
46611 'ediff-after-quit-hook-internal' hook (Bug#23933).
46613 2016-07-11 Tino Calancha <tino.calancha@gmail.com>
46615 Ignore angle mode while simplifying units
46617 * lisp/calc/calc-forms.el (math-to-hms, math-from-hms):
46618 Ignore value of 'calc-angle-mode' when 'math-simplifying-units'
46619 is non-nil (Bug#23889).
46620 * lisp/calc/calc-math.el (math-to-radians, math-from-radians)
46621 (math-from-radians-2, math-to-radians-2): Idem.
46623 2016-07-11 Eli Zaretskii <eliz@gnu.org>
46625 Fix display of composed characters
46627 * src/xdisp.c (x_produce_glyphs): Fix off-by-one error in
46628 iteration through composition glyphs. (Bug#23938)
46630 2016-07-11 Paul Eggert <eggert@cs.ucla.edu>
46632 Fix composition bug caused by off-by-1 typo
46634 * src/xdisp.c (x_produce_glyphs): Fix off-by-one typo when
46635 computing composition glyph (Bug#23938).
46637 2016-07-10 Tino Calancha <tino.calancha@gmail.com>
46639 Dired always read file system
46641 * lisp/dired.el (dired-always-read-filesystem): Add new option.
46642 (dired-mark-files-containing-regexp): Use it (Bug#22694).
46643 * doc/emacs/dired.texi: Mention it in the manual.
46644 * test/lisp/dired-tests.el (dired-test-bug22694): Add test.
46645 ;* etc/NEWS: Add entry for this change.
46647 2016-07-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
46649 * src/macfont.m (mac_font_shape): Make sure that total_advance is increasing.
46651 2016-07-10 Tino Calancha <tino.calancha@gmail.com>
46653 Avoid 'unused var' 'not left unused var' warnings
46655 * lisp/ibuffer.el (ibuffer-locked-buffer-p): Remove unused var 'char'.
46656 Rename used var '_buffer' to 'cbuffer'.
46658 * lisp/ibuf-ext.el (ibuffer-unmark-all): Rename used var '_mark'
46661 2016-07-10 Tino Calancha <tino.calancha@gmail.com>
46663 * lisp/simple.el (shell-command, shell-command-on-region): Fix doc strings
46665 2016-07-10 Michael Albinus <michael.albinus@gmx.de>
46667 Add a note how to use `tramp-own-remote-path'
46669 * doc/misc/tramp.texi (Inline methods, External methods)
46670 (Remote shell setup, Android shell setup)
46671 (Frequently Asked Questions, Frequently Asked Questions):
46672 Use @command and @samp consequently.
46673 (Remote programs): The remote shell must support the -l
46674 argument, in order to use `tramp-own-remote-path'. (Bug#23914)
46676 2016-07-10 Alan Third <alan@idiocy.org>
46678 Remove App Nap setting from Info.plist (bug#22993)
46680 * nextstep/templates/Info.plist.in: Remove LSAppNapIsDisabled key since
46681 it doesn't actually disable app nap.
46683 2016-07-09 Mario Lang <mlang@delysid.org>
46685 An efficient built-in mapcan
46687 A built-in version of `mapcan' avoids consing up (and GC'ing) the
46690 * src/fns.c (Fmapcan): New built-in.
46691 (syms_of_fns): Define.
46693 * lisp/emacs-lisp/cl.el (mapcan): Remove defalias.
46695 * lisp/emacs-lisp/cl-extra.el (cl-mapcan): Use built-in `mapcan'
46696 if only one sequence is provided.
46698 * lisp/progmodes/hideif.el (hif-delimit):
46699 * lisp/dired-aux.el (dired-do-find-regexp):
46700 * lisp/woman.el (woman-parse-colon-path): Use `mapcan' instead of
46703 * lisp/woman.el (eval-when-compile): Require 'cl-lib only when
46706 * lisp/mouse.el (mouse-buffer-menu-map):
46707 * lisp/net/pop3.el (pop3-uidl-dele):
46708 * lisp/progmodes/gud.el (gud-jdb-build-source-files-list):
46709 * lisp/cedet/semantic/db-find.el (semanticdb-fast-strip-find-results):
46710 * lisp/cedet/semantic/symref/grep.el (semantic-symref-derive-find-filepatterns):
46711 * lisp/gnus/nnmail.el (nnmail-split-it):
46712 * lisp/gnus/gnus-sum.el (gnus-articles-in-thread):
46713 * lisp/gnus/gnus-registry.el (gnus-registry-sort-addresses):
46714 * lisp/gnus/gnus-util.el (gnus-mapcar): Use `mapcan'.
46716 2016-07-09 Tino Calancha <tino.calancha@gmail.com>
46718 Detect aliases to built-in functions
46720 * lisp/help-fns.el (describe-function-1): Check for aliases
46721 defined with (defalias alias (symbol-function built-in)) (Bug#23887).
46723 * test/lisp/help-fns-tests.el (help-fns-test-bug23887): Untag as
46726 2016-07-09 Michael Albinus <michael.albinus@gmx.de>
46728 Avoid recursive detection of remote uid and gid in tramp-gvfs.el
46730 * lisp/net/tramp-gvfs.el (tramp-gvfs-get-remote-uid-gid-in-progress):
46732 (tramp-gvfs-maybe-open-connection): Use it.
46734 * test/lisp/net/tramp-tests.el (tramp-test18-file-attributes):
46737 2016-07-09 Jürgen Hötzel <juergen@archlinux.org>
46739 Wrap around error in coreutil's ls
46741 * lisp/net/tramp-sh.el (tramp-sh-handle-insert-directory): Add switch
46742 "--quoting-style=literal" if remote host supports quoting style.
46743 Recent versions of coreutils changed default quoting style to
46744 "--quoting=shell-escape".
46746 2016-07-09 Eli Zaretskii <eliz@gnu.org>
46748 Minor tweaks of copying text properties when padding strings
46750 * src/editfns.c (styled_format): Don't include padding on the left
46751 in the properties at the beginning of the string. (Bug#23897)
46753 * test/src/editfns-tests.el (format-properties): Add tests for
46754 faces when the string is padded on the left or on the right.
46756 2016-07-08 Mario Lang <mlang@delysid.org>
46758 No need to require the same feature twice.
46760 * lisp/dired-aux.el (require 'cl-lib): Remove.
46762 2016-07-08 Mark Oteiza <mvoteiza@udel.edu>
46764 Turn on lexical binding
46766 * lisp/net/secrets.el (secrets-collection-handler): Use cl-pushnew.
46767 (secrets-search-items, secrets-create-item): Use append.
46768 (secrets-show-secrets): Remove unused binding.
46769 (secrets-expand-item, secrets-tree-widget-after-toggle-function):
46770 Ignore unused arguments.
46772 2016-07-08 Mark Oteiza <mvoteiza@udel.edu>
46774 Derive secrets-mode from special-mode
46776 * lisp/net/secrets.el: Remove top-level secrets-mode hack.
46777 (secrets-mode-map): New variable. Add key bindings to n and p for
46779 (secrets-mode): Derive from special-mode. Remove keymap code and
46780 initialization code. Do not record undo information. Make
46781 secrets-show-collections the local revert-buffer-function.
46782 (secrets-show-collections): Change signature to satisfy revert-buffer.
46784 2016-07-08 Mark Oteiza <mvoteiza@udel.edu>
46786 Add a couple cells to lisp-prettify-symbols-alist
46788 * lisp/emacs-lisp/lisp-mode.el (lisp-prettify-symbols-alist): Add
46791 2016-07-08 Michael Albinus <michael.albinus@gmx.de>
46793 Detect remote uid and gid in tramp-gvfs.el
46795 * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-expand-file-name)
46796 (tramp-gvfs-handler-mounted-unmounted)
46797 (tramp-gvfs-connection-mounted-p):
46798 Make "default-location" a connection property.
46799 (tramp-gvfs-get-remote-uid, tramp-gvfs-get-remote-gid): New defuns.
46800 (tramp-gvfs-maybe-open-connection): Use them.
46802 2016-07-08 Eli Zaretskii <eliz@gnu.org>
46804 Yet another fix for copying properties by 'format'
46806 * src/textprop.c (extend_property_ranges): Accept an additional
46807 argument OLD_END, and only extend the end of a property range if
46808 its original end is at OLD_END; all the other ranges are left
46809 intact. (Bug#23897)
46810 * src/editfns.c (styled_format): Pass the original length of the
46811 string to 'extend_property_ranges'.
46812 * src/intervals.h (extend_property_ranges): Adjust prototype.
46814 * test/src/editfns-tests.el (format-properties): Add tests for
46817 2016-07-08 Stephen Berman <stephen.berman@gmx.net>
46819 Allow selecting region with mouse to move point to beginning
46821 * etc/NEWS: Mention new user option
46822 `mouse-select-region-move-to-beginning'.
46824 * doc/emacs/frames.texi (Mouse Commands): Add cross-reference
46826 (Word and Line Mouse): Describe how double-clicking mouse-1 to
46827 activate region and `mouse-select-region-move-to-beginning'
46830 * lisp/mouse.el (mouse-select-region-move-to-beginning): New defcustom.
46831 (mouse-set-point): Use it. (Bug#23478)
46833 2016-07-08 Stephen Berman <stephen.berman@gmx.net>
46835 Fix menu bar breakage
46837 * lisp/menu-bar.el (menu-bar-showhide-scroll-bar-menu): Use backquoting
46838 to prevent void variable errors, and fix typo (bug#23918).
46840 2016-07-08 Tino Calancha <tino.calancha@gmail.com>
46842 Copy buffer names to kill ring
46844 * lisp/ibuf-ext.el (ibuffer-copy-buffername-as-kill): New command.
46845 * lisp/ibuffer.el (ibuffer-mode-map): Bound it to 'B'.
46846 ;* etc/NEWS: Add entry for this new feature.
46848 2016-07-07 Tino Calancha <tino.calancha@gmail.com>
46850 Remove just input mark
46852 * lisp/ibuffer.el (ibuffer-unmark-all): When MARK is not ?\r remove
46855 2016-07-07 Tino Calancha <tino.calancha@gmail.com>
46857 Ibuffer change marks
46859 * lisp/ibuffer.el (ibuffer-change-marks): New command.
46860 (ibuffer-mode-map): Bind it to '* c'.
46861 (ibuffer-mode-groups-popup): Update menus.
46862 (ibuffer-mode): Update mode doc.
46864 2016-07-07 Alan Third <alan@idiocy.org>
46866 Prevent NS event loop being re-entered (bug#11049)
46868 * src/nsterm.m (ns_read_socket, ns_select): Return -1 if already
46869 in event loop instead of aborting.
46871 2016-07-07 Alan Third <alan@idiocy.org>
46873 Fix some deprecated functions
46875 * src/nsterm.m (firstRectForCharacterRange): In OS X >10.6 replace
46876 convertBaseToScreen with convertRectToScreen.
46877 * src/nsmenu.m (ns_update_menubar): Remove attachedMenu, deprecated in
46878 OS X 10.2, and always seems to return nil.
46880 2016-07-07 Aaron Jensen <aaronjensen@gmail.com> (tiny change)
46882 Disable App Nap (bug#22993)
46884 * nextstep/templates/Info.plist.in: Insert AppNap disable code.
46886 2016-07-07 Michael Albinus <michael.albinus@gmx.de>
46888 Fix an error in Tramp for rsync
46890 * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
46891 Make it work for "rsync".
46892 (tramp-make-copy-program-file-name): Apply `directory-file-name'.
46894 2016-07-07 Tino Calancha <tino.calancha@gmail.com>
46896 Ibuffer: Mark locked buffers
46898 * lisp/ibuf-ext.el (ibuffer-locked-buffer-p): New defun.
46899 (ibuffer-mark-by-locked): New command.
46900 (ibuffer-mode-map): Bind it to '% L'; update menus.
46901 (ibuffer-mode): Update mode doc.
46902 ;* etc/NEWS: Add NEWS entry for these changes and previous two commits.
46904 2016-07-07 Tino Calancha <tino.calancha@gmail.com>
46906 * lisp/ibuffer.el: Add face for locked buffers
46908 * lisp/ibuffer.el: Add mark for locked buffers
46910 ;* etc/NEWS (Ibuffer): Update entry according with last commit
46912 2016-07-07 Tino Calancha <tino.calancha@gmail.com>
46914 Remove duplicate binding
46916 * lisp/ibuffer.el (ibuffer-mode-map): 'ibuffer-mark-by-content-regexp'
46917 just bound to '% g'.
46919 https://lists.gnu.org/r/emacs-devel/2016-07/msg00165.html
46921 2016-07-07 Tino Calancha <tino.calancha@gmail.com>
46923 Ibuffer: Drop needless binding
46925 * lisp/ibuffer.el (ibuffer-mark-interactive): 'inhibit-read-only'
46926 already bound to 't' inside 'ibuffer-set-mark'.
46928 2016-07-07 Phillip Lord <phillip.lord@russet.org.uk>
46930 Run tests from non-byte compiled files
46932 * test/Makefile.in: Eval non-byte-compiled files for tests.
46934 2016-07-06 Mark Oteiza <mvoteiza@udel.edu>
46936 Replace eldoc-documentation-function with a hook
46938 * lisp/emacs-lisp/eldoc.el (eldoc-documentation-functions): New hook.
46939 (eldoc-documentation-function): Make into obsolete alias.
46940 (eldoc-echo-area-use-multiline-p, eldoc-highlight-function-argument):
46941 (eldoc-argument-case, global-eldoc-mode): Update docstrings.
46942 (eldoc-print-current-symbol-info): Use run-hook-with-args-until-success
46943 on eldoc-documentation-functions.
46944 (eldoc-supported-p): New function.
46945 (eldoc-mode, global-eldoc-mode, eldoc-schedule-timer): Use eldoc-supported-p.
46946 * etc/NEWS: Mention eldoc-documentation-functions.
46947 * doc/lispref/modes.texi: Update reference.
46949 2016-07-06 Simen Heggestøyl <simenheg@gmail.com>
46951 Complete "initial" and "unset" in CSS mode
46953 * lisp/textmodes/css-mode.el (css--complete-property-value): Make
46954 "initial" and "unset" completion candidates for all CSS properties,
46955 just like "inherit".
46957 * test/lisp/textmodes/css-mode-tests.el
46958 (css-test-complete-property-value): Update test to reflect the above
46961 2016-07-06 Michael Albinus <michael.albinus@gmx.de>
46963 * lisp/net/tramp-gvfs.el (tramp-gvfs-mount-spec): Fix typo.
46965 2016-07-06 Paul Eggert <eggert@cs.ucla.edu>
46967 Simplify rfc1345.el a bit
46969 * lisp/leim/quail/rfc1345.el: Omit commented-out codes for ASCII
46970 that would no longer parse. Replace control characters with
46971 escapes in character constants. Omit unnecessary \ after ?.
46972 This does not change behavior.
46974 2016-07-05 Dmitry Antipov <dmantipov@yandex.ru>
46976 Prefer 'frame-parameter' where it is expected to be a bit faster
46978 * lisp/international/mule-diag.el (mule-diag):
46979 * lisp/menu-bar.el (menu-bar-showhide-scroll-bar-menu):
46980 * lisp/mouse.el (mouse-drag-line, font-menu-add-default):
46981 * lisp/scroll-bar.el (toggle-scroll-bar, toggle-horizontal-scroll-bar):
46982 * lisp/faces.el (x-resolve-font-name): Use 'frame-parameter'.
46984 2016-07-05 Dmitry Antipov <dmantipov@yandex.ru>
46986 Reduce consing caused by vertical motion commands
46988 * src/frame.c (Fframe_parameter): Avoid call to Fframe_parameters for the
46989 parameters frequently requested by calls to 'next-line' and 'previous-line'.
46991 2016-07-05 Michael Albinus <michael.albinus@gmx.de>
46993 Make all Tramp tests pass for "gdrive" method
46995 * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-delete-directory)
46996 * lisp/net/tramp-compat.el (tramp-compat-copy-directory)
46997 (tramp-compat-delete-directory):
46998 * lisp/net/tramp-smb.el (tramp-smb-handle-delete-directory):
46999 Use `directory-files-no-dot-files-regexp'.
47001 * lisp/net/tramp-gvfs.el (tramp-gvfs-handler-mounted-unmounted)
47002 (tramp-gvfs-send-command): Call `tramp-flush-file-property' in
47005 * test/lisp/net/tramp-tests.el (tramp--instrument-test-case):
47007 (tramp-test14-delete-directory): Make further tests.
47009 2016-07-05 Eli Zaretskii <eliz@gnu.org>
47011 Fix redisplay with window-start on continuation lines
47013 * src/xdisp.c (pos_visible_p): Return false if the window starts
47015 (compute_window_start_on_continuation_line): Don't return
47016 window-start position that is after point in the buffer, as the
47017 callers don't expect this to happen, and will generally display an
47018 empty window with the cursor in its middle. (Bug#23871)
47020 2016-07-05 Tino Calancha <tino.calancha@gmail.com>
47022 Add :expected-result :failed for unfixed bug test
47024 * test/lisp/help-fns-tests.el (help-fns-test-bug23887):
47026 2016-07-05 Tino Calancha <tino.calancha@gmail.com>
47028 * test/lisp/help-fns-tests.el: Add several tests for 'describe-function'.
47030 2016-07-04 Michal Nazarewicz <mina86@mina86.com>
47032 Don’t create unnecessary marker in ‘delete-trailing-whitespace’
47034 * lisp/simple.el (delete-trailing-whitespace): If END argument is nil,
47035 there is no need for the end-marker to be created.
47037 2016-07-04 Michal Nazarewicz <mina86@mina86.com>
47039 Simplify ‘delete-trailing-whitespace’ by not treating \n as whitespace
47041 * lisp/simple.el (delete-trailing-whitespace): Set newline’s character
47042 syntax to non-whitespace so that ‘\s-’ regular expression does not match
47045 This simplifies the loop slightly since a simple ‘\s-+$’ can be used and
47046 as a consequence ‘line-beginning-position’ function does not need to be
47049 Furthermore, when newline has whitespace syntax, ‘\s-$’ regular
47050 expression ends up matching empty lins since ‘\s-’ matches newline
47051 characetr of proceeding line. This leads to needless loop iterations.
47053 Since previous change to ‘delete-trailing-whitespace’ already introduced
47054 ‘with-syntax-table’, take advantage of it and also overwrite newline’s
47057 2016-07-04 Michal Nazarewicz <mina86@mina86.com>
47059 Make ‘delete-trailing-whitespace’ delete spaces after form feed
47061 * lisp/simple.el (delete-trailing-whitespace): Treat form fead as
47062 a non-whitespace character (regradless of whether it’s character syntax
47063 is whitespace) and delete any whitespace following it instead of leaving
47064 lines with form feeds completely unchanged. I.e. a line like "\f " will
47067 2016-07-04 Dmitry Antipov <dmantipov@yandex.ru>
47069 Cleanup XEditRes hack
47071 * configure.ac [USE_X_TOOLKIT]: Define X_TOOLKIT_EDITRES if
47072 _XEditResCheckMessages is declared in X11/Xmu/Editres.h and may be
47073 linked with -lXmu. This should work with any non-ancient Xmu library.
47074 * src/xfns.c (toplevel): Remove old cruft.
47075 (x_window) [USE_X_TOOLKIT]: Use X_TOOLKIT_EDITRES.
47076 * src/xterm.c (toplevel): Remove old cruft.
47077 (handle_one_xevent): Use X_TOOLKIT_EDITRES.
47078 * src/xterm.h (toplevel): Include X11/Xmu/Editres.h if X_TOOLKIT_EDITRES.
47080 2016-07-04 Michael Albinus <michael.albinus@gmx.de>
47082 Add Google Drive support to Tramp
47084 * doc/misc/tramp.texi: Add `gdrive' method.
47086 * doc/misc/trampver.texi:
47087 * lisp/net/trampver.el: Change version to "2.3.1-pre".
47089 * etc/NEWS: Add Tramp connection method "gdrive".
47091 * lisp/net/tramp-gvfs.el (tramp-gvfs-methods) <gdrive>: Add.
47092 (tramp-default-user-alist, tramp-default-host-alist): Add rule
47094 (tramp-gvfs-file-attributes): Add "name", remove "standard::icon".
47095 (tramp-gvfs-file-attributes-with-gvfs-ls-regexp): Simplify regexp.
47096 (tramp-gvfs-get-directory-attributes): Improve loop. Use
47097 "standard::display-name" as file name, if available.
47098 (tramp-gvfs-handle-file-name-all-completions): Simplify.
47099 (tramp-gvfs-url-file-name, tramp-gvfs-handler-mounted-unmounted)
47100 (tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec):
47101 Map between "gdrive" and "google-drive".
47103 * lisp/net/tramp.el (tramp-call-process): Do not signal error.
47105 * test/lisp/net/tramp-tests.el (tramp--instrument-test-case):
47106 Do not enable `tramp-message-show-message'.
47107 (tramp-test13-make-directory, tramp-test14-delete-directory):
47108 Do not specify error type.
47110 2016-07-04 Tino Calancha <tino.calancha@gmail.com>
47112 Calc: Update mode line after change mode
47114 * lisp/calc/calc-ext.el (calc-change-mode): Call 'calc-set-mode-line'.
47116 2016-07-03 Mark Oteiza <mvoteiza@udel.edu>
47118 * lisp/simple.el (save-mark-and-excursion): Add declare forms.
47120 2016-07-03 Paul Eggert <eggert@cs.ucla.edu>
47122 Re-fix open-network-stream responsiveness
47124 Problem reported by Christer Ekholm (Bug#23864).
47125 * src/process.c (wait_reading_process_output): Further fix for
47126 typo introduced in 2015-07-06T02:19:13Z!eggert@cs.ucla.edu when
47127 wait == INFINITY and got_output_end_time is invalid. See:
47128 https://bugs.gnu.org/23864#20
47130 2016-07-03 Alan Mackenzie <acm@muc.de>
47132 Remove redundant forms from CC Mode for faster fontification
47134 * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Remove four arms of
47135 the "main" cond form in the function, which have been redundant since the
47136 extraction of c-font-lock-cut-off-declarators from the function on
47139 2016-07-03 Alan Mackenzie <acm@muc.de>
47141 Speed up CC Mode fontification with less accurate functions extending region
47143 * lisp/progmodes/cc-fonts.el (c-font-lock-cut-off-declarators)
47144 (c-font-lock-enclosing-decls)
47145 * lisp/progmodes/cc-mode.el (c-fl-decl-start): Replace invocations of
47146 c-beginning-of-decl-1 with less accurate invocations of
47147 c-syntactic-skip-backwards to speed up fontification.
47149 2016-07-03 Tino Calancha <tino.calancha@gmail.com>
47151 Ibuffer: unmark all buffers without confirmation
47153 * lisp/ibuffer.el (ibuffer-unmark-all-marks): New command (Bug#23680).
47154 (ibuffer-mouse-popup-menu): Use it.
47155 (ibuffer-mode): Update mode doc.
47156 (ibuffer-mode-map): Bind 'ibuffer-unmark-all-marks' to 'U'.
47157 Rebind 'ibuffer-do-replace-regexp' to 'r'.
47159 2016-07-03 Paul Eggert <eggert@cs.ucla.edu>
47161 Fix open-network-stream responsiveness
47163 Problem reported by Constantin Kulikov (Bug#23684).
47164 * src/process.c (wait_reading_process_output):
47165 Fix typo introduced in 2015-07-06T02:19:13Z!eggert@cs.ucla.edu
47166 when wait == INFINITY and got_output_end_time is invalid.
47167 In this case the code should break, not continue.
47169 2016-07-02 Tino Calancha <tino.calancha@gmail.com>
47171 Ibuffer: Mark buffers by content
47173 * lisp/ibuf-ext.el (ibuffer-mark-by-content-regexp): New command.
47174 (ibuffer-never-search-content-name): New option.
47175 (ibuffer-never-search-content-mode): Idem.
47176 (ibuffer-mark-by-content-regexp): Use them (Bug#23734).
47178 * lisp/ibuffer.el (ibuffer-mode-map): Bind new command to '% c' and '% g'.
47179 (ibuffer-mode): Update mode documentation.
47181 2016-07-02 Tino Calancha <tino.calancha@gmail.com>
47183 ibuffer-copy-filename-as-kill verbosity increase
47185 * lisp/ibuf-ext.el (ibuffer-copy-filename-as-kill):
47186 Use shorter name, result, for a local bound var.
47187 Show the string result in the echo area.
47189 2016-07-02 Eli Zaretskii <eliz@gnu.org>
47191 Fix cursor positioning on TTY frames after stretch glyph
47193 * src/term.c (append_glyph, append_composite_glyph)
47194 (append_glyphless_glyph): Set the avoid_cursor_p and multibyte_p
47195 members of the produced 'struct glyph'. Fixes cursor positioning
47196 on the first character after a stretch glyph produced from
47197 line-prefix, wrap-prefix, etc. on TTY frames.
47199 2016-07-02 Eli Zaretskii <eliz@gnu.org>
47201 Fix vertical-movement in buffers with wrap-prefix
47203 * src/indent.c (Fvertical_motion): Zero the current_y coordinate
47204 whenever we zero the vpos vertical position of the iterator.
47205 * src/xdisp.c (move_it_in_display_line_to): Handle line-prefix and
47206 wrap-prefix regardless of whether the current Y coordinate is
47207 inside the window dimensions. (Bug#23879)
47209 2016-07-02 Eli Zaretskii <eliz@gnu.org>
47211 Rename FACE_OPT_FROM_ID to FACE_FROM_ID_OR_NULL
47213 * src/dispextern.h (FACE_FROM_ID_OR_NULL): Renamed from
47214 FACE_OPT_FROM_ID; all callers changed.
47215 * src/xdisp.c (extend_face_to_end_of_line): Call FACE_FROM_ID, not
47216 FACE_FROM_ID_OR_NULL, as the resulting face is immediately
47218 (fill_gstring_glyph_string): Call FACE_FROM_ID, not
47219 FACE_FROM_ID_OR_NULL, as the resulting face will be dereferenced
47220 when the glyph string is drawn.
47221 (BUILD_COMPOSITE_GLYPH_STRING): Call FACE_FROM_ID, not
47222 FACE_FROM_ID_OR_NULL, as the resulting face will be dereferenced
47223 in fill_composite_glyph_string.
47224 (calc_line_height_property): Call FACE_FROM_ID_OR_NULL rather that
47225 FACE_FROM_ID, since the function and its caller can cope with that
47226 situation. Conflate 3 tests of missing face or font into just
47228 * src/xfaces.c (Fx_list_fonts, Fface_font, lookup_face): Call
47229 FACE_FROM_ID_OR_NULL rather that FACE_FROM_ID, since these
47230 functions can cope with that situation.
47231 (lookup_derived_face): Don't call FACE_FROM_ID if the result will
47233 * src/w32console.c (w32_face_attributes): Remove redundant 'eassert'.
47235 2016-07-01 Mark Oteiza <mvoteiza@udel.edu>
47237 * lisp/gnus/gnus-art.el (gnus-article-send-map): Remove extra quote.
47239 2016-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
47241 * lisp/auth-source.el (auth-source--symbol-keyword): Fix namespace
47243 i.e. rename from auto-source--symbol-keyword.
47245 2016-07-01 Dmitry Antipov <dmantipov@yandex.ru>
47247 Avoid yet another possible NULL pointer dereference found by GCC 6.1.1
47249 * lwlib/lwlib.c (lw_get_all_values): Always check the value returned by
47252 2016-06-30 Alan Mackenzie <acm@muc.de>
47254 CC Mode: truncate the semi-nonlit cache when applying syntax-table to a quote
47256 This applies to applying or removing syntax-table text properties in raw
47257 strings which affect the stringiness of a piece of text. This fixes the
47260 https://lists.gnu.org/r/emacs-devel/2016-06/msg00695.html.
47262 * lisp/progmodes/cc-engine.el (c-truncate-semi-nonlit-pos-cache): new
47264 (c-invalidate-state-cache-1): Call new function in place of inline
47266 (c-depropertize-raw-string, c-propertize-raw-string-opener): truncate the
47267 semi-nonlit cache when pertinent syntax-table text properties get applied to
47270 2016-06-29 Dmitry Antipov <dmantipov@yandex.ru>
47272 Minor tweaks to openp
47274 * src/lread.c (openp): Move invariant code out of the loop
47275 and thus avoid redundant calls to memcpy. Adjust comments.
47277 2016-06-29 Dmitry Antipov <dmantipov@yandex.ru>
47279 Simplify handling of frame parameters
47281 * src/frame.c (x_set_frame_parameters): Avoid extra loop processing
47282 foreground color, background color and font parameters. Adjust
47285 2016-06-29 Dmitry Antipov <dmantipov@yandex.ru>
47287 Cleanup around mature character manipulation functions
47289 * lisp/international/mule-diag.el (decode-codepage-char): Remove.
47291 * lisp/ldefs-boot.el (toplevel): Adjust accordingly.
47293 * lisp/subr.el (toplevel): Do not advertise calling conventions
47294 for 'decode-char' and 'encode-char'.
47296 * src/charset.c (Fdecode_char, Fencode_char): Remove unused 3rd arg.
47298 2016-06-29 Alan Mackenzie <acm@muc.de>
47300 Fix C-M-a in a C function finding the start of a macro preceding it.
47302 Also amend some pertinent documentation. This fixes bug #23818.
47304 * lisp/progmodes/cc-engine.el (c-beginning-of-decl-1): Also check for a
47305 virtual semicolon at a place where we check for other types of statement ends.
47307 * lisp/progmodes/cc-vars.el (c-macro-nacmes-with-semicolon): Remove from the
47308 doc string the bit saying that the variable is a prototype and liable to
47311 * doc/misc/cc-mode.texi (Macros with ;): Enhance, stating that configuring
47312 macros with semicolon can prevent C-M-a missing the beginning of defun.
47314 2016-06-28 Dmitry Antipov <dmantipov@yandex.ru>
47316 Avoid possible NULL pointer dereference found by GCC 6.1.1
47318 * src/xfns.c (x_get_monitor_attributes_xrandr): Always check
47319 the value returned by XRRGetOutputInfo.
47321 2016-06-28 Tino Calancha <tino.calancha@gmail.com>
47323 Dired recognize dirs when file size in human units
47325 * lisp/dired.el (dired-re-inode-size): Update 'dired-re-inode-size'
47326 to match when Dired displays the allocated file size column
47327 in human readable units (Bug#22255).
47329 2016-06-28 Mark Oteiza <mvoteiza@udel.edu>
47331 Fix breakage from previous change
47333 * lisp/textmodes/tex-mode.el (tex-font-lock-keywords-1):
47334 * lisp/vc/log-view.el (log-view-font-lock-keywords): Quote face.
47336 2016-06-28 Mark Oteiza <mvoteiza@udel.edu>
47338 Fix breakage from previous change.
47340 * lisp/textmodes/texinfo.el (texinfo-font-lock-keywords): Quote face.
47342 2016-06-28 Eli Zaretskii <eliz@gnu.org>
47344 Add tests for copying properties by 'format'
47346 * test/src/editfns-tests.el (format-properties): New test.
47348 2016-06-28 Eli Zaretskii <eliz@gnu.org>
47350 Fix copying properties in 'format' when it produces padding
47352 * src/textprop.c (extend_property_ranges): Correct range extension
47353 when the new end is beyond the old end. (Bug#23859)
47355 2016-06-27 Alan Third <alan@idiocy.org>
47357 Enable dividers in NS (bug#22973)
47359 src/nsfns.m: Add color settings functions to ns_frame_park_handlers.
47360 src/nsterm.m (ns_draw_window_divider): ns_focus has to go before the
47361 attempt to set the color.
47362 src/nsterm.m (ns_draw_vertical_window_border): This had the same bug as
47363 above, although I didn't see any errors.
47365 2016-06-27 Lars Magne Ingebrigtsen <larsi@gnus.org>
47367 Fix the prefix action of shr-copy-url
47369 * lisp/net/shr.el (shr-copy-url): Make the command really copy
47370 the image url if given a prefix.
47372 2016-06-27 Lars Magne Ingebrigtsen <larsi@gnus.org>
47374 New functions svg-text and svg-remove
47376 * doc/lispref/display.texi (SVG Images): Document svg-remove.
47378 * doc/lispref/display.texi (SVG Images): Document svg-text.
47380 * lisp/svg.el (svg-remove): New function.
47381 (svg-text): New function.
47383 2016-06-27 Lars Magne Ingebrigtsen <larsi@gnus.org>
47385 Add new function dom-remove-node
47387 * doc/lispref/text.texi (Document Object Model): Document
47390 * lisp/dom.el (dom-remove-node): New function.
47392 2016-06-27 Lars Magne Ingebrigtsen <larsi@gnus.org>
47394 Add a new function `svg-embed'
47396 * doc/lispref/display.texi (SVG Images): Document `svg-embed'.
47398 * lisp/svg.el (svg-embed): New function.
47399 (svg--image-data): Ditto.
47401 2016-06-27 Eli Zaretskii <eliz@gnu.org>
47403 * lisp/descr-text.el (describe-char-unicode-data): Fix copy/paste errors.
47405 2016-06-27 Eli Zaretskii <eliz@gnu.org>
47407 Fix 'move-to-window-line' when EOB is on last screen line
47409 * src/window.c (displayed_window_lines): Fix an off-by-one error
47410 when the bottom of the last display line is exactly at window's
47411 last pixel. Remove kludgey fix for TTY frames that is no longer
47412 needed. (Bug#15760)
47413 (Fmove_to_window_line): Doc fix.
47415 * doc/lispref/positions.texi (Screen Lines): Clarify and make more
47416 accurate the documentation of 'move-to-window-line'.
47418 2016-06-27 Alan Mackenzie <acm@muc.de>
47420 Amend a cache so that typing into C++ raw strings has no undue delay.
47422 Also amend the code so that low-level searches to the end of literals are done
47423 only when these positions get used.
47425 * lisp/progmodes/cc-engine.el (c-crosses-statement-barrier-p): Use the new
47426 c-literal-start instead of c-literal-limit.
47427 (c-state-semi-nonlit-pos-cache): Change the structure of this cache, such that
47428 it stores details of the literal at a point, rather than merely points outside
47430 (c-state-semi-pp-to-literal, c-state-full-pp-to-literal)
47431 (c-cache-to-parse-ps-state, c-parse-ps-state-to-cache, c-ps-state-cache-pos)
47432 (c-parse-ps-state-below, c-literal-start): New functions.
47433 (c-state-semi-safe-place): Removed.
47434 (c-in-literal): Use c-state-semi-pp-to-literal, so as not to scan to its end.
47435 (c-literal-limits, c-determine-limit-get-base): consequential amendments.
47436 (c-find-decl-spots, c-before-change-check-<>-operators, c-raw-string-pos)
47437 (c-guess-basic-syntax (CASE 2)): Avoid needless scans to end of literals.
47439 * lisp/progmodes/cc-fonts.el (c-font-lock-doc-comments): Avoid needless scans
47440 to end of literals.
47442 * lisp/progmodes/cc-mode.el (c-fl-decl-start): Avoid needless scans to end of
47445 * lisp/progmodes/cc-cmds.el (c-beginning-of-defun, c-end-of-defun)
47446 (c-defun-name, c-declaration-limits): Avoid needless scans to end of literals.
47448 2016-06-26 Dmitry Gutov <dgutov@yandex.ru>
47450 Also handle escaping when string begins with a quote
47452 * lisp/progmodes/ruby-mode.el (ruby-toggle-string-quotes):
47453 Handle quoting of the first character in the string.
47455 * test/lisp/progmodes/ruby-mode-tests.el
47456 (ruby-toggle-string-quotes-quotes-correctly): Update.
47458 2016-06-26 Sriram Thaiyar <sriram.thaiyar@gmail.com> (tiny change)
47460 Fix quote escaping in ruby-toggle-string-quotes
47462 * lisp/progmodes/ruby-mode.el (ruby-toggle-string-quotes):
47463 Change logic to quote based on the current quote of the string.
47465 * test/lisp/progmodes/ruby-mode-tests.el
47466 (ruby-toggle-string-quotes-quotes-correctly): Add test.
47468 2016-06-26 Noam Postavsky <npostavs@gmail.com>
47470 Fix test-completion with completion-regexp-list
47472 * src/minibuf.c (Ftest_completion): Handle alist COLLECTION with non-nil
47473 completion-regexp-list (Bug #23533).
47475 2016-06-26 Paul Eggert <eggert@cs.ucla.edu>
47477 Try other addresses when connecting to multihomed
47479 Problem reported by Juliusz Chroboczek (Bug#17976)
47480 and by Artur Malabarba (Bug#23620).
47481 Patch from a suggestion by Andreas Schwab in:
47482 https://bugs.gnu.org/17976#39
47483 This patch is for non-MS-Windows platforms.
47484 I don't know the situation on MS-Windows.
47485 * src/process.c (connecting_status):
47486 New function, for (connect . ADDRINFOS).
47487 (connect_network_socket, check_for_dns, wait_for_socket_fds)
47488 (wait_while_connecting, wait_reading_process_output, status_notify):
47490 (decode_status, Fmake_network_process):
47491 Support (connect . ADDRINFOS) status.
47492 (connect_network_socket) [!WINDOWSNT]:
47493 If the connection failed and there are other addresses to try, do not
47494 signal an error; instead, loop around to try the next address.
47495 (wait_reading_process_output): Advance to the next address
47496 if there are multiple addresses and the first remaining address
47498 * src/process.h (struct Lisp_Process.status): Adjust comment
47499 to describe (connect . ADDRINFOS).
47501 2016-06-26 Paul Eggert <eggert@cs.ucla.edu>
47503 Fix GNUC_PREREQ for GCC 2.8.1 etc.
47505 Problem reported by Eli Zaretskii in:
47506 https://lists.gnu.org/r/emacs-devel/2016-06/msg00608.html
47507 * src/conf_post.h (GNUC_PREREQ): Port to GCC versions like GCC
47508 2.8.1 (1998), which come before GCC 3.0 and which have nonzero
47509 patchlevel numbers.
47511 2016-06-26 Eli Zaretskii <eliz@gnu.org>
47513 Don't set 'bidi-paragraph-direction' in 'ansi-term'
47515 * lisp/term.el (ansi-term): Remove unnecessary setting of
47516 'bidi-paragraph-direction'. The underlying problem is solved in
47517 bidi.c by changing the regexps that define the paragraph beginning
47518 and end. (Bug#20611)
47520 2016-06-26 Michael Albinus <michael.albinus@gmx.de>
47522 Sync with Tramp 2.3.0
47524 * doc/misc/trampver.texi:
47525 * lisp/net/trampver.el: Change version to "2.3.0".
47527 2016-06-26 Paul Eggert <eggert@cs.ucla.edu>
47529 Fix GNUC_PREREQ off-by-1 typo
47531 Problem reported by Martin Rudalics in:
47532 https://lists.gnu.org/r/emacs-devel/2016-06/msg00587.html
47533 * src/conf_post.h (GNUC_PREREQ) [__GNUC_PATCHLEVEL__]:
47536 2016-06-26 Michael Albinus <michael.albinus@gmx.de>
47538 Fix some oddities in Tramp's rsync and smb methods
47540 * lisp/net/tramp-sh.el (tramp-methods) <rsync>: Add "-p" and
47542 (tramp-do-copy-or-rename-file-out-of-band):
47543 Call `file-name-directory' also for remote NEWNAME.
47545 * test/lisp/net/tramp-tests.el (tramp-test15-copy-directory):
47546 Do not skip for tramp-smb.el. Test als COPY-CONTENTS case.
47547 (tramp-test24-file-name-completion): Improve check for
47548 hostname completion.
47549 (tramp--test-rsync-p): New defun.
47550 (tramp-test31-special-characters)
47551 (tramp-test31-special-characters-with-stat)
47552 (tramp-test31-special-characters-with-perl)
47553 (tramp-test31-special-characters-with-ls, tramp-test32-utf8)
47554 (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
47555 (tramp-test32-utf8-with-ls): Skip for "rsync".
47557 * lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory):
47558 Check also for CIFS capabilities.
47560 2016-06-26 Ury Marshak <ury.marshak@gmail.com> (tiny change)
47562 Fix FRAME_INTERNAL_BORDER_WIDTH use (Bug#23841)
47564 * src/nsfns.m (x_set_internal_border_width): Replace assignments to
47565 FRAME_INTERNAL_BORDER_WIDTH.
47567 2016-06-25 Leo Liu <sdl.web@gmail.com>
47569 Deprecations (bug#23850)
47571 * lisp/subr.el (string-to-unibyte, string-as-unibyte,
47572 string-to-multibyte, string-as-multibyte): Make obsolete.
47574 2016-06-25 Tino Calancha <tino.calancha@gmail.com>
47576 Do not prompt twice to save a buffer
47578 * lisp/hilit-chg.el (highlight-markup-buffers): (Bug#23824).
47580 2016-06-25 Alan Third <alan@idiocy.org>
47582 Move text line right when in box (bug#23755)
47584 * src/nsterm.m (ns_draw_glyph_string_foreground): Create to take
47585 CHAR_GLYPH specific code and move glyphs right if within a box.
47586 (ns_draw_glyph_string): Move CHAR_GLYPH specific code into above
47589 2016-06-25 Paul Eggert <eggert@cs.ucla.edu>
47591 Merge from origin/emacs-25
47593 0377fe2 ; Spelling fixes
47594 f253695 Update docs for `customize-mode'
47595 4395aaa Fix documentation of 'assoc-string' and 'compare-strings'
47596 ab0ebb9 ; Only load .elc file in tests.
47597 a98aa02 Error on multibyte characters in HTTP request
47598 ea512a7 * lisp/gnus/mm-decode.el (mm-convert-shr-links): Mask keys th...
47599 8297331 ; Revert "Ensure undo-boundary after insert-file-contents."
47600 dc5e65b Unset GIT_DIR when calling Git commands
47601 6cdd8f7 Ensure undo-boundary after insert-file-contents.
47602 4793f5f Clarify documentation of 'line-spacing' and 'line-height'
47603 5f37572 Fix removal of variables from process-environment
47604 e5e886d * admin/authors.el (authors-ignored-files, authors-valid-file...
47605 db0777b * admin/authors.el (authors-aliases, authors-fixed-case): Add...
47608 # doc/lispref/modes.texi
47609 # lisp/gnus/mm-decode.el
47611 2016-06-25 Mark Oteiza <mvoteiza@udel.edu>
47613 Teach net-utils more iproute2 and nl80211 tools
47615 * lisp/net/net-utils.el (iwconfig-program): Add iw(8).
47616 (iwconfig-program-options): Add "dev" argument for iw. Another useful
47617 option is "phy"; beyond that one needs to know the interface name.
47618 (netstat-program): Add ss(8).
47619 (route-program): Add ip(8).
47620 (route-program-options): Add "route" argument for ip.
47622 2016-06-24 Leo Liu <sdl.web@gmail.com>
47624 Use use-region-p in prolog.el
47626 * lisp/progmodes/prolog.el (region-exists-p): Remove.
47627 * lisp/progmodes/prolog.el (prolog-edit-menu-runtime,
47628 prolog-edit-menu-insert-move): Use use-region-p.
47630 2016-06-24 Leo Liu <sdl.web@gmail.com>
47632 Remove compatibility with Emacs 24.3 in octave-mode
47634 * lisp/progmodes/octave.el: Clean up and remove compatibility with
47637 2016-06-24 Alan Mackenzie <acm@muc.de>
47639 Ensure hack-local-variables is run in a fundamental mode buffer.
47641 This fixes bug #23827.
47643 * src/buffer.c (set-buffer-major-mode): Run `fundamental-mode' when the buffer
47644 gets set to that mode, so that `run-mode-hooks', and thus
47645 `hack-local-variables' get run.
47647 2016-06-24 Tino Calancha <tino.calancha@gmail.com>
47649 Fix caller to ediff-setup
47651 * lisp/hilit-chg.el (hilit-chg-get-diff-info): #Bug23820.
47653 2016-06-24 Alan Mackenzie <acm@muc.de>
47655 Implement ' separators in C++ integer literals.
47657 * lisp/progmodes/cc-langs.el (c-get-state-before-change-functions): insert
47658 c-before-after-change-digit-quote into the C++ value.
47659 (c-before-font-lock-functions): Insert c-depropertize-new-text into the values
47660 for all languages. Insert c-before-after-change-digit-quote into the C++
47663 * lisp/progmodes/cc-mode.el (c-depropertize-CPP): Wrap the function in
47664 c-save-buffer-state.
47665 (c-depropertize-new-text, c-before-after-change-digit-quote): New functions.
47667 2016-06-24 Paul Eggert <eggert@cs.ucla.edu>
47672 2016-06-24 intprops: port better to GCC 7
47673 2016-06-13 xalloc-oversized: port to GCC 7; fewer warnings
47674 * doc/misc/texinfo.tex, lib/xalloc-oversized.h, lib/intprops.h:
47677 2016-06-24 Martin Rudalics <rudalics@gmx.at>
47679 Remove two uses of 'min' in Fwindow_text_pixel_size
47681 * src/xdisp.c (Fwindow_text_pixel_size): Don't use 'min' since
47682 it calls move_it_to twice. Suggested by Eli Zaretskii.
47684 2016-06-23 Paul Eggert <eggert@cs.ucla.edu>
47686 Clarify intent of FACE_FROM_ID and IMAGE_FROM_ID
47688 * src/dispextern.h (FACE_OPT_FROM_ID): Don’t use FACE_FROM_ID,
47689 since it is intended to be used only when it returns a non-null
47690 pointer, and here the pointer might be null.
47691 (IMAGE_OPT_FROM_ID): Don’t use IMAGE_FROM_ID, for similar reasons.
47693 2016-06-23 Mark Oteiza <mvoteiza@udel.edu>
47695 Remove some more face aliases obsoleted in 22.1
47697 * lisp/eshell/em-ls.el (eshell-ls-directory-face, eshell-ls-symlink-face,
47698 eshell-ls-executable-face, eshell-ls-readonly-face,
47699 eshell-ls-unreadable-face, eshell-ls-special-face,
47700 eshell-ls-missing-face, eshell-ls-archive-face, eshell-ls-backup-face,
47701 eshell-ls-product-face, eshell-ls-clutter-face): Remove.
47702 * lisp/isearch.el (isearch-lazy-highlight-face, lazy-highlight-face): Remove.
47703 (isearch-lazy-highlight-update): Use face symbol.
47704 * lisp/net/sieve-mode.el (sieve-control-commands-face,
47705 sieve-action-commands-face, sieve-test-commands-face,
47706 sieve-tagged-arguments-face): Remove.
47707 (sieve-font-lock-keywords): Use non-obsolete faces.
47708 * lisp/progmodes/sh-script.el (sh-heredoc-face): Remove.
47709 (sh-get-indent-info, sh-prev-line): Use face symbol.
47710 * lisp/textmodes/tex-mode.el (tex-font-lock-keywords-1):
47711 Use non-obsolete face.
47712 (tex-math-face, tex-verbatim-face): Remove.
47713 (tex-font-lock-syntactic-face-function): Use face symbols.
47715 2016-06-23 Mark Oteiza <mvoteiza@udel.edu>
47717 Remove some face aliases obsoleted in 22.1
47719 * lisp/faces.el (modeline-inactive, modeline-highlight, modeline-buffer-id):
47720 * lisp/hilit-chg.el (highlight-changes-face, highlight-changes-delete-face):
47721 * lisp/info.el (Info-title-1-face, Info-title-2-face, Info-title-3-face,
47722 Info-title-4-face, info-menu-5):
47723 * lisp/obsolete/old-whitespace.el (whitespace-highlight-face):
47724 * lisp/paren.el (show-paren-match-face, show-paren-mismatch-face):
47725 * lisp/progmodes/make-mode.el (makefile-space-face):
47726 * lisp/textmodes/texinfo.el (texinfo-heading-face): Remove.
47727 (texinfo-font-lock-keywords): Use texinfo-heading face.
47728 * lisp/vc/add-log.el (change-log-date-face, change-log-name-face,
47729 change-log-email-face, change-log-file-face, change-log-list-face,
47730 change-log-conditionals-face, change-log-function-face,
47731 change-log-acknowledgement-face):
47732 * lisp/vc/diff-mode.el (diff-header-face, diff-file-header-face,
47733 diff-index-face, diff-hunk-header-face, diff-removed-face, diff-added-face,
47734 diff-changed-face, diff-function-face, diff-context-face,
47735 diff-nonexistent-face): Remove.
47736 (diff-use-changed-face, diff-font-lock-keywords): Use non-obsolete face
47738 (diff-hunk-file-names): Fix comment.
47739 (diff-refine-change): Remove.
47740 (diff-refine-removed, diff-refine-added, diff-refine-hunk): Use
47742 * lisp/vc/log-view.el (log-view-file-face, log-view-message-face): Remove.
47743 (log-view-font-lock-keywords): Use non-obsolete face names.
47744 * lisp/vc/pcvs-info.el (cvs-header-face, cvs-filename-face, cvs-unknown-face,
47745 cvs-handled-face, cvs-need-action-face, cvs-marked-face, cvs-msg-face):
47746 * lisp/wid-edit.el (widget-documentation-face, widget-button-face,
47747 widget-field-face, widget-single-line-field-face, widget-inactive-face,
47748 widget-button-pressed-face):
47749 * lisp/woman.el (woman-italic-face, woman-bold-face, woman-unknown-face,
47750 woman-addition-face): Remove.
47752 2016-06-23 Eli Zaretskii <eliz@gnu.org>
47754 * lisp/international/characters.el (standard-case-table): Improve last change.
47756 2016-06-23 Eli Zaretskii <eliz@gnu.org>
47758 Improve results of 'upcase' for characters with title-case
47760 * lisp/international/characters.el (standard-case-table): Swap the
47761 order of some lines, to have 'upcase' return the upper-case
47762 variant, not the title-case, for some characters whose lower-case
47763 map to the same codepoints. (Bug#23833)
47765 2016-06-23 Alan Mackenzie <acm@muc.de>
47767 Make typing into incomplete C++ raw strings work, and make it work fast enough
47769 * lisp/progmodes/cc-engine.el (c-beginning-of-macro, c-state-pp-to-literal):
47770 Put `save-match-data' around calls to `looking-at' to enable the use of the
47771 match data in higher level functions.
47773 * lisp/progmodes/cc-fonts.el (c-font-lock-declarations)
47774 (c-font-lock-cut-off-declarators): Use `limit' rather than `(point-max)' as a
47775 limit to speed up handling of C++ raw strings.
47777 2016-06-23 Eli Zaretskii <eliz@gnu.org>
47779 Fix handling of LWINDOW key on MS-Windows
47781 * src/w32fns.c (funhook): Correct a typo which broke handling of
47782 the LWINDOW key. (Bug#23830)
47784 2016-06-22 Eli Zaretskii <eliz@gnu.org>
47786 Update Unicode data files from Unicode 9.0.0
47788 * admin/unidata/copyright.html:
47789 * admin/unidata/BidiBrackets.txt:
47790 * admin/unidata/UnicodeData.txt: Update from Unicode 9.0.0, just
47793 2016-06-22 Eli Zaretskii <eliz@gnu.org>
47795 Fix test for whether the '.el' file is newer than '.elc'
47797 * src/lread.c (Fload): Don't overwrite the last character of the
47798 file name in FOUND with 'c', unless the file name ended in ".elc"
47799 to begin with. Don't treat empty files as byte-compiled. See
47800 https://lists.gnu.org/r/emacs-devel/2016-06/msg00463.html
47801 for more details of the problem this caused.
47803 2016-06-22 Eli Zaretskii <eliz@gnu.org>
47805 Fix 'insert-file-contents' when REPLACE is non-nil
47807 * src/fileio.c (maybe_move_gap): New function to move the gap to
47808 the end of a buffer, if it isn't there already.
47809 (Finsert_file_contents): Call 'maybe_move_gap' before using
47810 conversion_buffer's text as a C 'char' array. (Bug#23659)
47811 * src/coding.c (decode_eol): Compute the byte increment before
47812 calling del_range_2, because the latter can invalidate the pointer
47815 2016-06-22 Ken Brown <kbrown@cornell.edu>
47817 Avoid compiler warning
47819 * src/w32fns.c (Fx_show_tip): Don’t jump over auto initialization.
47821 2016-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
47823 * lisp/emacs-lisp/syntax.el (syntax-propertize): Flush extended region.
47825 2016-06-22 Ken Brown <kbrown@cornell.edu>
47827 Fix last change to FRAME_INTERNAL_BORDER_WIDTH
47829 * src/w32fns.c (x_set_internal_border_width): Don’t use
47830 FRAME_INTERNAL_BORDER_WIDTH(), which is now a function call, as an
47833 2016-06-21 Paul Eggert <eggert@cs.ucla.edu>
47835 Improve --without-x GCC pacification
47837 * src/composite.c (autocmp_chars):
47838 * src/conf_post.h (DebPrint) [HAVE_NTGUI && !DebPrint && !EMACSDEBUG]:
47839 Use simpler ((void) 0) for no-op expression returning void.
47840 * src/dispextern.h [HAVE_WINDOW_SYSTEM]:
47841 Include fontset.h, for face_for_char.
47842 (FACE_SUITABLE_FOR_ASCII_CHAR_P, FACE_FOR_CHAR):
47843 Now inline functions instead of macros. This avoids the need for
47844 all those casts to void.
47845 (FACE_SUITABLE_FOR_ASCII_CHAR_P): Omit 2nd (unused) arg.
47847 * src/frame.c (Ficonify_frame, Fset_frame_position):
47848 * src/xdisp.c (Fmove_point_visually, show_mouse_face):
47849 * src/xdisp.c (note_mode_line_or_margin_highlight)
47850 (note_mouse_highlight):
47851 Assume HAVE_WINDOW_SYSTEM for simplicity, since the code should
47852 now work either way without generating warnings.
47853 * src/frame.c (display_available) [HAVE_WINDOW_SYSTEM]: New function.
47854 (window_system_available) [HAVE_WINDOW_SYSTEM]: Move to frame.h.
47855 (decode_window_system_frame): Use check_window_system instead of
47856 rolling the code ourself. Return needed only if HAVE_WINDOW_SYSTEM.
47857 (decode_window_system_frame, check_window_system):
47858 Merge the HAVE_WINDOW_SYSTEM and !HAVE_WINDOW_SYSTEM versions into one.
47859 * src/frame.c (Ficonify_frame, Fset_frame_position):
47860 * src/xdisp.c (show_mouse_face, define_frame_cursor1)
47861 (note_mouse_highlight):
47862 Narrow the scope of the HAVE_WINDOW_SYSTEM #ifdef;
47863 this is a better way to pacify GCC.
47864 * src/xdisp.c (x_set_left_fringe, x_set_right_fringe)
47865 (x_set_right_divider_width, x_set_bottom_divider_width):
47866 * src/xfns.c (x_set_internal_border_width):
47867 Don’t use what are now function calls as lvalues.
47868 * src/frame.h (WINDOW_SYSTEM_RETURN): New macro.
47869 (decode_window_system_frame, check_window_system):
47870 Use it, to avoid the need for duplicate declarations.
47871 (window_system_available): Now an inline function.
47872 (display_available): New decl.
47873 (frame_dimension): New inline function.
47874 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
47875 (FRAME_RIGHT_FRINGE_WIDTH, FRAME_TOTAL_FRINGE_WIDTH)
47876 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_RIGHT_DIVIDER_WIDTH)
47877 (FRAME_BOTTOM_DIVIDER_WIDTH):
47878 Use it, to avoid the need for duplicate definitions.
47879 Now inline functions instead of macros.
47880 * src/gnutls.c (gnutls_log_function2i): Remove.
47881 * src/gnutls.h (GNUTLS_LOG2i): Use ‘message’ directly.
47882 This avoids complaints about gnutls_log_function2i being defined
47883 and not used on older platforms that do not need to call GNUTLS_LOG2i.
47884 * src/image.c (DefaultDepthOfScreen) [0]: Remove unused macro.
47885 * src/lisp.h (AUTO_STRING_WITH_LEN): Revert change from ‘type id =
47886 expr’ to ‘type id; id = expr’, as this would suppress valid
47887 jump-misses-init diagnostics. Let’s find a better way to address
47889 * src/vm-limit.c (__MALLOC_HOOK_VOLATILE):
47890 Define only if needed.
47891 * src/xdisp.c (handle_single_display_spec):
47892 Simplify fringe_bitmap computation.
47893 (define_frame_cursor1): Do nothing unless in a window system.
47894 All callers changed and simplified.
47895 * src/xfaces.c (realize_default_face):
47896 Use a simpler way to pacify GCC when a return value is not used
47899 2016-06-21 Phillip Lord <phillip.lord@russet.org.uk>
47901 Ensure undo-boundary after all commands
47903 * lisp/simple.el (undo-auto--boundaries): Ensure an undo-boundary after
47904 every command whether it (apparently) changes the buffer or not.
47906 See Bug#23785 for discussion.
47908 2016-06-21 Eli Zaretskii <eliz@gnu.org>
47910 Fix vertical layout calculations when newline has line-height property
47912 * src/xdisp.c (move_it_in_display_line_to): Reset the iterator's
47913 'constrain_row_ascent_descent_p' flag after processing the
47914 newline, similar to what 'display_line' does. Without this, the
47915 flag remains set once set by x_produce_glyphs, and causes the
47916 vertical layout calculations to go awry, because Emacs thinks the
47917 screen lines have zero height. (Bug#23850)
47919 2016-06-20 Ken Brown <kbrown@cornell.edu>
47921 Fix compiler warnings in Cygwin-w32 build
47923 * src/conf_post.h (DebPrint) [!EMACSDEBUG]: Add empty do-while
47924 loop to avoid compiler warnings about empty body of 'if'
47927 * src/image.c [HAVE_NTGUI] (DefaultDepthOfScreen): Disable unused
47929 (x_create_bitmap_from_data): Declare 'frame'.
47930 (x_create_bitmap_from_file): Don't declare unused variable
47933 * src/lisp.h (AUTO_STRING_WITH_LEN): Avoid initialization to
47934 prevent "jump-misses-init" compiler warnings.
47936 * src/w32fns.c (check_w32_winkey_state): Define and use only if
47938 (Fx_show_tip): Declare 'f'.
47939 (Fx_file_dialog): Declare 'filter_a' only if not NTGUI_UNICODE.
47940 (w32_strerror): Use format specifier %d for sprintf argument of
47942 (emacs_abort): Cast sprintf argument of type DWORD to unsigned
47943 int, and use format specifier %x, for compatibility with Cygwin.
47944 (unicode_append_menu) [NTGUI_UNICODE]:
47945 * src/w32menu.c [NTGUI_UNICODE] (get_menu_item_info)
47946 (set_menu_item_info, unicode_append_menu)
47947 (unicode_message_box):
47948 * src/menu.c [NTGUI_UNICODE] (unicode_append_menu): Define as
47949 functions rather than macros to avoid "address will always
47950 evaluate as true" compiler warnings.
47952 * src/w32font.c (w32_to_x_charset): Use format specifier %d for
47953 sprintf argument of type int.
47955 * src/w32term.c (x_draw_glyphless_glyph_string_foreground): Cast
47956 sprintf argument of type int to unsigned int to match %X format
47958 (w32_scroll_bar_handle_click):
47959 (w32_horizontal_scroll_bar_handle_click): Declare 'f'.
47961 * src/w32term.h (FRAME_DISPLAY_INFO): Explicitly discard unused
47964 2016-06-20 Ken Brown <kbrown@cornell.edu>
47966 Fix compiler warnings in no-window-system-build
47968 * src/composite.c (autocmp_chars): Declare and set 'f' only if
47969 HAVE_WINDOW_SYSTEM.
47971 * src/dispextern.h (FACE_SUITABLE_FOR_ASCII_CHAR_P)
47972 (FACE_FOR_CHAR): Explicitly discard unused arguments.
47974 * src/font.c (font_open_entity): Declare 'min_width' where it is
47975 first set, and only if HAVE_WINDOW_SYSTEM.
47977 * src/frame.c [!HAVE_WINDOW_SYSTEM] (decode_window_system_frame):
47978 Define _Noreturn version to avoid "suggest attribute noreturn"
47980 (check_window_system): Declare as _Noreturn.
47982 (Fset_frame_position): Don’t declare and set 'f'.
47984 * src/frame.h [!HAVE_WINDOW_SYSTEM] (decode_window_system_frame)
47985 (check_window_system): Add _Noreturn prototypes.
47986 (FRAME_FRINGE_COLS, FRAME_TOTAL_FRINGE_WIDTH)
47987 (FRAME_LEFT_FRINGE_WIDTH, FRAME_RIGHT_FRINGE_WIDTH)
47988 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_RIGHT_DIVIDER_WIDTH)
47989 (FRAME_BOTTOM_DIVIDER_WIDTH): Explicitly discard unused argument.
47991 * src/xdisp.c (handle_single_display_spec): Declare
47992 'fringe_bitmap' only if HAVE_WINDOW_SYSTEM.
47993 (append_space_for_newline): Declare 'g' where it is first set.
47994 (Fmove_point_visually): Declare and set 'target_is_eol_p' only if
47995 HAVE_WINDOW_SYSTEM.
47996 (show_mouse_face): Declare and set 'f' and 'phys_cursor_on_p' only
47997 if HAVE_WINDOW_SYSTEM.
47998 (note_mode_line_or_margin_highlight):
47999 (note_mouse_highlight): Declare and set 'cursor' and 'pointer'
48000 only if HAVE_WINDOW_SYSTEM.
48002 * src/xfaces.c (realize_default_face): Declare and set 'face' only
48003 if HAVE_X_WINDOWS. Remove redundant #ifdef.
48005 2016-06-20 Michael Albinus <michael.albinus@gmx.de>
48007 Weaken test conditions in filenotify-tests.el
48009 * test/lisp/filenotify-tests.el (file-notify--test-with-events):
48010 Fix thinko in test.
48011 (file-notify-test02-events, file-notify-test04-file-validity)
48012 (file-notify-test07-backup)
48013 (file-notify-test08-watched-file-in-watched-dir): Make test
48014 conditions more weak. (Bug#23618)
48016 2016-06-19 Paul Eggert <eggert@cs.ucla.edu>
48018 Minor ABLOCKS_BUSY cleanups in alloc.c
48020 * src/alloc.c (ABLOCKS_BUSY): Rename arg to avoid potential clash
48021 with member ‘abase’ in definiens.
48022 (lisp_align_malloc, lisp_align_free): Use bool for boolean.
48023 Avoid compiler warning with fewer casts.
48024 (lisp_align_free): Check busy-field values; this can help the
48025 compiler a bit when optimizing, too.
48027 2016-06-19 Dmitry Gutov <dgutov@yandex.ru>
48029 ASCII-fy coding-system-for-read used for Git commands
48031 * lisp/vc/vc-git.el (vc-git--asciify-coding-system):
48033 (vc-git-diff, vc-git-annotate-command): Use it.
48035 2016-06-19 Dmitry Gutov <dgutov@yandex.ru>
48037 Prohibit multibyte characters in url-http-data
48039 It didn't work anyway, but this makes any such errors more obvious
48040 by catching them earlier.
48042 * lisp/url/url-http.el (url-http-create-request):
48043 Use string-to-unibyte (bug#23750).
48045 2016-06-19 Eli Zaretskii <eliz@gnu.org>
48047 Fix setting a range of char-table slots in a singular case
48049 * src/chartab.c (char_table_set_range): Start the loop from the
48050 first character of the block to which FROM belongs. (Bug#23797)
48052 * test/src/chartab-tests.el: New test file.
48054 2016-06-19 Alan Mackenzie <acm@muc.de>
48056 Fix CC Mode fontification problem apparent in test file decls-6.cc.
48058 * lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): Recognize
48059 "bar (gnu);" as a declarator only when the construct is directly inside a
48060 class (etc.) called "bar".
48061 (c-directly-in-class-called-p): New function.
48063 2016-06-19 Alan Mackenzie <acm@muc.de>
48065 c-renarrow-state-cache: take care when new point is inside old brace pair.
48067 Also add display of point-min to the c-parse-state debugging output.
48069 * lisp/progmodes/cc-engine.el (c-renarrow-state-cache): When the new
48070 point is inside an old recorded brace pair, clear the cache.
48071 (c-debug-parse-state): Output the value of point-min.
48073 2016-06-18 Paul Eggert <eggert@cs.ucla.edu>
48075 Rename ALIGN to pointer_align
48077 * src/alloc.c (pointer_align): Rename from ALIGN.
48078 This fixes Bug#23764 in a simpler way.
48080 2016-06-18 Paul Eggert <eggert@cs.ucla.edu>
48082 Merge from origin/emacs-25
48084 d1efbaf Fix documentation of completion functions
48085 65c96cc Clarify documentation of 'font-lock-maximum-decoration'
48086 2ad3d01 * doc/misc/cl.texi (Usage): Add some more details.
48087 b49cb0a Fbackward_prefix_chars: stay within buffer bounds
48089 2016-06-18 Paul Eggert <eggert@cs.ucla.edu>
48091 Merge from origin/emacs-25
48093 2317c61 Fix last todo-mode change
48094 5d4d8a3 Improve last todo-mode fix
48095 d7084f2 Fix todo-mode use of minibuffer completion keymap (bug#23695).
48096 27dec52 * src/alloc.c (ALIGN): Avoid error on DragonFly BSD. (Bug#23...
48097 f526191 * lisp/emacs-lisp/nadvice.el (advice--make-docstring): Avoid ...
48098 e881070 * lisp/help-fns.el (describe-function-1): Avoid reporting adv...
48099 d308aa1 Minor grammar fix (bug#23746)
48100 20de667 Doc fixes for grammar and typos (bug#23746)
48101 a67a4e5 * doc/lispref/processes.texi (Process Buffers): Minor rewordi...
48102 27f440e Add cross-reference to ELisp manual
48103 10802d8 ; make change-history-commit
48104 4b2d77d * lisp/emacs-lisp/macroexp.el (macroexp--expand-all): Fix (bu...
48105 12e009e Restore initial undo boundary with viper
48106 291fe0a Revert "Fix viper undo breakage from undo-boundary changes"
48107 6921f4a Fix dbus crash on 32-bit Cygwin
48109 2016-06-18 Paul Eggert <eggert@cs.ucla.edu>
48111 Merge from origin/emacs-25
48113 9ae514a * etc/AUTHORS: Update the AUTHORS file
48114 3ca428e add entries to authors.el
48115 66d556b Fix eldoc-related freezes in python mode
48116 d59bcbc Handle mouse leaving initial window in `mouse-set-region' (Bu...
48117 27fe1e4 org.el: Fix bindings of < and > for calendar scrolling
48118 a813487 Fix undo boundary in recursive edit (Bug#23632)
48119 1f85b7c Doc fixes re alist-get. (Bug#23548)
48120 ba3f206 * lisp/progmodes/python.el (inferior-python-mode): Avoid tabs...
48121 56fa055 * src/syntax.c (syms_of_syntax) <comment-end-can-be-escaped>:...
48122 4c1370a * lisp/help-fns.el (describe-function-1): Fix handling of fil...
48123 a3f7ae8 * lisp/emacs-lisp/cl-macs.el (cl-loop): Doc fix re "by".
48124 601b9b2 * doc/misc/cl.texi (Mapping over Sequences): Fix cl-notevery.
48126 2016-06-18 Nicolas Petton <nicolas@petton.fr>
48128 * lisp/emacs-lisp/map.el (map-contains-key): Better docstring
48130 2016-06-18 Nicolas Petton <nicolas@petton.fr>
48134 Make sure seq-contains return the element of the sequence instead of t.
48136 * lisp/emacs-lisp/seq.el (seq-contains): Fix the function.
48137 * test/lisp/emacs-lisp/seq-tests.el: Add a regression test.
48139 2016-06-18 Nicolas Petton <nicolas@petton.fr>
48141 Add new function map-do
48143 * lisp/emacs-lisp/map.el (map-do, map--do-alist, map--do-array): New
48145 * test/lisp/emacs-lisp/map-tests.el: Add a unit test for map-do.
48147 2016-06-18 Nicolas Petton <nicolas@petton.fr>
48151 * lisp/emacs-lisp/seq.el (seq-do-indexed): New function.
48152 * test/lisp/emacs-lisp/seq-tests.el: Add a unit test for seq-do-indexed.
48154 2016-06-17 Stefan Monnier <monnier@iro.umontreal.ca>
48156 map.el (map-merge*): Use `map-into' at beginning rather than end
48158 * lisp/emacs-lisp/map.el (map-merge): Use `map-into' for the first map,
48159 and don't use of an intermediate alist.
48160 (map-merge-with): Same, plus use `cl-callf' to try and avoid performing
48161 3 lookups per inner iteration.
48163 2016-06-16 Mark Oteiza <mvoteiza@udel.edu>
48165 * lisp/window.el (switch-to-buffer-preserve-window-point): Bump :version.
48167 2016-06-15 Alan Mackenzie <acm@muc.de>
48169 Speed up CC Mode's font locking by taking some code out of a hot loop.
48171 * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Remove code which
48172 tests for bare declarators.
48173 (c-font-lock-cut-off-declarators): New function.
48174 (c-complex-decl-matchers): insert c-font-lock-cut-off-declarators.
48176 2016-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
48178 Automatically find vars and functions via definition-prefixes
48180 * lisp/help-fns.el (help-definition-prefixes): New var and function.
48181 (help--loaded-p, help--load-prefixes, help--symbol-completion-table):
48183 (describe-function, describe-variable): Use them.
48185 * lisp/emacs-lisp/radix-tree.el (radix-tree--prefixes)
48186 (radix-tree-prefixes, radix-tree-from-map): New functions.
48188 2016-06-15 Michal Nazarewicz <mina86@mina86.com>
48190 Automatically detect whether .h file is C or C++
48192 * lisp/progmodes/cc-mode.el (c-or-c++-mode): A new function which
48193 analyzes contents of the buffer to determine whether it looks like C++
48194 source code and based on that enables c-mode or c++-mode.
48195 (c-or-c++-mode--regexp): Regular expression which, when matches
48196 a buffer, signals file is C++.
48198 2016-06-15 Alan Mackenzie <acm@muc.de>
48200 Parse compound identifiers in C++ member initialization lists.
48202 * lisp/progmodes/cc-engine.el (c-back-over-compound-identifier): New function.
48203 (c-back-over-member-initializer-braces, c-back-over-list-of-member-inits)
48204 (c-back-over-member-initializers): Call c-back-over-compound-identifier rather
48205 than c-simple-skip-symbol-backward.
48207 2016-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
48209 Advertize set-keymap-parent as replacement for copy-keymap
48211 * doc/lispref/keymaps.texi (Creating Keymaps):
48212 * src/keymap.c (Fcopy_keymap): Advertize set-keymap-parent as replacement.
48214 2016-06-15 Ted Zlatanov <tzz@lifelogs.com>
48216 * lisp/generic-x.el (ansible-inventory-generic-mode): Warn if
48219 2016-06-15 Tim Chambers <tbc@alum.mit.edu> (tiny change)
48221 Add new ansible-inventory-generic-mode (Bug#23762)
48223 * lisp/generic-x.el (ansible-inventory-generic-mode): Add new mode.
48225 2016-06-14 Paul Eggert <eggert@cs.ucla.edu>
48227 Fix ifdef-vs-if typo with RANDR13_LIBRARY
48229 * src/xfns.c (x_get_monitor_attributes_xrandr): Use #if, not #ifdef.
48230 This ports to systems that predate xrandr 1.3. See Christian Lynbech in:
48231 https://lists.gnu.org/r/emacs-devel/2016-06/msg00198.html
48233 2016-06-14 Paul Eggert <eggert@cs.ucla.edu>
48235 Port to platforms where char * has top bit set
48237 This fixes a five-year-old FIXME comment. Although I don’t know
48238 of a platform where this is a problem in practice, better safe
48240 * src/doc.c (Fdocumentation): If SUBRP, simply use doc as integer,
48241 as it is now an integer, not char *.
48242 (store_function_docstring): Offset is now EMACS_INT, not ptrdiff_t;
48243 this is a file offset and EMACS_INT is better if --with-wide-int.
48244 If SUBRP, simply store the offset rather than negating it and
48245 converting it to char *.
48246 * src/lisp.h (struct Lisp_Subr.doc): Now EMACS_INT, not char *.
48248 2016-06-14 Paul Eggert <eggert@cs.ucla.edu>
48250 Remove recursion from store_function_docstring
48252 * src/doc.c (store_function_docstring):
48253 Refactor to avoid the need for C-level recursion.
48255 2016-06-14 Ken Brown <kbrown@cornell.edu>
48257 Remove system-specific -I switch from Cygwin-w32 build
48259 Suggested by Eli Zaretskii in discussion of bug#18302.
48261 * src/image.c [HAVE_NTGUI]: Remove the unused macro
48262 PIXEL_ALREADY_TYPEDEFED. On Cygwin, include "noX/xpm.h" instead of
48265 * configure.ac [CYGWIN && HAVE_W32]: Change the xpm test to use
48266 "noX/xpm.h". Don't add a -I switch to CPPFLAGS.
48268 2016-06-14 Noam Postavsky <npostavs@gmail.com>
48270 Make python.el work in Emacs 24
48272 * lisp/progmodes/python.el: Bump version.
48273 (python-define-auxiliary-skeleton): Only use format-message if
48274 fbound (Bug#23126).
48276 2016-06-13 Ken Brown <kbrown@cornell.edu>
48278 Avoid compiler warning
48280 * src/w32fns.c (deliver_wm_chars): Add 'const' to declaration of
48283 2016-06-13 Paul Eggert <eggert@cs.ucla.edu>
48285 Call tzset after setting TZ
48287 * src/editfns.c (tzlookup): Call tzset after setting TZ, so that
48288 the setting change propagates into Emacs local time (Bug#23600).
48289 (emacs_setenv_TZ): Clarify comments.
48291 2016-06-13 Paul Eggert <eggert@cs.ucla.edu>
48295 * doc/misc/texinfo.tex: Update from gnulib.
48297 2016-06-12 Paul Eggert <eggert@cs.ucla.edu>
48299 New macro GNUC_PREREQ for GCC version
48301 * src/conf_post.h (GNUC_PREREQ): New macro.
48302 Change uses of __GNUC_MINOR__ and __GNUC_PATCHLEVEL__ to use this
48303 macro instead, for clarity and consistency.
48304 (PRINTF_ARCHETYPE): New macro. Define it to __gnu_printf__ only
48305 if glibc, since non-GNU platforms don’t necessarily support GNU
48307 (ATTRIBUTE_FORMAT_PRINTF): Use it.
48309 2016-06-12 Nicolas Petton <nicolas@petton.fr>
48311 * lisp/emacs-lisp/seq.el (seq-drop): Better list implementation
48313 2016-06-12 Eli Zaretskii <eliz@gnu.org>
48315 Fix printf-related compilation warnings on MinGW
48317 * src/conf_post.h (ATTRIBUTE_FORMAT_PRINTF) [__MINGW32__]: Use
48318 '__ms_printf__', not '__gnu_printf__', as the latter is not what
48319 MS 'printf' supports, and causes bogus compilation warnings.
48320 * src/lisp.h (pI) [__MINGW32__]: Define to "I64", as MS 'printf'
48321 doesn't support the "ll" modifier.
48323 2016-06-11 Paul Eggert <eggert@cs.ucla.edu>
48325 emacs_strerror cleanups
48327 * src/buffer.c, src/emacs.c, src/lread.c: Don’t include coding.h;
48328 no longer needed, now that emacs_strerror is declared by lisp.h.
48329 * src/coding.c (emacs_strerror): Remove; moved to emacs.c.
48330 * src/coding.h (emacs_strerror) [emacs]: Remove decl; moved
48332 * src/emacs.c (emacs_strerror): Move here from coding.c. Do not
48333 convert result string; this is now the caller’s responsibility,
48334 as some need conversion and others don’t.
48335 * src/fileio.c (report_file_errno, report_file_notify_error):
48336 Use emacs_strerror rather than rolling it ourselves.
48337 * src/lisp.h (emacs_strerror): Move decl here from coding.h.
48338 * src/lread.c (dir_warning): Just call emacs_strerror rather than
48339 both strerror and emacs_strerror. Convert its result from
48340 locale-coding-system, since it no longer does that conversion.
48341 * src/sound.c (sound_perror):
48342 * src/sysdep.c (emacs_perror, str_collate):
48343 Use emacs_strerror, not strerror.
48345 2016-06-10 David Reitter <david.reitter@gmail.com>
48347 Prevent compiler warning for unused arguments
48349 * lisp/international/ucs-normalize.el
48350 (ucs-normalize-hfs-nfd-pre-write-conversion):
48351 Prevent compiler warning for unused arguments, add coment.
48353 2016-06-10 Paul Eggert <eggert@cs.ucla.edu>
48355 Catch malloc_get_state, malloc_set_state failure
48357 This should help insulate Emacs better from configuration screwups.
48358 Future versions of the GNU C library are planned to deprecate
48359 these functions, but will continue to support them in
48360 already-built-and-dumped Emacs executables.
48361 * src/alloc.c (malloc_initialize_hook) [DOUG_LEA_MALLOC]:
48362 Abort if malloc_set_state fails.
48363 (alloc_unexec_pre) [DOUG_LEA_MALLOC]:
48364 Report malloc_get_state failure, and exit.
48366 2016-06-10 Eli Zaretskii <eliz@gnu.org>
48368 Show returned value after gdb-mi "finish" command
48370 * lisp/progmodes/gdb-mi.el (gdb-stopped): Display the expected
48371 "Value returned" message in response to "finish", when not
48372 produced by GDB/MI. (Bug#23720)
48374 2016-06-10 David Reitter <david.reitter@gmail.com>
48376 Simplify pre-write-conversion for utf-8-hfs coding system
48378 * lisp/international/ucs-normalize.el
48379 (ucs-normalize-hfs-nfd-pre-write-conversion): Refactor.
48381 May address an issue where Emacs consumed large amounts of CPU
48382 because of neverending toolbar updating (which was caused
48383 by, but also called this function).
48385 2016-06-09 Martin Rudalics <rudalics@gmx.at>
48387 Revert "Bind `widget-button-click' to mouse-1/-2 instead of down-mouse-1/-2"
48389 * lisp/wid-edit.el (widget-keymap): Bind `widget-button-click'
48390 to mouse-1/-2 instead of down-mouse-1/-2. Suggested by Stefan
48391 Monnier. (Bug#19185, Bug#20398)
48393 This reverts commit 72166f2f3dba18f1217c666574032f5a0351ed65.
48395 That commit did more harm than good (Bug#23571).
48397 2016-06-09 Paul Eggert <eggert@cs.ucla.edu>
48399 Port __builtin_assume_aligned to Sun C 5.13
48401 * src/conf_post.h (__builtin_assume_aligned):
48402 Fix typo: the extra arg did not conform to C99.
48404 2016-06-09 Paul Eggert <eggert@cs.ucla.edu>
48406 Prefer getsockopt to getpeername on non-MS-Windows
48408 * admin/CPP-DEFINES: Remove HAVE_GETPEERNAME.
48409 * configure.ac: Don’t check for getpeername.
48410 * src/process.c (wait_reading_process_output) [!WINDOWSNT]:
48411 Use getsockopt even if not GNU/Linux, as the platforms where
48412 getsockopt used to hang are no doubt long dead.
48414 2016-06-09 Paul Eggert <eggert@cs.ucla.edu>
48416 Fix XFASTINT of non-fixnum in process status
48418 * src/process.c (decode_status): 3rd arg is now Lisp_Object *,
48419 not int *, and is not decoded. All uses changed.
48420 (status_message): Do not assume ‘failed’ code is an integer.
48421 * src/process.h: Document codes better.
48423 2016-06-09 Glenn Morris <rgm@gnu.org>
48425 Make messcompat.el obsolete.
48427 * lisp/obsolete/messcompat.el: Move here from lisp/gnus.
48428 * doc/misc/message.texi (Compatibility): Remove section.
48430 2016-06-09 Glenn Morris <rgm@gnu.org>
48432 Leading "*" in the doc of defvars is long obsolete.
48434 * lisp/plstore.el (plstore-encrypt-to):
48435 * lisp/cedet/semantic/lex-spp.el
48436 (semantic-lex-spp-macro-max-length-to-save):
48437 * lisp/cedet/semantic/symref.el (semantic-symref-tool):
48438 * lisp/cedet/semantic/bovine/el.el
48439 (semantic-elisp-store-documentation-in-tag):
48440 * lisp/cedet/semantic/wisent/comp.el (wisent-verbose-flag)
48441 (wisent-expected-conflicts):
48442 * lisp/cedet/semantic/wisent/wisent.el (wisent-parse-verbose-flag):
48443 * lisp/gnus/gnus-agent.el (gnus-category-menu-hook):
48444 * lisp/gnus/gnus-group.el (gnus-group-listing-limit):
48445 * lisp/gnus/gnus-srvr.el (gnus-server-menu-hook)
48446 (gnus-browse-menu-hook):
48447 * lisp/gnus/message.el (message-shoot-gnksa-feet):
48448 * lisp/gnus/mm-decode.el (mm-path-name-rewrite-functions):
48449 * lisp/gnus/mm-util.el (mm-extra-numeric-entities):
48450 * lisp/gnus/mm-view.el (mm-w3m-standalone-supports-m17n-p):
48451 * lisp/gnus/mml.el (mml-generate-multipart-alist):
48452 * lisp/gnus/nndraft.el (nndraft-required-headers):
48453 * lisp/gnus/nnheader.el (nnheader-max-head-length)
48454 (nnheader-head-chop-length, nnheader-file-name-translation-alist)
48455 (nnheader-directory-separator-character)
48456 (nnheader-pathname-coding-system):
48457 * lisp/gnus/nnmail.el (nnmail-pathname-coding-system)
48458 (nnmail-active-file-coding-system):
48459 * lisp/gnus/nnrss.el (nnrss-file-coding-system):
48460 * lisp/gnus/nntp.el (nntp-record-commands):
48461 * lisp/gnus/score-mode.el (gnus-score-edit-done-hook)
48462 (gnus-score-mode-hook, gnus-score-menu-hook):
48463 * lisp/mail/rfc2047.el (rfc2047-header-encoding-alist)
48464 (rfc2047-allow-irregular-q-encoded-words)
48465 (rfc2047-allow-incomplete-encoded-text):
48466 * lisp/mh-e/mh-alias.el (mh-alias-system-aliases):
48467 * lisp/mh-e/mh-e.el (mh-mail-header-separator, mh-x-mailer-string):
48468 * lisp/mh-e/mh-scan.el (mh-scan-format-mh, mh-scan-format-nmh):
48469 * lisp/net/pop3.el (pop3-password):
48470 * lisp/play/animate.el (animate-n-steps):
48471 * lisp/progmodes/cc-vars.el (c-old-style-variable-behavior):
48472 Convert from defvar with leading * to defcustom.
48475 * lisp/emulation/viper-init.el (viper-heading-end):
48476 * lisp/gnus/mm-url.el (mm-url-html-entities):
48477 * lisp/gnus/nnmaildir.el (nnmaildir-article-file-name):
48478 * lisp/mh-e/mh-e.el (mh-invisible-header-fields-compiled):
48479 * lisp/net/tramp-adb.el (tramp-adb-method): Remove leading * from doc.
48481 * lisp/gnus/messcompat.el: Mark (pointless) file not for compilation.
48482 (message-from-style, message-interactive, message-indentation-spaces)
48483 (message-signature, message-signature-file):
48484 Remove settings that match the defaults.
48485 (message-setup-hook, message-mode-hook, message-default-headers)
48486 (message-send-hook, message-send-mail-function):
48487 Just use setq rather than redefining.
48489 * lisp/gnus/nnrss.el (nnrss):
48490 * lisp/mail/rfc2047.el (rfc2047):
48491 * lisp/play/animate.el (animate): New custom groups.
48493 2016-06-09 Glenn Morris <rgm@gnu.org>
48495 Remove obsolete leading * from defcustom, defface doc strings.
48497 * lisp/cedet/ede/linux.el, lisp/cedet/ede/project-am.el:
48498 * lisp/cedet/ede/simple.el, lisp/cedet/semantic/bovine/c.el:
48499 * lisp/cedet/semantic/complete.el, lisp/cedet/semantic/db.el:
48500 * lisp/cedet/semantic/decorate/include.el:
48501 * lisp/cedet/semantic/decorate/mode.el, lisp/cedet/semantic/format.el:
48502 * lisp/cedet/semantic/ia.el, lisp/cedet/semantic/idle.el:
48503 * lisp/cedet/semantic/imenu.el, lisp/cedet/semantic/lex-spp.el:
48504 * lisp/cedet/semantic/mru-bookmark.el, lisp/cedet/semantic/sb.el:
48505 * lisp/cedet/srecode/fields.el, lisp/ecomplete.el:
48506 * lisp/gnus/gnus-agent.el, lisp/gnus/gnus-art.el:
48507 * lisp/gnus/gnus-async.el, lisp/gnus/gnus-cache.el:
48508 * lisp/gnus/gnus-cite.el, lisp/gnus/gnus-delay.el:
48509 * lisp/gnus/gnus-diary.el, lisp/gnus/gnus-dup.el:
48510 * lisp/gnus/gnus-fun.el, lisp/gnus/gnus-group.el:
48511 * lisp/gnus/gnus-kill.el, lisp/gnus/gnus-msg.el:
48512 * lisp/gnus/gnus-picon.el, lisp/gnus/gnus-salt.el:
48513 * lisp/gnus/gnus-score.el, lisp/gnus/gnus-start.el:
48514 * lisp/gnus/gnus-sum.el, lisp/gnus/gnus-topic.el:
48515 * lisp/gnus/gnus-util.el, lisp/gnus/gnus-uu.el, lisp/gnus/gnus-win.el:
48516 * lisp/gnus/gnus.el, lisp/gnus/mail-source.el, lisp/gnus/message.el:
48517 * lisp/gnus/mm-url.el, lisp/gnus/mm-uu.el, lisp/gnus/mml.el:
48518 * lisp/gnus/nndiary.el, lisp/gnus/nnir.el, lisp/gnus/nnmail.el:
48519 * lisp/gnus/smiley.el, lisp/gnus/smime.el, lisp/mail/mail-extr.el:
48520 * lisp/mh-e/mh-e.el, lisp/net/mailcap.el, lisp/net/pop3.el:
48521 * lisp/net/starttls.el, lisp/progmodes/cc-vars.el:
48522 * lisp/progmodes/cperl-mode.el, test/manual/cedet/tests/test.el:
48523 Remove obsolete leading * from defcustom, defface doc strings.
48525 2016-06-09 Eli Zaretskii <eliz@gnu.org>
48527 Fix copying text properties by 'format'
48529 * src/editfns.c (styled_format): Fix copying text properties from
48530 the format specification to the produced string representation.
48534 * doc/lispref/strings.texi (Formatting Strings): Document that
48535 text properties from the format specifiers are also copied to the
48538 2016-06-09 Alan Mackenzie <acm@muc.de>
48540 Handle C++ raw strings.
48542 * lisp/progmodes/cc-engine.el (c-raw-string-pos, c-depropertize-raw-string)
48543 (c-depropertize-raw-strings-in-region,
48544 c-before-change-check-raw-strings)
48545 (c-propertize-raw-string-opener, c-after-change-re-mark-raw-strings): New
48548 * lisp/progmodes/cc-fonts.el (c-basic-matchers-before): Insert a clause for
48549 c-font-lock-raw-strings.
48550 (c-font-lock-raw-strings): New function.
48552 * lisp/progmodes/cc-langs.el (c-get-state-before-change-functions): Insert
48553 c-before-change-check-raw-strings into the C++ value, and c-depropertize-CPP
48554 into the values for C, C++, and Objective C.
48555 (c-before-font-lock-functions): Insert c-after-change-re-mark-raw-strings into
48558 * lisp/progmodes/cc-mode.el (c-old-BEG, c-old-END): New variables.
48559 (c-depropertize-CPP): New function, extracted from
48560 c-neutralize-syntax-in-and-mark-CPP.
48561 (c-neutralize-syntax-in-and-mark-CPP): Remove the call to
48562 c-clear-char-property-with-value for 'syntax-table value '(1) at the beginning
48564 (c-after-change): Set c-old-BEG and c-old-END to the current values of
48565 c-new-BEG and c-new-END.
48567 2016-06-09 Daiki Ueno <ueno@gnu.org>
48569 epg: don't use obsolete function
48571 * lisp/epg.el (epg-sign-string, epg-encrypt-string): Remove
48572 redundant configuration check, which is now done in
48573 `epg-make-context'.
48575 2016-06-09 Daiki Ueno <ueno@gnu.org>
48577 epg: don't start pinentry if it is useless
48579 * lisp/epg.el (epg--start): Don't start pinentry server if the
48580 session is non-interactive or pinentry-mode is set.
48582 2016-06-08 Paul Eggert <eggert@cs.ucla.edu>
48584 Replace IF_LINT by NONVOLATILE and UNINIT
48586 Inspired by a suggestion from RMS in: https://bugs.gnu.org/23640#58
48587 * .dir-locals.el (c-mode): Adjust to macro changes.
48588 * src/conf_post.h (NONVOLATILE, UNINIT): New macros (Bug#23640).
48589 (IF_LINT): Remove. All uses replaced by the new macros.
48591 2016-06-08 Michal Nazarewicz <mina86@mina86.com>
48593 Remove ‘ert-with-function-mocked’ macro in favor of ‘cl-letf’ macro
48595 * lisp/emacs-lisp/ert-x.el (ert-with-function-mocked): Remove macro
48596 in favor of ‘cl-letf’ macro which is more generic. All existing
48597 uses are migrated accordingly. The macro has not been included in
48598 an official release yet so it should be fine to delete it.
48600 2016-06-08 Glenn Morris <rgm@gnu.org>
48602 * test/lisp/emacs-lisp/package-tests.el
48603 (package-test-update-archives-async): Try re-enabling on hydra.
48605 2016-06-08 Paul Eggert <eggert@cs.ucla.edu>
48607 * src/fileio.c (auto_save_error): Omit unused local.
48609 2016-06-08 Paul Eggert <eggert@cs.ucla.edu>
48611 Simplify overflow check via INT_SUBTRACT_WRAPV
48613 * src/editfns.c (check_tm_member): Simplify integer overflow check.
48615 2016-06-07 Glenn Morris <rgm@gnu.org>
48617 Try to avoid hangs and stray procs in network-stream-tests. (Bug#23560)
48619 * test/lisp/net/network-stream-tests.el (connect-to-tls-ipv4-wait)
48620 (connect-to-tls-ipv4-nowait, connect-to-tls-ipv6-nowait):
48621 Ensure gnutls-serv process gets killed.
48622 (echo-server-nowait, connect-to-tls-ipv4-nowait):
48623 Limit the amount of time we might wait.
48625 2016-06-07 Glenn Morris <rgm@gnu.org>
48627 Reduce allout.el's pollution of the namespace.
48629 * lisp/allout.el (allout-set-regexp): Rename from set-allout-regexp.
48630 Keep old name as obsolete alias.
48631 (allout-produce-mode-menubar-entries, allout-nullify-prefix-data)
48632 (allout-solicit-char-in-string)
48633 (allout-count-trailing-whitespace-region, allout-regexp-sans-escapes):
48634 Rename to add an "allout-" prefix.
48636 2016-06-07 Glenn Morris <rgm@gnu.org>
48638 * configure.ac (emacs_config_features): Add CANNOT_DUMP.
48640 2016-06-07 Glenn Morris <rgm@gnu.org>
48642 Misc small webjump updates.
48644 * lisp/net/webjump.el (webjump): Add custom group.
48645 (webjump-sample-sites): Make it a constant.
48646 Remove explicit, old list of GNU ftp mirrors.
48647 (webjump-state-to-postal-alist): Make it a constant.
48648 (webjump-sites): Make it a defcustom.
48649 (webjump-to-iwin): Update for changed remote service.
48651 2016-06-07 Glenn Morris <rgm@gnu.org>
48653 Do not hard-code port for package test server. (Bug#23708)
48655 * test/lisp/emacs-lisp/package-resources/package-test-server.py:
48656 Do not hard-code port.
48657 * test/lisp/emacs-lisp/package-tests.el (package-test-update-archives-async):
48658 Update for the above change.
48660 2016-06-07 Tino Calancha <f92capac@gmail.com>
48662 * lisp/ibuffer.el (ibuffer): Improve 'other-window' case. (Bug#23617)
48664 2016-06-07 Glenn Morris <rgm@gnu.org>
48666 * src/fileio.c (auto_save_error): Use display-warning. (Bug#23703)
48668 2016-06-07 Tino Calancha <f92capac@gmail.com>
48670 * lisp/ibuf-ext.el (ibuffer-do-shell-command-file):
48671 Fix non-file-visiting-buffer case. (Bug#22678)
48673 2016-06-07 Paul Eggert <eggert@cs.ucla.edu>
48675 Port --enable-gcc-warnings to clang 3.7.0
48677 * configure.ac: Add -Wno-tautological-compare to avoid bogus
48678 warnings about 0 <= rlim.rlim_max. Remove flags that no longer
48679 seem to be needed, at least in Fedora 23 x86-64.
48681 2016-06-07 Paul Eggert <eggert@cs.ucla.edu>
48683 Use __builtin_assume_aligned on untagged Lisp vals
48685 * src/conf_post.h (__has_builtin, __builtin_assume_aligned):
48686 New macros, for compilers not already defining them.
48687 (__has_builtin___builtin_assume_aligned): New macro.
48688 * src/lisp.h (lisp_h_XUNTAG): Use __builtin_assume_aligned.
48689 This shrinks text space by 0.2% on x86-64 with GCC 6.1.
48691 2016-06-07 Glenn Morris <rgm@gnu.org>
48693 * lisp/help-fns.el (describe-function-1): Avoid reporting advised
48694 aliases as the type of their targets.
48696 2016-06-07 Tino Calancha <f92capac@gmail.com>
48698 * lisp/simple.el (process-menu-mode, list-processes--refresh):
48699 Include PID. (Bug#21725)
48701 2016-06-07 Paul Eggert <eggert@cs.ucla.edu>
48703 Merge from origin/emacs-25
48705 6e3adf8 Fix crash in syntax.c after GC
48706 973ce5a Improve squiggly heredoc support in non-SMIE Ruby mode
48707 9d5cceb Fix doc string quoting
48708 0b33a23 Fix mouse dragging of vertical dividers with scroll bars on l...
48709 a5d05f4 * etc/PROBLEMS: Mention the link-time problems on FreeBSD 11.
48711 2016-06-07 Paul Eggert <eggert@cs.ucla.edu>
48713 Merge from origin/emacs-25
48715 604f656 * test/automated/viper-tests.el (viper-test-undo-kmacro): Del...
48716 20eb531 * lisp/mail/footnote.el (footnote-mode): Fix doc typo.
48717 a7a2244 * doc/misc/smtpmail.texi (Encryption): Fix 2012-12-22 typo.
48718 07bd972 * lisp/emacs-lisp/lisp-mode.el (lisp--mode-syntax-table): Fix...
48720 2016-06-06 Paul Eggert <eggert@cs.ucla.edu>
48722 Use standard Unicode names for Thai, Lao
48724 * lisp/language/lao-util.el, lisp/language/thai-util.el:
48725 Don’t override standard Unicode character name (Bug#23698).
48727 2016-06-06 Glenn Morris <rgm@gnu.org>
48729 * lisp/man.el (Man-reference-regexp, Man-default-man-entry):
48730 Handle U+2010 hyphen at eol, as used when LANG=en_US.utf8.
48732 2016-06-06 Michael Albinus <michael.albinus@gmx.de>
48734 Some fixes in filenotify-tests.el for cygwin
48736 * test/lisp/filenotify-tests.el (file-notify--test-timeout):
48737 Reintroduce value for cygwin, it's needed on slow systems.
48738 (file-notify--wait-for-events): Move up definition.
48739 (file-notify--test-no-descriptors): Use `file-notify--wait-for-events'.
48740 (file-notify--test-with-events-check, file-notify--test-with-events)
48741 (file-notify-test08-watched-file-in-watched-dir):
48742 Use :random rather than `random.
48743 (file-notify-test06-many-events): Do not skip for cygwin.
48745 2016-06-05 Juri Linkov <juri@linkov.net>
48747 * src/casefiddle.c (Fupcase_region): Add arg ‘region-noncontiguous-p’.
48749 If non-nil, operate on multiple chunks. (Bug#23655)
48751 * src/search.c (Freplace_match): Use Qnil for new arg of Fupcase_region.
48753 2016-06-05 Juri Linkov <juri@linkov.net>
48755 * lisp/wdired.el (wdired-next-line, wdired-previous-line): Add "^"
48757 to interactive spec to handle shift-selection. (Bug#23642)
48759 2016-06-05 Michael Albinus <michael.albinus@gmx.de>
48761 Improve robustness of filenotify-tests.el (Bug#23618)
48763 * test/lisp/filenotify-tests.el (file-notify--test-no-descriptors)
48764 (file-notify--test-no-descriptors-explainer)
48765 (file-notify--test-cleanup-p): New defuns.
48766 (file-notify--test-cleanup): Don't check for
48767 `file-notify--test-event' anymore, that's done in
48768 `file-notify--test-no-descriptors'.
48769 (file-notify--test-with-events-check)
48770 (file-notify--test-with-events): Handle the `random' marker.
48771 (file-notify--test-with-events-explainer): Improve readability.
48772 (file-notify-test00-availability)
48773 (file-notify-test01-add-watch, file-notify-test02-events)
48774 (file-notify-test03-autorevert)
48775 (file-notify-test04-file-validity)
48776 (file-notify-test05-dir-validity)
48777 (file-notify-test06-many-events, file-notify-test07-backup)
48778 (file-notify-test08-watched-file-in-watched-dir)
48779 (file-notify-test09-sufficient-resources): Check also
48780 `file-notify--test-cleanup-p'.
48781 (file-notify-test04-file-validity)
48782 (file-notify-test05-dir-validity): Use `ignore' as handler.
48783 (file-notify-test05-dir-validity)
48784 (file-notify-test06-many-events): Delete directory finally.
48785 (file-notify-test08-watched-file-in-watched-dir): Add `random' marker.
48787 2016-06-05 Stephen Berman <stephen.berman@gmx.net>
48789 man.el: Fix links on hyphenated words (bug#23647)
48791 * lisp/man.el (Man-bgproc-sentinel): Make links work on
48794 2016-06-05 K. Handa <handa@gnu.org>
48796 Add category 'j' to more characters.
48798 * lisp/international/characters.el: Add category 'j' (Japanese)
48799 to characters in japanese-jisx0213.2004-1.
48801 2016-06-04 Tino Calancha <f92capac@gmail.com>
48803 isearch-edit-string resumes multi isearches
48805 * lisp/isearch.el (with-isearch-suspended): Remember and restore
48806 multi-isearch variables. (Bug#21663)
48808 2016-06-04 Eli Zaretskii <eliz@gnu.org>
48810 Fix Eshell display when RTL characters are involved
48812 * lisp/eshell/esh-mode.el (eshell-mode): Set
48813 'bidi-paragraph-direction' to 'left-to-right'. (Bug#23652)
48815 2016-06-02 Vincent Belaïche <vincentb1@users.sourceforge.net>
48817 Make ses-jump with completing input.
48819 * lisp/ses.el (ses-jump): Make symbol input completing against list of
48822 2016-06-01 Paul Eggert <eggert@cs.ucla.edu>
48824 Port angle-bracket TZ settings to MS-Windows
48826 * doc/lispref/os.texi (Time Zone Rules): Document MS-Windows
48827 lack of support for numeric time zone abbreviations.
48828 * src/w32.c (sys_putenv): Convert angle-bracket TZ syntax
48829 to MS-compatible syntax if possible, and to "ZZZ" otherwise.
48830 Problem reported by Kazuhiro Ito (Bug#23600).
48832 2016-06-01 Paul Eggert <eggert@cs.ucla.edu>
48834 Avoid delving into Git internals for version
48836 * lisp/loadup.el (exec-path): Set it to nil later, so that
48837 emacs-repository-get-version can invoke git commands in the PATH.
48838 * lisp/version.el (emacs-repository--version-git-1): Remove.
48839 (emacs-repository-get-version): Let Git do it rather than
48840 delving into Git internals.
48842 2016-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
48844 * lisp/emacs-lisp/autoload.el (autoload--make-defs-autoload): Expand less
48846 2016-06-01 Paul Eggert <eggert@cs.ucla.edu>
48848 Fix emacs-repository-get-version with packed .git
48850 * lisp/version.el (emacs-repository-get-version):
48851 Parse .git/packed-refs if it exists.
48852 Problem reported by Martin Rudalics in:
48853 https://lists.gnu.org/r/emacs-devel/2016-05/msg00554.html
48855 2016-06-01 Michael Albinus <michael.albinus@gmx.de>
48857 Minor change in tramp.texi
48859 * doc/misc/tramp.texi (Password handling): Do not discuss
48860 anymore how to get password-cache.el. It is bundled with
48863 2016-06-01 Alan Mackenzie <acm@muc.de>
48865 Correct fontification and indentation of C++'s "constexpr" expressions
48867 * lisp/progmodes/cc-langs.el (c-type-modifier-kwds): Remove "constexpr".
48868 (c-modifier-kwds): Add "constexpr".
48870 2016-05-31 Ikumi Keita <ikumi@ikumi.que.jp>
48872 Cosmetic change to kinsoku-eol. (tiny change)
48874 * lisp/international/kinsoku.el (kinsoku-eol): Make the
48875 order of characters match with the comments.
48877 2016-05-31 Ikumi Keita <ikumi@ikumi.que.jp>
48879 Add HIRAGANA ITERATION MARK to japanese-kana-table. (tiny change)
48881 * lisp/language/japan-util.el (japanese-kana-table): Add an
48882 entry for HIRAGANA ITERATION MARK (U+309D).
48883 (japanese-alpha-numeric-table): Fix docstring.
48885 2016-05-31 K. Handa <handa@gnu.org>
48887 Fix incomplete handling of translation table in a coding system.
48889 * src/coding.c (get_translation): New arg NCHARS. Even if TRANS
48890 is an alist, return a character or a vector of character.
48891 (produce_chars): Adjust for the above change.
48892 (consume_chars): Likewise.
48894 2016-05-31 Michael Albinus <michael.albinus@gmx.de>
48896 Improve robustness for out-of-band copy in Tramp
48898 * lisp/net/tramp-adb.el (tramp-adb-execute-adb-command)
48899 * lisp/net/tramp-cmds.el (tramp-append-tramp-buffers)
48900 * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file):
48903 * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
48904 Use local `default-directory'. Simplify command to send.
48905 Don't check return code, this was already done in
48906 `tramp-process-actions'.
48907 (tramp-get-inline-coding): Don't set `default-directory'.
48909 * lisp/net/tramp.el (tramp-action-out-of-band):
48910 Throw `out-of-band-failed'.
48911 (tramp-process-actions): Handle `out-of-band-failed'.
48912 (tramp-call-process, tramp-call-process-region):
48913 Use local `default-directory'.
48915 2016-05-31 Paul Eggert <eggert@cs.ucla.edu>
48917 Merge from origin/emacs-25
48919 788c9b6 ; Spelling fix
48920 25c4a30 * lisp/recentf.el (recentf-dialog-mode-map): Remove follow-li...
48921 0992ec3 Correct cl-flet usage (Bug#22317)
48922 50caae3 Release MH-E manual version 8.6
48923 602bb40 Update MH-E's documentation about HTML renderers
48924 89018f0 Fx the we->the typo
48925 845ee57 Restore frames into the current display by default
48926 ee28b4c * lisp/recentf.el (recentf-open-files-item): Quick fix for (b...
48927 01c3cd1 etc/TODO: Remove out-of-place issue
48928 5e18486 Clarify doc string of 'file-name-sans-extension'
48929 bffda22 Fix the MSDOS build
48930 f907f98 * lisp/progmodes/elisp-mode.el (elisp-function-argstring): Ca...
48931 1a2ffd0 * src/dired.c (Ffile_name_all_completions): Doc fix. (Bug#23...
48932 f7ffc4b Fix infloop in 'number-sequence'
48933 4ab2673 ; Spelling and punctuation fixes in comments
48934 71c152e * lisp/emacs-lisp/find-func.el (find-function-library):
48936 2016-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
48938 * lisp/emacs-lisp/autoload.el: Use radix-tree.
48940 (autoload--make-defs-autoload): Rewrite.
48941 (autoload--split-prefixes-1): Remove.
48942 (autoload-def-prefixes-max-entries): Rename from
48943 autoload-defs-autoload-max-size.
48944 (autoload-popular-prefixes): Remove.
48945 (autoload-def-prefixes-max-length): New const.
48947 * lisp/emacs-lisp/radix-tree.el: New file.
48949 2016-05-30 Ken Brown <kbrown@cornell.edu>
48951 * src/conf_post.h (SYSTEM_PURESIZE_EXTRA) [CYGWIN]: Increase.
48953 2016-05-30 Paul Eggert <eggert@cs.ucla.edu>
48955 Omit IF_LINT code that no longer seems needed
48957 Nowadays GCC is smarter, or the Emacs code has mutated, or both,
48958 and now is as good a time as any to remove uses of IF_LINT that
48959 now seem to be unnecessary.
48960 * lib-src/emacsclient.c (set_local_socket):
48961 * lib-src/movemail.c (main) [MAIL_USE_MAILLOCK && HAVE_TOUCHLOCK]:
48962 * src/buffer.c (fix_start_end_in_overlays, fix_overlays_before):
48963 * src/casefiddle.c (casify_region):
48964 * src/charset.c (load_charset_map):
48965 * src/coding.c (decode_coding_object, encode_coding_object):
48966 * src/data.c (Fmake_variable_buffer_local, Fmake_local_variable)
48967 (cons_to_unsigned, cons_to_signed):
48968 * src/frame.c (make_frame, x_set_frame_parameters):
48969 * src/keyboard.c (read_event_from_main_queue):
48970 * src/regex.c (regex_compile):
48971 * src/syntax.c (back_comment):
48972 * src/window.c (Frecenter):
48973 * src/xfaces.c (Fx_list_fonts):
48974 Remove IF_LINT that no longer seems necessary.
48975 * src/image.c (png_load_body, jpeg_load_body): Simplify use of IF_LINT.
48976 * src/keyboard.c (read_char): Use IF_LINT (volatile) rather than
48977 a pragma dance to pacify GCC -Wclobbered.
48978 * src/xdisp.c (x_produce_glyphs): Rewrite to avoid need for IF_LINT.
48980 * src/xterm.c (x_connection_closed): Now _Noreturn, which should
48981 mean we do not need IF_LINT any more.
48982 (x_io_error_quitter): Now _Noreturn. Put an 'assume (false)’
48983 at the end, to forestall warnings from older compilers.
48985 2016-05-30 Paul Eggert <eggert@cs.ucla.edu>
48987 Port --enable-gcc-warnings to Cygwin, FreeBSD
48989 These platforms have a bug where _Noreturn is empty when 'lint' is
48990 defined. Problem reported by Ken Brown (Bug#23640).
48991 * configure.ac (GCC_LINT): Rename from 'lint'.
48992 * src/conf_post.h (IF_LINT): Use GCC_LINT, not just 'lint’.
48994 2016-05-30 Paul Eggert <eggert@cs.ucla.edu>
48999 2016-05-30 Use GCC_LINT, not lint
49000 2016-05-29 secure_getenv: Port to many more platforms.
49001 * doc/misc/texinfo.tex, lib/secure_getenv.c, lib/verify.h:
49002 * m4/secure_getenv.m4: Copy from gnulib.
49004 2016-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
49006 * lisp/emacs-lisp/pcase.el: Undo last change's spurious changes
49008 * lisp/emacs-lisp/pcase.el (pcase-mutually-exclusive-predicates): Add `atom'.
49010 2016-05-30 Ken Brown <kbrown@cornell.edu>
49012 * src/regex.c (IF_LINT): Remove; it’s in conf_post.h
49014 2016-05-30 Michael Albinus <michael.albinus@gmx.de>
49016 Fix Bug#23631 for Tramp
49018 * lisp/net/tramp-adb.el (tramp-adb-handle-file-name-all-completions)
49019 * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-name-all-completions)
49020 * lisp/net/tramp-sh.el (tramp-sh-handle-file-name-all-completions):
49021 Fix caching problems.
49023 * lisp/net/tramp-sh.el (tramp-perl-file-name-all-completions): Simplify.
49025 * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files):
49026 Move duplicate deletion ...
49027 (tramp-smb-handle-file-name-all-completions): ... here.
49029 * lisp/net/tramp.el (tramp-handle-file-name-completion):
49030 Handle `completion-ignored-extensions'. (Bug#23631)
49032 * test/lisp/net/tramp-tests.el (tramp-test24-file-name-completion):
49033 Test also `completion-regexp-list' and `completion-ignored-extensions'.
49035 2016-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
49037 * lisp/wid-edit.el (link): Remove :follow-link property (bug#22434)
49039 * lisp/recentf.el (recentf-dialog-mode-map): Remove unecessary mapping.
49041 2016-05-29 Lars Magne Ingebrigtsen <larsi@gnus.org>
49043 Fix up remainder of the mml property change
49045 * lisp/gnus/message.el (message-send-mail): Use the renamed
49046 mml-buffer-substring-no-properties-except-some function.
49047 (message-send-news): Ditto.
49049 2016-05-29 Lars Ingebrigtsen <larsi@gnus.org>
49051 Allow preserving EXIF rotations when sending HTML messages
49053 * lisp/gnus/mml.el (mml--possibly-alter-image): Allow image
49054 rotation if you have exiftool installed and the image format
49056 (mml-expand-html-into-multipart-related): Use it.
49057 (mml-buffer-substring-no-properties-except-some): Renamed and
49058 copy display properties, too.
49060 2016-05-29 Lars Ingebrigtsen <larsi@gnus.org>
49062 Make message-toggle-image-thumbnails work better
49064 * lisp/gnus/message.el (message-toggle-image-thumbnails): Use
49065 `insert-image' instead of `put-image' to make it possible to
49066 edit the resulting text in a sensible manner.
49068 2016-05-29 Alan Mackenzie <acm@muc.de>
49070 Rationalize the use of c-new-BEG and c-new-END in CC Mode.
49072 Remove the now redundant c-old-BOM and c-old-EOM.
49074 * lisp/progmodes/cc-engine.el (c-macro-cache-syntactic): Change and simplify
49076 (c-macro-cache-no-comment): New variable.
49077 (c-invalidate-macro-cache, c-beginning-of-macro, c-end-of-macro): incorporate
49078 the new c-macro-cache-no-comment.
49079 (c-syntactic-end-of-macro): Make better use of c-macro-cache-syntactic.
49080 (c-no-comment-end-of-macro): New function.
49082 * lisp/progmodes/cc-langs.el (c-before-font-lock-functions): Add
49083 c-extend-font-lock-region-for-macros to C/C++/ObjC value.
49085 * lisp/progmodes/cc-mode.el (c-old-BOM, c-old-EOM): Remove.
49086 (c-extend-region-for-CPP): Put results in c-new-BEG/END rather than
49088 (c-extend-font-lock-region-for-macros): Simplify meaning, no longer returning
49089 a cons for the new region, since the function is now called as an after-change
49090 function. No longer adjust c-new-END for the length of inserted/deleted
49091 text. Move the size restrictions on macros to here from
49092 c-neutralize-syntax-in-and-mark-CPP.
49093 (c-neutralize-syntax-in-and-mark-CPP): No longer adjust c-new-BEG/END here.
49094 Use c-no-comment-end-of-macro rather than c-syntactic-end-of-macro to find the
49095 upper boundary to "neutralize" syntactically obtrusive characters.
49096 (c-change-expand-fl-region): Don't set c-new-END to next BOL when already at
49099 2016-05-28 Ken Brown <kbrown@cornell.edu>
49101 Avoid compiler warnings
49103 * src/cygw32.c (chdir_to_default_directory): Use "void" as
49104 argument list. Use SSDATA instead of SDATA.
49106 * src/unexcw.c (fixup_executable): Use %td as format specifier for
49107 argument of type ptrdiff_t. Use %zu for argument of type size_t.
49109 2016-05-28 Eli Zaretskii <eliz@gnu.org>
49111 Fix 'next-line' and 'previous-line' during keyboard macro
49113 * lisp/simple.el (line-move-visual): Handle the case when point
49114 moves outside of the visible portion of the buffer while executing
49115 a keyboard macro. (Bug#13452) (Bug#23551) (Bug#23555)
49117 2016-05-28 Alan Mackenzie <acm@muc.de>
49119 C++ Mode: attribute in class declaration fouls up indentation. Fix!
49121 * lisp/progmodes/cc-engine.el (c-looking-at-decl-block): Add code to skip
49122 back over noise clauses and attribute clauses.
49124 * lisp/progmodes/cc-langs.el (c-paren-nontype-key): New language variable.
49126 2016-05-28 Ken Olum <kdo@cosmos.phy.tufts.edu>
49128 Prevent locked-file errors in Rmail
49130 * lisp/mail/rmail.el (rmail-get-new-mail-1): Lock file before
49131 calling 'rmail-insert-inbox-text'. Unlock if
49132 'rmail-insert-inbox-text' doesn't modify buffer.
49133 (rmail-insert-inbox-text): Remove lock-checking code. (Bug#17706)
49135 2016-05-28 Michael Albinus <michael.albinus@gmx.de>
49137 Sync with Tramp repository.
49139 * lisp/net/tramp-adb.el (tramp-adb-handle-start-file-process):
49140 * lisp/net/tramp-sh.el (tramp-sh-handle-start-file-process)
49141 * lisp/net/tramp-smb.el (tramp-smb-handle-start-file-process):
49142 Create BUFFER if it doesn't exist. Reported by Nikolay
49143 Kudryavtsev <nikolay.kudryavtsev@gmail.com>.
49145 * lisp/net/tramp-gvfs.el (tramp-gvfs-file-attributes)
49146 (tramp-gvfs-file-attributes-with-gvfs-ls-regexp)
49147 (tramp-gvfs-file-attributes-with-gvfs-info-regexp): New defconst.
49148 (tramp-gvfs-get-directory-attributes)
49149 (tramp-gvfs-get-root-attributes)
49150 (tramp-gvfs-get-file-attributes): New defun.
49151 (tramp-gvfs-handle-file-attributes)
49152 (tramp-gvfs-handle-file-name-all-completions): Use them.
49153 (tramp-gvfs-handle-file-directory-p): Use `file-truename'.
49154 (tramp-gvfs-maybe-open-connection): Set :noquery flag for process.
49155 (tramp-gvfs-send-command): Add locale settings to `process-environment'.
49156 (top): Suppress D-Bus error messages during zeroconf initialization.
49158 * lisp/net/tramp.el (tramp-unknown-id-string)
49159 (tramp-unknown-id-integer): New defconst.
49160 (tramp-check-cached-permissions)
49161 * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes)
49162 * lisp/net/tramp-sh.el (tramp-do-file-attributes-with-ls)
49163 (tramp-convert-file-attributes, tramp-get-remote-uid)
49164 (tramp-get-remote-gid): Use them.
49166 * lisp/net/tramp-sh.el (tramp-display-escape-sequence-regexp):
49167 Rename from `tramp-color-escape-sequence-regexp'.
49168 (tramp-sh-handle-insert-directory)
49169 (tramp-convert-file-attributes): Adapt callees.
49170 (tramp-device-escape-sequence-regexp): New defconst.
49171 (tramp-wait-for-output): Use it. Reported by Matthías Páll
49172 Gissurarson <icetritlo@gmail.com>.
49174 * lisp/net/tramp-smb.el (tramp-smb-handle-file-name-all-completions):
49177 * test/lisp/net/tramp-tests.el (tramp-test26-process-file)
49178 (tramp-test28-shell-command):
49179 Use `tramp-display-escape-sequence-regexp'.
49181 2016-05-27 Paul Eggert <eggert@cs.ucla.edu>
49183 Don’t document declare-function internals
49185 Suggested by Stefan Monnier in:
49186 https://lists.gnu.org/r/emacs-devel/2016-05/msg00618.html
49187 * doc/lispref/functions.texi (Declaring Functions):
49188 * lisp/subr.el (declare-function):
49189 * lisp/emacs-lisp/bytecomp.el:
49190 (byte-compile-macroexpand-declare-function):
49191 Document as (fn file &optional arglist fileonly)
49192 even though it is really (fn file &rest args).
49194 2016-05-27 Paul Eggert <eggert@cs.ucla.edu>
49196 * src/puresize.h (BASE_PURESIZE): Increase it some more.
49198 2016-05-27 Glenn Morris <rgm@gnu.org>
49200 * src/puresize.h (BASE_PURESIZE): Increase it by a little bit.
49202 * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Tweak previous to
49203 avoid build failure.
49205 2016-05-27 Paul Eggert <eggert@cs.ucla.edu>
49207 Port to platforms where rlim_max < 0
49209 * src/emacs.c (main): Do not treat a negative rlim_max as a limit;
49210 this can happen if a special value like RLIM_INFINITY is negative.
49212 2016-05-27 Paul Eggert <eggert@cs.ucla.edu>
49214 Robustify stack-size calculation
49216 * src/emacs.c: Include getpagesize.h.
49217 (main): Check for integer overflow when computing stack size.
49218 Round new rlim_cur to pagesize boundary on all platforms, as this
49219 is easy and would have prevented Bug#23622. If setrlimit
49220 fails, use current limit to determine re_max_failures.
49222 2016-05-27 Ken Brown <kbrown@cornell.edu>
49224 Adjust filenotify-tests on Cygwin
49226 * test/lisp/filenotify-tests.el (file-notify--test-timeout):
49227 Remove special case for Cygwin.
49228 (file-notify-test07-backup): Update expected results on Cygwin.
49230 2016-05-27 Paul Eggert <eggert@cs.ucla.edu>
49232 Improve define-function omitted-arg documentation
49234 * doc/lispref/functions.texi (Declaring Functions):
49235 * lisp/subr.el (declare-function):
49236 Be clearer when documenting omitted args for define-function.
49238 2016-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
49240 * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Add docstring to accessors.
49242 2016-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
49244 * lisp/subr.el (definition-prefixes): Expand docstring
49246 * lisp/emacs-lisp/autoload.el (autoload--split-prefixes):
49247 Remove unused function.
49249 2016-05-27 Phillip Lord <phillip.lord@russet.org.uk>
49251 Fix broken viper deactivation
49253 * lisp/emulation/viper.el (viper--deactivate-advice-list): Destructure
49254 args to advice-remove.
49255 (viper--advice-add): Use cons not list.
49257 Addresses bug#23625
49259 2016-05-27 Mark Oteiza <mvoteiza@udel.edu>
49261 Preserve buffer point in windows by default (Bug#4041).
49263 * doc/lispref/windows.texi: Mention new default.
49264 * etc/NEWS: Mention new default.
49265 * lisp/window.el (switch-to-buffer-preserve-window-point): Default to t.
49267 2016-05-26 Paul Eggert <eggert@cs.ucla.edu>
49269 Fix byte-compiler pacification for declare-function
49271 Problem reported by Michael Heerdegen in:
49272 https://lists.gnu.org/r/emacs-devel/2016-05/msg00590.html
49273 * lisp/emacs-lisp/bytecomp.el:
49274 (byte-compile-macroexpand-declare-function):
49275 Revert signature to previous value.
49276 * lisp/subr.el (declare-function): Change signature to
49277 match the reverted signature used in the byte compiler.
49279 2016-05-26 Paul Eggert <eggert@cs.ucla.edu>
49283 This fixes Bug#23611 in a different (and presumably better) way.
49284 * doc/misc/texinfo.tex: Update from gnulib.
49286 2016-05-26 Paul Eggert <eggert@cs.ucla.edu>
49288 Pacify 'make check-declare'
49290 2016-05-26 Paul Eggert <eggert@cs.ucla.edu>
49292 Repair damage from emacs-25 merge
49294 * test/lisp/character-fold-tests.el:
49295 Remove, as it was renamed to test/lisp/char-fold-tests.el.
49296 * test/lisp/emulation/viper-tests.el:
49297 Rename from test/automated/viper-tests.el.
49299 2016-05-26 Paul Eggert <eggert@cs.ucla.edu>
49301 Merge from origin/emacs-25
49303 c3489d0 * lisp/w32-fns.el (set-message-beep, w32-get-locale-info) (w3...
49304 a4d882c Correct old cell name unbinding when renaming cell.
49305 6c12c53 Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into...
49306 0be6725 Document problem: slow screen refresh on missing font.
49307 853b9b9 * admin/admin.el (add-release-logs): Basic check of existing ...
49308 5fa80cf * build-aux/gitlog-to-emacslog: Handle empty generated Change...
49309 3c79e51 * admin/admin.el (add-release-logs): Generate ChangeLog if ne...
49310 42275df * doc/misc/texinfo.tex: Revert previous change (Bug#23611).
49311 3f4a9d9 * admin/authors.el (authors): First update the ChangeLog.
49312 897fb6f ; 'Changes from the pre-25.1 API' copyedits
49313 825ca25 Rename vc-stay-local back to vc-cvs-stay-local
49314 4efb3e8 * doc/emacs/files.texi (Comparing Files): * doc/emacs/trouble...
49315 b995d1e * doc/misc/eww.texi (Advanced): Fix xref.
49316 2e589c0 Fix cross-references between manuals
49317 f3d2ded * doc/misc/vhdl-mode.texi (Sample Init File): Rename node to ...
49318 906c810 ; * admin/release-process: Move etc/HISTORY from here... ; * ...
49319 bea1b65 * admin/admin.el (add-release-logs): Also update etc/HISTORY.
49320 503e752 ; * CONTRIBUTE: Fix a typo.
49321 fbfd478 Avoid aborting due to errors in arguments of 'set-face-attrib...
49322 bdfbe6d ; * admin/release-process: Copyedits.
49323 44a6aed ; * test/automated/data-tests.el: Standardize license notice.
49324 c33ed39 ; * test/automated/viper-tests.el: Standardize license notice.
49325 df4a14b Add automated test for viper-tests.el
49326 c0139e3 Fix viper undo breakage from undo-boundary changes
49327 920d76c Fix reference to obsolete fn ps-eval-switch
49328 18a9bc1 Do not trash symlinks to init file
49329 2671179 Don't print the "decomposition" line for control chars in wha...
49330 869092c Bring back xterm pasting with middle mouse
49331 5ab0830 Provide workaround for xftfont rendering problem
49332 c9f7ec7 * lisp/desktop.el: Disable restore frameset if in non-graphic...
49333 30989a0 Mention GTK+ problems in etc/PROBLEMS
49334 421e3c4 * lisp/emacs-lisp/package.el (package-refresh-contents):
49335 dadfc30 Revert "epg: Add a way to detect gpg1 executable for tests"
49336 e41a5cb Avoid errors with Czech and Slovak input methods
49337 d4ae6d7 epg: Add a way to detect gpg1 executable for tests
49338 ebc3a94 * lisp/emacs-lisp/package.el: Fix free variable warnings.
49339 6e71295 * lisp/emacs-lisp/package.el (package--with-response-buffer):
49340 c45d9f6 Improve documentation of 'server-name'
49341 3b5e38c Modernize ASLR advice in etc/PROBLEMS
49342 1fe1e0a * lisp/char-fold.el: Rename from character-fold.el.
49344 2016-05-26 Eli Zaretskii <eliz@gnu.org>
49346 Avoid byte-compiler warnings due to 'declare-function'
49348 * lisp/w32-fns.el (set-message-beep, w32-get-locale-info)
49349 (w32-get-valid-locale-ids):
49350 * lisp/progmodes/js.el (ido-mode): Specify arglist in
49351 'declare-function' forms, to avoid byte-compiler warnings.
49353 2016-05-26 Glenn Morris <rgm@gnu.org>
49355 * lisp/info.el (Info-default-directory-list): Don't check /share,info.
49357 No-one puts info pages there. If /share does exist, it's likely to
49358 contain remote file systems where access could be slow.
49360 2016-05-26 Paul Eggert <eggert@cs.ucla.edu>
49362 Merge from origin/emacs-25
49364 2d76405 etc/AUTHORS: Update the AUTHORS file
49366 2016-05-26 Paul Eggert <eggert@cs.ucla.edu>
49368 Merge from origin/emacs-25
49370 06cb28f Fix bug#23462: Crash when iconifying frame on OS X.
49372 2016-05-26 Paul Eggert <eggert@cs.ucla.edu>
49374 Merge from origin/emacs-25
49376 939eb75 Fix bug in default setting of 'ps-paper-type'
49378 2016-05-26 Glenn Morris <rgm@gnu.org>
49380 * lisp/info.el (Info-default-directory-list): Remove obsolete suffixes.
49382 2016-05-26 Michael Albinus <michael.albinus@gmx.de>
49386 * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
49387 Let-bind `process-coding-system-alist' in order to suppress
49388 the value for "cmdproxy".
49390 * lisp/net/tramp.el (tramp-encoding-shell):
49391 `w32-shell-name' is a function.
49392 (tramp-encoding-command-switch)
49393 (tramp-encoding-command-interactive): Use `w32-shell-dos-semantics'.
49395 * test/lisp/net/tramp-tests.el (tramp-test24-file-name-completion):
49396 Suppress some tests on MS Windows. (Bug#23614)
49398 2016-05-26 Stephen Berman <stephen.berman@gmx.net>
49400 hl-line.el: Fix flickering of highlighted line (bug#23510)
49402 * lisp/hl-line.el (hl-line-maybe-unhighlight)
49403 (global-hl-line-highlight-all)
49404 (global-hl-line-maybe-unhighlight): New functions.
49405 (hl-line-overlay-buffer): New variable.
49406 (hl-line-mode): Use it. Replace hl-line-unhighlight on
49407 pre-command-hook by hl-line-maybe-unhighlight on
49408 post-command-hook, to prevent hl-line from flickering.
49409 Adjust document string.
49410 (global-hl-line-mode): Use global-hl-line-highlight-all to
49411 simultaneously highlight the current line in all live windows.
49412 Replace global-hl-line-unhighlight on pre-command-hook by
49413 global-hl-line-maybe-unhighlight on post-command-hook, to
49414 prevent global-hl-line from flickering. Remove
49415 global-hl-line-unhighlight from change-major-mode-hook on
49416 disabling the mode. Adjust document string.
49418 2016-05-25 Stefan Monnier <monnier@iro.umontreal.ca>
49420 Make autoloads populate a new definition-prefixes table
49422 * lisp/subr.el (definition-prefixes): New hash table.
49423 (register-definition-prefixes): New function.
49425 * lisp/emacs-lisp/autoload.el (autoload-compute-prefixes): New var.
49426 (autoload--split-prefixes-1, autoload--split-prefixes)
49427 (autoload--make-defs-autoload): New functions.
49428 (autoload-defs-autoload-max-size, autoload-popular-prefixes): New vars.
49429 (autoload-generate-file-autoloads): Obey autoload-compute-prefixes.
49430 (update-directory-autoloads): Don't touch loaddefs.el if the set of
49431 autoloads hasn't changed (i.e. if only the timestamp would change).
49433 * lisp/loadup.el: Purify definition-prefixes.
49435 * lisp/w32-fns.el: Keep name space clean.
49436 (w32-set-default-process-coding-system): Rename from
49437 set-default-process-coding-system.
49438 (w32-set-system-coding-system): Rename from set-w32-system-coding-system.
49440 2016-05-24 Ken Brown <kbrown@cornell.edu>
49442 Allow network-stream-tests to work for out-of-tree builds
49444 * test/lisp/net/network-stream-tests.el
49445 (network-stream-tests--datadir): New defconst.
49446 (make-tls-server): Use it.
49448 2016-05-24 Ken Brown <kbrown@cornell.edu>
49450 Fix failing echo-server-nowait test
49452 * test/lisp/net/network-stream-tests.el (echo-server-nowait):
49453 Specify IPv4 for the client, to match the family of the server.
49456 2016-05-24 Ken Brown <kbrown@cornell.edu>
49458 Allow shr-tests to work for out-of-tree builds
49460 * test/lisp/net/shr-tests.el (shr-tests--datadir): New defconst.
49461 (shr-test, rendering): Use it.
49463 2016-05-24 Ken Brown <kbrown@cornell.edu>
49465 Update allowable arguments for open-network-stream
49467 * src/coding.c (Ffind_operation_coding_system): Allow t as a
49468 target for open-network-stream. (Bug #23540)
49470 2016-05-24 Dmitry Gutov <dgutov@yandex.ru>
49472 Make js-mode's syntax highlighting work again
49474 * lisp/progmodes/js.el (js-mode): Fix the assigned
49475 font-lock-defaults value (bug#23603).
49477 2016-05-23 Stefan Monnier <monnier@iro.umontreal.ca>
49479 * lisp/progmodes/cc-mode.el: Add minor comments
49481 (c-change-expand-fl-region): Mark args as unused.
49483 2016-05-23 Stefan Monnier <monnier@iro.umontreal.ca>
49485 * lisp/url/url-http.el: Use lexical-binding
49487 (url-http-simple-after-change-function): Use buffer-size rather than `nd'.
49488 (url-http-wait-for-headers-change-function): Remove unused var
49490 (url-http): Remove unused vars `host' and `port'.
49492 2016-05-23 Stefan Monnier <monnier@iro.umontreal.ca>
49494 * lisp/widget.el (define-widget): Use `declare' (which does work now).
49496 (widget-plist-member): Mark as obsolete.
49498 2016-05-23 Stefan Monnier <monnier@iro.umontreal.ca>
49500 * lisp/image.el: Use lexical-binding
49502 (image-scaling-factor, imagemagick-types-inhibit)
49503 (imagemagick-enabled-types): Remove redundant :group.
49504 (image--get-image): Apply de-Morgan and use car-safe.
49505 (image-compute-scaling-factor): Use the argument.
49507 2016-05-23 Glenn Morris <rgm@gnu.org>
49509 * lisp/image.el (image--get-image): Remove nonsensical code.
49511 * lisp/image.el (image--get-image): Avoid requiring a library for
49512 one trivial operation.
49514 2016-05-23 Paul Eggert <eggert@cs.ucla.edu>
49516 Don’t use only last protocol from getaddrinfo
49518 Problem reported by Ken Brown in:
49519 https://lists.gnu.org/r/emacs-devel/2016-05/msg00483.html
49520 * src/process.c (conv_addrinfo_to_lisp): New function.
49521 (connect_network_socket): Arg is now a list of addrinfos, not
49522 merely IP addresses. All uses changed. Use protocol from
49524 (Fmake_network_process): Accumulate protocols into addrinfos
49525 rather than just using the last one found.
49526 (check_for_dns): Accumulate protocols here, too.
49527 * src/process.h (struct Lisp_Process): Remove ai_protocol;
49530 2016-05-23 Paul Eggert <eggert@cs.ucla.edu>
49532 Fix seq requirement that broke bootstrap
49534 * lisp/image.el (image--get-image): Require seq here, not at the
49535 top level, to avoid ‘(require seq) while preparing to dump’ while
49536 bootstrapping. Suggested by Tino Calancha in:
49537 https://lists.gnu.org/r/emacs-devel/2016-05/msg00477.html
49539 2016-05-22 Nicolas Petton <nicolas@petton.fr>
49541 Add missing dependencies to seq.el
49543 * lisp/emacs-lisp/find-func.el:
49545 * lisp/image.el: Require seq.
49547 2016-05-22 Alp Aker <alp@food52.com>
49549 * src/process.c (SOCK_NONBLOCK): Fix typo.
49551 2016-05-22 Etienne Prud’homme <e.e.f.prudhomme@gmail.com>
49553 Add completion of colors in CSS mode
49555 * lisp/textmodes/css-mode.el (css-value-class-alist): Add CSS colors
49556 from "CSS Color Module Level 3".
49558 * test/lisp/textmodes/css-mode-tests.el (css-test-property-values):
49561 2016-05-21 Paul Eggert <eggert@cs.ucla.edu>
49563 Prefer SOCK_NONBLOCK to O_NONBLOCK
49565 * src/process.c (SOCK_NONBLOCK): Define to 0 if not already defined.
49566 (connect_network_socket): Create the socket with SOCK_NONBLOCK, to
49567 avoid an fcntl with O_NONBLOCK if SOCK_NONBLOCK works. Put the
49568 SOCK_DGRAM check a bit later, to keep the logic cleaner, as
49569 the order does not matter here.
49571 2016-05-21 Alan Third <alan@idiocy.org>
49573 Fix bug#16856, cursor leaves garbage in fringe on OS X.
49575 * src/nsterm.m (ns_draw_window_cursor): Prevent the cursor from
49576 being drawn outside the text area.
49578 2016-05-21 Eli Zaretskii <eliz@gnu.org>
49580 Fix compiler warnings in the MinGW build
49582 * configure.ac [mingw32]: Don't add -Wpointer-sign, and add
49583 -Wno-pointer-sign, to keep the noise level down.
49585 * nt/mingw-cfg.site (gl_cv_warn_c__Wredundant_decls): Disable
49586 -Wredundant-decls, as that produces a lot of noise due to
49587 redeclaration of time-related functions by gnulib.
49588 * nt/runemacs.c (set_user_model_id): Fix argument type of
49589 'SetCurrentProcessExplicitAppUserModelID'.
49591 * src/image.c (x_create_bitmap_from_file) [HAVE_NTGUI]: Don't
49592 declare 'dpyinfo', as it is unused.
49593 (xpm_load): Fix warnings about pointer signedness.
49594 * src/w32proc.c (IsValidLocale, init_winsock): Remove redundant
49596 (sys_spawnve): Avoid warnings about discarding 'const' qualifier.
49597 (sys_select): Provide prototype.
49598 (g_b_init_compare_string_w): Move declaration to file scope.
49599 * src/w32heap.c (dumped_data_commit): Now static.
49600 (FREEABLE_P): Avoid warnings about pointer comparison with integer.
49601 (mmap_realloc): Cast to 'char *' for arithmetics on void pointers.
49602 * src/w32console.c (ctrl_c_handler, sys_tputs, sys_tgetstr)
49603 (evalcost, cmputc, cmcheckmagic, cmcostinit, cmgoto, Wcm_clear):
49604 Provide prototypes.
49605 * src/w32.c (globals_of_w32, conv_sockaddr_to_lisp): Remove
49606 redundant prototypes.
49607 (w32_get_internal_run_time, map_w32_filename): Provide prototype.
49608 (init_environment, sys_ctime): Avoid warnings about discarding
49611 (sys_ctime, sys_chdir, sys_creat, sys_fopen, sys_mkdir)
49612 (sys_open, sys_rename, sys_rmdir, is_slow_fs, term_winsock)
49613 (sys_close, sys_dup2, sys_read, sys_write, sys_localtime): Provide
49615 (sys_rename_replace): Use %d to avoid compiler warnings.
49616 (_wsa_errlist): Make the message text 'const char *', to avoid
49617 compilation warnings.
49618 (dynlib_reset_last_error): Move prototype to file scope.
49619 (w32_get_resource): First argument is now 'const char *'.
49620 * src/w32uniscribe.c (syms_of_w32uniscribe): Provide prototype.
49621 (otf_features): Second argument is no 'const char *'.
49622 * src/w32term.c (free_frame_menubar, x_wm_set_size_hint)
49623 (x_set_window_size): Remove redundant prototypes.
49624 (XChangeGC, XGetGCValues, w32_draw_underwave)
49625 (w32_draw_rectangle, w32_shift_glyphs_for_insert, x_mouse_leave)
49626 (x_calc_absolute_position, x_destroy_window): Now static.
49627 (menubar_selection_callback): Move prototype to file scope.
49628 * src/w32font.c (g_b_init_get_glyph_outline_w): Remove redundant
49630 (w32_to_x_charset): Fix warnings about discarding 'const' qualifier.
49631 (w32font_full_name): Fix warnings about implicit conversion of
49632 'float' to 'double'.
49633 * src/w32reg.c (w32_get_rdb_resource): Fix warnings about
49634 discarding 'const' qualifier.
49635 * src/w32menu.c (syms_of_w32menu, globals_of_w32menu)
49636 (set_frame_menubar): Remove redundant prototypes.
49637 (menubar_selection_callback, w32_menu_display_help): Provide
49639 (simple_dialog_show): Avoid warnings about discarding 'const'
49641 * src/w32fns.c (syms_of_w32fns, globals_of_w32fns)
49642 (free_frame_menubar, w32_strerror, x_set_menu_bar_lines)
49643 (x_set_tool_bar_lines, x_set_internal_border_width): Remove
49644 redundant prototypes.
49645 (current_popup_menu): Remove redundant declaration.
49646 (colormap_t): Member 'name' is now 'const char *'.
49647 (add_system_logical_colors_to_map): Fix signed/unsigned warnings.
49648 (x_decode_color, x_set_border_pixel)
49649 (x_clear_under_internal_border, x_set_name, hook_w32_key)
49650 (reset_w32_kbdhook_state, deliver_wm_chars, w32_backtrace): Now
49652 (w32_load_cursor, w32_key_to_modifier, map_keypad_keys)
49653 (w32_msg_worker, w32_last_error): Provide prototypes.
49654 (funhook, lookup_vk_code): Avoid warnings about missing
49656 (x_default_font_parameter, Fw32_notification_notify): Avoid
49657 warnings about discarding 'const' qualifier.
49658 (Fx_create_frame): Avoid warnings about empty body of 'else'.
49659 (x_screen_planes): Ifdef away unused function.
49660 (Fx_show_tip): Remove unused variables.
49661 (Fw32_battery_status): Avoid warnings about implicit promotion
49662 from float to double.
49663 (Fw32_notification_notify): Initialize 'timeout'.
49664 * src/profiler.c (profiler_cpu_running) [HAVE_ITIMERSPEC]: Only
49665 define the TIMER_SETTIME_RUNNING value if it will be used.
49666 * src/w32notify.c (send_notifications): Ifdef away an empty if
49667 clause. Remove unused variable.
49668 (watch_end, watch_completion): Provide prototypes.
49669 * src/sound.c (sound_warning) [WINDOWSNT]: Don't define: unused.
49670 * src/callproc.c (child_setup, getenv_internal_1) [WINDOWSNT]: Fix
49671 warning with pointer signedness.
49672 * src/gnutls.c (gnutls_x509_crt_get_signature)
49673 (gnutls_alert_send_appropriate) [WINDOWSNT]: Don't define, and
49674 don't load them from the GnuTLS library, as they are no longer
49676 * src/process.c (DATAGRAM_CHAN_P) [!DATAGRAM_SOCKETS]: Don't
49677 define, as it's unused.
49678 * src/unexw32.c (open_input_file, open_output_file)
49679 (close_file_data): Remove redundant prototypes.
49680 (_start): provide prototype.
49681 (mainCRTStartup): Move prototype to file level.
49682 (find_section): Use type-cast to shut up compiler warnings.
49683 (offset_to_section, relocate_offset): Now static.
49684 (find_section): First argument is now a 'const char *'.
49685 (offset_to_section): Ifdef away, as it's unused.
49686 * src/w32heap.h (find_section): Adjust prototype.
49687 * src/dynlib.c (dynlib_reset_last_error): Provide prototype.
49688 * src/dired.c (directory_files_internal_w32_unwind): Avoid
49689 warnings about missing prototypes.
49690 (is_slow_fs) [WINDOWSNT]: Provide prototype at file level.
49691 (directory_files_internal) [WINDOWSNT]: Fix warnings about pointer
49693 * src/fileio.c (Ffile_writable_p, Ffile_regular_p) [WINDOWSNT]:
49694 Fix warnings about pointer signedness.
49695 * src/filelock.c (WTMP_FILE) [WINDOWSNT]: Don't define, it's
49697 * src/sysdep.c (_getpid): Remove redundant prototype.
49698 (sys_subshell) [DOS_NT]: Don't define 'status', it's unused.
49699 [!MSDOS]: Don't define 'st', it's unused.
49700 (init_sys_modes) [DOS_NT]: Don't define 'terminal', it's unused.
49701 (str_collate) [WINDOWSNT]: Avoid warnings about pointer signedness.
49702 * src/keyboard.c (tty_read_avail_input) [WINDOWSNT]: Don't define
49703 n_to_read, as it is not used.
49704 (MAX_ENCODED_BYTES) [WINDOWSNT]: Don't define, as it's unused.
49705 * src/w32font.h (syms_of_w32font): Remove redundant prototype.
49706 * src/xfaces.c (x_display_info) [HAVE_NTGUI]: Remove unused macro.
49707 * src/term.c (init_tty) [DOS_NT]: Ifdef away variables that are
49708 not used by DOS_NT builds, to avoid compiler warnings.
49709 * src/menu.c (current_popup_menu) [HAVE_NTGUI]: Remove redundant
49711 * src/dispnew.c (init_display) [WINDOWSNT]: Use type-cast to shut
49712 up compiler warnings.
49713 * src/w32term.h (x_set_window_size, x_get_focus_frame)
49714 (x_make_frame_visible, x_make_frame_invisible, x_iconify_frame)
49715 (x_set_frame_alpha, x_activate_menubar, x_bitmap_icon)
49716 (x_free_frame_resources, x_real_positions)
49717 (display_x_get_resource): Remove redundant prototypes.
49719 * lib-src/ntlib.c (sys_ctime, sys_fopen, sys_chdir, mkostemp)
49720 (sys_rename, gettimeofday): Provide prototypes.
49721 * lib-src/ntlib.h (getuid, geteuid, mkostemp): Remove redundant
49723 * lib-src/emacsclient.c (w32_getenv): Argument is now 'const char *'.
49724 (xstrdup, w32_get_resource, w32_window_app, w32_execvp, ttyname)
49725 (close_winsock, initialize_sockets, w32_set_user_model_id)
49726 (w32_find_emacs_process, w32_give_focus) [WINDOWSNT]: Add
49728 (w32_get_resource) [WINDOWSNT]: Fix a warning about signedness
49730 (w32_set_user_model_id): Update prototype of
49731 SetCurrentProcessExplicitAppUserModelID to avoid compiler
49733 (start_daemon_and_retry_set_socket) [WINDOWSNT]: Use type-cast to
49734 shut up compiler warnings.
49735 * lib-src/etags.c (MAXPATHLEN) [WINDOWSNT]: Remove unused macro.
49737 2016-05-21 Eli Zaretskii <eliz@gnu.org>
49739 Fix 'vertical-motion' and 'posn-at-point' under 'visual-line-mode'
49741 * src/xdisp.c (move_it_in_display_line_to): Don't assume we can
49742 wrap on a whitespace character if it's followed by another
49743 whitespace character. When returning under WORD_WRAP for a screen
49744 line that is continued, restore to wrap point when atpos/atx
49745 position would be displayed on the next screen line due to
49746 line-wrap. (Bug#23570)
49748 2016-05-21 Puneeth Chaganti <punchagan@muse-amuse.in>
49750 * lisp/svg.el (svg-create): Fix a typo: xmlsn -> xmlns. (Bug#23589)
49752 2016-05-20 Andrew Hyatt <ahyatt@gmail.com>
49754 Added tests for dos unibyte decoding.
49756 The underlying bug was previously fixed by Eli Zaretskii in commit
49757 c8109d9c4057d8cac79e2c139758cadd410e7446.
49759 2016-05-20 Philipp Stephani <phst@google.com>
49761 Fix handling of ‘mouse-on-link-p’.
49763 If ‘mouse-on-link-p’ returns a string or vector, the first element
49764 is to be used as new event. Translation to ‘mouse-2’ should only
49765 happen if the return value is not a string or vector. See
49766 docstring of ‘mouse-on-link-p’ and Bug#23288.
49768 * lisp/mouse.el (mouse--down-1-maybe-follows-link): Process return
49769 value of ‘mouse-on-link-p’ according to documentation.
49771 * test/lisp/mouse-tests.el (bug23288-use-return-value)
49772 (bug23288-translate-to-mouse-2): Tests for Bug#23288.
49774 2016-05-20 Daiki Ueno <ueno@gnu.org>
49776 epg: Add a way to detect gpg1 executable for tests
49780 * test/automated/epg-tests.el
49781 (epg-tests-program-alist-for-passphrase-callback): New
49783 (epg-tests-find-usable-gpg-configuration): New function,
49784 renamed from `epg-tests-gpg-usable'. All callers changed.
49785 (epg-tests-gpg-usable): Remove.
49787 * lisp/epg-config.el (epg-config--program-alist): Factor out
49788 constructor element to...
49789 (epg-config--configuration-constructor-alist): ...here.
49790 (epg-find-configuration): Rename FORCE argument to NO-CACHE,
49791 and add PROGRAM-ALIST argument.
49793 2016-05-19 Mark Oteiza <mvoteiza@udel.edu>
49795 Put point at beginning of display-time-world buffer.
49797 If display-time-world decides to popup vertically from the bottom of the
49798 frame and scroll-margin is nonzero, the top of the buffer contents are
49799 hidden due to scroll.
49800 * lisp/time.el (display-time-world-display): Move point to point-min
49801 after inserting contents.
49803 2016-05-19 Paul Eggert <eggert@cs.ucla.edu>
49805 Allow null entries in face and image cache
49807 Problem reported by Tino Calancha (Bug#23580).
49808 * src/dispextern.h (FACE_FROM_ID, IMAGE_FROM_ID):
49809 Don’t assume that the result is non-null.
49810 * src/xdisp.c (fill_image_glyph_string):
49811 Restore check that image pointer is non-null.
49813 2016-05-19 Paul Eggert <eggert@cs.ucla.edu>
49815 Fix flyspell highlighting
49817 Problem reported by Jim Meyering (Bug#23575).
49818 * src/xdisp.c (extend_face_to_end_of_line):
49819 Fix typo in previous change.
49821 2016-05-18 Eli Zaretskii <eliz@gnu.org>
49823 * lisp/server.el (server-name): Add autoload cookie. (Bug#23576)
49825 2016-05-18 Sam Steingold <sds@gnu.org>
49827 python-describe-at-point: add and bind
49829 2016-05-18 Paul Eggert <eggert@cs.ucla.edu>
49831 ‘make check-declare’ now chatters less
49833 * etc/NEWS: Document this.
49834 * lisp/emacs-lisp/check-declare.el (check-declare-locate):
49835 Return relative names, not absolute.
49836 (check-declare-scan, check-declare-verify, check-declare-warn)
49837 (check-declare-file, check-declare-directory):
49838 Generate less chatter. Use relative file names rather than
49839 absolute. Don’t give up on computing a good file name for a
49840 diagnostic merely because the function name was bad. Make
49841 malformed declarations more noticeable. Don’t warn about
49842 "ext:..." declarations if check-declare-ext-errors is nil.
49843 (check-declare-errmsg): Remove.
49844 (check-declare-warn): New optional arg LINE.
49845 (check-declare-files): Put status into mode line rather than
49848 2016-05-18 Paul Eggert <eggert@cs.ucla.edu>
49850 Pacify byte-compiler for byte-compile-macroexpand-declare-function
49852 * lisp/emacs-lisp/bytecomp.el: Change signature of
49853 byte-compile-macroexpand-declare-function to match that of
49856 2016-05-18 Paul Eggert <eggert@cs.ucla.edu>
49858 Pacify byte-compiler for with-wrapper-hook
49860 * lisp/subr.el (subr--with-wrapper-hook-no-warnings):
49861 New macro, split out from with-wrapper-hook.
49862 * lisp/abbrev.el (abbrev--default-expand):
49863 * lisp/minibuffer.el (completion--in-region):
49864 * lisp/simple.el (buffer-substring--filter):
49865 * lisp/subr.el (with-wrapper-hook):
49868 2016-05-18 Paul Eggert <eggert@cs.ucla.edu>
49870 Pacify byte-compiler in lisp/url
49872 * lisp/url/url-misc.el, lisp/url/url-file.el (mm-disable-multibyte):
49875 2016-05-18 Paul Eggert <eggert@cs.ucla.edu>
49877 Port --enable-gcc-warnings to GCC 6.1
49879 * configure.ac (WERROR_CFLAGS): Omit -Wunused-const-variable=2.
49880 * lib-src/etags.c (LOOKING_AT, LOOKING_AT_NOCASE):
49881 Omit test whether pointer plus a constant equals a null pointer.
49882 * src/alloc.c (compact_small_strings):
49883 Avoid pointer arithmetic on null pointers.
49884 * src/alloc.c (mark_face_cache):
49885 * src/fontset.c (free_realized_fontsets, Fset_fontset_font):
49886 * src/fringe.c (draw_fringe_bitmap_1)
49887 (Fset_fringe_bitmap_face):
49888 * src/macfont.m (macfont_draw):
49889 * src/msdos.c (IT_set_face, IT_clear_screen):
49890 * src/nsfont.m (nsfont_draw):
49891 * src/nsterm.h (FRAME_DEFAULT_FACE):
49892 * src/nsterm.m (ns_draw_window_cursor)
49893 (ns_draw_vertical_window_border, ns_draw_window_divider)
49894 (ns_dumpglyphs_box_or_relief)
49895 (ns_maybe_dumpglyphs_background, ns_dumpglyphs_image)
49896 (ns_dumpglyphs_stretch):
49897 * src/w32term.c (w32_draw_vertical_window_border)
49898 (w32_draw_window_divider, x_set_mouse_face_gc):
49899 * src/xdisp.c (estimate_mode_line_height, init_iterator)
49900 (handle_face_prop, handle_single_display_spec, pop_it)
49901 (CHAR_COMPOSED_P, get_next_display_element)
49902 (next_element_from_display_vector, extend_face_to_end_of_line)
49903 (fill_gstring_glyph_string,BUILD_COMPOSITE_GLYPH_STRING):
49904 * src/xfaces.c (Finternal_merge_in_global_face, Fface_font)
49905 (lookup_named_face):
49906 * src/xterm.c (x_draw_vertical_window_border)
49907 (x_draw_window_divider, x_set_mouse_face_gc):
49908 Prefer FACE_OPT_FROM_ID to FACE_FROM_ID when the result might be null.
49909 * src/xterm.c (try_window_id):
49910 Redo loop to convince GCC 6.1 that it is null pointer safe.
49912 Use eassume as necessary to pacify GCC 6.1.
49913 * src/dispextern.h (FACE_FROM_ID, IMAGE_FROM_ID): Now returns non-null.
49914 (FACE_OPT_FROM_ID, IMAGE_OPT_FROM_ID): New macro, with the old
49915 behavior of the non-_OPT macro, to be used when the result
49916 might be a null pointer.
49917 * src/dispnew.c (buffer_posn_from_coords, marginal_area_string)
49918 [HAVE_WINDOW_SYSTEM]:
49919 * src/intervals.h (INTERVAL_WRITABLE_P):
49920 * src/term.c (turn_off_face):
49921 * src/xdisp.c (get_glyph_face_and_encoding, fill_image_glyph_string)
49922 (produce_image_glyph, produce_xwidget_glyph):
49923 * src/xfaces.c (lookup_named_face):
49924 Remove unnecessary test for null pointer.
49925 * src/keyboard.c (read_char): Suppress bogus -Wclobbered warning.
49926 * src/process.c (would_block): New function.
49927 (server_accept_connection, wait_reading_process_output, send_process):
49929 * src/xdisp.c (get_window_cursor_type, note_mouse_highlight):
49930 Prefer IMAGE_OPT_FROM_ID to IMAGE_FROM_ID when the result
49933 2016-05-18 Paul Eggert <eggert@cs.ucla.edu>
49938 2016-05-17 manywarnings: update for GCC 6.1
49939 2016-05-13 intdiv0, memmem, nocrash, strcasestr, strstr: no exit
49940 * m4/manywarnings.m4, m4/nocrash.m4: Copy from gnulib.
49942 2016-05-16 Glenn Morris <rgm@gnu.org>
49944 * lisp/emacs-lisp/ert.el (ert-summarize-tests-batch-and-exit):
49945 Include more details on hydra.
49947 2016-05-16 Alan Mackenzie <acm@muc.de>
49949 Tidy up redundant code in cc-vars.el caused by mistake in emacs-25 -> master
49951 2016-05-16 Alan Mackenzie <acm@muc.de>
49953 Fix spurious fontification of "for (; a * b;)" in CC Mode.
49955 This fixes bug #7918 (again).
49957 * lisp/progmodes/cc-engine.el (c-delq-from-dotted-list): New function.
49958 (c-forward-decl-or-cast-1): Return a 4 element list in place of the previous
49959 cons cell - additionally, return a flag indicating whether the declaration
49960 parsed might have been an expression, and the position of the type identifier
49961 in the said declaration.
49963 * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): When
49964 c-forward-decl-or-cast-1 has indicated it might have parsed an expression,
49965 check for it being a spurious declaration in a "for" statement.
49967 2016-05-14 Paul Eggert <eggert@cs.ucla.edu>
49969 Pacify ‘make check-declare’
49971 * lisp/cedet/srecode/insert.el (data-debug-new-buffer)
49972 (data-debug-insert-stuff-list, data-debug-insert-thing):
49973 * lisp/emulation/viper-ex.el (viper-change-state-to-vi)
49974 (viper-change-state-to-emacs):
49975 * lisp/emulation/viper-macs.el (viper-change-state-to-vi):
49976 * lisp/org/ob-asymptote.el (orgtbl-to-generic):
49977 * lisp/org/ob-awk.el (orgtbl-to-generic):
49978 * lisp/org/ob-core.el (org-edit-src-code, orgtbl-to-generic):
49979 * lisp/org/ob-emacs-lisp.el (orgtbl-to-generic):
49980 * lisp/org/ob-exp.el (org-element-context):
49981 * lisp/org/ob-gnuplot.el (org-time-string-to-time)
49982 (orgtbl-to-generic):
49983 * lisp/org/ob-haskell.el (org-export-to-file):
49984 * lisp/org/ob-latex.el (org-create-formula-image)
49985 (org-latex-compile):
49986 * lisp/org/ob-python.el (run-python):
49987 * lisp/org/ob-sh.el (orgtbl-to-generic):
49988 * lisp/org/ob-tangle.el (org-link-escape, org-back-to-heading):
49989 * lisp/org/org-colview.el (org-agenda-redo):
49990 * lisp/org/org-feed.el (url-retrieve-synchronously):
49991 * lisp/org/org-info.el (Info-find-node):
49992 * lisp/org/org-list.el (org-previous-line-empty-p):
49993 * lisp/org/org-macs.el (org-string-match-p):
49994 * lisp/org/org.el (org-beamer-mode):
49995 Fix prototype to match current definition.
49996 * lisp/emacs-lisp/advice.el (function-called-at-point):
49997 * lisp/progmodes/prolog.el (compilation-shell-minor-mode):
49999 * lisp/emacs-lisp/cl-generic.el (cl-defmethod):
50000 Insert ,' to pacify check-declare.
50001 * lisp/org/ob-comint.el (tramp-flush-directory-property):
50002 * lisp/org/ob-tangle.el (org-babel-update-block-body):
50003 * lisp/org/org-bibtex.el (org-babel-trim):
50004 * lisp/org/org-pcomplete.el (org-export-backend-options):
50005 * lisp/org/org-protocol.el (org-publish-get-project-from-filename):
50006 Fix file name in declare-function.
50007 * lisp/org/ob-comint.el (with-parsed-tramp-file-name)
50008 * lisp/org/ob-core.el (with-parsed-tramp-file-name):
50009 * lisp/org/org.el (org-beamer-mode):
50010 * lisp/url/url-http.el (gnutls-negotiate):
50011 Append ‘t’ to declare-function, since the declaration isn’t a defun.
50012 * lisp/org/ob-core.el (show-all):
50013 Declare outline-show-all instead, since it is the
50014 non-obsolete version of this function.
50015 (org-save-outline-visibility): Remove; not needed.
50016 * lisp/org/ob-scheme.el (run-geiser, geiser-mode)
50017 (geiser-eval-region, geiser-repl-exit):
50018 * lisp/org/ox-org.el (htmlize-buffer):
50019 Prepend "ext:" to file name, since it is not part of Emacs.
50020 * lisp/org/ob-sh.el (org-babel-comint-in-buffer)
50021 * lisp/org/org-gnus.el (nnimap-group-overview-filename):
50022 Remove decl, since function was removed.
50023 * lisp/org/ob-sh.el (org-babel-comint-with-output):
50024 * lisp/org/org-macro.el (org-with-wide-buffer):
50025 Omit unnecessary (and mismatching) decl.
50026 * lisp/org/org-agenda.el (calendar-absolute-from-iso):
50027 * lisp/org/org-clock.el (calendar-iso-to-absolute):
50028 Declare calendar-iso-to-absolute instead, since it is the
50029 non-obsolete version of this function.
50030 * lisp/org/org-compat.el (w32-focus-frame):
50031 Remove decl, since function is now obsolete.
50033 2016-05-14 Lars Ingebrigtsen <larsi@gnus.org>
50035 :max-width/height fixes for shr after the scaling changes
50037 * lisp/net/shr.el (shr-rescale-image): Ensure that we respect
50038 max-width and max-height even after the scaling changes done
50041 2016-05-14 Eli Zaretskii <eliz@gnu.org>
50043 Fix reading minibuffer input in viper-mode
50045 * lisp/emulation/viper-cmd.el (viper-read-string-with-history):
50046 Restore an assignment to viper-initial that got lost when
50047 viper-cmd.el was switched to lexical-binding. (Bug#23536)
50049 2016-05-14 Paul Eggert <eggert@cs.ucla.edu>
50051 Port autogen.sh to Git 2.4
50053 Problem reported by Michael Brand in:
50054 https://lists.gnu.org/r/emacs-devel/2016-05/msg00367.html
50055 * autogen.sh (git_config): Don't assume that git rev-parse
50056 groks --git-common-dir.
50058 2016-05-13 Paul Eggert <eggert@cs.ucla.edu>
50060 Merge from origin/emacs-25
50062 6de0715 Properly reject malformed or empty package sigs
50063 edae7d9 Remove buggy non-native image scrolling
50065 2016-05-13 Paul Eggert <eggert@cs.ucla.edu>
50067 Improve display of tex-verbatim and Info quoted
50069 Problem reported by Glenn Morris (Bug#19889).
50070 * doc/emacs/display.texi (Standard Faces):
50071 * doc/lispref/display.texi (Basic Faces):
50072 * etc/NEWS: Mention fixed-pitch-serif.
50073 * lisp/faces.el (face-font-family-alternatives):
50074 New family alias Monospace Serif.
50075 (fixed-pitch-serif): New face, which uses the new family.
50076 * lisp/info.el (Info-quoted):
50077 * lisp/textmodes/tex-mode.el (tex-verbatim): Use the new face.
50078 * test/lisp/legacy/font-parse-tests.el (font-parse-tests--data):
50079 Add test case for Monospace Serif.
50081 2016-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
50083 * lisp/net/sieve-mode.el: Handle the text:... notation
50085 Get rid of redundant :group keywords.
50086 (sieve-mode-syntax-table): Move initialization into declaration.
50087 (sieve-syntax-propertize, sieve-syntax-propertize-text): New functions.
50088 (sieve-mode): Use them.
50090 2016-05-13 Paul Eggert <eggert@cs.ucla.edu>
50092 Tweak check-declare-directory performance
50094 * lisp/emacs-lisp/check-declare.el (check-declare-directory):
50095 Use ‘find ... -exec ... +’ for speed.
50097 2016-05-13 Paul Eggert <eggert@cs.ucla.edu>
50101 This incorporates a spelling fix, plus:
50102 2016-05-09 Fix undefined behavior in gettext.h
50103 * lib/gettext.h, lib/mktime.c:
50106 2016-05-13 Paul Eggert <eggert@cs.ucla.edu>
50108 Merge from origin/emacs-25
50110 9c2a1a2 * doc/misc/texinfo.tex: Sync from gnulib.
50111 66cd4d8 * lisp/emacs-lisp/find-func.el (find-feature-regexp) (find-al...
50112 1a5a05c Do not mistake colon at the end of regexp for slash symbol
50113 4c5a00b Make package-install-from-buffer not move point
50114 9596ea1 ; Revert "* emacs-lisp/lisp-mnt.el (lm-header): save-excursion"
50115 f79c352 Redo the fix for bug#21839
50116 8d2f78c Don't treat JS spread as contination method call
50118 2016-05-12 Chris Feng <chris.w.feng@gmail.com>
50120 Correct server/client address
50122 * src/process.c (Fmake_network_process): :local is for servers and :remote
50125 2016-05-12 Ken Brown <kbrown@cornell.edu>
50127 Autosave buffers on logout if HAVE_NTGUI
50129 * src/w32fns.c (w32_wnd_proc): Pass a WM_ENDSESSION message on to
50132 * src/w32term.c (w32_read_socket): Create an event of type
50133 END_SESSION_EVENT if a WM_ENDSESSION message is received.
50135 * src/termhooks.h [HAVE_NTGUI]: New event kind END_SESSION_EVENT.
50137 * src/keyboard.c [HAVE_NTGUI] (syms_of_keyboard): New symbol
50139 (kbd_buffer_get_event): Return an end-session event if an event of
50140 type END_SESSION_EVENT is read.
50141 (keys_of_keyboard): Bind the end-session event to kill-emacs in
50142 special-event-map. (Bug#23483)
50144 2016-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
50146 * lisp/cedet/semantic/{db-el,symref}.el: Mark unused vars
50148 * lisp/cedet/semantic/db-el.el: Use _ to mark unused vars.
50149 (object-print): Use cl-call-next-method instead of call-next-method.
50150 * lisp/cedet/semantic/symref.el: Use _ to mark unused vars.
50152 2016-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
50154 * lisp/cedet/semantic: Silence some warnings
50156 * lisp/cedet/semantic/db-el.el (emacs-lisp-mode)
50157 (semanticdb-get-database-tables): Use make-instance to silence warnings.
50159 * lisp/cedet/semantic/symref.el: Require semantic/find since we use
50160 some macros from there. Silence compilation warnings:
50161 Replace initargs with slot names in oref/oset.
50162 Move `SYMREF TOOLS' section earlier so definitions precede their use.
50164 2016-05-12 Lars Ingebrigtsen <larsi@gnus.org>
50166 Support srcset in <img>
50168 * lisp/net/shr.el (shr--preferred-image): Allow <img> tags
50169 with srcset specifiers (bug#23459).
50171 2016-05-12 Michael Albinus <michael.albinus@gmx.de>
50173 Do not autoload some functions of tramp.el
50175 * lisp/net/tramp.el (tramp-completion-file-name-handler):
50176 Autoload a shortened version of this function, avoid recursive load.
50177 (tramp-completion-file-name-handler-alist)
50178 (tramp-completion-mode-p)
50179 (tramp-completion-handle-expand-file-name)
50180 (tramp-completion-handle-file-name-all-completions)
50181 (tramp-completion-handle-file-name-completion): Do not autoload.
50183 2016-05-12 Michael Albinus <michael.albinus@gmx.de>
50185 Avoid recursive load of tramp.el
50187 * lisp/net/tramp.el (tramp-completion-file-name-handler):
50188 Autoload a shortened version of this function, avoid recursive load.
50190 2016-05-11 Michael Albinus <michael.albinus@gmx.de>
50192 Fix a problem of tramp-tests on hydra.
50194 * test/lisp/net/tramp-tests.el (tramp-test06-directory-file-name):
50195 Nullify `tramp-default-method' due to hydra.
50197 2016-05-10 Paul Eggert <eggert@cs.ucla.edu>
50199 Pacify byte-compiler in lisp/vc
50201 * lisp/vc/vc-bzr.el, lisp/vc/vc-cvs.el, lisp/vc/vc-hg.el:
50202 * lisp/vc/vc-rcs.el, lisp/vc/vc-src.el:
50203 Declare functions defined elsewhere, to forestall “might not
50204 be defined at runtime” warnings.
50206 2016-05-10 Paul Eggert <eggert@cs.ucla.edu>
50208 Merge from origin/emacs-25
50210 d0d9f55 Allow newlines inside cl function arglists
50211 963541a Publicize cl--generic-all-functions
50213 e58f900 Add some "safe-local-variable" declarations for compatibility...
50215 2016-05-10 Paul Eggert <eggert@cs.ucla.edu>
50217 'text-quoting-style' now affects only ` and '
50219 Change 'text-quoting-style' so that it no longer affects
50220 formatting of curved quotes in format arguments to functions like
50221 'message'. In particular, when this variable's value is 'grave',
50222 all quotes in formats are output as-is.
50223 * doc/lispref/help.texi (Keys in Documentation):
50224 * doc/lispref/strings.texi (Formatting Strings):
50225 * doc/lispref/tips.texi (Documentation Tips):
50227 * src/doc.c (syms_of_doc): Document this.
50228 * lisp/help-fns.el (describe-function-1):
50229 * src/doc.c (text_quoting_style, Fsubstitute_command_keys)
50231 * src/editfns.c (styled_format): Omit now-unnecessary code.
50232 * src/lisp.h (LEAVE_QUOTING_STYLE): Remove.
50234 2016-05-10 Alan Mackenzie <acm@muc.de>
50236 Revert "Fix spurious fontification of "for (; a * b;)" in CC Mode."
50238 This reverts commit 89d1776b81ab552192ee41f13ce84ff86bda4556. It is
50239 being reverted because it slowed down CC Mode's fontification too much
50240 (factor ~3). It was the fix to bug #7918.
50242 2016-05-09 Lars Ingebrigtsen <larsi@gnus.org>
50244 Move "Recent messages" earlier in report-emacs-bug
50246 * lisp/mail/emacsbug.el (report-emacs-bug): Move the "Recent
50247 messages" part earlier so that users can see it and remove it
50250 2016-05-09 Michael Albinus <michael.albinus@gmx.de>
50252 Pacify byte compiler in tramp.el
50254 * lisp/net/tramp.el (tramp-time-diff): Use `tramp-compat-funcall'.
50256 2016-05-09 Paul Eggert <eggert@cs.ucla.edu>
50258 Merge from origin/emacs-25
50260 3b47898 Fix doc string in `insert'
50261 b479dea * doc/misc/emacs-mime.texi (time-date): Document now-builtins...
50262 cd27f73 Say 'All results processed' at the end
50263 4ffec91 Document automatic adjustment of process' logical window dime...
50264 dc66271 ; Fix typos and stylistic glitches in NEWS
50266 2016-05-09 Alan Mackenzie <acm@muc.de>
50268 CC Mode now uses the new :after-hook feature of define-derived-mode
50270 It now runs internal variable setting functions after the mode hooks, no
50271 longer runs the mode hooks twice, and declares the configuration variables for
50272 noise macros and macros with semicolons as safe variables (when given suitable
50275 Fixes bug #16759 and bug #23476.
50277 * .dir-locals.el: Put the c-noise-macros-with-paren-names setting
50278 back into the C Mode value.
50280 * lisp/progmodes/cc-mode.el: (c-basic-common-init): Remove the call to
50281 c-make-macro-with-semi-re.
50282 (c-mode, c++-mode, objc-mode, java-mode, idl-mode, pike-mode, awk-mode): Move
50283 c-make-noise-macro-regexps and c-make-macro-with-semi-re (where appropriate)
50284 and c-update-modeline into the :after-hook form. Remove the explicit settings
50285 of the syntax table, the abbreviation table and the local key map, since they
50286 duplicate forms generated by define-derived-mode. Remove the explicit
50287 invocation of each mode's mode hook, since they duplicate ones generated by
50288 define-derived-mode.
50290 * lisp/progmodes/cc-vars.el: (c-string-list-p, c-string-or-string-list-p): New
50292 (c-noise-macro-names, c-noise-macro-with-parens-names): give the
50293 save-local-variable property c-string-list-p.
50294 (c-macro-names-with-semicolon): give the save-local-variable property
50295 c-string-or-string-list-p.
50297 * doc/misc/cc-mode.texi: (Macros with ;, Noise Macros): Note that it's not
50298 necessary to call the regexp generating functions after setting the pertinent
50299 configuration values in a mode hook.
50301 2016-05-09 Dmitry Gutov <dgutov@yandex.ru>
50303 Fix the jit-lock-fontify-now test names
50305 * test/lisp/jit-lock-tests.el
50306 (jit-lock-fontify-now-mends-the-gaps)
50307 (jit-lock-fontify-now-does-not-refontify-unnecessarily):
50308 Fix the test names.
50310 2016-05-09 Michael Albinus <michael.albinus@gmx.de>
50312 Extend completion candidates in tramp.el
50314 * lisp/net/tramp.el (tramp-parse-default-user-host): New defun.
50315 (tramp-get-completion-function): Use it.
50317 2016-05-09 Michael Albinus <michael.albinus@gmx.de>
50319 Revert e2f785991d0c696fbb2bc2f331f888d979b8da82 for tramp.el
50321 * lisp/net/tramp.el (tramp-time-diff): Revert previous change due to backwards
50324 2016-05-08 Dmitry Gutov <dgutov@yandex.ru>
50326 Emulate interactive mode
50328 * test/lisp/jit-lock-tests.el (jit-lock-tests--setup-buffer)
50329 (jit-lock-does-not-refontify-unnecessarily):
50330 Bind noninteractive to nil (bug#23278).
50332 2016-05-08 Paul Eggert <eggert@cs.ucla.edu>
50334 Simplify now that float-time etc. are built-in
50336 This was prompted by warnings about calls to now-obsolete functions.
50337 * lisp/calendar/time-date.el (encode-time-value):
50338 Use setq rather than a recursive call, to avoid a warning
50339 about calling this obsolete function.
50340 * lisp/calendar/time-date.el (encode-time-value)
50341 (with-decoded-time-value, time-to-seconds, time-to-number-of-days):
50342 * lisp/erc/erc.el (erc-emacs-time-to-erc-time):
50343 * lisp/net/rcirc.el (rcirc-float-time):
50344 * lisp/org/org-compat.el (org-float-time):
50345 Simplify now that time-add and float-time are now built-in.
50346 * lisp/calendar/time-date.el (time-add, time-subtract, time-less-p):
50347 * lisp/net/newst-backend.el (time-add):
50348 * lisp/org/org.el (time-subtract):
50349 Remove backward-compatibility definitions; they are now built-in.
50350 * lisp/calendar/timeclock.el (timeclock-time-to-seconds)
50351 (timeclock-seconds-to-time):
50352 * lisp/net/rcirc.el (rcirc-float-time):
50353 * lisp/org/org-compat.el (org-float-time):
50354 Now obsolete, since callers can just use float-time and
50355 seconds-to-time. All uses changed.
50356 * lisp/emacs-lisp/ert.el (ert-results-pop-to-timings):
50357 * lisp/gnus/gnus-art.el (article-lapsed-string):
50358 * lisp/gnus/gnus-diary.el (gnus-user-format-function-d):
50359 * lisp/gnus/gnus-group.el (gnus-group-timestamp-delta):
50360 * lisp/gnus/nndiary.el (nndiary-compute-reminders):
50361 * lisp/net/tramp.el (tramp-time-diff):
50362 * lisp/org/org-clock.el (org-clock-timestamps-change):
50363 Prefer the time-subtract builtin to the subtract-time alias.
50364 * lisp/files.el (dir-locals-find-file, dir-locals-read-from-dir):
50365 * test/lisp/character-fold-tests.el (character-fold--speed-test):
50366 Prefer the float-time builtin to the time-to-seconds alias.
50367 * lisp/org/org-agenda.el, lisp/org/org-clock.el, lisp/org/org-list.el:
50368 * lisp/org/org-timer.el, lisp/org/org.el:
50369 Adjust to org-float-time deprecation.
50371 2016-05-08 Alan Mackenzie <acm@muc.de>
50373 Add :after-hook facility to define-derived-mode.
50375 This allow a form to be evaluated _after_ a major mode's hooks have been run.
50376 It is needed to solve some problems in CC Mode, including bug #16759 and
50379 * lisp/emacs-lisp/derived.el (define-derived-mode): introduce the new argument
50380 `:after-hook', and generate the requisite code for it.
50381 (derived-mode-make-docstring): Take account of the possibility of :after-hook.
50383 * lisp/subr.el (delayed-after-hook-forms): New variable.
50384 (run-mode-hooks): As the last thing evaluate the forms in
50385 delayed-after-hook-forms.
50387 * doc/lispref/modes.texi (Derived Modes): Document :after-hook.
50388 (Mode Hooks): Document the new feature in run-mode-hooks.
50390 * etc/NEWS: Note the new feature.
50392 2016-05-08 Michael Albinus <michael.albinus@gmx.de>
50394 Fix recursive load of tramp.elc
50396 * lisp/net/tramp.el (tramp-completion-file-name-handler):
50397 Check also for `tramp-completion-mode-p'.
50398 (tramp-completion-mode, tramp-completion-mode-p): Autoload them.
50400 2016-05-07 Paul Eggert <eggert@cs.ucla.edu>
50402 Prefer grep -E/-F to egrep/fgrep
50404 POSIX marked egrep and fgrep as legacy apps in SUSv2 (1997) and
50405 withdrew them in SUSv3 (2001), and these days grep -E and grep -F
50406 are probably more portable.
50407 * lib-src/etags.c (main):
50408 * lisp/eshell/em-unix.el (eshell-grep, eshell/egrep)
50410 * lisp/cedet/semantic/symref.el (semantic-symref-find-text):
50411 * lisp/eshell/esh-var.el (eshell-apply-indices):
50412 * lisp/progmodes/ada-xref.el (ada-xref-search-with-egrep)
50413 (ada-find-in-src-path):
50414 * lisp/textmodes/ispell.el (ispell-grep-command):
50415 (ispell-lookup-words):
50416 Use or document grep -E and grep -F instead of egrep and fgrep.
50417 * lisp/textmodes/ispell.el (ispell-grep-options):
50418 Use -Ei on all platforms, not just MS-Windows.
50420 2016-05-07 Dmitry Gutov <dgutov@yandex.ru>
50422 Avoid unnecessary work if a chunk is empty
50424 * lisp/jit-lock.el (jit-lock-fontify-now): Avoid unnecessary work
50425 if a chunk is empty (bug#23278).
50427 2016-05-07 Dmitry Gutov <dgutov@yandex.ru>
50429 * test/lisp/jit-lock-tests.el: New file.
50431 2016-05-07 Michael Albinus <michael.albinus@gmx.de>
50433 Continue to fix Bug#10085
50435 * lisp/net/tramp.el (tramp-completion-file-name-handler-alist)
50436 <expand-file-name>: Add handler.
50437 (tramp-completion-handle-expand-file-name): New defun.
50438 (tramp-handle-file-name-as-directory): Handle completion mode case.
50440 * test/lisp/net/tramp-tests.el (tramp-test06-directory-file-name):
50442 (tramp-test24-file-name-completion): Extend test.
50444 2016-05-07 Alan Mackenzie <acm@muc.de>
50446 Revert change 8e4595a... due to annoyance it causes the development team.
50448 Change 8e4595a438fe85dd109756886cdeaeea2e665afb from 2016-04-30 17:28:24
50449 +0000 was an enhancement to .dir-locals to allow correct fontification
50450 of certain macro constructs.
50452 * .dir-locals.el: Remove the two forms for C Mode dealing with noise macros.
50454 2016-05-07 Alan Mackenzie <acm@muc.de>
50456 * lisp/emacs-lisp/edebug.el (edebug-sit-on-break): Give it a version number.
50458 2016-05-07 Simen Heggestøyl <simenheg@gmail.com>
50460 Add tests for CSS mode completion
50462 * test/lisp/textmodes/css-mode-tests.el (css-test-property-values)
50463 (css-test-property-values-no-duplicates)
50464 (css-test-value-class-lookup): Use `seq-sort'.
50465 (css-mode-tests--completions): New helper function for retrieving CSS
50467 (css-test-complete-bang-rule, scss-test-complete-bang-rule)
50468 (css-test-complete-property-value, css-test-complete-pseudo-class)
50469 (css-test-complete-pseudo-element, css-test-complete-at-rule)
50470 (scss-test-complete-at-rule, css-test-complete-property)
50471 (css-test-complete-selector, css-test-complete-nested-selector)
50472 (scss-test-complete-nested-selector): New tests.
50474 2016-05-06 Alan Mackenzie <acm@muc.de>
50476 Add an option in Edebug to prevent pauses after `h', 'f', and `o'.
50478 Requested by Paul Pogonyshev. Also add in documentation for Edebug config
50479 variables which was missing.
50481 * lisp/emacs-lisp/edebug.el (edebug-sit-on-break): New customizable option.
50482 (edebug--display-1): Test edebug-sit-on-break before pausing 1 second.
50484 * doc/lispref/edebug.texi (Jumping): Document the effect of the new option.
50485 (Edebug Options): Document the new option. Also add documentation for
50486 edebug-eval-macro-args, edebug-print-length, edebug-print-level,
50487 edebug-print-circle, edebug-sit-for-seconds.
50489 * etc/NEWS: Note the new feature.
50491 2016-05-07 Jorgen Schaefer <contact@jorgenschaefer.de>
50493 scheme.el: Turn literal tabs into \t
50495 * lisp/progmodes/scheme.el: The last change to turn tabs into spaces
50496 also caught some literal tabs in character classes. Fix this by
50497 adding \t to those classes.
50499 2016-05-07 Tino Calancha <f92capac@gmail.com>
50501 Make 'backtab' work in table-mode on text terminals
50503 * lisp/textmodes/table.el (table-cell-bindings): Bind 'backtab'
50504 explicitly. (Bug#23456)
50506 2016-05-07 Eli Zaretskii <eliz@gnu.org>
50508 Try to speed-up display of many all-blank lines
50510 * src/bidi.c (bidi_initialize): Use anchored regexps for
50511 paragraph start and paragraph separator sequences. (Bug#23457)
50513 2016-05-06 Alan Mackenzie <acm@muc.de>
50515 Correct hack-local-variables change from Thu May 5 11:05:49 2016 +0000
50517 Prevent hack-local-variables being called from the fundamental-mode mode call
50518 early in normal-mode. This fixes bug #23460 and bug #23463.
50520 * lisp/files.el (normal-mode) Replace call to fundamental-mode with calls to
50521 the things it calls, with the exception of hack-local-variables.
50523 * etc/NEWS: Add an entry to note the calling of hack-local-variables at each
50524 major mode initialization.
50526 2016-05-06 Paul Eggert <eggert@cs.ucla.edu>
50528 Port xref-tests to master branch
50530 Also, add a test to make this problem less likely in the future.
50531 * test/Makefile.in (check-no-automated-subdir): New rule.
50532 (check, check-expensive, check-maybe): Depend on it.
50533 * test/automated/data/xref/file1.txt: Rename to ...
50534 * test/data/xref/file1.txt: ... here.
50535 * test/automated/data/xref/file2.txt: Rename to ...
50536 * test/data/xref/file2.txt: ... here.
50537 * test/automated/xref-tests.el: Rename to ...
50538 * test/lisp/progmodes/xref-tests.el: ... here.
50539 (xref-tests-data-dir): Use EMACS_TEST_DIRECTORY.
50541 2016-05-05 Paul Eggert <eggert@cs.ucla.edu>
50543 Merge from origin/emacs-25
50545 50650cb Doc fixes for fclist and grep
50546 5e814e0 Minor doc fixes for quoting
50547 3347a73 `nreverse' the marker pairs list
50548 1a4127d Use save-excursion in xref-location-marker more
50549 ab3ba91 shell-quote-argument DIR when appropriate
50550 922c7a3 Rework xref-query-replace-in-results
50551 3fe3510 * lisp/replace.el (query-replace-read-from): Use minibuffer-w...
50552 0932b94 Fix todo-mode bug involving archived items (bug#23447)
50553 e68ad1f ; * etc/NEWS: Tiny edit. (Bug#23432)
50554 adc80b7 ; * test/automated/xref-tests.el: Add copyright and license.
50555 4d8fd9c Handle "empty line" regexp in xref searches
50556 f559b37 Add tests for xref-collect-matches
50557 6428aa0 Use grep-find-ignored-directories instead of vc-directory-exc...
50558 6f82d8e Clear buffer-undo-list when showing xrefs
50559 c68a091 Note the quote translation in `message' in section "incompati...
50560 52f86a7 * etc/NEWS: Mention (message "%s" (format ...)).
50561 93703c5 (Common Keywords): Correct what missing :group means
50562 79e5800 Improve documentation of Dired's 'A' and 'Q' commands
50563 2ea2a2f Doc fixes for quoting
50564 8544b98 posnp doc clarification
50565 805204f Mention what a missing :group does
50566 ec554d7 Fix documentation of dired-aux search/replace commands
50568 2016-05-05 Simen Heggestøyl <simenheg@gmail.com>
50570 Support completion of HTML tags in CSS selectors
50572 * lisp/textmodes/css-mode.el (css--html-tags): New variable holding a
50573 list of HTML tags for completion.
50574 (css--nested-selectors-allowed): New variable for determining whether
50575 nested selectors are allowed in the current mode.
50576 (css--complete-selector): New function for completing part of a CSS
50578 (css-completion-at-point): Support completion of selectors.
50579 (scss-mode): Allow nested selectors.
50581 2016-05-05 Lars Ingebrigtsen <larsi@gnus.org>
50583 Make `R' in eww work more reliably
50585 * lisp/net/eww.el (eww-score-readability): Protect against
50588 2016-05-05 Alan Mackenzie <acm@muc.de>
50590 Call hack-local-variables from major modes rather than from file visiting
50592 This prevents file/directory local variables from being lost when the major
50593 mode is set or changed.
50595 This fixes bug #15577 and bug #23407.
50597 * lisp/files.el (normal-mode): Call `hack-local-variables' when the major mode
50598 function hasn't already done so.
50599 (hack-local-variables): Rename parameter `mode-only' to `handle-mode', make
50600 its previous non-nil setting be t, and introduce the following action for a
50601 non-nil non-t value: apply all settings apart from `mode'.
50603 * lisp/subr.el (run-mode-hooks): call `hack-local-variables' for buffers
50604 which are visiting files.
50606 * doc/emacs/custom.texi (File Variables): Note that setting a major mode also
50607 sets file variables.
50608 (Directory Variables): Note that `mode', `eval', and `unibyte' can be set as
50609 dir local variables, but `coding' can't.
50611 * doc/lispref/modes.texi (Major Mode Conventions): Say that `run-mode-hooks'
50612 also calls `hack-local-variables'.
50613 (Auto Major Mode): Say that `find-file' no longer runs `hack-local-variables',
50614 as from 25.2. Remove vagueness from `normal-mode' and `set-auto-mode' by
50615 saying that the mode IS SET, not merely "selected" or "chosen".
50616 (Mode Hooks): Document change to `run-mode-hooks'.
50618 * doc/lispref/variables.texi (File Local Variables): Document change to
50619 `hack-local-variables'.
50621 2016-05-05 Michael Albinus <michael.albinus@gmx.de>
50623 tramp-sh.el: Work around a stat bug
50625 * lisp/net/tramp-sh.el (tramp-get-remote-stat): Do not use
50626 stat versions which produce shell quoted output. See also
50627 coreutils Bug#23422.
50629 2016-05-04 Noam Postavsky <npostavs@gmail.com>
50631 Fix autogen.sh for separate worktrees
50633 * autogen.sh: Use the $hooks variable in the $sample_hooks loop, instead
50634 of assuming .git/hooks is a directory.
50636 2016-05-04 Alan Mackenzie <acm@muc.de>
50638 Allow `text-quoting-style' to be `leave', i.e. no translation of quotes.
50640 * lisp/help-fns.el (describe-function-1): Don't set coding system to UTF-8
50641 when text-quoting-style is `leave'.
50643 * src/lisp.h (enum text_quoting_style): Add identifier LEAVE_QUOTING_STYLE.
50645 * src/doc.c (syms_of_doc): New symbol "leave". Amend doc string of
50646 `text_quoting_style'.
50647 (text_quoting_style): Handle `leave' by returning LEAVE_QUOTING_STYLE.
50648 (Fsubstitute_command_keys): Don't translate quotes when quoting_style is
50649 LEAVE_QUOTING_STYLE.
50651 * src/editfns.c (styled_format): Set quoting_style to -1 when
50652 text-quoting-style is `leave'.
50654 2016-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
50656 * lisp/emulation/viper.el:
50657 * lisp/emulation/viper-cmd.el: Use lexical-binding.
50658 (viper-change-state-to-vi, viper-change-state-to-emacs): Allow dummy
50659 args, for use in advice-add.
50660 (viper--init-message): Rename from init-message.
50661 (viper-minibuffer-standard-hook): Adjust accordingly.
50662 (viper-undo): Remove unused var `modified'.
50663 (viper-read-string-with-history, viper-set-searchstyle-toggling-macros):
50664 Don't use dynamic vars as args.
50665 (viper-submit-report): Clarify use of dynamic vars.
50667 * lisp/emulation/viper.el: Use lexical-binding and nadvice.
50668 Remove redundant :group keywords. Group the (if viper-mode) at top-level.
50669 Use add-function rather than a `(lambda ...).
50670 (viper--advice-list): New var.
50671 (viper--advice-add, viper--deactivate-advice-list): New funs.
50672 (viper-go-away, viper-set-hooks, viper-non-hook-settings): Use them.
50673 (viper-non-hook-settings): Don't hook into find-file any more.
50675 2016-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
50677 * lisp/vc/ediff-util.el: Use lexical-binding.
50679 * lisp/progmodes/js.el (js-syntax-propertize): Recognize shebang line.
50681 2016-05-03 Lars Ingebrigtsen <larsi@gnus.org>
50683 Add an animation sanity check
50685 * lisp/image.el (image-multi-frame-p): Give up on animations
50686 if it seems like they are too slow (bug#23431).
50688 2016-05-03 Lars Ingebrigtsen <larsi@gnus.org>
50690 abbrev-tests.el fix
50692 * test/lisp/abbrev-tests.el (abbrev-table-p-test): Don't check
50693 internal implementation detail.
50695 2016-05-03 Lars Ingebrigtsen <larsi@gnus.org>
50697 (shr-rescale-image): Clarify logic slightly
50699 * lisp/net/shr.el (shr-rescale-image): Clarify logic slightly.
50701 2016-05-02 Martin Rudalics <rudalics@gmx.at>
50703 Bind `widget-button-click' to mouse-1/-2 instead of down-mouse-1/-2
50705 * lisp/wid-edit.el (widget-keymap): Bind `widget-button-click'
50706 to mouse-1/-2 instead of down-mouse-1/-2. Suggested by Stefan
50707 Monnier. (Bug#19185, Bug#20398)
50709 2016-05-02 Lee Bochicchio <lboc.home@gmail.com>
50711 Add more abbrev tests
50713 * test/lisp/abbrev-tests.el
50714 (clear-abbrev-table-test): Use `abbrev-expansion'
50715 (abbrev-table-empty-p-test, list-abbrevs-test)
50716 (prepare-abbrev-list-buffer-test, insert-abbrevs-test)
50717 (edit-abbrevs-test, define-abbrevs-test)
50718 (read-write-abbrev-file-test)
50719 (abbrev-edit-save-to-file-test): New tests (bug#23139).
50721 2016-05-02 Philipp Stephani <p.stephani2@gmail.com> (tiny change)
50723 Allow eval-ing named character literals
50725 * lisp/progmodes/elisp-mode.el (elisp--preceding-sexp): Skip over
50726 named character literals.
50727 * test/lisp/progmodes/elisp-mode-tests.el
50728 (elisp--preceding-sexp--char-name): Add test for skipping over
50729 named character literals (bug#23354).
50731 2016-05-02 Aaron Conole <aconole@redhat.com>
50733 Call va_end in boot_error
50735 * src/gnutls.c (boot_error): A recent change added a function
50736 to signal an error or return an error code. That function uses
50737 a variadic argument list to populate an error message
50738 string. However, it missed calling va_end after using the
50739 variadic argument list.
50741 Copyright-paperwork-exempt: yes
50743 2016-05-02 Aaron Conole <aconole@bytheb.org>
50745 Fix the call to set_network_coding_system
50747 * src/process.c (Fmake_network_process): A recent commit
50748 modified the set_network_socket_coding_system function to take
50749 arguments host, service, and name. However, those arguments
50750 appear to be swapped.
50752 Copyright-paperwork-exempt: yes
50754 2016-05-02 Lars Ingebrigtsen <larsi@gnus.org>
50756 Revert "alas, a map can have only one parent"
50758 This reverts commit d05806fda1cbba2db112bc783597fbe9d27175b2.
50760 This had already been fixed by using `make-composed-map'. And
50761 we don't want image-map to inherit from special-mode-map, anyway.
50763 2016-05-02 Paul Eggert <eggert@cs.ucla.edu>
50765 Merge from origin/emacs-25
50767 bf21c84 Fix quoting problem in cc-engine debug message
50768 8f36614 Add electric-quote-string unit test
50769 6280531 Don’t electrically quote ‘'’ in Python
50770 fd7b430 `nreverse' Grep hits before passing them to xref--convert-hits
50772 2016-05-02 Sam Steingold <sds@gnu.org>
50774 alas, a map can have only one parent
50776 * lisp/image-mode.el (image-model-map): Cannot have two parents.
50777 * lisp/image.el (image-map): Inherit from `special-mode-map'.
50779 2016-05-02 Michael Albinus <michael.albinus@gmx.de>
50783 * lisp/net/tramp.el (tramp-find-foreign-file-name-handler):
50784 Add optional arguments OPERATION and COMPETION. Handle
50785 `file-name-as-directory', `file-name-directory' and
50786 `file-name-nondirectory' also in completion mode.
50787 (tramp-file-name-handler): Use it. (Bug#10085)
50789 * test/lisp/net/tramp-tests.el (tramp-test06-directory-file-name):
50792 2016-05-01 Martin Rudalics <rudalics@gmx.at>
50794 * src/minibuf.c (read_minibuf): Use CONSP instead of Fconsp.
50796 2016-05-01 Paul Eggert <eggert@cs.ucla.edu>
50800 * .gitignore: Remove leim/changed.misc, leim/changed.tit,
50801 as these files are no longer created. Add gmon.out, for
50802 -pg profiling. Sort.
50804 2016-05-01 Paul Eggert <eggert@cs.ucla.edu>
50809 2016-05-01 mktime: port to stricter signed overflow checking
50810 2016-05-01 mktime: speed up DEBUG_MKTIME benchmarks
50811 2016-05-01 mktime: resurrect DEBUG_MKTIME testing
50812 2016-05-01 mktime: simplify DEBUG_MKTIME
50813 2016-05-01 Port mktime_internal offset to unsigned time_t
50814 2016-04-27 xstrtol: prohibit monstrosities like "1bB"
50815 2016-04-13 mktime: improve integer overflow checking
50816 2016-04-13 intprops: check two's complement assumption
50817 2016-04-13 intprops, mktime, strtol: assume two's complement
50818 * lib/intprops.h, lib/mktime-internal.h, lib/mktime.c:
50819 * lib/strtol.c, lib/timegm.c, m4/mktime.m4, m4/std-gnu11.m4:
50822 2016-05-01 Paul Eggert <eggert@cs.ucla.edu>
50824 Merge from origin/emacs-25
50826 c695fb3 ; Spelling fixes
50827 03750c0 * doc/misc/texinfo.tex: Sync from gnulib.
50828 42fed3b * lisp/isearch.el (isearch-forward-symbol-at-point): Add isea...
50830 2016-05-01 Paul Eggert <eggert@cs.ucla.edu>
50832 Merge from origin/emacs-25
50834 d8affa3 Use ‘T *restrict’ proto, not ‘T[restrict]’
50835 d38d2a8 Fix documentation of 'url-retrieve-synchronously'
50836 586b213 * lisp/url/url.el (url-retrieve-synchronously): Doc fix. (Bu...
50839 # doc/misc/url.texi
50842 2016-05-01 Paul Eggert <eggert@cs.ucla.edu>
50844 Merge from origin/emacs-25
50846 16e5e8e Fix last change to isearch-update (bug#23406)
50847 b755d98 Autoload cursor-sensor-inhibit (bug#23406)
50848 b52ebd4 org-map-entries: Fix org-agenda-prepare-buffers call
50849 86aa409 Followup for last commit in the user manual
50850 7004459 Improve doc string of 'set-goal-column'
50851 ccdaf04 Fix the MSDOS build
50852 ffe701c Remove \= from format string (bug#18190)
50853 1c58fa1 Fix variable-pitch font on MS-Windows
50854 c6077bf Restore follow-scroll-up/down to scrolling by the combined si...
50855 b671e21 Revert unneeded change which harms syntactic parsing. This f...
50856 48b24c9 Correct indentation of ids in a C++ enum after a protection k...
50857 5c3534f * lisp/window.el (window--process-window-list): No-op if no p...
50858 734fb3a Port dumping to NetBSD with PaX
50859 0255a70 Don't mistake `for' inside a function for a part of array com...
50864 2016-05-01 Paul Eggert <eggert@cs.ucla.edu>
50866 Merge from origin/emacs-25
50868 71fb0e0 Improve last change to vc-git-mode-line-string
50869 6858e77 Todo mode doc bug fix
50870 e55d0db Fix revision calculation in vc-git-mode-line-string
50871 ca87b34 ; Fix errant revert ccb75d7
50872 40bfebe Add Python 3.5 keyword "await"
50873 fa7886a Add new keywords of Python 3.5
50874 ccb75d7 Partially revert previous change.
50875 8ee168a ; * etc/NEWS: Update entry about color fonts on OS X with a w...
50876 b09ca27 Say why text-quoting-style is not a user option
50878 2016-05-01 Paul Eggert <eggert@cs.ucla.edu>
50880 Merge from origin/emacs-25
50882 5a952eb Don't mention ~/.emacs.bmk literally in doc strings
50883 c338cf3 * etc/NEWS: Explain why multicolor font display is disabled o...
50884 c30d1b4 Port to Ubuntu 16.04 --enable-gcc-warnings
50886 2016-05-01 Lars Ingebrigtsen <larsi@gnus.org>
50888 Mention the `find-library-name' changes
50890 2016-05-01 Lars Ingebrigtsen <larsi@gnus.org>
50892 Fix text in menu in minor-mode-menu-from-indicator
50894 * lisp/mouse.el (minor-mode-menu-from-indicator): Don't
50895 capitalize "Off" in "Turn Off" (bug#11028).
50897 2016-05-01 David Engster <deng@randomsample.de>
50899 gitmerge: Add cherry pick to gitmerge-skip-regexp
50901 * admin/gitmerge.el (gitmerge-skip-regexp): Add "cherry picked
50902 from commit", which is the string appended by 'git cherry-pick
50905 2016-05-01 Lars Ingebrigtsen <larsi@gnus.org>
50907 Allow `global-set-key' to bind keys under the `M-o' map
50909 * lisp/subr.el (global-set-key): Allow binding keys under the
50910 `M-o' map (bug#9730).
50912 2016-05-01 Lars Ingebrigtsen <larsi@gnus.org>
50914 Add `size-indication-mode' to the menu on `mouse-1' "Top"
50916 * lisp/bindings.el (mode-line-column-line-number-mode-map):
50917 Add `size-indication-mode' to the menu (bug#5727).
50919 2016-05-01 Lars Ingebrigtsen <larsi@gnus.org>
50921 Allow finding libraries loaded manually outside the load-path
50923 * lisp/emacs-lisp/find-func.el (find-library--from-load-path):
50924 New function to find a library from a load path (bug#5661).
50925 (find-library-name): Use it.
50927 There are so many combinations of inputs and possibly entries in
50928 `load-history' that the code looks like an entry in a code obfuscation
50929 contest. If anybody has a better implementation, please substitute.
50931 But remember that the input given may be foo, foo.el, foo.elc, and the
50932 entries in load-history may be foo.el, foo.elc and foo.el.gz, and we
50933 want to return only foo.el and foo.el.gz. *phew*
50935 2016-05-01 Lars Ingebrigtsen <larsi@gnus.org>
50937 Allow minibuffer prompts to use faces
50939 * doc/lispref/minibuf.texi (Text from Minibuffer): Document
50940 `minibuffer-prompt-properties' and explain how faces work in
50941 the minibuffer prompt.
50943 * src/minibuf.c (read_minibuf): If `face' is in
50944 `minibuffer-prompt-properties', apply it to the end of the
50945 face list to allow users to have their own faces on the
50946 prompts (bug#16136).
50948 2016-05-01 Peter Feigl <peter.feigl@nexoid.at> (tiny change)
50950 Add R7RS syntax forms to scheme.el
50952 * lisp/progmodes/scheme.el (scheme-font-lock-keywords-2): Add
50953 a number of special forms introduced in R7RS-small.
50954 * lisp/progmodes/scheme.el (scheme-indent-function): Same.
50956 2016-05-01 Alan Third <alan@idiocy.org>
50958 Implement horizontal scroll bars on NS
50960 * lisp/scroll-bar.el (horizontal-scroll-bars-available-p): Remove NS
50962 * lisp/term/ns-win.el: Remove custom NS scroll-bar handlers and bind
50963 scroll-bar mouse clicks to standard handlers.
50964 * src/nsterm.h (EmacsScroller): Add 'horizontal' property and rename
50965 pixel_height to pixel_length.
50966 * src/nsterm.m (x_set_window_size): Remove left-hand scroll-bar code. It
50967 caused scroll-bars to be over-drawn and the best working solution
50968 appears to be complete removal.
50969 (ns_set_horizontal_scroll_bar): Rewrite to handle horizontal scrollers
50971 (ns_set_vertical_scroll_bar): Set width to actual scroller width.
50972 (setFrame): Handle horizontal case.
50973 (dealloc): Handle horizontal case.
50974 (judge): Handle horizontal case.
50975 (setPosition): Rename pixel_height to pixel_length.
50976 (sendScrollEventAtLoc): Handle horizontal case.
50977 (mouseDown): Handle horizontal case and general tidy up of code.
50978 (mouseDragged): Handle horizontal case. Call sendScrollEventAtLoc with
50979 absolute pixel size instead of ratio.
50980 * src/window.h: Remove NS check.
50982 2016-05-01 Michael Albinus <michael.albinus@gmx.de>
50984 tramp.texi: Revert last change due to backward compatibility
50986 2016-04-30 Paul Eggert <eggert@cs.ucla.edu>
50988 Fix the buffer-count patch (Bug#23394)
50990 * src/buffer.c (Fgenerate_new_buffer_name): Increment count just
50991 once each time through the loop. Reported by Lars Ingebrigtsen in:
50992 https://lists.gnu.org/r/emacs-devel/2016-04/msg00918.html
50994 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
50996 cua-prefix-override-inhibit-delay doc fix
50998 * lisp/emulation/cua-base.el
50999 (cua-prefix-override-inhibit-delay): Typo fix in doc string
51002 2016-04-30 Paul Eggert <eggert@cs.ucla.edu>
51004 Fix generate-new-buffer-name increment typo
51006 Problem reported by Chaitanya Koparkar (Bug#23394).
51007 * src/buffer.c (Fgenerate_new_buffer_name): Increment count when
51008 generating a new buffer. This fixes a typo I introduced in
51009 2014-04-05T00:04:58Z!eggert@cs.ucla.edu.
51011 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51013 global-eldoc-mode doc fix
51015 * lisp/emacs-lisp/eldoc.el (global-eldoc-mode): Be more
51016 specific about what "applicable" means (bug#23071).
51018 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51020 Make the legend in describe-categories a link
51022 * lisp/help-fns.el (describe-categories): Make the "see
51023 bottom" text a link (bug#22227).
51025 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51027 normal-top-level-add-subdirs-to-load-path doc fix
51029 * lisp/startup.el (normal-top-level-add-subdirs-to-load-path):
51030 Doc fix (bug#21962).
51032 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51034 isearch-search-fun-function doc tweak
51036 * lisp/isearch.el (isearch-search-fun-function): Mention what
51037 the STRING parameter is (bug#21552).
51039 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51041 Fill some imenu--index-alist doc lines
51043 * lisp/imenu.el (imenu--index-alist): Fill some doc lines (bug#21269).
51045 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51047 Make describe-variable look up the variable in the current buffer
51049 * lisp/help-fns.el (describe-variable): Get the variable
51050 definition in the buffer we were called from (in case it only
51051 exists there) (bug#21252).
51053 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51055 Fmarker_position doc string clarification
51057 * src/marker.c (Fmarker_position): Clarify the doc string
51060 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51062 Further define-obsolete-* doc fixups
51064 * lisp/emacs-lisp/byte-run.el (define-obsolete-face-alias):
51065 Fix up last change.
51066 (define-obsolete-variable-alias): Ditto.
51068 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51070 Describe WHEN in all the define-obsolete- macros
51072 * lisp/emacs-lisp/byte-run.el (define-obsolete-face-alias):
51073 Say more verbosely what WHEN is (bug#21225).
51074 (define-obsolete-function-alias): Describe the WHEN parameter.
51075 (define-obsolete-variable-alias): Ditto.
51077 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51079 Mention with-silent-modifications in the lispref manual
51081 * doc/lispref/text.texi (Changing Properties): Document
51082 with-silent-modifications (bug#21171).
51084 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51086 with-silent-modifications doc clarification
51088 * lisp/subr.el (with-silent-modifications): Rearrange the doc
51089 string a bit so that the most pertinent information is at the
51092 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51094 clear-visited-file-modtime doc string fix
51096 * lisp/files.el (clear-visited-file-modtime): Fix possibly
51097 confusing doc string wording (bug#21169).
51099 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51101 Document mode mode line variables
51103 * doc/lispref/modes.texi (Mode Line Variables): Document
51104 `mode-line-front-space, `mode-line-misc-info',
51105 `mode-line-end-spaces' (bug#21014).
51107 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51109 Add a cross ref to Optional Mode Line
51111 * doc/lispref/modes.texi (Mode Line Variables): Add a cross
51112 reference to the Emacs mode line node that explains things
51113 like `display-time-string' (bug#21002).
51115 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51117 Add a doc string to display-time-string
51119 * lisp/time.el: Add a doc string to `display-time-string',
51120 because it's referred to in the manual, and is too mysterious
51121 otherwise (bug#21002).
51123 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51125 custom-buffer-style doc fix
51127 * lisp/cus-edit.el (custom-buffer-style): Document the `tree'
51130 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51132 Document how to check for ImageMagick support
51134 * doc/lispref/display.texi (ImageMagick Images): Say how to
51135 check for ImageMagick support, which isn't quite obvious
51138 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51140 Minor doc fix for ImageMagick/SVG builds
51142 * doc/lispref/display.texi (SVG Images): Don't imply that you
51143 have to build Emacs yourself (bug#20702).
51144 (ImageMagick Images): Ditto.
51146 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51148 Rearrange the doc of query-replace slightly
51150 * lisp/replace.el (query-replace): Move the mention of the
51151 interactive prefix arg earlier so that users can find it
51154 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51156 apropos-print doc fix
51158 * lisp/apropos.el (apropos-print): Document the undocumented
51159 parameters (bug#20520).
51161 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51163 completion-table-with-predicate doc string fix
51165 * lisp/minibuffer.el (completion-table-with-predicate): t ->
51166 non-nil in the doc string (bug#20460).
51168 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51170 Fill the completion-table-with-predicate doc string
51172 * lisp/minibuffer.el (completion-table-with-predicate): Fill
51173 the doc string (bug#20460).
51175 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51177 replace-match-maybe-edit doc clarification
51179 * lisp/replace.el (replace-match-maybe-edit): Say what
51180 MATCH-DATA is (bug#20304).
51182 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51184 add-timeout doc fix
51186 * lisp/emacs-lisp/timer.el (add-timeout): Mention the return
51189 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51191 Extremely minor doc fix in Choosing Window
51193 * doc/lispref/windows.texi (Choosing Window): There's only one
51194 action alist, I think (bug#20158).
51196 2016-04-30 Alan Mackenzie <acm@muc.de>
51198 * .dir-locals.el: Amend for correct fontification of *.[ch]
51199 containing "IF_LINT"
51201 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51203 Transform mentions of `eval-after-load' to `with-eval-after-load'
51205 * doc/lispref/loading.texi (Hooks for Loading): Update text to
51206 not mention `eval-after-load' (bug#20038).
51208 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51210 cursor-type doc fix
51212 * src/buffer.c (syms_of_buffer): Mention that cursor-type's
51213 WIDHT/HEIGHT can't exceed the frame char size (bug#19215).
51215 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51217 Add a link from Tool Bar to Images
51219 * doc/lispref/keymaps.texi (Tool Bar): Add a link to the
51220 Images node (bug#19722).
51222 2016-04-30 Alan Mackenzie <acm@muc.de>
51224 CC Mode: Recognize a noise macro with parens after a declarator's identifier
51226 * lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): In the while loop
51227 following comment "Skip over type decl suffix operators." insert code also
51228 to check for noise macros with parentheses.
51230 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51232 (default-mode-line-format): More explicit obsolete info
51234 * lisp/subr.el (default-mode-line-format): Be more explicit in
51235 how default values are now handled (bug#19424).
51237 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51239 Fcompare_buffer_substrings doc string clarification
51241 * src/editfns.c (Fcompare_buffer_substrings): Extremely minor
51242 doc string clarification (bug#19255).
51244 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51246 insert-file-contents-literally doc fix
51248 * lisp/files.el (insert-file-contents-literally): Say that the
51249 parameters are explained in the other function (bug#18317).
51251 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51253 Fix custom types for cursor-in-non-selected-windows
51255 * lisp/cus-start.el (standard): Use the same custom types for
51256 cursor-in-non-selected-windows as for cursor-type (bug#19214).
51258 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51260 Doc clarification to mwheel-scroll
51262 * lisp/mwheel.el (mwheel-scroll): Mention that the restriction
51263 does not apply to Windows (bug#19209).
51265 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51267 Clarify the doc of eval-expression-print-format
51269 * lisp/simple.el (eval-expression-print-format): Doc
51270 clarification (bug#19114).
51272 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51274 (extended-command-suggest-shorter): Add a version string
51276 * lisp/simple.el (extended-command-suggest-shorter): Add a
51279 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51281 Document extended-command-suggest-shorter
51283 * doc/emacs/m-x.texi (M-x): Mention
51284 extended-command-suggest-shorter (bug#19152).
51286 2016-04-30 Ivan Shmakov <ivan@siamics.net>
51288 Add a variable to control "shorter command" suggestions
51290 * lisp/simple.el (extended-command-suggest-shorter): New variable (bug#19152).
51291 (execute-extended-command): Use it.
51293 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51295 Explictly explain that package-initialize loads the packages
51297 * lisp/emacs-lisp/package.el (package-initialize): Be explicit
51298 in saying that `package-initialize' obviates adjusting the
51299 path or requiring the packages, as this is a question that
51300 apparently comes up now and then (bug#18829).
51302 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51304 Have the doc strings of `load-path' and `require' mention each other
51306 * src/fns.c (Frequire): Mention `load-path' and fill the doc
51307 string (bug#18829).
51309 * src/lread.c (syms_of_lread): Mention that `require' uses
51312 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51314 Doc fix for insert-pair-alist
51316 * lisp/emacs-lisp/lisp.el (insert-pair-alist): Say what
51317 COMMAND-CHAR is (bug#18809).
51319 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51321 Move doc of backup-directory-alist to the Backup node
51323 * doc/emacs/files.texi (Backup): Move the documentation of
51324 `backup-directory-alist' here from the "Single or Numbered
51325 Backups" node, because it doesn't seem to have much to do with
51326 numbering (bug#18692).
51328 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51330 Tiny doc clarification for create-fontset-from-fontset-spec
51332 * lisp/international/fontset.el (create-fontset-from-fontset-spec):
51333 Clarify what the optional part is (bug#18686).
51335 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51337 Fill the doc string of font-lock-keywords
51339 * lisp/font-lock.el (font-lock-keywords): Fill the lines and
51340 reorganize some explanations (bug#21427).
51342 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51344 Doc fix for font-lock-remove-keywords
51346 * lisp/font-lock.el (font-lock-remove-keywords): Add a link to
51347 `font-lock-add-keywords' to describe KEYWORDS (bug#18634).
51349 2016-04-30 Lars Ingebrigtsen <larsi@gnus.org>
51351 Clarify whitespace-style doc string
51353 * lisp/whitespace.el (whitespace-style): Doc clarification
51356 2016-04-29 Lars Ingebrigtsen <larsi@gnus.org>
51358 No need to test for jka-compr
51360 * lisp/vc/ediff-util.el (ediff-file-compressed-p): jka-compr
51361 is always available; no need to test (bug#18204).
51363 2016-04-29 Lars Ingebrigtsen <larsi@gnus.org>
51365 Doc fixed for next-error-buffer-p
51367 * lisp/simple.el (next-error-buffer-p): Clarify doc string
51370 2016-04-29 Lars Ingebrigtsen <larsi@gnus.org>
51374 * src/fileio.c (Ffile_accessible_directory_p): Tiny doc fix
51375 (and fill) (bug#18201).
51377 2016-04-29 Lars Ingebrigtsen <larsi@gnus.org>
51381 * src/keymap.c (Fdefine_prefix_command): Clarify doc string
51382 slightly (bug#18092).
51384 2016-04-29 Lars Ingebrigtsen <larsi@gnus.org>
51386 delsel doc touch ups
51388 * lisp/delsel.el (delete-selection-helper): Use non-nil
51389 instead of t and clarify function return values (bug#18089).
51391 2016-04-29 Lars Ingebrigtsen <larsi@gnus.org>
51393 Doc fixes for menu-bar.el
51395 * lisp/menu-bar.el (clipboard-kill-ring-save): Describe the
51396 REGION parameter (bug#18028).
51397 (clipboard-kill-region): Ditto.
51399 2016-04-29 Lars Ingebrigtsen <larsi@gnus.org>
51403 * lisp/rect.el (delete-whitespace-rectangle): Doc fix (bug#18026).
51405 2016-04-29 Lars Ingebrigtsen <larsi@gnus.org>
51407 Minor doc clarification
51409 * lisp/subr.el (y-or-n-p): Document the return value from "n"
51412 2016-04-29 Lars Ingebrigtsen <larsi@gnus.org>
51414 Fill font-lock-mode doc string
51416 * lisp/font-core.el (font-lock-mode): Fill the text to make it
51417 narrower (bug#18008).
51419 2016-04-29 Lars Ingebrigtsen <larsi@gnus.org>
51421 Wrap the auto-generated doc string
51423 * lisp/emacs-lisp/easy-mmode.el (define-minor-mode): Wrap a
51424 string to make it less likely that we get overlong lines
51427 2016-04-29 Lars Ingebrigtsen <larsi@gnus.org>
51429 Clarify hi-lock-find-patterns
51431 * lisp/hi-lock.el (hi-lock-find-patterns): Doc clarification
51434 2016-04-29 Lars Ingebrigtsen <larsi@gnus.org>
51436 Warning fix in jit-lock-mode
51438 * lisp/jit-lock.el (jit-lock-mode): Don't issue a warning when
51439 turning the mode on in an indirect buffer, if this somehow has
51440 happened (bug#17738).
51442 2016-04-29 Lars Ingebrigtsen <larsi@gnus.org>
51444 Add a doc string to `winner-mode'
51446 * lisp/winner.el (winner-mode): Add a doc string based on the
51447 comments in the file (bug#17716).
51449 2016-04-29 Lars Ingebrigtsen <larsi@gnus.org>
51451 Doc fix for align-newline-and-indent
51453 * lisp/align.el (align-newline-and-indent): Mention that
51454 alignment is done by `align' (bug#17707).
51456 2016-04-29 Lars Ingebrigtsen <larsi@gnus.org>
51458 Cancel the eldoc timer when switching off eldoc mode
51460 * lisp/emacs-lisp/eldoc.el (eldoc-mode): Cancel the eldoc
51461 timer when switching off eldoc mode. It will be restarted
51462 again if needed (bug#17582).
51464 2016-04-29 Lars Ingebrigtsen <larsi@gnus.org>
51468 * lisp/subr.el (kbd): Describe more fully the format of the
51469 parameter (bug#17039).
51471 2016-04-29 Lars Ingebrigtsen <larsi@gnus.org>
51473 Add a sanity check to apropos-documentation-internal
51475 * lisp/apropos.el (apropos-documentation-internal): Add a
51476 sanity check to be less fragile in the presence of invalid
51479 2016-04-29 Lars Ingebrigtsen <larsi@gnus.org>
51483 * lisp/simple.el (use-empty-active-region): Doc tweak.
51484 There's only one region (bug#16513).
51486 2016-04-29 Lars Ingebrigtsen <larsi@gnus.org>
51488 Clarify `read-face-name' doc and tweak the code
51490 * lisp/faces.el (read-face-name): Clarify the documentation
51491 and allow a mix of faces and faces names in all cases
51494 2016-04-29 Lars Ingebrigtsen <larsi@gnus.org>
51496 Remove ": ?" from the read-face-name prompt
51498 * lisp/faces.el (read-face-name): Remove ": ?" from the prompt
51499 to be more backwards compatible (bug#15909).
51501 2016-04-29 Lars Ingebrigtsen <larsi@gnus.org>
51503 Link from (emacs)Exiting to (lisp)Killing Emacs
51505 * doc/emacs/entering.texi (Exiting): Link to the lispref
51506 manual for further customizations (bug#15445).
51508 2016-04-29 Lars Ingebrigtsen <larsi@gnus.org>
51510 find-lisp doc touchups
51512 * lisp/find-lisp.el (find-lisp-format): Copy over the doc
51513 string (bug#15047).
51514 (find-lisp-find-files): Clarify doc.
51516 2016-04-29 Lars Ingebrigtsen <larsi@gnus.org>
51518 Don't have the manual claim that it lists all CL incompatibilities
51520 * doc/misc/cl.texi (Common Lisp Compatibility): The list of
51521 incompatibilities isn't exhaustive, so don't say that it is
51524 2016-04-29 Lars Ingebrigtsen <larsi@gnus.org>
51526 Fix call of `kmacro-display'
51528 * lisp/kmacro.el (kmacro-view-ring-2nd): Fix call of
51529 `kmacro-display' (bug#15020).
51531 2016-04-29 Lars Ingebrigtsen <larsi@gnus.org>
51533 Change all occurrences of "Mouse-[0-9]" to "mouse-[0-9]"
51535 * doc/emacs/*.texi: Change all occurrences of "Mouse-[0-9]" to
51536 "mouse-[0-9]". These are case sensitive, and the keys are lower case
51539 2016-04-28 Lars Ingebrigtsen <larsi@gnus.org>
51541 Rename "Directory Search" menu to "Servers"
51543 * lisp/menu-bar.el (menu-bar-tools-menu): Rename "Directory
51544 Search" to "Directory Servers". Suggested by Eli
51545 Zaretskii. (bug#14919).
51547 * lisp/net/eudc.el: Rename ditto throughout.
51549 2016-04-28 Lars Ingebrigtsen <larsi@gnus.org>
51551 Remove uses of the unused to-end parameter from simple.el
51553 * lisp/simple.el (line-move-partial): Remove usages of the
51554 unused to-end parameter, and make it optional (bug#14844).
51555 (line-move): Remove use of the unused to-end parameter.
51557 2016-04-28 Lars Ingebrigtsen <larsi@gnus.org>
51559 Doc fix: _ chars are automatically removed.
51561 * lisp/cus-edit.el (custom-buffer-create): _ chars are
51562 automatically removed when displaying help, so fix the last
51564 (custom-buffer-create-other-window): Ditto.
51566 2016-04-28 Lars Ingebrigtsen <larsi@gnus.org>
51568 Doc string change to enable-recursive-minibuffers
51570 * src/minibuf.c (syms_of_minibuf): Mention
51571 minibuffer-depth-indicator-mode in the doc string to
51572 enable-recursive-minibuffers (bug#14147).
51574 2016-04-28 Lars Ingebrigtsen <larsi@gnus.org>
51576 Fix definition of nobreak-space
51578 * lisp/faces.el (nobreak-space): The definition to
51579 nobreak-space was inadvertantly changed by the previous checkin.
51581 2016-04-28 Lars Ingebrigtsen <larsi@gnus.org>
51583 Clarify the `interactive' doc string slightly
51585 * src/callint.c (Finteractive): Clarify the doc string slightly
51588 2016-04-28 Drew Adams <drew.adams@oracle.com>
51590 Make icomplete respect `completion-ignored-extensions'
51592 * lisp/icomplete.el (icomplete-completions): Heed
51593 `completion-ignored-extensions' (bug#12939).
51595 2016-04-28 Lars Ingebrigtsen <larsi@gnus.org>
51597 Make ibuffer not break on newline-embedded buffer names
51599 * lisp/ibuffer.el (name): When buffer names contain newlines,
51600 quote those newlines before displaying (bug#12378).
51602 2016-04-28 Lars Ingebrigtsen <larsi@gnus.org>
51604 Add a new face for non-breaking hyphen characters
51606 * doc/emacs/display.texi (Standard Faces): Mention nobreak-hyphen.
51607 (Text Display): Ditto.
51609 * lisp/faces.el (nobreak-hyphen): New face (bug#12048).
51611 * src/xdisp.c (get_next_display_element): Use it instead of
51612 the escape-glyph face.
51614 * src/xdisp.c (syms_of_xdisp): New symbil Qnobreak_hyphen.
51616 2016-04-28 Lars Ingebrigtsen <larsi@gnus.org>
51618 Make a menu less ambiguous
51620 * doc/emacs/custom.texi (Key Bindings): The Modifier Keys node
51621 is about using modifier keys, not binding them (bug#10942).
51623 2016-04-28 Lars Ingebrigtsen <larsi@gnus.org>
51625 Make kill-emacs-query-functions into defcustom
51627 * lisp/files.el (save-buffers-kill-terminal): Mention
51628 `save-buffers-kill-emacs' (bug#10794).
51629 (kill-emacs-query-functions): Made into a defcustom.
51631 2016-04-28 Lars Ingebrigtsen <larsi@gnus.org>
51633 Have describe-variable output multi-line values better
51635 * lisp/help-fns.el (describe-variable): When printing
51636 multi-line expressions, display them prettier (bug#10723).
51638 2016-04-28 Lars Ingebrigtsen <larsi@gnus.org>
51640 Clean up custom-buffer-create code slightly
51642 * lisp/cus-edit.el (custom-buffer-create-other-window): Don't
51643 pass the unused description value on (for clarity) (bug#10540).
51644 (custom-buffer-create): Ditto
51646 2016-04-28 Lars Ingebrigtsen <larsi@gnus.org>
51648 Clarify some doc strings
51650 * lisp/emacs-lisp/syntax.el (syntax-propertize-via-font-lock):
51651 Clarify doc string (bug#8693).
51652 (syntax-propertize): Clarify doc string.
51654 2016-04-28 Nicolas Richard <theonewiththeevillook@yahoo.fr>
51656 Fix number-at-point in lisp buffers
51658 * lisp/thingatpt.el (number-at-point): Don't say that things
51659 like ?a are numbers in lisp mode buffers (bug#8634).
51661 2016-04-28 Lars Ingebrigtsen <larsi@gnus.org>
51663 Don't consider colons to be paragraphs starting chars in strings
51665 * lisp/emacs-lisp/lisp-mode.el (lisp-fill-paragraph): Don't
51666 consider colons to start paragraphs in (doc) strings
51669 2016-04-27 Lars Ingebrigtsen <larsi@gnus.org>
51671 Make `undo' of `C-x r t' put point where it should be
51673 * lisp/rect.el (string-rectangle): Make `undo' of a this
51674 command put point back where it was (bug#7522).
51676 2016-04-27 Lars Ingebrigtsen <larsi@gnus.org>
51678 Add some concept index entries for custom types
51680 * doc/lispref/customize.texi (Composite Types): Add concept
51681 index entries for restricted-sexp, radio and choice (bug#7385).
51683 2016-04-27 Lars Ingebrigtsen <larsi@gnus.org>
51685 Mention `lisp-indent-function' in the lispref manual
51687 * doc/lispref/macros.texi (Indenting Macros): Mention
51688 `lisp-indent-function' (bug#3393).
51690 2016-04-27 Lars Ingebrigtsen <larsi@gnus.org>
51692 Clarify doc string of internal compilation function
51694 * lisp/progmodes/compile.el (compilation-get-file-structure):
51695 Clarify doc string (bug#3137).
51697 2016-04-27 Lars Ingebrigtsen <larsi@gnus.org>
51699 Avoid having `C-x h' mark the prompt part of the minibuffer
51701 * lisp/simple.el (mark-whole-buffer): Don't mark the prompt
51702 part of the minibuffer (bug#2589).
51704 2016-04-27 Lars Ingebrigtsen <larsi@gnus.org>
51706 Allow a prefix argument to find-library to pop to a different window
51708 * lisp/emacs-lisp/find-func.el (find-library): Allow a prefix
51709 argument to pop to a different window (bug#2270).
51711 2016-04-27 Lars Ingebrigtsen <larsi@gnus.org>
51713 Move the diff command to "Operate" in ibuffer
51715 * lisp/ibuffer.el (ibuffer-mode-operate-map): Move the diff
51716 command to the "Operate" menu, and remove the customization
51717 entry to make the "View" menu more logical (bug#1150).
51719 2016-04-27 Lars Ingebrigtsen <larsi@gnus.org>
51721 Make the minor modes in help buffers into buttons
51723 * lisp/help.el (describe-mode): Make the minor modes into
51724 buttons to enable easier documentation traversal (bug#1149).
51726 2016-04-27 Jorgen Schaefer <contact@jorgenschaefer.de>
51728 Add a number of Python 3 exceptions
51730 * lisp/progmodes/python.el (python-font-lock-keywords): Clean up
51731 the exception list, adding a number of new Python 3 exceptions and
51732 moving some exceptions to the Python 2 and 3 list as Python 2.7
51735 2016-04-26 Anders Lindgren <andlind@gmail.com>
51737 Fix bug#22891: wrong terminal width when a fringe width is zero.
51739 When either fringe width is zero, Emacs reserved one column for a
51740 continuation glyph. Terminal windows does not take this into
51741 account when the frame is resized.
51743 * lisp/window.el (window-adjust-process-window-size): Use
51744 `window-max-chars-per-line' instead of `window-body-width'.
51745 * lisp/term.el (term-window-width): Remove function. (It does the
51746 same as `window-max-chars-per-line' but without recent bug fixes.)
51747 (term-mode): Use `window-max-chars-per-line' instead of
51748 `term-window-width'.
51750 2016-04-26 Simen Heggestøyl <simenheg@gmail.com>
51752 Add completion of `calc()' in CSS mode
51754 * lisp/textmodes/css-mode.el (css-value-class-alist): Add `calc()' as
51755 a completion candidate for several value classes.
51756 (css--value-class-lookup): Return only unique results.
51758 * test/lisp/textmodes/css-mode-tests.el
51759 (css-test-property-values-no-duplicates)
51760 (css-test-value-class-lookup): Update to reflect the above changes.
51762 2016-04-26 Paul Eggert <eggert@cs.ucla.edu>
51764 Fix socketd fd startup bug that I introduced
51766 Problem reported by Matthew Leach in:
51767 https://lists.gnu.org/r/emacs-devel/2016-04/msg00778.html
51768 * src/emacs.c (main): Indicate more clearly the coupling between
51769 the --daemon option and init_process_emacs.
51770 * src/lisp.h: Adjust to API changes.
51771 * src/process.c (set_external_socket_descriptor):
51772 Remove, replacing by ...
51773 (init_process_emacs): ... passing the socket FD here instead.
51776 2016-04-25 Tao Fang <fangtao0901@gmail.com>
51778 Fix: (void-variable url-http-response-status)
51780 * lisp/url/url-http.el
51781 (url-https-proxy-after-change-function): Display the error
51782 message before doing the callback to avoid a void variable
51783 situation (bug#23290).
51785 2016-04-25 Lars Magne Ingebrigtsen <larsi@gnus.org>
51787 smtpmail would say it's done before it is
51789 * lisp/mail/smtpmail.el (smtpmail-via-smtp): Move the sending
51790 of the data end marker from here... (bug#23020).
51791 (smtpmail-send-data): ... to here, so that we don't get a
51792 "Sending done" before we've sent the final "." (which can make
51793 the SMPT server reject the email.
51795 2016-04-25 Lars Magne Ingebrigtsen <larsi@gnus.org>
51797 `url-retrieve-synchronously' now takes an optional timeout parameter
51799 * doc/misc/url.texi (Retrieving URLs): Document optional parameters.
51801 * lisp/url/url.el (url-retrieve-synchronously): Allow passing
51802 in a timeout parameter (bug#22940).
51804 2016-04-25 Lars Magne Ingebrigtsen <larsi@gnus.org>
51806 Include "Retype" as a comint password prompt
51808 * lisp/comint.el (comint-password-prompt-regexp): Include
51809 "Retype" to catch "Retype password for [account]:" from the
51810 "pass" utility (bug#22942).
51812 2016-04-25 Alan Mackenzie <acm@muc.de>
51814 Fix spurious fontification of "for (; a * b;)" in CC Mode.
51816 * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Check for being
51817 inside the parens of a for statement and after a semicolon near the beginning
51818 of the lambda form.
51820 2016-04-25 Paul Eggert <eggert@cs.ucla.edu>
51822 New function ‘char-from-name’
51824 This also fixes the mishandling of "\N{CJK COMPATIBILITY
51825 IDEOGRAPH-F900}", "\N{VARIATION SELECTOR-1}", etc.
51826 Problem reported by Eli Zaretskii in:
51827 https://lists.gnu.org/r/emacs-devel/2016-04/msg00614.html
51828 * doc/lispref/nonascii.texi (Character Codes), etc/NEWS: Document this.
51829 * lisp/international/mule-cmds.el (char-from-name): New function.
51830 (read-char-by-name): Use it. Document that "BED" is treated as
51831 a name, not as a hexadecimal number. Reject out-of-range integers,
51832 floating-point numbers, and strings with trailing junk.
51833 * src/lread.c (character_name_to_code): Call char-from-name
51834 instead of inspecting ucs-names directly, so that we handle
51835 computed names like "VARIATION SELECTOR-1". Do not use an auto
51836 string, since char-from-name might GC.
51837 * test/src/lread-tests.el: Add tests for new behavior, and
51838 fix some old tests that were wrong.
51840 2016-04-25 Alan Mackenzie <acm@muc.de>
51842 c-forward-<>-arglist no longer directly applies face properties in Java Mode.
51844 This allows the calling of c-restore-<>-properties from c-common-init without
51845 the test suite giving spurious errors.
51847 * lisp/progmodes/cc-engine.el (c-forward-<>-arglist): Remove the form that
51848 sets face properties.
51849 (c-forward-<>-arglist-recur): Reformulate the bit that handles types inside
51850 template brackets using c-inside-<>-type-key. Don't bind
51851 c-record-type-identifiers or c-record-found-types around the recursive call,
51852 allowing positions of found types to flow back to the caller.
51854 * lisp/progmodes/cc-langs.el (c-inside-<>-type-kwds, c-inside-<>-type-key):
51855 new lang consts/var.
51857 * lisp/progmodes/cc-mode.el (c-common-init): Don't remove
51858 c-restore-<>-properties from the list of functions called at mode
51861 2016-04-25 Jun Hao <jun_hao@aol.com>
51863 Pass in port only if provided by caller in the OS X keychain
51865 * lisp/auth-source.el (auth-source-macos-keychain-search): Pass in
51866 port only if provided (bug#23374).
51868 2016-04-25 Alan Mackenzie <acm@muc.de>
51870 Add fontification for a C declaration which looks like a function call.
51872 For example, "t1 *fn (t2 *b);".
51874 * lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): Add new variable
51875 at-decl-start, setting it to whether the putative decl starts immediately
51876 after ; or { or }. Accept such a construct as a decl when at-decl-start is
51879 * lisp/progmodes/cc-langs.el (c-pre-start-tokens): New language variable.
51881 2016-04-25 Eli Zaretskii <eliz@gnu.org>
51883 Don't mirror slashes in convert-standard-filename on MS-Windows
51885 * lisp/w32-fns.el (w32-convert-standard-filename): Don't mirror
51886 slashes into backslashes. This avoids producing ugly file names,
51887 and is deemed no longer necessary, and should certainly be
51888 unrelated to which shell is in use.
51890 2016-04-24 Dmitry Gutov <dgutov@yandex.ru>
51892 Revert the disputed VC change and update the tests
51894 * lisp/vc/vc-hooks.el (vc-working-revision):
51895 Remove the previous change.
51896 (vc-state): Same. And update the old, incorrect comment about
51898 (https://lists.gnu.org/r/emacs-devel/2016-04/msg00526.html).
51900 * test/lisp/vc/vc-tests.el (vc-test--state): Remove the check
51901 calling `vc-state' on default-directory (VC state is undefined
51902 for directories). Check that `vc-state' returns nil where it
51903 returned `unregistered' before. Remove all checks comparing
51904 invocations with the backend passed in explictly and without.
51905 (vc-test--working-revision): Remove all checks comparing
51906 invocations with the backend passed in explictly and without.
51907 Update comments, and add a new one.
51909 2016-04-24 Paul Eggert <eggert@cs.ucla.edu>
51911 * etc/NEWS: Grammar and punctuation improvements.
51913 2016-04-24 Paul Eggert <eggert@cs.ucla.edu>
51915 Merge from origin/emacs-25
51917 9daf1cf * etc/NEWS: Improve wording of vc-git-log-output-coding-syste...
51918 0cd2e92 Don't kill ~/ if it's the top level directory
51919 4f40f5f describe-char: fix insert char documentation
51920 87ee542 (vc-git-mode-line-string): Don't use `replace-regexp-in-string'
51922 2016-04-24 Paul Eggert <eggert@cs.ucla.edu>
51924 Merge from origin/emacs-25
51926 960f90d * etc/AUTHORS: Update the AUTHORS file
51927 b21e9d4 * admin/update_autogen: Use #!/usr/bin/env bash
51929 2016-04-24 Paul Eggert <eggert@cs.ucla.edu>
51931 Merge from origin/emacs-25
51933 78f9af7 ; ChangeLog fixes
51934 162e549 * admin/authors.el (authors-ignored-files): Additions.
51935 2b31a0c In x_set_window_size restore do_pending_window_change calls
51936 401857e Fix Alt-modified keys on some European MS-Windows keyboards
51937 a77cf24 Document 'help-go-forward'
51938 1ba947f Revert "Allow to customize names of executables used by grep.el"
51939 570e0fa Revert "Don't use 'find-program'"
51940 645f4ef Revert "Use 'grep-find-program' in check-declare.el"
51941 aa03257 Clarify documentation of 'dired-mark-files-containing-regexp'
51942 ce0d8c7 Make tmm-menubar work in correct order again
51943 b8d5a8f Remove the Meta-CVS VC backend
51945 2016-04-24 Simen Heggestøyl <simenheg@gmail.com>
51947 Don't let `css--property-values' return duplicates
51949 * lisp/textmodes/css-mode.el (css--property-values): Don't return
51952 * test/lisp/textmodes/css-mode-tests.el (css-test-property-values):
51953 Take the above into account.
51954 (css-test-property-values-no-duplicates): Test that duplicates aren't
51955 returned by `css--property-values'.
51957 2016-04-24 Lars Magne Ingebrigtsen <larsi@gnus.org>
51959 Call `make-composed-keymap' correctly
51961 * lisp/image-mode.el (image-mode-map): Call
51962 `make-composed-keymap' correctly.
51964 2016-04-24 Lars Magne Ingebrigtsen <larsi@gnus.org>
51966 Use `make-composed-keymap' instead of copying the keymap
51968 * lisp/image-mode.el (image-mode-map): Use
51969 `make-composed-keymap' instead of copying the keymap.
51971 2016-04-24 Lars Magne Ingebrigtsen <larsi@gnus.org>
51973 Make `q' etc work in image mode again
51975 * lisp/image-mode.el (image-mode-map): Restore
51976 special-mode-map as the parent keymap of image-mode-map (bug#23167).
51978 2016-04-24 Lars Magne Ingebrigtsen <larsi@gnus.org>
51980 Fix typo in last url.texi checkin
51982 2016-04-24 Lars Magne Ingebrigtsen <larsi@gnus.org>
51984 Make STARTTLS error messages better
51986 * lisp/net/network-stream.el (network-stream-open-starttls):
51987 Output a better error message when TLS negotiation fails while
51988 doing STARTTLS (bug#23027).
51990 2016-04-24 Lars Magne Ingebrigtsen <larsi@gnus.org>
51992 Encode the shr tests files with trailing white space
51994 2016-04-24 Simen Heggestøyl <simenheg@gmail.com>
51996 Cache results of `css--property-values'
51998 * lisp/textmodes/css-mode.el (css--property-values): Cache computed
52001 * test/lisp/textmodes/css-mode-tests.el (css-test-property-value-cache):
52002 New regression test for the above.
52004 2016-04-24 Michael Albinus <michael.albinus@gmx.de>
52006 Some improvements in vc
52008 * lisp/vc/vc-hooks.el (vc-state, vc-working-revision):
52009 Check, whether FILE is registered.
52011 * lisp/vc/vc-rcs.el (vc-rcs-checkout-model): Return `locking'
52012 for nonexistent files.
52014 * test/lisp/vc/vc-tests.el (w32-application-type): Declare.
52015 (vc-test--revision-granularity-function)
52016 (vc-test--unregister-function): Use `vc-call-backend'.
52017 (vc-test--run-maybe-unsupported-function): New defmacro.
52018 (vc-test--register, vc-test--state, vc-test--working-revision)
52019 (vc-test--checkout-model): Use it. Fix also expected results.
52020 (vc-test-src02-state, vc-test-rcs04-checkout-model): They pass now.
52022 2016-04-24 Lars Magne Ingebrigtsen <larsi@gnus.org>
52024 Document the nil/default values of url-user-agent
52026 * doc/misc/url.texi (Customization): Document the nil/default
52027 values of url-user-agent.
52029 2016-04-24 Clément Pit--Claudel <clement.pit@gmail.com>
52031 Compute User-Agent dynamically in url-http
52033 * lisp/url/url-http.el (url-http-user-agent-string): Compute
52034 User-Agent string dynamically.
52035 (url-http--user-agent-default-string): New function.
52037 * lisp/url/url-vars.el (url-privacy-level): Allow `emacs' in list
52038 of information not to send.
52039 (url-user-agent): Add nil and `default' options; do not
52042 2016-04-24 Jun Hao <jun_hao@aol.com>
52044 Handle auth-source items with special characters on OS X
52046 * lisp/auth-source.el
52047 (auth-source-macos-keychain-search-items): Handle keychain
52048 output correctly when has special chararcters (bug#22824).
52050 2016-04-24 Magnus Henoch <magnus.henoch@gmail.com>
52052 Implement process-attributes for Darwin
52054 * src/sysdep.c (timeval_to_timespec, make_lisp_timeval)
52055 (system_process_attributes): Implement process-attributes
52056 for Darwin (bug#16579).
52058 2016-04-24 Lars Magne Ingebrigtsen <larsi@gnus.org>
52060 Use Unicode literals instead of hex values
52062 * lisp/net/shr.el (shr-tag-bdo): Use Unicode literals instead
52063 of hex values for greater readability.
52064 (shr-tag-bdi): Ditto.
52066 2016-04-24 Steve Purcell <steve@sanityinc.com>
52068 Allow _ characters in SQL prompts
52070 * lisp/progmodes/sql.el (sql-product-alist): Allow _
52071 characters in SQL prompts (bug#22596).
52073 Fixes issue 22596, whereby "_" is now not considered a word constituent
52074 character in sql-interactive-mode, so prompts like "foo_dev# " are not
52075 correctly detected. Rather than piggy-back on the symbol table, we
52076 explicitly match against alphanumeric chars or "_".
52078 2016-04-23 Glenn Morris <rgm@gnu.org>
52080 When autoload-timestamps is nil, use a dummy timestamp rather than "t".
52082 * lisp/emacs-lisp/autoload.el (autoload--non-timestamp): New constant.
52083 (autoload-generate-file-autoloads, autoload-find-destination)
52084 (update-directory-autoloads): Use autoload--non-timestamp.
52086 2016-04-23 Glenn Morris <rgm@gnu.org>
52088 * test/lisp/xt-mouse-tests.el: Move from test/automated/.
52090 2016-04-22 Jö Fahlke <jorrit@jorrit.de> (tiny change)
52092 Regexps for matching CMake output
52094 * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist): Add
52095 regexps for matching CMake output.
52096 * test/lisp/progmodes/compile-tests.el (compile-tests--test-regexps-data): Add
52098 * etc/compilation.txt (CMake): Add CMake examples.
52100 2016-04-22 Artur Malabarba <bruce.connor.am@gmail.com>
52102 * lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options):
52104 Fix docstring quotes.
52106 2016-04-21 Paul Eggert <eggert@cs.ucla.edu>
52108 Improve character name escapes
52110 * doc/lispref/nonascii.texi (Character Properties):
52111 Avoid duplication of Unicode names. Reformat examples to fit in
52113 * doc/lispref/objects.texi (General Escape Syntax):
52114 Simplify and better-organize explanation of \N{...} escapes.
52115 * src/character.h (CHAR_SURROGATE_PAIR_P): Remove; unused.
52116 (char_surrogate_p): New inline function.
52117 * src/lread.c: Do not include string.h; no longer needed.
52118 (invalid_character_name, check_scalar_value): Remove; the ideas
52119 behind these functions are now bundled into character_name_to_code.
52120 (character_name_to_code): Remove undocumented support for "CJK
52121 IDEOGRAPH-XXXX" names, as "U+XXXX" suffices. Reject monstrosities
52122 like "\N{U+-0}" and null bytes in \N escapes. Reject floating
52123 point in \N escapes instead of returning garbage. Use
52124 AUTO_STRING_WITH_LEN to lessen pressure on the garbage collector.
52125 * test/src/lread-tests.el (lread-char-number, lread-char-name)
52126 (lread-string-char-number, lread-string-char-name):
52127 Test runtime behavior, not compile-time, as the test framework
52128 is not set up to test compile-time.
52129 (lread-char-surrogate-1, lread-char-surrogate-2)
52130 (lread-char-surrogate-3, lread-char-surrogate-4)
52131 (lread-string-char-number-2, lread-string-char-number-3):
52133 (lread-string-char-number-1): Rename from lread-string-char-number.
52135 2016-04-21 Philipp Stephani <phst@google.com>
52137 Use 'ucs-names' for character name escapes
52139 * src/lread.c (invalid_character_name, check_scalar_value)
52140 (parse_code_after_prefix, character_name_to_code): New helper
52141 functions that use 'ucs-names' and parsing for CJK ideographs.
52142 (read_escape): Use helper functions.
52143 (syms_of_lread): New symbol 'ucs-names'.
52144 * test/src/lread-tests.el: New tests; fix a couple of bugs in
52147 2016-04-21 Philipp Stephani <phst@google.com>
52149 Minor cleanups for character name escapes
52151 * src/lread.c (init_character_names): Add missing 'void'.
52152 Remove top-level 'const'.
52153 (read_escape): Simplify loop a bit. Remove top-level 'const'.
52155 2016-04-21 Philipp Stephani <phst@google.com>
52157 Add documentation for character name escapes
52159 2016-04-21 Philipp Stephani <phst@google.com>
52161 Implement named character escapes, similar to Perl
52163 * src/lread.c (init_character_names): New function.
52164 (read_escape): Read Perl-style named character escape sequences.
52165 (syms_of_lread): Initialize new variable 'character_names'.
52166 * test/src/lread-tests.el (lread-char-empty-name): Add test file
52169 2016-04-21 Fabrice Popineau <fabrice.popineau@gmail.com>
52171 Avoid run-time dependency on libwinpthread DLL on MS-Windows
52173 * nt/mingw-cfg.site (ac_cv_search_clock_gettime)
52174 (ac_cv_func_clock_gettime, ac_cv_func_clock_settime): Force to not
52175 present, so that MinGW64 builds don't depend on libwinpthread.
52178 2016-04-21 Matthew Leach <matthew@mattleach.net>
52180 Add LIBSYSTEMD to the list of supported features
52182 * configure.ac: Add LIBSYSTEMD to EMACS_CONFIG_FEATURES and print a
52183 message at the end of configure stating whether Emacs will be build
52184 with libsystemd support.
52186 2016-04-21 Vasilij Schneidermann <v.schneidermann@gmail.com>
52188 Support absolute column movement in 'ansi-term'
52190 * lisp/term.el (term-handle-ansi-escape): Handle the "\E[G" sequence
52191 for absolute column movement. (Bug#23303)
52193 2016-04-21 Jorgen Schaefer <contact@jorgenschaefer.de>
52195 Add Python 3.5 keyword "await"
52197 * lisp/progmodes/python.el (python-font-lock-keywords): Add await as
52200 2016-04-20 Simen Heggestøyl <simenheg@gmail.com>
52202 Add "keyframes" to list of CSS at-rules
52204 * lisp/textmodes/css-mode.el (css-at-ids): Add "keyframes" at-rule.
52206 2016-04-20 Phillip Lord <phillip.lord@russet.org.uk>
52208 Prevent bootstrap autoload backup files
52210 * lisp/emacs-lisp/autoload.el (autoload-find-generated-file): Suppress
52211 backups in newly created file.
52213 (autoload-ensure-default-file): Function split into two.
52214 (autoload-ensure-file-writeable): New function from split.
52218 2016-04-20 Paul Eggert <eggert@penguin.cs.ucla.edu>
52220 Fix org-timestamp-change typo
52222 Problem reported by Peter Münster (Bug#23299).
52223 * lisp/org/org.el (org-timestamp-change): Fix typo that relied
52224 on undocumented behavior in ‘encode-time’. In practice the
52225 old code used local time, so use that.
52227 2016-04-19 Paul Eggert <eggert@cs.ucla.edu>
52229 Avoid AC_PREPROC_IFELSE glitch in configure.ac
52231 Problem reported by Angelo Graziosi in:
52232 https://lists.gnu.org/r/emacs-devel/2016-04/msg00545.html
52233 * configure.ac (gl_gcc_warnings): Work around an Autoconf glitch:
52234 AC_PREPROC_IFELSE doesn’t generate a simple shell command.
52236 2016-04-19 Michael Albinus <michael.albinus@gmx.de>
52238 autorevert: Resume with polling if file is deleted
52240 * lisp/autorevert.el: Use consistent wording in comments and
52242 (auto-revert-mode): Add local function to `kill-buffer-hook'.
52243 (auto-revert-notify-handler): Improve handling of `stopped' event.
52245 * test/lisp/autorevert-tests.el
52246 (auto-revert-test02-auto-revert-deleted-file): New test.
52247 (auto-revert-test03-auto-revert-tail-mode)
52248 (auto-revert-test04-auto-revert-mode-dired): Rename them.
52250 2016-04-18 Paul Eggert <eggert@cs.ucla.edu>
52252 Merge from origin/emacs-25
52254 5a0cbe5 Fix Bug#23276
52255 2007e32 Sync with upstream vhdl mode v3.38.1.
52256 b6d2552 Tweak configure.ac syntax in recent module patch
52258 2016-04-18 Paul Eggert <eggert@cs.ucla.edu>
52260 Merge from origin/emacs-25
52262 ac00a92 Make sh-electric-here-document-mode accessible in sh-mode-hoo...
52263 3287f48 ; Add entry to MAINTAINERS
52264 b85981f * configure.ac (HAVE_MODULES): Exclude gnu-kfreebsd from prev...
52265 0f33284 Make use of rectangle-preview custom variable.
52266 aa0d83a Make use of rectangle-preview face.
52267 33bef6e Use 'grep-find-program' in check-declare.el
52268 a8560e5 Improve "C-h S" for cl-lib symbols
52269 52e798b Fix minor issues with removing left or right fringes
52270 d6ffd64 Speed up redisplay in ansi-term mode
52271 4ab671c Simplify 8-bit character handling by terminal for 'raw-text'
52272 f3653ec * configure.ac (HAVE_MODULES): Treat gnu like gnu-linux. (Bu...
52273 ab849b7 Fix w32 memory-management problem when extending buffer text
52275 2016-04-18 Paul Eggert <eggert@cs.ucla.edu>
52277 Merge from origin/emacs-25
52279 32364bb substitute-command-keys keeps quotes’ text props
52280 567ab52 * src/xwidget.c (x_draw_xwidget_glyph_string): More clipping ...
52281 24b87a1 Add semantic-symref-filepattern-alist entry for lisp-interact...
52282 cc0b713 Perform xref searches without visiting unopened files
52283 5045575 Revert "Prevent bootstrap autoload backup files"
52285 2016-04-18 Philipp Stephani <p.stephani2@gmail.com>
52287 * lisp/emacs-lisp/easy-mmode.el (define-minor-mode): Fix docstring
52289 so that it matches the actual implementation.
52290 See https://lists.gnu.org/r/help-gnu-emacs/2016-04/msg00071.html
52292 2016-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
52294 * lisp/textmodes/ispell.el: Compile with lexical-binding
52296 (declare-function): Don't define any more.
52297 (ispell-check-minver, ispell-looking-back): Tweak definition so that
52298 the compiler can obviously know that it's always defined.
52299 (ispell-debug-buffer): Declare var.
52300 (ispell-hunspell-fill-dictionary-entry)
52301 (ispell-parse-hunspell-affix-file, ispell-hunspell-add-multi-dic)
52302 (ispell-find-hunspell-dictionaries, ispell-set-spellchecker-params)
52303 (ispell-command-loop): Avoid add-to-list on local variables.
52305 2016-04-17 Paul Eggert <eggert@cs.ucla.edu>
52307 Minor fixups for external socket launching
52309 * configure.ac (HAVE_LIBSYSTEMD): Change earliest version to 222.
52310 * doc/emacs/misc.texi (Emacs Server):
52311 * etc/NEWS: Spelling and doc fixes.
52312 * src/emacs.c (main) [HAVE_LIBSYSTEMD]:
52313 Check for sd_is_socket returning positive, not zero.
52314 * src/process.c (external_sock_fd): Instead of initializing here ...
52315 (init_process_emacs): ... initialize it here, so that it does the
52316 right thing after dump/restore.
52317 (connect_network_socket): Simplify socket_to_use test.
52319 2016-04-17 Simen Heggestøyl <simenheg@gmail.com>
52321 Add HTML5 tags to HTML mode
52323 * lisp/textmodes/sgml-mode.el (html-tag-alist): Add HTML5 tags.
52324 (html-tag-help): Add short descriptions of those tags.
52326 2016-04-17 Lars Magne Ingebrigtsen <larsi@gnus.org>
52328 Finish idna->puny changes in last Message patch
52330 * lisp/gnus/message.el (message-idna-to-ascii-rhs-1): Use puny
52331 instead of idna functions.
52333 2016-04-17 Lars Magne Ingebrigtsen <larsi@gnus.org>
52335 Use puny.el instead of idna.el functions in Gnus
52337 * lisp/gnus/gnus-art.el (gnus-use-idna): Default to t (since
52338 Emacs comes with IDNA support built in).
52339 (article-decode-idna-rhs): Use `puny-decode-domain' instead of
52342 * lisp/gnus/gnus-sum.el (gnus-summary-idna-message): Ditto.
52344 2016-04-17 Lars Magne Ingebrigtsen <larsi@gnus.org>
52346 Mention `message-use-idna' in NEWS
52348 2016-04-17 Lars Magne Ingebrigtsen <larsi@gnus.org>
52350 Default `message-use-idna' to t
52352 * lisp/gnus/message.el (message-use-idna): Default to t (since
52353 Emacs comes with puny.el now).
52355 2016-04-16 Matthew Leach <matthew@mattleach.net>
52357 Extend battery.el to exotic power supply types
52359 * lisp/battery.el (battery-linux-sysfs-regexp): Rename from
52360 'battery--linux-sysfs-regexp' and make a defcustom. All users
52361 changed. (Bug#23216)
52363 2016-04-16 Matthew Leach <matthew@mattleach.net>
52365 Add external socket launching support
52367 * src/process.c (connect_network_socket): Allow a pre-allocated socket
52368 descriptor to be used if passed to Emacs, avoiding the call to
52369 'socket' and 'bind'.
52370 (Fmake_network_process): Allow users to pass ':use-external-socket' in
52371 the parameter plist to use any sockets that have been passed to Emacs.
52372 (wait_reading_process_output): Call 'socket' and 'bind' every time.
52373 (syms_of_process): New symbol ':use-external-socket'.
52374 (set_external_socket_descriptor): New function.
52375 (external_sock_fd): New variable.
52376 * src/lisp.h: (set_external_socket_descriptor): New declaration.
52377 * src/emacs.c (main): Call 'sd_listen_fds' to read the number of sockets
52378 passed and call 'set_external_socket_descriptor' to set the external
52380 * src/Makefile.in: Add libsystemd library and C flags to the Emacs
52381 compilation options.
52383 * configure.ac: Add new default-on option "systemd" and check for
52384 libsystemd at configure time.
52386 * lisp/server.el (server-start): Set ':use-external-socket' to 't' when
52387 calling 'make-network-process'.
52389 * etc/NEWS: Document new socket-passing functionality and the configure
52390 option to disable systemd interaction.
52392 * doc/emacs/misc.texi (Emacs Server): Document systemd socket passing
52393 functionality and provide systemd unit examples.
52394 * doc/lispref/processes.texi (Network Processes): Document new
52395 'make-network-process' option ':use-external-socket'.
52397 2016-04-16 Matthew Leach <matthew@mattleach.net>
52399 Don't spell-check argument of 'cref' TeX macro
52401 * lisp/textmodes/ispell.el (ispell-tex-skip-alists): Add the cref
52402 macro to skip spell-checking the cref macro argument.
52404 2016-04-14 Paul Eggert <eggert@cs.ucla.edu>
52406 Simplify use of O_BINARY
52408 * src/callproc.c (call_process):
52409 * src/fileio.c (write_region):
52410 * src/filelock.c (read_lock_data):
52411 * src/image.c (x_find_image_fd):
52412 * src/lread.c (openp):
52413 * src/sysdep.c (init_random, emacs_fopen):
52414 * src/unexcw.c (unexec):
52415 Omit unnecessary use of O_BINARY, since emacs_open now arranges
52418 2016-04-14 Paul Eggert <eggert@cs.ucla.edu>
52420 * src/indent.c (Fvertical_motion): Pacify GCC
52422 5.3.1 20160406 (Red Hat 5.3.1-6) on x86-64.
52424 2016-04-13 Paul Eggert <eggert@cs.ucla.edu>
52426 Port ‘./autogen.sh git’ to non-clones
52428 Problem reported by Angelo Graziosi in:
52429 https://lists.gnu.org/r/emacs-devel/2016-04/msg00341.html
52430 * autogen.sh (do_git): Default to false when the arg is ‘all’ but
52431 there is no ‘.git’.
52432 (git_common_dir, hooks): New vars.
52433 (git_config, tailored_hooks, sample_hooks): Use them.
52435 2016-04-13 Paul Eggert <eggert@cs.ucla.edu>
52437 Do not require that .git be a directory
52439 Problem reportyed by Phillip Lord.
52440 * admin/update_autogen, autogen.sh, build-aux/gitlog-to-emacslog:
52441 * configure.ac, make-dist:
52442 Do not require that .git be a directory, as 'git worktree' makes
52443 it a file and not a directory.
52445 2016-04-12 Paul Eggert <eggert@cs.ucla.edu>
52447 Avoid now-obsolete function gmm-format-time-string
52449 * lisp/gnus/message.el (message-insert-formatted-citation-line):
52450 Use format-time-string instead of obsolete function
52451 gmm-format-time-string.
52453 2016-04-12 Paul Eggert <eggert@cs.ucla.edu>
52455 Support OFFSET and (OFFSET ABBR) time zone rules
52457 This simplifies Gnus and VC time zone support, by letting them
52458 feed the output of ‘current-time-zone’ and ‘decode time’ to
52459 primitives that accept time zone arguments.
52460 * doc/lispref/os.texi (Time Zone Rules, Time Conversion):
52462 * lisp/gnus/message.el (message-insert-formatted-citation-line):
52463 * lisp/org/org.el (org-timestamp-format):
52464 * src/editfns.c (Fformat_time_string, Fdecode_time):
52465 (Fcurrent_time_string, Fcurrent_time_zone, Fset_time_zone_rule):
52466 Document new behavior.
52467 * lisp/gnus/gmm-utils.el (gmm-format-time-string):
52468 * lisp/vc/add-log.el (add-log-iso8601-time-zone):
52469 Mark as obsolete, as it is now just an alias or narrow wrapper
52470 around format-time-string.
52471 * src/editfns.c (tzlookup): Also support integer OFFSET and
52472 list (OFFSET ABBR) as time zone rules.
52473 (Fencode_time): No longer need a special case for a cons ZONE.
52474 (Fcurrent_time_zone): If the time zone string is missing, compute
52475 it the same way the other new code does.
52477 2016-04-12 Paul Eggert <eggert@cs.ucla.edu>
52479 Merge from origin/emacs-25
52481 ca50981 Improve time zone documentation
52482 c23c965 Prevent bootstrap autoload backup files
52483 9344612 Disable multicolor fonts on OS X since they are not supported...
52484 c41ce1c Capitalize “Universal Time” in documentation
52485 10597c9 Don't use 'find-program'
52487 2016-04-11 Paul Eggert <eggert@cs.ucla.edu>
52489 Merge from origin/emacs-25
52491 b134c20 Sync with gnulib
52492 bb30fa9 Fix last change on 2016-01-02
52493 488a72f ; Spelling fixes
52494 9b1aab9 Port run-prolog EMACS to SWI-Prolog 7.2.3
52495 0e7bcec Avoid crashes due to unreasonably large or small text scaling
52496 85f257c Improve documentation of 'with-eval-after-load'
52497 668c7bc Improve handling of non-ASCII characters in Git log messages
52498 b570769 Remove undefined behavior in OS X dumper.
52499 97211f3 Fix clipping of xwidgets
52500 e87fbc0 Improve Lisp-level documentation of tooltips
52501 9f1786e Faces names should not end in "-face".
52502 3283271 * src/xsmfns.c (syms_of_xsmfns): Remove stray "s in doc strings.
52503 a1f221b Comint and compile no longer set EMACS
52504 5c28890 * lisp/subr.el (read-key): Don't let the prompt linger (bug#2...
52505 a75b9a6 Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emac...
52506 c93ae7a Allow to customize names of executables used by grep.el
52507 f6497c6 Set locale encoding to UTF-8 when run from OS X GUI.
52508 7ad1d07 Avoid signaling errors in 'M-n' at the 'C-x C-f' prompt
52509 a3f1ac2 Avoid infinite loop in 'studlify-word'
52510 f36df4b Don’t recommend obsolete EMACS env var
52511 fb0b531 * lisp/emacs-lisp/package.el: Change from a few days ago need...
52513 2016-04-11 Paul Eggert <eggert@cs.ucla.edu>
52515 Merge from origin/emacs-25
52517 96d9e78 Fix "Beginning of buffer" error in forward-page
52518 20686f7 Add a `transient' project type
52520 2016-04-11 Paul Eggert <eggert@cs.ucla.edu>
52522 Merge from origin/emacs-25
52524 80128a7 Fix stability confusion in sort-tests
52525 1e4aa42 Avoid describe-key error with lambdas
52526 a05fb21 * lisp/emacs-lisp/package.el (package-install-selected-packag...
52527 f501116 Sync with gnulib
52528 c4963f9 Fix doc for Universal Time
52530 2016-04-10 Etienne Prud'homme <e.e.f.prudhomme@gmail.com> (tiny change)
52532 Fix alignement rule for CSS
52534 * lisp/align.el (align-rules-list): Support CSS properties that have
52537 2016-04-10 Tassilo Horn <tsdh@gnu.org>
52539 New custom option for overriding mailcap choices
52541 * lisp/net/mailcap.el (mailcap--get-user-mime-data): New function.
52542 (mailcap--set-user-mime-data): New function.
52543 (mailcap-user-mime-data): New customization option.
52544 (mailcap-select-preferred-viewer): New function.
52545 (mailcap-mime-info): Use it.
52547 * doc/misc/emacs-mime.texi (mailcap): Document `mailcap-user-mime-data'.
52549 2016-04-10 Michael Albinus <michael.albinus@gmx.de>
52553 * src/keyboard.c (read_char): Resume idle timers in case of
52554 dbus-event, file-notify-event and config-changed-event.
52555 Reported by Johan Claesson <johanclaesson@bredband.net>. (Bug#23207)
52557 2016-04-09 Michael Albinus <michael.albinus@gmx.de>
52559 Add vc-backend and vc-responsible-backend tests
52561 * lisp/vc/vc-hooks.el (vc-file-setprop, vc-file-getprop)
52562 (vc-file-clearprops): Use properties on absolute files.
52564 * test/lisp/vc/vc-tests.el (vc-test--unregister-function):
52565 Clear file properties.
52566 (vc-test--register): Add tests for `vc-backend' and
52567 `vc-responsible-backend'. Catch other errors but `vc-not-supported'.
52568 (vc-test--state, vc-test--checkout-model): Catch other errors
52569 but `vc-not-supported'.
52570 (vc-test--working-revision): Fix test for RCS and SCCS. Catch
52571 other errors but `vc-not-supported'.
52572 (vc-test-src02-state): Mark as an expected failure.
52574 2016-04-08 Paul Eggert <eggert@cs.ucla.edu>
52576 Minor improvements for hash function primitives
52578 * src/fns.c (hashfn_eql): Define in terms of hashfn_equal and
52579 hashfn_eq rather than reaching inside them.
52580 (hashtest_eq, hashtest_eql, hashtest_equal):
52581 Now constants with initializers.
52582 (syms_of_fns): Omit no-longer-needed initialization.
52583 * src/lisp.h (LISPSYM_INITIALLY): New macro.
52584 (DEFINE_LISP_SYMBOL): Use it.
52586 2016-04-08 Paul Pogonyshev <pogonyshev@gmail.com>
52588 New primitives sxhash-eq, sxhash-eql
52590 * doc/lispref/hash.texi (Defining Hash), etc/NEWS: Document this.
52591 * lisp/emacs-lisp/byte-opt.el (side-effect-free-fns):
52592 Add sxhash-equal, sxhash-eq, sxhash-eql.
52593 * lisp/subr.el (sxhash): Now an alias for sxhash-equal.
52594 * src/fns.c (Fsxhash_eq, Fsxhash_eql): New functions.n
52596 2016-04-08 Eli Zaretskii <eliz@gnu.org>
52598 Teach Dired support parallel execution of commands on MS-Windows
52600 * lisp/dired-aux.el (dired-shell-stuff-it): Support
52601 parallel-in-background execution of commands on MS-Windows.
52602 Test 'w32-shell-dos-semantics' instead of the underlying OS
52603 when determining whether addition of 'wait' is needed.
52605 2016-04-08 Tino Calancha <f92capac@gmail.com>
52607 Make 'dired-do-shell-command' wait for all background jobs
52609 * lisp/dired-aux.el (dired-shell-stuff-it): Force POSIX shells to
52610 wait until all background jobs exit. (Bug#23206).
52612 2016-04-07 Vivek Dasmohapatra <vivek@etla.org>
52614 Prefer 'font-lock-face to 'face in erc where appropriate
52616 * lisp/erc/erc-button.el (erc-button-add-face): Prefer
52617 'font-lock-face to 'face where appropriate.
52618 * lisp/erc/erc-capab.el (erc-capab-identify-add-prefix)
52619 * lisp/erc/erc-dcc.el (erc-dcc-chat-parse-output)
52620 * lisp/erc/erc-goodies.el (erc-controls-propertize)
52621 * lisp/erc/erc-stamp.el (erc-format-timestamp)
52622 * lisp/erc/erc-track.el (erc-faces-in)
52623 * lisp/erc/erc.el (erc-load-irc-script-lines, erc-display-msg)
52624 (erc-display-command, erc-make-notice, erc-highlight-notice)
52625 (erc-format-my-nick, erc-format-@nick, erc-format-privmessage)
52626 (erc-display-prompt, erc-display-message-highlight)
52627 (erc-log-irc-protocol): Ditto.
52629 * test/lisp/erc/erc-track-tests.el: Converted asserts into ert
52632 2016-04-06 Lele Gaifax <lele@metapensiero.it>
52634 Add new keywords of Python 3.5
52636 Python 3.5, released in mid September 2015, introduced a few new
52637 keywords to better support asynchronous code, "async" and "await"
52638 in particular. See https://www.python.org/dev/peps/pep-0492/ for
52639 details. (Bug#21783)
52640 * lisp/progmodes/python.el (python-rx-constituents): Add async
52641 def/for/with as block-start and async def as defun.
52642 * lisp/progmodes/python.el (python-font-lock-keywords): Add async
52643 def/for/with as keyword.
52644 * test/automated/python-tests.el (python-indent-after-async-block-1,
52645 python-indent-after-async-block-2, python-indent-after-async-block-3,
52646 python-nav-beginning-of-defun-3): New tests to test indentation and
52647 navigation for the async keyword.
52649 2016-04-05 Etienne Prud'homme <e.e.f.prudhomme@gmail.com> (tiny change)
52651 Support completion of at-rules in SCSS mode
52653 lisp/textmodes/css-mode.el (scss-at-ids): New defconst holding
52654 SCSS-specific at-rules.
52655 (css--at-ids): New buffer-local variable holding the list of at-rules
52656 for the current mode.
52657 (css--complete-at-rule): Retrieve at-rules from `css--at-ids`.
52658 (scss-mode): Set `css--at-ids'.
52660 2016-04-05 Paul Eggert <eggert@cs.ucla.edu>
52662 Enable GCC warnings in developer builds
52664 However, do not fail; just issue the warnings. Add an option
52665 --enable-gcc-warnings=warn-only to configure, to implement this.
52666 * INSTALL, etc/NEWS: Document this.
52667 * configure.ac (gl_GCC_VERSION_IFELSE): New macro, from coreutils.
52668 (gl_gcc_warnings, WERROR_CFLAGS): Use it to add new option.
52669 Don’t treat --with-x-toolkit=no as a special case when configuring
52672 2016-04-05 Lars Magne Ingebrigtsen <larsi@gnus.org>
52674 Inhibit querying for the encoding of the headers when resending
52676 * lisp/gnus/message.el (message-resend): Inhibit querying for
52677 the encoding of the headers when resending.
52679 2016-04-04 Paul Eggert <eggert@cs.ucla.edu>
52681 Prefer AUTO_STRING_WITH_LEN to make_formatted_string
52683 * src/buffer.c (Fgenerate_new_buffer_name):
52684 * src/filelock.c (get_boot_time):
52685 * src/minibuf.c (get_minibuffer):
52686 * src/process.c (make_process):
52687 * src/xdisp.c (ensure_echo_area_buffers):
52688 Prefer AUTO_STRING_WITH_LEN + sprintf to make_formatted_string
52689 when either will do.
52691 2016-04-04 Tao Fang <fangtao0901@gmail.com>
52693 Allow URL using HTTPS proxies using CONNECT
52695 * lisp/url/url-http.el (url-http-find-free-connection): Allow
52696 using proxies (bug#11788).
52697 (url-http-end-of-document-sentinel): Ditto.
52698 (url-http): The protocol may change from http to https and
52700 (url-https-proxy-connect): Allow using CONNECT proxies for https.
52702 2016-04-04 Paul Eggert <eggert@cs.ucla.edu>
52704 New C macro AUTO_STRING_WITH_LEN
52706 Put a bit less pressure on the garbage collector by defining a
52707 macro that is like AUTO_STRING but also allows null bytes in strings,
52708 and by extending AUTO_STRING to work with any unibyte string.
52709 * src/alloc.c (verify_ascii): Remove; all uses removed.
52710 AUTO_STRING can now be used on non-ASCII unibyte strings.
52711 * src/lisp.h (AUTO_STRING): Now allows non-ASCII unibyte strings.
52712 (AUTO_STRING_WITH_LEN): New macro.
52713 * src/coding.c (from_unicode_buffer):
52714 * src/editfns.c (format_time_string):
52715 * src/emacs-module.c (module_make_string, module_format_fun_env):
52716 * src/fileio.c (Fexpand_file_name):
52717 * src/font.c (font_parse_family_registry):
52718 * src/ftfont.c (ftfont_get_charset):
52719 * src/keymap.c (silly_event_symbol_error):
52720 * src/menu.c (single_menu_item):
52721 * src/sysdep.c (system_process_attributes):
52722 Use AUTO_STRING_WITH_LEN if possible.
52723 * src/emacs-module.c (module_make_function):
52724 * src/fileio.c (report_file_errno, report_file_notify_error):
52725 * src/fns.c (Flocale_info):
52726 * src/sysdep.c (system_process_attributes):
52727 Use AUTO_STRING if possible. This is doable more often now
52728 that AUTO_STRING works on any unibyte string.
52730 2016-04-04 Paul Eggert <eggert@cs.ucla.edu>
52732 Port redirect-debugging-output to MS-Windows
52734 Suggested by Eli Zaretskii in:
52735 https://lists.gnu.org/r/emacs-devel/2016-04/msg00037.html
52736 * src/print.c [WINDOWSNT]: Include sys/socket.h.
52737 * src/w32.c (sys_dup2): Work around problem with MS-Windows _dup2.
52739 2016-04-04 Paul Eggert <eggert@cs.ucla.edu>
52741 Port redirect-debugging-output to non-GNU/Linux
52743 Problem reported by Kylie McClain for musl in:
52744 https://lists.gnu.org/r/emacs-devel/2016-03/msg01592.html
52745 * etc/DEBUG, etc/NEWS: Mention this.
52746 * src/callproc.c (child_setup) [!MSDOS]:
52747 * src/dispnew.c (init_display):
52748 * src/emacs.c (main, Fdaemon_initialized):
52749 * src/minibuf.c (read_minibuf_noninteractive):
52750 * src/regex.c (xmalloc, xrealloc):
52751 Prefer symbolic names like STDERR_FILENO to magic numbers like 2,
52752 to make file-descriptor manipulation easier to follow.
52753 * src/emacs.c (relocate_fd) [!WINDOWSNT]: Remove; no longer needed
52754 now that we make sure stdin, stdout and stderr are open. All uses
52756 (main): Make sure standard FDs are OK. Prefer symbolic names like
52757 EXIT_FAILURE to magic numbers like 1. Use bool for boolean.
52758 * src/lisp.h (init_standard_fds): New decl.
52759 * src/print.c (WITH_REDIRECT_DEBUGGING_OUTPUT) [GNU_LINUX]:
52760 Remove; no longer needed.
52761 (Fredirect_debugging_output): Define on all platforms, not just
52762 GNU/Linux. Redirect file descriptor, not stream, so that the code
52763 works even if stderr is not an lvalue. Report an error if the
52764 file arg is neither a string nor nil.
52765 (syms_of_print): Always define redirect-debugging-output.
52766 * src/sysdep.c (force_open, init_standard_fds): New functions.
52768 2016-04-03 Paul Eggert <eggert@cs.ucla.edu>
52772 2016-04-03 John Wiegley <johnw@newartisans.com>
52774 Revert "Add `r'/`l' grep command history commands"
52776 This reverts commit a32eea60ac90d367435860fe3a10bf843e6f497c.
52778 2016-04-03 John Wiegley <johnw@newartisans.com>
52780 Revert "Restore the point in grep buffers when traversing the history"
52782 This reverts commit f7c5f79ca565d3ef3feeb1e0af5ca261f1bcf58a.
52784 2016-04-03 Paul Eggert <eggert@cs.ucla.edu>
52786 Merge from origin/emacs-25
52788 787df9d ; * src/keyboard.c (read_char): Fix typos in a comment.
52790 2016-04-03 Paul Eggert <eggert@cs.ucla.edu>
52792 Merge from origin/emacs-25
52794 b787d55 More format-time-string change fixups
52795 13c8f29 make-xwidget unused arg cleanup
52796 36e05f0 Remove unused arguments from make-xwidget
52797 1042217 Document incompatible changes in 'format-time-string'
52798 7228eb8 Improve documentation of byte-code objects
52799 0020047 Adapt calls to 'format-time-string' to changes in Emacs 25
52800 17b5152 Improve vc-diff with Git backend
52801 c28f87a (js--continued-expression-p): Special-case unary plus and minus
52802 2d02a5f ; * lisp/vc/vc-annotate.el (vc-annotate): Clarify commentary.
52803 9151f16 Prevent C++ Mode wrongly fontifying some identifiers near tem...
52804 b3b523c Avoid crashes due to insanely large columns in tabulated-list...
52805 a3daa34 Teach M-x disassemble a default argument.
52806 e30c3e9 Fix EOL decoding in vc-annotate with SVN back-end on MS-Windows
52807 df441b3 Fix OS X specific settings in tramp-tests
52808 2244331 Finish fixing a cacheing bug in CC Mode (see 2016-03-09)
52811 # lisp/net/tramp-sh.el
52812 # lisp/progmodes/cc-engine.el
52814 2016-04-03 Lars Magne Ingebrigtsen <larsi@gnus.org>
52816 Restore the point in grep buffers when traversing the history
52818 * lisp/progmodes/grep.el (grep-process-setup): Allow moving
52819 point to a specific place after finishing the grep command.
52820 (grep-mode): Use it to restore point after traversing the history.
52821 (grep--history-point): New internal variable.
52822 (grep--save-history, grep-forward-history): Use it to restore
52825 2016-04-03 Lars Magne Ingebrigtsen <larsi@gnus.org>
52827 Add `r'/`l' grep command history commands
52829 * doc/emacs/building.texi (Grep Searching): Mention the
52832 * lisp/progmodes/grep.el (grep-forward-history): New command.
52833 (grep-backward-history): Ditto.
52834 (grep--save-buffers): New function.
52835 (grep): Use it to record the history.
52836 (grep--command-history, grep--history-inhibit)
52837 (grep--history-place): New internal variables for the grep
52838 history (bug#22627).
52840 2016-04-03 Michael Albinus <michael.albinus@gmx.de>
52842 Fix Bug#23186, again
52844 * lisp/net/tramp.el (tramp-encoding-shell)
52845 (tramp-encoding-command-switch)
52846 (tramp-encoding-command-interactive): Check for
52847 `w32-shell-name'. (Bug#23186)
52849 2016-04-03 Michael Albinus <michael.albinus@gmx.de>
52853 * lisp/net/tramp.el (tramp-encoding-command-switch)
52854 (tramp-encoding-command-interactive):
52855 * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
52856 `tramp-encoding-shell' could be nil. (Bug#23186)
52858 2016-04-03 Michael Albinus <michael.albinus@gmx.de>
52862 * lisp/net/tramp-cache.el (tramp-get-connection-property)
52863 (tramp-set-connection-property, tramp-connection-property-p)
52864 (tramp-flush-connection-property): Improve docstring.
52866 * lisp/net/tramp-sh.el (tramp-maybe-open-connection): Use it.
52868 * lisp/net/tramp.el (tramp-get-local-locale): New defun.
52870 * test/automated/tramp-tests.el (tramp--test-utf8):
52871 Improve settings of coding systems. (Bug#22145)
52873 2016-04-02 John Wiegley <johnw@newartisans.com>
52875 Merge from origin/emacs-25
52877 7c1802f * doc/lispref/text.texi (Columns): Remove a nonexistent refer...
52878 9034c50 * doc/man/emacsclient.1: Document +line:column option.
52879 06495c9 Fix rare problems with echo-area display and multiple frames
52880 f99b512 In M-%, avoid making buffer-local binding of text-property-de...
52882 2016-04-02 John Wiegley <johnw@newartisans.com>
52884 Merge from origin/emacs-25
52886 e65c307 * src/font.c (QCuser_spec): Add missing colon to :user-spec.
52887 c8b868b Don't start the 'midnight' timer twice
52888 278c8a7 * src/xwidget.c (Fxwidget_resize): Fix inappropriate use of X...
52889 e5c17f4 Fix todo-mode category movement
52890 bc70fda * lisp/xt-mouse.el (xterm-mouse-utf-8): Add :version.
52891 cf40f38 Ignore non-nil. non-cons values of unread-command-events
52892 8ee4c52 Improve documentatuon of 'truncate-partial-width-windows'
52893 fb9a62c * src/ftfont.c (ftfont_shape_by_flt): Parenthesize as per GNU...
52894 1e1ea22 Fix 'dired-goto-file' in Dired buffers produced by find-dired
52895 3a13472 Fix map-put and map-delete for alists (Bug#23105)
52896 422c3da Minor copyedits of documentation for temporary displays
52897 90fb9b3 Add customization option for using UTF-8 coordinates in xt-mouse
52898 f14d463 Minor doc string fixes in replace.el
52899 e70ee9d Fix scrolling upwards with 'xwidget-webkit-browse-url'
52900 44782de Fix display of Indic scripts
52901 326c64f Fix splash screen display at startup
52902 7ab2a97 ; In NEWS mention new display of minibuffer completions window
52903 a1cd84c Describe temporary displays in Emacs manual
52904 5ec1056 Avoid stray As next to IDLW icons
52905 45577d5 Avoid GTK 3 crash with icons and masks
52906 e99ff6e * lisp/minibuffer.el (minibuffer-completion-help): Use fit-wi...
52907 077b78c Define make_save_ptr_ptr unconditionally
52908 20a1003 Preserve current buffer when popping up TTY menus
52909 7eba90c Improve font selection by family on MS-Windows
52910 73d213f Comint, term, and compile now set EMACS
52911 9524ec5 Ignore more merges when generating ChangeLog
52912 ad250f2 Sync with gnulib
52913 c0165ea Resurrect GNUS-NEWS autogeneration
52914 1e5327c ; Backport ChangeLog.2 fixes from master
52915 e643977 Make `toggle-frame-maximized' respect the dock on OS X (bug#2...
52916 38a43f1 Fix bug in displaying header line with a box face
52917 91e6676 Fix an Isearch var to be a string (Bug#23038)
52918 76ef522 Fix (args-out-of-range 1) error in cursor-sensor--detect
52919 8a35f83 Render empty <ul><li><ul> correctly
52920 d8b2ce5 Ignore invalid base64 encoded embedded images
52921 52ba24b Fix <p> and <div> newlines with or without <li> in shr
52922 b8ea08b Avoid errors in 'newline'
52923 fc3cd53 Fix Bug#23032
52924 dd2737b Adjudicate review comments in abbrevs.texi
52925 26f9c50 Fixup the "normal" matcher; highlight global var symbols, too
52926 413e73b ; Small theme additions
52927 cd950da Honor prefix arg in doc-view-next-line-or-next-page
52928 ed909c0 ; Spelling fixes
52929 6da3a6d Port to strict C99 offsetof
52930 de7601f Port to GTK with strict C11 compiler
52931 658aa2d Port to GTK with strict C99 compiler
52932 1df7173 Avoid screen artifacts with new OS X visible bell after scrol...
52933 7a2edd3 Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into...
52934 dca240a Suppress some Tramp tests for OSX, do not merge with master
52935 9094304 * lisp/progmodes/xref.el (xref-buffer-name, xref--window): Mo...
52936 cbedfc2 * lisp/gnus/mm-decode.el (gnus-format-message): Autoload it.
52937 005ac7c * lisp/mail/rmail.el (rmail-mime-entity-truncated): Declare.
52938 9ab03f2 ; Auto-commit of loaddefs files.
52939 56df617 Address compilation warnings due to 2016-01-03 mml refactoring.
52940 a1ef911 * lisp/emacs-lisp/smie.el (smie-indent-keyword): Don't burp i...
52941 79ae7fb * lisp/dired-x.el (dired-omit-here-always): Correct error mes...
52942 253929f * lisp/dired-x.el (dired-omit-here-always): Replace undefined...
52943 ce53389 * lisp/xml.el (xml-parse-tag-1): Replace undefined function.
52944 d6d164f Avoid segfaults due to frame image cache being absent
52945 bc7f6f6 Improve documentation of glyphless-character display
52946 6b6916e ; * src/xdisp.c (with_echo_area_buffer): Fix typos in comments.
52947 ee9a1f7 Support safe navigation operator in non-SMIE indentation code
52948 c3ed95b Move xsd:base64Binary decoding fix to debbugs.el 0.9.1
52949 2036be4 Fix Ruby's operator precedence
52950 1d686c2 (ruby-interpolation-inside-another-interpolation): New failin...
52951 7950e1d Port to clang 3.7.0 on x86-64
52952 218ae59 * test/automated/package-test.el (package-test-signed): Tweak...
52953 ba33b7c Sync with gnulib
52954 38b276d Fix startup of "emacs -nw" on systems that CANNOT_DUMP
52955 dbfbedd Do not tokenize a comment before continuation as ';'
52956 0403620 Don't misindent arguments of a method call inside continuation
52957 e6776f8 * src/keyboard.c (echo_keystrokes_p): Don't test cursor_in_ec...
52958 8475f3d ASCII-only etc/NEWS etc.
52959 5cc6919 Fix a cacheing bug, which led to inordinately slow c-beginnin...
52960 0ce37ea Fix Isearch prompt when invoked with an argument
52961 f3033d4 Fix a typo in the Emacs manual
52962 4235d2d Curved quotes in etc/NEWS etc.
52963 26b56dc Fix some single quotes in documentation
52964 80ec484 Make lisp-completion-at-point's argument optional
52965 9d463ae Tweak the left precedence of '=>'
52966 5b705bc Indent '.' relative to the first sibling expression
52967 04f5525 Make '.' associative, for easier sexp navigation
52968 ba24c99 Revert "Simplify "Visit New File" to "New File""
52970 2016-04-02 Stefan Monnier <monnier@iro.umontreal.ca>
52972 * lisp/erc/erc-backend.el: Use lexical-binding. Silence byte-compiler
52974 Use #' to quote functions.
52975 (erc-server-delayed-reconnect): Remove unused arg `event'.
52976 (erc-process-sentinel-2): Adjust accordingly.
52977 Don't pass `err' to condition-case if we don't use it.
52978 (define-erc-response-handler): Use add-hook rather than add-to-list.
52979 (NICK): Use cl-pushnew rather than add-to-list.
52980 (331): Remove unused var `topic'.
52981 (352): Remove unused var `hopcount'.
52983 2016-04-02 Paul Pogonyshev <pogonyshev@gmail.com>
52985 Support macros in 'func-arity'
52987 * src/eval.c (Ffunc_arity): Support Lisp macros as well.
52989 2016-04-02 Andy Moreton <andrewjmoreton@gmail.com>
52991 Fix compilation of Cygwin w32 port
52993 * src/w32xfns.c (init_crit, delete_crit) [HAVE_W32NOTIFY]: Only
52994 initialize and free the notification set if compiling with
52997 2016-04-01 Paul Eggert <eggert@penguin.cs.ucla.edu>
52999 Fix resize incompatibility with GTK+ master
53001 Problem reported by Matthias Clasen (Bug#23144).
53002 * src/xterm.c (handle_one_xevent) [USE_GTK]:
53003 Do not call xg_frame_resized.
53005 2016-04-01 Paul Eggert <eggert@cs.ucla.edu>
53007 Fix check for subscript errors in module calls
53009 * src/emacs-module.c (check_vec_index): New function.
53010 (module_vec_set, module_vec_get): Use it instead of a
53011 not-strict-enough check.
53013 2016-03-31 Simen Heggestøyl <simenheg@gmail.com>
53015 Support completion of bang-rules in CSS mode
53017 lisp/textmodes/css-mode.el (css--bang-ids): New buffer-local variable
53018 holding the list of bang-rules for the current mode.
53019 (css--font-lock-keywords): Retrieve bang-rules from `css--bang-ids'
53020 instead of computing them.
53021 (css--complete-bang-rule): New function for completing a bang-rule.
53022 (css-completion-at-point): Add support for completing bang-rules.
53023 (scss-font-lock-keywords): Change from a variable to a function in
53024 order to recompute `css--font-lock-keywords' when `css--bang-ids' has
53026 (scss-mode): Set `css--bang-ids' and recompute font-lock keywords.
53028 2016-03-30 Simen Heggestøyl <simenheg@gmail.com>
53030 Add HTML4 tags to HTML mode
53032 * lisp/textmodes/sgml-mode.el (html-tag-alist): Add HTML4 tags.
53033 (html-tag-help): Add short descriptions of those tags.
53035 2016-03-29 Paul Eggert <eggert@cs.ucla.edu>
53037 Pacify --enable-gcc-warnings for buffer-hash etc.
53039 * src/fns.c (make_digest_string): Now static.
53040 (secure_hash): Omit unused local.
53042 2016-03-29 Oleh Krehel <ohwoeowho@gmail.com>
53044 Add support for 7z archives
53046 * lisp/dired-aux.el (dired-compress-file-suffixes): "Z" should now
53047 also work with 7z archives.
53049 The shell command should produce a single extracted directory named
53050 after the archive's name.
53052 In case the extracted directory exists, all files will be overwritten
53053 without a prompt. This matches the expected behavior with the "tar.gz"
53056 2016-03-29 Nicolas Petton <nicolas@petton.fr>
53058 * lisp/emacs-lisp/seq.el: Require cl-lib instead of cl-extra
53060 2016-03-29 Michael Albinus <michael.albinus@gmx.de>
53062 Fix typo in network-stream-tests.el
53064 * test/lisp/net/network-stream-tests.el
53065 (connect-to-tls-ipv6-nowait): Fix typo.
53067 2016-03-29 Nicolas Petton <nicolas@petton.fr>
53069 New function seq-sort-by in seq.el
53071 * lisp/emacs-lisp/seq.el (seq-sort-by): New function.
53072 * test/lisp/emacs-lisp/seq-tests.el: New test for seq-sort-by.
53073 * doc/lispref/sequences.texi: Add documentation for seq-sort-by.
53075 2016-03-28 Lars Magne Ingebrigtsen <larsi@gnus.org>
53077 Mention the `M-q' changes
53079 2016-03-28 Lars Magne Ingebrigtsen <larsi@gnus.org>
53081 Have `M-q' not mark buffers are changed when they haven't
53083 * lisp/textmodes/fill.el (fill-paragraph): Use `buffer-hash'
53084 to avoid marking buffers as changed when they haven't.
53086 2016-03-28 Lars Magne Ingebrigtsen <larsi@gnus.org>
53088 Add a new function `buffer-hash'
53090 * doc/lispref/text.texi (Checksum/Hash): Document `buffer-hash'.
53092 * src/fns.c (Fbuffer_hash): New function.
53093 (make_digest_string): Refactored out into its own function.
53094 (secure_hash): Use it.
53096 * test/src/fns-tests.el (fns-tests-hash-buffer): New tests.
53098 2016-03-27 Paul Eggert <eggert@cs.ucla.edu>
53100 Rename C names to match Lisp symbols better
53102 This was inspired by commit e65c3079c65595d95749348366af9811fafff062,
53103 which fixed a bug where the C name for a symbol disagreed with the
53104 symbol name itself. Fix other instances of disagreements that I found.
53105 Although this doesn’t fix a bug, it should make code easier to follow.
53106 The remaining disagreements are idiosyncratic: Qminus, Qplus,
53107 Qsans__serif, Qbackquote, Qcomma, Qcomma_at, Qcomma_dot.
53109 * src/alloc.c (QAutomatic_GC): Rename from Qautomatic_gc.
53110 * src/dbusbind.c (QCsystem): Rename from QCdbus_system_bus.
53111 (QCsession): Rename from QCdbus_session_bus.
53112 (QCtimeout): Rename from QCdbus_timeout.
53113 (QCbyte): Rename from QCdbus_type_byte.
53114 (QCboolean): Rename from QCdbus_type_boolean.
53115 (QCint16): Rename from QCdbus_type_int16.
53116 (QCuint16): Rename from QCdbus_type_uint16.
53117 (QCint32): Rename from QCdbus_type_int32.
53118 (QCuint32): Rename from QCdbus_type_uint32.
53119 (QCint64): Rename from QCdbus_type_int64.
53120 (QCuint64): Rename from QCdbus_type_uint64.
53121 (QCdouble): Rename from QCdbus_type_double.
53122 (QCstring): Rename from QCdbus_type_string.
53123 (QCobject_path): Rename from QCdbus_type_object_path.
53124 (QCsignature): Rename from QCdbus_type_signature.
53125 (QCunix_fd): Rename from QCdbus_type_unix_fd.
53126 (QCarray): Rename from QCdbus_type_array.
53127 (QCvariant): Rename from QCdbus_type_variant.
53128 (QCstruct): Rename from QCdbus_type_struct.
53129 (QCdict_entry): Rename from QCdbus_type_dict_entry.
53130 (QCserial): Rename from QCdbus_registered_serial.
53131 (QCmethod): Rename from QCdbus_registered_method.
53132 (QCsignal): Rename from QCdbus_registered_signal.
53133 * src/emacs-module.c (Qinternal__module_call):
53134 Rename from Qinternal_module_call.
53135 * src/frame.c (Qwindow__pixel_to_total):
53136 Rename from Qwindow_pixel_to_total.
53137 * src/gnutls.c (QChostname): Rename from QCgnutls_bootprop_hostname.
53138 (QCpriority): Rename from QCgnutls_bootprop_priority.
53139 (QCtrustfiles): Rename from QCgnutls_bootprop_trustfiles.
53140 (QCkeylist): Rename from QCgnutls_bootprop_keylist.
53141 (QCcrlfiles): Rename from QCgnutls_bootprop_crlfiles.
53142 (QCmin_prime_bits): Rename from QCgnutls_bootprop_min_prime_bits.
53143 (QCloglevel): Rename from QCgnutls_bootprop_loglevel.
53144 (QCcomplete_negotiation): Rename from QCgnutls_complete_negotiation.
53145 (QCverify_flags): Rename from QCgnutls_bootprop_verify_flags.
53146 (QCverify_error): Rename from QCgnutls_bootprop_verify_error.
53147 * src/w32fns.c (Qfont_parameter): Rename from Qfont_param.
53148 (Qgnutls): Rename from Qgnutls_dll.
53149 (Qlibxml2): Rename from Qlibxml2_dll.
53150 (Qzlib): Rename from Qzlib_dll.
53151 * src/w32select.c (Qutf_16le_dos): Rename from QUNICODE.
53152 * src/window.c (Qwindow__resize_root_window):
53153 Rename from Qwindow_resize_root_window.
53154 (Qwindow__resize_root_window_vertically):
53155 Rename from Qwindow_resize_root_window_vertically.
53156 (Qwindow__sanitize_window_sizes):
53157 Rename from Qwindow_sanitize_window_sizes.
53158 (Qwindow__pixel_to_total): Rename from Qwindow_pixel_to_total.
53159 * src/xdisp.c (Qredisplay_internal_xC_functionx):
53160 Rename from Qredisplay_internal.
53161 * src/xfns.c (Qfont_parameter): Rename from Qfont_param.
53162 * src/xselect.c (Q_EMACS_TMP_): Rename from QEMACS_TMP.
53164 2016-03-26 Paul Eggert <eggert@cs.ucla.edu>
53166 func-arity minor improvements
53168 * src/bytecode.c (get_byte_code_arity): Omit unnecessary
53169 runtime test for integer argument, unless debugging.
53170 Use EMACS_INT for Emacs integers.
53171 * src/eval.c (Ffunc_arity): Omit unused locals.
53172 Avoid side effects in ‘if’ expr.
53173 (lambda_arity): Use bool for boolean, and EMACS_INT for Emacs ints.
53175 2016-03-26 John Wiegley <johnw@newartisans.com>
53177 Restore the fix to bug#18527 from commit d6868025
53179 2016-03-26 Martin Rudalics <rudalics@gmx.at>
53181 Safely run window size change functions
53183 * src/window.c (run_window_size_change_functions): Use
53184 safe_call1 when running a size change function.
53185 (grow_mini_window, shrink_mini_window): Report error when
53186 minibuffer window cannot be resized.
53188 2016-03-26 Paul Pogonyshev <pogonyshev@gmail.com>
53190 Implement 'func-arity'
53192 * src/eval.c (Ffunc_arity, lambda_arity): New functions.
53193 * src/bytecode.c (get_byte_code_arity): New function.
53194 * src/lisp.h (get_byte_code_arity): Add prototype.
53196 * doc/lispref/functions.texi (What Is a Function): Document
53199 * etc/NEWS: Mention 'func-arity'.
53201 * test/src/fns-tests.el (fns-tests-func-arity): New test set.
53203 2016-03-25 Alan Mackenzie <acm@muc.de>
53205 Fix absence of c-noise-macro-name-re, etc., in languages which don't use it
53207 * lisp/progmodes/cc-engine.el (c-forward-keyword-prefixed-id, c-forward-type)
53208 (c-forward-declarator, c-forward-decl-or-cast-1, c-backward-over-enum-header)
53209 (c-guess-basic-syntax): Check c-opt-cpp-prefix before `looking-at'
53210 c-noise-macro-with-parens-name-re.
53212 * lisp/progmodes/cc-fonts.el (c-complex-decl-matchers): The same as for
53215 * lisp/progmodes/cc-mode.el (c-basic-common-init): Add call to
53216 `c-make-noise-macro-regexps'.
53217 (c-mode, c++-mode, objc-mode): Remove calls to `c-make-noise-macro-regexps'.
53219 * lisp/progmodes/cc-vars.el (c-noise-macro-with-parens-name-re)
53220 (c-noise-macro-with-re): Initialize to "\\<\\>" rather than nil.
53222 2016-03-25 Lars Magne Ingebrigtsen <larsi@gnus.org>
53224 (shr-insert): Respect non-breaking space in non-<pre> text
53226 * lisp/net/shr.el (shr-insert): Respect non-breaking space in
53229 2016-03-25 Lars Magne Ingebrigtsen <larsi@gnus.org>
53231 parse-times-string doc string clarification
53233 * lisp/calendar/parse-time.el (parse-time-string): Note that
53234 we accept RFC2822 strings.
53236 2016-03-25 Marcin Borkowski <mbork@mbork.pl>
53240 * lisp/calendar/parse-time.el (parse-time-tokenize): Clarify
53241 doc string and clean up code.
53243 2016-03-25 Michael Albinus <michael.albinus@gmx.de>
53245 Cleanup file notification code in Tramp
53247 * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
53248 Make `events' a list of symbols for "inotifywait".
53249 (tramp-sh-gvfs-monitor-dir-process-filter): Make event a list.
53250 Call `file-notify-handle-event' for better traces.
53251 (tramp-sh-inotifywait-process-filter): Check for expected events.
53252 Call `file-notify-handle-event' for better traces.
53254 2016-03-24 Michael Albinus <michael.albinus@gmx.de>
53256 Adapt filenotify-tests.el according latest tests
53258 * test/lisp/filenotify-tests.el (file-notify-test02-events)
53259 (file-notify-test04-file-validity, file-notify-test05-dir-validity):
53260 Remove superfluous `read-event' calls.
53261 (file-notify-test02-events): Expect different events under MS
53263 (file-notify-test04-file-validity): Move `file-notify-valid-p'
53266 2016-03-23 Paul Eggert <eggert@cs.ucla.edu>
53268 Merge from origin/emacs-25
53270 ad250f2 Sync with gnulib
53271 c0165ea Resurrect GNUS-NEWS autogeneration
53277 2016-03-23 Paul Eggert <eggert@cs.ucla.edu>
53279 Merge from origin/emacs-25
53281 e643977 Make `toggle-frame-maximized' respect the dock on OS X (bug#2...
53282 38a43f1 Fix bug in displaying header line with a box face
53284 2016-03-23 Paul Eggert <eggert@cs.ucla.edu>
53286 * etc/NEWS: Use straight quotes.
53288 2016-03-23 Simen Heggestøyl <simenheg@gmail.com>
53290 Support completion of attribute values in CSS mode
53292 * lisp/textmodes/css-mode.el (css-property-alist): New defconst
53293 holding CSS identifiers and the values they can have.
53294 (css-property-ids): Compute dynamically from `css-property-alist'.
53295 (css-value-class-alist): New defconst holding property value classes
53297 (css--property-value-cache): New variable providing a cache for
53298 `css--property-values'.
53299 (css--value-class-lookup): New function for computing a list of values
53301 (css--property-values): New function for computing a list of possible
53302 values for a CSS property.
53303 (css--complete-property-value): New function for completing a property
53305 (css-completion-at-point): Add support for completing property values.
53306 * test/lisp/textmodes/css-mode-tests.el: New file.
53308 2016-03-22 Wilson Snyder <wsnyder@wsnyder.org>
53310 Sync with verilog-mode development tree.
53312 * lisp/progmodes/verilog-mode.el (verilog-imenu-generic-expression,
53313 verilog-speedbar-initialize): Automatically add verilog-mode
53314 extensions when in speedbar mode, bug1045, bug1046. Reported by
53316 (verilog-mode-map): Move `verilog-star-comment' from M-* to C-c/ to
53317 avoid conflict with `pop-tag-mark'. Reported by Ian Perryman.
53318 (verilog-read-always-signals-recurse): Fix :: notation for
53319 auto-reset signals. Reported by Andrew Jones.
53320 (verilog-font-lock-grouping-keywords-face): Fix highlighting of
53321 grouping keywords, bug1002. Reported by Paul Sargent.
53322 (verilog-save-font-no-change-functions): Commentary and fix
53323 pre-Emacs 21 behavior.
53325 2016-03-22 Paul Eggert <eggert@cs.ucla.edu>
53327 Compute a better commit message for merges
53329 Problem reported by David Engster in:
53330 https://lists.gnu.org/r/emacs-devel/2016-03/msg01270.html
53331 * admin/gitmerge.el (gitmerge-commit-message):
53332 Truncate the computed commit message to at most 72 characters per line.
53333 (gitmerge-maybe-resume): Don’t use "-" as the commit message for
53334 merges; use the computed commit message instead.
53336 2016-03-22 Paul Eggert <eggert@cs.ucla.edu>
53338 * admin/gitmerge.el (gitmerge-skip-regexp): Add "no need to merge".
53340 2016-03-22 Paul Eggert <eggert@cs.ucla.edu>
53342 Change do-not-merge pattern to "do not merge"
53344 This should avoid the problem we recently had with
53345 automatically-generated merge messages, while still letting people
53346 specify commits not to merge.
53347 * admin/gitmerge.el (gitmerge-skip-regexp): Add "do not merge".
53348 (gitmerge-highlight-skip-regexp): Fold case when searching
53349 for gitmerge-skip-regexp.
53351 2016-03-22 Paul Eggert <eggert@cs.ucla.edu>
53353 Merge from origin/emacs-25
53355 91e6676 Fix an Isearch var to be a string (Bug#23038)
53356 76ef522 Fix (args-out-of-range 1) error in cursor-sensor--detect
53358 2016-03-22 Paul Eggert <eggert@cs.ucla.edu>
53364 2016-03-22 Paul Eggert <eggert@cs.ucla.edu>
53366 Keep "merge" commits by default in gitmerge
53368 * admin/gitmerge.el (gitmerge-skip-regexp): Omit "merge", as it
53369 causes false positives. See:
53370 https://lists.gnu.org/r/emacs-devel/2016-03/msg01234.html
53372 2016-03-22 Paul Eggert <eggert@cs.ucla.edu>
53374 Assume NON_BLOCKING_CONNECT (Bug#22946)
53376 * lisp/proced.el (proced-signal-list): Omit comment about
53377 obsolete systems that do not support POSIX 1003.1-2001 signals.
53378 * src/process.c (NON_BLOCKING_CONNECT): Remove, since we can now
53379 assume POSIX 1003.1-2001 or better here. Assume it’s defined.
53380 (connect_network_socket): Assume EINPROGRESS is defined,
53381 as that’s portable too now.
53382 (Fmake_network_process): Use bool for boolean.
53384 2016-03-21 Eli Zaretskii <eliz@gnu.org>
53386 Fix problems caused by new implementation of sub-word mode
53388 * lisp/subr.el (forward-word-strictly, backward-word-strictly):
53390 (word-move-empty-char-table): New variable.
53392 * etc/NEWS: Mention 'forward-word-strictly' and
53393 'backward-word-strictly'.
53395 * doc/lispref/positions.texi (Word Motion): Document
53396 'find-word-boundary-function-table', 'forward-word-strictly', and
53397 'backward-word-strictly'. (Bug#22560)
53399 * src/syntax.c (syms_of_syntax)
53400 <find-word-boundary-function-table>: Doc fix.
53402 * lisp/wdired.el (wdired-xcase-word):
53403 * lisp/textmodes/texnfo-upd.el (texinfo-copy-node-name)
53404 (texinfo-copy-section-title, texinfo-start-menu-description)
53405 (texinfo-copy-menu-title, texinfo-specific-section-type)
53406 (texinfo-insert-node-lines, texinfo-copy-next-section-title):
53407 * lisp/textmodes/texinfo.el (texinfo-clone-environment)
53408 (texinfo-insert-@end):
53409 * lisp/textmodes/texinfmt.el (texinfo-format-scan)
53410 (texinfo-anchor, texinfo-multitable-widths)
53411 (texinfo-multitable-item):
53412 * lisp/textmodes/tex-mode.el (latex-env-before-change):
53413 * lisp/textmodes/flyspell.el (texinfo-mode-flyspell-verify):
53414 * lisp/skeleton.el (skeleton-insert):
53415 * lisp/simple.el (count-words):
53416 * lisp/progmodes/vhdl-mode.el (vhdl-beginning-of-libunit)
53417 (vhdl-beginning-of-defun, vhdl-beginning-of-statement-1)
53418 (vhdl-update-sensitivity-list, vhdl-template-block)
53419 (vhdl-template-break, vhdl-template-case, vhdl-template-default)
53420 (vhdl-template-default-indent, vhdl-template-for-loop)
53421 (vhdl-template-if-then-use, vhdl-template-bare-loop)
53422 (vhdl-template-nature, vhdl-template-procedural)
53423 (vhdl-template-process, vhdl-template-selected-signal-asst)
53424 (vhdl-template-type, vhdl-template-variable)
53425 (vhdl-template-while-loop, vhdl-beginning-of-block)
53426 (vhdl-hooked-abbrev, vhdl-port-copy, vhdl-hs-forward-sexp-func):
53427 * lisp/progmodes/verilog-mode.el (verilog-backward-sexp)
53428 (verilog-forward-sexp, verilog-beg-of-statement)
53429 (verilog-set-auto-endcomments, verilog-backward-token)
53430 (verilog-do-indent):
53431 * lisp/progmodes/vera-mode.el (vera-guess-basic-syntax)
53432 (vera-indent-block-closing):
53433 * lisp/progmodes/simula.el (simula-context)
53434 (simula-backward-up-level, simula-forward-down-level)
53435 (simula-previous-statement, simula-next-statement)
53436 (simula-skip-comment-backward, simula-calculate-indent)
53437 (simula-find-if, simula-electric-keyword):
53438 * lisp/progmodes/sh-script.el (sh-smie--rc-newline-semi-p):
53439 * lisp/progmodes/ruby-mode.el (ruby-smie--redundant-do-p)
53440 (ruby-smie--forward-token, ruby-smie--backward-token)
53441 (ruby-singleton-class-p, ruby-calculate-indent)
53442 (ruby-forward-sexp, ruby-backward-sexp):
53443 * lisp/progmodes/ps-mode.el (ps-run-goto-error):
53444 * lisp/progmodes/perl-mode.el (perl-syntax-propertize-function)
53445 (perl-syntax-propertize-special-constructs)
53446 (perl-backward-to-start-of-continued-exp):
53447 * lisp/progmodes/pascal.el (pascal-indent-declaration):
53448 * lisp/progmodes/octave.el (octave-function-file-p):
53449 * lisp/progmodes/mantemp.el (mantemp-insert-cxx-syntax):
53450 * lisp/progmodes/js.el (js--forward-function-decl):
53451 * lisp/progmodes/idlwave.el (idlwave-show-begin-check)
53452 (idlwave-beginning-of-block, idlwave-end-of-block)
53453 (idlwave-block-jump-out, idlwave-determine-class):
53454 * lisp/progmodes/icon.el (icon-is-continuation-line)
53455 (icon-backward-to-start-of-continued-exp, end-of-icon-defun):
53456 * lisp/progmodes/hideif.el (hide-ifdef-define):
53457 * lisp/progmodes/f90.el (f90-change-keywords):
53458 * lisp/progmodes/cperl-mode.el (cperl-electric-pod)
53459 (cperl-linefeed, cperl-electric-terminator)
53460 (cperl-find-pods-heres, cperl-fix-line-spacing)
53461 (cperl-invert-if-unless):
53462 * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur):
53463 * lisp/progmodes/cc-align.el (c-lineup-java-inher):
53464 * lisp/progmodes/ada-mode.el (ada-compile-goto-error)
53465 (ada-adjust-case-skeleton, ada-create-case-exception)
53466 (ada-create-case-exception-substring)
53467 (ada-case-read-exceptions-from-file, ada-after-keyword-p)
53468 (ada-scan-paramlist, ada-get-current-indent, ada-get-indent-end)
53469 (ada-get-indent-if, ada-get-indent-block-start)
53470 (ada-get-indent-loop, ada-get-indent-type)
53471 (ada-search-prev-end-stmt, ada-check-defun-name)
53472 (ada-goto-decl-start, ada-goto-matching-start)
53473 (ada-goto-matching-end, ada-looking-at-semi-or)
53474 (ada-looking-at-semi-private, ada-in-paramlist-p)
53475 (ada-search-ignore-complex-boolean, ada-move-to-start)
53476 (ada-move-to-end, ada-which-function, ada-gen-treat-proc):
53477 * lisp/net/quickurl.el (quickurl-grab-url):
53478 * lisp/mail/sendmail.el (mail-do-fcc):
53479 * lisp/mail/rmail.el (rmail-resend):
53480 * lisp/mail/mailabbrev.el (mail-abbrev-complete-alias):
53481 * lisp/mail/mail-extr.el (mail-extract-address-components):
53482 * lisp/json.el (json-read-keyword):
53483 * lisp/files.el (insert-directory):
53484 * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
53485 * lisp/completion.el (symbol-under-point, symbol-before-point)
53486 (symbol-before-point-for-complete, next-cdabbrev)
53487 (add-completions-from-c-buffer):
53488 * lisp/cedet/semantic/texi.el (semantic-up-context)
53489 (semantic-beginning-of-context):
53490 * lisp/cedet/semantic/bovine/el.el (semantic-get-local-variables):
53491 use 'forward-word-strictly' and 'backward-word-strictly' instead
53492 of 'forward-word' and 'backward-word'.
53494 [This reapplies commit c1d32a65372c72d7de4808d620eefd3214a8e92a,
53495 which was inadvertently lost by merge commit
53496 c71e7cc113ed0d5f01aaa2e441a3e3c9fbeb9fa5.]
53498 2016-03-21 Paul Eggert <eggert@cs.ucla.edu>
53500 * etc/TODO: Minor quoting and grammar fixes.
53502 [This reapplies commit 433407d8230a8a256b26c6c7615d3921b43f59ce,
53503 which was inadvertently lost by merge commit
53504 5ab243f40e4db91586ff74b01a775a5218a1d5be.]
53506 2016-03-21 Alan Mackenzie <acm@muc.de>
53508 Don't confuse "::" with ":" when trying to parse member initializers.
53510 * lisp/progmodes/cc-engine.el (c-back-over-member-initializers): Check
53511 more robustly for ":" token when searching backwards for it.
53513 * lisp/progmodes/cc-langs.el (c-:$-multichar-token-regexp): New
53516 [This reapplies commit 9e5452f7166e3634f2d8e943815ed722e1672714,
53517 which was inadvertently lost by merge commit
53518 7823745acbe9b87eea2db4ef434e379fc903ec35.]
53520 2016-03-21 Eli Zaretskii <eliz@gnu.org>
53522 Ensure positive number of glyphs for margins of positive width
53524 * src/dispnew.c (margin_glyphs_to_reserve): Always return a
53525 positive value when a non-zero width of the marginal area was
53526 requested. (Bug#22356)
53528 [This reapplies commit 740849fe986b62a839bce4bbf67d0036fc1be0b9,
53529 which was inadvertently lost by merge commit
53530 7823745acbe9b87eea2db4ef434e379fc903ec35.]
53532 2016-03-21 Alan Mackenzie <acm@muc.de>
53534 In comment-dwim with style `extra-line', respect indent-tabs-mode.
53536 This fixes bug #22369.
53538 * lisp/newcomment.el (comment-make-bol-ws): New function.
53539 (comment-make-extra-lines): Use new function instead of a crude `make-string'.
53541 [This reapplies commit 016b3d5894b8c424eab262aeefc646c6cd03a70a,
53542 which was inadvertently lost by merge commit
53543 7823745acbe9b87eea2db4ef434e379fc903ec35.]
53545 2016-03-21 Eli Zaretskii <eliz@gnu.org>
53547 Merge doc fixes for 'random' lost in previous merge
53549 [This reapplies part of commit
53550 3ffe81e245d854a694ae1734f1b6a995bdc5e724,
53551 which was inadvertently lost by merge commit
53552 7823745acbe9b87eea2db4ef434e379fc903ec35.]
53555 2016-03-21 Eli Zaretskii <eliz@gnu.org>
53557 Unhide the --no-line-directive option to 'etags'
53559 * lib-src/etags.c (print_help): Un-undocument the --no-line-directive
53560 option. (Bug#22306)
53562 * doc/man/etags.1: Document the --no-line-directive option.
53564 [This reapplies commit fee0526a189f43e8470d78e8374bd425890fbe6f,
53565 which was inadvertently lost by merge commit
53566 7823745acbe9b87eea2db4ef434e379fc903ec35.]
53568 2016-03-21 Alan J Third <alan@idiocy.org> (tiny change)
53570 Fix picture-mode wrt double-width characters
53572 * lisp/textmodes/picture.el (picture-insert): Check the width of
53573 the character being replaced, not just that of the replacement.
53576 [This reapplies commit b70dba4e18514411ed38b5bbb846558158842ace,
53577 which was inadvertently lost by merge commit
53578 7823745acbe9b87eea2db4ef434e379fc903ec35.]
53580 2016-03-20 Martin Rudalics <rudalics@gmx.at>
53582 Resurrect earlier fix of resize_frame_windows
53584 * src/window.c (resize_frame_windows): Resurrect earlier fix for
53585 calculating the number of columns of the minibuffer window which
53586 was lost in subsequent merges.
53588 2016-03-20 Lars Magne Ingebrigtsen <larsi@gnus.org>
53590 Move the cert files to the data directory
53592 2016-03-20 Lars Magne Ingebrigtsen <larsi@gnus.org>
53594 Further empty <li> tweaks
53596 * lisp/net/shr.el (shr-tag-li): When showing several empty
53597 <li> elements, ensure that they really get inserted on a new line.
53599 2016-03-20 Lars Magne Ingebrigtsen <larsi@gnus.org>
53601 Don't remove too much white space at the end of documents
53603 * lisp/net/shr.el (shr--remove-blank-lines-at-the-end): Don't
53604 remove too much white space -- leave it on the last line (in
53605 case there's a background color).
53607 2016-03-20 Alan Mackenzie <acm@muc.de>
53609 Amend parse-partial-sexp correctly to handle two character comment delimiters
53611 Do this by adding a new field to the parser state: the syntax of the last
53612 character scanned, should that be the first char of a (potential) two char
53613 construct, nil otherwise.
53614 This should make the parser state complete.
53615 Also document element 9 of the parser state. Also refactor the code a bit.
53617 * src/syntax.c (struct lisp_parse_state): Add a new field.
53618 (SYNTAX_FLAGS_COMSTARTEND_FIRST): New function.
53619 (internalize_parse_state): New function, extracted from scan_sexps_forward.
53620 (back_comment): Call internalize_parse_state.
53621 (forw_comment): Return the syntax of the last character scanned to the caller
53622 when that character might be the first of a two character construct.
53623 (Fforward_comment, scan_lists): New dummy variables, passed to forw_comment.
53624 (scan_sexps_forward): Remove a redundant state parameter. Access all `state'
53625 information via the address parameter `state'. Remove the code which converts
53626 from external to internal form of `state'. Access buffer contents only from
53627 `from' onwards. Reformulate code at the top of the main loop correctly to
53628 recognize comment openers when starting in the middle of one. Call
53629 forw_comment with extra argument (for return of syntax value of possible first
53630 char of a two char construct).
53631 (Fparse_partial_sexp): Document elements 9, 10 of the parser state in the
53632 doc string. Clarify the doc string in general. Call
53633 internalize_parse_state. Take account of the new elements when consing up the
53634 output parser state.
53636 * doc/lispref/syntax.texi: (Parser State): Document element 9 and the new
53637 element 10. Minor wording corrections (remove reference to "trivial
53639 (Low Level Parsing): Minor corrections.
53641 * etc/NEWS: Note new element 10, and documentation of element 9 of parser
53644 2016-03-20 Lars Magne Ingebrigtsen <larsi@gnus.org>
53646 Allow the shr test files to have trailing blank space.
53648 * .gitattributes: Allow the shr test files to have trailing
53651 2016-03-20 Lars Magne Ingebrigtsen <larsi@gnus.org>
53653 Add tests for empty <ul><li>
53655 2016-03-20 Paul Eggert <eggert@cs.ucla.edu>
53657 * src/alloc.c (purecopy): Use AUTO_STRING.
53659 2016-03-20 Lars Magne Ingebrigtsen <larsi@gnus.org>
53661 Ignore invalid base64 encoded embedded images
53663 * lisp/net/shr.el (shr-image-from-data): Ignore invalid base64
53664 encoded embedded images (bug#22928).
53666 2016-03-20 Lars Magne Ingebrigtsen <larsi@gnus.org>
53668 Render empty <ul><li><ul> correctly
53670 * lisp/net/shr.el (shr-tag-ul): Render empty <ul><li><ul>
53671 correctly (bug#22964).
53673 2016-03-20 Lars Magne Ingebrigtsen <larsi@gnus.org>
53675 Fix <p> and <div> newlines with or without <li> in shr
53677 * lisp/net/shr.el (shr-ensure-newline): Respect that we're in
53678 a <li>, if we are, and don't insert newlines there.
53679 (shr-ensure-paragraph): When mixing newlines and paragraph
53680 ensurements, don't insert too many blank lines.
53681 (shr-tag-div): A <div> shouldn't introduce a paragraph, but a
53684 2016-03-20 Lars Magne Ingebrigtsen <larsi@gnus.org>
53686 Add more shr HTML rendering tests
53688 Add a test harness for shr HTML rendering and one test
53690 2016-03-20 Lars Magne Ingebrigtsen <larsi@gnus.org>
53692 Remove code left over from when overlays were used for padding
53694 * lisp/net/shr.el (shr-previous-newline-padding-width): Remove.
53695 (shr-remove-trailing-whitespace): Ditto.
53696 (shr-insert-document): Don't call them.
53698 2016-03-20 Lars Magne Ingebrigtsen <larsi@gnus.org>
53700 Remove trailing blank lines in shr
53702 * lisp/net/shr.el (shr--remove-blank-lines-at-the-end): New function.
53703 (shr-insert-document): Use it to remove trailing blank lines
53704 at the end of documents, since these never seem to be very useful.
53706 2016-03-20 Lars Magne Ingebrigtsen <larsi@gnus.org>
53708 Don't bug out on nil `patch-buf' arguments
53710 * lisp/vc/ediff.el (ediff-patch-file): Don't bug out on nil
53711 `patch-buf' arguments.
53713 2016-03-20 Ernest Adrogué <nfdisco@gmail.com>
53715 Add a Catalan language environment
53717 * lisp/international/mule-cmds.el (locale-language-names): Map locale
53718 language name `ca' to language environment `Catalan'.
53720 * lisp/language/european.el: Add definition of language
53721 environment for the Catalan language.
53723 * lisp/leim/quail/latin-pre.el: Add quail rule to the
53724 `catalan-prefix' input method to support input of middle dot
53725 characters through composition (bug#18279).
53727 2016-03-19 Paul Eggert <eggert@cs.ucla.edu>
53729 No need to block input when reading directories
53731 * src/dired.c: Don’t include blockinput.h.
53732 (open_directory, directory_files_internal_unwind)
53733 (directory_files_internal, file_attributes):
53734 Don’t block input here, as the reasons for blocking input should
53735 no longer apply. See blockinput.h FIXME. (Bug#22996).
53737 2016-03-19 Oscar Fuentes <ofv@wanadoo.es>
53739 * lisp/vc/vc-hooks.el: Fix typo
53741 2016-03-19 Fabrice Popineau <fabrice.popineau@gmail.com>
53743 Improve w32notify notifications
53745 * src/w32notify.c (DIRWATCH_BUFFER_SIZE): New macro.
53746 (struct notification): 'terminate' is now a HANDLE.
53747 (send_notifications): Argument is now a pointer to a
53748 notification. Don't loop waiting for the notification to be
53749 acknowledged by the main thread; instead, just add the
53750 notification to the linked list of notifications waiting to be
53752 (watch_end): Don't close the directory handle.
53753 (watch_completion): Allocate a new notification structure to be
53754 added to the notifications set. Call ReadDirectoryChangesW
53755 immediately after adding the new notification, and before sending
53756 a message to the main thread about them.
53757 (watch_worker): Don't loop calling ReadDirectoryChangesW; instead,
53758 call it just once -- it will be called again in watch_completion.
53759 Loop waiting for the main thread's indication to terminate.
53760 (start_watching): Create the event to be used to indicate to the
53761 worker thread that its should terminate.
53762 (remove_watch): Indicate to the worker thread that it should
53764 * src/w32term.c (queue_notifications): Loop over all the
53765 notifications in the linked list, processing all of them in one
53767 * src/w32inevt.c (handle_file_notifications): Loop over all the
53768 notifications in the linked list.
53769 * src/w32xfns.c (init_crit): Initialize the linked list of file
53771 (delete_crit): Free the linked list of file notifications,
53772 including any unprocessed notifications left in it.
53773 * src/w32term.h (struct notifications_se): New struct.
53775 * test/lisp/filenotify-tests.el (file-notify-test02-events)
53776 (file-notify-test05-dir-validity): Add read-event calls to
53777 facilitate event recognition by the main thread in batch mode.
53779 2016-03-17 Sam Steingold <sds@gnu.org>
53781 make `vc-log-operation' buffer local to allow multiple simultaneous editing
53783 2016-03-17 Glenn Morris <rgm@gnu.org>
53785 Simplify some rococo Gnus code that loads or tests for other libraries.
53787 * lisp/gnus/gnus-art.el (gnus-treat-ansi-sequences): Simplify default.
53788 * lisp/gnus/mml-smime.el (epg): Simply require it.
53789 (mml-smime-use): Simplify the default. Doc fix.
53790 * lisp/gnus/mml2015.el (epg-config): Require it.
53791 (mml2015-use): Simplify the default.
53792 * lisp/gnus/smime.el (password-cache): Simply require it.
53793 (password-read-and-add): Remove declaration.
53795 2016-03-16 Glenn Morris <rgm@gnu.org>
53797 * test/lisp/dabbrev-tests.el: Merge fix: move here from test/automated.
53799 2016-03-16 Thomas Fitzsimmons <fitzsim@fitzsim.org>
53800 Alex Harsanyi <AlexHarsanyi@gmail.com>
53802 Sync with soap-client repository, version 3.1.1
53804 * lisp/net/soap-client.el (soap-encode-xs-complex-type): Fix error
53806 (soap-find-port): Delete trailing whitespace.
53807 (soap-find-operation): Fix documentation and rename parameter.
53808 (soap-find-port): Likewise.
53809 (soap-operation-arity): Likewise.
53811 * lisp/net/soap-client.el: Update copyright years.
53812 (soap-warning): Fix docstring quoting.
53813 (soap-decode-date-time): Likewise.
53814 (soap-validate-xs-simple-type): Remove tabs for indentation.
53815 * lisp/net/soap-inspect.el: Update copyright years.
53817 * lisp/net/soap-client.el (soap-encode-xs-basic-type): Do not
53818 assume xsd:base64Binary values are UTF-8 strings.
53819 (soap-decode-xs-basic-type): Likewise.
53820 (soap-invoke): Document xsd:base64Binary handling.
53822 * lisp/net/soap-client.el (soap-find-port, soap-find-operation)
53823 (soap-operation-arity): new defuns
53824 (soap-invoke-internal): use soap-find-port, soap-find-operation.
53826 2016-03-15 Paul Eggert <eggert@cs.ucla.edu>
53831 2016-03-15 std-gnu11: improve clang support
53832 * m4/std-gnu11.m4: Copy from gnulib.
53834 2016-03-14 Lars Magne Ingebrigtsen <larsi@gnus.org>
53836 Disable MOVE more for Dovecot
53838 * lisp/gnus/nnimap.el (nnimap-process-expiry-targets): Also
53839 disable MOVE when expirying.
53840 (nnimap-split-incoming-mail): And when splitting mail.
53842 2016-03-14 Lars Magne Ingebrigtsen <larsi@gnus.org>
53844 Don't use MOVE on Dovecot
53846 * lisp/gnus/nnimap.el (nnimap-request-move-article): Don't use
53847 MOVE on Dovecot, since it's broken in many versions.
53848 (nnimap-quirks): Mark MOVE on Dovecot as non-working.
53850 2016-03-13 Paul Eggert <eggert@cs.ucla.edu>
53852 Improve diff hunk headers when maintaining Emacs
53854 * .gitattributes: Improve diff hunk header support for makefiles,
53855 shell scripts, Ada, C, C++, Objective C, HTML, SHTML, XML, Java,
53856 Perl, PHP, Python, Ruby, and TeX, all of which are used in Emacs
53857 somewhere (sometimes just in test cases).
53858 * autogen.sh: Add regexes for makefiles and shell scripts.
53860 2016-03-12 Eli Zaretskii <eliz@gnu.org>
53862 Update handling of <bdo> per Unicode 9.0
53864 * lisp/net/shr.el (shr-tag-bdo): Wrap in FSI..PDI as well, per
53865 Unicode 9.0 changes in UAX#9, paragraph 2.7.
53867 2016-03-11 John Wiegley <johnw@newartisans.com>
53869 Merge from origin/emacs-25
53871 facb5e2 Update Emacs manual section related to character folding
53872 4efea8e ; * etc/DEBUG: Fix a typo. (Bug#22984)
53873 f8df21b Update admin/notes/unicode
53874 950be68 Add symref-filepattern entries for c?perl-mode
53875 8b8a6ad Don't use XRANDR 1.3 extensions if the server doesn't support them.
53876 985dacf ; NEWS update for the last change in etags
53877 741a6f8 Sync with gnulib
53878 7352c6c Rework C source files to avoid ^(
53879 a589e9a By default, etags produces unqualified Perl tag names
53880 72c7438 Indent methods with keyword names correctly
53881 28532a9 Propertize character literals and special global variables
53883 a7d6f39 ; Fix last change in NEWS
53884 83b2a20 Change how /etc/NEWS presents character folding
53885 b417c5a Revert "Revert "Backport: * lisp/isearch.el: Turn char-folding
53887 711ca36 Properly handle lambda as read function (bug 22961)
53888 1b9d616 Propertize operator symbol names with symbol syntax class
53889 9b16bc2 Stop recognizing :#{} as symbol in ruby-mode
53890 366ec77 Allow using the left shift operator without spaces on both sides
53891 02bf7cc Properly handle unquoting in wdired (bug 22938)
53892 16cf469 ; Spelling fix and tighten up comment
53893 f50bc04 Allow splat operator before percent literal
53894 991c801 Don't apply the return value of goto-char as syntax class
53895 6e63b3e Guard against nested percent literals
53896 066f3bc Recognize iuwu-mod after an escaped newline
53897 6f7a57c Fix symbolic mode string conversion for s and t
53898 50b9826 Update 'ucs-names' database
53899 993b2fb Improve doc string of 'shell-command'
53900 b71c717 Make the code in movemail_strftime more general
53901 cc057e4 Speed up redisplay of binary files with long series of nulls
53902 e51b27e Remove the highlighting support for quoting 'like this' inside
53904 b1abce1 Restore leading space in movemail pop output
53905 98b8d44 Fix bidi-paragraph-direction in Rmail view buffer
53906 dc9d837 Don't misindent computed property generator methods
53907 7923112 Fix mbox files produced by movemail on MS-Windows
53908 c45a1ca doc string file descriptor exhaustion fix
53909 265141b Fix Bug#22814
53911 2016-03-11 John Wiegley <johnw@newartisans.com>
53913 Merge from origin/emacs-25
53915 620951f Fix previous fix of enlarge-/shrink-window
53916 2e78353 * lisp/isearch.el (isearch-define-mode-toggle): Fix toggling logic
53917 66d2717 Complete temperature units in calc-convert-temperature
53918 dbb02bf Make sure to use case-sensitive search
53919 8b01e69 Prevent infinite loop on not-well-formed xml. (Bug#16344)
53920 100346a Add the missing test case for the previous patch
53921 5aba61e Use the correct dabbrev expansion
53923 2016-03-11 Michael Albinus <michael.albinus@gmx.de>
53925 Remove compat code in Tramp
53927 * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
53928 Remove compat code.
53930 2016-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
53932 * lisp/textmodes/tex-mode.el: Complete local envs. Use #'.
53934 Use #' for function names.
53935 (latex-complete-envnames): Include existing environments in
53937 (latex-insert-block): Use latex-complete-envnames.
53938 (tildify-foreach-ignore-environments): Declare.
53940 2016-03-10 Alain Schneble <a.s@realize.ch>
53942 Fix asynchronous TLS connections on MS-Windows
53944 * src/w32.c (sys_write): Don't switch the socket to blocking mode
53945 if the connection attempt is in progress. Instead, return either
53946 EWOULDBLOCK immediately if the connection is in progress, or the
53947 error code produced by '_sys_wait_connect' if the connection
53948 failed. Switching the socket to blocking mode was found to
53949 interfere with GnuTLS handshake. (Bug#22789)
53951 2016-03-10 Alan Mackenzie <acm@muc.de>
53953 Clarify the documentation of nested comments.
53955 * doc/lispref/syntax.texi (Syntax Flags): State that only comments of the same
53956 style are recognized inside nestable comments.
53957 (Low-Level Parsing): Clarify that parsing will stop after the start or end of
53960 2016-03-10 Nicolas Richard <youngfrog@members.fsf.org>
53962 Add new function display-buffer-reuse-mode-window
53964 * lisp/window.el (display-buffer-reuse-mode-window): New function.
53965 * doc/lispref/windows.texi (Display Action Functions): Document it.
53967 2016-03-09 Paul Eggert <eggert@cs.ucla.edu>
53969 Minor fixes for getaddrinfo_a usage
53971 * src/process.c (Fdelete_process): Check gai_cancel return value.
53972 That way, there’s no need to invoke gai_error. Check gai_suspend
53974 (Fmake_network_process): Don’t assume gai_strerror returns a UTF-8
53975 string. Simplify call to connect_network_socket.
53976 (check_for_dns): Avoid unnecessary initialization of local.
53978 2016-03-09 Sam Steingold <sds@gnu.org>
53980 declare `rmail-mime-entity-truncated' and `rmail-mime-render-html-function'
53982 The former avoids a compiler warning, the latter fixes a bug whereas
53983 the variable is compiled as lexical instead of dynamic.
53985 2016-03-08 Paul Eggert <eggert@cs.ucla.edu>
53987 Pacify --enable-gcc-warnings
53989 * src/xfns.c (x_create_tip_frame): Omit unused local.
53990 (Fx_show_tip): Don’t jump over auto initialization.
53992 2016-03-07 Martin Rudalics <rudalics@gmx.at>
53994 Optionally reuse tooltip frames instead of deleting/recreating them.
53996 * src/frame.c (tooltip_reuse_hidden_frame): New option.
53997 * src/w32fns.c (x_create_tip_frame): Remove argument TEXT. Fix
53998 handling of dividers.
53999 (x_hide_tip): New function.
54000 (Fx_show_tip): Try to reuse old tooltip frame when
54001 `tooltip-reuse-hidden-frame' is non-nil and frame parameters
54002 have not changed. Insert STRING here instead of passing it to
54003 x_create_tip_frame. Compute size of tooltip window with
54004 Fwindow_text_pixel_size. Obey Vw32_tooltip_extra_pixels when
54005 padding tooltip window.
54006 (Fx_hide_tip): Call x_hide_tip.
54007 (Vw32_tooltip_extra_pixels): New variable.
54008 * src/xdisp.c (Fwindow_text_pixel_size): Don't return negative y
54009 value. Fix doc-string.
54010 * src/xfns.c (x_create_tip_frame): Remove argument TEXT. Call
54011 make_frame with mini_p argument false.
54012 (x_hide_tip): New function.
54013 (Fx_show_tip): Try to reuse old tooltip frame when
54014 `tooltip-reuse-hidden-frame' is non-nil and frame parameters
54015 have not changed. Insert STRING here instead of passing it to
54016 x_create_tip_frame. Compute size of tooltip window with
54017 Fwindow_text_pixel_size.
54018 (Fx_hide_tip): Call x_hide_tip.
54019 * lisp/cus-start.el (tooltip-reuse-hidden-frame): Add
54020 customization entry.
54022 2016-03-07 Paul Eggert <eggert@cs.ucla.edu>
54024 Assume getaddrinfo in C code
54026 * admin/CPP-DEFINES, configure.ac: Remove HAVE_GETADDRINFO, HAVE_H_ERRNO.
54028 * doc/lispref/processes.texi (Network, Network Processes), etc/NEWS:
54029 Say that port numbers can be integer strings.
54030 * lib-src/pop.c (h_errno) [!WINDOWSNT && !HAVE_H_ERRNO]: Remove decl.
54031 (socket_connection): Assume HAVE_GETADDRINFO.
54032 * lisp/mpc.el (mpc--proc-connect):
54033 * lisp/net/network-stream.el (open-network-stream):
54034 It’s now OK to use integer strings as port numbers.
54035 * src/process.c (conv_numerical_to_lisp) [!HAVE_GETADDRINFO]: Remove.
54036 (Fmake_network_process): Assume HAVE_GETADDRINFO.
54038 2016-03-07 Paul Eggert <eggert@cs.ucla.edu>
54040 Remove support for IRIX
54042 The IRIX port wasn’t really working anyway, and the code was
54043 getting in the way of other changes (e.g., getaddrinfo fixes).
54044 IRIX’s supplier dropped support for IRIX in 2013.
54045 * admin/CPP-DEFINES:
54046 * configure.ac (opsys):
54047 * doc/lispref/os.texi (System Environment):
54048 * etc/MACHINES, etc/PROBLEMS:
54049 * lisp/find-dired.el (find-grep-options):
54050 * lisp/lpr.el (lpr-lp-system):
54051 * lisp/ls-lisp.el (ls-lisp-emulation):
54052 * lisp/mail/rmail.el (rmail-spool-directory):
54053 * lisp/net/net-utils.el (ping-program-options):
54054 * lisp/progmodes/gud.el (gud-irix-p, gud-dbx-use-stopformat-p):
54055 * lisp/progmodes/ps-mode.el (ps-mode-print-function):
54056 * src/conf_post.h [IRIX6_5]:
54057 * src/emacs.c (Vsystem_type):
54058 * src/filelock.c (get_boot_time_1):
54059 * src/process.c (process_send_signal):
54060 * src/unexelf.c (unexec):
54061 Omit IRIX-specific code and/or documentation.
54062 * configure.ac (NON_GCC_TEST_OPTIONS, IRIX6_5, PREFER_VSUSP):
54063 Remove. All uses removed.
54064 * etc/NEWS: Document the change.
54066 2016-03-06 John Wiegley <johnw@newartisans.com>
54068 Revert "Use colors in the VC mode lines"
54070 This reverts commit 2621c293d82c15c00d9e73a8db75d70da7d0a23b.
54072 2016-03-06 Ken Brown <kbrown@cornell.edu>
54074 Fix Cygwin-w32 build
54076 * src/w32fns.c (funhook, setup_w32_kbdhook, remove_w32_kbdhook):
54077 Define only if WINDOWSNT, and update all uses accordingly.
54078 * src/w32term.h (check_w32_winkey_state, setup_w32_kbdhook)
54079 (remove_w32_kbdhook): Declare only if WINDOWSNT.
54080 (w32_kbdhook_active): Define as 0 if not WINDOWSNT.
54082 2016-03-06 Eli Zaretskii <eliz@gnu.org>
54084 Unbreak the MinGW64 build
54086 * nt/inc/ms-w32.h [MINGW_W64]: Undefine HAVE_GAI_STRERROR. See
54087 https://lists.gnu.org/r/emacs-devel/2016-03/msg00130.html
54088 for the details. Reported by Angelo Graziosi
54089 <angelo.graziosi@alice.it>.
54091 2016-03-06 Lars Magne Ingebrigtsen <larsi@gnus.org>
54093 Don't signal errors on E_AGAIN
54095 * src/gnutls.c (Fgnutls_errorp): Qgnutls_e_again is not an
54096 error now that TLS is async.
54098 2016-03-05 Lars Magne Ingebrigtsen <larsi@gnus.org>
54100 Allow making TLS negotiation blocking
54102 * lisp/net/gnutls.el (gnutls-negotiate): Make negotiation blocking.
54104 * src/gnutls.c (Fgnutls_boot): Provide a new keyword,
54105 :complete-negotiation, to specify that we want complete
54106 negotiation even if the socket is non-blocking.
54107 (gnutls_try_handshake): Complete negotiation if given that keyword.
54109 * src/process.h (L): Added gnutls_complete_negotiation_p.
54111 2016-03-05 Lars Magne Ingebrigtsen <larsi@gnus.org>
54113 Don't run ipv6 test on systems without ipv6
54115 * test/lisp/net/network-stream-tests.el
54116 (connect-to-tls-ipv6-nowait): Skip on systems without ipv6.
54118 2016-03-05 Eli Zaretskii <eliz@gnu.org>
54120 Implement getaddrinfo fallback for MS-Windows
54122 See https://lists.gnu.org/r/emacs-devel/2016-02/msg01602.html
54125 * nt/mingw-cfg.site (ac_cv_func_getaddrinfo)
54126 (ac_cv_func_gai_strerror): Set to "yes", as the configure script's
54127 test program is not smart enough to auto-detect these.
54128 * nt/inc/sys/socket.h (getaddrinfo, freeaddrinfo): Redirect to
54129 sys_getaddrinfo and sys_freeaddrinfo. Provide prototypes for
54130 sys_getaddrinfo and sys_freeaddrinfo.
54132 * src/w32.c (init_winsock): Try loading getaddrinfo and
54133 freeaddrinfo from ws2_32.dll.
54134 (sys_getaddrinfo, sys_freeaddrinfo): New functions.
54136 * lib-src/pop.c [WINDOWSNT]: Include winsock2.h, not winsock.h,
54137 and also ws2tcpip.h.
54138 (getaddrinfo, freeaddrinfo) [WINDOWSNT]: Redirect to
54139 sys_getaddrinfo and sys_freeaddrinfo, respectively.
54140 (load_ws2, sys_getaddrinfo, sys_freeaddrinfo) [WINDOWSNT]: New
54143 2016-03-04 Glenn Morris <rgm@gnu.org>
54145 * lisp/files.el: Fix recent typo.
54147 * lisp/subr.el (read-multiple-choice): Avoid free variable.
54149 * doc/lispref/files.texi (File Attributes): Fix typo.
54151 2016-03-04 Lars Ingebrigtsen <larsi@gnus.org>
54153 Make the describe-key prompts clearer
54155 * lisp/help.el (describe-key-briefly): Make the prompt clearer
54157 (describe-key): Ditto.
54159 2016-03-04 Lars Ingebrigtsen <larsi@gnus.org>
54161 Allow scrolling while querying multiple choice
54163 * lisp/subr.el (read-multiple-choice): Allow scrolling the
54164 buffer while querying (bug#22827).
54166 2016-03-04 Lars Ingebrigtsen <larsi@gnus.org>
54168 Add accessors for `file-attributes'
54170 * doc/lispref/files.texi (File Attributes): Mention the accessors.
54172 * lisp/files.el (file-attribute-type)
54173 (file-attribute-link-number, file-attribute-user-id)
54174 (file-attribute-group-id, file-attribute-access-time)
54175 (file-attribute-modification-time)
54176 (file-attribute-change-time, file-attribute-size)
54177 (file-attribute-modes, file-attribute-inode-number)
54178 (file-attribute-device-number): New functions.
54180 * src/dired.c (Ffile_attributes): Mention the accessors (bug#22890).
54182 2016-03-04 Michael Albinus <michael.albinus@gmx.de>
54186 * lisp/autorevert.el (global-auto-revert-mode): Do not set
54187 `auto-revert-use-notify' to nil.
54189 * etc/NEWS: Mention this.
54191 * etc/PROBLEMS: Remove problem Bug#22814.
54193 * src/kqueue.c: Include <sys/resource.h>.
54194 (Fkqueue_add_watch): Limit the number of used file descriptors.
54197 * test/lisp/filenotify-tests.el (file-notify--test-remote-enabled)
54198 (file-notify-test00-availability, file-notify-test01-add-watch)
54199 (file-notify-test02-events, file-notify-test06-many-events):
54200 Use #' read syntax for functions.
54201 (file-notify-test05-dir-validity)
54202 (file-notify-test06-many-events): Simplify directory creation.
54203 (file-notify-test09-sufficient-ressources): New test.
54205 2016-03-04 Lars Ingebrigtsen <larsi@gnus.org>
54207 Fix insertion of edited servers in the dribble file
54209 * lisp/gnus/gnus-srvr.el (gnus-server-update-server): Don't
54210 insert explicit newlines, because they're quoted (bug#22903).
54212 2016-03-04 Lars Ingebrigtsen <larsi@gnus.org>
54214 Move cl-seq-tests to the right place after the merge
54216 Move cl-seq-tests to the right place after the merge
54218 2016-03-03 John Wiegley <johnw@newartisans.com>
54220 Merge from origin/emacs-25
54222 d6f6b7d * etc/AUTHORS: Update the AUTHORS file
54223 5cf7c39 authors.el updates
54224 a26f193 ; fix changelog entries
54225 fbc85c7 ; make change-history-commit
54226 06da00c Fix Bug#22859
54227 ab30bf5 ; * src/w32proc.c: Update the commentary to sys_select.
54228 1481029 Fix reordering of bidi text in an isolate inside an override
54229 60e0596 Document c-guess-basic-syntax in the CC Mode manual.
54231 2016-03-03 John Wiegley <johnw@newartisans.com>
54233 Merge from origin/emacs-25
54235 f5d1435 Fix targets in test/automated/Makefile.in
54237 2016-03-03 John Wiegley <johnw@newartisans.com>
54239 Merge from origin/emacs-25
54241 b6d6304 Comment on last change to define-derived-mode
54243 2016-03-03 John Wiegley <johnw@newartisans.com>
54245 Merge from origin/emacs-25
54247 cb1e3da Also allow setting the paragraph direction to nil
54248 bbe8a89 Made the new OS X visible bell more visible.
54250 2016-03-03 John Wiegley <johnw@newartisans.com>
54252 Merge from origin/emacs-25
54254 aae436e Uncomment the next-error-function integration in xref
54255 5f0d096 Remove the word "valid", to avoid ambiguity
54257 2016-03-03 John Wiegley <johnw@newartisans.com>
54259 Merge from origin/emacs-25
54261 5a44bfe Set auto-revert-use-notify to nil in global-auto-revert-mode. (Bug#22814)
54262 0d60bfc Fix ModelSim error parsing
54264 2016-03-03 John Wiegley <johnw@newartisans.com>
54266 Merge from origin/emacs-25
54268 b13cab6 Add a eww command to toggle paragraph direction
54269 4e46128 * nextstep/WISHLIST: Merge into etc/TODO and remove.
54270 9e078e5 Fix char signedness issue in bidi code
54271 064adf6 * lib-src/pop.c (socket_connection): Fix format string.
54272 14060a9 Avoid inflooping in thing-at-point-looking-at
54273 098d47b * lisp/emacs-lisp/derived.el (define-derived-mode): Revert
54275 b5db8e0 etc/PROBLEMS: Mention problems with using file descriptors
54276 ec10ef9 * lisp/apropos.el (apropos-variable): Doc fix. (Bug#22813).
54277 d2dd614 Remove unneeded workaround in xftfont.c
54278 9b7593c ; * etc/NEWS: Reflect latest changes in saveplace.
54279 fde0cd1 * lisp/saveplace.el (save-place-local-mode): New minor mode
54280 06a872b Fix redisplay on a TTY after 'make-frame'
54281 95f5a43 Make double-click-1 work with unbalanced parens in CC Mode.
54283 7d206fc Input method polish-slash should not use keyboard translation
54284 8be32cf Fix an assertion
54285 040e0d6 Fix 'toggle-save-place'
54286 5244db2 * src/keyboard.c: Don't inadvertently set immediate_echo (bug#22581)
54288 2016-03-03 John Wiegley <johnw@newartisans.com>
54290 Merge from origin/emacs-25
54292 e6a3819 Update HISTORY section in readme for the NextStep interface.
54293 f67f1ed ; * doc/lispref/modes.texi (Font Lock Basics): Minor rewording.
54294 7c81a0b Improve documentation of 'save-place-mode'
54295 cab3f0a Allocate glyph matrices for the initial frame
54296 e01c72f Fix white space in last checkin
54297 370eb67 Make `insert-pair' always leave the cursor where documented
54298 b594393 etc/NEWS: Mention the new second parameter to `package-install'
54300 2016-03-03 John Wiegley <johnw@newartisans.com>
54302 Merge from origin/emacs-25
54304 bd58c13 Improve documentation of focus-related hooks
54305 00a4720 Further improve doc string of 'disable-point-adjustment'
54306 c582def Further adaptions in file-notify-tests.el for w32notify
54307 a1585e1 Don't bug out on localized dates in gnus-icalendar
54309 2016-03-03 John Wiegley <johnw@newartisans.com>
54311 Merge from origin/emacs-25
54313 7bc4820 Make setf for frame-height/width work again
54315 2016-03-03 John Wiegley <johnw@newartisans.com>
54317 Merge from origin/emacs-25
54319 6620944 (cl-union): Do not ignore :test argument when lists are equal.
54320 17dd3fb Add `isearch' to `basic-faces'
54321 c1ec743 Make $, : and @ "prefix characters" in ruby-mode
54322 e72a26e Make find-tag-default-bounds more strict
54323 1bc0e0a Minor fixes in filenotify.el
54325 2016-03-02 Alain Schneble <a.s@realize.ch>
54327 Fix issue of inserting images on some systems
54329 * lisp/net/shr.el (shr-tag-img): Construct a non-empty range
54330 to pass to shr-image-fetched, to indicate where to insert the
54331 image. Fixes the issue introduced with commit
54332 80852f843e69b81618f29cfb9aa4b074946cb3c4
54335 2016-03-02 Lars Ingebrigtsen <larsi@gnus.org>
54337 Ensure TLS negotiation progress
54339 * src/gnutls.h (GNUTLS_EMACS_HANDSHAKES_LIMIT): Increase the
54340 number of retries so that we try for about a minute.
54342 * src/process.c (wait_reading_process_output): Ensure progress
54343 for DNS resolution and TLS negotiation.
54345 2016-03-02 Paul Eggert <eggert@cs.ucla.edu>
54347 emacs-module.h slight simplification
54349 * src/emacs-module.c (emacs_init_function, emacs_subr): Move here ...
54350 * src/emacs-module.h: ... from here, as they don’t need to be public.
54351 (enum emacs_arity): Remove useless enum tag. The enum value is
54352 used in ptrdiff_t contexts.
54354 * src/emacs-module.c (CHECK_USER_PTR): Fix typo in previous change.
54356 2016-03-02 Paul Eggert <eggert@cs.ucla.edu>
54358 * src/emacs-module.c (CHECK_USER_PTR): Fix typo in previous change.
54360 2016-03-02 Paul Eggert <eggert@cs.ucla.edu>
54362 emacs-module.c simplification and tuneup
54364 * src/emacs-module.c (CHECK_USER_PTR): New function.
54365 (module_get_user_ptr, module_set_user_ptr)
54366 (module_get_user_finalizer, module_set_user_finalizer): Use it.
54367 (module_make_global_ref, module_copy_string_contents)
54368 (module_make_string, module_vec_set, module_vec_get): Omit
54369 unnecessary runtime tests. For example, vector sizes are always
54370 fixnums, so we don’t need to test that they are in fixnum range.
54372 2016-03-02 Philipp Stephani <phst@google.com>
54374 Use standard checks whenever possible.
54376 This is possible in all functions where we catch signals anyway.
54378 * src/emacs-module.c (module_make_global_ref, module_funcall)
54379 (module_copy_string_contents, module_make_string): Use xsignal0
54380 and CHECK macros for argument checks.
54382 2016-03-02 Paul Eggert <eggert@cs.ucla.edu>
54384 Deterministic build improvements
54386 * configure.ac (BUILD_DETAILS): Rename from DETERMINISTIC_DUMP,
54387 and negate its sense. Use it via AC_SUBST, not AC_DEFINE,
54388 and have its value be either empty or --no-build-details.
54389 All uses changed. Change option to --disable-build-details.
54390 * doc/emacs/cmdargs.texi (Initial Options):
54391 Document --no-build-details.
54392 * doc/lispref/internals.texi (Building Emacs):
54394 Document --disable-build-details.
54395 * doc/lispref/intro.texi (Version Info): Say that
54396 emacs-build-time can be nil.
54397 * lisp/erc/erc-compat.el (erc-emacs-build-time):
54398 Now nil if details are omitted.
54399 * lisp/erc/erc.el (erc-cmd-SV):
54400 * lisp/version.el (emacs-build-time):
54401 Now nil if no build details.
54403 Output build time only if build details.
54404 * src/Makefile.in (BUILD_DETAILS): New macro.
54405 (temacs, bootstrap-emacs): Use it.
54406 * src/emacs.c (build_details): New var.
54407 (standard_args, main): Support --no-build-details.
54408 (Vdeterministic_dump): Remove; all uses replaced
54410 (syms_of_emacs): Set Vbuild_details to a boolean, not
54412 * src/lisp.h (build_details): New decl.
54413 * src/sysdep.c (init_system_name): When !build_details,
54414 set system-name to nil, not to "elided".
54416 2016-03-02 Philipp Stephani <phst@google.com>
54418 Remove build system name from deterministic dumps
54420 * configure.ac (DETERMINISTIC_DUMP): New configuration option.
54421 * lisp/version.el (emacs-build-time): Add a comment to make the
54422 build time deterministic if requested.
54423 (emacs-build-system): Make variable deterministic if requested.
54424 * src/emacs.c (main): Initialize `deterministic-dump' from the
54425 configuration option.
54426 (syms_of_emacs): New constant `deterministic-dump'.
54427 * src/sysdep.c (init_system_name): Use a constant
54428 if a deterministic dump is requested.
54430 2016-03-02 Lars Ingebrigtsen <larsi@gnus.org>
54432 Remove buggy parse-time test
54434 * test/lisp/calendar/parse-time-tests.el (parse-time-tests):
54435 Remove the iso parse test, since it doesn't work.
54437 2016-03-01 Paul Eggert <eggert@cs.ucla.edu>
54439 * src/syntax.c (syntax_multibyte): Omit unnecessary parens.
54441 2016-02-29 Glenn Morris <rgm@gnu.org>
54443 * lisp/emacs-lisp/autoload.el (autoload-timestamps):
54444 Experiment with setting to nil.
54446 2016-02-29 Lars Ingebrigtsen <larsi@gnus.org>
54448 Make the revert command in timer-list-mode work
54450 * lisp/emacs-lisp/timer-list.el (timer-list): Make the revert
54453 2016-02-29 Glenn Morris <rgm@gnu.org>
54455 * lisp/emacs-lisp/autoload.el (autoload-find-destination):
54456 Fix 6-week old merge error.
54458 * lisp/emacs-lisp/autoload.el (update-file-autoloads):
54461 * lisp/emacs-lisp/package.el (package-generate-autoloads):
54462 Disable timestamps.
54464 2016-02-29 Lars Ingebrigtsen <larsi@gnus.org>
54466 Allow binding `url-mime-accept-string'
54468 * lisp/url/url-http.el (url-http): Allow binding
54469 `url-mime-accept-string' (bug#22855).
54471 2016-02-29 Lars Ingebrigtsen <larsi@gnus.org>
54473 Add a NEWS entry for the colorful VC indicator
54475 2016-02-29 Lars Ingebrigtsen <larsi@gnus.org>
54477 Use colors in the VC mode lines
54479 * lisp/vc/vc-hooks.el: Make the mode line faces default to
54480 using colors to more clearly tell the user what the status is.
54482 2016-02-29 Lars Ingebrigtsen <larsi@gnus.org>
54484 Support <bdo> and <bdi>
54486 * lisp/net/shr.el (shr-tag-bdo): New function.
54487 (shr-tag-bdi): Ditto.
54489 2016-02-29 Lars Ingebrigtsen <larsi@gnus.org>
54491 Respect <html dir=auto>
54493 * lisp/net/shr.el (shr-tag-html): Respect the "auto"
54494 directional HTML setting.
54496 2016-02-29 Lars Ingebrigtsen <larsi@gnus.org>
54498 Default bidi paragraph direction to nil
54500 * lisp/net/eww.el (eww-display-html): Default bidi rendering
54501 to nil, so that possibly more Arabic web pages render
54502 correctly (bug#22786).
54503 (eww-setup-buffer): Ditto.
54505 2016-02-29 Mathias Dahl <mathias.dahl@gmail.com>
54507 Preserve current column, going up/down in thumbnail view.
54509 2016-02-29 Alan Mackenzie <acm@muc.de>
54511 Handle "noise" macros and compiler directives.
54513 * lisp/progmodes/cc-langs.el (c-symbol-char-key): New language variable.
54515 * lisp/progmodes/cc-vars.el (c-noise-macro-names)
54516 (c-noise-macro-with-parens-names): New customizable variables.
54517 (c-noise-macro-name-re, c-noise-macro-with-parens-name-re): New variables.
54518 (c-make-noise-macro-regexps): New function.
54520 * lisp/progmodes/cc-engine.el (c-forward-sws, c-backward-sws): Adapt to treat
54521 members of c-noise-macro-names as whitespace.
54522 (c-forward-noise-clause): New function.
54523 (c-forward-keyword-prefixed-id, c-forward-type, c-forward-declarator)
54524 (c-forward-decl-or-cast-1, c-backward-over-enum-header)
54525 (c-guess-basic-syntax CASE 5A.3, CASE 5A.5, CASE 9A):
54526 Handle "noise clauses" in parallel with, e.g., "hangon key clauses".
54528 * lisp/progmodes/cc-fonts.el (c-complex-decl-matchers): Handle "noise clauses"
54529 in parallel with "prefix-spec keywords".
54531 * lisp/progmodes/cc-mode.el (c-mode, c++-mode, objc-mode): call
54532 c-make-noise-macro-regexps to initialize the internal variables.
54534 * doc/misc/cc-mode.texi ("Noise Macros"): New section documenting the new
54537 2016-02-29 Paul Eggert <eggert@cs.ucla.edu>
54539 Stop calling res_init
54541 Emacs shouldn’t need to call res_init any more, now that nscd or
54542 equivalent is everywhere. On modern systems, calling res_init
54543 simply slows Emacs down. On ancient systems lacking nscd Emacs
54544 will still work well enough with this change; it’s just that it
54545 won’t respond to changes in /etc/resolv.conf.
54546 * configure.ac (HAVE_RES_INIT): Remove. Worry about -lresolv only
54547 when configured --with-hesiod. Hesiod is still used; see, e.g.:
54548 https://soylentnews.org/meta/article.pl?sid=15/07/13/0255214
54549 * src/Makefile.in (LIBRESOLV): Remove. All uses removed.
54551 2016-02-29 Glenn Morris <rgm@gnu.org>
54553 * lisp/progmodes/grep.el (grep-save-buffers): Fix type, tweak doc.
54555 * lisp/progmodes/grep.el (grep-save-buffers): Don't autoload defcustoms.
54557 2016-02-29 Paul Eggert <eggert@cs.ucla.edu>
54559 * src/process.c (Fdelete_process): Simplify cast.
54561 2016-02-29 Lars Ingebrigtsen <larsi@gnus.org>
54563 Use the correct background color when filling nested <divs>
54565 * lisp/net/shr.el (shr-face-background): Return the first
54566 background, because that's the one that's visible (bug#22680).
54568 2016-02-28 Lars Ingebrigtsen <larsi@gnus.org>
54570 Make <div> in <li> not insert extra newlines
54572 * lisp/net/shr.el (shr-tag-div): Make <div> in <li> not insert
54573 extra newlines (bug#19587).
54575 2016-02-28 Lars Ingebrigtsen <larsi@gnus.org>
54577 Allow reading Gnus reports from an offline cache
54579 * lisp/gnus/gnus-group.el (gnus-read-ephemeral-bug-group):
54580 Allow reading bug reports from an offline cache directory.
54582 2016-02-28 Tino Calancha <f92capac@gmail.com>
54584 Meta + shift + Fn combos are recognized by xterm>=216.
54586 * lisp/term/xterm.el (xterm-alternatives-map): Meta + shift +
54587 Fn combos are recognized by xterm>=216 (bug#22837).
54589 2016-02-28 Simen Heggestøyl <simenheg@gmail.com>
54591 Declare $ as an expression prefix in SCSS
54593 * lisp/textmodes/css-mode.el (scss-mode-syntax-table): Declare $ as an
54594 expression prefix (bug#22841).
54596 2016-02-28 Lars Ingebrigtsen <larsi@gnus.org>
54598 Revert "Declare $ as an expression prefix in SCSS"
54600 This reverts commit ffb33264f21e8af60b8055c47baffcf0f6c300df.
54602 Revering to fix author name.
54604 2016-02-28 Simen <simenheg@gmail.com>
54606 Declare $ as an expression prefix in SCSS
54608 * lisp/textmodes/css-mode.el (scss-mode-syntax-table): Declare $ as an
54609 expression prefix (bug#22841).
54611 2016-02-28 Hugh Brown <aardvark@saintaardvarkthecarpeted.com>
54613 Save buffers before running grep commands
54615 * lisp/progmodes/grep.el (grep-ask-about-save): New variable (bug#96).
54616 (grep, lgrep, rgrep): Use it (bug#96).
54618 * doc/emacs/building.texi (Grep Searching): Document
54619 `grep-save-buffers'.
54621 * lisp/progmodes/grep.el (grep-save-buffers): Rename from
54622 `grep-ask-about-save'.
54623 (grep--save-buffers): New function.
54624 (grep, lgrep, rgrep): Use it.
54626 2016-02-28 Lars Ingebrigtsen <larsi@gnus.org>
54628 Allow sorting flyspell corrections
54630 * lisp/textmodes/flyspell.el (flyspell-sort): New function (bug#2405).
54631 (flyspell-sort-corrections-functionx): New variable.
54632 (flyspell-sort-corrections-alphabetically): New function.
54633 (flyspell-notify-misspell): Use them.
54634 (flyspell-auto-correct-word): Ditto.
54635 (flyspell-emacs-popup): Ditto.
54636 (flyspell-xemacs-popup): Ditto. Suggested by Sebastien Delafond.
54638 2016-02-28 Lars Ingebrigtsen <larsi@gnus.org>
54640 Wait for async DNS to complete before freeing resources
54642 * src/process.c (Fdelete_process): Wait for async DNS to
54643 complete before freeing the data structures it needs.
54645 2016-02-28 Lars Ingebrigtsen <larsi@gnus.org>
54647 * lisp/faces.el: Remove duplicated functions from previous patch.
54649 2016-02-28 Eli Zaretskii <eliz@gnu.org>
54651 Fix TLS connections on MS-Windows
54653 * src/w32.c (sys_write): If 'send' returns with WSAENOTCONN, and
54654 this is a non-blocking socket whose connection is in progress, set
54655 errno to EWOULDBLOCK, as expected by GnuTLS and other callers.
54656 Avoid overwriting the errno value from 'send' by 'ioctlsocket'.
54657 Suggested by Alain Schneble <a.s@realize.ch>. (Bug#22789)
54659 2016-02-27 Lars Ingebrigtsen <larsi@gnus.org>
54661 Add a NEWS entry for the read-color change
54663 2016-02-27 Jan Moringen <jan.moringen@uni-bielefeld.de>
54665 Show the face colors when completing in `read-color'
54667 * lisp/faces.el (defined-colors-with-face-attributes): New function.
54668 (readable-foreground-color, defined-colors-with-face-attributes)
54669 (readable-foreground-color): Ditto.
54670 (read-color): Use them (bug#5305).
54672 2016-02-27 Lars Ingebrigtsen <larsi@gnus.org>
54674 Clean up the code in parse-time-string-chars
54676 * lisp/calendar/parse-time.el (parse-time-string-chars):
54677 Clean up the code a bit.
54679 2016-02-27 Lars Ingebrigtsen <larsi@gnus.org>
54681 Add some tests for parse-time.el
54683 * test/lisp/calendar/parse-time-tests.el: New file.
54685 2016-02-27 Dima Kogan <dima@secretsauce.net>
54687 Strip out some leading whitespace when looking at logs
54689 * lisp/vc/vc-git.el (vc-git-expanded-log-entry): When looking
54690 at expanded git logs with `vc-print-root-log' (C-x v L, then
54691 <enter> by default), Emacs was stripping out all leading
54692 whitespace from git logs. I now strip exactly 2 leading
54693 spaces, which retains the indentation in the logs (bug#18110).
54695 2016-02-27 Dima Kogan <dima@secretsauce.net>
54697 Use a separate history variable for align-regexp
54699 * lisp/align.el (align-regexp-history): New variable (bug#16891).
54700 (align-regexp): Use it.
54702 2016-02-27 Phil Sung <philbert@gmail.com>
54704 Create subdirectories automatically in wdired
54706 * lisp/wdired.el (wdired-create-parent-directories): New
54707 variable (bug#6817).
54708 (wdired-create-parentdirs): New function.
54709 (wdired-do-renames): Use it.
54710 * doc/emacs/dired.texi (Wdired): Mention
54711 `wdired-create-parent-directories'
54713 2016-02-27 Lars Ingebrigtsen <larsi@gnus.org>
54715 Return the correct error values from gnutls.c
54717 * src/gnutls.c (emacs_gnutls_read): Set errno to the value
54718 expected by process.c.
54719 (gnutls_try_handshake): Set gnutls_p to true earlier to avoid
54720 possible race condition with the process.c socket polling
54723 2016-02-27 Aaron S. Hawley <aaron.s.hawley@gmail.com>
54725 Don't make assumptions about mkdir. (Bug#22822)
54727 * test/Makefile.in (MKDIR_P): New, set by configure.
54728 (%.log): Use MKDIR_P.
54730 2016-02-27 Alexander Kuleshov <kuleshovmail@gmail.com>
54732 Support switching to hexl-mode from image-mode
54734 * lisp/image-mode.el (image-toggle-hex-display)
54735 (image-mode-to-text): New functions.
54736 (image-mode-map, image-minor-mode-map): Bind "C-c C-x" to
54737 image-toggle-hex-display.
54738 (image-mode-map): New menu item "Show as Hex".
54739 (image-mode): Update doc string and echo-area message.
54740 (image-toggle-display): Support toggle to hex. (Bug#22453)
54742 * doc/emacs/files.texi (File Conveniences): Document
54743 'image-toggle-hex-display'.
54745 2016-02-27 Eli Zaretskii <eliz@gnu.org>
54747 Remove unused code in coding.c
54749 * src/coding.c (decode_eol): Remove unused code that handled the
54750 case of coding->dst_object being nil. Replace it with an
54753 2016-02-26 Aurelien Aptel <aaptel@suse.com>
54755 * src/syntax.c: Fix result of syntax_multibyte()
54757 The ?: operator has a lower precedence than ||.
54758 Bug introduced by commit 45b683a.
54760 2016-02-26 Paul Eggert <eggert@cs.ucla.edu>
54762 --enable-gcc-warnings now uses -Wjump-misses-init
54764 When configuring with --enable-gcc-warnings, also enable
54765 -Wjump-misses-init, as it’s confusing to use a goto to skip over
54766 an initialization. Fix the few places in the code that run afoul
54768 * configure.ac (WERROR_CFLAGS): Add -Wjump-misses-init.
54769 * src/doc.c (Fsubstitute_command_keys):
54770 * src/image.c (svg_load_image):
54771 * src/regex.c (re_match_2_internal):
54772 * src/xdisp.c (redisplay_internal, redisplay_window):
54773 Don’t jump over initialization.
54775 2016-02-26 Jussi Lahdenniemi <jussi@aprikoodi.fi>
54777 Improve the register-hotkey functionality on MS-Windows
54779 * src/w32fns.c (_WIN32_WINNT): Define to 0x0600, needed for
54780 keyboard hook functionality.
54781 Include w32inevt.h, basetyps.h and unknwn.h.
54782 (VK_ANY, WM_WTSSESSION_CHANGE, WTS_SESSION_LOCK): New macros.
54783 (kbdhook): A new struct definition.
54784 (funhook, setup_w32_kbdhook, remove_w32_kbdhook, hook_w32_key)
54785 (check_w32_winkey_state, reset_w32_kbdhook_state): New functions.
54786 (modifier_set): Call check_w32_winkey_state if a Win key was
54787 pressed and the keyboard hook is active.
54788 (w32_wnd_proc): Don't handle Win key combinations if the keyboard
54789 hook is active. Only register/unregister the hotkeys if the
54790 keyboard hook is not active. When WM_CREATE is received, call
54791 setup_w32_kbdhook. When WM_DESTROY is received, call
54792 reset_w32_kbdhook_state.
54793 (lookup_vk_code): When the keyboard hook is active, map
54794 alphanumeric characters to themselves.
54795 (w32_parse_and_hook_hot_key): Renamed from w32_parse_hot_key. Map
54796 modified keys to VK_ANY if the keyboard hook is active. Register
54797 Alt-x and Win-x combinations.
54798 (Fw32_shell_execute): Update doc string to reflect new
54799 functionality. Bypass the code that posts the
54800 WM_EMACS_REGISTER_HOT_KEY message if the keyboard hook is active.
54801 (Fw32_unregister_hot_key): Bypass the code that posts the
54802 WM_EMACS_UNREGISTER_HOT_KEY message if the keyboard hook is active.
54803 (syms_of_w32fns) <w32-pass-lwindow-to-system>
54804 <w32-pass-rwindow-to-system, w32-phantom-key-code>
54805 <w32-lwindow-modifier, w32-rwindow-modifier>: Update doc strings
54806 to reflect the new functionality.
54807 * src/w32console.c (initialize_w32_display): Install the low-level
54809 * src/w32inevt.c (key_event): Handle Win-x combinations only if
54810 the keyboard hook is not active. If the hook is active, use
54811 check_w32_winkey_state instead.
54812 * src/w32term.h (setup_w32_kbdhook, remove_w32_kbdhook)
54813 (check_w32_winkey_state): Add prototypes.
54814 (w32_kbdhook_active): New macro.
54816 * doc/emacs/msdos.texi (Windows Keyboard): Update to reflect the
54819 2016-02-25 Aaron S. Hawley <aaron.s.hawley@gmail.com>
54821 Add forward-sexp (and related) tests
54823 * test/lisp/emacs-lisp/lisp-tests.el: New file for testing
54824 forward-sexp and related functions (bug#22800).
54826 2016-02-25 Jan Tatarik <jan.tatarik@gmail.com>
54828 Don't use (localized) week days in dates
54830 * lisp/gnus/gnus-icalendar.el
54831 (gnus-icalendar-event:org-timestamp): Don't use (localized)
54832 week days in the dates, because that messes up things later.
54834 2016-02-25 Thierry Volpiatto <thierry.volpiatto@gmail.com>
54836 Update pcomplete/find
54838 * lisp/pcmpl-gnu.el (pcomplete/find): Update to newest version
54841 2016-02-25 Lars Ingebrigtsen <larsi@gnus.org>
54843 Make parse-time-string-chars more efficient
54845 * lisp/calendar/parse-time.el (parse-time-string-chars): The
54846 string has already been downcase, so don't care about case
54849 2016-02-25 Lars Ingebrigtsen <larsi@gnus.org>
54851 Remove killed buffers from the list of Gnus buffers
54853 * lisp/gnus/gnus.el (gnus-prune-buffers): Remove killed
54854 buffers from the list of Gnus buffers (bug#18522).
54856 2016-02-25 Paul Eggert <eggert@cs.ucla.edu>
54858 Integer overflow cleanups for ports and socklen
54860 * src/process.c (struct sockaddr_and_len, conv_sockaddr_to_lisp)
54861 (get_lisp_to_sockaddr_size, Fset_process_datagram_address)
54862 (connect_network_socket):
54863 Use ptrdiff_t, not int, for signed object sizes.
54864 This addresses only a theoretical problem, as in practice these
54865 object sizes are less than 2**31, but we might as well use the
54866 same style here as elsewhere in Emacs.
54867 (string_integer_p): Remove; all uses removed.
54868 (Fmake_network_process): Check that port number is in range.
54869 When converting an integer-string service, rely on strtol
54870 rather than rechecking the string by hand.
54871 * src/process.h, src/w32.c (conv_sockaddr_to_lisp):
54872 Adjust prototypes to match.
54874 2016-02-24 Thierry Volpiatto <thierry.volpiatto@gmail.com>
54876 Add pcomplete support for find
54878 * lisp/pcmpl-gnu.el (pcomplete/find): Add pcomplete support
54879 for find (bug#10487).
54881 2016-02-24 Per Starbäck <starback@stp.lingfil.uu.se>
54883 Replace XXX acronyms with draft standard ones
54885 * lisp/international/characters.el (c1-acronyms): Replace XXX
54886 entries with the acronyms PAD, HOP, SGCI from draft DIS 10646
54889 2016-02-24 Kevin Ryde <user42@zip.com.au>
54891 Make checkdoc warn about variables described as "True"
54893 * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
54894 Docstrings for variables "True...", and functions "Return
54895 true...", should usually be "non-nil" (bug#15506).
54897 2016-02-24 Lars Ingebrigtsen <larsi@gnus.org>
54899 Add NEWS entry for "number string" change
54901 2016-02-24 Lars Ingebrigtsen <larsi@gnus.org>
54903 Allow using "number strings" as services on non-GNU systems
54905 * src/process.c (string_integer_p): New function.
54906 (Fmake_network_process): Use it to allow connecting to
54907 services specified as "993" even when getaddrbyname isn't
54910 2016-02-24 Michael Albinus <michael.albinus@gmx.de>
54912 Fix problem in tramp.texi
54914 * doc/misc/tramp.texi (File name completion): Do not use
54915 @trampfn{} for IPv6 addresses. Somehow, it results in errors
54916 during PDF creation.
54918 2016-02-23 Lars Ingebrigtsen <larsi@gnus.org>
54920 Make image commands available in image-mode
54922 * lisp/image-mode.el (image-mode-map): Inherit from
54923 `image-map' so that the usual image commands work.
54925 2016-02-23 Lars Ingebrigtsen <larsi@gnus.org>
54927 Move `o' to `O' in shr-map
54929 * lisp/net/shr.el (shr-map): `shr-save-contents' has moved
54930 from `o' to `O' to avoid collisions with `image-map'.
54932 2016-02-23 Lars Ingebrigtsen <larsi@gnus.org>
54934 Make setting the coding system non-blocking
54936 * src/process.c (Fset_process_filter_multibyte): Defer
54937 completing coding system setup in asynchronous processes.
54938 (Fset_process_coding_system): Ditto.
54940 2016-02-23 Gregoire Jadi <daimrod@gmail.com>
54942 Mention `proced-toggle-auto-update' in the proced-mode doc string
54944 * lisp/proced.el (proced-mode): Mention
54945 `proced-toggle-auto-update' (bug#14341).
54947 2016-02-23 Joshua Datko <jbdatko@gmail.com> (tiny change)
54949 Add a fortune-message command
54951 * lisp/play/fortune.el (fortune-message): Add a command to
54952 display fortunes in the echo area (bug#14915).
54954 2016-02-23 Susanne Oberhauser <froh@suse.com> (tiny change)
54956 Add hideshow bindings analogous to outline mode
54958 * lisp/progmodes/hideshow.el (hs-minor-mode-map): Add bindings
54959 analogous to outline mode bindings (bug#15324).
54961 2016-02-23 Bastien Guerry <bzg@altern.org>
54963 Allow highlighting things like @math{2^{12}}
54965 * lisp/textmodes/texinfo.el (texinfo-font-lock-keywords):
54966 Allow highlighting things like @math{2^{12}} (bug#16390).
54968 2016-02-23 Per Bothner <per@bothner.com>
54970 Make `C-{up,down,left,right}' work in term mode
54972 * lisp/term.el (term-raw-map): Define C-{up,down,left,right}
54973 to send the same escape sequence that xterm sends. This makes
54974 backward-word and forward-word work in readline (bug#16746).
54976 2016-02-23 Dima Kogan <dima@secretsauce.net>
54978 Allow ff-find-other-file (etc) to work with indirect clone buffers
54980 * lisp/find-file.el (ff-buffer-file-name): New function to
54981 allow the feature to work with indirect buffers, too
54983 (ff-find-the-other-file): Use it.
54984 (ff-other-file-name): Ditto.
54985 (ff-get-file-name): Ditto.
54987 2016-02-23 Lars Ingebrigtsen <larsi@gnus.org>
54989 Fix error in add-change-log-entry when the entry has no newline
54991 * lisp/vc/add-log.el (add-change-log-entry): The entry in the
54992 ChangeLog may end without a new line starting with blanks.
54994 2016-02-23 Lars Ingebrigtsen <larsi@gnus.org>
54996 Avoid using mm-util functoins in gravatar.el
54998 * lisp/image/gravatar.el (gravatar-retrieve): Avoid using
55000 (gravatar-retrieve-synchronously): Ditto.
55002 2016-02-23 Lars Ingebrigtsen <larsi@gnus.org>
55004 Move low-level library files from the lisp/gnus directory
55006 The files moved from lisp/gnus are:
55008 auth-source.el -> /
55009 compface.el -> /image
55011 flow-fill.el -> /mail
55012 gravatar.el -> /image
55014 html2text.el -> /net
55015 ietf-drums.el -> /mail
55016 mail-parse.el -> /mail
55017 mail-prsvr.el -> /mail
55023 rfc1843.el -> /international
55024 rfc2045.el -> /mail
55025 rfc2047.el -> /mail
55026 rfc2231.el -> /mail
55028 sieve-manage.el -> /net
55029 sieve-mode.el -> /net
55031 starttls.el -> /net
55032 utf7.el -> /international
55035 2016-02-23 Tino Calancha <f92capac@gmail.com>
55037 Allow undoing changes while doing query-replace
55039 * doc/lispref/searching.texi (Search and Replace): Mention
55042 * lisp/replace.el (query-replace-help): Document undo.
55043 (perform-replace): Implement undo while replacing text.
55045 2016-02-23 John F. Trudeau <JFTrudeau@aetna.com> (tiny change)
55047 Highlight assignments in Makefiles more correctly
55049 * lisp/progmodes/make-mode.el (makefile-macroassign-regex):
55050 Highlight assignments preceded by a TAB character correctly
55053 2016-02-23 Fredrik Bergroth <fbergroth@gmail.com> (tiny change)
55055 Use memmove instead of memcpy on overlapping regions
55057 * src/editfns.c (Ftranspose_regions): Regions may overlap, so
55058 use memmove instead of memcpy (bug#19213).
55060 2016-02-23 Paul Eggert <eggert@cs.ucla.edu>
55062 Port to --enable-gcc-warnings sans getaddrinfo_a
55064 * src/process.c (Fmake_network_process): Add ATTRIBUTE_UNUSED
55065 to a local unused when getaddrinfo_a is missing.
55066 Resize portbuf to size needed. Do cheap test first.
55067 Move local to block where it’s needed.
55069 2016-02-23 Paul Eggert <eggert@cs.ucla.edu>
55071 Minor cleanups for async DNS etc.
55073 * src/frame.h (FRAME_WINDOW_CONFIGURATION_CHANGED):
55074 Omit unnecessary parens.
55075 * src/gnutls.c (gnutls_try_handshake, emacs_gnutls_deinit)
55076 (gnutls_verify_boot):
55077 Use bool for boolean.
55078 (ATTRIBUTE_FORMAT_PRINTF): Add printf attribute.
55079 * src/process.c (free_dns_request, Fmake_network_process):
55080 Allocate and free async request control block all in one go.
55081 (set_network_socket_coding_system, finish_after_tls_connection)
55082 (connect_network_socket):
55084 (conv_numerical_to_lisp): 2nd arg is now int, not unsigned.
55085 (Fmake_network_process): Use list1 for brevity.
55086 (wait_for_socket_fds): 2nd arg is now const ptr.
55087 * src/process.h (struct Lisp_Process.dns_request):
55088 Now struct gaicb *, not struct gaicb **, since there was always
55089 exactly one. All uses changed.
55090 * src/window.c, src/window.h (run_window_configuration_change_hook):
55093 2016-02-23 Carlos Pita <carlosjosepita@gmail.com>
55095 Allow more shell script defun forms
55097 * lisp/progmodes/sh-script.el (sh-mode): Allow more shell
55098 script defun forms, like function name () {...} (bug#19754).
55100 2016-02-23 Martin Rudalics <rudalics@gmx.at>
55102 Fix `window-configuration-change-hook' and `window-size-change-functions'
55104 (1) Run `window-configuration-change-hook' if and only if at least
55105 one window was deleted or created or shows another buffer since
55108 (2) Run `window-size-change-functions' if and only if at least
55109 one window changed its size since last redisplay (in a few cases
55110 `window-size-change-functions' will also run when no window
55113 (3) Provide two functions `window-pixel-height-before-size-change'
55114 and `window-pixel-width-before-size-change' that allow to easily
55115 detect which window changed size.
55117 * src/frame.h (struct frame): New boolean member
55118 window_configuration_changed.
55119 (FRAME_WINDOW_SIZES_CHANGED): Remove macro.
55120 (FRAME_WINDOW_CONFIGURATION_CHANGED): New macro.
55121 * src/frame.c (adjust_frame_size): Don't run
55122 `window-configuration-change-hook'.
55123 * src/window.h (struct window): New fields
55124 pixel_width_before_size_change and pixel_height_before_size_change.
55125 (WINDOW_INTERNAL_P): New macro.
55126 * src/window.c (Fwindow_pixel_width_before_size_change)
55127 (Fwindow_pixel_height_before_size_change): New functions.
55128 (Fdelete_other_windows_internal, Fwindow_resize_apply)
55129 (resize_frame_windows, Fsplit_window_internal)
55130 (Fdelete_window_internal, grow_mini_window)
55131 (shrink_mini_window, Fresize_mini_window_internal): Don't call
55132 FRAME_WINDOW_SIZES_CHANGED.
55133 (window_size_changed, window_set_before_size_change_sizes)
55134 (run_window_size_change_functions): New functions.
55135 (make_window): Initialize pixel_width_before_size_change and
55136 pixel_height_before_size_change.
55137 (Fdelete_window_internal): Don't call
55138 run_window_configuration_change_hook.
55139 (struct saved_window): Add pixel_height_before_size_change and
55140 pixel_width_before_size_change.
55141 (Fset_window_configuration): Try to identify window configuration
55142 changes correctly so run_window_configuration_change_hook and
55143 run_window_size_change_functions run only if configuration and size
55145 (save_window_save): Set the pixel_height_before_size_change and
55146 pixel_width_before_size_change fields.
55147 (Vwindow_size_change_functions): Move here definition from xdisp.c.
55148 * src/xdisp.c (prepare_menu_bars, redisplay_internal): Call
55149 run_window_size_change_functions.
55150 (Vwindow_size_change_functions): Move definition to window.c.
55151 * src/xfns.c (x_set_menu_bar_lines): Don't call
55152 run_window_configuration_change_hook.
55153 * doc/lispref/windows.texi (Window Sizes): Document new
55154 functions `window-pixel-height-before-size-change' and
55155 `window-pixel-width-before-size-change'.
55156 (Window Configurations): Mention that this may trigger
55157 execution of `window-size-change-functions' although no window
55159 (Window Hooks): Update descriptions of `window-size-change-functions'
55160 and `window-configuration-change-hook'.
55162 2016-02-23 Drew Adams <drew.adams@oracle.com>
55164 (ls-lisp-insert-directory): Make -B work
55166 * lisp/ls-lisp.el (ls-lisp-insert-directory): Make -B work
55169 2016-02-23 Lars Ingebrigtsen <larsi@gnus.org>
55171 Fix typo in message-setup-fill-variables
55173 * lisp/gnus/message.el (message-setup-fill-variables): Fix
55174 typo in a recent checkin that used `setq-default' instead of
55175 `setq-local' (bug#22781).
55177 2016-02-23 Lars Ingebrigtsen <larsi@gnus.org>
55179 `message-dont-reply-to-names' can also be a list of regexps
55181 * lisp/gnus/message.el (message-dont-reply-to-names):
55182 `message-dont-reply-to-names' can also be a list of regexps (bug#22773).
55184 2016-02-23 Vaidheeswaran C <vaidheeswaran.chinnaraju@gmail.com>
55186 Make buttons in header lines work
55188 * lisp/help-mode.el (help-button-action): `help-xref-button' in
55189 header line doesn't work (bug#21024).
55191 2016-02-23 Vasilij Schneidermann <v.schneidermann@gmail.com>
55193 Place apples randomly in Snake
55195 * lisp/play/snake.el (snake-score): New variable (bug#21359).
55196 (snake-set-dot): Place the apples randomly.
55198 2016-02-23 Tino Calancha <f92capac@gmail.com>
55200 Allow optional parameter to be nil
55202 * lisp/ibuf-ext.el (ibuffer-copy-filename-as-kill): Allow the
55203 optional parameter to be nil (bug#21576).
55205 2016-02-23 Tino Calancha <f92capac@gmail.com>
55207 Completely ignore buffers with no name when copying file names
55209 * lisp/ibuf-ext.el (ibuffer-copy-filename-as-kill): Completely
55210 ignore buffers with no file name. (bug#21577).
55212 2016-02-23 Lars Ingebrigtsen <larsi@gnus.org>
55214 Make spelling of "Eshell" consistent
55216 * lisp/eshell/esh-mode.el (eshell-mode): Spell it "Eshell".
55217 * lisp/eshell/eshell.el (eshell-command):
55218 Spell it "Eshell" (bug#21678).
55220 2016-02-23 Simen Heggestøyl <simenheg@gmail.com>
55222 Allow pretty lambdas in Scheme mode
55224 * lisp/progmodes/scheme.el (scheme-mode-variables): Borrow
55225 `prettify-symbols-alist' from Lisp mode (bug#21679).
55227 2016-02-23 Lars Ingebrigtsen <larsi@gnus.org>
55229 Rename lisp--prettify-symbols-alist
55231 * lisp/emacs-lisp/lisp-mode.el (lisp-prettify-symbols-alist):
55232 Rename from `lisp--prettify-symbols-alist' since we're going
55233 to use it in Scheme mode, too.
55234 (lisp-mode-variables): Use it.
55236 2016-02-23 Chunyang Xu <xuchunyang56@gmail.com> (tiny change)
55238 Remove spurious newline in package list
55240 * lisp/emacs-lisp/package.el (describe-package-1): Remove
55241 spurious newline (bug#21706).
55243 2016-02-23 Lars Ingebrigtsen <larsi@gnus.org>
55245 Revert "Remove spurious newline in package list"
55247 This reverts commit fad14c289d36a2c61e0fd34105ebb1f62c80d71d.
55249 2016-02-23 Chunyang Xu <xuchunyang56@gmail.com>
55251 Remove spurious newline in package list
55253 * lisp/emacs-lisp/package.el (describe-package-1): Remove
55254 spurious newline (bug#21706).
55256 2016-02-22 Tino Calancha <f92capac@gmail.com> (tiny change)
55258 Keep the position in the process buffer when deleting processes
55260 * lisp/simple.el (process-menu-delete-process): Keep the
55261 position in the buffer after killing a process (bug#21759).
55263 2016-02-22 Lars Ingebrigtsen <larsi@gnus.org>
55265 Require that the buffer that we're trying to patch exist
55267 * lisp/vc/ediff.el (ediff-patch-buffer): Require that the
55268 buffer that we're trying to patch exist (bug#21852).
55270 2016-02-22 Tino Calancha <f92capac@gmail.com> (tiny change)
55272 Require that the buffer that we're trying to patch exist
55274 * lisp/vc/ediff.el (ediff-patch-buffer): Require that the
55275 buffer that we're trying to patch exist (bug#21852).
55277 2016-02-22 Tino Calancha <f92capac@gmail.com> (tiny change)
55279 Be more verbose when changing frame mode in ediff
55281 * lisp/vc/ediff-util.el (ediff-toggle-multiframe): Say what
55282 mode we toggled to (bug#21853).
55284 2016-02-22 Łukasz Stelmach <stlman@poczta.fm>
55286 Encode header strings before printing
55288 * lisp/ps-print.el (ps-generate-header-line): Encode the
55289 header strings to avoid problems with non-ASCII headers
55292 2016-02-22 Michal Nazarewicz <mina86@mina86.com>
55294 Test message-strip-subject-trailing-was
55296 * test/lisp/gnus/message-tests.el (message-strip-subject-trailing-was):
55297 New test (bug#22632).
55299 2016-02-22 Michal Nazarewicz <mina86@mina86.com>
55301 Make use of the `ert-with-function-mocked' macro
55303 * test/lisp/calendar/icalendar-tests.el (icalendar--create-uid):
55304 * test/lisp/vc/vc-bzr-tests.el (vc-bzr-test-bug9781): Use
55305 `ert-with-function-mocked' instead of implementing the fragile
55306 `unwind-protect' logic openly.
55308 2016-02-22 Michal Nazarewicz <mina86@mina86.com>
55310 message-strip-subject-trailing-was: Refactor
55312 * lisp/gnus/message.el (message-strip-subject-trailing-was): Refactor
55313 the function replacing sequence of `if' calls with a mixture of `or'
55314 and `and' calls instead. This makes it shorter and containing less
55315 internal state thus easier to follow.
55317 2016-02-22 Michal Nazarewicz <mina86@mina86.com>
55319 ert-with-function-mocked: New macro
55321 * lisp/emacs-lisp/ert-x.el (ert-with-function-mocked): New macro which
55322 allows evaluating code while particular function is replaced with
55323 a mock. The original definition of said function is restored once the
55326 2016-02-22 Lars Ingebrigtsen <larsi@gnus.org>
55328 Move Gnus functions frm rfc1843 to new file gnus-rfc1843
55330 * lisp/gnus/gnus-rfc1843.el: New file for Gnus/rfc1843
55331 interface functions.
55333 * lisp/gnus/gnus-rfc1843.el: Move all Gnus-specifig functions to
55336 2016-02-22 Lars Ingebrigtsen <larsi@gnus.org>
55338 Don't use mm-util functions in qp.el
55340 * lisp/gnus/qp.el (quoted-printable-decode-region): Don't use
55342 (quoted-printable-encode-string): Ditto.
55343 (quoted-printable-encode-region): Ditto.
55345 2016-02-22 Lars Ingebrigtsen <larsi@gnus.org>
55347 Don't require mm-util
55349 * lisp/mail/ietf-drums.el (mm-util): Don't require.
55351 2016-02-22 Lars Ingebrigtsen <larsi@gnus.org>
55353 Remove Gnus functions from auth-source.el
55355 * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
55356 Remove usage of Gnus utility function.
55357 (mm-util, gnus-util): Don't require.
55359 2016-02-22 Lars Ingebrigtsen <larsi@gnus.org>
55361 Allow deleting all non-matching cookies
55363 * lisp/url/url-cookie.el (url-cookie-delete-cookies): Allow
55364 keeping matching cookies (bug#22720).
55366 2016-02-22 Lars Ingebrigtsen <larsi@gnus.org>
55368 Make (setf (image-property ...)) return VALUE
55370 * lisp/image.el (image--set-property): Return VALUE, not IMAGE.
55372 2016-02-22 John Wiegley <johnw@newartisans.com>
55374 Merge from origin/emacs-25
55376 a9c48d5 Additional fixes for file notification
55377 6bd9d69 Fix documentation of 'global-disable-point-adjustment'
55378 8c22ac9 ; Spelling fix
55379 2975784 Set file modes of pinentry socket for extra safety
55380 2667b3e Clarify GnuPG version compatibility chapter
55381 5e34c36 Revert "Change the default socket location for pinentry"
55382 e19c1c3 Kill off xref--display-history
55383 5698947 Keep the xref buffer visible until the user quits it explicitly
55384 e34fbde Change the default socket location for pinentry
55385 5f89658 Mention how to enable pinentry feature
55386 db51224 Sync with gnulib
55387 aa5a794 Remove `semanticdb-save-all-db-idle' from `auto-save-hook'
55388 2d8b2fd Restore point when writing semantic table to disk
55389 27d3430 Mention pinentry.el in epa manual
55390 5baa001 Fix Bug#22736
55391 7261355 Grammar fix in doc string
55392 d0f3b18 Naming fix for consistency
55393 74ec92d Prefer customized value for GnuPG executable
55394 ea0b604 Fix memory reservation on MS-Windows
55395 c5f72aa Update NextStep readme and add wish list.
55396 6de26a7 Report also result in `file-notify--test-event-handler'
55397 5d17ae7 Improve file-notify-test08-watched-file-in-watched-dir
55398 1cb1268 Fix todo-mode item date editing bugs
55399 1e996cf Fix "[:upper:]" for non-ASCII characters
55400 896f993 Allow customizing the article mode cursor behavior
55401 24c1c1d Use pop-to-buffer-same-window in woman.el
55402 2a75f64 New filenotify test for bug#22736
55403 c9bccf7 Report critical battery errors
55404 d675db9 Make eww message toggling message clearer
55405 5e0bb40 * lisp/calc/calc-units.el (math-standard-units): Update to 2014 CODATA adjustment.
55406 fa8fd65 ; Improve character-folding entries in NEWS
55407 3722a69 Fix bugs in window resizing code
55408 289d5c6 Fix decoding DOS EOL in a unibyte buffer
55409 2abcb06 Correct c-parse-state cache manipulation error.
55410 14aec91 Take advantage of new GnuPG version check function
55411 e80c2a7 Make GnuPG version check robuster
55412 15a9464 Fix x-load-color-file pointer signedness
55413 132dbf0 * lisp/time-stamp.el (time-stamp-time-zone): Fix doc string punct.
55414 78ab6f1 Follow convention for greek letter constants.
55415 106b5bb Add Stefan-Boltzmann constant to calc units table.
55416 b96baa8 * lisp/calc/calc-units.el (math-build-units-table-buffer): Use special-mode.
55417 5f91cf9 Avoid loading cl-lib for term/xterm.elc, eg in -Q -nw. (Bug#22669)
55418 2d40f7d Fix soffice UserInstallation-URL for Windows
55419 b1a3ebe Fix display of <pre> elements
55420 57d0e3d ; * lisp/help-fns.el: Remove outdated comment.
55421 7a0628d ; * admin/make-tarball.txt: Mention cleaning.
55423 2016-02-22 Oleh Krehel <ohwoeowho@gmail.com>
55425 lisp/calendar/appt.el (appt-delete-window): Check if buffer is live
55427 * lisp/calendar/appt.el (appt-delete-window): Avoid trying to delete a
55428 non-existing buffer.
55430 2016-02-21 Lars Ingebrigtsen <larsi@gnus.org>
55432 Mention the further asynchronousity
55434 2016-02-21 Lars Ingebrigtsen <larsi@gnus.org>
55436 Fix async TLS boot problem
55438 * src/process.c (wait_reading_process_output): Verify the boot
55439 of the correct process.
55441 2016-02-21 Lars Ingebrigtsen <larsi@gnus.org>
55443 Clean up forgotten text in manual
55445 * doc/lispref/display.texi (Defining Images): Remove example
55446 forgotten when making previous change.
55448 2016-02-21 Lars Ingebrigtsen <larsi@gnus.org>
55450 Clean up debugging code
55452 * src/process.c (Fmake_network_process): Remove debugging printf.
55453 (wait_for_socket_fds, wait_while_connecting)
55454 (wait_for_tls_negotiation): Remove newlines from messages.
55456 2016-02-21 Lars Ingebrigtsen <larsi@gnus.org>
55458 Fix merge conflicts in network-stream-tests.el
55460 2016-02-21 Paul Eggert <eggert@penguin.cs.ucla.edu>
55462 Port recent filevercmp addition to MS-Windows
55464 Reported by Andy Moreton in:
55465 https://lists.gnu.org/r/emacs-devel/2016-02/msg01302.html
55466 * nt/gnulib.mk (libgnu_a_SOURCES): Add filevercmp.c.
55467 (EXTRA_DIST): Add filevercmp.h.
55469 2016-02-21 Lars Ingebrigtsen <larsi@gnus.org>
55471 add_to_log expects Lisp parameters
55473 2016-02-21 Lars Ingebrigtsen <larsi@gnus.org>
55475 Mention sentinels in conjunction with :nowait t.
55477 * doc/lispref/processes.texi (Network Processes): Mention the
55478 recommended way of using sentinels with :nowait t.
55480 2016-02-21 Lars Ingebrigtsen <larsi@gnus.org>
55482 Mention in the doc strings that process functions may block
55484 (Fprocess_contact, Fprocess_datagram_address)
55485 (Fset_process_datagram_address, Fset_network_process_option)
55486 (Fprocess_send_region, Fprocess_send_string): Mention that the
55487 functions may block.
55488 (Fset_process_coding_system): Ditto.
55490 2016-02-21 Lars Ingebrigtsen <larsi@gnus.org>
55492 Add blocker warnings to the *Messages* buffer
55494 * src/process.c (wait_for_socket_fds): Add warning to the log.
55495 (wait_while_connecting): Ditto.
55496 (wait_for_tls_negotiation): Ditto.
55498 2016-02-21 Lars Ingebrigtsen <larsi@gnus.org>
55500 Rework the image property getter/setters
55502 * doc/lispref/display.texi (Defining Images): Document the
55503 renamed `image-get/set-property' functions.
55505 * lisp/image.el (image--set-property): Rename from
55506 image-set-property.
55507 (image-property): Declare a setf form.
55508 (image-property): Rename from `image-get-property'.
55510 2016-02-21 Paul Eggert <eggert@cs.ucla.edu>
55512 Use Gnulib filevercmp for version comparison
55514 * admin/merge-gnulib (GNULIB_MODULES): Add filevercmp.
55515 * doc/lispref/strings.texi (Text Comparison):
55516 * etc/NEWS, src/fns.c:
55517 * test/src/fns-tests.el (fns-tests-string-version-lessp):
55518 Rename newly-introduced function to string-version-lessp, by
55519 analogy with strverscmp.
55520 * lib/filevercmp.c, lib/filevercmp.h: New files, copied from gnulib.
55521 * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
55522 * src/fns.c: Include <filevercmp.h>.
55523 (gather_number_from_string): Remove.
55524 (Fstring_version_lessp): Reimplement via filevercmp.
55526 2016-02-20 Lars Ingebrigtsen <larsi@gnus.org>
55528 Add a function to delete URL cookies
55530 * doc/misc/url.texi (Cookies): Document
55531 url-cookie-delete-cookies.
55533 * lisp/url/url-cookie.el (url-cookie-delete-cookies): New function.
55535 2016-02-20 Lars Ingebrigtsen <larsi@gnus.org>
55537 Avoid integer overflows in string-numeric-lessp
55539 * src/fns.c (Fstring_numeric_lessp): If we have an integer
55540 overflow, compare lexicographically.
55542 2016-02-20 Lars Ingebrigtsen <larsi@gnus.org>
55544 Add the string-numeric-lessp function
55546 * doc/lispref/strings.texi (Text Comparison): Document
55547 `string-numerical-lessp'.
55549 * src/fns.c (Fstring_numeric_lessp): New function.
55550 (gather_number_from_string): Helper function for that function.
55552 * test/src/fns-tests.el (fns-tests-string-numeric-lessp): Add tests.
55554 2016-02-20 Lars Ingebrigtsen <larsi@gnus.org>
55556 Clarify levels of :nowait t.
55558 * doc/lispref/processes.texi (Network Processes): Mention
55559 levels of asynchronicity.
55561 2016-02-20 Alain Schneble <a.s@realize.ch>
55563 Respect DNS timeouts
55565 * src/process.c (check_for_dns): If the async DNS request
55566 failed and the associated process is still in "connect" state,
55567 deactivate the process and set status to "failed".
55569 2016-02-19 Lars Ingebrigtsen <larsi@gnus.org>
55571 Add a frame around the placeholder image in shr
55573 * lisp/net/shr.el (shr-make-placeholder-image): Add a frame
55576 2016-02-19 Lars Ingebrigtsen <larsi@gnus.org>
55578 Use placeholder images in shr to avoid text moving around
55580 * lisp/net/shr.el (shr-rescale-image): Pass in width/height
55582 (shr-tag-img): Ditto.
55583 (shr-string-number): New function.
55584 (shr-make-placeholder-image): Make placeholder images.
55585 (shr-tag-img): Insert them if we have SVG support.
55587 2016-02-19 Lars Ingebrigtsen <larsi@gnus.org>
55589 Get explicit width/height + scale computations right
55591 * src/image.c (compute_image_size): :scale should also be
55592 taken into account when :width and :height are explicitly names.
55594 2016-02-19 Lars Ingebrigtsen <larsi@gnus.org>
55596 New functions for getting and setting image properties
55598 * doc/lispref/display.texi (Defining Images): Document
55599 image-get/set-property.
55601 * lisp/image.el (image-set-property): New function.
55602 (image-get-property): Ditto.
55604 2016-02-19 Alan Mackenzie <acm@muc.de>
55606 Await the final mouse event in C-h c and C-h k.
55608 * lisp/help.el (describe-key-briefly, describe-key): On receiving a mouse
55609 event, keep reading further events until a timeout occurs, to ensure we have
55610 the complete mouse event from the user.
55612 2016-02-18 Lars Ingebrigtsen <larsi@gnus.org>
55614 Add a library for creating and manipulating SVG images
55616 * doc/lispref/display.texi (SVG Images): New section.
55618 * lisp/svg.el: New file.
55620 2016-02-18 Lars Ingebrigtsen <larsi@gnus.org>
55622 Fix up tests for async TLS negotiation
55624 2016-02-18 Lars Ingebrigtsen <larsi@gnus.org>
55626 Fix coding system setup
55628 * src/process.c (set_network_socket_coding_system): Pass in
55629 the host/service that's been computed already.
55631 2016-02-18 Michael Albinus <michael.albinus@gmx.de>
55633 Reference `tramp-theme' in GNU ELPA.
55635 * doc/misc/tramp.texi (Frequently Asked Questions):
55636 Reference `tramp-theme' in GNU ELPA.
55638 2016-02-17 Lars Ingebrigtsen <larsi@gnus.org>
55640 Verify the TLS connection asynchronously
55642 * src/gnutls.c (gnutls_verify_boot): Refactor out into its own
55643 function so that we can call it asynchronously.
55644 (Fgnutls_boot): Use it.
55646 * src/process.c (wait_reading_process_output): Verify the TLS
55649 2016-02-16 Simen Heggestøyl <simenheg@gmail.com>
55651 Add column layout module to CSS property list
55653 * lisp/textmodes/css-mode.el (css-property-ids): Add properties from
55654 CSS Multi-column Layout Module.
55656 2016-02-16 Michael Albinus <michael.albinus@gmx.de>
55658 Minor cleanup in CONTRIBUTE and test/README
55660 * CONTRIBUTE: Remove detailed explanation about testing; this
55661 is now in test/README.
55663 * test/README: Don't mention automated/ subdirectory.
55665 2016-02-15 Glenn Morris <rgm@gnu.org>
55667 Provide 'term/name in lisp/term files.
55669 * lisp/term/AT386.el, lisp/term/bobcat.el, lisp/term/cygwin.el:
55670 * lisp/term/internal.el, lisp/term/iris-ansi.el, lisp/term/linux.el:
55671 * lisp/term/lk201.el, lisp/term/news.el, lisp/term/ns-win.el:
55672 * lisp/term/pc-win.el, lisp/term/rxvt.el, lisp/term/screen.el:
55673 * lisp/term/sun.el, lisp/term/tty-colors.el, lisp/term/tvi970.el:
55674 * lisp/term/vt100.el, lisp/term/vt200.el, lisp/term/w32-win.el:
55675 * lisp/term/w32console.el, lisp/term/wyse50.el, lisp/term/x-win.el:
55676 For consistency, provide 'term/name in all files that don't already.
55678 2016-02-15 Lars Ingebrigtsen <larsi@gnus.org>
55680 Deactivate the correct process
55682 * src/process.c (wait_reading_process_output): Deactivate the
55683 correct process on failure.
55685 2016-02-15 Lars Ingebrigtsen <larsi@gnus.org>
55687 Implement asynch TLS negotiation
55689 * src/gnutls.c (gnutls_try_handshake): Factor out into its own
55691 (emacs_gnutls_handshake): Use it.
55692 (emacs_gnutls_read): Just return instead of retrying the handshake.
55694 * src/process.c (finish_after_tls_connection): Factor out
55695 into its own function.
55696 (connect_network_socket): Use it.
55697 (wait_reading_process_output): Retry TLS handshakes.
55698 (wait_reading_process_output): Defer sentinel until TLS completes.
55700 2016-02-15 Lars Ingebrigtsen <larsi@gnus.org>
55702 Simplify the DNS resolution loop a bit
55704 * src/process.c (wait_reading_process_output): Simplify the
55705 DNS resolution loop a bit.
55707 2016-02-15 Alain Schneble <a.s@realize.ch>
55709 Loop over the process list instead of maintaining a separate list
55711 * src/process.c: Remove declaration/definition of dns_processes list.
55712 * src/process.c (wait_reading_process_output): Loop over all processes in
55713 Vprocess_alist instead of dns_processes, to check for completed DNS
55716 2016-02-15 Lars Ingebrigtsen <larsi@gnus.org>
55718 Allow setting the filter masks later
55720 * src/process.c (Fset_process_filter): Don't set the socket
55721 masks here, because we may not have a socket yet.
55722 (set_process_filter_masks): New function.
55723 (connect_network_socket): Set the filter masks here.
55725 2016-02-15 Lars Ingebrigtsen <larsi@gnus.org>
55729 2016-02-15 Lars Ingebrigtsen <larsi@gnus.org>
55731 Ensure we always free DNS resources when deleting a process
55733 * src/process.c (free_dns_request): Factor out into own function.
55734 (Fdelete_process): When deleting a process, free any DNS
55735 structures associated with it.
55736 (check_for_dns): Always free all DNS resources.
55738 2016-02-15 Alain Schneble <a.s@realize.ch>
55740 Don't block in set-process-window-size
55742 * src/process.c (set-process-window-size): Explicitly return Qnil when
55743 called with network processes as set_window_size won't work anyway on
55744 socket fds. As a welcome side effect, this makes the blocking
55745 wait_for_socket_fds call obsolete.
55747 2016-02-15 Lars Ingebrigtsen <larsi@gnus.org>
55749 Do most of the coding system setup earlier
55751 * src/process.c (Fmake_network_process): Set the read/write
55752 coding systems here, so that special bindings work.
55753 (Fmake_network_process): Complete the coding system setup here.
55755 2016-02-15 John Wiegley <johnw@newartisans.com>
55757 Merge from origin/emacs-25
55759 d4b93e1 Minor fixes in global-auto-composition-mode
55760 02b037b Allow arithmetic operators inside C++ template constructs.
55761 44b16f6 Avoid crashes in semi-malformed 'condition-case'
55762 652e5b4 Allow arithmetic operators inside C++ template constructs.
55763 d9ea795 Fix regression with 'recent-keys' and keyboard macros
55764 903603f Fix wording in a doc-view.el comment
55765 cf79616 ; Spelling fixes
55766 f8bf1b3 CONTRIBUTE cleanups and updates
55767 f3aaca3 Port USE_STACK_LISP_OBJECTS fix to Clang
55768 1834ac7 Port to x86 GCC 4.3.1 and earlier
55769 8482949 Fix point movement under 'scroll-conservatively'
55770 c1313b5 Replace colon in file name (not legal on Windows)
55771 f7af26c Fix a typo in edt.texi
55772 8badf95 Make 'mmap_realloc' on MS-Windows more reliable
55773 856cd94 Grep alias `all' shall not match parent directory
55775 2016-02-15 John Wiegley <johnw@newartisans.com>
55777 Merge from origin/emacs-25
55779 dacde7e * etc/AUTHORS: Update the AUTHORS file
55780 478ca5d ; fix changelog entries
55781 2b7d006 ; make change-history-commit
55782 851decb * lisp/dired-aux.el: Require cl-lib. (Bug#22613)
55783 47896c8 ; Improve commentary in insdel.c
55784 53ca1e1 Index tilde characters in names of backup files
55785 d97f522 Document deprecation of hi-lock-mode's 'C-x w' bindings
55786 b55f06d ; * etc/NEWS: Use double spaces to end a sentence.
55787 28bb214 Announce that the `C-x w' bindings are deprecated
55788 1c98f98 Suppress GNUstep hardening
55789 d82f24b Fix redisplay after a large insertion
55790 85a2753 Revert "Fix gnus-group-get-new-news-this-group on group with
55792 e8e3db0 ; Improve merge documentation in CONTRIBUTE
55793 5be9989 * lib-src/make-docfile.c: Include stdarg.h.
55794 c95ebbf Extend gpm-mouse-mode's doc string and doc to point out
55797 2016-02-15 John Wiegley <johnw@newartisans.com>
55799 Merge from origin/emacs-25
55801 f5d6b9b Revert "Support integer image rotation and respect EXIF rotations"
55802 afe7d1f Revert "Document EXIF image rotation"
55803 c6f377c Document OS X LANG default
55804 eb4a18c Set locale when run from OS X GUI
55805 456c0a3 make-docfile cleanup for I/O, etc.
55806 25ec995 Memory-management cleanup in make-docfile
55807 02d925e Kevin Gallagher has new email address
55808 4ef153b Improve doc strings of 'forward/backward-word-strictly'
55809 3ad05a0 Describe Makefile test targets in test/README
55811 2016-02-15 John Wiegley <johnw@newartisans.com>
55813 Merge from origin/emacs-25
55815 10b8ed2 Document EXIF image rotation
55816 0f60049 Support integer image rotation and respect EXIF rotations
55817 7dd45b6 Quote table names for postgres listings (sql-mode)
55818 6bac035 * lisp/replace.el (replace-match-maybe-edit): Make arg
55819 `backward' optional.
55820 ee909aa * lisp/simple.el (next-line-or-history-element): Reset
55821 temporary-goal-column.
55822 0a289d3 Suppress ACL ops if configured with --disable-acl
55823 1a9dbf5 Mention web bugs
55824 fa55da2 Make mm-html-blocked-images default to "" again
55826 2016-02-15 Lars Ingebrigtsen <larsi@gnus.org>
55828 Protect against initial handshake failures
55830 * src/process.c (connect_network_socket): Mark the connection
55831 as failed if the handshake didn't succeed yet. This should be
55834 2016-02-14 Lars Ingebrigtsen <larsi@gnus.org>
55836 Call the network security manager after doing TLS negotiation
55838 * lisp/net/network-stream.el (network-stream-open-tls):
55839 Postpone NSM verification when running async.
55841 * src/process.c (Fset_process_filter): This function doesn't
55843 (connect_network_socket): Set the process status to "run" only
55844 after TLS negotiation.
55845 (wait_for_socket_fds): Take a name parameter for more debugging.
55846 (wait_reading_process_output): Don't change status to "run"
55847 unless TLS negotiation has finished.
55848 (send_process): Wait for the process here instead of
55849 send_process_string.
55850 (connect_network_socket): Call the network security manager.
55852 2016-02-14 Lars Ingebrigtsen <larsi@gnus.org>
55854 Remove some #ifdefs and update documentation
55856 * doc/lispref/processes.texi (Network Processes): Remove
55859 * lisp/net/network-stream.el (open-network-stream): Remove
55862 * src/process.c (Fset_process_filter)
55863 (Fset_process_window_size, Fprocess_contact)
55864 (Fprocess_datagram_address, Fset_process_datagram_address)
55865 (Fset_network_process_option, Fprocess_send_region)
55866 (Fprocess_send_string, Fset_process_coding_system)
55867 (Fset_process_filter_multibyte): Remove the #ifdef
55868 HAVE_GETADDRINFO_A checks.
55869 (Fprocess_send_string): Wait for TLS negotiation.
55870 (wait_for_tls_negotiation): New function.
55871 (send_process): Remove the TLS boot check.
55873 * src/process.c (Fmake_network_process): Ditto.
55875 2016-02-14 Lars Ingebrigtsen <larsi@gnus.org>
55877 Use :nowait t in url-gw
55879 * lisp/url/url-gw.el (url-open-stream): Just use :nowait t,
55880 since we're not differentiating.
55882 2016-02-14 Alain Schneble <a.s@realize.ch>
55884 Add blockers to process functions
55886 * src/process.c (set-process-filter, set-process-window-size,
55887 process-contact, process-datagram-address, set-process-datagram-address,
55888 set-network-process-option): Make functions wait (block) on network
55889 process until pending DNS requests have been processed and associated
55890 socket initialized.
55892 * src/process.c (process-send-region, process-send-string,
55893 process-send-eof): Make functions wait (block) while network process is
55896 2016-02-14 Simen Heggestøyl <simenheg@gmail.com>
55898 Add fragmentation module to CSS property list
55900 * lisp/textmodes/css-mode.el (css-property-ids): Add properties from
55901 CSS Fragmentation Module Level 3.
55903 2016-02-14 Nicolas Petton <nicolas@petton.fr>
55905 * doc/lispref/sequences.texi: Add documentation for seq-map-indexed
55907 2016-02-14 Nicolas Petton <nicolas@petton.fr>
55909 New function seq-map-indexed
55911 * lisp/emacs-lisp/seq.el (seq-map-indexed): New function.
55912 * test/lisp/emacs-lisp/seq-tests.el: Add tests for seq-map-indexed.
55914 2016-02-13 Lars Ingebrigtsen <larsi@gnus.org>
55916 * lisp/gnus/mm-util.el: Remove the mm-string-as-multibyte alias.
55918 2016-02-13 Lars Ingebrigtsen <larsi@gnus.org>
55920 Fix problem with wrong encoding of non-ASCII message bodies
55922 * lisp/gnus/mml.el (mml-generate-mime-1): Disable
55923 multibyteness before encoding the data.
55925 2016-02-13 Lars Ingebrigtsen <larsi@gnus.org>
55927 Remove codepage setup code from mm-util
55929 * lisp/gnus/mm-util.el (mm-codepage-setup): Remove.
55930 (mm-codepage-iso-8859-list): Remove.
55931 (mm-codepage-ibm-list, mm-setup-codepage-iso-8859)
55932 (mm-setup-codepage-ibm): Remove.
55933 (mm-charset-eval-alist): Remove the code pages from the
55936 2016-02-13 Lars Ingebrigtsen <larsi@gnus.org>
55938 Remove compat code for older Emacsen
55940 * lisp/gnus/gnus-art.el (gnus-button-url-regexp): Remove
55941 XEmacs compat code.
55943 * lisp/gnus/gnus-sync.el (gnus-sync-json-alist-p): Remove
55944 unused compat function.
55945 (gnus-sync-json-plist-p): Ditto.
55947 * lisp/gnus/message.el (message-default-charset): Make obsolete.
55948 (message-info): Remove compat code.
55949 (message-setup-fill-variables): Remove kludge needed earlier
55950 to not overwrite `normal-auto-fill-function'.
55951 (message-split-line): Remove compat code.
55953 * lisp/gnus/mm-view.el (mm-display-inline-fontify): Remove
55956 2016-02-13 Lars Ingebrigtsen <larsi@gnus.org>
55958 Remove some compat functions from gmm-utils.el
55960 * lisp/gnus/gmm-utils.el (gmm-tool-bar-from-list): Remove
55962 (gmm-image-search-load-path): Remove.
55963 (gmm-image-load-path-for-library): Remove.
55965 2016-02-13 Lars Ingebrigtsen <larsi@gnus.org>
55967 Remove the gmm-lazy and nnmail-lazy compat widgets
55969 * lisp/gnus/gmm-utils.el (gmm-lazy): Remove.
55971 * lisp/gnus/nnmail.el (nnmail-lazy): Remove.
55973 2016-02-13 Lars Ingebrigtsen <larsi@gnus.org>
55975 Clean up nnimap-request-move-article slightly
55977 * lisp/gnus/nnheader.el (subr-x): Require.
55979 * lisp/gnus/nnimap.el (nnimap-request-move-article): Clean up
55982 2016-02-13 Lars Ingebrigtsen <larsi@gnus.org>
55984 Use open-network-stream instead of open-protocol-stream
55986 * lisp/gnus/nnimap.el: Use open-network-stream instead of
55987 open-protocol-stream.
55989 * lisp/gnus/nntp.el: Ditto.
55991 * lisp/gnus/pop3.el: Ditto.
55993 * lisp/net/sieve-manage.el: Ditto.
55995 * lisp/net/network-stream.el (open-protocol-stream): Make obsolete.
55997 2016-02-13 Lars Ingebrigtsen <larsi@gnus.org>
55999 Remove compat code that relies on (featurep 'mule)
56001 * lisp/gnus/gnus-group.el (gnus-group-name-decode): Remove
56004 * lisp/gnus/gnus-start.el (gnus-read-descriptions-file):
56005 Remove compat code.
56007 * lisp/gnus/mm-bodies.el (mm-decode-body, mm-decode-string):
56008 Remove compat code.
56010 * lisp/gnus/mm-view.el (mm-w3m-standalone-supports-m17n-p):
56011 Remove compat code.
56012 (mm-w3m-standalone-supports-m17n-p): Ditto.
56014 2016-02-13 Lars Ingebrigtsen <larsi@gnus.org>
56016 Remove compat functions from starttls.el
56018 * lisp/net/starttls.el
56019 (starttls-set-process-query-on-exit-flag): Remove.
56021 2016-02-13 Lars Ingebrigtsen <larsi@gnus.org>
56023 Remove compat functions from smime.el
56025 * lisp/gnus/smime.el (smime-replace-in-string): Remove.
56026 (smime-make-temp-file): Remove.
56028 2016-02-13 Lars Ingebrigtsen <larsi@gnus.org>
56030 Remove compat code from smiley
56032 * lisp/gnus/smiley.el (smiley-style): Remove compat code.
56034 2016-02-13 Lars Ingebrigtsen <larsi@gnus.org>
56036 Remove compat code from rfc2047
56038 * lisp/mail/rfc2047.el (rfc2047-encode-message-header): Remove
56040 (rfc2047-decode-string): Ditto.
56042 2016-02-13 Lars Ingebrigtsen <larsi@gnus.org>
56044 Remove compat function from pop3
56046 * lisp/gnus/pop3.el (pop3-set-process-query-on-exit-flag): Remove.
56048 2016-02-13 Lars Ingebrigtsen <larsi@gnus.org>
56050 Remove compat code in Gnus backends
56052 * lisp/gnus/nndiary.el (nndiary-error): Remove.
56054 * lisp/gnus/nndraft.el (nndraft-request-associate-buffer): Ditto.
56056 * lisp/gnus/nnfolder.el (nnfolder-read-folder): Ditto.
56058 * lisp/gnus/nnheader.el (nnheader-find-file-noselect): Ditto.
56060 * lisp/gnus/nnimap.el (nnimap-log-buffer): Remove compat code.
56062 2016-02-13 Lars Ingebrigtsen <larsi@gnus.org>
56064 Remove compat code from some mml files
56066 * lisp/gnus/mml-sec.el (mml-secure-passphrase-cache-expiry):
56067 Remove compat code.
56069 * lisp/gnus/mml-smime.el (mml-smime-openssl-sign-query):
56070 Always use `mail-extract-address-components', since this isn't
56072 (mml-smime-get-dns-cert): Ditto.
56074 * lisp/gnus/mml.el (mml-preview): Remove compat code.
56076 2016-02-13 Lars Ingebrigtsen <larsi@gnus.org>
56078 Remove compat code and compat functions from mm-util.el
56080 * lisp/gnus/mm-util.el (mm-mime-mule-charset-alist): Remove
56082 (mm-coding-system-priorities)
56083 (mm-mule-charset-to-mime-charset, mm-charset-after)
56084 (mm-mime-charset, mm-iso-8859-x-to-15-region): Remove compat code.
56085 (mm-detect-coding-region): Define unconditionally.
56086 (mm-detect-mime-charset-region): Ditto.
56087 (mm-coding-system-to-mime-charset): It's 'mime-charset now.
56088 (coding-system-name)
56089 (find-file-coding-system-for-read-from-filename)
56090 (find-operation-coding-system): Remove aliases.
56092 2016-02-13 Lars Ingebrigtsen <larsi@gnus.org>
56094 Remove some compat code from mm-*.el
56096 * lisp/gnus/mm-bodies.el (mm-decode-body): Ditto.
56098 * lisp/gnus/mm-decode.el (mm-tmp-directory)
56099 (mm-valid-image-format-p): Remove compat code.
56101 * lisp/gnus/mm-url.el (mm-url-insert-file-contents): Remove
56102 "Connection" "Close" workaround for older Emacsen.
56104 2016-02-13 Lars Ingebrigtsen <larsi@gnus.org>
56106 Remove compat code and functions from message.el
56108 * lisp/gnus/message.el (message-send-mail-function): Remove
56110 (message-dont-reply-to-names, message-mode)
56111 (message-setup-fill-variables, message-fill-paragraph)
56112 (message-remove-blank-cited-lines, message-make-from)
56113 (message-forward-rmail-make-body, message-tool-bar-gnome)
56114 (message-tab): Remove compat code.
56115 (message-completion-in-region): Remove.
56116 (message-read-from-minibuffer): Remove compat code.
56118 2016-02-13 Lars Ingebrigtsen <larsi@gnus.org>
56120 Declare rfc1843 instead of autoloading
56122 * lisp/gnus/gnus-art.el (rfc1843-decode-region): Declare
56123 instead of autoload.
56125 2016-02-13 Eli Zaretskii <eliz@gnu.org>
56127 Avoid signaling an error in 'dired-do-find-regexp-and-replace'
56129 * lisp/dired-aux.el: Require cl-lib, so that 'cl-mapcan' is
56130 autoloaded correctly. (Bug#22613)
56132 2016-02-13 Eli Zaretskii <eliz@gnu.org>
56134 Fix network-stream-tests.el for MS-Windows
56136 * test/lisp/net/network-stream-tests.el
56137 (connect-to-tls-ipv6-nowait): Skip for MS-Windows builds.
56138 (connect-to-tls-ipv4-wait): Add a 0.1 sleep-for.
56140 2016-02-13 Lars Ingebrigtsen <larsi@gnus.org>
56142 Remove some Message compat functions
56144 * lisp/gnus/message.el (message-kill-all-overlays): Define
56146 (message-window-inside-pixel-edges): Remove.
56147 (mail-dont-reply-to): Remove.
56149 2016-02-12 Lars Ingebrigtsen <larsi@gnus.org>
56151 Remove some Gnus compat code
56153 * lisp/gnus/gnus-art.el (gnus-mime-inline-part): Remove compat code.
56154 (gnus-mm-display-part): Ditto.
56156 * lisp/gnus/gnus-start.el (gnus-dribble-read-file): Remove
56159 2016-02-12 Lars Ingebrigtsen <larsi@gnus.org>
56161 Sort groups before inserting them into the group buffer
56163 * lisp/gnus/gnus-group.el (gnus-group-describe-all-groups):
56164 Sort groups before inserting them.
56166 2016-02-12 Lars Ingebrigtsen <larsi@gnus.org>
56168 Make "unseen" tracking work again in Gnus
56170 * lisp/gnus/gnus-sum.el (gnus-update-marks): Make "unseen"
56171 tracking work again.
56173 2016-02-12 Lars Ingebrigtsen <larsi@gnus.org>
56175 Remove Gnus compat functions defined in gnus.el
56177 * lisp/gnus/gnus.el (gnus-extent-detached-p): Remove.
56178 (gnus-extent-start-open, gnus-character-to-event)
56179 (gnus-assq-delete-all, gnus-add-text-properties)
56180 (gnus-put-text-property, gnus-key-press-event-p):
56182 2016-02-12 Lars Ingebrigtsen <larsi@gnus.org>
56184 Remove compat code from gnus-uu and win
56186 * lisp/gnus/gnus-util.el (gnus-image-type-available-p): Remove
56189 * lisp/gnus/gnus-uu.el (gnus-uu-tmp-dir): Remove compat code.
56191 * lisp/gnus/gnus-win.el (gnus-frames-on-display-list): Remove.
56193 2016-02-12 Lars Ingebrigtsen <larsi@gnus.org>
56195 Remove several gnus-util compat functions
56197 * lisp/gnus/gnus-util.el (gnus-set-process-query-on-exit-flag): Remove.
56198 (gnus-read-shell-command): Remove.
56199 (gnus-match-substitute-replacement): Remove.
56200 (gnus-string-match-p): Remove.
56201 (gnus-string-prefix-p): Remove.
56203 2016-02-12 Lars Ingebrigtsen <larsi@gnus.org>
56205 Remove the gnus-merge alias
56207 * lisp/gnus/gnus-util.el (gnus-merge): Remove.
56209 2016-02-12 Lars Ingebrigtsen <larsi@gnus.org>
56211 Remove the gnus-union alias
56213 * lisp/gnus/gnus-util.el (gnus-union): Remove.
56215 2016-02-12 Lars Ingebrigtsen <larsi@gnus.org>
56217 Remove the gnus-delete-alist alias
56219 * lisp/gnus/gnus-util.el (gnus-run-mode-hooks): Remove compat code.
56220 (gnus-delete-alist): Remove.
56222 2016-02-12 Lars Ingebrigtsen <larsi@gnus.org>
56224 Remove the gnus-float-time alias
56226 * lisp/gnus/gnus-util.el (gnus-completion-styles): Remove
56228 (gnus-float-time): Remove.
56230 2016-02-12 Lars Ingebrigtsen <larsi@gnus.org>
56232 Remove compat code from gnus-srvr, start and sum
56234 * lisp/gnus/gnus-srvr.el (gnus-browse-foreign-server): Remove
56237 * lisp/gnus/gnus-start.el (gnus-check-reasonable-setup):
56238 Remove compat code.
56240 * lisp/gnus/gnus-sum.el (gnus-summary-display-arrow)
56241 (gnus-summary-make-menu-bar, gnus-summary-make-tool-bar)
56243 (gnus-summary-limit-strange-charsets-predicate)
56244 (gnus-summary-show-thread): Remove compat code.
56246 2016-02-12 Lars Ingebrigtsen <larsi@gnus.org>
56248 Remove compat code from gnus-spec.el
56250 * lisp/gnus/gnus-spec.el (gnus-lrm-string-p): Remove compat code.
56251 (gnus-balloon-face-function): Remove compat code.
56253 2016-02-12 Lars Ingebrigtsen <larsi@gnus.org>
56255 Fix compat change in last check-in
56257 * lisp/gnus/gnus-group.el
56258 (gnus-group-name-charset-group-alist): `find-coding-system'
56259 doesn't exist in Emacs.
56261 2016-02-12 Lars Ingebrigtsen <larsi@gnus.org>
56263 Always use url-queue
56265 * lisp/gnus/gnus-html.el (gnus-html-schedule-image-fetching):
56266 Always use url-queue.
56268 2016-02-12 Lars Ingebrigtsen <larsi@gnus.org>
56270 Remove compat functions from gnus-html.el
56272 * lisp/gnus/gnus-html.el (gnus-html-encode-url-chars): Remove.
56274 2016-02-12 Lars Ingebrigtsen <larsi@gnus.org>
56276 Remove compat code from gnus-group.el
56278 * lisp/gnus/gnus-group.el (gnus-group-name-charset-group-alist)
56279 (gnus-group-make-tool-bar, gnus-group-update-tool-bar): Remove compat code.
56281 2016-02-12 Lars Ingebrigtsen <larsi@gnus.org>
56283 Define gnus-diary-kill-entire-line unconditionally
56285 * lisp/gnus/gnus-diary.el (gnus-diary-kill-entire-line):
56286 Define unconditionally.
56288 2016-02-12 Lars Ingebrigtsen <larsi@gnus.org>
56290 Remove compat code from gnus-cache and gnus-bookmark
56292 * lisp/gnus/gnus-bookmark.el (gnus-bookmark-bmenu-mode-map): Ditto.
56294 * lisp/gnus/gnus-cache.el (gnus-cache-decoded-group-name):
56295 Remove compat code.
56297 2016-02-12 Lars Ingebrigtsen <larsi@gnus.org>
56299 Remove compat code from gnus-art.el
56301 * lisp/gnus/gnus-art.el (gnus-article-prepare)
56302 (gnus-mime-copy-part, gnus-output-to-file)
56303 (gnus-article-reply-with-original)
56304 (gnus-button-handle-apropos-variable)
56305 (gnus-button-handle-apropos-documentation):
56307 2016-02-12 Lars Ingebrigtsen <larsi@gnus.org>
56309 Remove compat code from gnus-agent.el
56311 * lisp/gnus/gnus-agent.el (gnus-agent-make-mode-line-string):
56312 Remove compat code.
56314 2016-02-12 Lars Ingebrigtsen <larsi@gnus.org>
56316 Rewrite gmm-labels usage to use cl-labels
56318 * lisp/gnus/gmm-utils.el (gmm-tool-bar-style): Remove compat code.
56319 (gmm-labels): Remove.
56321 2016-02-12 Lars Ingebrigtsen <larsi@gnus.org>
56323 Remove compat code from canlock.el
56325 * lisp/gnus/canlock.el (defmacro): Remove
56327 2016-02-12 Lars Ingebrigtsen <larsi@gnus.org>
56329 Remove compat code from auth-source
56331 * lisp/gnus/auth-source.el (auth-source-read-char-choice):
56332 Remove compat code.
56334 2016-02-12 Lars Ingebrigtsen <larsi@gnus.org>
56336 Fix gnus-group.el compilation warnings about unprefixed variables
56338 * lisp/gnus/gnus-group.el (gnus-group-update-eval-form): Avoid
56339 compilation warnings by passing in the dynamic variables as
56340 explicit lexical parameters to `eval'.
56342 2016-02-12 Lars Ingebrigtsen <larsi@gnus.org>
56344 Fix the :tracker slot name
56346 * lisp/gnus/registry.el (registry-lookup-secondary): The
56347 `tracker' slot is called `tracker', not `:tracker'.
56349 2016-02-12 Lars Ingebrigtsen <larsi@gnus.org>
56351 Fix compilation warnings in gnus-art.el
56353 * lisp/gnus/gnus-art.el (rfc1843-decode-region): Autoload.
56354 (gnus-article-hide): Avoid compilation warnings.
56356 2016-02-12 Lars Ingebrigtsen <larsi@gnus.org>
56358 Fix compilation warning in gnus-score.el
56360 * lisp/gnus/gnus-score.el (gnus-art): Require to silence byte
56363 2016-02-12 Andreas Schwab <schwab@linux-m68k.org>
56365 Revert "Fix gnus-group-get-new-news-this-group on group with closed server"
56367 This reverts commit 9dc77e37aa84c6df9b3ddb4609f3c09201b0580e.
56369 This makes nnimap groups not be activated.
56371 2016-02-12 Lars Ingebrigtsen <larsi@gnus.org>
56373 Fix encoding problem introduced by previous patch series
56375 * lisp/mail/rfc2047.el: Ditto (bug#22648).
56377 * lisp/mail/rfc2231.el: Fix problem created by the
56378 mm-replace-in-string conversion.
56380 2016-02-12 Lars Ingebrigtsen <larsi@gnus.org>
56382 Revert "Avoid defvarring prefix-less variables"
56384 This reverts commit 303390bda34f98b400798d5383cf0d722e35ba19.
56386 The defvars are needed if we're doing lexical-binding
56388 2016-02-12 Glenn Morris <rgm@gnu.org>
56390 * test/lisp/url/url-auth-tests.el (url-auth-test-digest-auth):
56393 * test/lisp/url/url-auth-tests.el
56394 (url-auth-test-digest-auth-retrieve-cache): Fix obvious typo.
56396 2016-02-11 Lars Ingebrigtsen <larsi@gnus.org>
56398 Finish up cl-defmethoding registry,el
56400 * lisp/gnus/registry.el (initialize-instance): Use cl-defmethod.
56402 2016-02-11 Lars Ingebrigtsen <larsi@gnus.org>
56404 Revert the gnus-replace-in-string change, fix arguments, reapply
56406 2016-02-11 Lars Ingebrigtsen <larsi@gnus.org>
56408 Silence more message.el compilation warnings
56410 * lisp/gnus/message.el (message-generate-headers): Don't use
56411 variable values directly to get the header values, because
56412 that breaks with lexical binding (without unprefixed defvars).
56414 2016-02-11 Lars Ingebrigtsen <larsi@gnus.org>
56416 Fix various compilation warnings in message.el
56418 * lisp/gnus/message.el (message-fix-before-sending): Use
56419 read-multiple-choice instead of gnus-multiple-choice.
56420 (mm-util): Require.
56421 (rfc2047): Require.
56422 (message-remove-blank-cited-lines): Use message instead of
56424 (message-send): Use y-or-n-p instead of gnus-y-or-n-p.
56426 2016-02-11 Lars Ingebrigtsen <larsi@gnus.org>
56428 Silence compilation warning in mm-view
56430 * lisp/gnus/mm-view.el (mm-display-inline-fontify): Silence
56431 compilation warning.
56433 2016-02-11 Lars Ingebrigtsen <larsi@gnus.org>
56435 Fix epg-related compilation warnings in mml-sec
56437 * lisp/gnus/mml-sec.el: Fix compilation warnings from the epg
56440 2016-02-11 Lars Ingebrigtsen <larsi@gnus.org>
56442 rmail-dont-reply-to-names is obsolete
56444 * lisp/gnus/nnmail.el (nnmail-fancy-expiry-target): Don't bind
56445 the obsolete `rmail-dont-reply-to-names' variable.
56447 2016-02-11 Lars Ingebrigtsen <larsi@gnus.org>
56449 Partially revert the defmethod->cl-defmethod change in registry.el
56451 * lisp/gnus/registry.el (initialize-instance): Use defmethod,
56452 since cl-defmethod doesn't work with :after.
56453 (initialize-instance): Ditto, but with :before.
56455 2016-02-11 Lars Ingebrigtsen <larsi@gnus.org>
56457 Avoid obsolete function in plstore
56459 * lisp/gnus/plstore.el (plstore--insert-buffer): Use setf
56460 instead of the obsolete epg-context-set-armor.
56462 2016-02-11 Lars Ingebrigtsen <larsi@gnus.org>
56464 Use cl-defmethod in registry.el
56466 * lisp/gnus/registry.el: Use cl-defmethod instead of the
56467 obsolete defmethod.
56469 2016-02-11 Lars Ingebrigtsen <larsi@gnus.org>
56471 Make sieve-manage require sasl
56473 * lisp/net/sieve-manage.el: Fix compilation warning by
56476 2016-02-11 Lars Ingebrigtsen <larsi@gnus.org>
56478 Avoid defvarring prefix-less variable
56480 * lisp/gnus/mm-uu.el (mm-uu-entry): Rename from `entry'.
56482 2016-02-11 Lars Ingebrigtsen <larsi@gnus.org>
56484 * lisp/gnus/mailcap.el: Remove usage of mailcap-delete-duplicates.
56486 2016-02-11 Lars Ingebrigtsen <larsi@gnus.org>
56488 Don't use the obsolete char-valid-p function
56490 * lisp/gnus/mm-url.el (mm-url-decode-entities): Don't use the
56491 obsolete char-valid-p function.
56493 2016-02-11 Lars Ingebrigtsen <larsi@gnus.org>
56495 Fix missed translation in a previous commit
56497 * lisp/gnus/mailcap.el (mailcap-mime-types): Fix missed
56498 translation of mailcap-delete-duplicates.
56500 2016-02-11 Lars Ingebrigtsen <larsi@gnus.org>
56502 Avoid using mm-make-temp-file
56504 * lisp/gnus/mail-source.el (mail-source-delete-crash-box): Ditto.
56506 * lisp/gnus/mm-decode.el (mm-display-external): Ditto.
56508 * lisp/gnus/mml-smime.el (mml-smime-openssl-encrypt): Ditto.
56510 2016-02-11 Lars Ingebrigtsen <larsi@gnus.org>
56512 Fix compilation warning in gnus-start
56514 * lisp/gnus/gnus-start.el (gnus-slave-save-newsrc): Avoid
56517 2016-02-11 Lars Ingebrigtsen <larsi@gnus.org>
56519 Avoid the obsoleted defmethod
56521 * lisp/gnus/gnus-icalendar.el: Use cl-defmethod instead of
56524 2016-02-11 Lars Ingebrigtsen <larsi@gnus.org>
56526 Avoid defvarring prefix-less variables
56528 * lisp/gnus/gnus-group.el (gnus-group-update-eval-form): We
56529 don't need to `defvar' the short variables to allow `eval' to
56532 2016-02-11 Lars Ingebrigtsen <larsi@gnus.org>
56534 nnweb doesn't need unibyte buffers
56536 * lisp/gnus/nnweb.el (nnweb-retrieve-headers)
56537 (nnweb-read-overview, nnweb-request-article)
56538 (nnweb-google-reference): Unibyte buffers are not needed here.
56540 2016-02-11 Lars Ingebrigtsen <larsi@gnus.org>
56542 Encode before sending from nnspool
56544 * lisp/gnus/nnspool.el (nnspool-request-post): Encode data
56545 before sending it to the news server.
56547 2016-02-11 Lars Ingebrigtsen <larsi@gnus.org>
56549 nnrss buffers don't have to be unibyte
56551 * lisp/gnus/nnrss.el (nnrss-insert): The buffer doesn't have
56552 to be unibyte just to receive data, I think.
56554 2016-02-11 Lars Ingebrigtsen <larsi@gnus.org>
56556 Don't use mm-with-unibyte-current-buffer in mml2015
56558 * lisp/gnus/mml2015.el (mml2015-mailcrypt-encrypt): Don't use
56559 mm-with-unibyte-current-buffer.
56561 2016-02-11 Lars Ingebrigtsen <larsi@gnus.org>
56563 Don't use mm-with-unibyte-current in mml1991
56565 * lisp/gnus/mml1991.el (mml1991-epg-sign): Don't use
56566 mm-with-unibyte-current.
56568 2016-02-11 Lars Ingebrigtsen <larsi@gnus.org>
56570 Don't use mm-with-unibyte-current in mml1991
56572 * lisp/gnus/mml1991.el (mml1991-pgg-sign): Don't use
56573 mm-with-unibyte-current.
56575 2016-02-11 Lars Ingebrigtsen <larsi@gnus.org>
56577 Don't use mm-with-unibyte-buffer in utf7
56579 * lisp/international/utf7.el (utf7-fragment-encode): Don't use
56580 mm-with-unibyte-buffer.
56582 2016-02-11 Lars Ingebrigtsen <larsi@gnus.org>
56584 Remove XEmacs compat code from Gnus helper libraries
56586 * lisp/gnus/plstore.el (plstore-called-interactively-p): Remove.
56588 * lisp/gnus/pop3.el (pop3-make-date): Remove XEmacs compat.
56590 * lisp/gnus/sieve-mode.el: Remove XEmacs compat.
56592 * lisp/gnus/spam-stat.el (spam-stat-called-interactively-p): Remove.
56594 2016-02-11 Lars Ingebrigtsen <larsi@gnus.org>
56596 Remove XEmacs compat code from Gnus backends
56598 * lisp/gnus/mm-view.el (mm-inline-image-xemacs): Remove.
56599 (mm-inline-image): Rename from mm-inline-image-emacs.
56601 * lisp/gnus/mml.el: Remove XEmacs compat code.
56603 * lisp/gnus/nnheader.el: Remove XEmacs compat code.
56605 * lisp/gnus/nnimap.el (nnimap-open-connection-1): Remove
56606 XEmacs compat code.
56608 * lisp/gnus/nnir.el (nnir-run-gmane): Remove XEmacs compat code.
56610 * lisp/gnus/nnmail.el (nnmail-pathname-coding-system): Remove
56611 XEmacs compat code.
56613 * lisp/gnus/nnmairix.el: Remove XEmacs compat code.
56615 * lisp/gnus/nnrss.el: Remove XEmacs compat code.
56617 * lisp/gnus/nntp.el: Remove XEmacs compat code.
56619 2016-02-11 Lars Ingebrigtsen <larsi@gnus.org>
56621 Remove XEmacs compat functions from mm-util.el
56623 * lisp/gnus/mm-util.el (mm-special-display-p): Remove.
56624 (mm-decode-coding-string, mm-encode-coding-string)
56625 (mm-decode-coding-region, mm-encode-coding-region): Remove.
56626 (mm-string-to-multibyte): Remove.
56627 (mm-char-or-char-int-p): Remove.
56628 (mm-ucs-to-char): Remove compat versions of the function.
56629 (mm-read-coding-system): Remove.
56630 (mm-coding-system-p): Remove compat code.
56631 (mm-enrich-utf-8-by-mule-ucs): Remove.
56632 (mm-enable-multibyte, mm-disable-multibyte): Remove compat versions.
56633 (mm-delete-duplicates): Remove.
56634 (mm-multibyte-p): Remove compat versions.
56635 (mm-xemacs-find-mime-charset-1): Remove.
56636 (mm-xemacs-find-mime-charset): Remove.
56637 (mm-make-temp-file): Made obsolete.
56638 (mm-find-buffer-file-coding-system): Remove XEmacs compat.
56640 2016-02-11 Lars Ingebrigtsen <larsi@gnus.org>
56642 Remove Message and mm-decode XEmacs compat code
56644 * lisp/gnus/message.el: Remove XEmacs compat code.
56646 * lisp/gnus/mm-decode.el (mm-create-image-xemacs): Remove.
56648 * lisp/gnus/mm-util.el: Remove some XEmacs compat code.
56650 2016-02-10 Lars Ingebrigtsen <larsi@gnus.org>
56652 Remove som XEmacs compat code from message.el
56654 * lisp/gnus/message.el: Remove some XEmacs compat code.
56656 2016-02-10 Lars Ingebrigtsen <larsi@gnus.org>
56658 Remove XEmacs compat code from ietf-drums.el
56660 * lisp/mail/ietf-drums.el (ietf-drums-syntax-table): Drop
56663 2016-02-10 Lars Ingebrigtsen <larsi@gnus.org>
56665 Remove XEmacs compat code from gravatar.el
56667 * lisp/gnus/gravatar.el: Remove XEmacs compat code from
56670 2016-02-10 Lars Ingebrigtsen <larsi@gnus.org>
56672 Remove more XEmacs compat code from Gnus
56674 * lisp/gnus/gnus-util.el (gnus-bound-and-true-p): Remove.
56675 (gnus-timer--function): Remove.
56677 * lisp/gnus/gnus-uu.el (gnus-uu-save-article): Remove XEmacs
56680 * lisp/gnus/gnus-win.el: Remove XEmacs compat code.
56682 2016-02-10 Lars Ingebrigtsen <larsi@gnus.org>
56684 Remove more XEmacs compat functions from gnus-util.el
56686 * lisp/gnus/gnus-util.el (gnus-put-display-table): Remove.
56687 (gnus-get-display-table): Remove.
56688 (gnus-format-message): Remove.
56690 2016-02-10 Lars Ingebrigtsen <larsi@gnus.org>
56692 Remove more XEmacs compat functions from Gnus
56694 * lisp/gnus/gnus-util.el (gnus-next-char-property-change): Remove.
56695 (gnus-previous-char-property-change): Remove.
56696 (gnus-graphic-display-p): Remove.
56697 (gnus-select-frame-set-input-focus): Remove.
56699 2016-02-10 Lars Ingebrigtsen <larsi@gnus.org>
56701 Remove more XEmacs compat code from gnus-util
56703 * lisp/gnus/gnus-util.el (gnus-make-local-hook): Remove (and
56705 (gnus-invisible-p): Remove.
56707 2016-02-10 Lars Ingebrigtsen <larsi@gnus.org>
56709 Remove gnus-make-local-hook
56711 * lisp/gnus/gnus-util.el (gnus-make-local-hook): Remove (and
56714 2016-02-10 Lars Ingebrigtsen <larsi@gnus.org>
56716 gnus-replace-in-string -> replace-regexp-in-string
56718 * lisp/gnus/gnus-util.el (gnus-replace-in-string): Declare
56719 obsolete. Transform all usages of it into
56720 replace-regexp-in-string.
56722 * lisp/gnus/mailcap.el (mailcap-replace-in-string): Remove.
56724 2016-02-10 Lars Ingebrigtsen <larsi@gnus.org>
56726 Remove Gnus XEmacs compat
56728 * lisp/gnus/gnus-start.el (gnus-dribble-enter): Remove comment
56729 about code that doesn't work in XEmacs.
56731 * lisp/gnus/gnus-sum.el: Remove XEmacs compat.
56733 * lisp/gnus/gnus-topic.el: Remove XEmacs compat.
56735 2016-02-10 Lars Ingebrigtsen <larsi@gnus.org>
56737 Remove compat functions in gnus-spec.el
56739 * lisp/gnus/gnus-spec.el (gnus-string-width-function): Remove.
56740 (gnus-substring-function): Remove.
56741 (gnus-use-correct-string-widths): Remove.
56742 (gnus-make-format-preserve-properties): Remove.
56743 (gnus-xmas-format): Remove.
56745 * lisp/gnus/gnus-srvr.el (gnus-server-mode): Remove XEmacs compat.
56747 2016-02-10 Lars Ingebrigtsen <larsi@gnus.org>
56749 Remove Gnus XEmacs compat functions
56751 * lisp/gnus/gnus-registry.el: Remove XEmacs compat.
56753 * lisp/gnus/gnus-salt.el: Remove XEmacs compat.
56755 * lisp/gnus/gnus-score.el (gnus-decay-score): Remove XEmacs compat.
56757 2016-02-10 Lars Ingebrigtsen <larsi@gnus.org>
56759 Remove Gnus XEmacs compatibility
56761 * lisp/gnus/gnus-demon.el (gnus-demon-idle-since): Remove
56764 * lisp/gnus/gnus-dired.el: Remove XEmacs compat.
56766 * lisp/gnus/gnus-draft.el: Remove XEmacs compat.
56768 * lisp/gnus/gnus-gravatar.el (gnus-gravatar-insert): Remove
56771 * lisp/gnus/gnus-group.el: Remove XEmacs compat.
56773 * lisp/gnus/gnus-html.el: Remove XEmacs compat.
56775 * lisp/gnus/gnus-ml.el: Remove XEmacs compat.
56777 * lisp/gnus/gnus-picon.el (gnus-picon-style): Remove XEmacs comment.
56779 2016-02-10 Lars Ingebrigtsen <larsi@gnus.org>
56781 Don't use image-map if it isn't defined
56783 * lisp/net/shr.el (shr-image-map): Only use image-map as a
56784 parent if it's defined (bug#22614).
56786 2016-02-10 Lars Ingebrigtsen <larsi@gnus.org>
56788 Check for MagickAutoOrientImage
56790 * configure.ac: Check for MagickAutoOrientImage.
56792 * src/image.c (imagemagick_load_image): Don't use
56793 MagickAutoOrientImage unless it's available.
56795 2016-02-10 Lars Ingebrigtsen <larsi@gnus.org>
56797 Document EXIF image rotation
56799 * doc/lispref/display.texi (ImageMagick Images): Mention EXIF rotation.
56801 2016-02-10 Dima Kogan <dima@secretsauce.net>
56803 Support integer image rotation and respect EXIF rotations
56805 * src/image.c (imagemagick_load_image): Allow integer rotations in
56806 addition to floating point rotations (bug#22591).
56807 * src/image.c (imagemagick_load_image): Images that have an
56808 orientation given in EXIF and have no explicit :rotation tag are now
56809 pre-rotated. All information such as width/height is reported for the
56812 2016-02-10 Wolfgang Jenkner <wjenkner@inode.at>
56814 * lisp/net/shr.el (image-map): Defvar it. (Bug#22614)
56816 2016-02-09 Lars Ingebrigtsen <larsi@gnus.org>
56818 * lisp/gnus/gnus-cite.el: Remove XEmacs compat code.
56820 2016-02-09 Lars Ingebrigtsen <larsi@gnus.org>
56822 Remove compat code from gnus-bookmark.el
56824 * lisp/gnus/gnus-bookmark.el (gnus-bookmark-mouse-available-p): Remove.
56825 (gnus-bookmark-remove-properties): Remove.
56827 2016-02-09 Lars Ingebrigtsen <larsi@gnus.org>
56829 Remove XEmacs compat code from gnus-a*.el
56831 * lisp/gnus/gnus-agent.el: Remove compat code.
56833 * lisp/gnus/gnus-art.el: Remove compat code.
56835 * lisp/gnus/gnus-async.el: Remove compat code.
56837 2016-02-09 Lars Ingebrigtsen <larsi@gnus.org>
56839 Remove gmm compat functions
56841 * lisp/gnus/gmm-utils.el (gmm-image-search-load-path): Remove.
56842 (gmm-write-region): Remove.
56843 (gmm-called-interactively-p): Remove.
56845 2016-02-09 Lars Ingebrigtsen <larsi@gnus.org>
56847 * lisp/gnus/ecomplete.el: Remove XEmacs compat code.
56849 2016-02-09 Lars Ingebrigtsen <larsi@gnus.org>
56851 Remove compat code from compface.el
56853 * lisp/image/compface.el: Remove XEmacs compat code throughout.
56855 2016-02-09 Lars Ingebrigtsen <larsi@gnus.org>
56857 Remove the now empty gnus-ems.el and references to it
56859 2016-02-09 Lars Ingebrigtsen <larsi@gnus.org>
56861 Remove Gnus compat names for mouse bindings
56863 * lisp/gnus/gnus-ems.el (gnus-widget-button-keymap): Remove.
56864 (gnus-down-mouse-2): Remove.
56865 (gnus-down-mouse-3): Remove.
56867 2016-02-09 Lars Ingebrigtsen <larsi@gnus.org>
56869 Drop Gnus compat functions
56871 * lisp/gnus/gnus-ems.el (gnus-mule-max-width-function): Remove.
56873 * lisp/gnus/gnus-util.el (gnus-kill-all-overlays): Move here.
56875 * lisp/gnus/gnus.el (gnus-mode-line-modified): Remove.
56877 2016-02-09 Lars Ingebrigtsen <larsi@gnus.org>
56879 Get rid of gnus-ems-redefine
56881 * lisp/gnus/gnus-ems.el (gnus-mouse-face-prop): Remove.
56883 2016-02-09 Lars Ingebrigtsen <larsi@gnus.org>
56885 * lisp/gnus/gnus-spec.el: Move definition here from gnus-ems.el.
56887 2016-02-09 Lars Ingebrigtsen <larsi@gnus.org>
56889 Remove Gnus compat code
56891 * lisp/gnus/gnus-ems.el (gnus-ems-redefine): Remove
56892 transitional code from ten years ago.
56894 2016-02-09 Lars Ingebrigtsen <larsi@gnus.org>
56896 Allow interactively scaling past :max-width etc
56898 * lisp/image.el (image--current-scaling)
56899 (image--image-without-parameters): New functions.
56900 (image--change-size): Use them to allow changing the size of a
56901 image even if it has :width/:max-width (etc.) already set.
56903 2016-02-09 Lars Ingebrigtsen <larsi@gnus.org>
56905 * lisp/gnus/mm-decode.el (shr-image-map): Compilation fix.
56907 2016-02-09 Lars Ingebrigtsen <larsi@gnus.org>
56909 Allow accessing the image commands via shr
56911 * lisp/gnus/mm-decode.el (mm-convert-shr-links): Allow
56912 accessing the image commands.
56914 * lisp/net/shr.el (shr-image-map): New map used for images.
56915 (shr-urlify): Don't overwrite image maps when applying URL maps.
56917 2016-02-09 Lars Ingebrigtsen <larsi@gnus.org>
56919 Use a sparse image keymap
56921 * lisp/image.el (image-map): Use a sparse keymap.
56923 2016-02-09 Lars Ingebrigtsen <larsi@gnus.org>
56925 Put a keymap on images created with insert-image and friends
56927 * lisp/image.el (image-save): New command.
56928 (image-rotate): Ditto.
56929 (image-map): New keymap.
56930 (insert-image): Put the image-map on all images.
56931 (insert-sliced-image): Ditto.
56932 * doc/lispref/display.texi (Showing Images): Document the
56935 2016-02-09 Lars Ingebrigtsen <larsi@gnus.org>
56937 Fix some folding issues in read-multiple-choice
56939 * lisp/subr.el (read-multiple-choice): Fix folding when you
56942 2016-02-09 Lars Ingebrigtsen <larsi@gnus.org>
56944 Fix typo in last checkin
56946 2016-02-09 Lars Ingebrigtsen <larsi@gnus.org>
56948 Remove Gnus compat functions
56950 * lisp/gnus/gnus-ems.el (gnus-mark-active-p)
56951 (gnus-region-active-p, gnus-select-lowest-window)
56952 (gnus-summary-display-table, gnus-max-width-function): Remove
56955 2016-02-09 Lars Ingebrigtsen <larsi@gnus.org>
56957 Move non-compat Gnus functions to gnus-util.el
56959 * lisp/gnus/gnus-util.el (gnus-remove-image, gnus-put-image)
56960 (gnus-create-image, gnus-image-type-available-p): Move here
56961 from gnus-ems.el, since these aren't compat functions.
56963 2016-02-09 Paul Eggert <eggert@cs.ucla.edu>
56965 Omit valloc decl if redundant
56967 * src/gmalloc.c (valloc): Omit decl if malloc.h is included,
56968 to pacify --enable-gcc-warnings.
56970 2016-02-09 Wolfgang Jenkner <wjenkner@inode.at>
56972 Restore the calloc family.
56974 * src/gmalloc.c (calloc, gcalloc, hybrid_calloc): Restore definitions.
56975 They were lost in a4817d8 but calloc is still (marginally) used in
56976 code statically liked with emacs, so hybrid_calloc is needed.
56977 Also, in the non-hybrid case, we can't get rid of calloc anyway as
56978 other libraries liked with emacs may need it.
56979 * src/conf_post.h: Restore redefinition of calloc to hybrid_calloc.
56981 2016-02-09 Lars Ingebrigtsen <larsi@gnus.org>
56983 Remove some Gnus compat functions
56985 * lisp/gnus/gnus-ems.el (gnus-string-mark-left-to-right)
56986 (gnus-window-inside-pixel-edges, gnus-set-process-plist)
56987 (gnus-process-plist, gnus-process-get, gnus-process-put): Remove.
56989 2016-02-09 Paul Eggert <eggert@cs.ucla.edu>
56995 2016-02-09 Paul Eggert <eggert@cs.ucla.edu>
56997 Merge from origin/emacs-25
56999 4feb962 * lisp/comint.el (comint-prompt-read-only): Clean tabs in docstring
57000 cc419fb Don't inloop gnus-uu-mark-thread on the last thread
57001 51c77a2 Display non-ASCII group names better in prompts
57002 f93d669 Default to gpg2 instead of gpg
57004 2016-02-09 Paul Eggert <eggert@cs.ucla.edu>
57006 Merge from origin/emacs-25
57008 9ffe7dd * lisp/isearch.el (isearch-define-mode-toggle): Improve logic
57009 16140f7 * lisp/menu-bar.el (menu-bar-options-menu): New search submenu
57010 3db6adb * lisp/isearch.el (search-default-mode)
57011 4ea1ea7 * lisp/isearch.el: Rename search-default-regexp-mode to search-default-mode
57012 c77ffc8 Use monitor's resolution for positioning tooltips
57013 49e5749 Fix file-notify-test on MS-Windows
57014 be1d874 Fix issues found by auditing w32notify code
57015 87ae218 Extend etags Ruby support for accessors
57016 aa35257 Update publicsuffix.txt.
57017 6816bff Ensure that Gnus dribble handling allows removing entries
57018 691feae Be consistent when using encoded strings in nnimap data
57019 3ed423b Display the decoded Gnus group name
57020 5428b5b Use completion-ignore-case instead of defining command
57022 2016-02-09 Paul Eggert <eggert@cs.ucla.edu>
57024 Merge from origin/emacs-25
57026 1eaf68f * test/automated/file-notify-tests.el (file-notify-test06-many-events):
57027 d333716 ; * etc/NEWS: Expand news entry for scss-mode
57028 c32c16f ; Better document changes in ls-lisp default behavior
57029 dc6eed2 Fix doc string of tls-program
57031 2016-02-09 Paul Eggert <eggert@cs.ucla.edu>
57033 Merge from origin/emacs-25
57035 2c117fc * etc/NEWS: Document new mpc.el features
57036 71a0496 * lisp/custom.el (defface): Revert indentation change. (Bug#22524)
57037 9dfece1 Correctly fontify C++ initializations which "look like" functions.
57038 4485222 Improve newsticker-treeview-selection-face
57039 4236944 Minor fix in tagging Ruby accessors by etags
57040 35fc77d Spelling fixes
57041 3dda110 Remove 'def X' from the example
57043 2016-02-09 Eli Zaretskii <eliz@gnu.org>
57045 Fix network-stream-tests on MS-Windows
57047 * test/lisp/net/network-stream-tests.el (make-local-unix-server):
57048 Skip if local sockets are not supported.
57050 2016-02-09 Michael Albinus <michael.albinus@gmx.de>
57052 * admin/notes/bug-triage: Fix bug priorities. Explain colors in debbugs-gnu.
57054 2016-02-09 Eli Zaretskii <eliz@gnu.org>
57056 Disable 'timer-list'
57058 * lisp/emacs-lisp/timer-list.el: Make 'timer-list' a disabled
57061 2016-02-09 Paul Eggert <eggert@cs.ucla.edu>
57063 Avoid aligned_alloc static/extern collision
57065 * src/alloc.c (aligned_alloc): Define to private name when a
57066 static function, to avoid collision with lisp.h extern decl.
57067 Reported by John Yates in:
57068 https://lists.gnu.org/r/emacs-devel/2016-02/msg00439.html
57070 2016-02-08 David Edmondson <dme@dme.org>
57072 src/process.c Correctly convert AF_INET6 addresses
57074 * src/process.c (conv_lisp_to_sockaddr): AF_INET6 addresses are
57075 converted to a list of 16 bit quantities by
57076 conv_sockaddr_to_lisp(). conv_lisp_to_sockaddr() should follow the
57077 same scheme rather than expecting a (longer) list of 8 bit
57080 2016-02-08 Michal Nazarewicz <mina86@mina86.com>
57082 Make `message-beginning-of-line' aware of folded headers
57084 * lisp/gnus/message.el (message-beginning-of-header): New function which
57085 moves point to the beginning of a mail header. The function is aware of
57086 folded headers and with non-nil argument looks for the true beginning of
57087 a header while with nil argument moves to the indented text of header's
57089 (message-beginning-of-line): Function is now aware of folded headers and
57090 either moves point to the indention of a header or, in visual-line-mode,
57091 searches for the beginning of the header.
57093 2016-02-08 Michal Nazarewicz <mina86@mina86.com>
57095 Optimize ‘point in message header’ check
57097 * lisp/gnus/message.el (message-point-in-header-p): Replace two unbound
57098 regular expression matches with a single bound string match thus
57099 reducing amount of work the function is doing.
57101 2016-02-08 Lars Ingebrigtsen <larsi@gnus.org>
57103 Make the `R' command get the correct relative <img>s
57105 * lisp/net/eww.el (eww-readable): Preserve the base URL so
57106 that image expansions are fetched from the right place (bug#22605).
57108 2016-02-08 Lars Ingebrigtsen <larsi@gnus.org>
57110 Add a mode to list and cancel timers
57112 * doc/lispref/os.texi (Timers): Menton `timer-list'.
57114 * lisp/emacs-lisp/timer-list.el: New file.
57116 2016-02-08 Lars Ingebrigtsen <larsi@gnus.org>
57118 Add new commands to allow changing the size of images
57120 * lisp/image.el (image-increase-size, image-decrease-size):
57122 (image-change-size): New function.
57124 2016-02-08 Lars Ingebrigtsen <larsi@gnus.org>
57126 Allow the image scale to be a floating point number
57128 * src/image.c (compute_image_size): The scale can be a
57129 floating point number.
57131 2016-02-08 Lars Ingebrigtsen <larsi@gnus.org>
57135 * test/lisp/net/network-stream-tests.el
57136 (connect-to-tls-ipv6-nowait): Add an ipv6 test, too.
57138 2016-02-08 Lars Ingebrigtsen <larsi@gnus.org>
57140 Use gnutls-serv instead of openssh
57142 * test/lisp/net/network-stream-tests.el (make-tls-server): Use
57143 gnutls-serv instead of openssh.
57145 2016-02-08 Lars Ingebrigtsen <larsi@gnus.org>
57147 Skip TLS tests if we don't have openssl
57149 * test/lisp/net/network-stream-tests.el (connect-to-tls): Skip
57150 TLS tests if we don't have openssl and GnuTLS.
57152 2016-02-08 Lars Ingebrigtsen <larsi@gnus.org>
57156 * test/lisp/net/network-stream-tests.el
57157 (connect-to-tls-ipv6-nowait): Add an ipv6 test, too.
57159 2016-02-08 Lars Ingebrigtsen <larsi@gnus.org>
57161 Use gnutls-serv instead of openssh
57163 * test/lisp/net/network-stream-tests.el (make-tls-server): Use
57164 gnutls-serv instead of openssh.
57166 2016-02-08 Daniel Colascione <dancol@dancol.org>
57168 Performance improvements for vc-hg
57170 Teach vc-hg how to read some Mercurial internal data structures,
57171 allowing us to avoid the need to run hg status -A, which is very slow
57172 for large repositories. Fall back to running hg if anything looks
57173 funny. vc-hg now puts the _working directory_ revision in the
57174 modeline instead of the file revision, which greatly improves
57175 performance and which allows us to again skip running hg in the case
57176 that we have an active bookmark.
57178 * lisp/vc/vc-hg.el (vc-hg-state): Try calling `vc-hg-statefast'
57179 (vc-hg-symbolic-revision-styles)
57180 (vc-hg-use-file-version-for-mode-line-version)
57181 (vc-hg-parse-hg-data-structures): New user preferences
57182 (vc-hg--active-bookmark-internal, vc-hg--run-log)
57183 (vc-hg--symbolic-revision, vc-hg-mode-line-string)
57184 (vc-hg--read-u8, vc-hg--read-u32-be)
57185 (vc-hg--raw-dirstate-search, vc-hg--cached-dirstate-search)
57186 (vc-hg--parts-to-string, vc-hg--pcre-to-elisp-re)
57187 (vc-hg--glob-to-pcre, vc-hg--hgignore-add-pcre)
57188 (vc-hg--hgignore-add-glob, vc-hg--hgignore-add-path)
57189 (vc-hg--slurp-hgignore-1, vc-hg--slurp-hgignore)
57190 (vc-hg--ignore-patterns-valid-p)
57191 (vc-hg--ignore-patterns-ignored-p, vc-hg--time-to-fixnum)
57192 (vc-hg--file-ignored-p, vc-hg--read-repo-requirements)
57193 (vc-hg--requirements-understood-p, vc-hg--dirstate-scan-cache)
57194 (vc-hg-state-fast): New functions.
57195 (vc-hg--hgignore-patterns, vc-hg--hgignore-filenames)
57196 (vc-hg--cached-ignore-patterns, vc-hg--dirstate-scan-cache)
57197 (vc-hg--dirstate-scan-cache): New internal variables.
57198 * lisp/vc/vc-hooks.el (vc-refresh-state): Invoke vc find-file-hook
57199 before updating modeline.
57201 2016-02-07 Lars Ingebrigtsen <larsi@gnus.org>
57203 Skip TLS tests if we don't have openssl
57205 * test/lisp/net/network-stream-tests.el (connect-to-tls): Skip
57206 TLS tests if we don't have openssl and GnuTLS.
57208 2016-02-07 Lars Ingebrigtsen <larsi@gnus.org>
57210 Automatically scale images up on high-density screens
57212 * doc/lispref/display.texi (ImageMagick Images): Mention :scale.
57213 (Defining Images): Mention image-scaling-factor.
57215 * lisp/image.el (image-compute-scaling-factor): New function
57217 (create-image): Use it.
57218 (image-scaling-factor): New variable.
57220 * src/image.c (compute_image_size): Take :scale into account.
57222 2016-02-07 Lars Ingebrigtsen <larsi@gnus.org>
57224 Ensure progress when fetching from the queue
57226 * lisp/url/url-queue.el (url-queue-check-progress): Ensure
57227 that we have progress when fetching queued requests (bug#22576).
57229 2016-02-07 Lars Ingebrigtsen <larsi@gnus.org>
57231 Make mail-extract-address-components return the user name more
57233 * lisp/mail/mail-extr.el (mail-extract-address-components):
57234 Return the name even if it's the same as the mailbox name (if
57235 `mail-extr-ignore-single-names' isn't set) (bug#22594).
57237 2016-02-07 Lars Ingebrigtsen <larsi@gnus.org>
57239 Message no longer warns about unknown top level domains
57241 2016-02-07 Jarno Malmari <jarno@malmari.fi>
57243 Add tests for url-auth
57245 * test/lisp/url/url-auth-tests.el: New file.
57247 2016-02-07 Lars Ingebrigtsen <larsi@gnus.org>
57249 Add a TLS connection test
57251 * test/lisp/net/network-stream-tests.el (connect-to-tls): Add
57252 a TLS connection test.
57254 2016-02-07 Lars Ingebrigtsen <larsi@gnus.org>
57256 Add more network tests
57258 * test/lisp/net/network-stream-tests.el (echo-server-nowait):
57261 2016-02-07 Lars Ingebrigtsen <larsi@gnus.org>
57265 * test/lisp/net/network-stream-tests.el: New suite of network tests.
57267 2016-02-07 Lars Ingebrigtsen <larsi@gnus.org>
57269 Add a TLS connection test
57271 * test/lisp/net/network-stream-tests.el (connect-to-tls): Add
57272 a TLS connection test.
57274 2016-02-07 Lars Ingebrigtsen <larsi@gnus.org>
57276 Add more network tests
57278 * test/lisp/net/network-stream-tests.el (echo-server-nowait):
57281 2016-02-07 Lars Ingebrigtsen <larsi@gnus.org>
57285 * test/lisp/net/network-stream-tests.el: New suite of network tests.
57287 2016-02-07 Rasmus Pank Roulund <rasmus@gmx.us>
57289 Allow various Gnus and Message address variables to be functions
57291 * doc/misc/gnus.texi (To From Newsgroups):
57292 gnus-ignored-from-addresses can be a function.
57294 * doc/misc/message.texi (Wide Reply):
57295 message-dont-reply-to-names can be a function.
57297 * lisp/gnus/gnus-icalendar.el (gnus-icalendar-identities):
57298 message-alternative-emails can be a function.
57300 * lisp/gnus/gnus-notifications.el (gnus-notifications):
57301 message-alternative-emails can be a function (bug#22315).
57303 * lisp/gnus/gnus-sum.el
57304 (gnus-summary-from-or-to-or-newsgroups):
57305 gnus-ignored-from-addresses can be a function (bug#22315).
57307 2016-02-07 Lars Ingebrigtsen <larsi@gnus.org>
57309 Fix typo in Gnus regexp
57311 * lisp/gnus/gnus-art.el (gnus-button-valid-fqdn-regexp): Fix
57312 typo in last change to this regexp (bug#22592).
57314 2016-02-07 Paul Eggert <eggert@cs.ucla.edu>
57316 Port to FreeBSD x86
57318 Reported by Herbert J. Skuhra in:
57319 https://lists.gnu.org/r/emacs-devel/2016-02/msg00336.html
57320 * src/lisp.h (NONPOINTER_BITS) [__FreeBSD__]: Zero in this case too,
57321 since malloc always returns a multiple of 8 in FreeBSD.
57323 2016-02-07 Alan Mackenzie <acm@muc.de>
57325 On leaving CC Mode, clean up by removing character properties.
57327 * lisp/progmodes/cc-mode.el (c-leave-cc-mode-mode): Remove from the buffer
57328 all instances of the text properties/extents category, syntax-table,
57329 c-is-sws, c-in-sws, c-type, and c-awk-NL-prop.
57331 2016-02-06 Lars Ingebrigtsen <larsi@gnus.org>
57333 message-valid-fqdn-regexp no longer exists
57335 * lisp/gnus/gnus-art.el (gnus-button-valid-fqdn-regexp): Don't use
57336 the no-longer-existing message-valid-fqdn-regexp variable.
57338 2016-02-06 Lars Ingebrigtsen <larsi@gnus.org>
57340 Remove message-valid-fqdn-regexp, since it changes too much now
57342 * lisp/gnus/message.el (message-valid-fqdn-regexp): Remove.
57343 (message-bogus-recipient-p): Don't use it any more.
57344 (message-make-fqdn): Ditto. Suggested by Lars-Johan Liman.
57346 2016-02-06 Paul van der Walt <paul@denknerd.org>
57348 Match "Re :" as a "Re:" prefix
57350 * lisp/gnus/message.el (message-subject-re-regexp): Also match
57351 "Re :" as a "Re:" prefix (commonly used in France).
57353 2016-02-06 Adam Sjøgren <asjo@koldfront.dk>
57355 lisp/net/shr.el (shr-tag-del, shr-tag-ins): New functions.
57357 * lisp/net/shr.el (shr-tag-del, shr-tag-ins): New functions.
57359 2016-02-06 David Edmondson <dme@dme.org>
57361 src/process.c Correctly convert AF_INET6 addresses
57363 * src/process.c (conv_lisp_to_sockaddr): AF_INET6 addresses are
57364 converted to a list of 16 bit quantities by
57365 conv_sockaddr_to_lisp(). conv_lisp_to_sockaddr() should follow the
57366 same scheme rather than expecting a (longer) list of 8 bit
57369 2016-02-05 Martin Jesper Low Madsen <martin@martinjlowm.dk>
57371 Search for host/port combinations in auth-source on OS X
57373 * lisp/gnus/auth-source.el (auth-source-macos-keychain-search):
57374 Search for all host/port (or protocol) combinations for a match in
57377 2016-02-05 Lars Ingebrigtsen <larsi@gnus.org>
57379 Remove nonsensical setting of gnus-newsgroup-unseen
57381 * lisp/gnus/gnus-sum.el (gnus-update-marks): Remove nonsensical
57382 setting of gnus-newsgroup-unseen.
57384 2016-02-05 Lars Ingebrigtsen <larsi@gnus.org>
57386 Use underline on all terminals that support it
57388 * lisp/subr.el (read-multiple-choice): Use
57389 display-supports-face-attributes-p instead of
57390 display-graphic-p to determine whether we can use underlining.
57392 2016-02-05 Lars Ingebrigtsen <larsi@gnus.org>
57394 Make the nsm query say what it did after the user interaction
57396 * lisp/net/nsm.el (nsm-query): Issue a message about
57397 aborting/accepting messages (suggested by N. Jackson)
57400 2016-02-05 Paul Eggert <eggert@cs.ucla.edu>
57402 Omit XLI (init) == 0 optimization in make-vector
57404 * src/alloc.c (Fmake_vector): Simplify by omitting the (XLI (init)
57405 == 0) case, as this optimization is probably not worth the hassle.
57406 Just for the record, the test for that case could have been
57407 (XLI (init) % ((EMACS_UINT) -1 / UCHAR_MAX) == 0) (!),
57408 assuming the typical platform with no padding bits and where
57409 conversion to int omits the most significant bits.
57411 2016-02-05 Paul Eggert <eggert@cs.ucla.edu>
57413 * autogen.sh: Port to dash (Bug#22556).
57415 2016-02-05 Michael Albinus <michael.albinus@gmx.de>
57417 Minor cleanup for Tramp "doas".
57419 * doc/misc/tramp.texi (Inline methods): Add "doas" method.
57421 * etc/NEWS: Add Tramp connection method "doas".
57423 * lisp/net/tramp-sh.el (tramp-methods) <doas>:
57424 Add `tramp-remote-shell-args'.
57426 2016-02-05 Xi Lu <lx@shellcodes.org>
57428 * lisp/net/tramp-sh.el (tramp-methods) <doas>: Add. (Bug#22542)
57430 (tramp-default-user-alist): Add rule for "doas".
57431 (top): Completion function for "doas" is
57432 `tramp-completion-function-alist-su'.
57434 2016-02-04 Lars Ingebrigtsen <larsi@gnus.org>
57436 Restore the window configuration
57438 * lisp/net/nsm.el (nsm-query-user): Restore the window
57439 configuration (bug#22532).
57441 2016-02-04 Lars Ingebrigtsen <larsi@gnus.org>
57443 Use an X popup in read-multiple-choice if running from a mouse command
57445 * lisp/subr.el (read-multiple-choice): Use an X popup if
57446 called from a mouse action (bug#19368).
57448 2016-02-04 Lars Ingebrigtsen <larsi@gnus.org>
57450 Display cursor in echo area when prompting
57452 * lisp/subr.el (read-multiple-choice): Display the cursor in
57453 the echo area when prompting (bug#19368).
57455 2016-02-04 Lars Ingebrigtsen <larsi@gnus.org>
57457 Make NSM prompting clearer
57459 * lisp/net/nsm.el (nsm-query-user): Use read-multiple-choice
57460 to prompt in a nicer way (bug#19368).
57462 2016-02-04 Lars Ingebrigtsen <larsi@gnus.org>
57464 Underline read-multiple-choice-face
57466 * lisp/faces.el (read-multiple-choice-face): Also underline
57469 2016-02-04 Lars Ingebrigtsen <larsi@gnus.org>
57471 Make url.el use async DNS
57473 * lisp/url/url-gw.el (url-open-stream): Use non-blocking DNS.
57475 * src/process.c (syms_of_process): Add a `dns' subfeature for
57476 make-network-process.
57478 2016-02-04 Lars Ingebrigtsen <larsi@gnus.org>
57480 Only do async DNS if requested with :nowait 'dns
57482 * doc/lispref/processes.texi (Network Processes): Mention the
57483 dns value of :nowait.
57485 * src/process.c (Fmake_network_process): Only do async DNS if
57488 2016-02-04 Lars Ingebrigtsen <larsi@gnus.org>
57490 Add sanity check for checking async DNS
57492 * src/process.c (check_for_dns): Disregard processes that have
57493 already been killed.
57495 2016-02-04 Lars Ingebrigtsen <larsi@gnus.org>
57497 Make the read-multiple-choice prompt a bit prettier
57499 * doc/lispref/commands.texi (Reading One Event): Mention
57500 read-multiple-choice-face.
57502 * lisp/subr.el (read-multiple-choice): Make the prompting a bit
57505 2016-02-04 Paul Eggert <eggert@cs.ucla.edu>
57507 Prefer memcpy and memset to doing it by hand
57509 * src/alloc.c (Fmake_vector):
57510 * src/ccl.c (setup_ccl_program):
57511 Use memset to clear array.
57512 * src/alloc.c (Fvector, Fmake_byte_code):
57513 * src/charset.c (Fdefine_charset_internal):
57514 Use memcpy to copy array.
57516 2016-02-04 Nicolas Petton <nicolas@petton.fr>
57518 Do not ignore redirections of 301, 302 and 307 status codes
57520 The current version of HTTP/1.1 (RFC 7231) no longer requires
57521 confirmation on 301, 302 or 307 status codes, therefore we do not have
57522 to ignore redirects for other requests than GET and HEAD.
57524 * lisp/url/url-http.el (url-http-parse-headers): Do not ignore 301, 302
57525 and 307 redirects for other requests than GET and HEAD.
57527 2016-02-04 Mark Oteiza <mvoteiza@udel.edu>
57529 * lisp/net/eww.el (eww-switch-to-buffer): Use pop-to-buffer-same-window instead.
57531 2016-02-04 Paul Eggert <eggert@cs.ucla.edu>
57533 Simplify USE_ALIGNED_ALLOC
57535 * src/alloc.c (USE_ALIGNED_ALLOC): Simplify, now that we’ve merged
57536 in the emacs-25 changes. Omit no-longer-needed decl for aligned_alloc.
57538 2016-02-04 Eric Abrahamsen <eric@ericabrahamsen.net>
57540 Honor docstring of gnus-group-get-new-news
57542 * lisp/gnus/gnus-start.el (gnus-get-unread-articles): If the prefix arg
57543 is t, but non-numeric, unconditionally consider all groups to need
57546 2016-02-04 Lars Ingebrigtsen <larsi@gnus.org>
57548 New function read-multiple-choice
57550 * doc/lispref/commands.texi (Reading One Event): Document
57551 read-multiple-choice.
57553 * lisp/faces.el (read-multiple-choice-face): New face.
57555 * lisp/subr.el (read-multiple-choice): New function.
57557 2016-02-03 John Wiegley <johnw@newartisans.com>
57559 Merge from origin/emacs-25
57561 ee73997 Make erc work better when encountering unknown prefix chars
57562 b99141d Make erc completion case-insensitive again
57563 66c4620 Make complection in erc use consistent casing
57564 8c562b2 Make /QUIT in erc more robust
57565 d93d2c5 Make tracking faces in Emacs work more reliably
57566 af6ab7e Make shr not bug out on images on non-graphical displays
57567 3311f40 Fix bookmark display widths
57568 d90ab1e Fix typo in eww-make-unique-file-name
57569 7f81825 Make it possible to TAB to input fields
57570 a43a1dc Insert complete alt texts when images are disabled
57571 56ed4e1 Allow eww text fields to grow
57572 66b315c Make erc work when subword-mode is switched on
57573 255b68f Fix IMAP doc example
57574 91557f5 Quoting fixes in doc strings and diagnostics
57575 2c0dc9f Fix warning message in hack-local-variables
57576 504696d Etags: yet another improvement in Ruby tags
57577 8784ebf Fix x-popup-menu on TTYs without a mouse
57578 8b87ecb * lisp/emacs-lisp/map.el: Improvements to the docstring of the
57580 6191003 Use pop-to-buffer-same-window in eww
57581 fe321fd * autogen.sh: Revert all recent changes.
57582 74ebd4a * make-dist: Updates related to nt/.
57583 737193a * make-dist: Add modules/.
57584 3696bf2 * make-dist: Update for super-special file that can't live in etc/.
57585 a4278e2 Fix failure to compile ns-win.el in parallel builds
57586 860da4d Fix names of tags generated for Ruby accessors
57587 f6213ce Fix file-name recognition in 'etags'
57588 e42e662 Change Ruby file names and extensions recognized by 'etags'
57589 58bfb6a More improvements for Ruby support in 'etags'
57590 c04e911 Add --git-config option to autogen.sh
57591 5713466 Fix editing undo changes in eww fields
57592 51362d6 Allow the user more control of popping up the eww window
57593 ee0fbd8 Make eww-browse-url with new-window parameter work again
57594 9c3142d Clean up eww code slightly
57595 cb035f3 Don't insert nil faces in shr
57596 4c3fae3 ; * lisp/progmodes/prolog.el: Remove some obsolete commentary.
57597 93f2153 Improve the custom type of some user options.
57598 9f60d7e Mark some risky calendar variables.
57599 1d07dcd Highlight two additional SCSS keywords
57600 ee8b466 Recommend enabling integrity-checking in git
57601 e639e10 Some corrections in Elisp manual
57602 d766ca8 Chatter when autogen.sh changes Git configuration
57603 3b734e1 * org/org-compat.el (org-font-lock-ensure): Fix bogus test (bug#22399)
57604 43cb9f8 Omit unnecessary history from Lisp intro
57605 2fbd1da * etc/HISTORY: Add some more history, plus git tags.
57606 c90e1b4 Improve elisp “Security Considerations” doc
57607 cedd7ca autogen.sh now arranges for git to check hashes
57608 86ce76b ; Fix ChangeLog.2 commit ID.
57609 7b1d2b1 Fix (c & 040) typo in emergency escapes
57610 a8273da Fix display of overlay strings with 'display' and 'box' property
57611 fc48106 Fix imap-starttls-open
57612 cdecbed Fix return value of imap-starttls-open
57613 20c7e34 ; * etc/NEWS: Fix renamed command name
57614 98bdbdb Correct reference to DARWIN_OS preprocessor symbol
57615 b250d29 Spelling fix
57616 b920a0e Spelling fixes
57617 93b144b Pacify GCC on C library without glibc API
57619 2016-02-03 John Wiegley <johnw@newartisans.com>
57621 Merge from origin/emacs-25
57623 ea26c8a * lisp/net/browse-url.el (browse-url-default-browser): Lower
57624 priority of non-free Chrome.
57625 0fac75f Improve the custom type of some user options.
57626 2df0e04 Highlight CSS variables with variable name face
57627 3cf5e81 * lisp/gnus/gnus-kill.el (gnus-winconf-kill-file): Not
57629 2a5233c Mark some user options that can get evalled as risky.
57630 39b166f Disable DebPrint in sys_read on MS-Windows
57631 9fd0189 ;Fix ChangeLog entry
57632 4bb7233 Fix typos in Introduction to Emacs Lisp manual
57634 2016-02-03 Mark Oteiza <mvoteiza@udel.edu>
57636 Add a new command to switch between erc buffers
57638 * doc/misc/eww.texi: Document eww-switch-to-buffer and its keybinding
57639 * etc/NEWS: Mention new command
57640 * lisp/net/eww.el (eww-mode-map): Bind eww-switch-to-buffer to "s"
57641 (eww-mode-map): Add menu item
57642 (eww-switch-to-buffer): New command
57644 2016-02-03 David Edmondson <dme@dme.org>
57646 Make erc work better when encountering unknown prefix chars
57648 * lisp/erc/erc.el (erc-channel-receive-names): Output a warning
57649 instead of erroring out on unknown prefix chars (bug#22380).
57651 2016-02-03 Vasilij Schneidermann <v.schneidermann@gmail.com> (tiny change)
57653 Allow sending empty hidden values in eww
57655 * lisp/net/eww.el (eww-tag-input): Allow sending empty hidden
57656 values (bug#22388).
57658 2016-02-03 Andrew Hyatt <ahyatt@gmail.com>
57660 Remove packages obsoleted before Emacs 24.
57662 In accordance with the policy discussed in the emacs-devel list,
57663 packages that have been obsoleted for a full major release cycle are up
57666 This removes almost all packages that are now eligible for deletion,
57667 with the exception of "cl-compat", which seems it is likely to still be
57668 used, and "optional", which offers some functionality that doesn't have
57671 2016-02-03 Paul Eggert <eggert@cs.ucla.edu>
57673 Mention context when resume from emergency escape
57675 That way, if the user has been doing something else for a while,
57676 they are reminded of the situation when restarting Emacs,
57677 and are more likely to understand the two questions.
57678 * doc/emacs/trouble.texi (Emergency Escape): Document this.
57679 * src/keyboard.c (handle_interrupt): Implement this.
57681 2016-02-03 Paul Eggert <eggert@cs.ucla.edu>
57683 Port aligned_alloc decl to Cygwin.
57685 Problem reported by Ken Brown (Bug#22522#38).
57686 * configure.ac (aligned_alloc): Check for decl too.
57687 * src/lisp.h (aligned_alloc): Declare if not already declared.
57689 2016-02-02 Paul Eggert <eggert@cs.ucla.edu>
57691 autogen.sh now configures git only on request
57693 * autogen.sh (do_autoconf, do_git): New vars.
57694 Support new arguments --help, all, autoconf, git.
57695 By default, just do autoconf-related configuration, not git.
57696 Prefer 'echo' to 'cat <<EOF ...', as this tends to avoid temp files.
57697 If GNU cp is available, use it to backup .git/config before
57698 changing it. When configuring git, chatter about what is being
57699 done, and configure git to check hashes. Avoid some duplicate
57700 file name specification when creating git hooks.
57702 * GNUmakefile (ALL_IF_GIT): New macro.
57703 (configure): Use it.
57704 * INSTALL.REPO: Suggest './autogen.sh all'.
57706 2016-02-02 Lars Ingebrigtsen <larsi@gnus.org>
57708 Doc fixes and refactorings based on comments from Eli Zaretskii
57710 * doc/lispref/processes.texi (Network Processes): Clarify the
57711 meaning of :tls-parameters.
57713 * lisp/net/gnutls.el (open-gnutls-stream): Clarify :nowait.
57715 * lisp/net/gnutls.el (gnutls-boot-parameters): Factor out into
57717 (gnutls-negotiate): Use it.
57718 (open-gnutls-stream): Ditto.
57720 * src/eval.c (vformat_string): Refactor out the printing bits
57724 * src/gnutls.c (boot_error): Mark failed processes with the
57725 real error message.
57727 * src/lisp.h: Declare vformat_string.
57729 2016-02-02 Paul Eggert <eggert@cs.ucla.edu>
57731 Build with C11 if available
57733 * admin/merge-gnulib (GNULIB_MODULES): Add std-gnu11.
57734 * m4/std-gnu11.m4: New file, from gnulib.
57735 * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
57737 2016-02-02 Paul Eggert <eggert@cs.ucla.edu>
57741 * doc/misc/texinfo.tex: Copy from gnulib.
57743 2016-02-02 Glenn Morris <rgm@gnu.org>
57745 * lisp/vc/add-log.el (change-log-directory-files, find-change-log):
57748 2016-02-02 Paul Eggert <eggert@cs.ucla.edu>
57750 Port better to platforms lacking aligned_alloc
57752 Problem reported by Ken Brown (Bug#22522).
57753 * src/lisp.h (hybrid_aligned_alloc)
57754 [HYBRID_MALLOC && !HAVE_ALIGNED_ALLOC]: New decl.
57756 2016-02-02 Paul Eggert <eggert@cs.ucla.edu>
57758 Port malloc.h hygiene fix to LTO
57760 * src/alloc.c (__malloc_initialize_hook):
57761 Make it externally visible (Bug#22522).
57763 2016-02-01 Lars Ingebrigtsen <larsi@gnus.org>
57765 Build fix for --enable-check-lisp-object-type
57767 * src/process.c (check_for_dns): Type fix reported by YAMAMOTO
57770 2016-02-01 Glenn Morris <rgm@gnu.org>
57772 Make find-change-log prefer a VCS root, if no ChangeLog exists.
57774 * lisp/vc/add-log.el (change-log-directory-files): New option.
57775 (find-change-log): Respect change-log-directory-files.
57776 * doc/emacs/maintaining.texi (Change Log Commands):
57777 Mention change-log-directory-files.
57779 2016-02-01 Lars Ingebrigtsen <larsi@gnus.org>
57781 Boot parameter check fix
57783 * src/process.c (send_process): Fix test for boot parameters noted
57786 2016-02-01 Paul Eggert <eggert@cs.ucla.edu>
57788 Double static heap size.
57790 * src/sheap.h (STATIC_HEAP_SIZE): Double it, since it was too
57791 small on FreeBSD (Bug#22086).
57793 2016-02-01 Michael Albinus <michael.albinus@gmx.de>
57797 * lisp/net/tramp.el (tramp-file-name-handler):
57798 * lisp/net/tramp-sh.el (tramp-sh-handle-expand-file-name):
57799 Use `tramp-drop-volume-letter'. (Bug#20821)
57801 2016-01-31 Lars Ingebrigtsen <larsi@gnus.org>
57805 2016-01-31 Lars Ingebrigtsen <larsi@gnus.org>
57807 Return the correct server port number
57809 * src/process.c (connect_network_socket): Return the correct
57810 server port number.
57812 2016-01-31 Lars Ingebrigtsen <larsi@gnus.org>
57814 Fix autoconf test for getaddrinfo_a
57816 * configure.ac: Make the test for getaddrinfo_a work.
57818 2016-01-31 Lars Ingebrigtsen <larsi@gnus.org>
57820 Better async error reporting
57822 * src/process.c (connect_network_socket): Mark failed processes
57823 with a better error message.
57824 (check_for_dns): Ditto.
57826 2016-01-31 Lars Ingebrigtsen <larsi@gnus.org>
57828 Clarify :tls-parameters.
57830 2016-01-31 Lars Ingebrigtsen <larsi@gnus.org>
57832 Always boot TLS if given parameters
57834 * src/process.c (connect_network_socket): If we have the TLS
57835 parameters, then boot the socket.
57837 2016-01-31 Lars Ingebrigtsen <larsi@gnus.org>
57839 Add documentation for :tls-parameters
57841 * doc/lispref/processes.texi (Network Processes): Mention
57844 * src/process.c (Fmake_network_process): Document the
57845 :tls-parameters parameter.
57847 2016-01-31 Lars Ingebrigtsen <larsi@gnus.org>
57849 Build fix for glibc systems.
57851 2016-01-31 Lars Ingebrigtsen <larsi@gnus.org>
57853 Make network connections work again on non-glibc systems
57855 * lisp/net/gnutls.el (open-gnutls-stream): Pass the TLS
57856 keywords in directly so that they can be used when doing
57857 synchronous DNS on non-synchronous connections.
57859 * lisp/net/network-stream.el (open-network-stream): Allow
57860 passing in the TLS parameters directly.
57862 * src/process.c (conv_numerical_to_lisp): New function to convert
57863 numerical addresses to Lisp.
57864 (Fmake_network_process): Rework the non-HAVE_ADDRINFO code
57865 paths so that they work again.
57866 (syms_of_process): Build fix for non-glibc systems.
57868 2016-01-31 Lars Ingebrigtsen <larsi@gnus.org>
57872 * src/process.c (Fmake_network_process): Build fix for systems
57873 without local sockets.
57875 2016-01-31 Lars Ingebrigtsen <larsi@gnus.org>
57877 Use XCAR/XCDR instead of Fcar etc
57879 2016-01-31 Lars Ingebrigtsen <larsi@gnus.org>
57881 Fix GC problem in async TLS connection
57883 * src/process.h: All Lisp_Object slots have to come first,
57884 otherwise they won't be protected from gc.
57886 2016-01-31 Lars Ingebrigtsen <larsi@gnus.org>
57888 Further TLS async work
57890 * src/gnutls.c (boot_error): New function to either signal an
57891 error or return an error code.
57892 (Fgnutls_boot): Don't signal errors when running asynchronously.
57894 * src/process.h (pset_status): Move here from process.c to be
57895 able to use from gnutls.c.
57897 * src/process.c (connect_network_socket): Do the TLS boot here
57898 when running asynchronously.
57899 (wait_reading_process_output): Rework the dns_processes
57900 handling for more safety.
57902 2016-01-31 Lars Ingebrigtsen <larsi@gnus.org>
57906 * lisp/net/gnutls.el (gnutls-async-sentinel): Remove.
57908 2016-01-31 Dave Barker <kzar@kzar.co.uk>
57910 Add ability to give rcirc servers an alias name
57912 * lisp/net/rcirc.el (rcirc-server-alist): Add :server-alias
57913 customization option.
57914 (rcirc, rcirc-connect): Take server alias into account.
57916 2016-01-31 Paul Eggert <eggert@cs.ucla.edu>
57918 Port new hybrid malloc to FreeBSD
57920 Problem reported by Wolfgang Jenkner in: https://bugs.gnu.org/22086#118
57921 * src/gmalloc.c (__malloc_initialize_hook, __after_morecore_hook)
57922 (__morecore) [HYBRID_MALLOC]: Define in this case too.
57924 2016-01-31 Wolfgang Jenkner <wjenkner@inode.at>
57926 * configure.ac: Stop using mmap for buffers for FreeBSD.
57928 2016-01-31 Michael Albinus <michael.albinus@gmx.de>
57930 Merge changes from Tramp repository
57932 * doc/misc/Makefile.in (${buildinfodir}/tramp.info tramp.html):
57933 No EXTRA_OPTS needed.
57935 * doc/misc/tramp.texi: Merge changes from Emacsemacs-25
57936 branch, especially for @trampfn{}.
57937 (Top): Move @ifnottex down.
57938 (History): XEmacs support has been removed.
57939 (GVFS based methods, Remote processes): Do not use emacsgvfs flag.
57940 (Auto-save and Backup): Use both syntax versions.
57941 (File name Syntax): Remark on IPv6 adresses is valid for
57942 unified syntax only.
57944 * doc/misc/trampver.texi: Do not set emacsgvfs flag.
57946 2016-01-30 Paul Eggert <eggert@cs.ucla.edu>
57950 2016-01-30 Glenn Morris <rgm@gnu.org>
57952 * lisp/vc/add-log.el (find-change-log): Use locate-dominating-file.
57954 2016-01-30 Matthew Carter <m@ahungry.com>
57956 Quote table names for postgres listings (sql-mode)
57958 * lisp/progmodes/sql.el (sql-postgres-completion-object): Avoid passing
57959 unquoted table names to the completion list.
57961 2016-01-30 Glenn Morris <rgm@gnu.org>
57963 Change Smerge "Mine" and "Other" for "Upper" and "Lower. (Bug#20878)
57965 * lisp/vc/smerge-mode.el (smerge-diff-switches)
57966 (smerge-context-menu, smerge-match-conflict, smerge-swap): Doc fixes.
57967 (smerge-upper, smerge-upper-face, smerge-keep-upper)
57968 (smerge-diff-base-upper): Rename from smerge-mine, smerge-mine-face,
57969 smerge-keep-mine, smerge-diff-base-mine. Update all uses.
57970 (smerge-mine-face, smerge-other-face): Remove obsolete face aliases.
57971 (smerge-lower, smerge-lower-face, smerge-lower-re, smerge-keep-lower)
57972 (smerge-diff-base-lower): Rename from smerge-other, smerge-other-face,
57973 smerge-other-re, smerge-keep-other, smerge-diff-base-lower.
57975 (smerge-basic-map): Add "l" and "u" bindings.
57976 (smerge-mode-menu): Update menu bindings for renaming.
57977 (smerge-font-lock-keywords): Update face names.
57978 (smerge-match-names): Update names.
57979 (smerge-diff-upper-lower): Rename from smerge-diff-mine-other.
57980 (smerge-match-conflict, smerge-ediff): Rename local variables.
57981 (smerge-makeup-conflict): Relabel markers.
57982 (smerge-parsep-re): Use renamed variables.
57984 2016-01-30 Paul Eggert <eggert@cs.ucla.edu>
57986 Port recent my_edata change to MS-Windows
57988 * src/lastfile.c (my_edata): Also define if WINDOWSNT.
57990 2016-01-30 Lars Ingebrigtsen <larsi@gnus.org>
57992 Rework the mechanisms for async GnuTLS connections
57994 * lisp/net/gnutls.el (open-gnutls-stream): Compute the
57995 gnutls-boot parameters and pass them to the process object.
57996 (gnutls-negotiate): New parameter :return-keywords that won't
57997 connect to anything, just compute the keywords.
57999 * lisp/url/url-http.el (url-http): Revert async TLS sentinel
58000 hack, which is no longer necessary.
58002 * src/gnutls.c (Fgnutls_asynchronous_parameters): Rename from
58003 gnutls-mark-process.
58005 * src/process.c (connect_network_socket): If we're connecting to
58006 an asynchronous TLS socket, complete the GnuTLS boot sequence here.
58008 * src/process.h: New parameter gnutls_async_parameters.
58010 2016-01-30 Lars Ingebrigtsen <larsi@gnus.org>
58012 Fix segfault from double free
58014 * src/process.c (check_for_dns): Protect against double free
58017 2016-01-30 Lars Ingebrigtsen <larsi@gnus.org>
58021 2016-01-30 Lars Ingebrigtsen <larsi@gnus.org>
58023 Implement asynchronous GnuTLS connections
58025 * doc/misc/emacs-gnutls.texi (Help For Developers): Mention
58026 the nowait parameter.
58028 * lisp/net/gnutls.el (open-gnutls-stream): Allow asynchronous
58029 connections with the new nowait parameter.
58031 * lisp/net/network-stream.el (network-stream-open-tls): Pass
58032 on :nowait to open-gnutls-stream.
58034 * lisp/url/url-http.el (url-http): Don't overwrite the
58035 sentinel created by open-gnutls-stream.
58037 * src/gnutls.c (Fgnutls_mark_process): New function.
58039 * src/process.c (send_process): Don't write to GnuTLS sockets that
58040 haven't been initialized yed.
58042 * src/process.h: New slot gnutls_wait_p.
58044 2016-01-30 Paul Eggert <eggert@cs.ucla.edu>
58046 Tell Automake the new lib/Makefile.am is OK
58048 * lib/Makefile.am (AUTOMAKE_OPTIONS): Add -Wno-portability.
58050 2016-01-30 Paul Eggert <eggert@cs.ucla.edu>
58052 Make it easy to override preferred-branch test
58054 * Makefile.in (preferred-branch-is-current):
58055 Rename from emacs-25-branch-is-current. All uses changed.
58056 (PREFERRED_BRANCH): New macro.
58058 2016-01-30 Paul Eggert <eggert@cs.ucla.edu>
58060 Shrink static heap a bit
58062 * src/sheap.h: Include lisp.h, for Lisp_Object.
58063 (STATIC_HEAP_SIZE): Now an enum constant, not a macro.
58064 Make it 2 MiB * sizeof (Lisp_Object), which is a bit more
58065 conservative than the old value.
58068 2016-01-30 Paul Eggert <eggert@cs.ucla.edu>
58070 Fix extern symbols defined and not used
58072 * src/alloc.c: Always include <signal.h>.
58073 (malloc_warning) [!SIGDANGER && (SYSTEM_MALLOC || HYBRID_MALLOC)]:
58074 Do not define; unused.
58075 * src/emacs.c, src/lisp.h (might_dump) [!DOUG_LEA_MALLOC]: Now static.
58076 * src/gmalloc.c (gdefault_morecore): Rename from __default_morecore,
58077 to avoid collision with glibc. Now static. All uses changed.
58078 * src/lastfile.c (my_edata): Define only if
58079 ((!defined SYSTEM_MALLOC && !defined HYBRID_MALLOC && !defined
58080 WINDOWSNT) \ || defined CYGWIN || defined DARWIN_OS).
58083 2016-01-30 Paul Eggert <eggert@cs.ucla.edu>
58085 Build lib/e-*.o only on platforms that need it
58087 * configure.ac (hybrid malloc): Simplify configuration.
58088 (SHEAP_OBJ): Remove; no longer needed.
58089 (HYBRID_MALLOC): New var. Subst it.
58090 (HYBRID_MALLOC_LIB): New Automake conditional.
58091 * lib/Makefile.am (noinst_LIBRARIES): Add libegnu.a only if
58093 (libegnu_a_CPPFLAGS): Omit AM_CPPFLAGS; not needed.
58094 (MOSTLYCLEANFILES): Add libegnu.a.
58095 * src/Makefile.in (SHEAP_OBJ): Remove.
58096 (HYBRID_MALLOC): New macro.
58097 (base_obj): Use it to conditionally add sheap.o.
58098 (LIBEGNU_ARCHIVE): New macro.
58099 ($(LIBEGNU_ARCHIVE)): New rule, replacing $(lib)/libegnu.a.
58100 All uses of the latter replaced by the former.
58101 * src/alloc.c (USE_ALIGNED_ALLOC): Simplify configuration.
58102 Correct misspelling ALIGNED_ALLOC to HAVE_ALIGNED_ALLOC.
58103 * src/gmalloc.c: Update comment.
58104 * src/lisp.h (aligned_alloc)
58105 [!DOUG_LEA_MALLOC && !HYBRID_MALLOC && !SYSTEM_MALLOC]:
58109 2016-01-30 Paul Eggert <eggert@cs.ucla.edu>
58111 Include <malloc.h> when advisable
58113 This should help insulate us better from future glibc changes.
58114 It is good hygiene to include .h files for APIs that Emacs uses.
58115 Fix type clashes between Emacs and GNU <malloc.h> (Bug#22086).
58116 * configure.ac: Check for malloc.h.
58117 * src/alloc.c: Include <malloc.h> depending on HAVE_MALLOC_H,
58118 not on DOUG_LEA_MALLOC.
58119 * src/emacs.c, src/gmalloc.c (malloc_enable_thread):
58120 Remove decl (now in lisp.h).
58121 * src/gmalloc.c: Include stddef.h earlier, for ptrdiff_t.
58122 [emacs]: Include lisp.h.
58123 [HAVE_MALLOC_H]: Include <malloc.h>.
58124 (__MALLOC_HOOK_VOLATILE): New macro, if not already defined.
58125 (__after_morecore_hook, __malloc_initialize_hook, __morecore)
58126 (__default_morecore):
58127 [!HAVE_MALLOC_H]: New decls near non-inclusion of <malloc.h>.
58128 (calloc): Make it clear that the macro should not be used.
58129 Remove unused decl.
58130 (malloc_info): New macro, to avoid clash with glibc <malloc.h>.
58131 (__morecore, __default_morecore, __after_morecore_hook)
58132 (__malloc_extra_blocks, __malloc_initialize_hook, __free_hook)
58133 (__malloc_hook, __realloc_hook, __memalign_hook, memory_warnings):
58134 Remove later decls.
58135 (gmalloc_hook, gfree_hook, grealloc_hook):
58136 Rename from __malloc_hook, __free_hook, __realloc_hook to
58137 avoid type collision with glibc <malloc.h>. All uses changed.
58139 (__malloc_extra_blocks) [DOUG_LEA_MALLOC||HYBRID_MALLOC||SYSTEM_MALLOC]:
58141 (gmalloc_hook, __malloc_extra_blocks): Define even if [!HYBRID_MALLOC].
58142 (__malloc_initialize_hook, __after_morecore_hook):
58143 Declare with types compatible with glibc.
58144 (__memalign_hook, hybrid_calloc) [HYBRID_MALLOC]:
58145 Remove. All uses removed.
58146 * src/lisp.h (__malloc_extra_blocks, malloc_enable_thread): New decls.
58147 * src/ralloc.c, src/vm-limit.c:
58148 Simplify includes and include <malloc.h> if available.
58150 2016-01-30 Paul Eggert <eggert@cs.ucla.edu>
58152 * src/alloc.c: Include "sheap.h".
58154 (alloc_unexec_pre, alloc_unexec_post) [HYBRID_MALLOC]:
58155 Set and clear bss_sbrk_did_unexec, on all platforms not just Cygwin.
58156 * src/lisp.h (alloc_unexec_pre, alloc_unexec_post) [!DOUG_LEA_MALLOC]:
58157 Declare unconditionally.
58158 * src/unexcw.c, src/unexelf.c (bss_sbrk_did_unexec): Remove decl.
58159 (unexec): Don’t set or clear bss_sbrk_did_unexec;
58160 the caller now does this.
58163 2016-01-30 Paul Eggert <eggert@cs.ucla.edu>
58165 Pacify --enable-gcc-warnings when HYBRID_MALLOC
58167 * src/buffer.c (init_buffer):
58168 * src/emacs.c (main):
58169 * src/xsmfns.c (smc_save_yourself_CB, x_session_initialize):
58170 Use emacs_get_current_dir_name, not get_current_dir_name.
58171 * src/conf_post.h (aligned_alloc) [HYBRID_MALLOC && emacs]: New macro.
58172 (HYBRID_GET_CURRENT_DIR_NAME, get_current_dir_name): Remove.
58173 * src/emacs.c: Include "sheap.h".
58174 (report_sheap_usage): Remove decl.
58175 (Fdump_emacs) [HYBRID_MALLOC]: Report usage directly.
58176 Don't assume ptrdiff_t can be printed as int.
58177 * src/gmalloc.c [HYBRID_MALLOC]:
58178 Include "sheap.h" rather than declaring its contents by hand.
58179 (get_current_dir_name, gget_current_dir_name)
58180 (hybrid_get_current_dir_name): Remove.
58181 (emacs_abort): Remove duplicate decl.
58182 (aligned_alloc): Undef, like malloc etc.
58183 (ALLOCATED_BEFORE_DUMPING): Now a static function, not a macro.
58184 Make it a bit more efficient.
58185 (malloc_find_object_address): Remove unused decl.
58186 (enum mcheck_status, mcheck, mprobe, mtrace, muntrace, struct mstats)
58187 (mstats, memory_warnings): Declare only if GC_MCHECK.
58188 * src/lisp.h (emacs_get_current_dir_name):
58189 New decl, replacing get_current_dir_name.
58190 * src/sheap.c: Include sheap.h first.
58191 (STATIC_HEAP_SIZE): Remove; now in sheap.h.
58192 (debug_sheap): Now static.
58193 (bss_sbrk_buffer_end): Remove; no longer used.
58194 (bss_sbrk_ptr): Now static and private.
58195 (bss_sbrk_did_unexec): Now bool.
58196 (BLOCKSIZE): Remove, to avoid GCC warning about its not being used.
58197 (bss_sbrk): Don't treat request_size 0 as special, since the code
58198 works without this being a special case.
58199 Avoid overflow if request size exceeds INT_MAX.
58200 (report_sheap_usage): Remove; now done in emacs.c.
58201 * src/sheap.h: New file.
58202 * src/sysdep.c (get_current_dir_name): Remove macro.
58204 (emacs_get_current_dir_name): Rename function from
58205 get_current_dir_name. Handle HYBRID_MALLOC here;
58209 2016-01-30 Paul Eggert <eggert@cs.ucla.edu>
58211 Report static heap usage on non-Cygwin, too
58213 * src/emacs.c (Fdump_emacs) [HYBRID_MALLOC]: Report sheap usage here ...
58214 * src/unexcw.c (unexec): ... instead of here, since sheap can be used
58215 on platforms other than Cygwin (Bug#22086).
58217 2016-01-30 Paul Eggert <eggert@cs.ucla.edu>
58219 Pacify GCC on extern decls
58221 * src/unexelf.c (bss_sbrk_did_unexec): Move decl to top level
58222 to pacify recent GCC (Bug#22086).
58224 2016-01-30 Wolfgang Jenkner <wjenkner@inode.at>
58226 Add musl patch to support HYBRID_MALLOC on elf systems
58228 * src/gmalloc.c: Adjust for HYBRID_MALLOC in the non CYGWIN case.
58229 (__default_morecore): Here, in particular.
58230 * configure.ac: Define HYBRID_MALLOC when unexelf.o is used.
58231 New variable SHEAP_OBJ.
58232 * src/Makefile.in: Use it.
58235 2016-01-30 Rich Felker <dalias@libc.org> (tiny change)
58237 unexelf.c hook to support HYBRID_MALLOC on ELF
58239 * src/unexelf.c (unexec) [HYBRID_MALLOC]:
58240 Define bss_sbrk_did_unexec (Bug#22086).
58242 2016-01-30 Wolfgang Jenkner <wjenkner@inode.at>
58244 Link temacs with gnulib compiled with -Demacs
58246 This is done to support HYBRID_MALLOC, since some static variables
58247 (e.g., last_environ in putenv.c) hold pointers to memory malloced
58248 before dumping (Bug#22086).
58249 * lib/Makefile.am: Add incantation to install libegnu.a.
58250 * src/Makefile.in ($(lib)/libgnu.a): Replace with libegnu.a
58251 (temacs$(EXEEXT)): Use it.
58253 2016-01-30 Wolfgang Jenkner <wjenkner@inode.at>
58255 Internal linkage for gmalloc etc. if HYBRID_MALLOC
58257 This avoids clashes with symbols if the after-dump malloc is
58258 derived from Doug Lea's implementation (Bug#22086).
58260 * src/gmalloc.c (emacs_abort, __morecore, __default_morecore):
58261 Move declarations up. For HYBRID_MALLOC, turn all `extern'
58262 declarations below to `static' ones.
58263 (aligned_alloc): Declare for !MSDOS as well.
58264 (heapsize, _fraghead): Move resp. copy declaration downwards.
58265 For HYBRID_MALLOC, conditionalize out the other definitions,
58266 since the previous `static' declarations double as tentative
58267 definitions, anyway.
58268 (_malloc, _free, _realloc, __free_hook, _aligned_blocks)
58269 (__realloc_hook, __memalign_hook): Conditionalize out.
58270 (cfree, memalign, valloc): Ditto.
58272 2016-01-30 Paul Eggert <eggert@cs.ucla.edu>
58280 2016-01-30 Paul Eggert <eggert@cs.ucla.edu>
58282 Merge from origin/emacs-25
58284 3f481ad Rename xref-query-replace to xref-query-replace-in-results
58285 62f4ed4 Update cl-defgeneric and cl-defmethod docstrings
58286 2111e0e Comment out next-error-function integration in xref
58287 4e11ad3 Correct a use of "which" in intro.texi
58288 a1865bc Distinguish the two meanings of Java's keyword "default". Fixes bug #22358.
58289 76045f7 Don't operate on menu bar of nonexistent frame
58290 c32f3bc Unbreak the GNUstep build.
58292 2016-01-30 Paul Eggert <eggert@cs.ucla.edu>
58298 2016-01-30 Andreas Schwab <schwab@linux-m68k.org>
58300 Re-enable checks in member, memql, delete to complain about non-lists
58302 * src/fns.c (Fmember, Fmemql, Fdelete): Revert 2007-10-16 change.
58304 2016-01-30 Lars Ingebrigtsen <larsi@gnus.org>
58306 Clean up compilation warnings
58308 2016-01-30 Lars Ingebrigtsen <larsi@gnus.org>
58310 Make async resolution more efficient
58312 * src/process.c (wait_reading_process_output): Use a list of
58313 process objects instead of looping through an array to check
58314 for name resolution. This should be much faster.
58316 2016-01-29 Lars Ingebrigtsen <larsi@gnus.org>
58318 More async memory leaks
58320 * src/process.c (check_for_dns): Free even more allocated async stuff.
58322 2016-01-29 Lars Ingebrigtsen <larsi@gnus.org>
58324 Compilation for for systems with getaddrinfo_a
58326 * src/process.c (Fmake_network_process): Make stuff work again on
58327 systems with getaddrinfo_a.
58329 2016-01-29 Lars Ingebrigtsen <larsi@gnus.org>
58331 Save correct server data
58333 * src/process.c (connect_network_socket): Save the correct contact
58336 2016-01-29 Lars Ingebrigtsen <larsi@gnus.org>
58338 Compilation for for non-GNU systems
58340 * src/process.c (Fmake_network_process): Make compilation work
58341 again on hosts that don't have getaddrinfo_a.
58343 2016-01-29 Lars Ingebrigtsen <larsi@gnus.org>
58345 Avoid memory leaks in async DNS
58347 * src/process.c (check_for_dns): Free async DNS resources after
58350 2016-01-29 Lars Ingebrigtsen <larsi@gnus.org>
58352 * src/process.c (check_for_dns): Free the result data.
58354 2016-01-29 Lars Ingebrigtsen <larsi@gnus.org>
58356 Fix server connections
58358 * src/process.c (Fmake_network_process): Make creating server
58359 listening ports work again.
58361 2016-01-29 Lars Ingebrigtsen <larsi@gnus.org>
58363 Further make_network_process clean up
58365 * src/process.c (Fmake_network_process): Remove setting of unused
58368 2016-01-29 Lars Ingebrigtsen <larsi@gnus.org>
58370 Clean up GETADDRINFO usage in make-network-process
58372 * src/process.c (Fmake_network_process): Clean up the GETADDRINFO
58375 2016-01-29 Lars Ingebrigtsen <larsi@gnus.org>
58377 Implement asynchronous name resolution
58379 * src/process.c (Fmake_network_process): Do asynchronous DNS
58380 lookups if we have getaddrinfo_a and the user requests :nowait.
58381 (check_for_dns): New function.
58382 (wait_reading_process_output): Check for pending name
58383 resolution in the idle loop.
58385 * src/process.h: Add structure for async DNS.
58387 2016-01-28 Glenn Morris <rgm@gnu.org>
58389 Remove some useless-use-of eval.
58391 * lisp/gnus/gnus.el (gnus-load-hook): Don't use eval.
58392 * lisp/gnus/nnrss.el (xml): Simply require it.
58393 (xml-rpc-method-call): Use declare-function.
58395 2016-01-28 Lars Ingebrigtsen <larsi@gnus.org>
58399 * src/process.c (connect_network_socket): Free previous sockaddr
58400 before allocating a new one.
58402 2016-01-28 Lars Ingebrigtsen <larsi@gnus.org>
58404 Return IP addresses in the correct order
58406 * src/process.c (Fmake_network_process): Return the IP addresses
58407 in the same order as getaddrinfo does.
58408 (set_network_socket_coding_system): Clean up the code slightly.
58410 2016-01-28 Lars Ingebrigtsen <larsi@gnus.org>
58412 Add checks for getaddrinfo_a
58414 * configure.ac: Detect getaddrinfo_a.
58416 2016-01-28 Lars Ingebrigtsen <larsi@gnus.org>
58418 Refactor make_network_process
58420 * src/process.c (set_network_socket_coding_system)
58421 (connect_network_socket): Refactor out of
58422 make_network_process to allow calling connect_network_socket
58424 (Fmake_network_process): Do nothing but parsing the parameters
58425 and name resolution, leaving the connection to
58426 connect_network_socket.
58428 2016-01-28 Glenn Morris <rgm@gnu.org>
58430 * lisp/emacs-lisp/bytecomp.el (byte-compile-nogroup-warn):
58431 Warn if defcustom has no type. (Bug#16276)
58433 2016-01-27 Glenn Morris <rgm@gnu.org>
58435 * test/lisp/vc/vc-hg-tests.el: Move from test/automated/.
58437 2016-01-25 Stefan Monnier <monnier@iro.umontreal.ca>
58439 (rng-c-fix-escaped-newlines): Use subst-char-in-string
58441 * lisp/nxml/rng-cmpct.el (rng-c-fix-escaped-newlines):
58442 Use subst-char-in-string.
58444 2016-01-25 Stefan Monnier <monnier@iro.umontreal.ca>
58446 * lisp/textmodes/sgml-mode.el (sgml-forward-sexp): New function
58448 (sgml-cursor-sensor, sgml-pretty-print, sgml-parse-tag-backward)
58449 (sgml-calculate-indent): Use it.
58451 2016-01-25 Stefan Monnier <monnier@iro.umontreal.ca>
58453 * lisp/org: Fix some compiler warnings
58455 * lisp/org/ob-core.el (org-babel-check-confirm-evaluate)
58456 (org-babel-map-src-blocks): Don't emit warnings if added vars are not used.
58457 (*this*): Declare as dyn-bound.
58458 (org-babel-expand-src-block, org-babel-load-in-session)
58459 (org-babel-switch-to-session-with-code, org-babel-get-rownames):
58461 (org-babel-combine-header-arg-lists): Remove unused var `args'.
58462 (org-babel-find-named-block): Remove unused var `msg'.
58464 * lisp/org/org-src.el (org-inhibit-startup, org-src-fontify-natively):
58465 Declare as dyn-bound.
58466 (org-edit-src-code): Remove unused var `lfmt'.
58467 (org-edit-fixed-width-region): Remove unused var `preserve-indentation'.
58469 2016-01-25 Stefan Monnier <monnier@iro.umontreal.ca>
58471 * lisp/font-lock.el: Use #' to quote function symbols
58473 2016-01-23 Michael Albinus <michael.albinus@gmx.de>
58475 Improve user name completion in Tramp
58477 * lisp/net/tramp.el (tramp-parse-passwd, tramp-parse-etc-group):
58478 Call also "getent passwd" or "getent group", if possible.
58479 (tramp-parse-putty): Cache the result.
58481 2016-01-22 Michael Albinus <michael.albinus@gmx.de>
58483 * etc/NEWS: Move kqueue entries to Emacs 25.1 sections.
58485 2016-01-20 Glenn Morris <rgm@gnu.org>
58487 Remove handling of non-string time-stamp formats, obsolete for 20 years.
58489 * lisp/time-stamp.el (time-stamp-format): Doc fix.
58490 (time-stamp-old-format-warn, time-stamp-fconcat): Remove.
58491 (time-stamp-string): Ignore non-string formats.
58493 2016-01-20 Eli Zaretskii <eliz@gnu.org>
58495 Anoter fix for problematic merge from emacs-25
58497 * src/w32fns.c (globals_of_w32fns): Move initialization of
58498 resetstkoflw to a non-Cygwin part.
58500 2016-01-20 Michael Albinus <michael.albinus@gmx.de>
58502 * test/Makefile.in (mostlyclean): Use ${LOGFILES}.
58504 2016-01-20 Eli Zaretskii <eliz@gnu.org>
58506 Fix MS-Windows build broken by a botched merge from emacs-25
58508 * src/w32.c (w32_crypto_hprov): New static variable.
58509 (globals_of_w32): Initialize w32_crypto_hprov.
58510 (w32_init_crypt_random, w32_init_random): New functions.
58511 Include wincrypt.h.
58512 * src/w32.h (w32_init_random): Add prototype.
58514 2016-01-19 Vincent Belaïche <vincentb1@users.sourceforge.net>
58516 Correct a whole bunch of bugs coming with renamed cell relocation.
58518 * lisp/ses.el (ses-localvars): rename variable
58519 `ses--renamed-cell-symb-list' into `ses--in-killing-named-cell-list'
58520 and adjust the comment about it.
58521 (ses-plist-delq): new defun.
58522 (ses--ses-buffer-list): new defvar.
58523 (ses--unbind-cell-name): new defun.
58524 (ses-relocate-symbol): Do not relocate symbol when it is a named cell.
58525 (ses-relocate-formula): Undo change of
58526 2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net that was
58527 preventing relocation for named cell --- now doing this is delegated
58528 to function `ses-relocate-symbol'.
58529 (ses-relocate-range): In docstring, undo change of
58530 2016-01-03T07:31:52Z!johnw@newartisans.com, `ses-range' must remain
58531 lower case as it is not a variable.
58532 (ses-relocate-all): Cell name relocation : 1) check that cell is a
58533 renamed cell by testing `ses-cell' property to :ses-named, rather than
58534 comparing name to corresponding standard name. Set rowcol of renamed
58535 cell into the hashmap --- `ses-cell' property must not be used for
58536 that as the same name can be used for different locations in different
58537 SES sheets ; 2) use `local-variable-if-set-p' rather than `boundp' and
58538 `local-variable-p' to check if cell name is already in use in this
58539 sheet or needs initialization.
58540 (ses-relocate-all): Cell value relocation : 1) like for name
58541 relocation use the `ses-cell' property rather than comparing actual
58542 name to corresponding standard name. 2) Correct bug introduced in
58543 2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net, as the test was
58544 made the other way round than the intention --- ie value relocation
58545 was disabled for standard cell, not for renamed cell as was the
58547 (ses-relocate-all): Add loop for unbinding deleted renamed cells
58549 (ses-killbuffer-hook): new defun.
58550 (ses-mode): Add the ses--ses-buffer-list maintenance mechanism ---
58551 kill buffer hook, plus pushing current buffer if new in list.
58552 (ses-delete-row, ses-delete-column): Collect deleted renamed cells
58553 into `ses--in-killing-named-cell-list'.
58554 (ses-rename-cell): Remove update of variable
58555 `ses--renamed-cell-symb-list', this variable is renamed to
58556 `ses--in-killing-named-cell-list', and its setting is done in
58557 functions `ses-delete-row' and , `ses-delete-column' now.
58558 (ses-rename-cell): Change correction of
58559 2015-12-30T23:10:37Z!vincentb1@users.sourceforge.net concerning
58560 computation of the range over which `cursor-intangible' property was
58561 to be updated. This correction was ok for non spilling cells, but not
58562 for cells spilling over following blank cells. Simply use
58563 `next-single-property-change' rather than computing the end column
58564 from column widths.
58566 2016-01-18 John Wiegley <johnw@newartisans.com>
58570 2016-01-18 John Wiegley <johnw@newartisans.com>
58572 Merge from origin/emacs-25
58574 3ae7934 ; * etc/NEWS: Mark entries that don't need further treatment.
58575 6165c36 * lisp/files.el (dir-locals--all-files): Respect absolute file-names
58576 2ffdf15 * lisp/help-fns.el (describe-variable): Fix a left-over parenthesis
58577 71ecd62 * lisp/dired-x.el (dired-omit-here-always): Use add-dir-local-variable
58578 f0b82b3 * lisp/files.el (dir-locals--all-files): Use completion instead of wildcards
58579 86e4513 Fix incompatbilities with MS-Windows 2000 and older
58580 4e96521 Mention in PROBLEMS an issue with MS-Windows NT4
58581 15c23aa Ensure 8-byte aligned memory allocation on MS-Windows 9X
58582 39afa42 Fix tests for active region in hideif.el
58583 05df666 Fix interactive specs in some hideif.el commands
58585 2016-01-18 John Wiegley <johnw@newartisans.com>
58589 2016-01-18 Paul Eggert <eggert@cs.ucla.edu>
58591 Avoid stdio in SIGINT handler
58593 * admin/merge-gnulib (GNULIB_MODULES): Add ignore-value.
58594 * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
58595 * lib/ignore-value.h: New file, from gnulib.
58596 * src/keyboard.c: Include it.
58597 (write_stdout, read_stdin): New functions.
58598 (handle_interrupt): Use them instead of printf and getchar,
58599 and avoid fflush when handling signals.
58601 2016-01-18 Jens Lechtenboerger <jens.lechtenboerger@fsfe.org>
58603 Refactor mml-smime.el, mml1991.el, mml2015.el
58605 (Maybe this is the last merge from Gnus git to Emacs git)
58607 Cf. discussion on ding mailing list, messages in
58608 <http://thread.gmane.org/gmane.emacs.gnus.general/86228>.
58609 Common code from the three files mml-smime.el, mml1991.el, and
58610 mml2015.el is moved to mml-sec.el. Auxiliary functions are added
58613 The code is supported by test cases with necessary test keys.
58615 Documentation in message.texi is updated.
58617 * doc/misc/message.texi (Security, Using S/MIME):
58618 Update for refactoring mml-smime.el, mml1991.el, mml2015.el.
58619 (Using OpenPGP): Rename from "Using PGP/MIME"; update contents.
58620 (Passphrase caching, Encrypt-to-self, Bcc Warning): New sections.
58622 * lisp/gnus/gnus-util.el (gnus-test-list, gnus-subsetp, gnus-setdiff):
58625 * lisp/gnus/mml-sec.el: Require gnus-util and epg.
58626 (epa--select-keys): Autoload.
58627 (mml-signencrypt-style-alist, mml-secure-cache-passphrase): Doc fix.
58628 (mml-secure-openpgp-signers): New user option;
58629 make mml1991-signers and mml2015-signers obsolete aliases to it.
58630 (mml-secure-smime-signers): New user option;
58631 make mml-smime-signers an obsolete alias to it.
58632 (mml-secure-openpgp-encrypt-to-self): New user option;
58633 make mml1991-encrypt-to-self and mml2015-encrypt-to-self obsolete
58635 (mml-secure-smime-encrypt-to-self): New user option;
58636 make mml-smime-encrypt-to-self an obsolete alias to it.
58637 (mml-secure-openpgp-sign-with-sender): New user option;
58638 make mml2015-sign-with-sender an obsolete alias to it.
58639 (mml-secure-smime-sign-with-sender): New user option;
58640 make mml-smime-sign-with-sender an obsolete alias to it.
58641 (mml-secure-openpgp-always-trust): New user option;
58642 make mml2015-always-trust an obsolete alias to it.
58643 (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
58645 (mml-secure-cust-usage-lookup, mml-secure-cust-fpr-lookup)
58646 (mml-secure-cust-record-keys, mml-secure-cust-remove-keys)
58647 (mml-secure-add-secret-key-id, mml-secure-clear-secret-key-id-list)
58648 (mml-secure-cache-passphrase-p, mml-secure-cache-expiry-interval)
58649 (mml-secure-passphrase-callback, mml-secure-check-user-id)
58650 (mml-secure-secret-key-exists-p, mml-secure-check-sub-key)
58651 (mml-secure-find-usable-keys, mml-secure-select-preferred-keys)
58652 (mml-secure-fingerprint, mml-secure-filter-keys)
58653 (mml-secure-normalize-cust-name, mml-secure-select-keys)
58654 (mml-secure-select-keys-1, mml-secure-signer-names, mml-secure-signers)
58655 (mml-secure-self-recipients, mml-secure-recipients)
58656 (mml-secure-epg-encrypt, mml-secure-epg-sign): New functions.
58658 * lisp/gnus/mml-smime.el: Require epg;
58659 refactor declaration and autoloading of epg functions.
58660 (mml-smime-use): Doc fix.
58661 (mml-smime-cache-passphrase, mml-smime-passphrase-cache-expiry):
58663 (mml-smime-get-dns-cert, mml-smime-get-ldap-cert):
58664 Use format instead of gnus-format-message.
58665 (mml-smime-epg-secret-key-id-list): Remove variable.
58666 (mml-smime-epg-passphrase-callback, mml-smime-epg-find-usable-key)
58667 (mml-smime-epg-find-usable-secret-key): Remove functions.
58668 (mml-smime-epg-sign, mml-smime-epg-encrypt): Refactor.
58670 * lisp/gnus/mml1991.el (mml1991-cache-passphrase)
58671 (mml1991-passphrase-cache-expiry): Obsolete.
58672 (mml1991-epg-secret-key-id-list): Remove variable.
58673 (mml1991-epg-passphrase-callback, mml1991-epg-find-usable-key)
58674 (mml1991-epg-find-usable-secret-key): Remove functions.
58675 (mml1991-epg-sign, mml1991-epg-encrypt): Refactor.
58677 * lisp/gnus/mml2015.el (mml2015-cache-passphrase)
58678 (mml2015-passphrase-cache-expiry): Obsolete.
58679 (mml2015-epg-secret-key-id-list): Remove variable.
58680 (mml2015-epg-passphrase-callback, mml2015-epg-check-user-id)
58681 (mml2015-epg-check-sub-key, mml2015-epg-find-usable-key)
58682 (mml2015-epg-find-usable-secret-key): Remove functions.
58683 (mml2015-epg-decrypt, mml2015-epg-clear-decrypt, mml2015-epg-sign)
58684 (mml2015-epg-encrypt): Refactor.
58686 2016-01-18 Paul Eggert <eggert@cs.ucla.edu>
58690 This mostly just updates copyright dates of gnulib files.
58691 It also updates to the latest version of texinfo.tex.
58693 2016-01-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
58695 Move variables to inner loop, preparing for Mac port merge
58697 * src/keyboard.c (command_loop_1): Move variables `cmd',
58698 `keybuf', and `i' to inner loop.
58700 2016-01-17 Bill Wohler <wohler@newt.com>
58702 * lisp/mh-e/mh-e.el (mh-version): Add +git to version.
58704 2016-01-16 Stefan Monnier <monnier@iro.umontreal.ca>
58706 * lisp/emacs-lisp/syntax.el (syntax-ppss-table): New var
58709 * lisp/font-lock.el (font-lock-fontify-syntactically-region): Use it.
58711 2016-01-16 Stefan Monnier <monnier@iro.umontreal.ca>
58713 lisp/nxml: Use syntax-tables for comments
58715 * lisp/nxml/nxml-mode.el (nxml-set-face): Prepend.
58716 (nxml-mode): Set syntax-ppss-table.
58717 Use sgml-syntax-propertize-function for syntax-propertize-function.
58718 Let font-lock highlight strings and comments.
58719 (nxml-degrade): Don't touch "nxml-inside" property any more.
58720 (nxml-after-change, nxml-after-change1): Remove functions.
58721 (comment): Don't set fontify rule any more.
58722 (nxml-fontify-attribute): Don't highlight the value any more.
58723 (nxml-namespace-attribute-value-delimiter, nxml-namespace-attribute-value)
58724 (nxml-comment-delimiter, nxml-comment-content): Remove faces.
58726 * lisp/nxml/nxml-rap.el (nxml-scan-end): Remove.
58727 (nxml-get-inside, nxml-inside-start, nxml-inside-end): Use syntax-ppss.
58728 (nxml-clear-inside, nxml-set-inside): Remove.
58729 (nxml-scan-after-change): Remove function.
58730 (nxml-scan-prolog, nxml-tokenize-forward): Simplify.
58731 (nxml-ensure-scan-up-to-date): Use syntax-propertize.
58732 (nxml-move-outside-backwards):
58733 * lisp/nxml/nxml-outln.el (nxml-section-tag-backward): Adjust to new
58734 nxml-inside-start behavior.
58736 * lisp/nxml/nxml-util.el (nxml-debug-set-inside)
58737 (nxml-debug-clear-inside): Remove macros.
58739 * lisp/nxml/xmltok.el (xmltok-forward-special): Remove function.
58740 (xmltok-scan-after-comment-open): Simplify.
58742 2016-01-16 Stefan Monnier <monnier@iro.umontreal.ca>
58744 * lisp/progmodes/elisp-mode.el
58745 (elisp--font-lock-flush-elisp-buffers): Fix comment
58747 2016-01-16 Stefan Monnier <monnier@iro.umontreal.ca>
58749 * lisp/nxml: Use standard completion; it also works for company-mode
58751 * lisp/nxml/nxml-mode.el (nxml-complete): Obsolete.
58752 (nxml-completion-at-point-function): Remove.
58753 (nxml-mode): Don't set completion-at-point-functions.
58754 * lisp/nxml/rng-nxml.el (rng-nxml-mode-init): Set it here instead.
58755 (rng-completion-at-point): Rename from rng-complete and mark it
58756 non-interactive. It is now to be used as completion-at-point-function.
58757 (rng-complete-tag, rng-complete-end-tag, rng-complete-attribute-name)
58758 (rng-complete-attribute-value): Don't perform completion, but return
58759 completion data instead.
58760 (rng-complete-qname-function, rng-generate-qname-list): Add a few
58761 arguments, previously passed via dynamic coping.
58762 (rng-strings-to-completion-table): Rename from
58763 rng-strings-to-completion-alist. Don't return an alist. Don't both
58764 sorting and uniquifying.
58766 * lisp/nxml/rng-util.el (rng-complete-before-point): Delete function.
58767 (rng-completion-exact-p, rng-quote-string): Delete functions.
58769 * lisp/nxml/rng-valid.el (rng-recover-start-tag-open)
58770 (rng-missing-attributes-message, rng-missing-element-message)
58771 (rng-mark-missing-end-tags): Use explicit ".." in formats rather than
58772 calling rng-quote-string everywhere.
58774 2016-01-16 Stefan Monnier <monnier@iro.umontreal.ca>
58776 Use sgml-electric-tag-pair-mode also in nxml-mode
58778 * lisp/nxml/rng-nxml.el: Require sgml-mode.
58779 (rng-nxml-easy-menu): Add entry for sgml-electric-tag-pair-mode.
58780 (rng-complete-qname-function): Use complete-with-action.
58782 * lisp/textmodes/sgml-mode.el (sgml-electric-tag-pair-before-change-function):
58783 Let-bind forward-sexp-function, since nxml-mode binds it to
58784 something incompatible.
58786 * lisp/nxml/nxml-mode.el: Use setq-local and defvar-local.
58788 2016-01-15 Stefan Monnier <monnier@iro.umontreal.ca>
58790 * lisp/nxml/xmltok.el: Mark the "sole --" rather than the comment
58793 * lisp/nxml/xmltok.el (xmltok-scan-after-comment-open): Put the error
58794 marker on the "sole --" rather than on the comment opener.
58796 2016-01-15 Sam Steingold <sds@gnu.org>
58798 replace `tramp-compat-split-string' (removed) with `split-string'
58800 (python-shell-tramp-refresh-process-environment)
58801 (python-shell-calculate-pythonpath): use `split-string'
58802 instead of defunct `tramp-compat-split-string'
58804 2016-01-15 Stefan Monnier <monnier@iro.umontreal.ca>
58806 Update nXML to use Emacs's Unicode support, and lexical-binding
58808 * etc/nxml/*.el: Remove obsolete char-name files.
58809 * lisp/nxml/xsd-regexp.el (xsdre-range-list-difference): Remove unused
58811 * lisp/nxml/rng-nxml.el (rng-set-state-after): Don't assume point-min==1.
58812 * lisp/nxml/rng-match.el (rng-update-match-state): Simplify.
58813 * lisp/nxml/nxml-outln.el (nxml-outline-state-transform-exceptions)
58814 (nxml-target-section-pos, nxml-depth-in-target-section)
58815 (nxml-outline-state-transform-alist)
58816 (nxml-outline-display-section-tag-function): Move decl before first use.
58817 * lisp/nxml/nxml-mode.el (nxml-char-name-ignore-case)
58818 (nxml-char-name-alist, nxml-char-name-table)
58819 (nxml-autoload-char-name-set-list, nxml-named-char-history): Remove vars.
58820 (nxml-enable-char-name-set, nxml-disable-char-name-set)
58821 (nxml-char-name-set-enabled-p, nxml-autoload-char-name-set)
58822 (nxml-define-char-name-set, nxml-get-char-name): Remove functions.
58823 (nxml-insert-named-char): Use read-char-by-name instead.
58824 (nxml-char-ref-display-extra): Use get-char-code-property.
58825 * lisp/nxml/nxml-maint.el (nxml-create-unicode-char-name-sets):
58827 * lisp/nxml/nxml-glyph.el, lisp/nxml/nxml-uchnm.el: Remove files.
58829 2016-01-15 Michael Albinus <michael.albinus@gmx.de>
58831 Add "sg" method to Tramp
58833 * doc/misc/tramp.texi (Inline methods): Add "sg" method.
58834 (Customizing Completion): Add function `tramp-parse-etc-group'.
58836 * lisp/net/tramp-sh.el (tramp-methods) <sg>: Add. (Bug#22329)
58837 (tramp-completion-function-alist-sg): New defconst.
58838 (top): Completion function for "sg" is
58839 `tramp-completion-function-alist-sg'.
58841 * lisp/net/tramp.el (tramp-completion-function-alist): Adapt docstring.
58842 (tramp-parse-etc-group, tramp-parse-etc-group-group): New defuns.
58844 2016-01-14 Michael Albinus <michael.albinus@gmx.de>
58846 Remove XEmacs compatibility in Tramp
58848 * doc/misc/tramp.texi: Replace flags by their hard coded name.
58849 Remove unused flags and the enclosed alternative text for XEmacs.
58851 * doc/misc/trampver.texi: Use "Tramp" CamelCase. Rename "emacs"
58852 and "xemacs" flags to "unified" and "separate". Remove flags
58853 "emacsgw", "emacsname", "emacsdir", "ftppackagename",
58854 "emacsothername", "emacsotherdir" and "emacsotherfilename".
58856 * lisp/net/trampver.el (tramp-version): Set to "2.3.0-pre".
58858 * lisp/net/tramp.el (bkup-backup-directory-info)
58859 (directory-sep-char, ls-lisp-use-insert-directory-program)
58860 (outline-regexp, tramp-backup-directory-alist)
58861 (tramp-default-method, tramp-shell-prompt-pattern, tramp-syntax)
58862 (tramp-file-name-regexp-unified)
58863 (tramp-file-name-regexp-separate)
58864 (tramp-completion-file-name-regexp-unified)
58865 (tramp-completion-file-name-regexp-separate, tramp-chunksize)
58866 (tramp-get-method-parameter, tramp-find-method, tramp-find-user)
58867 (tramp-debug-message, tramp-progress-reporter-update)
58868 (with-tramp-progress-reporter)
58869 (tramp-rfn-eshadow-setup-minibuffer)
58870 (rfn-eshadow-setup-minibuffer-hook, tramp-unload-hook)
58871 (tramp-rfn-eshadow-update-overlay)
58872 (rfn-eshadow-update-overlay-hook, tramp-default-file-modes)
58873 (tramp-file-name-for-operation)
58874 (tramp-completion-file-name-handler)
58875 (tramp-autoload-file-name-handler, tramp-completion-mode-p)
58876 (tramp-handle-directory-files)
58877 (tramp-handle-directory-files-and-attributes)
58878 (tramp-handle-dired-uncache, tramp-handle-find-backup-file-name)
58879 (tramp-handle-insert-file-contents, tramp-handle-load)
58880 (tramp-handle-shell-command)
58881 (tramp-handle-verify-visited-file-modtime)
58882 (tramp-handle-file-notify-valid-p, tramp-accept-process-output)
58883 (tramp-check-for-regexp, tramp-wait-for-regexp)
58884 (tramp-send-string, tramp-mode-string-to-int)
58885 (tramp-get-local-gid, tramp-check-cached-permissions)
58886 (tramp-get-remote-tmpdir, tramp-make-tramp-temp-file)
58887 (auto-save-file-name-transforms)
58888 (tramp-handle-make-auto-save-file-name, tramp-read-passwd)
58889 (tramp-clear-passwd, tramp-time-diff):
58890 * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp)
58891 (directory-sep-char, tramp-adb-file-name-handler-alist)
58892 (tramp-adb-parse-device-names)
58893 (tramp-adb-handle-expand-file-name)
58894 (tramp-adb-handle-file-truename, tramp-adb--gnu-switches-to-ash)
58895 (tramp-adb-handle-file-local-copy)
58896 (tramp-adb-handle-write-region, tramp-adb-handle-set-file-modes)
58897 (tramp-adb-handle-rename-file, tramp-adb-handle-process-file)
58898 (tramp-adb-handle-shell-command)
58899 (tramp-adb-handle-start-file-process, tramp-adb-get-device)
58900 (tramp-adb-maybe-open-connection):
58901 * lisp/net/tramp-cache.el (tramp-persistency-file-name)
58902 (tramp-cache-print):
58903 * lisp/net/tramp-cmds.el (tramp-cleanup-all-connections)
58904 (tramp-bug, tramp-reporter-dump-variable)
58905 (tramp-load-report-modules, tramp-append-tramp-buffers):
58906 * lisp/net/tramp-compat.el (tramp-compat-funcall)
58907 (tramp-advice-file-expand-wildcards)
58908 (tramp-compat-temporary-file-directory)
58909 (tramp-compat-make-temp-file, tramp-compat-copy-file)
58910 (tramp-compat-delete-directory, )
58911 (tramp-compat-process-running-p):
58912 * lisp/net/tramp-ftp.el (tramp-methods) <ftp>:
58913 (tramp-default-method-alist, tramp-foreign-file-name-handler-alist):
58914 * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
58915 (tramp-gvfs-do-copy-or-rename-file, tramp-gvfs-handle-copy-file)
58916 (tramp-gvfs-handle-file-local-copy)
58917 (tramp-gvfs-handle-file-name-all-completions)
58918 (tramp-gvfs-handle-file-notify-add-watch)
58919 (tramp-gvfs-monitor-file-process-filter)
58920 (tramp-gvfs-handle-file-readable-p)
58921 (tramp-gvfs-handle-rename-file, tramp-gvfs-handle-write-region)
58922 (tramp-gvfs-file-name, tramp-gvfs-handler-askquestion)
58923 (tramp-gvfs-maybe-open-connection)
58924 (tramp-gvfs-parse-device-names):
58925 * lisp/net/tramp-gw.el (tramp-gw-aux-proc-sentinel)
58926 (tramp-gw-open-connection, tramp-gw-open-network-stream):
58927 * lisp/net/tramp-sh.el (directory-sep-char)
58928 (tramp-sh-file-name-handler-alist)
58929 (tramp-sh-handle-file-truename)
58930 (tramp-sh-handle-set-visited-file-modtime)
58931 (tramp-sh-handle-verify-visited-file-modtime)
58932 (tramp-sh-handle-set-file-modes, tramp-sh-handle-set-file-times)
58933 (tramp-sh-handle-file-acl)
58934 (tramp-sh-handle-file-name-all-completions)
58935 (tramp-sh-handle-copy-file, tramp-sh-handle-rename-file)
58936 (tramp-do-copy-or-rename-file-directly)
58937 (tramp-do-copy-or-rename-file-out-of-band)
58938 (dired-compress-file-suffixes, dired-remove-file)
58939 (tramp-sh-handle-dired-compress-file)
58940 (tramp-sh-handle-insert-directory)
58941 (tramp-sh-handle-expand-file-name)
58942 (tramp-sh-handle-start-file-process)
58943 (tramp-sh-handle-process-file, tramp-sh-handle-file-local-copy)
58944 (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
58945 (tramp-sh-handle-file-notify-add-watch)
58946 (tramp-sh-gvfs-monitor-dir-process-filter)
58947 (tramp-sh-inotifywait-process-filter, tramp-maybe-send-script)
58948 (tramp-find-executable)
58949 (tramp-open-connection-setup-interactive-shell)
58950 (tramp-find-inline-encoding, tramp-compute-multi-hops)
58951 (tramp-maybe-open-connection, tramp-convert-file-attributes)
58952 (tramp-get-remote-path, tramp-get-remote-touch):
58953 * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
58954 (tramp-smb-handle-copy-directory, tramp-smb-handle-copy-file)
58955 (tramp-smb-handle-delete-directory)
58956 (tramp-smb-handle-directory-files, tramp-smb-handle-file-acl)
58957 (tramp-smb-handle-make-directory-internal)
58958 (tramp-smb-handle-process-file, tramp-smb-handle-rename-file)
58959 (tramp-smb-handle-set-file-acl, tramp-smb-handle-set-file-modes)
58960 (tramp-smb-handle-write-region, tramp-smb-get-file-entries)
58961 (tramp-smb-get-cifs-capabilities)
58962 (tramp-smb-maybe-open-connection):
58963 * lisp/net/trampver.el (tramp-repository-get-version):
58964 Remove XEmacs compat code.
58966 * lisp/net/tramp-cmds.el (mml-mode, mml-insert-empty-tag)
58967 (reporter-dump-variable): Declare functions.
58969 * lisp/net/tramp.el (tramp-bkup-backup-directory-info)
58970 (tramp-advice-minibuffer-electric-separator)
58971 (tramp-advice-minibuffer-electric-tilde)
58972 (tramp-handle-unhandled-file-name-directory):
58973 * lisp/net/tramp-compat.el (tramp-compat-with-temp-message)
58974 (tramp-compat-font-lock-add-keywords)
58975 (tramp-compat-load, tramp-compat-number-sequence)
58976 (tramp-compat-split-string, tramp-compat-delete-dups):
58977 * lisp/net/tramp-sh.el (tramp-sh-handle-insert-file-contents-literally):
58980 * lisp/net/tramp-sh.el (tramp-methods) <psftp>: This does not work
58983 2016-01-14 K. Handa <handa@gnu.org>
58985 fix previous change of src/ftfont.c (ftfont_shape_by_flt)
58987 * src/ftfont.c (ftfont_shape_by_flt): Fix previous change. Access the
58988 second glyph only when there are enough glyphs.
58990 2016-01-13 Glenn Morris <rgm@gnu.org>
58992 * src/buffer.c (Fset_buffer_major_mode): Allow default major-mode,
58994 or its hook, to move point. (Bug#22348)
58996 2016-01-12 Michael Albinus <michael.albinus@gmx.de>
58998 Merge missing commit from emacs-25 branch
59000 * test/Makefile.in (SELECTOR_DEFAULT, SELECTOR_EXPENSIVE, SELECTOR):
59002 (check-expensive, check-doit): New targets.
59004 * Makefile.in (check-expensive): New target.
59006 * test/lisp/autorevert-tests.el
59007 (auto-revert-test01-auto-revert-several-files):
59008 * test/lisp/filenotify-tests.el (file-notify--deftest-remote)
59009 (file-notify-test06-many-events):
59010 * test/lisp/net/tramp-tests.el (tramp-test26-process-file)
59011 (tramp-test27-start-file-process, tramp-test28-shell-command)
59012 (tramp-test29-vc-registered)
59013 (tramp-test31-special-characters-with-stat)
59014 (tramp-test31-special-characters-with-perl)
59015 (tramp-test31-special-characters-with-ls)
59016 (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
59017 (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
59018 (tramp-test35-unload): Tag the tests as :expensive-test.
59020 2016-01-11 John Wiegley <johnw@newartisans.com>
59022 Merge from origin/emacs-25
59024 1f6898d test/automated/vc-hg.el: Support out-of-tree build
59025 3adb56e Minor change in tramp-tests.el
59026 2b535ba ; * etc/NEWS: Update the js.el entry.
59027 76b518c * etc/HELLO: Add Armenian and Mongolian greetings.
59028 b51f1ef Java Mode: Fontify identifiers in the presence of annotations.
59029 36b9539 Avoid an infloop when we run out of memory
59030 2006752 Avoid unnecessary failures of auto-saving after fatal error
59031 eef6784 Simplify HAVE_MODULES use in mark_maybe_pointer
59032 552694a Revert attempt to use 'noexcept' in typedef
59033 6ad0d39 Update documentation of 'indirect-function'
59034 c6a5314 ; * etc/NEWS: Move entry of 'inhibit-point-motion-hooks'.
59035 303141a Update documentation for obsoleting 'syntax-begin-function'
59036 4e6f61c ; * etc/NEWS: Mark documented and not-to-be-documented entries.
59037 e667bbb Document new features if Eshell
59038 9c4e4e0 ; * etc/NEWS: Update EUDC entries.
59039 1089dc9 Handle too long commands in Tramp
59040 684eb58 * .gitattributes: *.cur and *.pif are binary files too.
59041 d2c7fda * src/alloc.c (mark_maybe_pointer): HAVE_MODULES may be undefined
59042 bd3f53d * sh-script.el (sh-smie-sh-rules): Improve indentation inside $(...)
59043 09b2b8a * src/alloc.c (mark_maybe_pointer): Also check wide-int's emacs_value
59044 cca0f93 ; Account for spaces before the filename
59045 c71e1e8 Use short date for 'hg annotate', and output the author
59046 f50027b Spelling fix
59047 c7dff67 ; * etc/NEWS: Fix the Xref entries that got separated.
59048 cc140bc Document user-level functions in project.el
59049 f8208b6 Document the user-level features of the Xref package
59050 b131fb8 * loading.texi: Add `define-type' entry for load-history
59051 db3c2a8 Improve doc strings and prompts in xref.el
59052 f6117ef Allow the use of `font-lock-extend-region-multiline' in CC Mode.
59053 90fd798 Fix coding system for Tramp on OS X.
59054 e985a0e ; * etc/NEWS: Mark the 'check-expensive' entry not to be documented.
59055 9dfcbf0 Update 'load-history' docs
59056 207e191 Fix (error ...) error
59057 457738f Correctly analyze brace arguments in templated C++ function declarations.
59058 d57724a * lisp/cedet/mode-local.el (describe-function-orig-buffer): Declare.
59059 2a9532d * lisp/ffap.el (ffap-latex-mode): Avoid free variable.
59060 1a6b084 * lisp/play/dunnet.el (dun-fix-screen): Avoid `end-of-buffer`.
59061 8be046f Respect fontification region calculated by major mode. Fixes bug #22316.
59062 4b37cba Improve documentation of Delete Selection mode
59063 a034dd3 Fix two project-find-file issues
59064 30abf29 Clarify doc string of 'dired-current-directory'
59065 e990bb2 Use the face of preceding text for displaying the ellipsis
59066 5810ac3 Suppress Chinese file name test for OSX in tramp-tests.el
59067 eeb710a ; * lisp/startup.el: Sentences end with two spaces.
59068 428b3de * admin/admin.el (set-version): Also handle the NEWS file.
59069 648de81 ; Add NEWS entry for project.el
59070 671862f apropos-library: Skip obvious duplicates; don't error on generics
59071 51668a5 ; Grammar fix
59072 ed41d11 Add project-find-file and project-or-external-find-file
59073 056da45 ; Improve commentary in 'setup_for_ellipsis'
59074 269d008 ; Improve docstring for `inhibit-startup-echo-area-message'
59076 2016-01-11 John Wiegley <johnw@newartisans.com>
59078 Merge from origin/emacs-25
59080 ce4a052 Add defvar-local to lisp-imenu-generic-expression
59081 a0121bc Revert commit b1e3d14845517bfa9fa5d6d3840f3ab3160306fd
59082 76fe2d5 * lisp/emacs-lisp/autoload.el (autoload-find-destination): Doc fix.
59083 1ae088f * lisp/emacs-lisp/autoload.el (autoload-find-destination):
59084 b6b47af Properly encode/decode base64Binary data in SOAP
59085 c632466 Obey coding-system-for-write when writing stdout/stderr in batch
59086 2f32cb5 * doc/misc/efaq.texi (Packages that do not come with Emacs):
59087 Update the URI of MELPA and marmalade-repo.
59088 Reported by CHENG Goa <chenggao@royau.me> in
59089 https://lists.gnu.org/r/emacs-devel/2016-01/msg00390.html.
59090 d2937aa * lisp/progmodes/opascal.el (opascal-mode-syntax-table):
59091 5330c25 * lisp/progmodes/xscheme.el (xscheme-prompt-for-expression-exit):
59092 7380990 Remove function wrongly on AWK Mode value of context
59093 fontification hook.
59094 d400753 * src/buffer.c: Stick with ASCII in doc string.
59095 221240c Reword transient-mark-mode doc string
59096 977d3ea Update doc string of 'selective-display'
59097 229c3fa Make C++ buffers writeable when writing their initial text
59099 f5c762c Additional changes for "make check-expensive"
59100 1729cf3 ; * admin/MAINTAINERS: Remove myself.
59101 33219d3 Apply text properties for <, > in new after-change function
59104 2016-01-11 John Wiegley <johnw@newartisans.com>
59106 Merge from origin/emacs-25
59108 9fb185a shr-tag-video bug fix
59109 6300655 Minor fixes in tramp-tests.el
59110 50575b1 Ensure redisplay when 'truncate-lines' is set
59111 0d9e80d Fix a doc string of 'transient-mark-mode'
59112 0000ae5 MS-Windows followup to latest gnulib update
59113 4bc5e02 Spelling fix
59114 f1093f7 Do secure signed Bcc handling
59116 2016-01-11 John Wiegley <johnw@newartisans.com>
59118 Merge from origin/emacs-25
59120 861022f * doc/misc/texinfo.tex: Revert unwanted copyright change.
59121 46e47a5 ; * etc/refcards/ru-refcard.tex (cyear): Update via M-x set-copyright.
59122 71ea138 * lisp/align.el (align): Simplify a lambda
59123 5618a50 * lisp/align.el (align): Fix arg order in call to `align-region'
59124 1f680db Fix compilation next-error in buffers with selective-display
59125 d20a948 * nsm.el (nsm-check-protocol): Fix typo in the message.
59126 1da116f Add SHA1 warnings for high network security settings
59127 e48bacd ; * etc/NEWS: Typo fix.
59129 2016-01-11 John Wiegley <johnw@newartisans.com>
59131 Merge from origin/emacs-25
59133 43662a2 ; Clarify that xref is still experimental
59134 0a6e6ca ; * admin/release-process: Remove some obsolete records.
59135 c2e9e3d * lisp/progmodes/fortran.el (fortran-make-syntax-propertize-function):
59136 8637f3d (semantic-symref-derive-find-filepatterns): Return a list
59137 0a7ad07 ; Re-arrange xref-related entries in NEWS.
59138 fe903ef Fix xref-find-references on MS-Windows
59139 55a28d8 ; Fixed visual bell artifact problem on NextStep.
59140 d064034 Document new features of tildify-mode
59141 964bea7 Document new features of Whitespace mode
59142 cd68f47 Improve documentation of new Hide-IfDef features
59143 723b8bf Fix regression in font-locking cl-assert and cl-check-type
59145 2016-01-11 John Wiegley <johnw@newartisans.com>
59147 Merge from origin/emacs-25
59149 ef33bc7 Spelling and grammar fixes
59150 9c3dbab Fix copyright years by hand
59151 0e96320 Update copyright year to 2016
59153 2016-01-11 John Wiegley <johnw@newartisans.com>
59155 Merge from origin/emacs-25
59157 9ee6ecb lisp/emacs-lisp/chart.el (chart-new-buffer): Move to silence byte compiler.
59158 526d80c Port chart.el methods to cl-generic.
59159 410bb69 Add nt/INSTALL.W64 build instructions
59160 8f5b524 Add new input method 'programmer-dvorak'
59161 6d11f6e Allow to invoke original M-TAB binding in 'flyspell-prog-mode'
59162 bb83bb1 Fix EWW rendering of long RTL lines
59163 b1a8509 fix bug#21054
59164 ce5ad12 Clean up cairo printing code
59166 2016-01-11 John Wiegley <johnw@newartisans.com>
59168 Merge from origin/emacs-25
59170 6ee327d Add handle_user_signal_hook
59171 47580e0 Avoid writing to purespace
59172 0588be7 Remove unused variable
59173 89e7483 * configure.ac: Find libxml2 headers in Xcode SDK dir on Darwin.
59174 3b95e9c Use posix_openpt instead of openpty on Darwin
59175 86312ff Document support for ':documentation' in Lisp mode
59176 c930e75b Document new features of TeX mode
59177 7c83d84 Clarify docs of hscroll in RTL text
59178 4c8f8db Fix rendering of HTML pages that use character composition
59179 a8d37ca Avoid some compiler warnings in w32.c
59180 ce106f3de Undo ill-advised change
59181 be0bba4 Unbreak completion in python-mode buffers
59183 2016-01-08 Andrew Hyatt <ahyatt@gmail.com>
59185 Adding example replies to bug-triage.
59187 * admin/notes/bug-triage: Added example replies. Also, as requested,
59188 making the process notes into more of a checklist.
59190 2016-01-08 Andrew Hyatt <ahyatt@gmail.com>
59192 Rename the notes/admin/triage file to bug-triage.
59194 * CONTRIBUTE: Change reference to the triage file name.
59195 * admin/notes/triage: Rename file to admin/notes/bug-triage.
59197 2016-01-08 K. Handa <handa@gnu.org>
59199 Fix outdated comments.
59201 2016-01-06 Glenn Morris <rgm@gnu.org>
59203 Allow creation of loaddefs files without timestamps.
59205 * lisp/emacs-lisp/autoload.el (autoload-timestamps): New variable.
59206 (autoload-generate-file-autoloads, update-directory-autoloads):
59207 If autoload-timestamps is nil, write "t" instead of file timestamp.
59208 (autoload-find-destination, update-directory-autoloads):
59209 If timestamp is "t", use the modtime of the output file instead.
59211 2016-01-06 Glenn Morris <rgm@gnu.org>
59215 * lisp/calendar/cal-hebrew.el (diary-hebrew-list-entries):
59216 * lisp/calendar/cal-iso.el (calendar-iso-to-absolute)
59217 (calendar-iso-from-absolute):
59218 * lisp/calendar/cal-tex.el (cal-tex-comment):
59219 * lisp/calendar/solar.el (calendar-time-display-form): Doc tweaks.
59221 2016-01-06 Glenn Morris <rgm@gnu.org>
59223 Build tweaks related to tags files.
59225 * lib-src/Makefile.in (tagsfiles): New variable.
59226 (TAGS): Also depend on the source files. Use our own etags program.
59227 * lisp/Makefile.in (ETAGS): Add EXEEXT.
59228 (lisptagsfiles1, lisptagsfiles2, lisptagsfiles3, lisptagsfiles4):
59230 (tagsfiles): New, replacing lisptagsfiles1 etc.
59231 Remove irrelevant source files here rather than in the TAGS rule.
59232 (${ETAGS}): New rule.
59233 (TAGS): Also depend on the etags executable.
59234 * lwlib/Makefile.in (EXEEXT): New, set by configure.
59235 (ETAGS): Add EXEEXT.
59236 (${ETAGS}): New rule.
59237 (ctagsfiles): Use "wildcard".
59238 (TAGS): Also depend on the etags executable.
59239 * nt/Makefile.in (ETAGS, tagsfiles): New variables.
59240 (${ETAGS}): New rule.
59241 (TAGS): Fix dependencies.
59242 * oldXMenu/Makefile.in (EXEEXT): New, set by configure.
59243 (ETAGS): New variable, replacing $TAGS. Use our own etags program.
59244 Remove "-t" argument.
59245 (${ETAGS}): New rule.
59246 (tagsfiles): New variable.
59247 (TAGS): New rule, with proper dependencies.
59248 * src/Makefile.in (ETAGS): Add EXEEXT. Add a build rule.
59249 (ctagsfiles1, ctagsfiles2): Use "wildcard".
59250 (ctagsfiles3): Remove.
59251 (TAGS): Depend on etags.
59252 (../lisp/TAGS, $(lwlibdir)/TAGS): Let the rules in the relevant
59253 directories decide if updates are needed.
59255 2016-01-06 Glenn Morris <rgm@gnu.org>
59257 * lisp/Makefile.in (CAL_SRC): Skip calendar.el.
59259 2016-01-06 Glenn Morris <rgm@gnu.org>
59261 * test/lisp/emacs-lisp/package-tests.el
59263 (package-test-macro-compilation): Fixup branch merge.
59265 2016-01-05 Eli Zaretskii <eliz@gnu.org>
59267 Fix fallout from merging emacs-25 branch in test/
59269 * .gitignore: Update for the new place of biditest.txt.
59270 * test/automated/: Directory removed. All files moved to their
59272 * test/etags/: Directory removed. All files moved to their proper
59274 * test/automated/url-parse-tests.el: File removed; it was an exact
59275 copy of the same file in test/lisp/url/.
59276 * test/automated/url-expand-tests.el: Moved to test/lisp/url/.
59278 2016-01-04 Paul Eggert <eggert@cs.ucla.edu>
59282 2016-01-04 Daniel Colascione <dancol@dancol.org>
59284 Let users disable unsafe signal handling code
59286 * src/keyboard.c (syms_of_keyboard): New user variables
59287 `attempt-stack-overflow-recovery' and
59288 `attempt-orderly-shutdown-on-fatal-signal'.
59289 * src/sysdep.c (stack_overflow): Check
59290 `attempt-stack-overflow-recovery'.
59291 * src/emacs.c (terminate_due_to_signal): Check
59292 `attempt-orderly-shutdown-on-fatal-signal'.
59294 2016-01-03 Michael Albinus <michael.albinus@gmx.de>
59296 * configure.ac: Add error message for gfile on Nextstep.
59298 2016-01-02 John Wiegley <johnw@newartisans.com>
59300 Merge branch 'emacs-25-merge'
59302 2016-01-02 Vincent Belaïche <vincentb1@users.sourceforge.net>
59304 Align textually on fix done for emacs-25 branch for bug#21054
59306 * lisp/ses.el (ses-check-curcell): Suppress ``temporary fix'' comment,
59307 and useless `(if t ...)' in order to align textually on fix done for
59308 emacs-25 branch for bug#21054.
59310 2016-01-01 K. Handa <handa@gnu.org>
59312 support rendering of wider range of combinging characters by ftfont backend
59314 * lisp/language/hebrew.el (hebrew-shape-gstring): If the font backend
59315 supports rendering of combining characters, call
59316 font-shape-gstring.
59318 * src/font.c (Ffont_get): Handle `combining-capability' property.
59319 (syms_of_font): New symbol ":combining-capability'.
59321 * src/font.h (struct font_driver): New member combining_capability.
59323 * src/ftfont.c: Include "category.h".
59324 (ftfont_driver): Initialize combining_capability to
59325 ftfont_combining_capability.
59326 (ftfont_shape_by_flt): If OTF is null, try to find a suitable
59328 (ftfont_combining_capability): New function.
59330 2016-01-01 Andrew Hyatt <ahyatt@gmail.com>
59332 Add notes on bug triage procedure
59334 * CONTRIBUTE: In section on the issue tracker, point to new triage file.
59335 * admin/notes/triage: New file explaining triage procedure.
59337 2015-12-30 Vincent Belaïche <vincentb1@users.sourceforge.net>
59339 Correct ses-rename-cell cursor-intangible text prop updating.
59341 There were two problems:
59343 - First ses-rename-cell has to work when called non interactively
59344 (with non-nil CELL argument), so in this case the start pos of
59345 put-text-property cannot be plainly (point), you need a
59346 ses-goto-print call before
59348 - Second, the range itself was computed erronously, only the first
59349 char was affected instead of the full cell width. This was not
59350 noticeable prior to changes (Deprecate `intangible' and
59351 `point-entered' properties) made by Stefan on 2015-04-13T19:51:15Z
59353 * lisp/ses.el (ses-rename-cell): Correct computation of position range
59354 to which the 'cursor-intangible text property has to be set to cell
59357 2015-12-30 Vincent Belaïche <vincentb1@users.sourceforge.net>
59359 Don't fake empty cells value by "" when printing with a lambda.
59361 When using a lambda expression printer function the user should be
59362 free to format differently a really empty cell, ie. containing nil,
59363 from a cell containing an empty string "".
59365 * lisp/ses.el (ses-call-printer): Replace `(or value "")' by just
59366 `value' in the case of a lambda expression printer function.
59368 * doc/misc/ses.texi (Printer functions): Add example and
59369 description about lambda expression printer function handling all
59370 the possible values, including unexpected ones.
59372 2015-12-30 Vincent Belaïche <vincentb1@users.sourceforge.net>
59374 Quick temporary hack to fix curcell refreshing.
59376 The problem was caused by change: 2015-04-13 Deprecate `intangible'
59377 and `point-entered' properties. The problem is that this change has
59378 removed the (setq ses--curcell t) setting in the ses-command-hook
59381 * lisp/ses.el (ses-check-curcell): replace `(eq ses--curcell t)' by just `t' as
59382 a condition to call function `ses-set-curcell'. Comment this as a quick
59383 temporary hack to make it work, as I don't know yet whether a definite
59384 correction would be to make the ses-set-curcell at every ses-check-curcell,
59385 or to revert to the previous approach, ie marking ses--curcell as out-of-date
59386 at every potentially cursor motion command.
59388 2015-12-30 Lars Magne Ingebrigtsen <larsi@gnus.org>
59390 Restrictive URL checking tweaks
59392 * lisp/net/eww.el (eww): Check whether the domain is
59393 restrictive instead of the string
59394 (http://македонија.icom.museum is restrictive even if each
59395 part is from a different script).
59397 2015-12-30 Lars Magne Ingebrigtsen <larsi@gnus.org>
59399 New function `puny-highly-restrictive-domain-p'
59401 * lisp/net/puny.el (puny-highly-restrictive-string-p): Rename.
59402 (puny-highly-restrictive-domain-p): New function.
59404 2015-12-30 Lars Magne Ingebrigtsen <larsi@gnus.org>
59406 eww build fix (require puny)
59408 2015-12-30 Lars Magne Ingebrigtsen <larsi@gnus.org>
59410 Transform non-restrictive domains to punycode for display
59412 * lisp/net/eww.el (eww): Check whether the domain is Highly
59413 Restrictive in the Unicode IDNA sense.
59415 2015-12-29 John Wiegley <johnw@newartisans.com>
59417 Merge emacs-25 into master (using imerge)
59419 2015-12-29 Lars Ingebrigtsen <larsi@gnus.org>
59421 Further Unicode restrictive fixups
59423 * lisp/net/puny.el (puny-highly-restrictive-p): Include the extra
59424 identifier characters from table 3.
59426 2015-12-29 Lars Ingebrigtsen <larsi@gnus.org>
59428 Add a new function to say whether a string is restrictive
59430 * lisp/net/puny.el (puny-highly-restrictive-p): New function.
59432 2015-12-28 Lars Ingebrigtsen <larsi@gnus.org>
59434 Mention the new puny.el library
59436 2015-12-28 Lars Ingebrigtsen <larsi@gnus.org>
59438 IDNA-related fixes for the URL library
59440 * lisp/url/url-http.el (url-http-create-request): IDNA-encode
59443 * lisp/url/url-util.el (url-encode-url): Don't hex-encode
59444 domain names, but leave them as UTF-8, so that they can be
59445 IDNA-encoded later when contacting the host.
59447 2015-12-28 Lars Ingebrigtsen <larsi@gnus.org>
59449 IDNA-encode all domain names in `open-network-stream'
59451 * lisp/net/network-stream.el (open-network-stream)
59452 (network-stream-open-plain, network-stream-open-starttls):
59453 IDNA-encode all domain names, if needed.
59455 2015-12-28 Lars Ingebrigtsen <larsi@gnus.org>
59457 Fix puny-encoding all-non-ASCII domains
59459 * lisp/net/puny.el (puny-encode-string): Fix the all-non-ASCII
59462 2015-12-28 Lars Ingebrigtsen <larsi@gnus.org>
59464 shr link traversal fixup
59466 * lisp/net/shr.el (shr-next-link): Don't bug out on adjacent links.
59468 2015-12-28 Lars Ingebrigtsen <larsi@gnus.org>
59470 Reconnect erc even on server errors
59472 * lisp/erc/erc-backend.el (erc-server-reconnect-p): Try to
59473 reconnect even if a server error has occurred (bug#18527).
59475 2015-12-28 Lars Ingebrigtsen <larsi@gnus.org>
59477 Fix punycode short circuit logic
59479 * lisp/net//puny.el (puny-encode-domain): Fix short-circuit logic.
59481 2015-12-28 Lars Ingebrigtsen <larsi@gnus.org>
59485 * lisp/net/puny.el (puny-encode-domain): Make the common non-IDNA case faster
59487 2015-12-28 Lars Ingebrigtsen <larsi@gnus.org>
59489 Add IDNA domain encode/decode functions
59491 * lisp/net/puny.el (puny-decode-domain): New function.
59492 (puny-encode-domain): Ditto.
59493 (puny-decode-digit): Fix digit decoding error.
59495 2015-12-28 Lars Ingebrigtsen <larsi@gnus.org>
59497 Rename idna.el to puny.el
59499 * lisp/net/puny.el: Renamed from idna.el to avoid name collisions with
59500 the external idna.el library.
59502 2015-12-27 Katsumi Yamaoka <yamaoka@jpl.org>
59504 lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): Keep old Emacsen compatibility
59506 * lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe):
59507 Don't use split-string with 4th arg for old Emacsen compatibility.
59509 2015-12-27 Lars Ingebrigtsen <larsi@gnus.org>
59511 * lisp/net/idna.el (idna-decode-string-internal): Implement
59514 2015-12-27 Lars Ingebrigtsen <larsi@gnus.org>
59516 Further IDNA tweaks
59518 (idna-encode-string): Make idna-encode-string safe for
59521 2015-12-27 Lars Ingebrigtsen <larsi@gnus.org>
59523 Clean up the code slightly
59525 2015-12-27 Lars Ingebrigtsen <larsi@gnus.org>
59527 Added basic idna encoding support
59529 * lisp/net/idna.el: New file.
59531 2015-12-27 Vivek Dasmohapatra <vivek@etla.org>
59533 Disconnection fixes for erc
59535 * lisp/erc/erc-backend.el (erc-server-reconnect-p): Don't
59536 reconnect if the user has disconnected explicitly (bug#4589).
59538 2015-12-27 Thomas Riccardi <riccardi.thomas@gmail.com> (tiny change)
59540 Further erc asynch fixes
59542 * lisp/erc/erc-backend.el (erc-process-sentinel-2): Make
59543 erc-server-connect to return even if the connection is not
59544 ready. Then erc-open and erc-server-reconnect do the
59547 2015-12-27 Vivek Dasmohapatra <vivek@etla.org>
59549 Make erc connect asynchronously
59551 * lisp/erc/erc-backend.el (erc-server-reconnect): Use it to
59552 reconnect asynchronously.
59554 * lisp/erc/erc-backend.el (erc-open-network-stream): New function (bug#5650).
59556 2015-12-27 David Edmondson <dme@dme.org>
59558 Proxy error in erc with multiple clients
59560 * lisp/erc/erc.el (erc-channel-receive-names): Fix errors
59561 generated when multiple IRC clients talk to a single IRC proxy
59564 2015-12-27 Jens Lechtenboerger <jens.lechtenboerger@fsfe.org>
59566 Fix mml-sec build warnings
59568 * lisp/gnus/mml-sec.el: Fix warnings by adding autoloads
59571 2015-12-27 Lars Ingebrigtsen <larsi@gnus.org>
59573 (eww-setup-buffer): Restore left-to-right defaults
59575 * eww.el (eww-setup-buffer): Restore left-to-right defaults.
59577 2015-12-27 Lars Ingebrigtsen <larsi@gnus.org>
59579 * lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): Fix typo in last check-in.
59581 2015-12-27 Jens Lechtenboerger <jens.lechtenboerger@fsfe.org>
59583 Identify unsafe combinations of Bcc and encryption
59585 * lisp/gnus/gnus-util.el (gnus-subsetp): New function
59586 * lisp/gnus/mml-sec.el (mml-secure-safe-bcc-list): New variable
59587 * lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): New function
59589 2015-12-26 Lars Ingebrigtsen <larsi@gnus.org>
59591 * shr.el (shr-descend): Allow using lambdas in external functions.
59593 2015-12-25 Stefan Monnier <monnier@iro.umontreal.ca>
59595 * admin/gitmerge.el: Tweaks that seemed necessary
59597 * admin/gitmerge.el (gitmerge-skip-regexp): Remove "sync".
59598 (gitmerge-maybe-resume): Provide explicit empty commit message.
59600 2015-12-25 Łukasz Stelmach <stlman@poczta.fm> (tiny change)
59602 Use a different port for TLS erc
59604 * lisp/erc/erc.el (erc-default-port-tls): New variable
59606 * lisp/erc/erc.el (erc-tls): Use it.
59608 2015-12-25 Alain Schneble <a.s@realize.ch>
59610 Make relative URL parsing and resolution consistent with RFC 3986 (bug#22044)
59612 * test/lisp/url/url-parse-tests.el: Add tests covering url-generic-parse-url.
59613 * test/lisp/url/url-expand-tests.el: Add tests covering url-expand-file-name.
59614 * lisp/url/url-parse.el (url-generic-parse-url): Keep empty fragment
59615 information in URL-struct.
59616 * lisp/url/url-parse.el (url-path-and-query): Do not artificially turn empty
59617 path and query into nil path and query, respectively.
59618 * lisp/url/url-expand.el (url-expander-remove-relative-links): Do not turn
59619 empty path into an absolute ("/") path.
59620 * lisp/url/url-expand.el (url-expand-file-name): Properly resolve
59621 fragment-only URIs. Do not just return them unchanged.
59622 * lisp/url/url-expand.el (url-default-expander): An empty path in the relative
59623 reference URI should not drop the last segment.
59625 2015-12-25 Alain Schneble <a.s@realize.ch>
59627 Make relative URL parsing and resolution consistent with RFC 3986 (bug#22044)
59629 * test/lisp/url/url-parse-tests.el: Add tests covering url-generic-parse-url.
59630 * test/lisp/url/url-expand-tests.el: Add tests covering url-expand-file-name.
59631 * lisp/url/url-parse.el (url-generic-parse-url): Keep empty fragment
59632 information in URL-struct.
59633 * lisp/url/url-parse.el (url-path-and-query): Do not artificially turn empty
59634 path and query into nil path and query, respectively.
59635 * lisp/url/url-expand.el (url-expander-remove-relative-links): Do not turn
59636 empty path into an absolute ("/") path.
59637 * lisp/url/url-expand.el (url-expand-file-name): Properly resolve
59638 fragment-only URIs. Do not just return them unchanged.
59639 * lisp/url/url-expand.el (url-default-expander): An empty path in the relative
59640 reference URI should not drop the last segment.
59642 2015-12-25 Lars Ingebrigtsen <larsi@gnus.org>
59644 Let url use default file modes when copying files
59646 * lisp/url/url-handlers.el (url-copy-file): Use default file
59647 modes when copying files (bug#11400).
59649 2015-12-25 Devon Sean McCullough <Emacs-Hacker2012@jovi.net>
59651 Doc fix for url-http
59653 * lisp/url/url-http.el (url-http): Document better return values
59654 (bug#13187) (tiny change)
59656 2015-12-25 Lars Ingebrigtsen <larsi@gnus.org>
59658 * eww.el (eww-display-html): Support <button> tags (bug#20485).
59660 2015-12-25 Lars Ingebrigtsen <larsi@gnus.org>
59662 Made ffap-url-p a defun instead of a defsubst
59664 * lisp/ffap.el (ffap-url-p): Change from defsusbt to defun,
59665 since there doesn't seem to be much of a reason for it to be a
59666 defsubst (bug#18203).
59668 2015-12-25 Lars Ingebrigtsen <larsi@gnus.org>
59670 Add a command to view files in the browser to dired
59672 * lisp/dired.el (dired-mode-map): Add the `W' command
59675 2015-12-25 Lars Ingebrigtsen <larsi@gnus.org>
59677 Allow http://user:pass@foo/ URLs again
59679 * lisp/url/url-auth.el (url-basic-auth): Allow explicit
59680 user/passwords in URLs (bug#19046).
59682 2015-12-25 Lars Ingebrigtsen <larsi@gnus.org>
59684 * eww.el (eww-mode-map): Fix command name of eww-toggle-colors.
59686 2015-12-25 Samer Masterson <samer@samertm.com>
59688 Autoload url-insert-buffer-contents
59690 * lisp/url/url-handlers.el: Add autoload cookie so that
59691 `package-list-packages' doesn't bug out (bug#21927) (tiny change)
59693 2015-12-25 Lars Ingebrigtsen <larsi@gnus.org>
59695 Allow toggling colors in eww
59697 * doc/misc/eww.texi (Basics): Mention "C".
59699 * lisp/net/eww.el (eww-toggle-colors): New command and keystroke.
59701 * lisp/net/shr.el (shr-use-colors): New variable.
59702 (shr-colorize-region): Use it.
59704 2015-12-25 Lars Ingebrigtsen <larsi@gnus.org>
59706 Follow meta refresh tags in eww
59708 * eww.el (eww-tag-meta): Follow meta refresh tags (bug#22234).
59710 2015-12-24 Lars Ingebrigtsen <larsi@gnus.org>
59712 More eww file name coding fixes
59714 * eww.el (eww-decode-url-file-name): Use the base coding
59715 system to check for encodability.
59717 2015-12-24 Lars Ingebrigtsen <larsi@gnus.org>
59719 Always save eww history
59721 * eww.el (eww-setup-buffer): Always save history, even when
59722 called from outside the eww buffer (bug#19638).
59724 2015-12-24 Lars Ingebrigtsen <larsi@gnus.org>
59726 Default web pages to right-to-left
59728 * eww.el (eww-mode): Most web pages are left-to-right, so make
59729 that the default (bug#19801).
59731 * shr.el (shr-tag-html): Respect "dir" attributes
59732 (left-to-right, right-to-left).
59734 2015-12-24 Lars Ingebrigtsen <larsi@gnus.org>
59736 Make toggling checkboxes work again
59738 * eww.el (eww-update-field): Make toggling checkboxes work
59741 2015-12-24 Lars Ingebrigtsen <larsi@gnus.org>
59743 Don't store cookies with empty names
59745 * lisp/url/url-cookie.el (url-cookie-store): Refuse to store
59746 cookies with empty names (bug#21936).
59748 2015-12-24 Lars Ingebrigtsen <larsi@gnus.org>
59750 Stop rendering HTML before specdlr exhaustion
59754 * shr.el (shr-descend): Stop rendering before we run out of
59755 specpdl room (bug#22117).
59757 2015-12-24 Lars Ingebrigtsen <larsi@gnus.org>
59759 Use cl-reduce, not reduce.
59761 2015-12-24 Lars Ingebrigtsen <larsi@gnus.org>
59763 Allow several <tbody> tags in shr
59765 * shr.el (shr-table-body): New function to find the real body
59767 (shr-tag-table): Use it to render several <tbody> tags in a
59770 2015-12-24 Lars Ingebrigtsen <larsi@gnus.org>
59772 Make prettier unique file names in eww
59774 (eww-make-unique-file-name): Make unique file names by making
59775 files like foo(2).jpg instead of foo(1)(2).jpg.
59777 2015-12-24 Lars Ingebrigtsen <larsi@gnus.org>
59779 Decode hex-encoded URLs before using them as file names
59781 * eww.el (eww-decode-url-file-name): New function.
59782 (eww-download-callback): Use it to decode file names before
59785 2015-12-24 Ashish SHUKLA <ashish.is@lostca.se>
59787 Add FreeBSD cert bundle
59789 * doc/misc/emacs-gnutls.texi (Help For Users): Document
59792 * lisp/net/gnutls.el (gnutls-trustfiles): Add FreeBSD cert bundle.
59794 2015-12-24 Lars Ingebrigtsen <larsi@gnus.org>
59796 Allow overriding shr functions from eww
59798 * eww.el (eww-display-html): Allow overriding elements in
59799 `shr-external-rendering-functions'.
59801 2015-12-24 Lars Ingebrigtsen <larsi@gnus.org>
59803 Ignore invalid SVG images
59805 * shr.el (shr-tag-svg): Ignore SVG images that have no width
59806 or height, because these can't be displayed by ImageMagick,
59809 2015-12-24 Lars Ingebrigtsen <larsi@gnus.org>
59811 shr table rendering fix
59813 * shr.el (shr-tag-table): Allow rendering body-less tables
59816 2015-12-22 Sam Steingold <sds@gnu.org>
59818 clipboard should still work even if interprogram-* is disabled
59820 (clipboard-yank): When `interprogram-cut-function' is nil,
59821 bind it to `gui-selection-value' - the default value.
59822 (clipboard-kill-region, clipboard-kill-ring-save): When
59823 `interprogram-paste-function' is nil, bind it to `gui-select-text' -
59826 2015-12-18 Phillip Lord <phillip.lord@russet.org.uk>
59828 Fix bootstrap issue with dired-loaddefs
59830 * lisp/dired.el: Autoloads for secondary files loaded optionally.
59832 2015-12-17 Phillip Lord <phillip.lord@russet.org.uk>
59834 dired generate autoloads to non-versioned file.
59836 * lisp/dired.el: Remove autoloads.
59837 * lisp/Makefile.in: Add dired to autogenel.
59838 * lisp/dired-aux.el, lisp/dired-x.el: Update file local.
59839 * test/lisp/dired-tests.el: Add new test.
59841 2015-12-17 Phillip Lord <phillip.lord@russet.org.uk>
59843 eieio generate autoloads to non-versioned file.
59845 * lisp/Makefile.in: eieio-loaddefs add to autogenel.
59846 * lisp/emacs-lisp/eieio.el, lisp/emacs-lisp/eieio-core.el:
59848 * lisp/emacs-lisp/eieio-compat.el, lisp/emacs-lisp/eieio-custom.el,
59849 lisp/emacs-lisp/eieio-opt.el: Update file local.
59850 * test/lisp/emacs-lisp/eieio-tests/eieio-tests.el: New test.
59852 2015-12-17 Phillip Lord <phillip.lord@russet.org.uk>
59854 htmlfontify generate autoload to non-versioned file.
59856 * lisp/Makefile.in: Add htmlfontity-loaddefs to autogenel.
59857 * lisp/hfy-cmap.el: Update file local.
59858 * lisp/htmlfontify.el: Remove autoloads, add require.
59859 * test/lisp/htmlfontify-tests.el: Test autoload functionality.
59861 2015-12-17 Phillip Lord <phillip.lord@russet.org.uk>
59863 ibuffer generate autoloads to non-versioned file.
59865 * lisp/Makefile.in: Add ibuffer-loaddefs to autogenel.
59866 * lisp/ibuf-ext.el: Update file local.
59867 * lisp/ibuffer.el: Remove autoloads and add a require.
59868 * test/lisp/ibuffer-tests.el: Test that autoload is working.
59870 2015-12-17 Phillip Lord <phillip.lord@russet.org.uk>
59872 rmail generate autoloads to non-versioned file.
59874 * lisp/Makefile.in: Add rmail-loaddefs.el to autogenel.
59875 * lisp/mail/rmail.el: Remove autoloads, add require.
59876 * lisp/mail/rmailedit.el, lisp/mail/rmailkwd.el:
59877 * lisp/mail/rmailmm.el, lisp/mail/rmailmsc.el:
59878 * lisp/mail/rmailsort.el, lisp/mail/rmailsum.el:
59879 * lisp/mail/undigest.el: Update file-local.
59880 * test/lisp/mail/rmail-tests.el:
59882 2015-12-17 Phillip Lord <phillip.lord@russet.org.uk>
59884 Add autoload-force target.
59886 * lisp/Makefile.in (autoload-force): New target.
59888 2015-12-17 Phillip Lord <phillip.lord@russet.org.uk>
59890 ps-print generate autoloads to non versioned file.
59892 * lisp/Makefile.in: Add ps-print-loaddefs.el to autogen list.
59893 * lisp/ps-print.el: Remove autoloads.
59894 * lisp/ps-mule.el: Update file-local.
59895 * test/lisp/ps-print-tests.el: Test autoload functionality.
59897 2015-12-17 Phillip Lord <phillip.lord@russet.org.uk>
59899 reftex generate autoloads to non versioned file.
59901 * lisp/Makefile.in: Add reftex-loaddefs to autogen files
59902 * lisp/textmodes/reftex.el: Remove autoloads.
59903 * lisp/textmodes/reftex-auc.el, lisp/textmodes/reftex-cite.el:
59904 * lisp/textmodes/reftex-dcr.el, lisp/textmodes/reftex-global.el:
59905 * lisp/textmodes/reftex-index.el, lisp/textmodes/reftex-parse.el:
59906 * lisp/textmodes/reftex-ref.el, lisp/textmodes/reftex-sel.el:
59907 * lisp/textmodes/reftex-toc.el: Update autoload file-local.
59908 * test/lisp/textmodes/reftex-tests.el: Add test of an autoloaded
59911 2015-12-07 Stefan Monnier <monnier@iro.umontreal.ca>
59913 * lisp/calculator.el (calculator-define-key): Undo last change
59915 Make map argument mandatory instead (bug#22106).
59916 (calculator-add-operators): Pass the argument that's not optional any more.
59918 2015-12-03 Glenn Morris <rgm@gnu.org>
59920 * Makefile.in: Avoid duplication.
59922 (have-tests): New rule.
59923 (check, check-maybe): Use it.
59925 2015-12-02 Phillip Lord <phillip.lord@russet.org.uk>
59927 make check unconditional, check-maybe top-level.
59929 * Makefile.in: Add check-maybe target.
59930 * test/Makefile.in: Restore unconditional behavior to make check.
59932 2015-12-01 Phillip Lord <phillip.lord@russet.org.uk>
59934 Tests now support out-of-source-build.
59936 * tests/Makefile.in,test/make-test-deps.emacs-lisp: Remove assumptions
59937 about current working directory.
59939 2015-12-01 Artur Malabarba <bruce.connor.am@gmail.com>
59941 * lisp/emacs-lisp/let-alist.el: Now an Elpa :core package
59943 2015-11-30 Phillip Lord <phillip.lord@russet.org.uk>
59945 Improve documentation and clean up.
59947 * test/Makefile.in: Improve documentation, use EMACS variable
59948 correctly, and clean up makefile rules.
59950 2015-11-30 Phillip Lord <phillip.lord@russet.org.uk>
59952 Update file headers for name change.
59954 * (test/src/decompress-tests.el, test/src/alloc-tests.el): Update headers.
59956 2015-11-30 Phillip Lord <phillip.lord@russet.org.uk>
59958 Test files renamed to new scheme.
59960 * (finalizer-tests.el): Now renamed alloc-tests.el
59961 * (zlib-tests.el): Now renamed decompress-tests.el.
59963 2015-11-30 Phillip Lord <phillip.lord@russet.org.uk>
59965 Tests now depend on source files
59967 * test/Makefile.in: Include dependences from tests to source files.
59968 * test/make-test-deps.emacs-lisp: New file
59969 * .gitignore: Ignore generated make include file
59971 2015-11-30 Stefan Monnier <monnier@iro.umontreal.ca>
59973 * lisp/progmodes/which-func.el: Improve disabling the mode
59975 Use lexical-binding.
59976 (which-func-modes, which-func-non-auto-modes, which-func-maxout)
59977 (which-func, which-func-format): Remove redundant :group arg.
59978 (which-func-try-to-enable): New function.
59979 (which-func-ff-hook, which-function-mode): Use it.
59980 (mode-line-misc-info): Add ourselves here instead of in bindings.el.
59981 * lisp/bindings.el (mode-line-misc-info): Remove which-func-mode entry.
59983 2015-11-30 Stefan Monnier <monnier@iro.umontreal.ca>
59985 * lisp/calculator.el (calculator-define-key): Silence warning
59987 ...about unknown calculator-mode-map.
59989 2015-11-29 Eli Barzilay <eli@barzilay.org>
59991 * lisp/calculator.el: more improvements and bugfixes.
59993 - Mark `calculator-paste-decimals' as obsolete. (It wasn't having an
59996 - Simplify `calculator-number-to-string' by throwing most of the work
59997 onto `number-to-string', leaving just some tweaks for decimal inputs.
59998 This leads to some minor changes, for example, pasting "1x1" in hex
59999 mode would warn that "x" is ignored and result in "11" (and it wasn't
60000 done in decimal mode), whereas now it just ignores everything from the
60001 "x" and on and result in a "1" just like in decimal input mode. Also,
60002 overflows are left for `number-to-string' to deal with.
60004 - `calculator-paste' is very simple as a result.
60006 - Extend the simplified `calculator-paste': with a prefix argument it
60007 pastes a string as if the characters were entered. This can be used
60008 to reduce expressions, but note that it's a simple literal operation,
60009 so precedence can be messed, a number can be paster while entering a
60010 number, spaces and newlines matter, etc.
60012 - Fix a minor bug where "e+" in hex mode wouldn't use "+" as an
60015 - Fix a bug in `calculator-put-value': avoid grouping in the display
60016 that is used to construct `calculator-curnum'. This would trigger
60017 when pasting or getting a value from a register in some radix mode
60018 with a large enough value. Another fix: make the output radix equal
60019 the input one, otherwise numbers could be converted twice.
60021 2015-11-29 Eli Barzilay <eli@barzilay.org>
60023 * lisp/calculator.el: Re-do key bindings.
60025 Use a helper function that arranges a parent keymap that binds alternate
60026 case keys so if some letter key is unbound and it's un/shifted version
60027 is, it will get used. This makes the global-map trickery unnecessary.
60029 Also switch to passing strings that name keys through `kbd'.
60031 2015-11-29 Eli Barzilay <eli@barzilay.org>
60033 * lisp/calculator.el: improve radix modes
60035 Fix prompt for some input radix with decimal output (eg, "BD" instead of
60036 the incorrect "B="); also, some minor docstring tweaks for these.
60038 2015-11-29 Eli Barzilay <eli@barzilay.org>
60040 * lisp/calculator.el: better reading of register names
60042 Use `register-read-with-preview' with a dynamically bound
60043 `register-alist' and a proper preview function to read register names.
60045 2015-11-29 Eli Barzilay <eli@barzilay.org>
60047 * lisp/calculator.el: General improvements
60049 Use things like `when', `unless', and `push'.
60051 Improve `calculator-last-input' so it doesn't barf when hitting `F1' in
60054 2015-11-28 Michael Albinus <michael.albinus@gmx.de>
60056 Fix a problem with gfilenotify in filenotify-tests.el
60058 * test/lisp/filenotify-tests.el
60059 (file-notify--test-expected-events): Remove.
60060 (file-notify--test-cleanup): Do not set that variable.
60061 (file-notify--test-with-events): EVENTS can also be a list of lists.
60062 (file-notify-test02-events, file-notify-test04-file-validity):
60063 Adapt expected result.
60065 2015-11-28 Eli Zaretskii <eliz@gnu.org>
60067 * .gitignore: Adjust to changes in 'test' directory structure.
60069 2015-11-28 Eli Zaretskii <eliz@gnu.org>
60071 Fix test/manual/etags/Makefile
60073 * test/manual/etags/Makefile (ETAGS_PROG, CTAGS_PROG): Adjust to
60074 changes in 'test' directory structure.
60076 2015-11-27 Phillip Lord <phillip.lord@russet.org.uk>
60078 Exclude resource dirs from search for tests.
60080 * test/Makefile.in: Test file locations are now found with find
60081 rather than using finds native functions.
60083 2015-11-27 Phillip Lord <phillip.lord@russet.org.uk>
60085 Add test targets without directory names.
60087 * (test/Makefile.in): Extend test_template to add two targets for each
60090 2015-11-27 Artur Malabarba <bruce.connor.am@gmail.com>
60092 * lisp/emacs-lisp/package.el: Require url-handlers
60094 2015-11-27 Phillip Lord <phillip.lord@russet.org.uk>
60096 Move elisp-mode-tests to new function names.
60098 * test/lisp/progmodes/elisp-mode-tests.el (find-defsdefun-c-defvar-c,
60099 find-defs-defun-el-defvar-c): Call `elisp--xref-find-definitions'.
60101 2015-11-27 Juanma Barranquero <lekktu@gmail.com>
60103 * lisp/emacs-lisp/package.el: Declare `url-insert-buffer-contents'
60105 2015-11-26 Phillip Lord <phillip.lord@russet.org.uk>
60107 Merge branch 'feature/standard-test-location'
60109 2015-11-25 Stefan Monnier <monnier@iro.umontreal.ca>
60111 * lisp/emacs-lisp/eieio.el: Add some default implementations
60113 (standard-class): Mark it obsolete.
60114 (slot-missing): Give it a default implementation.
60115 (destructor): Simplify and mark it obsolete.
60116 (object-print): Give it a default implementation.
60117 (eieio-change-class): Rename from change-class.
60118 (change-class): Redefine as obsolete alias.
60120 2015-11-25 Michael Albinus <michael.albinus@gmx.de>
60122 Mention kqueue in NEWS
60124 2015-11-25 Michael Albinus <michael.albinus@gmx.de>
60126 Merge from scratch/kqueue
60128 bec57a4 Some final fixes in file notification before merging with master
60129 0247489 Rework file notifications, kqueue has problems with directory monitors
60130 5154781 Continie with pending events
60131 6b490c0 Improve loops in file-notify-test06-many-events
60132 c8e266f Handle more complex rename operation in kqueue
60133 5044bdf New test with a larger number of events.
60134 65ba5a9 Further fixes for kqueue.
60135 13f3508 Code cleanup of kqueue.c
60136 99aa855 Doc changes for kqueue
60137 8deebe1 Finish implementation in kqueue.c
60138 90d6c69 * lisp/filenotify.el (file-notify-add-watch): Fix thinko.
60139 e95b309 More work on kqueue
60140 41d9bd0 Implement directory events
60141 c571fc1 Build fixes for kqueue support.
60142 e0a68f2 Continue kqueue implementation
60143 7543d1c Work on kqueue
60144 e3354e2 Add kqueue support
60145 c6457ce Minor fix to comment indentation and typo in last commit
60146 b92307f linum-mode plays more nicely with other margin-setting extensions
60147 58e6235 * lisp/image-mode.el: Support encrypted file
60148 9375652 * lisp/progmodes/verilog-mode.el (verilog-save-buffer-state): Add backquote
60149 47f83b6 ; ChangeLog.2 fixes
60150 7cc233e * lisp/emacs-lisp/package.el: Fix a decoding issue
60151 5f9153f * lisp/emacs-lisp/package.el: Refactor -with-work-buffer-async
60152 353f5e7 * lisp/progmodes/verilog-mode.el: Use with-silent-modifications
60153 70f1fda ; Auto-commit of ChangeLog files.
60154 ae0653b * CONTRIBUTE: Remove information about feature freeze.
60155 9459456 Merge branch 'release-process-lowercase'
60156 9a4aa0f Document the release process
60157 f8cc14b * admin/release-process: Rename from admin/FOR-RELEASE.
60158 dcd5877 gitmerge: Fix git log command
60159 2ac79ae gitmerge: Try to detect cherry-picks
60160 5f7a2a9 Increment Emacs version on master branch
60161 ed2e7e2 Mention CONTRIBUTE in README
60162 9e00a02 Update verilog-mode.el to 2015-11-09-b121d60-vpo.
60163 138ad3d ; Fix warnings
60164 7126e9a ; Update xref-etags-mode for the latest change
60165 246d660 Use generic dispatch for xref backends
60166 31f6e93 Support rectangular regions for more commands
60167 f103a27 Handle multiple matches on the same line; add highlighting
60168 fe973fc Replace xref-match-bounds with xref-match-length
60169 92a5010 Merge from gnulib
60170 04ac097 Spruce up ftfont.c memory allocation
60171 4c4b520 Port recent XCB changes to 64-bit ‘long int’
60172 4f0ce9c * src/undo.c (run_undoable_change): Now static.
60173 695a6f9 Remove support for ':timeout' from w32 tray notifications
60174 a731c2f * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
60175 2b4c0c0 * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
60176 66b9f7b * src/undo.c: Small fixes for previous change
60177 2fac30e Add a few more variables to redisplay--variables
60178 04f69f1 * lisp/loadup.el: Enlarge the size of the hash table to 80000.
60179 e221d32 Fix point positioning after transposing with negative arg
60180 35f5afb Fix last change in shr.el
60181 508e77b Fix last change
60182 d60ed3f Another fix for MinGW64 and Cygwin builds due to notifications
60183 805a39b Remove intern calls and XXX comments from Fx_export_frames
60184 9463abf shr: don't invoke unbound function (Bug#21895)
60185 6e5186e * test/automated/keymaps-test.el: Fix test to make it repeatable
60186 0c92826 * test/automated/cl-lib-tests.el (cl-lib-struct-constructors): Small fix
60187 39dbd1c : Tests for undo-auto functionality.
60188 20aa42e ; Merge branch 'fix/no-undo-boundary-on-secondary-buffer-change'
60189 44dfa86 The heuristic that Emacs uses to add an `undo-boundary' has been reworked, as it interacts poorly with functions on `post-command-hook' or `after-change-functions'.
60190 d2f73db Bind [?\S-\ ] to previous line command in Dired-like modes.
60191 c1bc6e5 Fix the MinGW64 and Cygwin-w32 builds
60192 1e363a8 Enable sorting of JSON object keys when encoding
60193 9dd7da9 * test/automated/keymap-tests.el: New test file
60194 aa17de9 Speed up x_real_pos_and_offsets using XCB
60195 a838c83 Enable use of XCB for checking window manager state
60196 c7f2b6a Detect XCB and save a connection handle
60197 e1c27db Reduce some data dependencies between X calls
60198 25e32bd Use color cache for creating bitmap
60199 851be0f Add "^" to the interactive specs of `dired-next/previous-line'
60200 055ca3a Sync with soap-client repository, version 3.0.2
60201 e0f64e7 CC Mode: Respect users' settings of open-paren-in-column-0-is-defun-start.
60202 952395d * lisp/obarray.el: Fix shadowed variables
60203 436d330 Avoid error in submitting a form with EWW
60204 e887f6e ; * doc/lispref/os.texi: Fix indentation of sample code.
60205 51d840a Rename seq-p and map-p to seqp and mapp
60206 23036ba Rename obarray-p to obarrayp
60207 20aea42 Rename obarray-foreach to obarray-map
60208 a3b2101 New file with obarray functions.
60209 9d43941 Implement tray notifications for MS-Windows
60211 2015-11-25 Michael Albinus <michael.albinus@gmx.de>
60213 Some final fixes in file notification before merging with master
60215 * lisp/filenotify.el (file-notify--rm-descriptor): Remove WHAT arg.
60216 (file-notify-callback): Improve check for `stopped' event. Call
60217 `file-notify-rm-watch' rather than `file-notify--rm-descriptor'.
60218 (file-notify-add-watch): In case FILE is not a directory, call the
60219 file monitor for the kqueue backend. Otherwise, call the
60220 directory monitor for the upper directory.
60222 * src/inotify.c (inotifyevent_to_event): Extract file name from
60223 watch_object if the event doesn't provide it.
60224 (Finotify_add_watch): Add file name to watch_object.
60226 * test/automated/file-notify-tests.el (file-notify--test-timeout):
60227 Use different timeouts for different libraries.
60228 (file-notify--test-with-events): Suppress lock files. Flush
60229 outstanding events before running the body.
60230 (file-notify-test02-events, file-notify-test04-file-validity): Do
60231 not skip cygwin tests. Add additional test for file creation.
60232 Adapt expected result for different backends.
60233 (file-notify-test03-autorevert): Some of the tests don't work for
60235 (file-notify-test06-many-events): Rename into both directions.
60237 2015-11-25 Michael Albinus <michael.albinus@gmx.de>
60239 Rework file notifications, kqueue has problems with directory monitors
60241 * lisp/filenotify.el (file-notify-add-watch): Call the native
60242 add-watch function on the file, not on the dir.
60244 * src/kqueue.c (kqueue_compare_dir_list): Make also bookkeeping
60245 about already deleted entries.
60247 * test/automated/auto-revert-tests.el
60248 (auto-revert-test01-auto-revert-several-files): Do not call "cp -f"
60249 since this deletes the target file first.
60251 * test/automated/file-notify-tests.el (file-notify--test-event-test):
60252 Make stronger checks.
60253 (file-notify-test01-add-watch, file-notify-test02-events)
60254 (file-notify-test04-file-validity, file-notify-test05-dir-validity):
60255 Rewrite in order to call file monitors but directory monitors.
60256 (file-notify-test06-many-events): Ler rename work in both directions.
60258 2015-11-25 Michael Albinus <michael.albinus@gmx.de>
60260 Continie with pending events
60262 * src/kqueue.c (pending_events): Remove global variable.
60263 (kqueue_compare_dir_list): Create `write' event for not used
60265 (globals_of_kqueue): Remove initialization of pending_events.
60267 2015-11-25 Michael Albinus <michael.albinus@gmx.de>
60269 Improve loops in file-notify-test06-many-events
60271 * test/automated/file-notify-tests.el (file-notify-test06-many-events):
60272 Use `read-event' pauses for the `write-file' loops; otherwise
60273 events are lost in inotify and gfilenotify cases.
60275 2015-11-25 Michael Albinus <michael.albinus@gmx.de>
60277 Handle more complex rename operation in kqueue
60279 * src/kqueue.c (pending_events): New variable.
60280 (kqueue_compare_dir_list): Handle more complex rename operation.
60281 (globals_of_kqueue): Initialize pending_events.
60283 * test/automated/file-notify-tests.el (file-notify-test06-many-events):
60284 Adapt expected events in the `rename-file' case.
60285 (file-notify-test06-many-events-remote): Declare.
60287 2015-11-25 Wolfgang Jenkner <wjenkner@inode.at>
60289 New test with a larger number of events.
60291 * test/automated/file-notify-tests.el (file-notify--test-with-events):
60292 Make timeout heuristically depend on the number of events.
60294 (file-notify-test06-many-events): Use it for new test.
60296 2015-11-25 Michael Albinus <michael.albinus@gmx.de>
60298 Further fixes for kqueue.
60300 * lisp/filenotify.el (file-notify-callback): Raise also event if
60301 directory name matches.
60302 (file-notify-add-watch): Add `create' to the flags for `kqueue'.
60304 * src/kqueue.c (kqueue_generate_event): Use watch_object as
60305 argument instead of ident. Remove callback argument. Adapt
60306 callees. Check actions whether they are monitored flags.
60308 * test/automated/file-notify-tests.el (file-notify--test-library):
60310 (file-notify-test00-availability, file-notify-test02-events)
60311 (file-notify-test04-file-validity)
60312 (file-notify-test05-dir-validity): Use it.
60313 (file-notify-test02-events, file-notify-test04-file-validity): Add
60314 `read-event' calls between different file actions, in order to
60315 give the backends a chance to rais an event. Needed especially
60316 for kqueue. In case of deleting a directory, there are two
60319 2015-11-25 Michael Albinus <michael.albinus@gmx.de>
60321 Code cleanup of kqueue.c
60323 * src/kqueue.c (kqueue_directory_listing): Skip "." and "..".
60324 (kqueue_compare_dir_list): Do not loop when calling
60325 directory_files_internal. Remove checks for "." and "..", this is
60326 done in kqueue_directory_listing now.
60327 (Fkqueue_add_watch): Check for proper emacs_open flags.
60329 2015-11-25 Michael Albinus <michael.albinus@gmx.de>
60331 Doc changes for kqueue
60333 * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
60334 Fix some glitches in the example.
60336 2015-11-25 Michael Albinus <michael.albinus@gmx.de>
60338 Finish implementation in kqueue.c
60340 * src/kqueue.c (kqueue_directory_listing, kqueue_callback):
60341 Simplify access to list.
60342 (kqueue_compare_dir_list): Simplify access to list. Raise
60343 `delete' event if directory does not exist any longer. Otherwise,
60344 wait until directory contents has changed. Fix error in check.
60346 2015-11-25 Michael Albinus <michael.albinus@gmx.de>
60348 * lisp/filenotify.el (file-notify-add-watch): Fix thinko.
60350 2015-11-25 Michael Albinus <michael.albinus@gmx.de>
60352 More work on kqueue
60354 * lisp/filenotify.el (file-notify-callback): Handle also the
60355 `rename' event from kqueue.
60356 (file-notify-add-watch): Do not register an entry twice.
60358 * src/kqueue.c (kqueue_directory_listing): New function.
60359 (kqueue_generate_event): New argument FILE1. Adapt callees.
60360 (kqueue_compare_dir_list): Rewrite in order to make it more robust.
60362 2015-11-25 Michael Albinus <michael.albinus@gmx.de>
60364 Implement directory events
60366 * lisp/filenotify.el (file-notify-handle-event)
60367 (file-notify-callback): Remove traces.
60369 * src/kqueue.c: Include <sys/time.h>.
60370 (kqueue_generate_event, kqueue_compare_dir_list): New functions.
60371 (kqueue_callback): Use them. Call kevent() with a zero timeout.
60372 (Fkqueue_add_watch): Adapt docstring. Support directory events.
60373 Compute initial directory listing. Close file descriptor in case
60375 (syms_of_kqueue): Declare Qcreate.
60377 2015-11-25 Wolfgang Jenkner <wjenkner@inode.at>
60379 Build fixes for kqueue support.
60381 * src/kqueue.c (Fkqueue_add_watch): O_BINARY is not a POSIX open(3)
60384 * configure.ac (HAVE_KQUEUE): There is no pkg-config module for native
60387 2015-11-25 Michael Albinus <michael.albinus@gmx.de>
60389 Continue kqueue implementation
60391 * lisp/filenotify.el (file-notify-handle-event)
60392 (file-notify-callback): Enable trace messages.
60394 * src/kqueue.c: Include also <sys/types.h>.
60395 (kqueue_callback): Remove watch in case of NOTE_DELETE or NOTE_RENAME.
60396 (Fkqueue_rm_watch, Fkqueue_valid_p): New functions.
60397 (syms_of_kqueue): Add them.
60399 2015-11-25 Michael Albinus <michael.albinus@gmx.de>
60403 * lisp/filenotify.el (file-notify--library)
60404 (file-notify-descriptors, file-notify-callback)
60405 (file-notify-add-watch, file-notify-rm-watch)
60406 (file-notify-valid-p): Add kqueue support.
60408 * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
60410 2015-11-25 Michael Albinus <michael.albinus@gmx.de>
60414 * configure.ac (--with-file-notification): Add kqueue.
60415 (top): Remove special test for "${HAVE_NS}" and
60416 ${with_file_notification}, this is handled inside gfilenotify
60417 tests. Add kqueue tests. Use NOTIFY_CFLAGS and NOTIFY_LIBS
60418 instead of library specific variables.
60420 * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
60422 * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
60424 * src/kqueue.c: New file.
60426 * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
60428 2015-11-25 Michael Albinus <michael.albinus@gmx.de>
60430 Some final fixes in file notification before merging with master
60432 * lisp/filenotify.el (file-notify--rm-descriptor): Remove WHAT arg.
60433 (file-notify-callback): Improve check for `stopped' event. Call
60434 `file-notify-rm-watch' rather than `file-notify--rm-descriptor'.
60435 (file-notify-add-watch): In case FILE is not a directory, call the
60436 file monitor for the kqueue backend. Otherwise, call the
60437 directory monitor for the upper directory.
60439 * src/inotify.c (inotifyevent_to_event): Extract file name from
60440 watch_object if the event doesn't provide it.
60441 (Finotify_add_watch): Add file name to watch_object.
60443 * test/automated/file-notify-tests.el (file-notify--test-timeout):
60444 Use different timeouts for different libraries.
60445 (file-notify--test-with-events): Suppress lock files. Flush
60446 outstanding events before running the body.
60447 (file-notify-test02-events, file-notify-test04-file-validity): Do
60448 not skip cygwin tests. Add additional test for file creation.
60449 Adapt expected result for different backends.
60450 (file-notify-test03-autorevert): Some of the tests don't work for
60452 (file-notify-test06-many-events): Rename into both directions.
60454 2015-11-24 Phillip Lord <phillip.lord@russet.org.uk>
60456 Update elisp-mode-tests for changed file location.
60458 * test/lisp/progmodes/elisp-mode-tests.el:
60460 2015-11-24 Phillip Lord <phillip.lord@russet.org.uk>
60462 Exclude manual tests from Makefile
60464 * test/Makefile.in:
60466 2015-11-24 Phillip Lord <phillip.lord@russet.org.uk>
60468 Move package test files to new directory.
60470 * test/lisp/emacs-lisp/package-tests.el: Update resoruce file location.
60471 * test/data/package: Moved to test/lisp/emacs-lisp/package-resources
60473 2015-11-24 Phillip Lord <phillip.lord@russet.org.uk>
60475 Restore delete Makefiles and fix .gitignore.
60477 * .gitignore: Update Makefiles to changed locations
60478 * test/lisp/progmodes/flymake-resources/Makefile,
60479 test/manual/etags/Makefile,
60480 test/manual/etags/make-src/Makefile,
60481 test/manual/indent/Makefile: Restored and moved to new location.
60483 2015-11-24 Phillip Lord <phillip.lord@russet.org.uk>
60485 Test infrastructure: updates after directory move
60487 * (test/Makefile.in): Support directories several levels deep.
60488 * (test/data/flymake): Rename to test/lisp/progmodes/flymake-resources.
60489 * (test/lisp/progmodes/flymake-tests.el): Support renamed resource directory.
60491 2015-11-24 Phillip Lord <phillip.lord@russet.org.uk>
60493 Rename all test files to reflect source layout.
60495 * CONTRIBUTE, Makefile.in, configure.ac: Update to reflect
60496 test directory moves.
60497 * test/file-organisation.org: New file.
60498 * test/automated/Makefile.in:
60499 * test/automated/data/decompress/foo.gz:
60500 * test/automated/data/epg/pubkey.asc:
60501 * test/automated/data/epg/seckey.asc:
60502 * test/automated/data/files-bug18141.el.gz:
60503 * test/automated/data/flymake/test.c:
60504 * test/automated/data/flymake/test.pl:
60505 * test/automated/data/package/archive-contents:
60506 * test/automated/data/package/key.pub:
60507 * test/automated/data/package/key.sec:
60508 * test/automated/data/package/multi-file-0.2.3.tar:
60509 * test/automated/data/package/multi-file-readme.txt:
60510 * test/automated/data/package/newer-versions/archive-contents:
60511 * test/automated/data/package/newer-versions/new-pkg-1.0.el:
60512 * test/automated/data/package/newer-versions/simple-single-1.4.el:
60513 * test/automated/data/package/package-test-server.py:
60514 * test/automated/data/package/signed/archive-contents:
60515 * test/automated/data/package/signed/archive-contents.sig:
60516 * test/automated/data/package/signed/signed-bad-1.0.el:
60517 * test/automated/data/package/signed/signed-bad-1.0.el.sig:
60518 * test/automated/data/package/signed/signed-good-1.0.el:
60519 * test/automated/data/package/signed/signed-good-1.0.el.sig:
60520 * test/automated/data/package/simple-depend-1.0.el:
60521 * test/automated/data/package/simple-single-1.3.el:
60522 * test/automated/data/package/simple-single-readme.txt:
60523 * test/automated/data/package/simple-two-depend-1.1.el:
60524 * test/automated/abbrev-tests.el:
60525 * test/automated/auto-revert-tests.el:
60526 * test/automated/calc-tests.el:
60527 * test/automated/icalendar-tests.el:
60528 * test/automated/character-fold-tests.el:
60529 * test/automated/comint-testsuite.el:
60530 * test/automated/descr-text-test.el:
60531 * test/automated/electric-tests.el:
60532 * test/automated/cl-generic-tests.el:
60533 * test/automated/cl-lib-tests.el:
60534 * test/automated/eieio-test-methodinvoke.el:
60535 * test/automated/eieio-test-persist.el:
60536 * test/automated/eieio-tests.el:
60537 * test/automated/ert-tests.el:
60538 * test/automated/ert-x-tests.el:
60539 * test/automated/generator-tests.el:
60540 * test/automated/let-alist.el:
60541 * test/automated/map-tests.el:
60542 * test/automated/advice-tests.el:
60543 * test/automated/package-test.el:
60544 * test/automated/pcase-tests.el:
60545 * test/automated/regexp-tests.el:
60546 * test/automated/seq-tests.el:
60547 * test/automated/subr-x-tests.el:
60548 * test/automated/tabulated-list-test.el:
60549 * test/automated/thunk-tests.el:
60550 * test/automated/timer-tests.el:
60551 * test/automated/epg-tests.el:
60552 * test/automated/eshell.el:
60553 * test/automated/faces-tests.el:
60554 * test/automated/file-notify-tests.el:
60555 * test/automated/auth-source-tests.el:
60556 * test/automated/gnus-tests.el:
60557 * test/automated/message-mode-tests.el:
60558 * test/automated/help-fns.el:
60559 * test/automated/imenu-test.el:
60560 * test/automated/info-xref.el:
60561 * test/automated/mule-util.el:
60562 * test/automated/isearch-tests.el:
60563 * test/automated/json-tests.el:
60564 * test/automated/bytecomp-tests.el:
60565 * test/automated/coding-tests.el:
60566 * test/automated/core-elisp-tests.el:
60567 * test/automated/decoder-tests.el:
60568 * test/automated/files.el:
60569 * test/automated/font-parse-tests.el:
60570 * test/automated/lexbind-tests.el:
60571 * test/automated/occur-tests.el:
60572 * test/automated/process-tests.el:
60573 * test/automated/syntax-tests.el:
60574 * test/automated/textprop-tests.el:
60575 * test/automated/undo-tests.el:
60576 * test/automated/man-tests.el:
60577 * test/automated/completion-tests.el:
60578 * test/automated/dbus-tests.el:
60579 * test/automated/newsticker-tests.el:
60580 * test/automated/sasl-scram-rfc-tests.el:
60581 * test/automated/tramp-tests.el:
60582 * test/automated/obarray-tests.el:
60583 * test/automated/compile-tests.el:
60584 * test/automated/elisp-mode-tests.el:
60585 * test/automated/f90.el:
60586 * test/automated/flymake-tests.el:
60587 * test/automated/python-tests.el:
60588 * test/automated/ruby-mode-tests.el:
60589 * test/automated/subword-tests.el:
60590 * test/automated/replace-tests.el:
60591 * test/automated/simple-test.el:
60592 * test/automated/sort-tests.el:
60593 * test/automated/subr-tests.el:
60594 * test/automated/reftex-tests.el:
60595 * test/automated/sgml-mode-tests.el:
60596 * test/automated/tildify-tests.el:
60597 * test/automated/thingatpt.el:
60598 * test/automated/url-future-tests.el:
60599 * test/automated/url-util-tests.el:
60600 * test/automated/add-log-tests.el:
60601 * test/automated/vc-bzr.el:
60602 * test/automated/vc-tests.el:
60603 * test/automated/xml-parse-tests.el:
60604 * test/BidiCharacterTest.txt:
60605 * test/biditest.el:
60606 * test/cedet/cedet-utests.el:
60607 * test/cedet/ede-tests.el:
60608 * test/cedet/semantic-ia-utest.el:
60609 * test/cedet/semantic-tests.el:
60610 * test/cedet/semantic-utest-c.el:
60611 * test/cedet/semantic-utest.el:
60612 * test/cedet/srecode-tests.el:
60613 * test/cedet/tests/test.c:
60614 * test/cedet/tests/test.el:
60615 * test/cedet/tests/test.make:
60616 * test/cedet/tests/testdoublens.cpp:
60617 * test/cedet/tests/testdoublens.hpp:
60618 * test/cedet/tests/testfriends.cpp:
60619 * test/cedet/tests/testjavacomp.java:
60620 * test/cedet/tests/testnsp.cpp:
60621 * test/cedet/tests/testpolymorph.cpp:
60622 * test/cedet/tests/testspp.c:
60623 * test/cedet/tests/testsppcomplete.c:
60624 * test/cedet/tests/testsppreplace.c:
60625 * test/cedet/tests/testsppreplaced.c:
60626 * test/cedet/tests/testsubclass.cpp:
60627 * test/cedet/tests/testsubclass.hh:
60628 * test/cedet/tests/testtypedefs.cpp:
60629 * test/cedet/tests/testvarnames.c:
60630 * test/etags/CTAGS.good:
60631 * test/etags/ETAGS.good_1:
60632 * test/etags/ETAGS.good_2:
60633 * test/etags/ETAGS.good_3:
60634 * test/etags/ETAGS.good_4:
60635 * test/etags/ETAGS.good_5:
60636 * test/etags/ETAGS.good_6:
60637 * test/etags/a-src/empty.zz:
60638 * test/etags/a-src/empty.zz.gz:
60639 * test/etags/ada-src/2ataspri.adb:
60640 * test/etags/ada-src/2ataspri.ads:
60641 * test/etags/ada-src/etags-test-for.ada:
60642 * test/etags/ada-src/waroquiers.ada:
60643 * test/etags/c-src/a/b/b.c:
60644 * test/etags/c-src/abbrev.c:
60645 * test/etags/c-src/c.c:
60646 * test/etags/c-src/dostorture.c:
60647 * test/etags/c-src/emacs/src/gmalloc.c:
60648 * test/etags/c-src/emacs/src/keyboard.c:
60649 * test/etags/c-src/emacs/src/lisp.h:
60650 * test/etags/c-src/emacs/src/regex.h:
60651 * test/etags/c-src/etags.c:
60652 * test/etags/c-src/exit.c:
60653 * test/etags/c-src/exit.strange_suffix:
60654 * test/etags/c-src/fail.c:
60655 * test/etags/c-src/getopt.h:
60656 * test/etags/c-src/h.h:
60657 * test/etags/c-src/machsyscalls.c:
60658 * test/etags/c-src/machsyscalls.h:
60659 * test/etags/c-src/sysdep.h:
60660 * test/etags/c-src/tab.c:
60661 * test/etags/c-src/torture.c:
60662 * test/etags/cp-src/MDiagArray2.h:
60663 * test/etags/cp-src/Range.h:
60664 * test/etags/cp-src/burton.cpp:
60665 * test/etags/cp-src/c.C:
60666 * test/etags/cp-src/clheir.cpp.gz:
60667 * test/etags/cp-src/clheir.hpp:
60668 * test/etags/cp-src/conway.cpp:
60669 * test/etags/cp-src/conway.hpp:
60670 * test/etags/cp-src/fail.C:
60671 * test/etags/cp-src/functions.cpp:
60672 * test/etags/cp-src/screen.cpp:
60673 * test/etags/cp-src/screen.hpp:
60674 * test/etags/cp-src/x.cc:
60675 * test/etags/el-src/TAGTEST.EL:
60676 * test/etags/el-src/emacs/lisp/progmodes/etags.el:
60677 * test/etags/erl-src/gs_dialog.erl:
60678 * test/etags/f-src/entry.for:
60679 * test/etags/f-src/entry.strange.gz:
60680 * test/etags/f-src/entry.strange_suffix:
60681 * test/etags/forth-src/test-forth.fth:
60682 * test/etags/html-src/algrthms.html:
60683 * test/etags/html-src/index.shtml:
60684 * test/etags/html-src/software.html:
60685 * test/etags/html-src/softwarelibero.html:
60686 * test/etags/lua-src/allegro.lua:
60687 * test/etags/objc-src/PackInsp.h:
60688 * test/etags/objc-src/PackInsp.m:
60689 * test/etags/objc-src/Subprocess.h:
60690 * test/etags/objc-src/Subprocess.m:
60691 * test/etags/objcpp-src/SimpleCalc.H:
60692 * test/etags/objcpp-src/SimpleCalc.M:
60693 * test/etags/pas-src/common.pas:
60694 * test/etags/perl-src/htlmify-cystic:
60695 * test/etags/perl-src/kai-test.pl:
60696 * test/etags/perl-src/yagrip.pl:
60697 * test/etags/php-src/lce_functions.php:
60698 * test/etags/php-src/ptest.php:
60699 * test/etags/php-src/sendmail.php:
60700 * test/etags/prol-src/natded.prolog:
60701 * test/etags/prol-src/ordsets.prolog:
60702 * test/etags/ps-src/rfc1245.ps:
60703 * test/etags/pyt-src/server.py:
60704 * test/etags/tex-src/gzip.texi:
60705 * test/etags/tex-src/nonewline.tex:
60706 * test/etags/tex-src/testenv.tex:
60707 * test/etags/tex-src/texinfo.tex:
60708 * test/etags/y-src/atest.y:
60709 * test/etags/y-src/cccp.c:
60710 * test/etags/y-src/cccp.y:
60711 * test/etags/y-src/parse.c:
60712 * test/etags/y-src/parse.y:
60713 * test/indent/css-mode.css:
60714 * test/indent/js-indent-init-dynamic.js:
60715 * test/indent/js-indent-init-t.js:
60716 * test/indent/js-jsx.js:
60717 * test/indent/js.js:
60718 * test/indent/latex-mode.tex:
60719 * test/indent/modula2.mod:
60720 * test/indent/nxml.xml:
60721 * test/indent/octave.m:
60722 * test/indent/pascal.pas:
60723 * test/indent/perl.perl:
60724 * test/indent/prolog.prolog:
60725 * test/indent/ps-mode.ps:
60726 * test/indent/ruby.rb:
60727 * test/indent/scheme.scm:
60728 * test/indent/scss-mode.scss:
60729 * test/indent/sgml-mode-attribute.html:
60730 * test/indent/shell.rc:
60731 * test/indent/shell.sh:
60732 * test/redisplay-testsuite.el:
60734 * test/automated/buffer-tests.el:
60735 * test/automated/cmds-tests.el:
60736 * test/automated/data-tests.el:
60737 * test/automated/finalizer-tests.el:
60738 * test/automated/fns-tests.el:
60739 * test/automated/inotify-test.el:
60740 * test/automated/keymap-tests.el:
60741 * test/automated/print-tests.el:
60742 * test/automated/libxml-tests.el:
60743 * test/automated/zlib-tests.el: Files Moved.
60745 2015-11-21 Wilson Snyder <wsnyder@wsnyder.org>
60747 verilog-mode.el: Commentary and fix pre-Emacs 21 behavior.
60749 * lisp/progmodes/verilog-mode.el
60750 (verilog-save-font-no-change-functions): Commentary and fix
60751 pre-Emacs 21 behavior.
60753 2015-11-20 Michael Albinus <michael.albinus@gmx.de>
60755 Rework file notifications, kqueue has problems with directory monitors
60757 * lisp/filenotify.el (file-notify-add-watch): Call the native
60758 add-watch function on the file, not on the dir.
60760 * src/kqueue.c (kqueue_compare_dir_list): Make also bookkeeping
60761 about already deleted entries.
60763 * test/automated/auto-revert-tests.el
60764 (auto-revert-test01-auto-revert-several-files): Do not call "cp -f"
60765 since this deletes the target file first.
60767 * test/automated/file-notify-tests.el (file-notify--test-event-test):
60768 Make stronger checks.
60769 (file-notify-test01-add-watch, file-notify-test02-events)
60770 (file-notify-test04-file-validity, file-notify-test05-dir-validity):
60771 Rewrite in order to call file monitors but directory monitors.
60772 (file-notify-test06-many-events): Ler rename work in both directions.
60774 2015-11-19 Przemysław Wojnowski <esperanto@cumego.com>
60776 Use obarray functions from obarray.
60778 * lisp/abbrev.el (copy-abbrev-table, abbrev-table-p, make-abbrev-table,
60779 abbrev-table-get, abbrev-table-put, abbrev-table-empty-p,
60780 clear-abbrev-table, define-abbrev, abbrev--symbol, abbrev-table-menu):
60781 delegate to obarray.el functions.
60782 * lisp/loadup.el: load obarray before abbrev
60783 * test/automated/abbrev-tests.el: new tests
60785 2015-11-19 Michael Albinus <michael.albinus@gmx.de>
60787 Continie with pending events
60789 * src/kqueue.c (pending_events): Remove global variable.
60790 (kqueue_compare_dir_list): Create `write' event for not used
60792 (globals_of_kqueue): Remove initialization of pending_events.
60794 2015-11-19 Michael Albinus <michael.albinus@gmx.de>
60796 Improve loops in file-notify-test06-many-events
60798 * test/automated/file-notify-tests.el (file-notify-test06-many-events):
60799 Use `read-event' pauses for the `write-file' loops; otherwise
60800 events are lost in inotify and gfilenotify cases.
60802 2015-11-19 Michael Albinus <michael.albinus@gmx.de>
60804 Handle more complex rename operation in kqueue
60806 * src/kqueue.c (pending_events): New variable.
60807 (kqueue_compare_dir_list): Handle more complex rename operation.
60808 (globals_of_kqueue): Initialize pending_events.
60810 * test/automated/file-notify-tests.el (file-notify-test06-many-events):
60811 Adapt expected events in the `rename-file' case.
60812 (file-notify-test06-many-events-remote): Declare.
60814 2015-11-18 Christian Schwarzgruber <c.schwarzgruber.cs@gmail.com> (tiny change)
60816 epa.el: Add option to replace original text
60818 * lisp/epa.el (epa-replace-original-text): New user option.
60821 2015-11-18 Mark Oteiza <mvoteiza@udel.edu>
60823 Add interactive seek command.
60825 * lisp/mpc.el (mpc-cmd-seekcur): New function.
60826 (mpc-seek-current): New command.
60827 (mpc-mode-menu): Add entry for mpc-seek-current
60828 (mpc-mode-map): Bind mpc-seek-current to "g"
60830 2015-11-18 Mark Oteiza <mvoteiza@udel.edu>
60832 Fix issue where a new tempfile was created every refresh
60834 * lisp/mpc.el (mpc-format): Leave dir as relative path
60836 2015-11-18 Wolfgang Jenkner <wjenkner@inode.at>
60838 New test with a larger number of events.
60840 * test/automated/file-notify-tests.el (file-notify--test-with-events):
60841 Make timeout heuristically depend on the number of events.
60843 (file-notify-test06-many-events): Use it for new test.
60845 2015-11-18 Stefan Monnier <monnier@iro.umontreal.ca>
60847 * lisp/progmodes/cc-defs.el: Use with-silent-modifications
60849 (c-save-buffer-state): Use with-silent-modifications when available.
60850 (c--macroexpand-all): Check macroexpand-all directly rather than
60853 2015-11-18 Stefan Monnier <monnier@iro.umontreal.ca>
60855 * lisp/loadup.el: Set max-lisp-eval-depth here
60857 * lisp/Makefile.in (BIG_STACK_DEPTH, BIG_STACK_OPTS): Remove.
60858 (BYTE_COMPILE_FLAGS): Adjust accordingly.
60860 2015-11-18 Michael Albinus <michael.albinus@gmx.de>
60862 Further fixes for kqueue.
60864 * lisp/filenotify.el (file-notify-callback): Raise also event if
60865 directory name matches.
60866 (file-notify-add-watch): Add `create' to the flags for `kqueue'.
60868 * src/kqueue.c (kqueue_generate_event): Use watch_object as
60869 argument instead of ident. Remove callback argument. Adapt
60870 callees. Check actions whether they are monitored flags.
60872 * test/automated/file-notify-tests.el (file-notify--test-library):
60874 (file-notify-test00-availability, file-notify-test02-events)
60875 (file-notify-test04-file-validity)
60876 (file-notify-test05-dir-validity): Use it.
60877 (file-notify-test02-events, file-notify-test04-file-validity): Add
60878 `read-event' calls between different file actions, in order to
60879 give the backends a chance to rais an event. Needed especially
60880 for kqueue. In case of deleting a directory, there are two
60883 2015-11-17 João Távora <joaotavora@gmail.com>
60885 Minor fix to comment indentation and typo in last commit
60887 * lisp/linum.el (linum-update-window): Fix comment indentation and
60890 2015-11-17 João Távora <joaotavora@gmail.com>
60892 linum-mode plays more nicely with other margin-setting extensions
60894 linum.el will only modify the left margin if it needs to, and will
60895 only reset the it back to 0 if it guesses that no-one has touched that
60896 margin in the meantime.
60898 As such, this is a more of a workaround than an actual fix, but fixes
60899 the problems described in bug#20674 regarding the interaction with
60900 modes such as darkroom-mode and olivetti-mode.
60902 A similar fix was commited to nlinum.el in ELPA.git's
60903 e7f5f549fbfb740b911fb7f33b42381ecece56d8
60905 * lisp/linum.el (linum-delete-overlays): Restore margins more
60907 (linum-update-window): Set margins more criteriously.
60909 2015-11-17 Michael Albinus <michael.albinus@gmx.de>
60911 Code cleanup of kqueue.c
60913 * src/kqueue.c (kqueue_directory_listing): Skip "." and "..".
60914 (kqueue_compare_dir_list): Do not loop when calling
60915 directory_files_internal. Remove checks for "." and "..", this is
60916 done in kqueue_directory_listing now.
60917 (Fkqueue_add_watch): Check for proper emacs_open flags.
60919 2015-11-16 Daiki Ueno <ueno@gnu.org>
60921 * lisp/image-mode.el: Support encrypted file
60923 (image-toggle-display-image): Read content from the buffer instead
60924 of the file, if the buffer holds a decrypted data. (Bug#21870)
60926 2015-11-16 Michael Albinus <michael.albinus@gmx.de>
60928 Doc changes for kqueue
60930 * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
60931 Fix some glitches in the example.
60933 2015-11-16 Michael Albinus <michael.albinus@gmx.de>
60935 Finish implementation in kqueue.c
60937 * src/kqueue.c (kqueue_directory_listing, kqueue_callback):
60938 Simplify access to list.
60939 (kqueue_compare_dir_list): Simplify access to list. Raise
60940 `delete' event if directory does not exist any longer. Otherwise,
60941 wait until directory contents has changed. Fix error in check.
60943 2015-11-15 Michael Albinus <michael.albinus@gmx.de>
60945 * lisp/filenotify.el (file-notify-add-watch): Fix thinko.
60947 2015-11-15 Juanma Barranquero <lekktu@gmail.com>
60949 * lisp/progmodes/verilog-mode.el (verilog-save-buffer-state): Add backquote
60951 2015-11-15 Artur Malabarba <bruce.connor.am@gmail.com>
60953 * lisp/emacs-lisp/package.el: Fix a decoding issue
60955 (package--with-response-buffer): Use `url-insert-buffer-contents'.
60956 The previous code had some issues with decoding. Refactoring that
60957 function allows us to use the decoding from url-handlers while still
60958 treating both sync and async requests the same.
60960 * lisp/url/url-handlers.el (url-insert-file-contents): Move some code to
60961 `url-insert-buffer-contents'.
60962 (url-insert-buffer-contents): New function
60964 2015-11-15 Artur Malabarba <bruce.connor.am@gmail.com>
60966 * lisp/emacs-lisp/package.el: Refactor -with-work-buffer-async
60968 (package--with-work-buffer-async): Reimplement as
60969 `package--with-response-buffer'.
60970 (package--with-work-buffer): Mark obsolete.
60971 (package--with-response-buffer): New macro. This is a more self
60972 contained and less contrived version of
60973 `package--with-work-buffer-async'. It uses keyword arguments,
60974 doesn't have async on the name, doesn't fallback on
60975 `package--with-work-buffer', and has _much_ simpler error
60978 (package--check-signature, package--download-one-archive)
60979 (package-install-from-archive, describe-package-1): Use it.
60981 (package--download-and-read-archives): Let
60982 `package--download-one-archive' take care of calling
60983 `package--update-downloads-in-progress'.
60985 2015-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
60987 * lisp/progmodes/verilog-mode.el: Use with-silent-modifications
60989 (verilog-save-buffer-state): Use with-silent-modifications when available.
60990 (verilog-save-font-no-change-functions): Don't bind
60991 before/after-change-functions if it's not needed.
60993 2015-11-15 Michael Albinus <michael.albinus@gmx.de>
60995 More work on kqueue
60997 * lisp/filenotify.el (file-notify-callback): Handle also the
60998 `rename' event from kqueue.
60999 (file-notify-add-watch): Do not register an entry twice.
61001 * src/kqueue.c (kqueue_directory_listing): New function.
61002 (kqueue_generate_event): New argument FILE1. Adapt callees.
61003 (kqueue_compare_dir_list): Rewrite in order to make it more robust.
61005 2015-11-14 Xue Fuqiao <xfq.free@gmail.com>
61007 * CONTRIBUTE: Remove information about feature freeze.
61009 Merge branch 'release-process-lowercase'
61011 2015-11-14 Xue Fuqiao <xfq.free@gmail.com>
61013 Document the release process
61015 * admin/notes/versioning: Add information about RC releases.
61016 * admin/release-process: Document the release process.
61017 * admin/authors.el (authors-ignored-files):
61018 * admin/README: Change FOR-RELEASE to release-process.
61020 * admin/notes/bugtracker: Don't mention FOR-RELEASE.
61022 2015-11-14 Xue Fuqiao <xfq.free@gmail.com>
61024 * admin/release-process: Rename from admin/FOR-RELEASE.
61026 2015-11-14 David Engster <deng@randomsample.de>
61028 gitmerge: Fix git log command
61030 * admin/gitmerge.el (gitmerge-missing): Use '--left-only' since we
61031 only want commits from the branch that is to be merged.
61032 (gitmerge-setup-log-buffer): Use the same symmetric range as in
61033 `gitmerge-missing'.
61035 2015-11-14 David Engster <deng@randomsample.de>
61037 gitmerge: Try to detect cherry-picks
61039 * admin/gitmerge.el (gitmerge-default-branch): Change to
61041 (gitmerge-missing): Use symmetric difference ('...') between
61042 branch and master so that cherry-picks can be detected.
61044 2015-11-14 Michael Albinus <michael.albinus@gmx.de>
61046 Implement directory events
61048 * lisp/filenotify.el (file-notify-handle-event)
61049 (file-notify-callback): Remove traces.
61051 * src/kqueue.c: Include <sys/time.h>.
61052 (kqueue_generate_event, kqueue_compare_dir_list): New functions.
61053 (kqueue_callback): Use them. Call kevent() with a zero timeout.
61054 (Fkqueue_add_watch): Adapt docstring. Support directory events.
61055 Compute initial directory listing. Close file descriptor in case
61057 (syms_of_kqueue): Declare Qcreate.
61059 2015-11-14 Eli Zaretskii <eliz@gnu.org>
61061 Increment Emacs version on master branch
61063 * lisp/cus-edit.el (customize-changed-options-previous-release):
61064 Increase previous version to 24.5.
61067 * msdos/sed2v2.inp: Bump version to 25.1.50.
61069 2015-11-13 Xue Fuqiao <xfq.free@gmail.com>
61071 Mention CONTRIBUTE in README
61073 Mention CONTRIBUTE in README, since it was moved from etc/ to root.
61074 * etc/TODO: Remove the reference to `etc/CONTRIBUTE'.
61075 * README: Mention CONTRIBUTE.
61077 2015-11-13 Wilson Snyder <wsnyder@wsnyder.org>
61079 Update verilog-mode.el to 2015-11-09-b121d60-vpo.
61081 * lisp/progmodes/verilog-mode.el (verilog-auto, verilog-delete-auto)
61082 (verilog-modi-cache-results, verilog-save-buffer-state)
61083 (verilog-save-font-no-change-functions): When internally suppressing change
61084 functions, use `inhibit-modification-hooks' and call
61085 `after-change-funtions' to more nicely work with user hooks. Reported by
61088 (verilog-auto, verilog-delete-auto, verilog-delete-auto-buffer):
61089 Create `verilog-delete-auto-buffer' to avoid double-calling
61090 fontification hooks.
61092 (verilog-restore-buffer-modified-p, verilog-auto)
61093 (verilog-save-buffer-state): Prefer restore-buffer-modified-p over
61094 set-buffer-modified-p. Reported by Stefan Monnier.
61096 (verilog-diff-auto, verilog-diff-buffers-p)
61097 (verilog-diff-ignore-regexp): Add `verilog-diff-ignore-regexp'.
61099 (verilog-auto-inst-port, verilog-read-sub-decls-expr): Fix
61100 AUTOINST with unpacked dimensional parameters, bug981. Reported by
61101 by Amol Nagapurkar.
61103 (verilog-read-decls, verilog-read-sub-decls-line): Avoid unneeded
61104 properties inside internal structures. No functional change
61107 2015-11-11 Wolfgang Jenkner <wjenkner@inode.at>
61109 Build fixes for kqueue support.
61111 * src/kqueue.c (Fkqueue_add_watch): O_BINARY is not a POSIX open(3)
61114 * configure.ac (HAVE_KQUEUE): There is no pkg-config module for native
61117 2015-11-11 Michael Albinus <michael.albinus@gmx.de>
61119 Continue kqueue implementation
61121 * lisp/filenotify.el (file-notify-handle-event)
61122 (file-notify-callback): Enable trace messages.
61124 * src/kqueue.c: Include also <sys/types.h>.
61125 (kqueue_callback): Remove watch in case of NOTE_DELETE or NOTE_RENAME.
61126 (Fkqueue_rm_watch, Fkqueue_valid_p): New functions.
61127 (syms_of_kqueue): Add them.
61129 2015-11-11 Michael Albinus <michael.albinus@gmx.de>
61133 * lisp/filenotify.el (file-notify--library)
61134 (file-notify-descriptors, file-notify-callback)
61135 (file-notify-add-watch, file-notify-rm-watch)
61136 (file-notify-valid-p): Add kqueue support.
61138 * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
61140 2015-11-11 Michael Albinus <michael.albinus@gmx.de>
61144 * configure.ac (--with-file-notification): Add kqueue.
61145 (top): Remove special test for "${HAVE_NS}" and
61146 ${with_file_notification}, this is handled inside gfilenotify
61147 tests. Add kqueue tests. Use NOTIFY_CFLAGS and NOTIFY_LIBS
61148 instead of library specific variables.
61150 * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
61152 * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
61154 * src/kqueue.c: New file.
61156 * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
61158 This file records repository revisions from
61159 commit 9d56a21e6a696ad19ac65c4b405aeca44785884a (exclusive) to
61160 commit f205928d1f93f4373d755ca91805a88e022ac414 (inclusive).
61161 See ChangeLog.1 for earlier changes.
61163 ;; Local Variables:
61167 Copyright (C) 2015-2018 Free Software Foundation, Inc.
61169 This file is part of GNU Emacs.
61171 GNU Emacs is free software: you can redistribute it and/or modify
61172 it under the terms of the GNU General Public License as published by
61173 the Free Software Foundation, either version 3 of the License, or
61174 (at your option) any later version.
61176 GNU Emacs is distributed in the hope that it will be useful,
61177 but WITHOUT ANY WARRANTY; without even the implied warranty of
61178 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
61179 GNU General Public License for more details.
61181 You should have received a copy of the GNU General Public License
61182 along with GNU Emacs. If not, see <https://www.gnu.org/licenses/>.