Stefan Monnier [Thu, 5 Dec 2019 03:35:07 +0000 (22:35 -0500)]
* lisp/emacs-lisp/cl-generic.el: Fix bootstrap.
Most importantly, prefill dispatchers for the new minibuffer.el methods.
* lisp/minibuffer.el (completion-table-category): Return both the
category and the default style.
(completion-table--call-method): New function.
(completion-table-test, completion-table-category)
(completion-table-boundaries, completion-table-fetch-matches): Use it.
Stefan Monnier [Sun, 17 Nov 2019 00:44:19 +0000 (19:44 -0500)]
WIP of possible new completion API
Juri Linkov [Sat, 16 Nov 2019 22:19:42 +0000 (00:19 +0200)]
* lisp/tab-bar.el: Add missing arg.
* lisp/tab-bar.el (tab-bar-list-next-line)
(tab-bar-list-prev-line): Add missing interactive spec for prefix arg.
* lisp/mouse.el (mouse-buffer-menu-mode-groups): Add "Git" regexp
to match "Git-Region-History" mode name for "Version Control" group.
Juri Linkov [Sat, 16 Nov 2019 22:10:19 +0000 (00:10 +0200)]
* lisp/simple.el (eval-expression-print-maximum-character): Use choice type.
https://lists.gnu.org/archive/html/emacs-devel/2019-11/msg00433.html
Juri Linkov [Sat, 16 Nov 2019 22:06:16 +0000 (00:06 +0200)]
* lisp/dired.el (dired-dwim-target): Add choice dired-dwim-target-next-visible
* lisp/dired-aux.el (dired-dwim-target-next): Add arg ALL-FRAMES.
(dired-dwim-target-next-visible): New function.
* doc/emacs/dired.texi (Operating on Files): Describe function value
of dired-dwim-target. (Bug#35385)
Eli Zaretskii [Sat, 16 Nov 2019 19:37:41 +0000 (21:37 +0200)]
Fix display of R2L text
* src/xdisp.c (extend_face_to_end_of_line): Fix padding of R2L
screen lines with stretch glyph on the left. (Bug#38233)
Shingo Tanaka [Fri, 25 Oct 2019 13:59:28 +0000 (22:59 +0900)]
Fix moving files with duplicate names to trash-can
* lisp/files.el (move-file-to-trash): Fix file name in
trash-can when another deleted file under the same name is
already stored there. (Bug#37922)
Copyright-paperwork-exempt: yes.
Martin Rudalics [Sat, 16 Nov 2019 08:04:53 +0000 (09:04 +0100)]
Do not report move frame events for tooltip frames (Bug#38213)
* src/w32term.c (w32_read_socket):
* src/xterm.c (handle_one_xevent): Do not report move frame events
for tooltip frames (Bug#38213).
Michael Orlitzky [Sat, 16 Nov 2019 07:15:48 +0000 (08:15 +0100)]
tex-mode: paragraph separator groups text and comments
* lisp/textmodes/tex-mode.el (latex-mode): Don't wrap text with
leading spaces into preceding comments (bug#38152).
Copyright-paperwork-exempt: yes
Lars Ingebrigtsen [Sat, 16 Nov 2019 05:11:56 +0000 (06:11 +0100)]
Don't move point on undefined keystrokes in the article buffer
* lisp/gnus/gnus-art.el (gnus-article-read-summary-keys): Don't
move point on undefined commands (bug#38227).
Lars Ingebrigtsen [Sat, 16 Nov 2019 04:33:17 +0000 (05:33 +0100)]
Make button-1 work on all Gnus buttons
* lisp/gnus/gnus-icalendar.el (gnus-icalendar-insert-button):
* lisp/gnus/gnus-art.el (gnus-insert-mime-button)
(gnus-mime-display-alternative, gnus-insert-prev-page-button)
(gnus-insert-next-page-button)
(gnus-insert-mime-security-button): Make button-1 work on all the
Gnus buttons (bug#38144).
Lars Ingebrigtsen [Sat, 16 Nov 2019 04:27:33 +0000 (05:27 +0100)]
Make it clear what edebug-remove-instrumentation offers
* doc/lispref/edebug.texi (Instrumenting): Reword the description
of the edebug-remove-instrumentation command.
Paul Eggert [Sat, 16 Nov 2019 02:40:45 +0000 (18:40 -0800)]
Port new float-scaling code to Solaris
* src/floatfns.c (double_integer_scale): Simplify, so that the
function works when (FP_ILOGBNAN == INT_MAX && FP_ILOGB0 == INT_MIN),
as on Solaris.
Phil Sainty [Fri, 15 Nov 2019 23:12:36 +0000 (12:12 +1300)]
; * lisp/so-long.el: Silence byte-compiler warnings
João Távora [Fri, 15 Nov 2019 20:27:18 +0000 (20:27 +0000)]
Make icomplete-tidy-shadowed-file-names less aggressive
When using this option and editing input, some transient situations
may arise that lead to file-name shadowing, but that shouldn't
necessarily lead to auto-delete behaviour, which will be suprising.
In '/foo/x/bar', if the user deletes the 'x', shadowing occurs, but
probably shouldn't. So, somewhat like ido-mode, only auto-tidy
shadowed file names if the user is inserting text at end of input.
* lisp/icomplete.el (icomplete-exhibit): Check this-command.
(icomplete-tidy-shadowed-file-names): Tweak docstring.
Stefan Monnier [Fri, 15 Nov 2019 18:19:21 +0000 (13:19 -0500)]
* lisp/progmodes/perl-mode.el (perl-calculate-indent): Indent qw(...)
Fix initialization of `state`.
Special-case `qw(...)` because we do want to indent its contents.
Robert Pluim [Fri, 15 Nov 2019 10:23:20 +0000 (11:23 +0100)]
Used magic-fallback-mode-alist to detect .doc files (Bug#20891)
This avoids running doc-view-mode on files that are actually text
files.
* lisp/files.el (auto-mode-alist): Don't use doc-view-mode-maybe
for .doc (but continue to do so for .docx).
(magic-fallback-mode-alist): Add signature for .doc files.
Eli Zaretskii [Fri, 15 Nov 2019 09:42:11 +0000 (11:42 +0200)]
Improve indexing of function doc string conventions
* doc/lispref/functions.texi (Function Documentation): Improve
indexing (bug#38158).
Paul Eggert [Fri, 15 Nov 2019 09:28:33 +0000 (01:28 -0800)]
Port hexdigit init to non-GCC + pdumper
The old code assumed that hexdigit initialization (needed by
non-GCC) could be done in syms_of_character, but that is no longer
true with pdumper. Instead, simplify hexdigit init so that it can
be done statically on all C99 platforms. Problem discovered on
Solaris 10 sparc + Oracle Solaris Studio 12.6.
* src/character.c (hexdigit): Add 1 to every value; all uses
changed. This simplifies the initialization so that it can be
done statically on any C99 compiler. hexdigit is now always const.
(syms_of_character): Omit no-longer-necessary initialization.
* src/character.h (HEXDIGIT_CONST, HEXDIGIT_IS_CONST):
Remove. All uses removed.
Eli Zaretskii [Fri, 15 Nov 2019 09:16:09 +0000 (11:16 +0200)]
Improve documentation of 'add-variable-watcher'
* doc/lispref/variables.texi (Watching Variables): Clarify the
documentation of 'add-variable-watcher' and fix markup.
* src/data.c (Fadd_variable_watcher): Clarify the doc string.
(Bug#38205)
Lars Ingebrigtsen [Fri, 15 Nov 2019 09:04:23 +0000 (10:04 +0100)]
Avoid using subr-x function
* lisp/vc/vc-hg.el (vc-hg-retrieve-tag): Avoid using subr-x
function (bug#38216).
Martin Rudalics [Fri, 15 Nov 2019 08:43:02 +0000 (09:43 +0100)]
In 'dframe-frame-mode' avoid 'switch-to-buffer' (Bug#37840)
* lisp/dframe.el (dframe-frame-mode): Use 'set-window-buffer'
instead of 'switch-to-buffer’ to avoid that
'switch-to-buffer-obey-display-actions' butts in (Bug#37840).
Andrii Kolomoiets [Fri, 15 Nov 2019 08:13:55 +0000 (09:13 +0100)]
lisp/vc/vc-hg.el: Don't pass empty string to hg update
* lisp/vc/vc-hg.el (vc-hg-retrieve-tag): Don't pass empty name to
`hg update` (bug#38216).
Lele Gaifax [Fri, 15 Nov 2019 08:10:24 +0000 (09:10 +0100)]
Fix minor formatting issue in isearch-forward documentation
* lisp/isearch.el (isearch-forward): Doc string formatting fix
(bug#38207).
Lars Ingebrigtsen [Fri, 15 Nov 2019 08:00:49 +0000 (09:00 +0100)]
Make edebug-remove-instrumentation remove macro instrumentation
* lisp/emacs-lisp/edebug.el (edebug-remove-instrumentation):
Macros can also have edebug instrumentation, so remove that as
well (bug#38195).
Robert Pluim [Fri, 15 Nov 2019 07:56:08 +0000 (08:56 +0100)]
Update nnir-method-default-engines version tag
* lisp/gnus/nnir.el (nnir-method-default-engines): Update version tag.
Eli Zaretskii [Fri, 15 Nov 2019 07:54:43 +0000 (09:54 +0200)]
Fix a recent change in xdisp.c
* src/xdisp.c (tty_handle_tab_bar_click): Revert the last
change which made this work only in the HAVE_NTGUI build.
This function is needed by any build which supports a mouse
on TTY frames.
Paul Eggert [Fri, 15 Nov 2019 02:51:17 +0000 (18:51 -0800)]
Handle weird cases like (ceil 0 0.0)
* src/floatfns.c (double_integer_scale): Distinguish Inf from NaN.
(rounding_driver): Handle (ceil 0 0.0) and (ceil 0 1.0e+INF).
* test/src/floatfns-tests.el (special-round): Add tests for
weird cases like this.
Avoid crash with (floor 0 0.0)
* src/floatfns.c (rounding_driver): Signal an arithmetic
error if divisor is 0.0 or -0.0, instead of crashing.
Stefan Monnier [Thu, 14 Nov 2019 23:55:18 +0000 (18:55 -0500)]
* lisp/cedet/semantic/db.el: Use lexical-binding
Also prefer setf over oset.
(semanticdb-abstract-table-list): Always define.
(semanticdb--inhibit-make-directory): Fix name of declaration to match
name of variable actually used.
(semanticdb-with-match-any-mode): Use `declare`. Add Edebug spec.
(semanticdb-project-roots): Remove redundant :group.
Paul Eggert [Thu, 14 Nov 2019 22:42:39 +0000 (14:42 -0800)]
Fix byte-counting error in ‘format’
Problem reported by Paul Pogonyshev (Bug#38191).
* src/editfns.c (styled_format): When checking for adjacent
%-sequences, use byte position rather than character position.
* test/src/editfns-tests.el (format-properties): Test for fix.
Paul Eggert [Thu, 14 Nov 2019 22:00:07 +0000 (14:00 -0800)]
In Cairo builds, omit some unnecessary functions
* src/font.c (fset_font_data, font_put_frame_data)
(font_get_frame_data):
* src/ftfont.c (ftfont_open, ftfont_close)
(ftfont_encode_char, ftfont_glyph_metrics)
(ftfont_text_extents, ftfont_driver):
Define only if USE_CAIRO.
* src/xdisp.c (tty_handle_tab_bar_click):
Define only if HAVE_NTGUI && !CYGWIN.
Dmitry Gutov [Thu, 14 Nov 2019 21:41:07 +0000 (23:41 +0200)]
(repos-count-screen-lines): Narrow without changing point-min
* lisp/reposition.el (repos-count-screen-lines): Narrow without
changing point-min. It wasn't necessary for vertical-motion to
work, and it had some adverse effects on how font-lock rules were
applied
(https://lists.gnu.org/archive/html/emacs-devel/2019-11/msg00522.html).
This can also be an alternative fix for bug#38049.
Alan Mackenzie [Thu, 14 Nov 2019 19:51:01 +0000 (19:51 +0000)]
CC Mode: Fix two bugs in the "state cache".
This (along with a suggestion to the OP to set
open-paren-in-column-0-is-defun-start to nil) fixes bug #37910. It may also
have fixed bug #5490 and bug #18072.
* lisp/progmodes/cc-engine.el (c-state-cache-non-literal-place): Remove thi
non-sensical function, replacing it with ....
(c-state-cache-lower-good-pos): New function.
(c-renarrow-state-cache, c-append-lower-brace-pair-to-state-cache)
(c-remove-stale-state-cache, c-remove-stale-state-cache-backwards): Instead of
altering the state-cache list structure with setcar and setcdr, use setq and
consing.
(c-parse-state-1): Call c-state-cache-lower-good-pos rather than
c-state-cache-non-literal-place.
Robert Pluim [Thu, 14 Nov 2019 14:40:12 +0000 (15:40 +0100)]
Remove unneeded font_is_ignored prototype
* src/gtkutil.h: Remove unneeded prototype for font_is_ignored,
it's in font.h now.
Robert Pluim [Thu, 14 Nov 2019 12:18:58 +0000 (13:18 +0100)]
; Add explanation for face-ignored-fonts defaults
Eli Zaretskii [Thu, 14 Nov 2019 11:51:38 +0000 (13:51 +0200)]
Merge branch 'master' of git.savannah.gnu.org:/srv/git/emacs
Eli Zaretskii [Thu, 14 Nov 2019 11:50:45 +0000 (13:50 +0200)]
; * src/font.h (font_is_ignored): Add prototype to avoid warnings.
Phil Sainty [Thu, 14 Nov 2019 11:43:46 +0000 (00:43 +1300)]
Merge branch 'scratch/so-long-updates'
Phil Sainty [Sat, 9 Nov 2019 06:52:06 +0000 (19:52 +1300)]
Make so-long disable flymake, flyspell, flycheck
* so-long.el (so-long-minor-modes): Add flymake-mode, flyspell-mode,
and flycheck-mode.
Phil Sainty [Mon, 21 Oct 2019 11:05:50 +0000 (00:05 +1300)]
Support loading so-long.el on top of an earlier version
* so-long.el (so-long-version, so-long--latest-version): New variables.
This enables users to safely load version 1.0 of so-long.el on top of
an earlier version, as well as making provisions for doing likewise
following any incompatible changes arising in future versions.
Phil Sainty [Mon, 21 Oct 2019 11:01:59 +0000 (00:01 +1300)]
Backwards-compatibility function definitions for so-long.el
* so-long.el (so-long-inhibit-whitespace-mode)
(so-long-make-buffer-read-only, so-long-revert-buffer-read-only)
(so-long-inhibit-global-hl-line-mode): Restore dummy definitions of
now-obsolete hook functions used by earlier versions of so-long.el,
to support users who have saved these symbols in their customized
values for the hooks in question.
Phil Sainty [Mon, 21 Oct 2019 11:00:16 +0000 (00:00 +1300)]
* lisp/so-long.el (so-long-unload-function): Improved feature unload
Phil Sainty [Mon, 21 Oct 2019 10:57:55 +0000 (23:57 +1300)]
; * lisp/so-long.el (so-long-predicate): Custom type consistency
This is for consistency with the other function options, which all
used the 'radio' custom type.
Phil Sainty [Mon, 21 Oct 2019 10:52:29 +0000 (23:52 +1300)]
Defer triggering `so-long' until the buffer is displayed
* lisp/so-long.el (so-long-invisible-buffer-function): New user option.
(so-long--set-auto-mode): Use so-long-invisible-buffer-function.
(so-long-deferred): New function/value for so-long-invisible-buffer-function.
(so-long, so-long--disable): Support for so-long-deferred.
* test/lisp/so-long-tests/autoload-longlines-mode-tests.el
* test/lisp/so-long-tests/autoload-major-mode-tests.el
* test/lisp/so-long-tests/autoload-minor-mode-tests.el
* test/lisp/so-long-tests/so-long-tests.el:
Support for so-long-deferred.
Pre-existing tests have been updated to ensure the buffer is already
displayed in cases where a call to `normal-mode' is the (potential)
trigger for `so-long'.
Phil Sainty [Mon, 21 Oct 2019 12:01:28 +0000 (01:01 +1300)]
; Documentation and spelling
* lisp/so-long.el: Documentation fixes. For the purposes of
consistency, this reverts some of the changes made in commit
41ba8231ef072571e1a6feabc15d113e5cf57556, including one which
had introduced inconsistent spelling.
ispell configuration and LocalWords have been added such that
`ispell-buffer' should find no misspellings for this library.
* test/lisp/so-long-tests/spelling-tests.el (so-long-spelling):
New test to check the spelling using `ispell-buffer'.
Eli Zaretskii [Thu, 14 Nov 2019 10:25:10 +0000 (12:25 +0200)]
Fix recent documentation changes
* doc/lispref/minibuf.texi (Multiple Queries): Move the
reference to 'read-char-from-minibuffer' from here...
* doc/lispref/commands.texi (Reading One Event): ...to here.
Fix the wording of the description of
'read-char-from-minibuffer'.
Robert Pluim [Wed, 13 Nov 2019 14:19:04 +0000 (15:19 +0100)]
Make GTK font chooser respect face-ignored-fonts
* src/font.c (font_delete_unmatched): Move Vface_ignored_fonts
matching to...
(font_is_ignored): ..Here. New function.
* src/gtkutil.c (xg_font_filter): New function, uses font_is_ignored
to filter fonts.
(xg_get_font): Set GTK font chooser filter to xg_font_filter.
* src/gtkutil.h: Add prototype for font_is_ignored.
Katsumi Yamaoka [Thu, 14 Nov 2019 08:27:58 +0000 (08:27 +0000)]
Obsolete rfc2047-quote-special-characters-in-quoted-strings (bug#38200)
* lisp/mail/rfc2047.el
(rfc2047-quote-special-characters-in-quoted-strings): Make obsolete
instead of removing it.
Katsumi Yamaoka [Thu, 14 Nov 2019 08:05:05 +0000 (08:05 +0000)]
Remove rfc2047-quote-special-characters-in-quoted-strings (bug#38200)
* lisp/mail/rfc2047.el
(rfc2047-quote-special-characters-in-quoted-strings): Remove function.
(rfc2047-encode-message-header, rfc2047-encode-region): Don't use it.
Andrii Kolomoiets [Thu, 14 Nov 2019 07:18:22 +0000 (08:18 +0100)]
(vc-default-update-on-retrieve-tag): Accept backend argument
* lisp/vc/vc.el (vc-default-update-on-retrieve-tag): Accept
backend argument (bug#38156). This fixes a bug introduced in the
previous patch.
Lars Ingebrigtsen [Thu, 14 Nov 2019 06:48:41 +0000 (07:48 +0100)]
Fix mouse-1 on Gnus article buffer buttons
* lisp/gnus/gnus-art.el (gnus-article-add-button): Make mouse-1
work as required by mouse-1-click-follows-link (bug#38144).
Andrii Kolomoiets [Thu, 14 Nov 2019 05:55:28 +0000 (06:55 +0100)]
VC: ability to skip update buffers prompt
* lisp/vc/vc.el (vc-default-update-on-retrieve-tag): New function.
(vc-retrieve-tag): Call `update-on-retrieve-tag' backend function
to determine if prompt for update buffers is needed; Include tag
name into the "Retrieving tag" message.
* lisp/vc/vc-git.el (vc-git-update-on-retrieve-tag):
* lisp/vc/vc-hg.el (vc-hg-update-on-retrieve-tag):
* lisp/vc/vc-svn.el (vc-svn-udate-on-retrieve-tag): New functions.
Buffers update prompt on `vc-retrieve-tag' is omitted (bug#38156).
Braun Gábor [Thu, 14 Nov 2019 05:45:37 +0000 (06:45 +0100)]
Make clone-buffer not unbind global variable
* lisp/simple.el (clone-buffer): Make clone-buffer not globally
unset locally void variable (bug#38179).
Copyright-paperwork-exempt: yes
Lars Ingebrigtsen [Thu, 14 Nov 2019 05:37:09 +0000 (06:37 +0100)]
Update signature in etc/DISTRIB
* etc/DISTRIB: Update signature (bug#38188).
Lars Ingebrigtsen [Thu, 14 Nov 2019 05:31:50 +0000 (06:31 +0100)]
Make dired-do-compress-to require format-spec
* lisp/dired-aux.el (dired-do-compress-to): Require format-spec
runtime (bug#38189).
Lars Ingebrigtsen [Thu, 14 Nov 2019 05:19:59 +0000 (06:19 +0100)]
Allow using edebug-remove-instrumentation more fine-grained
* lisp/emacs-lisp/edebug.el (edebug-remove-instrumentation):
Prompt the user for what functions to remove instrumentation from
a la cancel-edebug-on-entry (bug#38195).
Stephen Gildea [Thu, 14 Nov 2019 04:21:42 +0000 (20:21 -0800)]
time-stamp: update support for time zone numeric offset
* time-stamp.el (time-stamp-string-preprocess): Change new format for
numeric time zone from %:z to %5z to match format-time-string better.
(time-stamp-format): Document support for numeric time zone.
See discussion in bug#32931.
* NEWS: Mention time-stamp-format %5z.
Katsumi Yamaoka [Thu, 14 Nov 2019 02:24:26 +0000 (02:24 +0000)]
Don't show Attachment(s) header in html article viewed with browse-url
* lisp/gnus/gnus-art.el (gnus-article-browse-html-article):
Bind gnus-mime-display-attachment-buttons-in-header to nil.
Juri Linkov [Wed, 13 Nov 2019 22:09:06 +0000 (00:09 +0200)]
* lisp/tab-line.el (tab-line-tabs-buffer-list): Use window-prev-buffers too.
* lisp/tab-line.el (tab-line-tabs-buffer-list): Move window-prev-buffers here
from tab-line-tabs-buffer-groups.
Paul Eggert [Wed, 13 Nov 2019 21:07:01 +0000 (13:07 -0800)]
Fix double-rounding bug in ceiling etc.
This is doable now that we have bignums.
* src/floatfns.c (integer_value): Remove; no longer used.
(rescale_for_division): New function.
(rounding_driver): Use it to divide properly (by using bignums)
even when arguments are float, fixing a double-rounding FIXME.
* src/lisp.h (LOG2_FLT_RADIX): Move here ...
* src/timefns.c (frac_to_double): ... from here.
* test/src/floatfns-tests.el (big-round):
Add a test to catch the double-rounding bug.
Paul Eggert [Wed, 13 Nov 2019 20:10:31 +0000 (12:10 -0800)]
Refactor bignum multiplication, exponentiation
This doesn’t alter behavior, and simplifies the next commit.
* src/bignum.c (GMP_NLIMBS_MAX, NLIMBS_LIMIT, emacs_mpz_size)
(emacs_mpz_mul, emacs_mpz_mul_2exp, emacs_mpz_pow_ui): Move here ...
* src/data.c: ... from here.
Paul Eggert [Sun, 10 Nov 2019 23:06:49 +0000 (15:06 -0800)]
Refactor double integer scaling
This doesn’t alter behavior, and simplifies a future commit.
* src/floatfns.c (double_integer_scale): New function,
with body adapted from the old timefns.c.
* src/timefns.c (decode_float_time): Use it.
Michael Albinus [Wed, 13 Nov 2019 14:55:35 +0000 (15:55 +0100)]
Finish last Tramp patch
* lisp/net/tramp.el (outline-regexp): Remove declaration.
(tramp-debug-outline-regexp): Add thread regexp.
(tramp-debug-font-lock-keywords): New defconst.
(tramp-debug-outline-level): Adapt to changed
`tramp-debug-outline-regexp'.
(tramp-get-debug-buffer): Use `tramp-debug-font-lock-keywords'.
Robert Pluim [Wed, 13 Nov 2019 13:43:33 +0000 (14:43 +0100)]
Add "Noto Color Emoji" to face-ignored-fonts
* src/xfaces.c (syms_of_xfaces) [HAVE_XFT]: Add "Noto Color Emoji" to
face-ignored-fonts (Bug#37786).
Michael Albinus [Wed, 13 Nov 2019 13:53:43 +0000 (14:53 +0100)]
Some refinement in Tramp debug buffer.
* lisp/net/tramp.el (outline-regexp): Remove declaration.
(tramp-debug-font-lock-keywords): New defconst.
(tramp-get-debug-buffer): Use it.
Michael Albinus [Wed, 13 Nov 2019 12:10:58 +0000 (13:10 +0100)]
Adapt Tramp docstrings according to checkdoc
* lisp/net/tramp.el (tramp-backup-directory-alist)
(tramp-echoed-echo-mark-regexp, tramp-syntax-values)
(tramp-lookup-syntax, tramp-build-prefix-format)
(tramp-build-prefix-regexp, tramp-build-method-regexp)
(tramp-build-postfix-method-format)
(tramp-build-postfix-method-regexp)
(tramp-build-prefix-ipv6-format, tramp-build-prefix-ipv6-regexp)
(tramp-build-postfix-ipv6-format)
(tramp-build-postfix-ipv6-regexp)
(tramp-build-postfix-host-format)
(tramp-build-postfix-host-regexp, tramp-unknown-id-string)
(tramp-unknown-id-integer, tramp-build-file-name-regexp)
(tramp-build-completion-file-name-regexp, tramp-chunksize)
(tramp-find-method, tramp-find-user, tramp-find-host)
(tramp-dissect-file-name, tramp-get-buffer)
(tramp-get-connection-buffer, tramp-debug-message, tramp-error)
(with-tramp-connection-property, tramp-run-real-handler)
(tramp-file-name-for-operation, tramp-file-name-handler)
(tramp-completion-file-name-handler)
(tramp-completion-handle-file-name-completion)
(tramp-completion-dissect-file-name)
(tramp-completion-dissect-file-name1)
(tramp-handle-file-name-as-directory)
(tramp-handle-file-name-directory)
(tramp-handle-file-name-nondirectory, tramp-mode-string-to-int)
(tramp-file-mode-from-int):
* lisp/net/tramp-adb.el (tramp-adb-file-name-p):
* lisp/net/tramp-archive.el (tramp-archive-run-real-handler)
(tramp-archive-file-name-handler)
(tramp-archive-dissect-file-name)
(with-parsed-tramp-archive-file-name)
(tramp-archive-gvfs-file-name, tramp-archive-handle-access-file):
* lisp/net/tramp-cmds.el (tramp-list-remote-buffers):
* lisp/net/tramp-compat.el (tramp-unload-file-name-handlers)
(tramp-compat-funcall, tramp-compat-tramp-file-name-slots):
* lisp/net/tramp-ftp.el (tramp-ftp-file-name-handler)
(tramp-ftp-file-name-p):
* lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-p)
(tramp-gvfs-file-name-handler)
(tramp-gvfs-stringify-dbus-message)
(tramp-gvfs-monitor-process-filter)
(tramp-gvfs-handler-mounted-unmounted):
* lisp/net/tramp-integration.el
(tramp-rfn-eshadow-update-overlay-regexp):
* lisp/net/tramp-rclone.el (tramp-rclone-file-name-p)
(tramp-rclone-file-name-handler, tramp-rclone-send-command):
* lisp/net/tramp-sh.el (tramp-sh--quoting-style-options)
(tramp-sh-gio-monitor-process-filter)
(tramp-sh-gvfs-monitor-dir-process-filter)
(tramp-sh-inotifywait-process-filter, tramp-find-executable)
(tramp-set-remote-path, tramp-open-shell, tramp-find-shell)
(tramp-send-command-and-check, tramp-shell-case-fold)
(tramp-get-remote-path):
* lisp/net/tramp-smb.el (tramp-smb-file-name-p)
(tramp-smb-file-name-handler)
(tramp-smb-do-file-attributes-with-stat)
(tramp-smb-handle-substitute-in-file-name)
(tramp-smb-get-stat-capability, tramp-smb-shell-quote-argument):
* lisp/net/tramp-sudoedit.el (tramp-sudoedit-file-name-p)
(tramp-sudoedit-file-name-handler)
(tramp-sudoedit-send-command-string):
* test/lisp/net/tramp-archive-tests.el (tramp-archive-test-all):
* test/lisp/net/tramp-tests.el (tramp--test-gvfs-p)
(tramp--test-with-proper-process-name-and-buffer)
(tramp-test-all): Adapt docstrings according to `checkdoc'.
João Távora [Wed, 13 Nov 2019 09:47:25 +0000 (09:47 +0000)]
Avoid fido-mode's setup on non-icomplete minibuffers
Otherwise we would lose things like C-r (isearch-backward) when doing
simple stuff like non-icomplete pp-eval-expression.
* lisp/icomplete.el (icomplete--fido-mode-setup): Restrict setup
to when icomplete-mode really kicks in.
Juri Linkov [Tue, 12 Nov 2019 21:31:12 +0000 (23:31 +0200)]
* lisp/tab-line.el (tab-line-tabs-buffer-list-function): New variable.
(tab-line-tabs-buffer-list): New function.
(tab-line-tabs-mode-buffers, tab-line-tabs-buffer-groups):
Call tab-line-tabs-mode-buffers.
(tab-line-tabs-buffer-groups): Add 'close' function that uses
kill-buffer instead of bury-buffer that makes no sense here.
(tab-line-format): Don't show the close button when a tab
has no 'close' function or buffer.
(tab-line-switch-to-prev-tab, tab-line-switch-to-next-tab):
Support tabs with 'buffer' properties.
(tab-line-close-tab): Call 'close' function when defined.
Juri Linkov [Tue, 12 Nov 2019 21:21:14 +0000 (23:21 +0200)]
* lisp/dired.el (dired-dwim-target): Add new choices (bug#35385)
* lisp/dired.el (dired-dwim-target): Add choices
dired-dwim-target-next and dired-dwim-target-recent.
* lisp/dired-aux.el (dired-dwim-target-next)
(dired-dwim-target-recent): New functions.
(dired-dwim-target-directories): Call either of them.
* doc/emacs/dired.texi (Operating on Files): Mention new
preferences in dired-dwim-target.
Paul Eggert [Tue, 12 Nov 2019 19:29:00 +0000 (11:29 -0800)]
Conditionally omit edition numbers, dates in doc
This redoes the 2019-11-02T00:24:02!eggert@cs.ucla.edu patch,
updated after consultation with John Sullivan.
Omit printed edition numbers in online manuals while keeping
them in printed manuals. In online manuals the edition
numbers seem to cause more confusion than they cure; e.g.,
https://shop.fsf.org/books/gnu-emacs-manual-18th-edition-v-261
currently advertises "18th edition" even as it points to
https://www.gnu.org/software/emacs/manual/pdf/emacs.pdf which
says "Seventeenth Edition". It is simpler and less confusing
to stick to one version number like "27.0" in online manuals.
For printed manuals people can run, e.g., "texi2any -D
'EDITION Nineteenth'" when generating the 19th printed edition
of the Emacs manual.
* doc/emacs/emacs.texi (EDITION):
* doc/lispintro/emacs-lisp-intro.texi (edition-number, update-date):
* doc/lispref/elisp.texi (VERSION, DATE):
Remove definitions. Instead, let the person printing the book
specify these values, with the default being the online version
which does not have printed edition numbers.
* doc/lispintro/emacs-lisp-intro.texi (titlepage-edition-number):
New flag, for the edition number as it appears on the title page.
Martin Rudalics [Tue, 12 Nov 2019 15:44:30 +0000 (16:44 +0100)]
Make sure buffer is live before retrieving underline properties (Bug#38038)
* src/window.h (WINDOW_BUFFER_LOCAL_VALUE): New macro.
* src/nsterm.m (ns_draw_text_decoration):
* src/w32term.c (w32_draw_glyph_string):
* src/xterm.c (x_draw_glyph_string): Make sure buffer is live
before retrieving underline properties from it (Bug#38038).
Stefan Monnier [Tue, 12 Nov 2019 13:39:18 +0000 (08:39 -0500)]
* lisp/emacs-lisp/easymenu.el (easy-menu-make-symbol): Fix last change
Paul Eggert [Tue, 12 Nov 2019 06:54:06 +0000 (22:54 -0800)]
Fix a few more minor quoting problems.
Lars Ingebrigtsen [Tue, 12 Nov 2019 02:40:06 +0000 (03:40 +0100)]
Rename font-log-refontify
* lisp/font-lock.el (font-lock-debug-fontify): Rename to make it
clearer what the function is for.
* doc/lispref/modes.texi (Font Lock Basics): Ditto.
Stefan Monnier [Mon, 11 Nov 2019 22:14:30 +0000 (17:14 -0500)]
* lisp/startup.el (command-line): Fix last change in package--activated
Paul Eggert [Mon, 11 Nov 2019 18:30:13 +0000 (10:30 -0800)]
Fix some quoting glitches in doc strings
Paul Eggert [Mon, 11 Nov 2019 18:29:56 +0000 (10:29 -0800)]
Fix quoting glitch in formatting Gnus messages
* lisp/gnus/gnus-util.el (defmacro, gnus-message): Use
‘format-message’, not ‘format’, to be compatible with ‘message’.
Paul Eggert [Mon, 11 Nov 2019 18:29:09 +0000 (10:29 -0800)]
Fix glitch in generating cxterm doc strings
* lisp/international/titdic-cnv.el (tit-process-header):
In generated doc strings, escape \, ", ', and ` properly.
Currently only ' appears but we might as well future-proof this.
Wilson Snyder [Mon, 11 Nov 2019 16:47:54 +0000 (11:47 -0500)]
Verilog-Mode collected updates.
* lisp/progmodes/verilog-mode.el (verilog-read-decls): Fix to skip
over base64-encoded protected data while reading AUTO declarations.
Reported by Berend Ozceri.
(verilog-auto-inst-port, verilog-auto-inst-vector): Support 'unsigned'
in `verilog-auto-inst-vector'. Reported by Jeff Riley.
(verilog-read-decls): Fix to ignore `line in AUTOINST, git
bug18. Reported by Berend Ozceri.
(verilog-library-extensions): Support .va /.vah/.sva/.svah file
extensions to load verilog-mode for Verilog-AMS. Reported by Shareef
Jalloq.
(verilog-read-sub-decls-expr): Fix AUTOOUTPUT etc misparsing Verilog
casts, bug1526. Reported by Udi Finkelstein.
Stefan Kangas [Mon, 11 Nov 2019 15:05:21 +0000 (16:05 +0100)]
Add several configuration files to auto-mode-alist
* lisp/files.el (auto-mode-alist): Use conf-mode for .asoundrc,
.mairixrc, .mbsyncr, .msmtprc, .nvidia-settings-rc, .offlineimaprc,
.reportbugrc, .rtorrent.rc, .screenrc, .mpdconf, .notmuch-config. Use
conf-windows-mode for .redshift.conf. (Bug#38065)
Paul Eggert [Sun, 10 Nov 2019 23:01:06 +0000 (15:01 -0800)]
Document Lisp floats a bit better
* doc/lispref/numbers.texi (Float Basics):
* doc/misc/cl.texi (Implementation Parameters):
* lisp/emacs-lisp/cl-lib.el (cl-most-positive-float)
(cl-least-positive-float)
(cl-least-positive-normalized-float, cl-float-epsilon)
(cl-float-negative-epsilon):
Document IEEE floating point better. Don’t suggest that Emacs
might use some floating-point format other than IEEE format, as
Emacs currently assumes IEEE in several places and there seems
little point in removing those assumptions.
Juri Linkov [Sun, 10 Nov 2019 21:30:41 +0000 (23:30 +0200)]
* lisp/tab-bar.el: Better handling of closed-tabs in tab-bar-list.
* lisp/tab-bar.el (tab-bar-list-delete-from-list): Add closed tab to
tab-bar-closed-tabs.
(tab-bar-list-select): Don't add the closed intermediate tab to
tab-bar-closed-tabs.
Juri Linkov [Sun, 10 Nov 2019 21:21:46 +0000 (23:21 +0200)]
* lisp/autorevert.el: Use 'minibuffer-message' to not obscure the prompt.
* lisp/autorevert.el (auto-revert-handler): Use 'minibuffer-message'
instead of 'message'. Call it from the original window's buffer
that in case of the minibuffer should be current, so
minibuffer-message could add a message to it. (Bug#34614)
* lisp/emacs-lisp/ert-x.el (ert--make-message-advice): Add nil to
the list of values to not use for format-message, because
minibuffer-message calls 'message' with nil argument, and tests fail.
Stefan Kangas [Sun, 10 Nov 2019 21:15:31 +0000 (22:15 +0100)]
Make dired-get-subdir-min obsolete
* lisp/dired.el (dired-get-subdir-min): Redefine as obsolete function
alias for 'cdr'. (Bug#11571)
(dired-get-subdir, dired-get-subdir-max, dired-clear-alist)
(dired-next-subdir, dired-current-directory):
* lisp/dired-aux.el (dired-rename-subdir-2)
(dired-alist-sort, dired-insert-subdir-del)
(dired-insert-subdir-doupdate, dired-goto-subdir)
(dired-hide-subdir, dired-hide-all): Use 'cdr' instead of
the above obsolete function.
(dired-subdir-alist): Doc fix.
Co-authored-by: Drew Adams <drew.adams@oracle.com>
Juri Linkov [Sun, 10 Nov 2019 21:06:37 +0000 (23:06 +0200)]
Move read-char-from-minibuffer from simple.el to subr.el and document it.
* doc/lispref/minibuf.texi (Multiple Queries):
Document read-char-from-minibuffer (bug#10477, bug#38076).
* lisp/subr.el (read-char-history)
(read-char-from-minibuffer-map)
(read-char-from-minibuffer-map-hash)
(read-char-from-minibuffer-insert-char)
(read-char-from-minibuffer-insert-other, empty-history)
(read-char-from-minibuffer): Move from simple.el to subr.el.
Stefan Monnier [Sun, 10 Nov 2019 04:57:22 +0000 (23:57 -0500)]
* lisp/cedet/semantic/wisent/comp.el (wisent-struct): Remove
(core, shifts, reductions, errs): Use cl-defstruct instead.
Adjust all users of the set-<struct>-<field> setters to use
`setf` instead.
Jimmy Aguilar Mena [Sun, 10 Nov 2019 03:39:53 +0000 (04:39 +0100)]
Add extra bindings to fido-mode.
* lisp/icomplete.el (icomplete-fido-mode-map) : Add arrows and other
bindings to reproduce ido behaviour.
Glenn Morris [Sun, 10 Nov 2019 03:38:05 +0000 (19:38 -0800)]
Disable a portion of one doc-test
* test/src/doc-tests.el (doc-test-substitute-command-keys):
Disable component that fails twice in the past 5 weeks
due to changes in the minibuffer map.
Juri Linkov [Sat, 9 Nov 2019 22:51:25 +0000 (00:51 +0200)]
Don't overwrite y-or-n-p prompt by message from asynchronous man (bug#19064)
* lisp/man.el (Man-bgproc-sentinel): Postpone displaying the message
and deleting the buffer until exiting the code block with
with-current-buffer. Use minibuffer-message to display message
to handle possibly active minibuffer.
Juri Linkov [Sat, 9 Nov 2019 22:46:29 +0000 (00:46 +0200)]
Don't obscure the minibuffer by message (bug#17272)
* lisp/subr.el (do-after-load-evaluation): Use minibuffer-message
to not obscure a possibly active minibuffer.
* lisp/minibuffer.el (minibuffer-message):
Record message in the *Messages* buffer.
Juri Linkov [Sat, 9 Nov 2019 22:43:09 +0000 (00:43 +0200)]
Use the minibuffer to read answer in userlock.el (bug#38076)
* lisp/userlock.el: Rename 'fn' to 'filename'.
(ask-user-about-supersession-threat): Use read-char-from-minibuffer
instead of read-char-choice.
Stefan Monnier [Sat, 9 Nov 2019 22:42:36 +0000 (17:42 -0500)]
* lisp/startup.el (package--activated): Fix redundant definition
Stefan Monnier [Sat, 9 Nov 2019 18:32:20 +0000 (13:32 -0500)]
* lisp/ffap.el (ffap-read-file-or-url): Don't use url-file-handler
Simplify accordingly (and don't call substitute-in-file-name redundantly).
Juri Linkov [Sat, 9 Nov 2019 22:32:09 +0000 (00:32 +0200)]
hack-local-variables-confirm uses the minibuffer to read answer (bug#38076)
* lisp/files.el (hack-local-variables-confirm):
Use read-char-from-minibuffer instead of read-char-choice.
Remove special handling of original window scrolling
that is now supported in the minibuffer. This fixes
https://lists.gnu.org/archive/html/emacs-devel/2019-10/msg01020.html
(files--ask-user-about-large-file): Use read-char-from-minibuffer
instead of read-char-choice.
Juri Linkov [Sat, 9 Nov 2019 22:21:26 +0000 (00:21 +0200)]
Add CHARS arg to read-char-from-minibuffer compatible with read-char-choice.
* lisp/simple.el (read-char-history):
Rename from read-char-from-minibuffer-history. (Bug#38076)
(read-char-from-minibuffer-insert-char):
Rename from read-char-from-minibuffer-self-insert.
(read-char-from-minibuffer-map-hash): New defconst.
(read-char-from-minibuffer-insert-other): New command.
(read-char-from-minibuffer): Add optional args CHARS and HISTORY.
(zap-to-char): Use 'read-char-history as HISTORY arg of
read-char-from-minibuffer.
* lisp/emacs-lisp/map-ynp.el (read-answer): Use sit-for instead of sleep-for.
Replace short answer history yes-or-no-p-history with read-char-history.
Juri Linkov [Sat, 9 Nov 2019 22:04:13 +0000 (00:04 +0200)]
'y-or-n-p' now uses the minibuffer to read 'y' or 'n' answer (bug#38076)
* doc/lispref/minibuf.texi (Yes-or-No Queries): Update the fact
that y-or-n-p uses the minibuffer.
* lisp/subr.el (y-or-n-p-history-variable): New variable.
(y-or-n-p-map): New keymap.
(y-or-n-p-insert-y, y-or-n-p-insert-n, y-or-n-p-insert-other):
New commands.
(y-or-n-p): Rewrite to use read-from-minibuffer and make-composed-keymap
with y-or-n-p-map and query-replace-map.
Juri Linkov [Sat, 9 Nov 2019 21:32:46 +0000 (23:32 +0200)]
Run scroll/recenter commands from minibuffer in original window (bug#38076)
* lisp/minibuffer.el (with-minibuffer-selected-window): New macro.
(minibuffer-recenter-top-bottom, minibuffer-scroll-up-command)
(minibuffer-scroll-down-command, minibuffer-scroll-other-window):
(minibuffer-scroll-other-window-down): New commands.
(minibuffer-local-map): Remap recenter/scroll symbols to their
minibuffer wrappers: recenter-top-bottom to minibuffer-recenter-top-bottom.
* src/window.c (Fother_window_for_scrolling): Use 'lambda' value for
MINIBUF arg of Fnext_window, so minibuffer-scroll-other-window and
minibuffer-scroll-other-window-down doesn't try to scroll the
minibuffer window.
Karl Fogel [Mon, 4 Nov 2019 20:39:14 +0000 (14:39 -0600)]
Improve an error about the message signer
* lisp/gnus/mml-sec.el (mml-secure-epg-sign): Don't suggest setting
`mml-secure-smime-sign-with-sender' if it's already non-nil.
Lars Ingebrigtsen [Sat, 9 Nov 2019 20:02:18 +0000 (21:02 +0100)]
Fix font-lock-keywords slightly
* lisp/font-lock.el (font-lock-keywords): Tweak doc string
slightly (bug#35005).
Eli Zaretskii [Sat, 9 Nov 2019 19:56:30 +0000 (21:56 +0200)]
Fix case-insensitive completion of buffer names
* test/src/minibuf-tests.el (test-try-completion-ignore-case):
New test, suggested by Stefan Monnier <monnier@iro.umontreal.ca>.
* src/minibuf.c (Ftry_completion): Don't treat strings that
are identical but for the case as if they were identical for
the purposes of not counting the same string twice. This
fixes case-insensitive completion when all the candidates are
identical but for the letter-case. (Bug#11339)