Glenn Morris [Thu, 20 Feb 2020 15:50:30 +0000 (07:50 -0800)]
Merge from origin/emacs-27
9f08524748 (origin/emacs-27) Fix broken regexps
1d10885763 ; spelling and comment fix
614203bc80 ; make change-history-commit
28399e585e * Makefile.in (PREFERRED_BRANCH): Now emacs-27.
62afbc513a Fix bug when visiting euc-jp-encoded directories
a2c4eeeecd Clarify when fixnums are used.
4e5ac4b0c6 Reorder discussion of integer basics
f765aad28b Make OMake support slightly less expensive (bug#39595)
39410cfc5a Speed up 'msft' and 'watcom' compilation error regexps
96a269d045 Speed up 'maven' compilation error message regexp
efc9d4fe3e Amend c-backward-sws better to handle multiline block comm...
Mattias Engdegård [Thu, 20 Feb 2020 14:45:44 +0000 (15:45 +0100)]
Remove subsumed repetitions in regexps
Make regexps smaller and faster by removing terms that are superfluous
by virtue of standing next to another term that matches more. See
https://lists.gnu.org/archive/html/emacs-devel/2020-01/msg00949.html
for details.
* lisp/bs.el (bs--make-header-match-string):
* lisp/gnus/deuglify.el (gnus-outlook-repair-attribution-block):
* lisp/gnus/message.el (message-subject-trailing-was-ask-regexp)
(message-subject-trailing-was-regexp):
* lisp/informat.el (Info-validate):
* lisp/net/browse-url.el (browse-url-button-regexp):
* lisp/net/rcirc.el (rcirc-url-regexp):
* lisp/org/ob-core.el (org-babel-remove-result):
* lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
* lisp/org/org-capture.el (org-capture-set-target-location):
* lisp/org/org-table.el (org-table-expand-lhs-ranges):
* lisp/org/org.el (org-maybe-keyword-time-regexp, org-ts-regexp)
(org-ts-regexp-inactive, org-ts-regexp-both):
* lisp/play/gametree.el (gametree-hack-file-layout):
* lisp/progmodes/cc-mode.el (c-Java-defun-prompt-regexp):
* lisp/progmodes/idlw-shell.el (idlwave-shell-halting-error):
* lisp/progmodes/ruby-mode.el (ruby-mode-set-encoding):
* lisp/progmodes/verilog-mode.el (verilog-error-font-lock-keywords)
(verilog-verilint-off, verilog-case-indent-level)
(verilog-within-translate-off, verilog-start-translate-off)
(verilog-back-to-start-translate-off, verilog-end-translate-off)
(verilog-expand-dirnames):
* lisp/term.el (term-control-seq-regexp):
* lisp/textmodes/reftex-vars.el (featurep):
* lisp/url/url-gw.el (url-open-telnet):
* lisp/vc/ediff-ptch.el (ediff-context-diff-label-regexp):
* lisp/vc/pcvs-parse.el (cvs-parse-status):
* test/src/regex-emacs-tests.el (regex-tests-PCRE):
Remove subsumed repetitions.
* lisp/progmodes/sh-script.el (sh-syntax-propertize-function):
Simplify repetition of a repetition.
Mattias Engdegård [Mon, 17 Feb 2020 17:26:47 +0000 (18:26 +0100)]
Add and remove backslashes in regexps
These irregularities were found by relint; see
https://lists.gnu.org/archive/html/emacs-devel/2020-01/msg00949.html .
* doc/lispref/modes.texi (Example Major Modes):
* etc/srecode/el.srt:
* lisp/cedet/data-debug.el (data-debug-mode):
* lisp/cedet/semantic/grammar.el (semantic-grammar-mode):
* lisp/cedet/srecode/srt-mode.el (srecode-template-mode):
* lisp/comint.el (comint--unquote&requote-argument):
* lisp/emacs-lisp/lisp-mode.el (lisp-mode):
* lisp/gnus/mm-uu.el (mm-uu-type-alist):
* lisp/progmodes/cc-awk.el (c-awk-harmless-pattern-characters*):
* lisp/progmodes/cfengine.el (cfengine-common-settings):
* lisp/progmodes/cperl-mode.el (cperl-after-sub-regexp, cperl-init-faces):
* lisp/shell.el (shell-chdrive-regexp, shell--unquote&requote-argument):
* lisp/textmodes/tex-mode.el (tex-common-initialization):
Remove duplicated backslashes in character alternatives.
* lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2):
* lisp/progmodes/opascal.el (opascal--syntax-propertize):
* lisp/progmodes/pascal.el (pascal--syntax-propertize):
Remove backslashes escaping non-special characters.
* lisp/progmodes/fortran.el (fortran-font-lock-keywords-3): Escape '*'.
* lisp/progmodes/perl-mode.el (perl-syntax-propertize-function):
Escape '^'.
Mattias Engdegård [Wed, 19 Feb 2020 21:08:22 +0000 (22:08 +0100)]
Remove Emacs 20 bug workaround in ebnf2ps (bug#39663)
* lisp/progmodes/ebnf2ps.el (ebnf-range-regexp): Remove. All calls
replaced with a string equivalent to the returned value.
Lars Ingebrigtsen [Thu, 20 Feb 2020 14:15:07 +0000 (15:15 +0100)]
shr comment typo fix
* lisp/net/shr.el (shr-parse-base): Comment typo fix.
Lars Ingebrigtsen [Thu, 20 Feb 2020 14:14:39 +0000 (15:14 +0100)]
Fix problem with degenerate <html base="."> specs in shr
* lisp/url/url-expand.el (url-expand-file-name): Don't bug out on
degenerate base/expander pairs (bug#39235).
Lars Ingebrigtsen [Thu, 20 Feb 2020 13:44:16 +0000 (14:44 +0100)]
Fix <button>...</button> submit button rendering in eww
* lisp/net/eww.el (eww-form-submit): Use the contents of the
<button>...</button> for the string if there is no value
(bug#39326).
Kévin Le Gouguec [Thu, 20 Feb 2020 13:30:45 +0000 (14:30 +0100)]
Introduce face for <code> elements in shr
* lisp/net/shr.el (shr-tag-code): Don't use the `default' font,
because it has properties that will override surrounding elements
(like <a...>) (bug#39504).
Mattias Engdegård [Thu, 20 Feb 2020 10:25:25 +0000 (11:25 +0100)]
Fix broken regexps
Incorrect escaping prevented these from working as intended.
Found by relint.
* lisp/progmodes/cc-defs.el (c-search-backward-char-property):
Add missing backslash.
* lisp/progmodes/simula.el (simula-mode):
Remove one backslash too many.
Paul Eggert [Thu, 20 Feb 2020 01:54:00 +0000 (17:54 -0800)]
; spelling and comment fix
Paul Eggert [Thu, 20 Feb 2020 01:50:44 +0000 (17:50 -0800)]
; make change-history-commit
Paul Eggert [Thu, 20 Feb 2020 01:35:57 +0000 (17:35 -0800)]
* Makefile.in (PREFERRED_BRANCH): Now emacs-27.
Paul Eggert [Thu, 20 Feb 2020 01:21:16 +0000 (17:21 -0800)]
Fix bug when visiting euc-jp-encoded directories
Problem reported by Ken Sasaki (Bug#39672).
* src/fileio.c (Ffile_directory_p):
Encode filename before giving it to file_directory_p.
This fixes a typo introduced in
2019-09-18T02:18:14Z!eggert@cs.ucla.edu.
Paul Eggert [Wed, 19 Feb 2020 21:47:57 +0000 (13:47 -0800)]
Fix some file-modes races
* lisp/gnus/gnus-start.el (gnus-save-newsrc-file)
(gnus-slave-save-newsrc):
* lisp/gnus/gnus-uu.el (gnus-uu-initialize):
* lisp/gnus/mm-archive.el (mm-dissect-archive):
* lisp/gnus/mm-decode.el (mm-temp-files-delete)
(mm-display-external):
* lisp/image-dired.el (image-dired-create-thumb-1):
Use with-file-modes rather than setting the file modes later.
This fixes some race conditions where the file temporarily
has the wrong permissions.
Johan Bockgård [Wed, 19 Feb 2020 19:41:18 +0000 (20:41 +0100)]
Fix search for ~/.Xdefaults-HOSTNAME (again)
* src/xrdb.c (get_environ_db): Fix typo when handling
~/.Xdefaults-HOSTNAME.
Jeremy Compostella [Wed, 19 Feb 2020 13:51:43 +0000 (14:51 +0100)]
Fix conversion of text/html->multipart/related
* lisp/gnus/mml.el (mml-expand-all-html-into-multipart-related):
New function (bug#39230).
(mml-generate-mime): Use it to expand all HTML parts, no matter
where in the MIME tree.
Masahiro Nakamura [Thu, 13 Feb 2020 18:21:15 +0000 (03:21 +0900)]
Fix working text related issues on NS (Bug#38851)
* src/keyboard.c (read_char): Prevent redsiplay right after
ns-unput-working-text event.
* src/nsterm.m ([EmacsView insertText:]): Partially revert commit
ba04217.
([EmacsView firstRectForCharacterRange:]): Fix candidate window
position when cursor is on echoarea.
([EmacsView mouseDown:])
([EmacsView windowDidResignKey:]): Don't delete working text.
Alan Third [Fri, 14 Feb 2020 20:08:40 +0000 (20:08 +0000)]
Fix horizontal bit shifting
* src/nsterm.m ([EmacsView copyRect:to:]): Calculate the horizontal
difference instead of just the vertical.
([EmacsView updateLayer]): Fix NSTRACE message.
Paul Eggert [Wed, 19 Feb 2020 01:50:52 +0000 (17:50 -0800)]
* doc/misc/texinfo.tex: Update from Gnulib.
Juri Linkov [Tue, 18 Feb 2020 23:35:03 +0000 (01:35 +0200)]
Support state changing VC operations in dired-mode on files (bug#34949)
* lisp/vc/vc.el (vc-deduce-fileset): Don't error out when observer is nil.
(vc-dired-deduce-fileset): Add optional args 'state-model-only-files'
and 'observer'. Check that all files are in a consistent state
when state-model-only-files is non-nil. Error out on directories.
* lisp/vc/vc-dispatcher.el (vc-dispatcher-browsing): Check dired-mode
for derived-mode-p.
Stefan Monnier [Tue, 18 Feb 2020 17:47:32 +0000 (12:47 -0500)]
* lisp/wdired.el (wdired-next-line, wdired-previous-line): Preserve column
Paul Eggert [Mon, 17 Feb 2020 21:54:07 +0000 (13:54 -0800)]
Clarify when fixnums are used.
* doc/lispref/numbers.texi (Integer Basics): Clarify.
Based on a suggestion by Noam Postavsky (Bug#39557#32).
Paul Eggert [Mon, 17 Feb 2020 21:36:50 +0000 (13:36 -0800)]
Reorder discussion of integer basics
* doc/lispref/numbers.texi (Integer Basics): Put the fixnum/bignum
discussion at the end of the section, not at the start (Bug#39557).
Paul Eggert [Mon, 17 Feb 2020 20:44:10 +0000 (12:44 -0800)]
Avoid unlikely load-average bug
* src/fns.c (Fload_average): Do not crash or return nonsense
if the load average exceeds most-positive-fixnum/100 (Bug#39577).
Mattias Engdegård [Sat, 15 Feb 2020 15:08:14 +0000 (16:08 +0100)]
Make OMake support slightly less expensive (bug#39595)
When run with -p or -P, OMake regurgitates error messages that
prevented further progress, indented by 6 spaces. Use that fact
to ameliorate the modification done to other error message regexps.
* lisp/progmodes/compile.el (compilation-parse-errors):
When 'omake' is enabled, allow error messages to be indented by 0 or 6
spaces instead of any number of spaces, to avoid pathological
behaviour.
(compilation-error-regexp-alist-alist): Anchor the 'omake' pattern to
bol for performance. Repair the 'ruby-Test::Unit' pattern, which
relied on the previously over-generous 'omake' hack.
* etc/compilation.txt (OMake): Add examples.
* test/lisp/progmodes/compile-tests.el (compile-tests--test-regexps-data)
(compile-test-error-regexps): Add test for OMake (indented error).
Mattias Engdegård [Fri, 14 Feb 2020 22:38:24 +0000 (23:38 +0100)]
Speed up 'msft' and 'watcom' compilation error regexps
They have similar structure, and both suffer from being able to
match leading spaces in multiple ways which leads to bad performance
when backtracking (bug#39595).
* lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
Improved 'msft' and 'watcom' regexps.
Mattias Engdegård [Fri, 14 Feb 2020 20:26:20 +0000 (21:26 +0100)]
Speed up 'maven' compilation error message regexp
Anchor the regexp at line-start to prevent quadratic behaviour when
it doesn't match (bug#39595). It's unclear whether the type tag, like
[ERROR], is always present; we keep it optional just in case.
* lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
Rewrite 'maven' regexp, using rx for clarity.
* etc/compilation.txt (maven): More examples.
* test/lisp/progmodes/compile-tests.el
(compile-tests--test-regexps-data): No leading spaces; they seems to
stem from a misunderstanding in bug#11517.
Paul Eggert [Sun, 16 Feb 2020 19:36:19 +0000 (11:36 -0800)]
Improve C-h C-h bug fix
* src/lread.c (read1): Guard against two 'struct Lisp_Vector *'
pointers differing only in their most significant bit. Problem
reported by Pip Cet (Bug#39529#22).
Alan Mackenzie [Sun, 16 Feb 2020 17:46:02 +0000 (17:46 +0000)]
Amend c-backward-sws better to handle multiline block comments
In particular, multiline comments lacking escaped newlines.
* lisp/progmodes/cc-engine.el (c-backward-sws): Whilst searching backward for
a putative beginning of macro, move back over block comments whose innards
lack escaped newlines.
Glenn Morris [Sun, 16 Feb 2020 17:11:28 +0000 (09:11 -0800)]
* src/lread.c (read1): Fix int/Lisp_Object mix up.
Found by --enable-check-lisp-object-type.
Glenn Morris [Sun, 16 Feb 2020 15:50:36 +0000 (07:50 -0800)]
Merge from origin/emacs-27
7ceb45f61f (origin/emacs-27) Reformulate c-end-of-macro, handling mul...
888ffd960c Fix unexec failure on macOS 10.15.4
b392c9f365 Fix 'reverse-region' when less than one line is in region
7448834f73 Correct default regexp in 'package-menu-hide-package'
faada7ca42 Remove obsolete menu entry "Redisplay buffer"
78d76cd93c Remove redundant 'msft' compilation error rule (bug#39595)
75a9eee8b8 ; * src/editfns.c (Fbuffer_size): Tiny clarification.
4d8d25d641 * doc/lispref/variables.texi (special-variable-p): Clarify...
9f6a4bbcc9 Remove the optional KEEP-ORDER argument to regexp-opt
d1e8ce8bb6 Make after-change-functions called from call-process get t...
# Conflicts:
# etc/NEWS
Alan Mackenzie [Sun, 16 Feb 2020 12:14:41 +0000 (12:14 +0000)]
Reformulate c-end-of-macro, handling multiline block comments better
* lisp/progmodes/cc-langs.el (c-last-open-c-comment-start-on-line-re): Comment
out.
(c-open-c-comment-on-logical-line-re): Remove.
* lisp/progmodes/cc-engine.el (c-end-of-macro): Handle multiline block
comments lacking escaped newlines using parse-partial-sexp rather than the
former variables removed from cc-langs.el.
YAMAMOTO Mitsuharu [Sun, 16 Feb 2020 00:50:26 +0000 (09:50 +0900)]
Fix unexec failure on macOS 10.15.4
* src/unexmacosx.c (unexec_regions_merge): Align region start addresses to
page boundaries and then merge regions.
Paul Eggert [Sat, 15 Feb 2020 23:12:34 +0000 (15:12 -0800)]
Fix C-h C-h bug due to mutating a hash key
Problem reported by Federico Tedin (Bug#39529).
The problem was that dumping uses a hash table based on 'equal'
when purecopying compiled objects, but then modifies the compiled
objects while they are keys in the table. This no-no was uncovered
by the sxhash fixes in 2020-01-07T19:23:11Z!eggert@cs.ucla.edu.
Eli Zaretski pinpointed the patch that triggered the bug.
* src/lread.c (read1): When reading a compiled object, replace
its docstring with a unique negative integer instead of with 0,
so that purecopy doesn’t unify it with some other compiled object
that happens to have the same Lisp code.
Glenn Morris [Sat, 15 Feb 2020 17:11:34 +0000 (09:11 -0800)]
Remove another test for deleted lread feature
* test/lisp/emacs-lisp/bytecomp-tests.el
(bytecomp-tests--old-style-backquotes): Remove.
Eli Zaretskii [Sat, 15 Feb 2020 08:47:08 +0000 (10:47 +0200)]
Fix 'reverse-region' when less than one line is in region
* lisp/sort.el (reverse-region): Signal a user-error if the region
includes less than one full line, thus avoiding an inadvertent
deletion of text following the current line. Fix the doc string.
Fix comments to start with a capital letter. (Bug#39376)
Pieter van Oostrum [Sun, 9 Feb 2020 15:55:29 +0000 (16:55 +0100)]
Correct default regexp in 'package-menu-hide-package'
* lisp/emacs-lisp/package.el (package-menu-mode-menu): Correct default
regexp, so it only selects the package at point.
(Bug#39436)
Pieter van Oostrum [Sun, 9 Feb 2020 20:22:55 +0000 (21:22 +0100)]
Remove obsolete menu entry "Redisplay buffer"
* lisp/emacs-lisp/package.el (package-menu-mode-menu): Remove obsolete
menu entry "Redisplay buffer".
(package-menu-mode-menu): Menu entry "Refresh Package List":
make the doc string more accurate.
(Bug#39436)
Eli Zaretskii [Sat, 15 Feb 2020 07:28:45 +0000 (09:28 +0200)]
; * etc/NEWS: Fix wording in a recently added entry.
Mark Oteiza [Fri, 14 Feb 2020 23:01:11 +0000 (18:01 -0500)]
Fix typos
* src/lcms.c (lcms-xyz->jch, lcms-jch->xyz): Swap first line of docstrings.
Stefan Monnier [Fri, 14 Feb 2020 21:12:28 +0000 (16:12 -0500)]
* etc/NEWS: Improve last change
Eric Abrahamsen [Fri, 14 Feb 2020 19:56:58 +0000 (11:56 -0800)]
When searching a topic in Gnus, search all topic's groups
Bug#39515
* lisp/gnus/nnir.el (gnus-group-make-nnir-group): Bring the code in
line with the documentation, which says that all topic groups will be
searched, even if they're not visible.
Mattias Engdegård [Fri, 14 Feb 2020 19:25:57 +0000 (20:25 +0100)]
Remove redundant 'msft' compilation error rule (bug#39595)
When the 'msft' rule was moved and modified, the old copy was left
in place by mistake.
* lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
Remove old rule.
Glenn Morris [Fri, 14 Feb 2020 19:10:55 +0000 (11:10 -0800)]
Remove lread tests for a feature that was deleted
* test/src/lread-tests.el (lread-tests--old-style-backquotes)
(lread-tests--force-new-style-backquotes): Remove.
Stefan Monnier [Fri, 14 Feb 2020 16:18:00 +0000 (11:18 -0500)]
* src/lread.c: Remove old-style backquotes support
(new_backquote_flag): Delete variable.
(load_error_old_style_backquotes): Delete function.
(force_new_style_backquotes): Delete variable.
(read_internal_start): Don't obey it any more.
Stefan Monnier [Fri, 14 Feb 2020 16:05:57 +0000 (11:05 -0500)]
* lisp/gnus/nnmaildir.el: Fix O(n^2) problem when leaving a group
Use lexical-binding.
(nnmaildir-close-group): Use a hash-table rather than a list to keep
track of the files we have seen.
* lisp/gnus/nnheader.el (nnheader-parse-naked-head):
Use make-full-mail-header.
Stefan Monnier [Fri, 14 Feb 2020 15:52:58 +0000 (10:52 -0500)]
* lisp/simple.el (undo): Use undo--last-change-was-undo-p
Michael Albinus [Fri, 14 Feb 2020 13:50:55 +0000 (14:50 +0100)]
Fix Tramp tests for MS Windows
* test/lisp/net/tramp-tests.el (tramp-test29-start-file-process)
(tramp-test30-make-process): Improve for MS-Windows.
Mark Oteiza [Fri, 14 Feb 2020 00:57:44 +0000 (19:57 -0500)]
Add an appropriate error for reading bad JSON arrays
* lisp/json.el (json-array-format): New error.
(json-read-array): Use it.
Philipp Stephani [Thu, 13 Feb 2020 21:43:03 +0000 (22:43 +0100)]
; * src/editfns.c (Fbuffer_size): Tiny clarification.
Stefan Monnier [Thu, 13 Feb 2020 20:01:28 +0000 (15:01 -0500)]
* doc/lispref/variables.texi (special-variable-p): Clarify limits
Mattias Engdegård [Thu, 13 Feb 2020 19:06:48 +0000 (20:06 +0100)]
Remove the optional KEEP-ORDER argument to regexp-opt
This argument was added for the 'or' clause in rx, but it turned out
to be a bad idea (bug#37659), and there seems to be little other use
for it.
* lisp/emacs-lisp/regexp-opt.el (regexp-opt): Remove KEEP-ORDER.
* doc/lispref/searching.texi (Regexp Functions):
* etc/NEWS: Remove it from the documentation.
* test/lisp/emacs-lisp/regexp-opt-tests.el (regexp-opt-test--match-all)
(regexp-opt-test--check-perm, regexp-opt-test--explain-perm)
(regexp-opt-keep-order, regexp-opt-longest-match): Simplify test.
Alan Mackenzie [Thu, 13 Feb 2020 19:00:36 +0000 (19:00 +0000)]
Make after-change-functions called from call-process get the correct BEG
This fixes bug #39585.
* src/callproc.c (call_process): Supply the correct CHARPOS to
signal_after_change (twice).
Alan Third [Sat, 1 Feb 2020 21:17:29 +0000 (21:17 +0000)]
Use CGImage instead of NSBitmapImageRep (bug#32932)
* src/nsterm.m (ns_update_end):
(ns_clear_frame): Remove forced draws.
(ns_draw_fringe_bitmap):
(ns_dumpglyphs_image): No longer need to invert images as the context
is already flipped.
([EmacsView updateFrameSize:]):
([EmacsView initFrameFromEmacs:]): Use new function.
([EmacsView createDrawingBuffer]): Replaces createDrawingBufferWithRect:.
([EmacsView focusOnDrawingBuffer]): Set CGImage context.
([EmacsView windowDidChangeBackingProperties:]): Use new function.
([EmacsView copyRect:to:]): Copy using CGImages.
([EmacsView wantsUpdateLayer]):
([EmacsView updateLayer]): New Functions.
([EmacsView drawRect:]): We no longer do anything special here for
Cocoa.
([EmacsView windowDidChangeBackingProperties:]): Fix indentation and
add NSTRACE.
Glenn Morris [Thu, 13 Feb 2020 15:50:30 +0000 (07:50 -0800)]
Merge from origin/emacs-27
0304f53076 (origin/emacs-27) doc/misc/org.texi: Fix @dircategory
027da652a4 Fix display of minibuffer prompt in ido.el
5a21aaff46 rx: Use longest match for all-string 'or' forms (bug#37659)
2b12c2b6f2 Make sure not to mark directories
ff4ed4a0ff ; Add a TODO
3a5129a1c9 vc-hg-dir-status-files: Fix when DIR is not repository root
# Conflicts:
# etc/NEWS
Glenn Morris [Thu, 13 Feb 2020 15:50:26 +0000 (07:50 -0800)]
; Merge from origin/emacs-27
The following commit was skipped:
89d0c4451f Revert "Fix display of working text on NS (Bug#23412, Bug#...
Glenn Morris [Thu, 13 Feb 2020 15:50:24 +0000 (07:50 -0800)]
Merge from origin/emacs-27
ad5e350ab7 c-end-of-macro: Handle block coment lines with unescaped N...
06c302d425 Fix set-fontset-font with ADD arg non-nil
530067463b Correct "different than" to "different from" where appropr...
56b8768b32 More accurate documentation of 'package-menu-hide-package'
Michael Albinus [Thu, 13 Feb 2020 15:34:41 +0000 (16:34 +0100)]
Simplify Tramp caching
* lisp/net/tramp-cache.el (tramp-flush-file-upper-properties)
(tramp-flush-directory-properties)
(tramp-flush-connection-properties, tramp-list-connections)
(tramp-parse-connection-properties):
* lisp/net/tramp-gvfs.el (tramp-parse-goa-accounts)
(tramp-parse-media-names): Simplify cache handling.
Michael Albinus [Thu, 13 Feb 2020 15:34:07 +0000 (16:34 +0100)]
Fix `tramp-interrupt-process'
* lisp/net/tramp.el (tramp-interrupt-process): Improve command.
* test/lisp/net/tramp-tests.el (tramp-test06-directory-file-name)
(tramp-test26-file-name-completion): Simplify.
(tramp-test31-interrupt-process): Remove :unstable tag.
Bastien [Thu, 13 Feb 2020 08:41:38 +0000 (09:41 +0100)]
doc/misc/org.texi: Fix @dircategory
* doc/misc/org.texi: Fix @dircategory.
Eli Zaretskii [Wed, 12 Feb 2020 19:39:44 +0000 (21:39 +0200)]
Fix display of minibuffer prompt in ido.el
* lisp/minibuffer.el (minibuffer--message-overlay-pos): New
function.
(set-minibuffer-message): Use it to determine where to show the
overlay with the temporary message.
* lisp/ido.el (ido-exhibit): Revert "Render Ido suggestions using
an overlay"; this restores the original code which inserted the
match-status information into the minibuffer, instead of
displaying it in an overlay with an after-string. Put the special
'minibuffer-message' text property at the beginning of the
inserted text. (Bug#39379)
* etc/NEWS:
* doc/lispref/display.texi (Displaying Messages):
* doc/lispref/text.texi (Special Properties): Document the
'minibuffer-message' text property and its effect.
Michael Albinus [Wed, 12 Feb 2020 19:26:47 +0000 (20:26 +0100)]
Fix Tramp tests towards *BSD
* test/lisp/net/tramp-tests.el (tramp-get-remote-gid): Declare.
(tramp-test18-file-attributes): Check `file-ownership-preserved-p'
only if possible.
(tramp-test30-make-process): Modify test due to *BSD.
Mattias Engdegård [Tue, 11 Feb 2020 12:23:10 +0000 (13:23 +0100)]
rx: Use longest match for all-string 'or' forms (bug#37659)
Revert to the Emacs 26 semantics that always gave the longest match
for rx 'or' forms with only string arguments. This guarantee was
never well documented, but it is useful and people likely have come to
rely on it. For example, prior to this change,
(rx (or ">" ">="))
matched ">" even if the text contained ">=".
* lisp/emacs-lisp/rx.el (rx--translate-or): Don't tell regexp-opt to
preserve the matching order.
* doc/lispref/searching.texi (Rx Constructs): Document the
longest-match guarantee for all-string 'or' forms.
* test/lisp/emacs-lisp/rx-tests.el (rx-or): Update test.
Wolfgang Scherer [Tue, 11 Feb 2020 22:24:24 +0000 (00:24 +0200)]
Make sure not to mark directories
* lisp/vc/vc-dir.el (vc-dir-mark-all-files):
Make sure not to mark directories (bug#37182).
Dmitry Gutov [Tue, 11 Feb 2020 22:19:25 +0000 (00:19 +0200)]
; Add a TODO
Dmitry Gutov [Tue, 11 Feb 2020 21:45:52 +0000 (23:45 +0200)]
vc-hg-dir-status-files: Fix when DIR is not repository root
* lisp/vc/vc-hg.el (vc-hg-dir-status-files):
Make sure it works correctly in a subdirectory of the repo root.
Bind default-directory to DIR and add 're: -I .' to the arguments
(bug#39380).
Alan Third [Tue, 11 Feb 2020 17:27:11 +0000 (17:27 +0000)]
Revert "Fix display of working text on NS (Bug#23412, Bug#1453)"
This reverts commit
ba042176d8931cdf9441b3b4919ec74b75019494.
Do not merge to master (bug#38851)
Michael Albinus [Tue, 11 Feb 2020 08:49:06 +0000 (09:49 +0100)]
Fix problem with auth-source.el in Tramp
* lisp/net/tramp.el (tramp-read-passwd):
Use `tramp-compat-temporary-file-directory'. (Bug#39389, Bug#39489)
Alan Mackenzie [Mon, 10 Feb 2020 21:20:12 +0000 (21:20 +0000)]
c-end-of-macro: Handle block coment lines with unescaped NLs correctly
* lisp/progmodes/cc-langs.el (c-last-open-c-comment-start-on-line-re): Make
obsolete, and supersede by ...
(c-open-c-comment-on-logical-line-re): New language variable.
* lisp/progmodes/cc-engine.el (c-end-of-macro): Inside macros, handle
multiline block comments whose line ends are not escaped correctly.
Michael Albinus [Mon, 10 Feb 2020 18:59:49 +0000 (19:59 +0100)]
Fix window position in Tramp's shell-command
* lisp/net/tramp.el (tramp-handle-shell-command): Fix `window-start'
in output buffer. (Bug#39171)
Eli Zaretskii [Mon, 10 Feb 2020 16:51:41 +0000 (18:51 +0200)]
; Fix recently-committed documentation
* etc/NEWS:
* doc/emacs/fixit.texi (Undo): Fix documentation of a recently
introduced command 'undo-redo'.
Juri Linkov [Mon, 10 Feb 2020 00:49:36 +0000 (02:49 +0200)]
Use quit-restore-window to close tab (bug#39446)
* lisp/tab-bar.el (display-buffer-in-new-tab): New function with code
from display-buffer-in-tab.
(display-buffer-in-tab): Call display-buffer-in-new-tab.
(switch-to-buffer-other-tab): Instead of 'display-buffer-same-window'
use '(reusable-frames . t)'.
* lisp/windmove.el (windmove-display-in-direction): Set arg 'type'
to 'tab' for window--display-buffer when creating a new tab.
* lisp/window.el (quit-restore-window): Call tab-bar-close-tab
when quit-restore type is 'tab'.
(display-buffer-record-window): Set window-parameter 'quit-restore'
to 'tab' for type 'tab'.
(window--display-buffer): Set window-prev-buffers to nil for tab too.
Eli Zaretskii [Sun, 9 Feb 2020 17:18:38 +0000 (19:18 +0200)]
Fix set-fontset-font with ADD arg non-nil
* src/fontset.c (fontset_add): Fix off-by-one error at TO.
(Bug#39482)
Alan Mackenzie [Sun, 9 Feb 2020 14:33:14 +0000 (14:33 +0000)]
Correct "different than" to "different from" where appropriate
(doc/emacs/screen.texi)
(doc/lispintro/emacs-lisp-intro.texi)
(doc/misc/calc.texi)
(doc/misc/gnus.texi)
(doc/misc/sc.texi)
(lisp/align.el)
(lisp/allout-widgets.el)
(lisp/allout.el)
(lisp/emacs-lisp/gv.el)
(lisp/font-lock.el)
(lisp/gnus/mm-util.el)
(lisp/mail/feedmail.el)
(lisp/mail/sendmail.el)
(lisp/mail/supercite.el)
(lisp/org/org-attach.el)
(lisp/progmodes/cc-langs.el)
(lisp/progmodes/idlw-shell.el)
(lisp/ps-print.el)
(lisp/simple.el)
(src/cmds.c)
(src/editfns.c)
(src/frame.h)
(src/regex-emacs.c)
(src/xfaces.c): Replace "different than" by "different from".
Paul Eggert [Sun, 9 Feb 2020 08:44:11 +0000 (00:44 -0800)]
Update from Gnulib
This incorporates:
2020-02-08 lchmod: ensure declaration on HP-UX
2020-02-08 fchmodat: fix endless recursion on Cygwin
2020-02-08 Fix compilation errors in a testdir
2020-02-07 fchmodat: AT_SYMLINK_NOFOLLOW fix for non-symlinks
2020-02-04 Port _Noreturn to older Clang
2020-02-03 libc-config: port to Apple’s Clang variant
* lib/_Noreturn.h, lib/c++defs.h, lib/libc-config.h, lib/sys_stat.in.h:
* m4/gnulib-common.m4, m4/sys_stat_h.m4: Copy from Gnulib.
* lib/gnulib.mk.in: Regenerate.
Stefan Monnier [Sun, 9 Feb 2020 03:06:41 +0000 (22:06 -0500)]
* lisp/simple.el (undo-redo): New command
(undo--last-change-was-undo-p): New function.
* test/lisp/simple-tests.el (simple-tests--exec): New function.
(simple-tests--undo): New test.
Eli Zaretskii [Sat, 8 Feb 2020 13:41:36 +0000 (15:41 +0200)]
Allow composition of pure-ASCII strings in the mode line
* src/composite.c (Fcomposition_get_gstring): Allow unibyte
strings if they are pure ASCII, by copying text into a
multibyte string.
Kyle Hubert [Fri, 31 Jan 2020 14:29:43 +0000 (09:29 -0500)]
Improve prefix arg support in 'ediff-scroll-horizontally'
* lisp/vc/ediff-util.el (ediff-scroll-horizontally): Use
'current-prefix-arg' to pass the value of prefix argument to
scrolling commands. (Bug#39353)
Copyright-paperwork-exempt: yes
Yuan Fu [Sun, 6 Oct 2019 02:42:07 +0000 (22:42 -0400)]
Enhance memory address evaluation in gdb-mi
Before, the memory buffer evaluated the expression as address and used
the fixed result in each stop. This change store the expression
itself and reevaluates it in each stop to yield an address.
We also add a warning (a red bold exclamation mark) on the header line
when the content of the page doesn't represent the memory location
user requested for. That happends when some error occurs in
evaluating the address, and we display the last successfully displayed
memory page.
* lisp/progmodes/gdb-mi.el (gdb-memory-address-expression)
(gdb--memory-display-warning): New variables.
(gdb-memory-address): Change default value to nil; add docstring.
(def-gdb-trigger-and-handler, gdb-invalidate-memory)
(gdb-memory-set-address): Replace 'gdb-memory-address' with
'gdb-memory-address-expression'.
(gdb-memory-header): Add code to display
'gdb-memory-address-expression' on header line. Move the mouse event
from address to expression. Add code to display the warning.
(gdb-memory-header): Fix the error from
'propertize' when 'gdb-memory-address-expression' or
'gdb-memory-address' is nil.
(gdb-read-memory-custom): Change 'error' to 'user-error'. Add code to
display the warning. (Bug#39180)
Eli Zaretskii [Sat, 8 Feb 2020 09:38:52 +0000 (11:38 +0200)]
More accurate documentation of 'package-menu-hide-package'
* doc/emacs/package.texi (Package Menu): Improve the description
of the 'H' command.
* lisp/emacs-lisp/package.el (package-menu-mode-menu): More
accurate wording of the help-echo string.
(package-menu-hide-package): Make the doc string more accurate.
(Bug#39436)
Michael Albinus [Fri, 7 Feb 2020 10:56:13 +0000 (11:56 +0100)]
Some Tramp fixes
* lisp/net/tramp.el (tramp-connectable-p):
* lisp/net/tramp-cache.el (tramp-list-connections):
* lisp/net/tramp-gvfs.el (tramp-gvfs-enabled):
Bind `tramp-verbose' to 0.
* lisp/net/tramp-sh.el (tramp-remote-path, tramp-find-executable):
Fix docstring.
(tramp-open-shell): Read prompt when moving "~/.editrc".
Eli Zaretskii [Fri, 7 Feb 2020 10:10:43 +0000 (12:10 +0200)]
Minor fixes of the last commit
* src/xdisp.c (get_window_cursor_type): Fix indentation and
line-filling.
* doc/lispref/frames.texi (Cursor Parameters):
* doc/emacs/display.texi (Cursor Display):
* etc/NEWS: Fix wording and capitalization of the last change.
Zajcev Evgeny [Mon, 27 Jan 2020 12:49:46 +0000 (15:49 +0300)]
Support for (box . SIZE) 'cursor-type'
This allows control of the minimum size of a masked image under
which the box cursor becomes hollow.
* buffer.c (cursor-type): Add commentary about (box . SIZE)
'cursor-type'.
* xdisp.c (get_specified_cursor_type): Check for 'cursor-type'
of the form (box . SIZE).
(get_window_cursor_type): Check masked image size for
(box . SIZE) 'cursor-type'.
* doc/emacs/display.texi (Cursor Display):
* doc/emacs/display.texi (Cursor Parameters): Add description
of (box . SIZE) 'cursor-type'.
* etc/NEWS: Mention the new (box . SIZE) 'cursor-type'.
Richard Stallman [Thu, 6 Feb 2020 23:30:47 +0000 (18:30 -0500)]
Merge
Richard Stallman [Thu, 6 Feb 2020 23:28:49 +0000 (18:28 -0500)]
Lispref: Explain avoiding lambdas on hooks.
(lispref/modes.texi): Explain avoiding lambdas on hooks.
Glenn Morris [Thu, 6 Feb 2020 15:50:29 +0000 (07:50 -0800)]
; Merge from origin/emacs-27
The following commit was skipped:
b2e27d8617 (origin/emacs-27) Revert "Signal user-error on duplicate p...
Glenn Morris [Thu, 6 Feb 2020 15:50:29 +0000 (07:50 -0800)]
Merge from origin/emacs-27
09eed01afb Wrap some set-auto-mode calls with delay-mode-hooks (bug#3...
4a0a114505 Support ido-vertical-mode better
ef5fba9f40 Fix faces tab-bar and tab-line.
831508422e Cater for 3-argument version of pthread_setname_np
f27187f963 Clarify lexvar restrictions for add-to-ordered-list, add-t...
32763dac46 Replace add-to-list to lexical variable with push (bug#39373)
d07f177382 Clarify add-to-list documentation (bug#39373)
d3d2ea927c MH-E: alter content in mh-display-msg, not mh-show-mode
db7fa2546f Update documentation for mh-show-mode-hook
d10be6bf28 Example goto-addr hook: MH-E already uses goto-address
# Conflicts:
# etc/NEWS
Stefan Monnier [Thu, 6 Feb 2020 15:41:26 +0000 (10:41 -0500)]
* lisp/battery.el: Use lexical-binding. Drop Redundant `:group`s.
Zajcev Evgeny [Thu, 6 Feb 2020 07:35:12 +0000 (10:35 +0300)]
Make 'M-x battery RET' work out-of-box for UPower users.
* battery.el (battery-upower-prop): Removed in favor for
'battery-upower-device-property'.
(battery-upower-device): Can be nil, meaning autodetect the battery
device.
(battery-upower-line-power-device): New. line-power device. Can be
nil, meaning autodetect line-power device.
(battery-status-function): Check UPower service is available to use
'battery-upower' as status function.
(battery-upower): Speedup. Request D-Bus only once, fetching all
the properties at once. Provide string for "%b" format spec.
(battery-upower-device-list, battery-upower-device-all-properties,
battery-upower-device-property): New functions to work with UPower
devices.
(battery-upower-dbus-service, battery-upower-dbus-interface,
battery-upower-dbus-path, battery-upower-dbus-device-interface,
battery-upower-dbus-device-path): New constants describing UPower
D-Bus service.
Stefan Kangas [Thu, 6 Feb 2020 12:30:33 +0000 (13:30 +0100)]
Revert "Signal user-error on duplicate package refresh"
That commit caused errors when the connection was dropped in the
middle of a package refresh. To avoid any further issues this close
to the pretest, we simply remove this feature. (Bug#39187)
Don't merge to master, where we will instead try to fix the bug.
Juri Linkov [Wed, 5 Feb 2020 22:38:53 +0000 (00:38 +0200)]
Wrap some set-auto-mode calls with delay-mode-hooks (bug#39190)
* lisp/gnus/mm-view.el (mm-display-inline-fontify):
* lisp/vc/diff-mode.el (diff-syntax-fontify-props):
* lisp/vc/vc.el (vc-find-revision-no-save):
Add delay-mode-hooks around set-auto-mode calls
to not run hooks that might assume buffer-file-name
really associates buffer with a file.
Juri Linkov [Wed, 5 Feb 2020 22:27:37 +0000 (00:27 +0200)]
* lisp/wid-edit.el (widget-choose): Use read-char-from-minibuffer (bug#17272)
Tino Calancha [Wed, 5 Feb 2020 18:05:23 +0000 (19:05 +0100)]
Eval macro arg just once
* lisp/emacs-lisp/cl-macs.el (cl--push-clause-loop-body):
Use `macroexp-let2' (Bug#39428).
Tassilo Horn [Wed, 5 Feb 2020 17:07:09 +0000 (18:07 +0100)]
Add ':extend t' to mm-uu-extract face
* lisp/gnus/mm-uu.el (mm-uu-extract): Add ':extend t' to mm-uu-extract
face.
Stefan Kangas [Wed, 5 Feb 2020 12:28:31 +0000 (13:28 +0100)]
Silence byte-compiler warning
* lisp/emacs-lisp/bytecomp.el (byte-compile-insert-header): Silence
byte-compiler warning about "Unused lexical variable".
Stefan Kangas [Wed, 5 Feb 2020 12:22:56 +0000 (13:22 +0100)]
Don't use obsolete function in package-tests.el
* test/lisp/emacs-lisp/package-tests.el
(package-test-update-archives, package-test-signed): Use
'revert-buffer' instead of obsolete 'package-menu-refresh'.
Stefan Kangas [Wed, 5 Feb 2020 12:12:01 +0000 (13:12 +0100)]
Add new filter commands to Package Menu (Bug#38424)
* lisp/emacs-lisp/package.el (package-menu-filter-by-version)
(package-menu-filter-by-status, package-menu-filter-by-archive):
New filter commands.
(package-menu--filter-by): New helper function.
(package-menu-filter-by-keyword, package-menu-filter-by-name): Use
the above helper function.
(package-menu-mode-menu):
(package-menu-mode-map): Update menu to include new filter commands.
* doc/emacs/package.texi (Package Menu): Document the new commands and
re-arrange the sort order of commands to be closer to the one in
describe-major-mode.
* etc/NEWS: Announce the new commands.
* lisp/emacs-lisp/package.el (package-menu--display): New function
extracted from....
(package-menu--generate): ...here.
* test/lisp/emacs-lisp/package-tests.el (with-package-menu-test):
New macro.
(package-test-update-listing, package-test-list-filter-by-name)
(package-test-list-filter-clear): Use above macro.
(package-test-list-filter-by-archive)
(package-test-list-filter-by-keyword)
(package-test-list-filter-by-status)
(package-test-list-filter-by-version-=)
(package-test-list-filter-by-version-<)
(package-test-list-filter-by-version->): New tests.
(package-test-filter-by-version): New helper function.
Michael Albinus [Wed, 5 Feb 2020 10:41:14 +0000 (11:41 +0100)]
Minor fix in tramp-test32-shell-command
* test/lisp/net/tramp-tests.el (tramp-test32-shell-command):
Set `default-directory'.
Michael Albinus [Wed, 5 Feb 2020 10:40:52 +0000 (11:40 +0100)]
Handle problem with *BSD libedit in Tramp
* lisp/net/tramp-sh.el (tramp-sh-extra-args): Add "-noediting" as
bash arg.
(tramp-open-shell): Provide proper "~/.editrc" if needed. (Bug#39399)
Michael Albinus [Wed, 5 Feb 2020 10:40:06 +0000 (11:40 +0100)]
* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-system-info): Fix error.