Glenn Morris [Fri, 20 Oct 2017 23:29:15 +0000 (19:29 -0400)]
; * etc/NEWS: Stop list of old NEWS files growing without limit.
Stefan Monnier [Fri, 20 Oct 2017 23:00:11 +0000 (19:00 -0400)]
* lisp/emacs-lisp/debug.el: Use cl-print more systematically
(debugger-return-value, debugger-eval-expression, debugger--insert-locals):
Use debugger--print.
Stefan Monnier [Fri, 20 Oct 2017 21:57:37 +0000 (17:57 -0400)]
* lisp/emacs-lisp/eieio.el (eieio-object-name-string): De-obsolete
This is apparently the advertised method to use for `eieio-named' objects.
Also use sxhash-eq to get a more precise default "object name".
(eieio-object-set-name-string): Clarify obsolescence message.
* lisp/emacs-lisp/eieio-base.el (eieio-object-name-string): Delegate to
the default method when applicable.
Stefan Monnier [Fri, 20 Oct 2017 20:04:02 +0000 (16:04 -0400)]
* lisp/help-fns.el (describe-function-1): Fix help-fns-test-dangling-alias.
Wilfred Hughes [Fri, 20 Oct 2017 14:04:37 +0000 (15:04 +0100)]
css-mode: Don't confuse variable names with class names
This fixes highlighting for class names that contain --, for example:
.foo--bar {
display: none;
}
* lisp/textmodes/css-mode.el (css--font-lock-keywords): Make regular
expression stricter.
Tino Calancha [Fri, 20 Oct 2017 13:22:08 +0000 (22:22 +0900)]
ibuffer: new filter to list buffers running a process
* lisp/ibuf-ext.el (ibuffer-filter-by-process): Add new filter (Bug#28825).
* lisp/ibuffer.el (ibuffer-mode-map): Bound it to '/E'.
; * etc/NEWS (Changes in Specialized Modes and Packages in Emacs 27.1):
; Announce this change.
Tino Calancha [Fri, 20 Oct 2017 13:11:39 +0000 (22:11 +0900)]
Make ibuffer filters idempotent
* lisp/ibuf-ext.el (ibuffer-push-filter): Check if the
filter is already in effect (Bug#28826).
* lisp/ibuf-macs.el (define-ibuffer-filter):
Report to user if the filter was already enabled.
Lars Ingebrigtsen [Wed, 18 Oct 2017 22:36:44 +0000 (00:36 +0200)]
* lisp/svg.el (svg--encode-text): Fix off-by-one error in previous patch.
Lars Ingebrigtsen [Wed, 18 Oct 2017 22:34:42 +0000 (00:34 +0200)]
(svg--encode-text): Make strings even more valid
* lisp/svg.el (svg--encode-text): Quote &<>, too.
Lars Ingebrigtsen [Wed, 18 Oct 2017 22:25:22 +0000 (00:25 +0200)]
Encode non-ASCII SVG texts
* lisp/svg.el (svg--encode-text): Encode non-ASCII texts.
Eric Abrahamsen [Mon, 16 Oct 2017 18:30:05 +0000 (11:30 -0700)]
Documentation and error-message edits re gnus-server-alist
* lisp/gnus/gnus.el (gnus-server-alist): Expand docstring.
* lisp/gnus/gnus-srvr.el (gnus-server-kill-server,
gnus-server-edit-server): Return error messages that tell the user
what the actual problem is.
* doc/misc/gnus.texi (Server Commands): Note that not all servers are
editable via the server buffer.
Michael Albinus [Sat, 14 Oct 2017 10:56:26 +0000 (12:56 +0200)]
; Minor changes in etc/NEWS
Stefan Monnier [Sat, 14 Oct 2017 02:45:41 +0000 (22:45 -0400)]
* lisp/emacs-lisp/debug.el: Don't bail on errors inside cl-print
(debugger--print): New function.
(debugger-insert-backtrace, debugger-setup-buffer): Use it.
Thien-Thi Nguyen [Fri, 13 Oct 2017 06:23:55 +0000 (08:23 +0200)]
[admin] Add some notes on US-v-UK spelling; nfc.
Paul Eggert [Thu, 12 Oct 2017 20:44:56 +0000 (13:44 -0700)]
Merge from origin/emacs-26
59b5dc60d6 Fix this-command-keys for "M-x foo" commands
2f4bd2fbda Let rename-file rename dirs across filesystems
413978727c Simplify Flymake user documentation
6ff18c3995 * etc/NEWS: Mention the new version of Org.
b78332c3c6 Don't use (format "%s" ...) for string copying (Bug#28774)
078fb7f6df Make frame-list-z-order on NS match Windows behaviour (bug...
# Conflicts:
# etc/NEWS
Paul Eggert [Thu, 12 Oct 2017 20:44:17 +0000 (13:44 -0700)]
; Merge from origin/emacs-26
The following commits were skipped:
906224eba1 ; * Update ldefs-boot.el
872108f709 Bump Emacs version to 26.0.90
419a371f8b Update authors.el
3f37086958 * admin/authors.el (authors-aliases): Additions.
Paul Eggert [Thu, 12 Oct 2017 20:44:16 +0000 (13:44 -0700)]
Merge from origin/emacs-26
05d0c0f802 ; * ChangeLog.3: ChangeLog fixes.
fbabae6b24 * ChangeLog.3: Update.
eab051991e Fix docstring style for 'functionp'
e8a7c41b4e Format shell commands in tramp.texi
0526aac4eb Unbreak the button in the Flymake diagnostics buffer again
c89f001de1 Add mode map to Flymake diagnostic button
f9cd8ee681 Tweak the Flymake diagnostics buffer again
0e83f5f279 Simplify Flymake diagnostics buffer UX
cf4a15b9b6 First stab at a Flymake diagnostics buffer
e4a1556392 * etc/NEWS (Flymake): Rewrite entry.
00adeb43e9 Improve the Flymake manual
44c6401733 ; * etc/NEWS: Clarify the description of "---" and "+++".
042b3cfbd2 Fix two Flymake bugs
3dfa2ca4dc Don't log "emergencies" in the Flymake legacy backend
1c2e188440 Add full documentation on new Flymake API
0f7f677f82 Fix some Flymake docstrings and messages
21e7075781 Make three new Flymake commands for debugging common problems
c9be9a3678 ; INSTALL.REPO: Add -d to "thorough cleaning" suggestion.
5d51403ceb ; Typo fixes, mostly repeated words
0d004ed01a ; Spelling fixes
0485aa76c9 ; * src/lread.c (syms_of_lread) <module-file-suffix>: Fix ...
ba7fb37d6a * admin/authors.el (authors-renamed-files-alist): addition.
14dca4a79a ; ChangeLog.3 fixes
f352d0257c Fix PWD check on DOS_NT
934f08f3de Fix unlikely overflows with wd length
6c2b1e89ef * lisp/gnus/message.el: Improve last commit
7ed7360855 Fix problems when editing raw undecoded message (Bug#28671)
aca5f0072b Avoid encoding errors in message.el
0c36663db5 Improve doc string and prompt of 'grep-read-files'
2da83c9d36 Avoid assertion violations when line numbers are displayed
5b81f65ad0 ; * lisp/emacs-lisp/rmc.el: Minor fix for copyright and li...
11b37b4a9f Be lazy when starting Flymake checks
36ed9a9ede Fix last change in frameset.el
62e5c119af Describe how window dividers can replicate vertical border...
e2150d994a Add line-number faces to the display-line-numbers group
89b0023044 Increase xterm click count only within double-click-fuzz
745aea2296 Change pause in fullscreen toggling for NS port (bug#28496)
1cd334cd47 Handle PARENTS properly in tramp-*-handle-make-directory
f1c73de47d ; Merge from Gnulib (comment changes only)
7c2c117c91 Improve test for unreachable dirs
2202952b83 * src/xsmfns.c (x_session_initialize): Fix memory leak.
a9b72976de Merge branch 'emacs-26' of git.sv.gnu.org:/srv/git/emacs i...
64baaff8c5 New option for handling ZWNJ in Arabic text rendering
c194fb61c6 Make python prettify symbols into a defvar (Bug#28713)
6dfc778d54 Fix fullscreen crash on macOS (bug#28496)
3db0dc2168 Fix crash when closing fullscreen frame on macOS (bug#28661)
bc80da5bd3 Support gio tool in Tramp
349e0eb5ff Fix flymake-goto-next-error when message has %-constructs
0fa353b504 * src/gnutls.c (syms_of_gnutls): Remove duplicated call to...
dc6ae15a8d Move the entry about 'format' into Incompatible Lisp Changes
75174a632d Fix glitches in displaying TTY menus
238fbcb20e Create new Edebug spec for docstrings and use it in closures
2d58d51329 Avoid byte-compilation warnings in message.el
# Conflicts:
# etc/NEWS
Eli Zaretskii [Thu, 12 Oct 2017 20:38:48 +0000 (23:38 +0300)]
Fix this-command-keys for "M-x foo" commands
* src/keyboard.c (Fset__this_command_keys): Don't assume KEYS is a
unibyte string. (Bug#28798)
Paul Eggert [Thu, 12 Oct 2017 20:08:53 +0000 (13:08 -0700)]
Let rename-file rename dirs across filesystems
Problem diagnosed by Andreas Schwab (Bug#28792#65).
This fixes a bug that I introduced in
2017-09-10T22:39:24@eggert@cs.ucla.edu
"Fix race with rename-file etc. with dir NEWNAME".
* src/fileio.c (Frename_file): Copy a source directory across
file system boundaries even if its name does not end in slash.
Stefan Monnier [Thu, 12 Oct 2017 14:20:23 +0000 (10:20 -0400)]
* lisp/gnus/message.el (message-check-recipients): Bogus adr is a user error.
Stefan Monnier [Thu, 12 Oct 2017 14:19:26 +0000 (10:19 -0400)]
* test/lisp/help-fns-tests.el (help-fns-test-dangling-alias): New test.
Stefan Monnier [Thu, 12 Oct 2017 14:18:10 +0000 (10:18 -0400)]
* lisp/ansi-color.el (ansi-color-make-extent): Let overlays evaporate.
João Távora [Thu, 12 Oct 2017 11:11:26 +0000 (12:11 +0100)]
Simplify Flymake user documentation
Fix some confusing parts of Flymake user documentation, like a
repeated listing of situations leading to a syntax check.
Documentation is now divided into three chapters only: "Using
Flymake", "Extending Flymake", and a chapter for the legacy backend.
Obsolete mention of "errors" and "lines" is replaced by
"diagnostics/problems" and "regions" where appropriate.
* doc/misc/flymake.texi (Overview of Flymake): Delete chapter.
(Using Flymake): Merge with chapter "Overview of Flymake".
(Installing Flymake): Delete chapter.
(Flymake mode, Running the syntax check)
(Navigating to error lines): Delete sections.
(Syntax check statuses): Review and augment with x-references.
(Backend exceptions): Mention shortcut in menu.
* lisp/progmodes/flymake.el (flymake-menu): Tweak minor mode
menu to not speak of "errors".
(flymake-goto-next-error, flymake-goto-prev-error): Fix
wording.
Eli Zaretskii [Thu, 12 Oct 2017 07:52:44 +0000 (10:52 +0300)]
* etc/NEWS: Mention the new version of Org.
Noam Postavsky [Thu, 12 Oct 2017 00:23:40 +0000 (20:23 -0400)]
Don't use (format "%s" ...) for string copying (Bug#28774)
As of 2017-10-04 'Speed up (format "%s" STRING) and the like', (format
"%s" STRING) no longer produces a new string.
* lisp/ido.el (ido-completions): Use `copy-sequence' to make a new
string, so that we can add text properties to (copies of) symbol
names.
Alan Third [Wed, 11 Oct 2017 21:17:10 +0000 (22:17 +0100)]
Make frame-list-z-order on NS match Windows behaviour (bug#28788)
* src/nsfns.m (Fns_frame_list_z_order): If terminal isn't a frame,
ignore it rather than returning nil.
Nicolas Petton [Wed, 11 Oct 2017 20:55:13 +0000 (22:55 +0200)]
; * Update ldefs-boot.el
Nicolas Petton [Wed, 11 Oct 2017 20:39:17 +0000 (22:39 +0200)]
Bump Emacs version to 26.0.90
* README:
* configure.ac:
* msdos/sed2v2.inp:
* nt/README.W32: Bump Emacs version.
Nicolas Petton [Wed, 11 Oct 2017 13:10:28 +0000 (15:10 +0200)]
; * ChangeLog.3: ChangeLog fixes.
Nicolas Petton [Wed, 11 Oct 2017 13:12:09 +0000 (15:12 +0200)]
Update authors.el
* admin/authors.el (authors-valid-file-names)
(authors-renamed-files-alist): Additions.
Nicolas Petton [Wed, 11 Oct 2017 13:09:02 +0000 (15:09 +0200)]
* ChangeLog.3: Update.
Nicolas Petton [Wed, 11 Oct 2017 13:11:14 +0000 (15:11 +0200)]
* admin/authors.el (authors-aliases): Additions.
Radon Rosborough [Wed, 11 Oct 2017 13:08:18 +0000 (16:08 +0300)]
Fix docstring style for 'functionp'
* src/eval.c (functionp): Make docstring start with verb.
(Bug#28781)
Michael Albinus [Wed, 11 Oct 2017 08:57:29 +0000 (10:57 +0200)]
Format shell commands in tramp.texi
* doc/misc/tramp.texi (Obtaining Tramp, Remote shell setup):
Format shell commands better.
Stefan Monnier [Tue, 10 Oct 2017 18:57:37 +0000 (14:57 -0400)]
* lisp/url/url-cookie.el: Fix warning and miscompilation
(url-cookie-parse-file-netscape): Remove unused var `match', fix
undefined `incf' misuse.
João Távora [Tue, 10 Oct 2017 15:20:51 +0000 (16:20 +0100)]
Unbreak the button in the Flymake diagnostics buffer again
Adding the 'keymap' property enabled RET but broke the mouse-action.
* lisp/progmodes/flymake.el
(flymake--diagnostics-buffer-entries): Use 'action' instead of 'keymap'.
Mark Oteiza [Tue, 10 Oct 2017 14:24:45 +0000 (10:24 -0400)]
Add mode map to Flymake diagnostic button
* lisp/progmodes/flymake.el (flymake--diagnostics-buffer-entries): Add
keymap propery.
João Távora [Sun, 8 Oct 2017 23:12:48 +0000 (00:12 +0100)]
Tweak the Flymake diagnostics buffer again
* lisp/progmodes/flymake.el
(flymake-diagnostics-buffer-mode-map): Don't bind [mouse-1].
(flymake-show-diagnostic): Rename from
flymake-show-diagnostic-at-point. Really use another window.
(flymake-goto-diagnostic): Rename from
flymake-goto-diagnostic-at-point.
(flymake--diagnostics-buffer-entries): Use a button just for
the message bit.
Mark Oteiza [Sun, 8 Oct 2017 21:42:31 +0000 (22:42 +0100)]
Simplify Flymake diagnostics buffer UX
Don't create text-buttons unnecessarily, just bind RET and SPC in the
diagnostics buffer to a command that figures out which diagnostic it
was invoked on.
* lisp/progmodes/flymake.el
(flymake--diagnostics-buffer-mode-keymap): Renamed from
flymake--diagnostics-buffer-button-keymap.
(flymake-show-diagnostic-at-point): Don't take a button.
(flymake-goto-diagnostic-at-point): Don't pass button to
flymake-show-diagnostic-at-point.
(flymake--diagnostics-buffer-entries): Simplify.
João Távora [Sat, 7 Oct 2017 15:52:45 +0000 (16:52 +0100)]
First stab at a Flymake diagnostics buffer
The diagnostics buffer summarizes the diagnostics of a buffer in a
tabulated list and is permanently updated after each Flymake check.
* lisp/progmodes/flymake.el (flymake--handle-report): Call
flymake-show-diagnostics-buffer under certain conditions.
(flymake-menu, flymake--diagnostics-buffer-source)
(flymake--diagnostics-buffer-button-keymap)
(flymake-show-diagnostic-at-point)
(flymake-goto-diagnostic-at-point)
(flymake--diagnostics-buffer-entries)
(flymake-diagnostics-buffer-mode)
(flymake--diagnostics-buffer-name)
(flymake-show-diagnostics-buffer): New definitions.
João Távora [Tue, 10 Oct 2017 14:57:52 +0000 (15:57 +0100)]
* etc/NEWS (Flymake): Rewrite entry.
Eli Zaretskii [Tue, 10 Oct 2017 14:08:51 +0000 (17:08 +0300)]
Improve the Flymake manual
* doc/misc/flymake.texi: Add a 'coding' cookie. Add a
@syncodeindex directive for @vindex. Use 2 spaces between
sentences. Lower-case @cindex entries.
(Overview of Flymake): Fix use of @itemize and @pxref. Fix
punctuation and markup.
(Backend exceptions): Use @emph instead of @dfn. Add more
indexing.
(Customizable variables, Extending Flymake): Improve wording.
(Flymake error types): Fix usage of @itemize. Improve wording.
(Backend functions): Fix punctuation. Fix markup. Add a
cross-reference to ELisp manual.
(Flymake utility functions): Add a cross-reference to ELisp manual.
(An annotated example backend): Fix punctuation and typos.
(Flymake mode, Running the syntax check)
(Navigating to error lines, Backend exceptions)
(Customizable variables, Flymake error types, Backend functions)
(Flymake utility functions, Proc customization variables)
(Locating a master file, Locating the buildfile)
(Starting the syntax check process, Parsing the output)
(Interaction with other modes): Fix indexing. Add index entries
for functions, variables, and concepts.
Eli Zaretskii [Tue, 10 Oct 2017 12:24:09 +0000 (15:24 +0300)]
; * etc/NEWS: Clarify the description of "---" and "+++".
João Távora [Tue, 10 Oct 2017 11:47:46 +0000 (12:47 +0100)]
Fix two Flymake bugs
* lisp/progmodes/flymake.el (define-fringe-bitmap): Protect
against --without-x.
(flymake--mode-line-format): Ensure mode-line's mouse-4 and mouse-5 work
in their own windows.
João Távora [Tue, 10 Oct 2017 11:30:42 +0000 (12:30 +0100)]
Don't log "emergencies" in the Flymake legacy backend
* lisp/progmodes/flymake-proc.el (flymake-proc--panic)
(flymake-proc-legacy-flymake): Don't log "emergencies"
João Távora [Tue, 10 Oct 2017 01:14:46 +0000 (02:14 +0100)]
Add full documentation on new Flymake API
Also, as a minor addition to this API, set flymake-text
on the diagnostic overlay. This enables a good example in
the section "Customization Flymake annotations".
* doc/misc/flymake.texi (Overview of Flymake)
(Syntax check statuses): Rework.
(Backend exceptions): Rename from "Troubleshooting"
(Customizable variables): Add flymake-start-on-flymake-mode. Rework.
(Extending Flymake): Write chapter.
(Customizing Flymake annotations, Flymake backends)
(Flymake utility functions, An annotated example backend):
New sections and subsections
* lisp/progmodes/flymake.el (flymake-diagnostic-functions)
(flymake-diagnostic-types-alist): Rework docstring.
(flymake--highlight-line): Set and use flymake-text property in overlay.
(flymake-goto-next-error, flymake-goto-prev-error): Fix funny quotes.
João Távora [Mon, 9 Oct 2017 20:51:02 +0000 (21:51 +0100)]
Fix some Flymake docstrings and messages
* lisp/progmodes/flymake.el
(flymake-start-on-flymake-mode): fix typo.
(flymake-mode): Add docstring.
(flymake-mode-line-format): Fix help-echo indications. mouse-2
describes flymake-mode.
João Távora [Mon, 9 Oct 2017 20:33:09 +0000 (21:33 +0100)]
Make three new Flymake commands for debugging common problems
* lisp/progmodes/flymake.el (flymake-running-backends)
(flymake-disabled-backends)
(flymake-reporting-backends): Make interactive.
(flymake--collect): Take optional arg.
Noam Postavsky [Tue, 10 Oct 2017 09:36:59 +0000 (05:36 -0400)]
; INSTALL.REPO: Add -d to "thorough cleaning" suggestion.
Aurelien Aptel [Fri, 6 Oct 2017 13:52:39 +0000 (15:52 +0200)]
Add parser for Netscape/Mozilla cookie file format
* lisp/url/url-cookie.el (url-cookie-parse-file-netscape): New function.
Paul Eggert [Tue, 10 Oct 2017 05:53:19 +0000 (22:53 -0700)]
; Typo fixes, mostly repeated words
Paul Eggert [Tue, 10 Oct 2017 00:15:42 +0000 (17:15 -0700)]
; Spelling fixes
Alexander Gramiak [Mon, 9 Oct 2017 20:22:58 +0000 (14:22 -0600)]
; * src/lread.c (syms_of_lread) <module-file-suffix>: Fix typo
Nicolas Petton [Mon, 9 Oct 2017 19:50:53 +0000 (21:50 +0200)]
* admin/authors.el (authors-renamed-files-alist): addition.
Nicolas Petton [Mon, 9 Oct 2017 19:50:44 +0000 (21:50 +0200)]
; ChangeLog.3 fixes
Paul Eggert [Mon, 9 Oct 2017 17:47:56 +0000 (10:47 -0700)]
Fix PWD check on DOS_NT
* src/sysdep.c (get_current_dir_name_or_unreachable):
Do not consider a file name like "a:b" to be absolute on DOS_NT.
Paul Eggert [Mon, 9 Oct 2017 17:30:40 +0000 (10:30 -0700)]
Fix unlikely overflows with wd length
* src/sysdep.c (get_current_dir_name_or_unreachable):
Avoid integer overflow if working directory name is absurdly long.
When allocating memory for getcwd, do not exceed MAXPATHLEN.
Stefan Monnier [Mon, 9 Oct 2017 16:33:07 +0000 (12:33 -0400)]
* lisp/gnus/message.el: Improve last commit
(message-clone-locals): Don't mistakenly match other variables whose
name happens to include "message-default-charset".
Philipp Stephani [Mon, 9 Oct 2017 14:08:15 +0000 (16:08 +0200)]
Revert "Raise an error when detecting old-style backquotes."
This reverts commit
9613690f6e51e2f2aa2bcbbede3e209d08cfaaad.
Ken Olum [Mon, 9 Oct 2017 13:54:00 +0000 (16:54 +0300)]
Fix problems when editing raw undecoded message (Bug#28671)
* lisp/mail/rmailedit.el (rmail-cease-edit): If rmail-old-mime-state
is set, meaning that we are editing the raw message, do not
encode it again. Delete old body after, not before, inserting
new, to avoid moving marker at beginning of next message.
Eli Zaretskii [Mon, 9 Oct 2017 13:46:23 +0000 (16:46 +0300)]
Avoid encoding errors in message.el
* lisp/gnus/message.el (message-clone-locals): Don't clone
message-default-charset. (Bug#25645)
Eli Zaretskii [Mon, 9 Oct 2017 13:39:25 +0000 (16:39 +0300)]
Improve doc string and prompt of 'grep-read-files'
* lisp/progmodes/grep.el (grep-read-files): Clarify in the doc
string and in the prompt that shell wildcards can be used.
Suggested by Allen Li <vianchielfaura@gmail.com>. (Bug#28615)
Eli Zaretskii [Mon, 9 Oct 2017 12:28:16 +0000 (15:28 +0300)]
Avoid assertion violations when line numbers are displayed
* src/xdisp.c (redisplay_window): Clear the window's desired glyph
matrix before calling try_window with the same starting point.
This avoids assertion violations when switching from a buffer
without line numbers to a buffer with line numbers. (Bug28710)
Mark Oteiza [Mon, 9 Oct 2017 12:12:46 +0000 (08:12 -0400)]
Disable XTerm titles (Bug#28591)
* etc/NEWS: Mention it.
* lisp/term/xterm.el (xterm-set-window-title): Disable it.
Glenn Morris [Mon, 9 Oct 2017 11:44:37 +0000 (07:44 -0400)]
; * lisp/emacs-lisp/rmc.el: Minor fix for copyright and license.
João Távora [Mon, 9 Oct 2017 10:12:57 +0000 (11:12 +0100)]
Be lazy when starting Flymake checks
Don't start the check immediately if the buffer is not being
displayed. Wait until it is, using window-configuration-change-hook.
This enables the user to batch-enable flymake-mode on many buffers and
not have that operation exhaust system resources for checking each
one. Likewise, an editing or save operation in a currently
non-displayed buffer does not immediately start a check.
* lisp/progmodes/flymake.el (flymake-start-on-flymake-mode):
Rename from flymake-start-syntax-check-on-find-file.
(flymake-start-syntax-check-on-find-file): Obsolete alias for
flymake-start-on-flymake-mode.
(flymake-start): Redesign. Affect the global post-command-hook
and local window-configuraiton-change-hook.
(flymake--schedule-timer-maybe)
(flymake-after-change-function, flymake-after-save-hook): Pass
t to flymake-start.
* test/lisp/progmodes/flymake-tests.el (flymake-tests--call-with-fixture)
(dummy-backends, recurrent-backend): Start flymake check
explicitly and immediately.
Eli Zaretskii [Mon, 9 Oct 2017 07:40:37 +0000 (10:40 +0300)]
Fix last change in frameset.el
* lisp/frameset.el (frameset-filter-font-param): Fix a thinko in
filtering the 'font' parameter. (Bug#17352)
Martin Rudalics [Mon, 9 Oct 2017 07:29:52 +0000 (09:29 +0200)]
Describe how window dividers can replicate vertical borders (Bug#27830)
* doc/emacs/frames.texi (Scroll Bars): Describe how window
dividers can be used to replicate vertical borders when scroll
bars are disabled (Bug#27830).
* doc/emacs/frames.texi (Window Dividers): Mention their use
in replicating vertical borders.
Alexander Gramiak [Sat, 7 Oct 2017 21:02:01 +0000 (15:02 -0600)]
Add line-number faces to the display-line-numbers group
See https://lists.gnu.org/archive/html/emacs-devel/2017-10/msg00151.html
and its resulting thread.
* lisp/display-line-numbers.el (display-line-numbers): Add to the
convenience group.
* lisp/faces.el (line-number):
(line-number-current-line): Add to the display-line-numbers group.
Alexander Gramiak [Sat, 30 Sep 2017 21:47:56 +0000 (15:47 -0600)]
Increase xterm click count only within double-click-fuzz
* lisp/xt-mouse.el (xterm-mouse-event): Save the last click's position
and check it against the current click's position. (Bug#28658)
Gemini Lasswell [Tue, 26 Sep 2017 15:14:23 +0000 (08:14 -0700)]
Stop Testcover from producing spurious 1value errors
Fix bug#25351 by copying results of form evaluations for later
comparison.
* lisp/emacs-lisp/testcover.el (testcover-after): Copy the result
of a form's first evaluation and compare subsequent evaluations to
the copy. Improve the error message used when a form's value
changes.
(testcover--copy-object, testcover--copy-object1): New functions.
* test/lisp/emacs-lisp/testcover-resources/testcases.el
(by-value-vs-by-reference-bug-25351): Remove expected failure tag.
(circular-lists-bug-24402): Add another circular list case.
Gemini Lasswell [Mon, 25 Sep 2017 20:45:07 +0000 (13:45 -0700)]
Rewrite Testcover's internals, fixing several bugs
* lisp/emacs-lisp/testcover.el: Rewrite the internals of Testcover
to analyze instrumented code instead of reinstrumenting it. Use new
hooks in Edebug to collect code coverage information at runtime
using Edebug's instrumentation.
Includes fixes for: (bug#11307) (bug#24509) (bug#24688) (bug#24743)
(bug#25316) (bug#25326).
(testcover-compose-functions): Remove mapcar.
(testcover-start, testcover-this-defun): Analyze code instead of
reinstrumenting it. Set edebug-behavior for each definition.
(testcover--read, testcover-1value, testcover-reinstrument)
(testcover-reinstrument-list, testcover-reinstrument-compose):
Deleted.
(testcover-after-instrumentation, testcover-init-definition)
(testcover-before): New functions.
(testcover-enter): Change call signature to match edebug-enter.
(testcover-after, testcover-mark): Add handling of 'maybe and
'noreturn.
(testcover-analyze-coverage, testcover-analyze-coverage-progn)
(testcover-analyze-coverage-edebug-after)
(testcover-analyze-coverage-wrapped-form)
(testcover-analyze-coverage-wrapped-application)
(testcover-analyze-coverage-compose)
(testcover-analyze-coverage-backquote)
(testcover-analyze-coverage-backquote-form)
(testcover-coverage-combine): New functions to analyze instrumented
code.
* lisp/emacs-lisp/gv.el: Modify edebug-after's gv-expander to
instrument in the setter as well as the getter.
* test/lisp/emacs-lisp/testcover-tests.el
(testcover-tests-run-test-case): Use `edebug-default-enter'
instead of `edebug-enter' to detect Edebug invocation
during tests.
* test/lisp/emacs-lisp/testcover-resources/testcases.el
(constants-bug-25316)
(customize-defcustom-bug-25326)
(1-value-symbol-bug-25316)
(quotes-within-backquotes-bug-25316)
(backquote-1value-bug-24509)
(pcase-bug-24688)
(defun-in-backquote-bug-11307-and-24743)
(closure-1value-bug)
(backquoted-vector-bug-25316)
(vector-in-macro-spec-bug-25316)
(mapcar-is-not-compose): Remove expected failure tags.
(function-with-edebug-spec-bug-25316): Remove expected failure tag
and modify expected result.
(quoted-backquote): New test.
* lisp/textmodes/rst.el: Remove workarounds for bugs in Testcover.
(rst-testcover-defcustom): Deleted.
* lisp/subr.el (1value): Remove incorrect description of
testcover-1value from docstring, replace with description of
Testcover's treatment of 1value.
Gemini Lasswell [Sun, 1 Oct 2017 16:12:29 +0000 (09:12 -0700)]
Allow Edebug's instrumentation to be used for other purposes
* lisp/emacs-lisp/edebug.el:
(edebug-after-instrumentation-functions)
(edebug-new-definition-functions): New hook variables.
(edebug-behavior-alist): New variable.
(edebug-read-and-maybe-wrap-form): Run a hook after a form is
wrapped.
(edebug-make-form-wrapper): Run a hook after a definition is
wrapped. Remove message for each definition.
(edebug-announce-definition): New function.
(edebug-enter): Rewritten to change behavior of Edebug based
on symbol property `edebug-behavior' and `edebug-behavior-alist'.
(edebug-default-enter): New function which does what `edebug-enter'
used to do.
(edebug-run-slow, edebug-run-fast): Modify edebug-behavior-alist.
(edebug-before, edebug-after): Function definitions are now set by
`edebug-enter'.
Stefan Monnier [Sun, 8 Oct 2017 19:44:49 +0000 (15:44 -0400)]
* lisp/emacs-lisp/checkdoc.el: cl-defstruct + minor simplifications
(checkdoc-make-overlay, checkdoc-overlay-put, checkdoc-delete-overlay)
(checkdoc-overlay-start, checkdoc-overlay-end, checkdoc-char=)
(checkdoc-mode-line-update): Remove old compatibility aliases.
(checkdoc, checkdoc-interactive-loop):
Consolidate common code in if branches.
(checkdoc-error): New struct type.
(checkdoc-error-text, checkdoc-error-start, checkdoc-error-end)
(checkdoc-error-unfixable): Now defined by cl-defstruct.
Alan Third [Sun, 8 Oct 2017 18:26:34 +0000 (19:26 +0100)]
Change pause in fullscreen toggling for NS port (bug#28496)
* lisp/frame.el (toggle-frame-fullscreen): Replace sit-for with
sleep-for, and reduce time.
Philipp Stephani [Tue, 3 Oct 2017 14:14:54 +0000 (16:14 +0200)]
Raise an error when detecting old-style backquotes.
They have been deprecated for a decade now.
* src/lread.c (Fload): Don't use record_unwind_protect to warn about
old-style backquotes any more. They now generate a hard error.
(read1): Signal an error when detecting old-style backquotes. Remove
unused label.
(syms_of_lread): Remove unused internal variable
'lread--old-style-backquotes'.
(load_error_old_style_backquotes): Rename from
'load_warn_oldstyle_backquotes'. Signal an error.
* lisp/emacs-lisp/bytecomp.el (byte-compile-from-buffer): Remove check
from byte compiler. It isn't triggered any more.
* test/src/lread-tests.el (lread-tests--old-style-backquotes): Adapt
unit test.
* test/lisp/emacs-lisp/bytecomp-tests.el
(bytecomp-tests--old-style-backquotes)
(bytecomp-tests-function-put): Adapt unit tests.
* etc/NEWS: Document change.
Philipp Stephani [Fri, 16 Jun 2017 22:13:51 +0000 (00:13 +0200)]
Say that side effect-free functions don't change the matchd data
* lisp/help-fns.el (describe-function-1): Add note if a function is
known not to change the match data.
Michael Albinus [Sun, 8 Oct 2017 11:55:20 +0000 (13:55 +0200)]
Handle PARENTS properly in tramp-*-handle-make-directory
* lisp/net/tramp-adb.el (tramp-adb-handle-make-directory):
* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-make-directory):
Handle PARENTS properly.
* test/lisp/net/tramp-tests.el (tramp-test13-make-directory):
Extend test.
Paul Eggert [Sun, 8 Oct 2017 06:08:24 +0000 (23:08 -0700)]
; Merge from Gnulib (comment changes only)
Paul Eggert [Sun, 8 Oct 2017 05:56:29 +0000 (22:56 -0700)]
Improve test for unreachable dirs
* src/sysdep.c (get_current_dir_name_or_unreachable):
New function, with most of the old contents of
emacs_get_current_dir_name.
(emacs_get_current_dir_name): Use it. Use a simpler
test for unreachable directory strings, and also apply
it to getcwd etc. (Bug#27871)
Paul Eggert [Sun, 8 Oct 2017 05:48:49 +0000 (22:48 -0700)]
* src/xsmfns.c (x_session_initialize): Fix memory leak.
K. Handa [Sun, 8 Oct 2017 02:56:06 +0000 (11:56 +0900)]
Merge branch 'emacs-26' of git.sv.gnu.org:/srv/git/emacs into emacs-26
K. Handa [Sun, 8 Oct 2017 02:48:01 +0000 (11:48 +0900)]
New option for handling ZWNJ in Arabic text rendering
Provide a new option 'arabic-shaper-ZWNJ-handling' that controls how
to display ZWNJ in Arabic text rendering (Bug#28339).
* lisp/language/misc-lang.el: Register arabic-shape-gstring in
composition-function-table.
(arabic-shaper-ZWNJ-handling): New variable.
(arabic-shape-log): New variable.
(arabic-shape-gstring): New function.
* lisp/composite.el (lgstring-remove-glyph): New function.
Noam Postavsky [Thu, 5 Oct 2017 23:16:46 +0000 (19:16 -0400)]
Make python prettify symbols into a defvar (Bug#28713)
* lisp/progmodes/python.el (python-prettify-symbols-alist): New
variable.
(python--prettify-symbols-alist): Make into obsolete alias for
`python-prettify-symbols-alist'.
Alan Third [Sat, 30 Sep 2017 23:06:23 +0000 (00:06 +0100)]
Fix fullscreen crash on macOS (bug#28496)
* lisp/frame.el (toggle-frame-fullscreen): Wait for animation to
complete on macOS.
Alan Third [Sat, 7 Oct 2017 15:00:49 +0000 (16:00 +0100)]
Fix crash when closing fullscreen frame on macOS (bug#28661)
* src/nsterm.m (EmacsView::windowWillResize): Return new frame size
unmodified if the frame isn't live.
Michael Albinus [Sat, 7 Oct 2017 18:17:32 +0000 (20:17 +0200)]
Support gio tool in Tramp
"gvfs-<command>" utilities have been deprecated in GVFS 1.31.1. We
must use "gio <command>" tool instead.
* lisp/net/tramp-gvfs.el (tramp-gvfs-gio-mapping): New defconst.
(tramp-gvfs-handle-file-notify-add-watch): Support also "gio monitor"
(tramp-gvfs-gio-tool-p): New defun.
(tramp-gvfs-send-command): Use it. Call gio tool if available.
João Távora [Sat, 7 Oct 2017 15:55:04 +0000 (16:55 +0100)]
Fix flymake-goto-next-error when message has %-constructs
* lisp/progmodes/flymake.el (flymake-goto-next-error): Fix
message call. Add missing period in docstring.
Piotr Trojanek [Sat, 7 Oct 2017 14:54:36 +0000 (17:54 +0300)]
* src/gnutls.c (syms_of_gnutls): Remove duplicated call to DEFSYM.
Copyright-paperwork-exempt: yes.
Eli Zaretskii [Sat, 7 Oct 2017 12:04:37 +0000 (15:04 +0300)]
New defcustom 'tooltip-resize-echo-area'
* lisp/tooltip.el (tooltip-resize-echo-area): New defcustom.
(tooltip-show-help-non-mode): Use it to avoid truncating the
tooltip text in the echo area. (Bug#28724)
* etc/NEWS: Mention 'tooltip-resize-echo-area'.
Eli Zaretskii [Sat, 7 Oct 2017 11:32:12 +0000 (14:32 +0300)]
Move the entry about 'format' into Incompatible Lisp Changes
* etc/NEWS: Move the entry about 'format' refraining from allocating
new strings into Incompatible Lisp Changes. (Bug#28625)
Eli Zaretskii [Sat, 7 Oct 2017 11:20:42 +0000 (14:20 +0300)]
Fix glitches in displaying TTY menus
* src/dispnew.c (update_frame_line): Accept an additional argument
UPDATING_MENU_P; if non-zero, home the cursor before updating a
frame's line. All callers changed.
(update_frame_1): Accept an additional argument UPDATING_MENU_P,
and pass it to update_frame_line. All callers changed.
(update_frame_with_menu): Call update_frame_1 with last argument
non-zero. (Bug#17497)
Gemini Lasswell [Fri, 6 Oct 2017 18:30:22 +0000 (11:30 -0700)]
Create new Edebug spec for docstrings and use it in closures
Since (:documentation FORM) can be used to create a docstring
when lexical-binding is on, allow for that possibility in Edebug
specs (bug#24773).
* lisp/emacs-lisp/edebug.el: Define an Edebug spec for docstrings
called lambda-doc and modify the Edebug specs for defun and
defmacro to use it.
(edebug-instrument-function): Check for generic functions first,
to fix bug where edebug-step-in didn't work on methods now that
cl-defgeneric has an Edebug spec.
* lisp/subr.el (lambda): Modify Edebug spec to use lambda-doc.
* lisp/emacs-lisp/cl-generic.el (cl-defgeneric): Add Edebug spec
(bug#27747).
(cl-defmethod): Use lambda-doc in Edebug spec.
* lisp/emacs-lisp/cl-macs.el: Modify Edebug spec for
cl-declarations-or-string to use lambda-doc, and modify Edebug
spec for cl-lambda-expr to use cl-declarations-or-string.
* lisp/emacs-lisp/pcase.el (pcase-lambda): Modify Edebug spec to
use lambda-doc, as well as &define and def-body which are
necessary for using Edebug on code wrapped by lambda.
* lisp/emacs-lisp/generator.el (iter-defun, iter-lambda): Add
Edebug specs.
Eli Zaretskii [Fri, 6 Oct 2017 17:49:39 +0000 (20:49 +0300)]
Avoid byte-compilation warnings in message.el
* lisp/gnus/message.el: Require 'subr-x' when compiling, to
avoid compiler warnings.
Paul Eggert [Fri, 6 Oct 2017 17:35:07 +0000 (10:35 -0700)]
Merge from origin/emacs-26
9226cf3254 Fix bug in recent styled_format change
fa92f0c447 Cleanup emacs-lisp-mode's use of Flymake
0d0265bf50 Fix @include directive in Flymake doc
295457ae52 Move read-multiple-choice to its own library
560dd9b573 * src/process.c (syms_of_process): Remove duplicated call ...
Paul Eggert [Fri, 6 Oct 2017 17:32:46 +0000 (10:32 -0700)]
Fix bug in recent styled_format change
Problem reported by Kaushal Modi in:
http://lists.gnu.org/archive/html/emacs-devel/2017-10/msg00141.html
* src/editfns.c (styled_format): Fix bug where USE_SAFE_ALLOCA was
not always followed by SAFE_FREE. This bug was introduced in my
patch 2017-09-26T23:31:57Z!eggert@cs.ucla.edu entitled "Avoid some
unnecessary copying in Fformat etc."
João Távora [Fri, 6 Oct 2017 16:51:40 +0000 (17:51 +0100)]
Cleanup emacs-lisp-mode's use of Flymake
* lisp/progmodes/elisp-mode.el (elisp-flymake--checkdoc-1):
Delete.
(elisp-flymake-checkdoc): Incorporate old
elisp-flymake--checkdoc-1.
(elisp-flymake--byte-compile-done): Simplify. Don't cleanup
here.
(elisp-flymake-byte-compile): Remove spurious interactive spec.
Simplify. Cleanup on every possible exit.
João Távora [Fri, 6 Oct 2017 15:42:37 +0000 (16:42 +0100)]
Fix @include directive in Flymake doc
* doc/misc/flymake.texi: Don't @include a relative path.
Mark Oteiza [Fri, 6 Oct 2017 14:42:06 +0000 (10:42 -0400)]
Move read-multiple-choice to its own library
* lisp/emacs-lisp/rmc.el: New file.
* lisp/emacs-lisp/subr-x.el (read-multiple-choice): Remove.
* lisp/gnus/message.el:
* lisp/net/nsm.el: Change required library.
Piotr Trojanek [Fri, 6 Oct 2017 14:12:31 +0000 (17:12 +0300)]
* src/process.c (syms_of_process): Remove duplicated call to DEFSYM.
Fixes: Bug#28721
Copyright-paperwork-exempt: yes.