Glenn Morris [Wed, 31 Oct 2018 14:50:57 +0000 (07:50 -0700)]
Merge from origin/emacs-26
eb903d8 * lisp/emacs-lisp/pcase.el: Improve docstrings.
86abbb3 * lisp/emacs-lisp/rx.el (rx): Fix typo in doc string. (Bug#3...
ced58d3 Improve doc string of 'call-process'
38f88a7 Document that generic functions cannot be commands
5aeddfa * lisp/mail/rmailsum.el (rmail-summary-output): Add lost word...
10e0fd8 Add index entries for more isearch commands/bindings (Bug#32990)
de28184 * lisp/simple.el (filter-buffer-substring): Clarify doc (Bug#...
d192c16 Fix recent change in lispref/processes.texi.
Stefan Monnier [Wed, 31 Oct 2018 14:16:02 +0000 (10:16 -0400)]
* lisp/emacs-lisp/cl-generic.el: Clarify we can't define commands
(cl--generic-lambda): Warn about the presence of interactive specs.
Paul Eggert [Wed, 31 Oct 2018 03:57:46 +0000 (20:57 -0700)]
Improve fix for Bug#33014
Although the previously-applied fix worked for its platform,
it doesn’t suffice in general.
* src/bytecode.c (exec_byte_code): Save VECTOR into stack slot
so that it survives GC. The stack slot was otherwise unused,
so this doesn’t cost us memory, only a store insn.
* src/eval.c (Ffuncall): Do not make FUN volatile, reverting
2018-10-14T19:12:04Z!gazally@runbox.com. Adding ‘volatile’
does not suffice, since storage for a volatile local can be
reclaimed after its last access (e.g., by tail recursion
elimination), which would make VECTOR invisible to GC.
Stefan Monnier [Tue, 30 Oct 2018 18:24:31 +0000 (14:24 -0400)]
* lisp/emacs-lisp/pcase.el: Improve docstrings.
Eli Zaretskii [Tue, 30 Oct 2018 17:25:14 +0000 (19:25 +0200)]
* lisp/emacs-lisp/rx.el (rx): Fix typo in doc string. (Bug#33205)
Glenn Morris [Tue, 30 Oct 2018 15:58:05 +0000 (08:58 -0700)]
* admin/bzrmerge.el: Remove file, long since replaced by gitmerge.el.
Michael Heerdegen [Fri, 26 Oct 2018 23:48:35 +0000 (01:48 +0200)]
Don't quote self-quoting pcase patterns
* admin/bzrmerge.el:
* lisp/char-fold.el:
* lisp/dired.el:
* lisp/emacs-lisp/derived.el:
* lisp/emacs-lisp/easy-mmode.el:
* lisp/emacs-lisp/easymenu.el:
* lisp/emacs-lisp/eieio-core.el:
* lisp/emacs-lisp/package.el:
* lisp/emacs-lisp/smie.el:
* lisp/faces.el:
* lisp/filesets.el:
* lisp/progmodes/modula2.el:
* lisp/progmodes/octave.el:
* lisp/progmodes/opascal.el:
* lisp/progmodes/perl-mode.el:
* lisp/progmodes/prolog.el:
* lisp/progmodes/ruby-mode.el:
* lisp/progmodes/sh-script.el:
* lisp/server.el:
* lisp/subr.el:
* lisp/textmodes/css-mode.el:
* test/lisp/emacs-lisp/pcase-tests.el: Don't quote self-quoting
'pcase' patterns.
Alan Mackenzie [Tue, 30 Oct 2018 11:43:13 +0000 (11:43 +0000)]
Fix C++ Mode dynamic error with string delimiters.
Fixes bug #33163
* lisp/progmodes/cc-mode.el (c-before-change-check-unbalanced-strings):
Use the correct variable `end' in place of the wrong `c-new-END'.
(c-after-change-re-mark-unbalanced-strings): Correct a logic error whilst
skipping over comments.
Eli Zaretskii [Tue, 30 Oct 2018 11:08:28 +0000 (13:08 +0200)]
Improve doc string of 'call-process'
* src/callproc.c (Fcall_process): Clarify DESTINATION in the
doc string.
Eli Zaretskii [Tue, 30 Oct 2018 10:14:19 +0000 (12:14 +0200)]
Document that generic functions cannot be commands
* doc/lispref/commands.texi (Defining Commands):
* doc/lispref/functions.texi (Generic Functions): Document
that generic functions cannot be turned into commands.
(Bug#33170)
Glenn Morris [Tue, 30 Oct 2018 00:50:14 +0000 (20:50 -0400)]
* configure.ac (emacs_config_features): Add notify backends.
Juri Linkov [Mon, 29 Oct 2018 22:57:09 +0000 (00:57 +0200)]
* lisp/window.el (window--state-get-1): Check buffer-live-p in next-buffers
and prev-buffers. (Bug#32850)
Gemini Lasswell [Sun, 14 Oct 2018 19:12:04 +0000 (12:12 -0700)]
Keep a stack reference to bytecode objects being executed (Bug#33014)
* src/eval.c (Ffuncall): Make local variable 'fun' volatile.
* test/src/eval-tests.el
(eval-tests-byte-code-being-evaluated-is-protected-from-gc):
Add regression test for Bug#33014.
(eval-tests-33014-var): New variable.
(eval-tests-33014-func, eval-tests-33014-redefine): New functions.
Michael Albinus [Mon, 29 Oct 2018 13:09:52 +0000 (14:09 +0100)]
Fix Bug#33006
* lisp/cedet/semantic/symref/grep.el (semantic-symref-perform-search):
* lisp/progmodes/xref.el (xref-collect-matches)
(xref--collect-matches): Handle remote files. (Bug#33006)
João Távora [Mon, 29 Oct 2018 11:41:04 +0000 (11:41 +0000)]
Fix Flymake's diagnostic count with custom error types
Fixes: bug#33187
* lisp/progmodes/flymake.el (flymake--mode-line-format): Replace
cl-union with iterative cl-pushnew.
Charles A. Roelli [Sun, 28 Oct 2018 19:29:45 +0000 (20:29 +0100)]
* lisp/mail/rmailsum.el (rmail-summary-output): Add lost word to doc.
Charles A. Roelli [Sun, 28 Oct 2018 17:07:01 +0000 (18:07 +0100)]
Add index entries for more isearch commands/bindings (Bug#32990)
* doc/emacs/search.texi (Basic Isearch): Index isearch-exit,
isearch-abort, isearch-cancel, isearch-repeat-forward,
isearch-repeat-backward and their bindings.
(Repeat Isearch): Index isearch-ring-advance,
isearch-ring-retreat and isearch-edit-string.
(Special Isearch): Index isearch-quote-char,
isearch-char-by-name and their bindings. Index
isearch-query-replace and isearch-query-replace-regexp, and
the latter's binding. Explain what
isearch-query-replace-regexp does. Index isearch-complete.
(Word Search): Index isearch-toggle-word.
Eli Zaretskii [Sun, 28 Oct 2018 15:55:00 +0000 (17:55 +0200)]
Merge branch 'master' of git.savannah.gnu.org:/srv/git/emacs
Noam Postavsky [Sat, 27 Oct 2018 19:27:45 +0000 (15:27 -0400)]
* lisp/simple.el (filter-buffer-substring): Clarify doc (Bug#33179).
Juri Linkov [Sat, 27 Oct 2018 20:27:54 +0000 (23:27 +0300)]
* lisp/isearch.el (lazy-highlight-buffer): New defcustom. (Bug#29360)
(lazy-highlight-buffer-max-at-a-time): New defcustom.
(isearch-lazy-highlight-buffer): New defvar.
(isearch-lazy-highlight-new-loop): Don't check changes in window
boundaries when lazy-highlight-buffer is non-nil.
Move code that extends start/end to match whole string at point
here from isearch-lazy-highlight-search.
(isearch-lazy-highlight-search): Add args string and bound
like in other search functions. Move calculation of bound
to isearch-lazy-highlight-update.
(isearch-lazy-highlight-match): New function with code extracted from
isearch-lazy-highlight-update to be called also from
isearch-lazy-highlight-buffer-update.
(isearch-lazy-highlight-update): Reuse the values returned from
window-group-start and window-group-end. At the end schedule the
timer to call isearch-lazy-highlight-buffer-update when
isearch-lazy-highlight-buffer is non-nil.
(isearch-lazy-highlight-buffer-update): New function.
Eli Zaretskii [Sat, 27 Oct 2018 18:47:59 +0000 (21:47 +0300)]
Fix recent change in lispref/processes.texi.
* doc/lispref/processes.texi (Asynchronous Processes): Clarify
wording. Suggested by Thomas Fitzsimmons <fitzsim@fitzsim.org>.
(Bug#33050)
Glenn Morris [Sat, 27 Oct 2018 16:15:32 +0000 (09:15 -0700)]
Merge from origin/emacs-26
df64da8 (origin/emacs-26) * lisp/simple.el (region-extract-function):...
520c486 * lisp/simple.el (region-bounds): Doc fix. (Bug#33168)
9193db0 Improve documentation of 'process-connection-type'
106b9e1 Unify prompt for gnupg passphrase between GNU/Linux and MS-Wi...
2a41616 Doc fix of 'gnus-fetch-old-headers'
29a7644 Deactivate incorrect hyperlinking in gnus-build-sparse-thread...
53ae90f Minor copyedits in cmdargs.texi
fc2e65a Improve documentation of X resource loading
13132b3 * lisp/net/tramp-sh.el (tramp-inline-compress-commands):
8361292 ; Fix sorting in admin/MAINTAINERS
92de44f Don't error when indenting malformed Lisp (Bug#30891)
c3adbc8 Improve 'isearch-delete-char' documentation (Bug#32990)
6ca71ce ; * lisp/help.el (with-help-window): Remove extra space in doc.
f5f9583 Improve XPM load failure message (bug#33126)
f3d01d4 Avoid infloop in CPerl mode fontification
71a2d50 Fix minibuffer-help-form for lexical binding
7e8eee6 Fix some NS drawing issues (bug#32932)
d72975a * lisp/gnus/mm-util.el (mm-decompress-buffer): Fix split-stri...
c97a5f1 * doc/misc/calc.texi (Summary): The +/- key is 'p', not 'P'.
# Conflicts:
# lisp/gnus/mm-util.el
Eli Zaretskii [Sat, 27 Oct 2018 11:08:40 +0000 (14:08 +0300)]
* lisp/simple.el (region-extract-function): Doc fix. (Bug#33167)
Eli Zaretskii [Sat, 27 Oct 2018 10:50:34 +0000 (13:50 +0300)]
* lisp/simple.el (region-bounds): Doc fix. (Bug#33168)
Eli Zaretskii [Sat, 27 Oct 2018 10:18:33 +0000 (13:18 +0300)]
Improve documentation of 'process-connection-type'
* doc/lispref/processes.texi (Asynchronous Processes): Clarify
better when it is advisable to use pipes for communicating
with subprocesses. (Bug#33050)
Pierre Téchoueyres [Sun, 14 Oct 2018 15:49:12 +0000 (17:49 +0200)]
Unify prompt for gnupg passphrase between GNU/Linux and MS-Windows.
* lisp/epg.el (epg--start): Use 'raw-text' for coding system instead
of 'binary', in order to avoid spurious carriage return on Microsoft
Windows and MS-DOS when prompting for a password. (Bug#33040)
Eli Zaretskii [Sat, 27 Oct 2018 09:23:21 +0000 (12:23 +0300)]
; * etc/NEWS: Fix last change.
Daniel Pittman [Wed, 5 Sep 2018 13:44:58 +0000 (09:44 -0400)]
Add support in emacsclient for EMACS_SOCKET_NAME
If the '--socket-name' argument is unspecified, the environment
variable 'EMACS_SOCKET_NAME' is now consulted with the same
semantics. This mirrors the behavior of the '--server-file' argument,
and allows for easier configuration of emacsclient when the socket is
in a location other than 'TMPDIR' or '/tmp'.
* emacsclient.c (set_socket): Add support for the
EMACS_SOCKET_NAME environment variable. (Bug#33095)
* misc.texi (emacsclient Options):
* emacsclient.1: Document the EMACS_SOCKET_NAME environment
variable.
* etc/NEWS: Announce the new feature.
Copyright-paperwork-exempt: yes
Eli Zaretskii [Sat, 27 Oct 2018 09:14:35 +0000 (12:14 +0300)]
Doc fix of 'gnus-fetch-old-headers'
* lisp/gnus/gnus-sum.el (gnus-fetch-old-headers): Avoid
treating 'some' and 'invisible' as symbols that need to be
hyperlinked. Reported by Robert Pluim <rpluim@gmail.com>.
(Bug#33090)
Eric Abrahamsen [Thu, 18 Oct 2018 18:32:47 +0000 (11:32 -0700)]
Deactivate incorrect hyperlinking in gnus-build-sparse-threads doc
* lisp/gnus/gnus-sum.el (gnus-build-sparse-threads): Add the word
"symbol" so it doesn't link to the `some' function. (Bug#33090)
Eli Zaretskii [Sat, 27 Oct 2018 08:40:33 +0000 (11:40 +0300)]
Minor copyedits in cmdargs.texi
* doc/emacs/cmdargs.texi (Initial Options): Document '-nsl'.
Add a cross-reference to "Writing Dynamic Modules".
Eli Zaretskii [Sat, 27 Oct 2018 08:24:53 +0000 (11:24 +0300)]
Improve documentation of X resource loading
* doc/emacs/cmdargs.texi (Initial Options):
* doc/emacs/frames.texi (Frame Parameters):
* doc/emacs/xresources.texi (Resources): Document the
'--no-x-resources' command-line option and the fact that X
resources override .emacs settings of frame parameters.
(Bug#32975)
Michael Albinus [Sat, 27 Oct 2018 07:22:18 +0000 (09:22 +0200)]
* lisp/net/tramp-sh.el (tramp-inline-compress-commands):
Suppress warnings about obsolete environment variable GZIP.
Michael Albinus [Sat, 27 Oct 2018 07:21:53 +0000 (09:21 +0200)]
; Fix sorting in admin/MAINTAINERS
Federico Tedin [Fri, 26 Oct 2018 17:16:50 +0000 (13:16 -0400)]
Subject: (mouse-drag-and-drop-region): Simplify and remove assumptions
* lisp/mouse.el (mouse-drag-and-drop-region): Use insert-for-yank for
insertion, remove rectangular-region-specific variables.
Use text-property-not-all.
* lisp/rect.el (rectangle-dimensions): New function.
(rectangle-position-as-coordinates): Use the usual 1-origin for lines.
Stefan Monnier [Fri, 26 Oct 2018 17:04:31 +0000 (13:04 -0400)]
* lisp/files.el (abbreviate-file-name): Avoid save-match-data
Also, don't assume homedir doesn't contain special regexp chars.
And prefer \` ... \' over ^ ... $.
(recover-file): Use user-error.
Glenn Morris [Fri, 26 Oct 2018 05:08:12 +0000 (22:08 -0700)]
; * admin/automerge: Tweak previous NEWS fix
Glenn Morris [Fri, 26 Oct 2018 04:57:53 +0000 (21:57 -0700)]
* admin/automerge: Abort if NEWS gets modified.
Noam Postavsky [Sun, 18 Mar 2018 01:14:11 +0000 (21:14 -0400)]
Don't error when indenting malformed Lisp (Bug#30891)
* lisp/emacs-lisp/lisp-mode.el (lisp-indent-calc-next): If we run out
of indent stack, reset the parse state.
Charles A. Roelli [Thu, 25 Oct 2018 19:01:53 +0000 (21:01 +0200)]
Improve 'isearch-delete-char' documentation (Bug#32990)
* doc/emacs/search.texi (Basic Isearch): Index
'isearch-delete-char', its keybinding and the isearch "input
item" concept, and define the latter.
(Error in Isearch): Clarify the different uses of DEL and
C-M-w during isearch.
* lisp/isearch.el (isearch-delete-char): Correct its
documentation and link to the Info node '(emacs)Basic Isearch'
which explains less technically how this function works in
everyday usage.
Charles A. Roelli [Thu, 25 Oct 2018 18:40:49 +0000 (20:40 +0200)]
; * lisp/help.el (with-help-window): Remove extra space in doc.
Stefan Monnier [Thu, 25 Oct 2018 15:19:05 +0000 (11:19 -0400)]
* lisp/emacs-lisp/pcase.el (pcase--u1): Fix bignums
Use 'eql' to compare integers
Alan Third [Wed, 24 Oct 2018 11:15:16 +0000 (12:15 +0100)]
Improve XPM load failure message (bug#33126)
* src/image.c (xpm_load_image): Only XPM3 is supported, so make that
explicit.
Eli Zaretskii [Thu, 25 Oct 2018 14:57:34 +0000 (17:57 +0300)]
Avoid infloop in CPerl mode fontification
* lisp/progmodes/cperl-mode.el
(cperl-font-lock-fontify-region-function): Stop the loop at
EOB, to avoid inflooping there. (Bug#33114)
Andreas Schwab [Thu, 25 Oct 2018 08:55:53 +0000 (10:55 +0200)]
Fix minibuffer-help-form for lexical binding
* lisp/simple.el (set-variable): Substitute var into
minibuffer-help-form.
* lisp/cus-edit.el (custom-prompt-variable): Likewise.
Michael Albinus [Wed, 24 Oct 2018 18:56:40 +0000 (20:56 +0200)]
Fix Bug#33141
* lisp/net/tramp.el (tramp-make-tramp-file-name): Avoid check for
empty method with simplified `tramp-syntax'. (Bug#33141)
Glenn Morris [Wed, 24 Oct 2018 17:20:01 +0000 (13:20 -0400)]
* admin/gitmerge.el (gitmerge-resolve): Check NEWS patch exit status.
Alan Third [Sun, 14 Oct 2018 18:12:00 +0000 (19:12 +0100)]
Fix some NS drawing issues (bug#32932)
* src/nsterm.m (ns_clip_to_rect):
(ns_reset_clipping): Remove gsaved variable and associated code.
(ns_flush_display): Remove function.
(ns_copy_bits): use translateRectsNeedingDisplayInRect:by: to copy any
pending drawing actions along with the image.
([EmacsView windowWillResize:toSize:]): Remove unneeded call.
([EmacsView drawRect:]): Remove redundant call to ns_clear_frame_area,
and optimize the exposed rectangles.
(ns_draw_window_cursor): Remove unneeded disabling of screen updates.
Katsumi Yamaoka [Wed, 24 Oct 2018 10:09:51 +0000 (10:09 +0000)]
* lisp/gnus/mm-util.el (mm-decompress-buffer): Fix split-string args.
Noam Postavsky [Wed, 24 Oct 2018 01:46:01 +0000 (21:46 -0400)]
* doc/misc/calc.texi (Summary): The +/- key is 'p', not 'P'.
Glenn Morris [Tue, 23 Oct 2018 16:59:30 +0000 (09:59 -0700)]
; NEWS merge fixes
Glenn Morris [Tue, 23 Oct 2018 16:39:11 +0000 (09:39 -0700)]
Merge from origin/emacs-26
2efd400 (origin/emacs-26) Correct typo in GNU ELPA url
6239016 * doc/misc/dired-x.texi (Omitting Variables): Fix wording. (B...
1531bca Fix help-form binding in dired-create-files
cf79327 Fix a pasto in a Gnus doc string
a4e40f6 ; * doc/emacs/files.texi (Reverting): Improve wording in last...
f632ecb Update revert-buffer documentation
eb67689 * lisp/mail/smtpmail.el (smtpmail-send-queued-mail): Load fil...
433e364 ; * etc/NEWS: Announce that emacs-module.h is now installed.
# Conflicts:
# lisp/mail/smtpmail.el
Glenn Morris [Tue, 23 Oct 2018 16:32:58 +0000 (09:32 -0700)]
; Merge from origin/emacs-26
The following commits were skipped:
e456dda Tweak Makefile emacs-module.h handling
1dce1b2 Install emacs-module.h (Bug#31929)
Alan Mackenzie [Tue, 23 Oct 2018 13:28:19 +0000 (13:28 +0000)]
edebug.el: Move window focus switch into edebug-pop-to-buffer
* lisp/emacs-lisp/follow.el (edebug-focus-frame): Remove.
(edebug-pop-to-buffer): Call x-focus-frame for GUI frames.
(edebug-default-enter, edebug--display-1): Replace call to
edebug-focus-frame with x-focus-frame.
(edebug-where, edebug-bounce-point, edebug-visit-eval-list): Remove no longer
needed calls to edebug-focus-frame.
Robert Pluim [Tue, 23 Oct 2018 10:19:19 +0000 (12:19 +0200)]
Correct typo in GNU ELPA url
* doc/misc/efaq.texi (Packages that do not come with Emacs):
Correct typo in GNU ELPA url (Bug#33072). Change other url
references to use https scheme.
Paul Eggert [Tue, 23 Oct 2018 02:31:15 +0000 (19:31 -0700)]
Improve rounding in recent timer fix
* lisp/emacs-lisp/timer.el (timer-next-integral-multiple-of-time):
Use more-precise arithmetic to handle some boundary cases better
when rounding errors occur (Bug#33071).
* test/lisp/emacs-lisp/timer-tests.el:
(timer-next-integral-multiple-of-time-3):
New test, to test one of the boundary cases.
(timer-next-integral-multiple-of-time-2):
Redo so as to not assume a particular way of rounding 0.01.
Paul Eggert [Mon, 22 Oct 2018 17:54:45 +0000 (10:54 -0700)]
Fix epg bug with (TICKS . HZ) timestamp
Problem reported by Joseph Mingrone in:
https://lists.gnu.org/r/emacs-devel/2018-10/msg00380.html
* lisp/epg.el (epg--time-from-seconds): Just use a seconds count;
don’t generate an obsolete-format timestamp.
Stefan Monnier [Mon, 22 Oct 2018 13:50:08 +0000 (09:50 -0400)]
* src/minibuf.c (read_minibuf_noninteractive): Remove unused args.
Michael Albinus [Mon, 22 Oct 2018 07:05:48 +0000 (09:05 +0200)]
Improve Tramp backward compatibility
* lisp/net/tramp-compat.el: (tramp-unload-file-name-handlers):
Declare it, for backward compatibility.
Eli Zaretskii [Mon, 22 Oct 2018 05:47:18 +0000 (08:47 +0300)]
* doc/misc/dired-x.texi (Omitting Variables): Fix wording. (Bug#33112)
Glenn Morris [Sun, 21 Oct 2018 21:40:13 +0000 (17:40 -0400)]
; Auto-commit of loaddefs files.
Stefan Monnier [Sun, 21 Oct 2018 18:36:10 +0000 (14:36 -0400)]
Always define 'define-fringe-bitmap'
* lisp/cus-start.el: Test 'fringe-bitmaps' to see if fringe.c was compiled.
* lisp/fringe.el: Use lexical-binding.
(define-fringe-bitmap): Provide a fallback implementation.
* lisp/progmodes/flymake.el (flymake-double-exclamation-mark):
Define unconditionally.
* lisp/progmodes/gdb-mi.el (define-fringe-bitmap): Don't declare any more.
(breakpoint, hollow-right-triangle): Define unconditionally.
Stefan Monnier [Sun, 21 Oct 2018 15:05:49 +0000 (11:05 -0400)]
* lisp/vc/diff-mode.el: Improve diff-font-lock-prettify
A few tweaks to the previous code for corner case problems, and a new
feature, which is to move the +/- signs to the left fringe.
(diff--font-lock-cleanup, diff--filter-substring): New functions.
(diff-mode): Use them.
(diff--font-lock-refined): Mark the overall overlays as `diff-mode
fine` as well, so they get properly cleaned up when changing mode.
(diff-fringe-add, diff-fringe-del, diff-fringe-rep, diff-fringe-nul):
New bitmaps.
(diff--font-lock-prettify): Move the +/- signs to the fringe.
(diff-wiggle): Use 'user-error'.
Michael Heerdegen [Tue, 4 Sep 2018 20:00:11 +0000 (22:00 +0200)]
Fix help-form binding in dired-create-files
This fixes Bug#32630: since "dired-aux" moved to lexical binding mode,
the free variable TO in the constructed HELP-FORM got out of scope of
the surrounding 'let'.
* lisp/dired-aux.el (dired-create-files): Make the binding of
HELP-FORM a string.
Michael Albinus [Sat, 20 Oct 2018 11:38:31 +0000 (13:38 +0200)]
Expand host names in Tramp's ad-hoc multi-hop file names
* doc/misc/tramp.texi (Quick Start Guide): Improve wording.
(Change file name syntax): Say, that `tramp-file-name-regexp' is
not constant.
(Ad-hoc multi-hops): Explain host name expansion.
* etc/NEWS: Mention that host names in Tramp ad-hoc multi-hop file
names must match the previous hop for methods like "su" or "sudo".
Fix typos.
* lisp/net/tramp.el (tramp-find-method, tramp-find-user):
Adapt docstring.
(tramp-find-host): Mark default value.
(tramp-dissect-file-name): Expand host name for hops.
(tramp-dissect-hop-name, tramp-make-tramp-hop-name): New defuns.
(tramp-clear-passwd): Simplify.
* test/lisp/net/tramp-tests.el (tramp-test02-file-name-dissect)
(tramp-test02-file-name-dissect-simplified)
(tramp-test02-file-name-dissect-separate)
(tramp-test26-file-name-completion): Extend tests.
Eli Zaretskii [Sat, 20 Oct 2018 09:52:52 +0000 (12:52 +0300)]
Fix 'timer-next-integral-multiple-of-time'
* lisp/emacs-lisp/timer.el
(timer-next-integral-multiple-of-time): Fix recent change for
fractional values of SECS. (Bug#33071)
* test/lisp/emacs-lisp/timer-tests.el
(timer-next-integral-multiple-of-time-2): New test.
Eli Zaretskii [Sat, 20 Oct 2018 08:26:33 +0000 (11:26 +0300)]
Fix a pasto in a Gnus doc string
* lisp/gnus/gnus-art.el (gnus-article-treat-fold-newsgroups):
Doc string fix. (Bug#33081)
Stefan Monnier [Sat, 20 Oct 2018 02:31:35 +0000 (22:31 -0400)]
* lisp/mail/smtpmail.el: (smtpmail-send-queued-mail): Avoid 'load'
(smtpmail-send-it): Send metadata directly to the
files without bothering to write it into a temp buffer.
Stefan Monnier [Fri, 19 Oct 2018 22:10:42 +0000 (18:10 -0400)]
* emacs-lisp/package.el (package-get-version): Change into a function
(package-quickstart-refresh): Mangle string so it doesn't turn into
a false positive for "no-byte-compile: t".
Alan Mackenzie [Fri, 19 Oct 2018 17:44:31 +0000 (17:44 +0000)]
In edebug in GUIs, move focus to the selected frame.
Thus when entering edebug, the focus will be moved to the frame with the
source being debugged, and when its finished, the focus will move back.
Commands edebug-visit-eval-list (`E') and edebug-bounce-point (`p') have been
likewise amended.
* src/keyboard.c (readable_events): Handle FOCUS_OUT_EVENT as an invisible
event. This prevents input-pending-p returning t when one of these events
arrives, and thus obviates an instant termination of sit-for when there's no
"real" event waiting.
* lisp/emacs-lisp/edebug.el (edebug-focus-frame): New function.
(edebug-default-enter, edebug--display-1, edbug-where, edebug-bounce-point)
(edebug-visit-eval-list): Call edebug-focus-frame to move focus into the
window newly selected by edebug-pop-to-buffer.
Paul Eggert [Fri, 19 Oct 2018 16:06:52 +0000 (09:06 -0700)]
Fix struct thread alignment on FreeBSD x86
Problem reported by Joseph Mingrone in:
https://lists.gnu.org/r/emacs-devel/2018-10/msg00238.html
While we’re at it, apply a similar fix to struct Lisp_Subr; this
removes the need for GCALIGNED_STRUCT_MEMBER and thus can shrink
struct Lisp_Subr a bit.
* configure.ac (HAVE_STRUCT_ATTRIBUTE_ALIGNED): Bring back this macro.
Although used only for performance (not to actually align
structures), we might as well take advantage of it.
* src/lisp.h (GCALIGNED_STRUCT_MEMBER): Remove; all uses removed.
(union Aligned_Lisp_Subr): New type, like struct Lisp_Subr but aligned.
* src/lisp.h (XSUBR, DEFUN):
* src/lread.c (defsubr): Use it. All callers changed.
* src/thread.c (union aligned_thread_state): New type.
(main_thread): Now of this type, so it’s aligned.
All uses changed.
* src/xmenu.c (syms_of_xmenu) [USE_GTK || USE_X_TOOLKIT]:
Adjust to union Aligned_Lisp_Subr change.
Eli Zaretskii [Fri, 19 Oct 2018 13:55:17 +0000 (16:55 +0300)]
; * etc/NEWS (value): Fix punctuation of a recently added entry.
Alan Mackenzie [Fri, 19 Oct 2018 09:54:31 +0000 (09:54 +0000)]
In follow mode windows in a GUI, don't display inactive cursors
This is done by setting cursor-in-non-selected-windows buffer locally.
* lisp/follow.el (follow-hide-ghost-cursors): New customizable option.
(follow-mode): Create and set, or kill buffer-local copy of
cursor-in-non-selected-windows when the mode gets enabled or disabled.
(follow-prev-buffer): New variable.
(follow-adjust-window): Manipulate cursor-in-non-selected-windows when the
current buffer changes, to ensure that cursors stay visible in non-selected
follow window groups.
* etc/NEWS: Add an entry for this change.
Eli Zaretskii [Fri, 19 Oct 2018 08:58:53 +0000 (11:58 +0300)]
; * doc/emacs/files.texi (Reverting): Improve wording in last change.
Mauro Aranda [Thu, 18 Oct 2018 14:28:18 +0000 (11:28 -0300)]
Update revert-buffer documentation
* doc/emacs/files.texi (Reverting): Document that revert-buffer
does keep undo history. (Bug#33084)
Copyright-paperwork-exempt: yes
Martin Rudalics [Fri, 19 Oct 2018 06:51:03 +0000 (08:51 +0200)]
Have 'split-window' handle 'up' and 'down' values (Bug#32790)
* lisp/window.el (split-window): Handle values of 'up' and 'down'
for SIDE argument (Bug#32790).
(window-in-direction): Amend doc-string as of yesterday's change.
Juri Linkov [Thu, 18 Oct 2018 23:09:15 +0000 (02:09 +0300)]
* lisp/emacs-lisp/lisp.el (delete-pair): Add optional prefix arg.
(Bug#32896)
Juri Linkov [Thu, 18 Oct 2018 23:01:54 +0000 (02:01 +0300)]
Use buffer objects for non-writable states in window-state-get.
* lisp/window.el (window--state-get-1): Use buffer objects for
buffer, next-buffers, prev-buffers if 'writable' is nil. (Bug#32850)
Stefan Monnier [Thu, 18 Oct 2018 16:17:52 +0000 (12:17 -0400)]
* lisp/emacs-lisp/package.el (package-get-version): New macro
Martin Rudalics [Thu, 18 Oct 2018 07:11:30 +0000 (09:11 +0200)]
Have 'window-in-direction' handle 'up' and 'down' values (Bug#32790)
* lisp/window.el (window-in-direction): Handle values of 'up'
and 'down' for DIRECTION argument (Bug#32790). Suggested by
Juri Linkov <juri@linkov.net>.
* lisp/windmove.el (windmove-find-other-window): Don't convert
first argument of 'window-in-direction'.
Paul Eggert [Thu, 18 Oct 2018 00:55:43 +0000 (17:55 -0700)]
Bring back nocombreloc if dumping
Without this patch, Emacs dumps core on Fedora 28 x86-64
when configured via "CC='gcc -m32' --enable-gcc-warnings
--without-imagemagick --without-gif --with-modules
PKG_CONFIG_LIBDIR=/usr/lib/pkgconfig:/usr/share/pkgconfig".
and then when run normally in a windowing system.
'make check' and 'emacs -nw' work OK even without the patch.
* configure.ac (LD_SWITCH_SYSTEM_TEMACS): Prepend
-znocombreloc if supported and if dumping. This mostly
reverts 2018-06-15T21:37:39!eggert@cs.ucla.edu "Remove old
combreloc hack".
Juri Linkov [Wed, 17 Oct 2018 22:24:43 +0000 (01:24 +0300)]
* lisp/mail/smtpmail.el (smtpmail-send-queued-mail): Load file with .el suffix.
For the case when load-prefer-newer is t, ensure loading the right file
by explicitly adding the .el suffix. Use the same variable names
as in the function smtpmail-send-it. (Bug#33055)
Eli Zaretskii [Wed, 17 Oct 2018 15:19:47 +0000 (18:19 +0300)]
Avoid assertion violation when comparing with main-thread
* src/thread.c (unmark_main_thread): New function.
* src/lisp.h (unmark_main_thread): Prototype it.
* src/alloc.c (garbage_collect_1): Call it after sweeping.
(Bug#33073)
* test/src/thread-tests.el (threads-test-bug33073): New test.
Federico Tedin [Wed, 17 Oct 2018 06:34:51 +0000 (08:34 +0200)]
Allow two mouse functions to work with Rectangle Mark mode
* lisp/mouse.el (mouse-save-then-kill): Make
mouse-save-then-kill work with rectangular regions, including
when mouse-drag-copy-region is set to t. (Bug#31240)
(mouse-drag-and-drop-region): Allow dragging and dropping
rectangular regions. (Bug#31240)
* rect.el (rectangle-intersect-p)
(rectangle-position-as-coordinates): New functions.
Juri Linkov [Tue, 16 Oct 2018 22:36:33 +0000 (01:36 +0300)]
Use next-buffers and prev-buffers in window-state-get and window-state-put
* lisp/window.el (window--state-get-1): Get next-buffers and prev-buffers.
(window--state-put-2): Set next-buffers and prev-buffers. (Bug#32850)
Michael Albinus [Tue, 16 Oct 2018 17:44:16 +0000 (19:44 +0200)]
Fix Bug#32983
* lisp/net/soap-client.el: Bump version to 3.1.5.
(soap-parse-server-response): Handle also "multipart/related"
Content-Type. (Bug#32983)
Eli Zaretskii [Tue, 16 Oct 2018 15:48:21 +0000 (18:48 +0300)]
; * etc/NEWS: Announce that emacs-module.h is now installed.
Glenn Morris [Wed, 3 Oct 2018 20:47:01 +0000 (16:47 -0400)]
Tweak Makefile emacs-module.h handling
* Makefile.in (install-arch-indep, uninstall): Respect DESTDIR.
Handle whitespace. Remove non-portable mkdir argument.
(cherry picked from commit
c1d0dbd6ca92cb221024382b19654e4fbf1d1ed3)
Philipp Stephani [Thu, 20 Sep 2018 12:03:29 +0000 (14:03 +0200)]
Install emacs-module.h (Bug#31929)
* Makefile.in (includedir): New variable.
(install-arch-indep): Install emacs-module.h.
(uninstall): Uninstall emacs-module.h.
(cherry picked from commit
00ea749f2af44bff6ea8c1259477fbf0ead8a306)
Glenn Morris [Tue, 16 Oct 2018 15:08:04 +0000 (08:08 -0700)]
Merge from origin/emacs-26
73babba (origin/emacs-26) Clarify documentation of fractional vertica...
b20c51d * lisp/isearch.el (isearch-cmds): Recall absent isearch--stat...
700acbd doc/lispref/edebug.texi (Specification List) Remove obstrusiv...
1902450 Fix wording in module API documentation
e724a8f Fix redisplay of glyphless characters
8fc892d Update --without-toolkit-scroll-bars doc
80e0bfa Call GTK functions only on GTK scrollbars
91c4c46 Update the description of startup in ELisp manual
18b42c6 Use the 'line-number' face for line-number fields past EOB
a6ab8db Ensure NS frame is redrawn correctly after scroll
Conflicts:
lisp/isearch.el
Michael Albinus [Tue, 16 Oct 2018 13:58:45 +0000 (15:58 +0200)]
Add process thread to list-processes
* lisp/simple.el (process-menu-mode, list-processes--refresh):
Add process thread.
Stefan Monnier [Tue, 16 Oct 2018 02:44:37 +0000 (22:44 -0400)]
* doc/lispref/display.texi (Fringe Bitmaps): Remove redundant items
Stefan Monnier [Tue, 16 Oct 2018 02:31:54 +0000 (22:31 -0400)]
* lisp/image-mode.el (image-toggle-display-image): Avoid string-make-unibyte
Stefan Monnier [Tue, 16 Oct 2018 01:24:14 +0000 (21:24 -0400)]
* lisp/progmodes/octave.el: Register on auto-mode-alist
(octave-maybe-mode): New function.
Stefan Monnier [Tue, 16 Oct 2018 00:16:28 +0000 (20:16 -0400)]
* etc/NEWS.18: Tweak header to be more like the others
Juri Linkov [Mon, 15 Oct 2018 22:30:56 +0000 (01:30 +0300)]
* lisp/image-mode.el (image--imagemagick-wanted-p): Check for file extension.
(Bug#32994)
(image-toggle-display-text): Let-bind create-lockfiles to nil
like in image-toggle-display-image.
Stefan Monnier [Mon, 15 Oct 2018 20:30:52 +0000 (16:30 -0400)]
* lisp/textmodes/tex-mode.el (tex-uptodate-p): Recognize [N.N] pages
Alan Mackenzie [Mon, 15 Oct 2018 19:48:25 +0000 (19:48 +0000)]
In follow mode, prevent the cursor resting on a partially displayed line
This fixes bug #32848
* lisp/follow.el (follow-adjust-window): If point ends up in a partially
displayed line in a left hand or middle window, move it one line forward, to
prevent unwanted scrolling should make-cursor-line-fully-visible be non-nil.
Alan Mackenzie [Mon, 15 Oct 2018 19:04:05 +0000 (19:04 +0000)]
Clarify documentation of fractional vertical scrolling and some doc strings
* doc/lispref/windows.texi (vertical scrolling): Clarify the meaning of
vertical scrolling by referring to tall screen lines, images, and the display
action. Clarify an ambiguous English tense.
* src/window.c (window-vscroll, set-window-vscroll): Amend doc strings to
refer to display.
Charles A. Roelli [Mon, 15 Oct 2018 17:51:47 +0000 (19:51 +0200)]
* lisp/isearch.el (isearch-cmds): Recall absent isearch--state slot.