]> git.eshelyaron.com Git - emacs.git/log
emacs.git
3 years agoFurther tweak minibuffer-inactive-mode doc string
Lars Ingebrigtsen [Thu, 12 Aug 2021 15:15:47 +0000 (17:15 +0200)]
Further tweak minibuffer-inactive-mode doc string

* lisp/minibuffer.el (minibuffer-inactive-mode): Mention
`minibuffer-exit-hook' (bug#13641).

3 years agoImprove minibuffer-inactive-mode documentation
Lars Ingebrigtsen [Thu, 12 Aug 2021 15:14:36 +0000 (17:14 +0200)]
Improve minibuffer-inactive-mode documentation

* lisp/minibuffer.el (minibuffer-inactive-mode): Clarify when it's
used (bug#13641).

3 years agoMention url-handler-mode in the Emacs manual
Lars Ingebrigtsen [Thu, 12 Aug 2021 14:50:54 +0000 (16:50 +0200)]
Mention url-handler-mode in the Emacs manual

* doc/emacs/misc.texi (Browse-URL): Mention url-handler-mode
(bug#30389).

* lisp/url/url-handlers.el (url-handler-mode): Improve doc string.

3 years ago* lisp/emacs-lisp/pcase.el (pcase-setq): Align its semantics with `pcase-let`
Stefan Monnier [Thu, 12 Aug 2021 15:04:30 +0000 (11:04 -0400)]
* lisp/emacs-lisp/pcase.el (pcase-setq): Align its semantics with `pcase-let`

* test/lisp/emacs-lisp/pcase-tests.el (pcase-tests-setq): Rename from
pcase-setq and ajust accordingly.

3 years agoAdd support for Python mode in info-lookup-symbol
Lars Ingebrigtsen [Thu, 12 Aug 2021 14:10:57 +0000 (16:10 +0200)]
Add support for Python mode in info-lookup-symbol

* lisp/info-look.el (:mode): Add support for Python mode
(bug#31405).

3 years agoClarify smie-indent-forward-token doc string
Lars Ingebrigtsen [Thu, 12 Aug 2021 13:39:36 +0000 (15:39 +0200)]
Clarify smie-indent-forward-token doc string

* lisp/emacs-lisp/smie.el (smie-indent-forward-token): Doc string
clarification (bug#31948).

3 years agoChange the `region' face in the Wombat theme
Lars Ingebrigtsen [Thu, 12 Aug 2021 13:34:36 +0000 (15:34 +0200)]
Change the `region' face in the Wombat theme

* etc/themes/wombat-theme.el (class): Don't use a foreground in
the `region' face because it obscures syntax highlighting (bug#32143).

3 years agoMention `find-ignore-file' in the vc.el commentary
Omar Polo [Thu, 12 Aug 2021 12:59:45 +0000 (14:59 +0200)]
Mention `find-ignore-file' in the vc.el commentary

* lisp/vc/vc.el: Update documentation in the comments about
`find-ignore-file' (bug#50013).

3 years agoAdd XLFD font parsing tests
Lars Ingebrigtsen [Thu, 12 Aug 2021 12:18:08 +0000 (14:18 +0200)]
Add XLFD font parsing tests

* test/src/font-tests.el (font-parse-xlfd-test): Add some tests
for XLFD testing (bug#35816).

3 years ago* lisp/emacs-lisp/cl-macs.el (fixnum, bignum): Fix type definitions
Stefan Monnier [Thu, 12 Aug 2021 02:42:06 +0000 (22:42 -0400)]
* lisp/emacs-lisp/cl-macs.el (fixnum, bignum): Fix type definitions

3 years agoFix bytecomp container test case
Lars Ingebrigtsen [Wed, 11 Aug 2021 23:19:26 +0000 (01:19 +0200)]
Fix bytecomp container test case

* lisp/startup.el (normal-top-level): Make startup more robust --
we may not be allowed to create any directories when running under
test mode (bug#48350).

3 years ago* lisp/obsolete/cl.el (labels): Don't quote lambda
Stefan Monnier [Wed, 11 Aug 2021 22:20:35 +0000 (18:20 -0400)]
* lisp/obsolete/cl.el (labels): Don't quote lambda

(flet): Don't need `fboundp` any more before calling `symbol-function`.

3 years agoAdd a `pcase-setq' macro
Earl Hyatt [Wed, 11 Aug 2021 21:54:31 +0000 (23:54 +0200)]
Add a `pcase-setq' macro

* doc/lispref/control.texi (Destructuring with pcase Patterns):
Document this macro.

* lisp/emacs-lisp/pcase.el (pcase-setq): New macro.  This macro is
the 'setq' equivalent of 'pcase-let'.

* test/lisp/emacs-lisp/pcase-tests.el (pcase-setq): Test this new
macro. (bug#49809).

3 years agoAllow using a single anonymous face in enriced-mode
Lars Ingebrigtsen [Wed, 11 Aug 2021 20:29:38 +0000 (22:29 +0200)]
Allow using a single anonymous face in enriced-mode

* lisp/format.el (format-annotate-single-property-change): Allow
using a single anonymous face (bug#33682).

3 years agoAllow using XLFD font names with dashes in the family name
Lars Ingebrigtsen [Wed, 11 Aug 2021 20:07:13 +0000 (22:07 +0200)]
Allow using XLFD font names with dashes in the family name

* src/font.c (font_parse_xlfd_1): Rename from font_parse_xlfd to
allow calling twice from a wrapper (bug#35816).
(font_parse_xlfd): Wrapper function -- first try to parse in the
normal way, and then try to guess that the hyphenated bits are in
the family name.

3 years agoAllow `tex-buffer' to work on buffers not visiting files
Lars Ingebrigtsen [Wed, 11 Aug 2021 19:26:29 +0000 (21:26 +0200)]
Allow `tex-buffer' to work on buffers not visiting files

* lisp/textmodes/tex-mode.el (tex-region): Make `tex-buffer' work
again on unsaved files (bug#34082).

3 years agoFix URL entry in ffap after previous change
Stephen Berman [Wed, 11 Aug 2021 16:06:13 +0000 (18:06 +0200)]
Fix URL entry in ffap after previous change

* lisp/ffap.el (ffap-read-file-or-url): Make URL entry actually
work again (bug#50011).

3 years agoAdd new image-dired commands
Peter Münster [Wed, 11 Aug 2021 16:02:25 +0000 (18:02 +0200)]
Add new image-dired commands

* lisp/image-dired.el (image-dired-delete-marked): Factored out
(bug#50000).
(image-dired-display-thumbs): From here.
(image-dired-tag-marked-thumbnails): New command.
(image-dired-delete-marked): Ditto.

3 years agoReplace some `string-match-p' calls in Tramp
Michael Albinus [Wed, 11 Aug 2021 13:34:43 +0000 (15:34 +0200)]
Replace some `string-match-p' calls in Tramp

* lisp/net/tramp.el (tramp-debug-message, tramp-set-completion-function)
(tramp-get-completion-methods, tramp-get-completion-user-host):
* lisp/net/tramp-adb.el (tramp-adb-handle-make-process):
* lisp/net/tramp-sh.el (tramp-sh-handle-make-process)
(tramp-open-connection-setup-interactive-shell)
(tramp-convert-file-attributes): Use `string-prefix-p'.

* lisp/net/tramp.el (tramp-dissect-file-name)
(tramp-progress-reporter-update, tramp-handle-insert-directory):
* lisp/net/tramp-cache.el (tramp-get-hash-table)
(tramp-flush-directory-properties):
* lisp/net/tramp-cmds.el (tramp-append-tramp-buffers):
* lisp/net/tramp-sh.el (tramp-sh-handle-insert-directory)
(tramp-call-local-coding-command, tramp-get-inline-coding):
* lisp/net/tramp-smb.el (tramp-smb-handle-file-attributes)
(tramp-smb-handle-file-name-all-completions)
(tramp-smb-handle-file-writable-p)
(tramp-smb-handle-insert-directory)
(tramp-smb-handle-start-file-process, )
(tramp-smb-read-file-entry): Use `tramp-compat-string-search'.

3 years agoMake icalendar parse multi-line items correctly
Rajeev Narang [Wed, 11 Aug 2021 12:57:43 +0000 (14:57 +0200)]
Make icalendar parse multi-line items correctly

* lisp/calendar/icalendar.el (icalendar--parse-summary-and-rest):
Parse multi-line items correctly (bug#37887).

3 years agoFix icalendar-import-file prompt
Lars Ingebrigtsen [Wed, 11 Aug 2021 12:54:20 +0000 (14:54 +0200)]
Fix icalendar-import-file prompt

* lisp/calendar/icalendar.el (icalendar-import-file): Fix prompt.

3 years agoMake gnus-icalendar-event-from-ical more robust
Lars Ingebrigtsen [Wed, 11 Aug 2021 12:52:32 +0000 (14:52 +0200)]
Make gnus-icalendar-event-from-ical more robust

* lisp/gnus/gnus-icalendar.el (gnus-icalendar-event-from-ical):
Don't bug out on nil UIDs.

3 years agoDrop redundant keywords in .desktop files.
Peter Oliver [Sat, 10 Jul 2021 11:01:57 +0000 (12:01 +0100)]
Drop redundant keywords in .desktop files.

The Freedesktop.org Desktop Entry spec says, “The values [of
Keywords]… should not be redundant with the values of Name or
GenericName”.

* etc/emacs.desktop, etc/emacsclient.desktop (Keywords): Remove
keywords that are duplicated from the GenericName field.

3 years agoHint that emacsclient.desktop should match a search for “emacsclient”
Peter Oliver [Sat, 10 Jul 2021 11:01:09 +0000 (12:01 +0100)]
Hint that emacsclient.desktop should match a search for “emacsclient”

This is necessary to get the Gnome desktop to show “Emacs (Client)”
when the user searches for “emacsclient”.

* etc/emacsclient.desktop, emacsclient-mail.desktop (Keywords): Add
“emacsclient”.

3 years agoValid quoting in .desktop files
Peter Oliver [Wed, 7 Jul 2021 21:04:01 +0000 (22:04 +0100)]
Valid quoting in .desktop files

* etc/emacsclient.desktop, emacsclient-mail.desktop (Exec): Quote
according to the rules in the Freedesktop.org Desktop Entry
Specification.

3 years agoMark marked images in Image-Dired mode
Peter Münster [Wed, 11 Aug 2021 12:03:23 +0000 (14:03 +0200)]
Mark marked images in Image-Dired mode

* lisp/image-dired.el (image-dired-thumb-update-marks): New
function that makes the marks visible in the thumbnail buffer
(bug#49988).
(image-dired-thumb-margin, image-dired-thumb-mark-color): New user
options.

3 years agoLet image-dired-mouse-toggle-mark act on active region
Peter Münster [Wed, 11 Aug 2021 11:39:53 +0000 (13:39 +0200)]
Let image-dired-mouse-toggle-mark act on active region

* lisp/image-dired.el (image-dired-mouse-toggle-mark): When region is
active, then toggle marks of all images within (bug#49987).
(image-dired-mouse-toggle-mark-1): Separated out into function.

3 years ago; Fix typos
Juri Linkov [Wed, 11 Aug 2021 07:10:19 +0000 (10:10 +0300)]
; Fix typos

3 years ago* lisp/replace.el (perform-replace): Use 'remove-function' (bug#49963).
Juri Linkov [Wed, 11 Aug 2021 07:06:29 +0000 (10:06 +0300)]
* lisp/replace.el (perform-replace): Use 'remove-function' (bug#49963).

Don't let-bind the value of 'isearch-filter-predicate' to protect
from changing the global value, since with a buffer-local value
it still changes the global value.  So after using 'add-function' on the
global value of 'isearch-filter-predicate', call 'remove-function' to remove
'region-filter' from the global value in 'unwind-protect'.

3 years agoUse ### for outline headings in shell-script-mode
Lars Ingebrigtsen [Tue, 10 Aug 2021 16:21:15 +0000 (18:21 +0200)]
Use ### for outline headings in shell-script-mode

* lisp/progmodes/sh-script.el (sh-mode): Use ### for outline headings.
This aligns it more with emacs-lisp-mode headings.

3 years agoAdd support for outlining in shell-script-mode
Lars Ingebrigtsen [Tue, 10 Aug 2021 15:52:26 +0000 (17:52 +0200)]
Add support for outlining in shell-script-mode

* lisp/progmodes/sh-script.el (sh-mode): Set outline-regexp (bug#49346).

3 years agoAdd new user option `gnus-topic-prepare-topic'
Lars Ingebrigtsen [Tue, 10 Aug 2021 15:29:07 +0000 (17:29 +0200)]
Add new user option `gnus-topic-prepare-topic'

* doc/misc/gnus.texi (Topic Variables): Document it.
* lisp/gnus/gnus-topic.el (gnus-topic-prepare-topic): New user option.
(gnus-topic-prepare-topic): Use it.

3 years agoMore robust auto-detect of grep-highlight-matches (bug#49978)
Mattias Engdegård [Tue, 10 Aug 2021 15:04:34 +0000 (17:04 +0200)]
More robust auto-detect of grep-highlight-matches (bug#49978)

* lisp/progmodes/grep.el (grep-compute-defaults):
Don't require "grep --help" to finish with exit status 0 (BSD grep
does not) and check the output in a slightly more robust way.

3 years agoAdd a new command `revert-buffer-quick'
Lars Ingebrigtsen [Tue, 10 Aug 2021 14:40:58 +0000 (16:40 +0200)]
Add a new command `revert-buffer-quick'

* doc/emacs/files.texi (Reverting): Document it.
* lisp/bindings.el (ctl-x-x-map): Bind `C-x x g' to
`revert-buffer-quick' instead.

* lisp/files.el (revert-buffer-quick-short-answers): New user option.
(revert-buffer-quick): New command (bug#49869).

3 years agoFix nnrss-get-namespace-prefix (bug#34685)
Benjamin Riefenstahl [Tue, 10 Aug 2021 13:47:50 +0000 (15:47 +0200)]
Fix nnrss-get-namespace-prefix (bug#34685)

* lisp/gnus/nnrss.el (nnrss-get-namespace-prefix): Use the car of
parameter el to match what dom-search expects.
* test/lisp/gnus/nnrss-tests.el (test-nnrss-xml): Adjust to what
xml-parse-region produces (bug#34685).

3 years agoTramp string-search and string-replace compatibility functions
Mattias Engdegård [Tue, 10 Aug 2021 13:05:51 +0000 (15:05 +0200)]
Tramp string-search and string-replace compatibility functions

Add a `string-search` compatibility function for use in Tramp with
Emacs version prior to 28, and fix the existing `string-replace`
compatibility function so that it uses the right semantics.

* lisp/net/tramp-compat.el (tramp-compat-string-replace):
Use case-sensitive matching and literal replacement.
(tramp-compat-string-search): New function.
* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-name-all-completions):
* lisp/net/tramp-sh.el (tramp-sh-handle-file-name-all-completions)
(tramp-do-copy-or-rename-file-out-of-band)
(tramp-sh-handle-make-process, tramp-sh-handle-process-file):
* lisp/net/tramp.el (tramp-handle-make-process):
Use `tramp-compat-string-search` instead of `string-match-p`.

3 years ago* lisp/emacs-lisp/cl-generic.el: Try and fix bug#49866
Stefan Monnier [Mon, 9 Aug 2021 23:03:01 +0000 (19:03 -0400)]
* lisp/emacs-lisp/cl-generic.el: Try and fix bug#49866

(cl-generic-generalizers): Remember the specializers that match
a given value.
(cl--generic-eql-generalizer): Adjust accordingly.

* test/lisp/emacs-lisp/cl-generic-tests.el (cl-generic-test-01-eql):
Add corresponding test.

3 years ago* lisp/emacs-lisp/package.el (package-buffer-info): Fix typo
Stefan Monnier [Mon, 9 Aug 2021 22:55:25 +0000 (18:55 -0400)]
* lisp/emacs-lisp/package.el (package-buffer-info): Fix typo

3 years ago* lisp/emacs-lisp/package.el (package-buffer-info): Use lm-maintainers
Stefan Monnier [Mon, 9 Aug 2021 16:05:22 +0000 (12:05 -0400)]
* lisp/emacs-lisp/package.el (package-buffer-info): Use lm-maintainers

Avoid the now obsolete `lm-maintainer`.

3 years agoMake ffap-read-file-or-url put point at the correct place for URLs
Lars Ingebrigtsen [Mon, 9 Aug 2021 14:03:02 +0000 (16:03 +0200)]
Make ffap-read-file-or-url put point at the correct place for URLs

* lisp/ffap.el (ffap-read-file-or-url): Put point at the end of
URLs (bug#44822).
(ffap--url-file-handler): Remove hack for default dirs.

3 years agoForestall "Selected deleted buffer" in url-http-generic-filter
dickmao [Mon, 9 Aug 2021 13:46:00 +0000 (15:46 +0200)]
Forestall "Selected deleted buffer" in url-http-generic-filter

* lisp/url/url-http.el (url-http-generic-filter): Check that
corresponding buffer is still live before using it (bug#49928).

3 years agoMake xterm-set-window-title more robust
Lars Ingebrigtsen [Mon, 9 Aug 2021 13:43:01 +0000 (15:43 +0200)]
Make xterm-set-window-title more robust

* lisp/term/xterm.el (xterm-set-window-title): Don't do anything
on graphic displays (bug#49932).

3 years agoFix tmm-get-keymap under native-compile
Lars Ingebrigtsen [Mon, 9 Aug 2021 13:19:45 +0000 (15:19 +0200)]
Fix tmm-get-keymap under native-compile

* lisp/tmm.el (tmm-get-keymap): Make this work under
natively-compiled Emacsen (and with lexical binding, too) (bug#49953).

3 years agoFurther fixes for package-quickstart-refresh printing
Lars Ingebrigtsen [Mon, 9 Aug 2021 12:47:01 +0000 (14:47 +0200)]
Further fixes for package-quickstart-refresh printing

* lisp/emacs-lisp/package.el (package-quickstart-refresh): Really
ensure that the structures aren't shortened (bug#49924).

3 years agoFix last commit of tramp.el
Michael Albinus [Mon, 9 Aug 2021 12:45:43 +0000 (14:45 +0200)]
Fix last commit of tramp.el

3 years agoFix freeze on OpenBSD when reading the SECONDARY selection
Grégoire Jadi [Mon, 9 Aug 2021 12:25:36 +0000 (14:25 +0200)]
Fix freeze on OpenBSD when reading the SECONDARY selection

* configure.ac (NSIG_MINIMUM): OpenBSD doesn't have a broken SIGIO
any more (bug#29170).  Backport fix from the current OpenBSD port
tree.

3 years agoAdd test for nnrss
Benjamin Riefenstahl [Mon, 9 Aug 2021 12:14:33 +0000 (14:14 +0200)]
Add test for nnrss

* test/lisp/gnus/nnrss-tests.el (test-nnrss-xml): New test (bug#34685).

3 years agoAdd a new test for dom-search
Lars Ingebrigtsen [Mon, 9 Aug 2021 12:14:01 +0000 (14:14 +0200)]
Add a new test for dom-search

3 years agoFix variable binding in calendar (bug#49945)
Mattias Engdegård [Mon, 9 Aug 2021 10:09:49 +0000 (12:09 +0200)]
Fix variable binding in calendar (bug#49945)

* lisp/calendar/cal-tex.el (cal-tex-week-hours, cal-tex-daily-page):
Use `let*` instead of `let`.

3 years agoUse string-search instead of string-match[-p]
Mattias Engdegård [Mon, 9 Aug 2021 09:20:00 +0000 (11:20 +0200)]
Use string-search instead of string-match[-p]

`string-search` is easier to understand, less error-prone, much
faster, does not pollute the regexp cache, and does not mutate global
state.  Use it where applicable and obviously safe (erring on the
conservative side).

* admin/authors.el (authors-canonical-file-name)
(authors-scan-change-log):
* lisp/apropos.el (apropos-command)
(apropos-documentation-property, apropos-symbols-internal):
* lisp/arc-mode.el (archive-arc-summarize)
(archive-zoo-summarize):
* lisp/calc/calc-aent.el (math-read-factor):
* lisp/calc/calc-ext.el (math-read-big-expr)
(math-format-nice-expr, math-format-number-fancy):
* lisp/calc/calc-forms.el (math-read-angle-brackets):
* lisp/calc/calc-graph.el (calc-graph-set-range):
* lisp/calc/calc-keypd.el (calc-keypad-press):
* lisp/calc/calc-lang.el (tex, latex, math-read-big-rec):
* lisp/calc/calc-prog.el (calc-fix-token-name)
(calc-user-define-permanent, math-define-exp):
* lisp/calc/calc.el (calc-record, calcDigit-key)
(calc-count-lines):
* lisp/calc/calcalg2.el (calc-solve-for, calc-poly-roots)
(math-do-integral):
* lisp/calc/calcalg3.el (calc-find-root, calc-find-minimum)
(calc-get-fit-variables):
* lisp/cedet/ede/speedbar.el (ede-tag-expand):
* lisp/cedet/semantic/java.el (semantic-java-expand-tag):
* lisp/cedet/semantic/sb.el (semantic-sb-show-extra)
(semantic-sb-expand-group):
* lisp/cedet/semantic/wisent/python.el
(semantic-python-instance-variable-p):
* lisp/cus-edit.el (get):
* lisp/descr-text.el (describe-text-sexp):
* lisp/dired-aux.el (dired-compress-file):
* lisp/dired-x.el (dired-make-relative-symlink):
* lisp/dired.el (dired-glob-regexp):
* lisp/dos-fns.el (dos-convert-standard-filename, dos-8+3-filename):
* lisp/edmacro.el (edmacro-format-keys):
* lisp/emacs-lisp/eieio-opt.el (eieio-sb-expand):
* lisp/emacs-lisp/eieio-speedbar.el (eieio-speedbar-object-expand):
* lisp/emacs-lisp/lisp-mnt.el (lm-keywords-list):
* lisp/emacs-lisp/warnings.el (display-warning):
* lisp/emulation/viper-ex.el (viper-ex-read-file-name)
(ex-print-display-lines):
* lisp/env.el (read-envvar-name, setenv):
* lisp/epa-mail.el (epa-mail-encrypt):
* lisp/epg.el (epg--start):
* lisp/erc/erc-backend.el (erc-parse-server-response):
* lisp/erc/erc-dcc.el (erc-dcc-member):
* lisp/erc/erc-speedbar.el (erc-speedbar-expand-server)
(erc-speedbar-expand-channel, erc-speedbar-expand-user):
* lisp/erc/erc.el (erc-send-input):
* lisp/eshell/em-glob.el (eshell-glob-entries):
* lisp/eshell/esh-proc.el (eshell-needs-pipe-p):
* lisp/eshell/esh-util.el (eshell-convert):
* lisp/eshell/esh-var.el (eshell-envvar-names):
* lisp/faces.el (x-resolve-font-name):
* lisp/ffap.el (ffap-file-at-point):
* lisp/files.el (wildcard-to-regexp, shell-quote-wildcard-pattern):
* lisp/forms.el (forms--update):
* lisp/frameset.el (frameset-filter-unshelve-param):
* lisp/gnus/gnus-art.el (article-decode-charset):
* lisp/gnus/gnus-kill.el (gnus-kill-parse-rn-kill-file):
* lisp/gnus/gnus-mlspl.el (gnus-group-split-fancy):
* lisp/gnus/gnus-msg.el (gnus-summary-resend-message-insert-gcc)
(gnus-inews-insert-gcc):
* lisp/gnus/gnus-rfc1843.el (rfc1843-decode-article-body):
* lisp/gnus/gnus-search.el (gnus-search-indexed-parse-output)
(gnus-search--complete-key-data):
* lisp/gnus/gnus-spec.el (gnus-parse-simple-format):
* lisp/gnus/gnus-sum.el (gnus-summary-refer-article):
* lisp/gnus/gnus-util.el (gnus-extract-address-components)
(gnus-newsgroup-directory-form):
* lisp/gnus/gnus-uu.el (gnus-uu-grab-view):
* lisp/gnus/gnus.el (gnus-group-native-p, gnus-short-group-name):
* lisp/gnus/message.el (message-check-news-header-syntax)
(message-make-message-id, message-user-mail-address)
(message-make-fqdn, message-get-reply-headers, message-followup):
* lisp/gnus/mm-decode.el (mm-dissect-buffer):
* lisp/gnus/nnheader.el (nnheader-insert):
* lisp/gnus/nnimap.el (nnimap-process-quirk)
(nnimap-imap-ranges-to-gnus-ranges):
* lisp/gnus/nnmaildir.el (nnmaildir--ensure-suffix):
* lisp/gnus/nnmairix.el (nnmairix-determine-original-group-from-path):
* lisp/gnus/nnrss.el (nnrss-match-macro):
* lisp/gnus/nntp.el (nntp-find-group-and-number):
* lisp/help-fns.el (help--symbol-completion-table-affixation):
* lisp/help.el (help-function-arglist):
* lisp/hippie-exp.el (he-concat-directory-file-name):
* lisp/htmlfontify.el (hfy-relstub):
* lisp/ido.el (ido-make-prompt, ido-complete, ido-copy-current-word)
(ido-exhibit):
* lisp/image/image-converter.el (image-convert-p):
* lisp/info-xref.el (info-xref-docstrings):
* lisp/info.el (Info-toc-build, Info-follow-reference)
(Info-backward-node, Info-finder-find-node)
(Info-speedbar-expand-node):
* lisp/international/mule-diag.el (print-fontset-element):
* lisp/language/korea-util.el (default-korean-keyboard):
* lisp/linum.el (linum-after-change):
* lisp/mail/ietf-drums.el (ietf-drums-parse-address):
* lisp/mail/mail-utils.el (mail-dont-reply-to):
* lisp/mail/rfc2047.el (rfc2047-encode-1, rfc2047-decode-string):
* lisp/mail/rfc2231.el (rfc2231-parse-string):
* lisp/mail/rmailkwd.el (rmail-set-label):
* lisp/mail/rmailsum.el (rmail-header-summary):
* lisp/mail/smtpmail.el (smtpmail-maybe-append-domain)
(smtpmail-user-mail-address):
* lisp/mail/uce.el (uce-reply-to-uce):
* lisp/man.el (Man-default-man-entry):
* lisp/mh-e/mh-alias.el (mh-alias-gecos-name)
(mh-alias-minibuffer-confirm-address):
* lisp/mh-e/mh-comp.el (mh-forwarded-letter-subject):
* lisp/mh-e/mh-speed.el (mh-speed-parse-flists-output):
* lisp/mh-e/mh-utils.el (mh-collect-folder-names-filter)
(mh-folder-completion-function):
* lisp/minibuffer.el (completion--make-envvar-table)
(completion-file-name-table, completion-flex-try-completion)
(completion-flex-all-completions):
* lisp/mpc.el (mpc--proc-quote-string, mpc-cmd-special-tag-p)
(mpc-constraints-tag-lookup):
* lisp/net/ange-ftp.el (ange-ftp-send-cmd)
(ange-ftp-allow-child-lookup):
* lisp/net/mailcap.el (mailcap-mime-types):
* lisp/net/mairix.el (mairix-search-thread-this-article):
* lisp/net/pop3.el (pop3-open-server):
* lisp/net/soap-client.el (soap-decode-xs-complex-type):
* lisp/net/socks.el (socks-filter):
* lisp/nxml/nxml-outln.el (nxml-highlighted-qname):
* lisp/nxml/rng-cmpct.el (rng-c-expand-name, rng-c-expand-datatype):
* lisp/nxml/rng-uri.el (rng-uri-file-name-1):
* lisp/obsolete/complete.el (partial-completion-mode)
(PC-do-completion):
* lisp/obsolete/longlines.el (longlines-encode-string):
* lisp/obsolete/nnir.el (nnir-compose-result):
* lisp/obsolete/terminal.el (te-quote-arg-for-sh):
* lisp/obsolete/tpu-edt.el (tpu-check-search-case):
* lisp/obsolete/url-ns.el (isPlainHostName):
* lisp/pcmpl-unix.el (pcomplete/scp):
* lisp/play/dunnet.el (dun-listify-string2, dun-get-path)
(dun-unix-parse, dun-doassign, dun-cat, dun-batch-unix-interface):
* lisp/progmodes/ebnf2ps.el: (ebnf-eps-header-footer-comment):
* lisp/progmodes/gdb-mi.el (gdb-var-delete)
(gdb-speedbar-expand-node, gdbmi-bnf-incomplete-record-result):
* lisp/progmodes/gud.el (gud-find-expr):
* lisp/progmodes/idlw-help.el (idlwave-do-context-help1):
* lisp/progmodes/idlw-shell.el (idlwave-shell-mode)
(idlwave-shell-filter-hidden-output, idlwave-shell-filter):
* lisp/progmodes/idlwave.el (idlwave-skip-label-or-case)
(idlwave-routine-info):
* lisp/progmodes/octave.el (inferior-octave-completion-at-point):
* lisp/progmodes/sh-script.el (sh-add-completer):
* lisp/progmodes/sql.el (defun):
* lisp/progmodes/xscheme.el (xscheme-process-filter):
* lisp/replace.el (query-replace-compile-replacement)
(map-query-replace-regexp):
* lisp/shell.el (shell--command-completion-data)
(shell-environment-variable-completion):
* lisp/simple.el (display-message-or-buffer):
* lisp/speedbar.el (speedbar-dired, speedbar-tag-file)
(speedbar-tag-expand):
* lisp/subr.el (split-string-and-unquote):
* lisp/tar-mode.el (tar-extract):
* lisp/term.el (term-command-hook, serial-read-name):
* lisp/textmodes/bibtex.el (bibtex-print-help-message):
* lisp/textmodes/ispell.el (ispell-lookup-words, ispell-filter)
(ispell-parse-output, ispell-buffer-local-parsing):
* lisp/textmodes/reftex-cite.el (reftex-do-citation):
* lisp/textmodes/reftex-parse.el (reftex-notice-new):
* lisp/textmodes/reftex-ref.el (reftex-show-entry):
* lisp/textmodes/reftex.el (reftex-compile-variables):
* lisp/textmodes/tex-mode.el (tex-send-command)
(tex-start-tex, tex-append):
* lisp/thingatpt.el (thing-at-point-url-at-point):
* lisp/tmm.el (tmm-add-one-shortcut):
* lisp/transient.el (transient-format-key):
* lisp/url/url-auth.el (url-basic-auth)
(url-digest-auth-directory-id-assoc):
* lisp/url/url-news.el (url-news):
* lisp/url/url-util.el (url-parse-query-string):
* lisp/vc/vc-cvs.el (vc-cvs-parse-entry):
* lisp/wid-browse.el (widget-browse-sexp):
* lisp/woman.el (woman-parse-colon-path, woman-mini-help)
(WoMan-getpage-in-background, woman-negative-vertical-space):
* lisp/xml.el:
* test/lisp/emacs-lisp/check-declare-tests.el
(check-declare-tests-warn):
* test/lisp/files-tests.el
(files-tests-file-name-non-special-dired-compress-handler):
* test/lisp/net/network-stream-tests.el (server-process-filter):
* test/src/coding-tests.el (ert-test-unibyte-buffer-dos-eol-decode):
Use `string-search` instead of `string-match` and `string-match-p`.

3 years ago* src/nsterm.m (max_used_fringe_bitmap): Remove unused variable.
Alan Third [Sun, 8 Aug 2021 21:17:18 +0000 (22:17 +0100)]
* src/nsterm.m (max_used_fringe_bitmap): Remove unused variable.

3 years agoUn-obsolete dired-in-this-tree-p and use it again in certain places.
Tassilo Horn [Sun, 8 Aug 2021 14:45:50 +0000 (16:45 +0200)]
Un-obsolete dired-in-this-tree-p and use it again in certain places.

This reverts parts of b425966b07, and 7b50ed553f, i.e. it reverts the
obsoletion of dired-in-this-tree-p and switches some new callers of
file-in-directory-p back to using dired-in-this-tree-p.

It turned out that using file-in-directory-p can be a major
performance regression in case you have a dired buffer of a remote
directory which has become (almost) inaccessible.

Any attempt to open a new dired buffer is checking if a buffer for
that directory already exists (in terms of dired-buffers-for-dir)
which meant that file-in-directory-p was called with the directory of
any existing dired buffer including the inaccessible one where the
file-truename call in file-in-directory-p could block for seconds or
even minutes.

* lisp/dired.el (dired-in-this-tree-p): Undo obsoletion.
(dired-buffers-for-dir): Use dired-in-this-tree-p as before.
* lisp/dired-aux.el (dired-kill-tree,dired-tree-down): Une
dired-in-this-tree-p as before.

3 years agoUse string-replace instead of replace-regexp-in-string
Mattias Engdegård [Sun, 8 Aug 2021 16:58:46 +0000 (18:58 +0200)]
Use string-replace instead of replace-regexp-in-string

`string-replace` is easier to understand, less error-prone, much
faster, and results in shorter Lisp and byte code.  Use it where
applicable and obviously safe (erring on the conservative side).

* admin/authors.el (authors-scan-change-log):
* lisp/autoinsert.el (auto-insert-alist):
* lisp/calc/calc-prog.el (calc-edit-macro-combine-alg-ent)
(calc-edit-macro-combine-ext-command)
(calc-edit-macro-combine-var-name):
* lisp/calc/calc-units.el (math-make-unit-string):
* lisp/calendar/cal-html.el (cal-html-comment):
* lisp/calendar/cal-tex.el (cal-tex-comment):
* lisp/calendar/icalendar.el (icalendar--convert-string-for-export)
(icalendar--convert-string-for-import):
* lisp/calendar/iso8601.el (iso8601--concat-regexps)
(iso8601--full-time-match, iso8601--combined-match):
* lisp/calendar/time-date.el (format-seconds):
* lisp/calendar/todo-mode.el (todo-filter-items-filename):
* lisp/cedet/cedet-files.el (cedet-directory-name-to-file-name)
(cedet-file-name-to-directory-name):
* lisp/comint.el (comint-watch-for-password-prompt):
* lisp/dired-aux.el (dired-do-chmod):
* lisp/dired-x.el (dired-man):
* lisp/dired.el (dired-insert-directory, dired-goto-file-1):
* lisp/emacs-lisp/comp.el (comp-c-func-name):
* lisp/emacs-lisp/re-builder.el (reb-copy):
* lisp/erc/erc-dcc.el (erc-dcc-unquote-filename):
* lisp/erc/erc.el (erc-quit-reason-zippy, erc-part-reason-zippy)
(erc-update-mode-line-buffer, erc-message-english-PART):
* lisp/files.el (make-backup-file-name-1, files--transform-file-name)
(read-file-modes):
* lisp/fringe.el (fringe-mode):
* lisp/gnus/gnus-art.el (gnus-button-handle-info-url):
* lisp/gnus/gnus-group.el (gnus-group-completing-read):
* lisp/gnus/gnus-icalendar.el (gnus-icalendar-event-from-ical):
* lisp/gnus/gnus-mlspl.el (gnus-group-split-fancy):
* lisp/gnus/gnus-search.el (gnus-search-query-parse-date)
(gnus-search-transform-expression, gnus-search-run-search):
* lisp/gnus/gnus-start.el (gnus-dribble-enter):
* lisp/gnus/gnus-sum.el (gnus-summary-refer-article):
* lisp/gnus/gnus-util.el (gnus-mode-string-quote):
* lisp/gnus/message.el (message-put-addresses-in-ecomplete)
(message-parse-mailto-url, message-mailto-1):
* lisp/gnus/mml-sec.el (mml-secure-epg-sign):
* lisp/gnus/mml-smime.el (mml-smime-epg-verify):
* lisp/gnus/mml2015.el (mml2015-epg-verify):
* lisp/gnus/nnmaildir.el (nnmaildir--system-name)
(nnmaildir-request-list, nnmaildir-retrieve-groups)
(nnmaildir-request-group, nnmaildir-retrieve-headers):
* lisp/gnus/nnrss.el (nnrss-node-text):
* lisp/gnus/spam-report.el (spam-report-gmane-internal)
(spam-report-user-mail-address):
* lisp/ibuffer.el (name):
* lisp/image-dired.el (image-dired-pngnq-thumb)
(image-dired-pngcrush-thumb, image-dired-optipng-thumb)
(image-dired-create-thumb-1):
* lisp/info.el (Info-set-mode-line):
* lisp/international/mule-cmds.el (describe-language-environment):
* lisp/mail/rfc2231.el (rfc2231-parse-string):
* lisp/mail/rfc2368.el (rfc2368-parse-mailto-url):
* lisp/mail/rmail.el (rmail-insert-inbox-text)
(rmail-simplified-subject-regexp):
* lisp/mail/rmailout.el (rmail-output-body-to-file):
* lisp/mail/undigest.el (rmail-digest-rfc1153):
* lisp/man.el (Man-default-man-entry):
* lisp/mouse.el (minor-mode-menu-from-indicator):
* lisp/mpc.el (mpc--debug):
* lisp/net/browse-url.el (browse-url-mail):
* lisp/net/eww.el (eww-update-header-line-format):
* lisp/net/newst-backend.el (newsticker-save-item):
* lisp/net/rcirc.el (rcirc-sentinel):
* lisp/net/soap-client.el (soap-decode-date-time):
* lisp/nxml/rng-cmpct.el (rng-c-literal-2-re):
* lisp/nxml/xmltok.el (let*):
* lisp/obsolete/nnir.el (nnir-run-swish-e, nnir-run-hyrex)
(nnir-run-find-grep):
* lisp/play/dunnet.el (dun-doassign):
* lisp/play/handwrite.el (handwrite):
* lisp/proced.el (proced-format-args):
* lisp/profiler.el (profiler-report-header-line-format):
* lisp/progmodes/gdb-mi.el (gdb-mi-quote):
* lisp/progmodes/make-mode.el (makefile-bsdmake-rule-action-regex)
(makefile-make-font-lock-keywords):
* lisp/progmodes/prolog.el (prolog-guess-fill-prefix):
* lisp/progmodes/ruby-mode.el (ruby-toggle-string-quotes):
* lisp/progmodes/sql.el (sql-remove-tabs-filter, sql-str-literal):
* lisp/progmodes/which-func.el (which-func-current):
* lisp/replace.el (query-replace-read-from)
(occur-engine, replace-quote):
* lisp/select.el (xselect--encode-string):
* lisp/ses.el (ses-export-tab):
* lisp/subr.el (shell-quote-argument):
* lisp/term/pc-win.el (msdos-show-help):
* lisp/term/w32-win.el (w32--set-selection):
* lisp/term/xterm.el (gui-backend-set-selection):
* lisp/textmodes/picture.el (picture-tab-search):
* lisp/thumbs.el (thumbs-call-setroot-command):
* lisp/tooltip.el (tooltip-show-help-non-mode):
* lisp/transient.el (transient-format-key):
* lisp/url/url-mailto.el (url-mailto):
* lisp/vc/log-edit.el (log-edit-changelog-ours-p):
* lisp/vc/vc-bzr.el (vc-bzr-status):
* lisp/vc/vc-hg.el (vc-hg--glob-to-pcre):
* lisp/vc/vc-svn.el (vc-svn-after-dir-status):
* lisp/xdg.el (xdg-desktop-strings):
* test/lisp/electric-tests.el (defun):
* test/lisp/term-tests.el (term-simple-lines):
* test/lisp/time-stamp-tests.el (formatz-mod-del-colons):
* test/lisp/wdired-tests.el (wdired-test-bug32173-01)
(wdired-test-unfinished-edit-01):
* test/src/json-tests.el (json-parse-with-custom-null-and-false-objects):
Use `string-replace` instead of `replace-regexp-in-string`.

3 years agoAnother fix for parse-colon-path
Eli Zaretskii [Sun, 8 Aug 2021 14:29:56 +0000 (17:29 +0300)]
Another fix for parse-colon-path

* test/lisp/files-tests.el (files-tests-bug-21454, files-colon-path):
Adapt to change in behavior of 'parse-colon-path'.

* lisp/files.el (parse-colon-path): Don't expand the directory
names: that changes the names in ways this function is not
supposed to.  (Bug#49918)

3 years agoDoc update wrt Tramp support of SSH security keys
Michael Albinus [Sun, 8 Aug 2021 14:18:59 +0000 (16:18 +0200)]
Doc update wrt Tramp support of SSH security keys

* doc/misc/tramp.texi (Frequently Asked Questions): Speak about
SSH security keys.
(GVFS-based methods, Predefined connection information)
(Remote shell setup): Fix typo.

* etc/NEWS: Precise Tramp's support for SSH security keys.  Fix typos.

3 years agoMerge branch 'master' of git.sv.gnu.org:/srv/git/emacs
Michael Albinus [Sun, 8 Aug 2021 14:18:10 +0000 (16:18 +0200)]
Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs

3 years agoproject.el: Bump the version
Dmitry Gutov [Sun, 8 Aug 2021 11:13:49 +0000 (14:13 +0300)]
project.el: Bump the version

* lisp/progmodes/project.el: Bump the version.

3 years agoMerge branch 'master' of git.sv.gnu.org:/srv/git/emacs
Michael Albinus [Sun, 8 Aug 2021 10:39:11 +0000 (12:39 +0200)]
Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs

3 years agoFurther fix to filtering Gnus search group names
Eric Abrahamsen [Fri, 6 Aug 2021 00:53:05 +0000 (17:53 -0700)]
Further fix to filtering Gnus search group names

* lisp/gnus/gnus-search.el (gnus-search-indexed-parse-output): Group
names in the GROUPS argument may be prefixed or not, depending on
which server we're searching, so always enforce prefix policy within
the function.

3 years agoFix files-tests broken on MS-Windows by a recent change
Eli Zaretskii [Sat, 7 Aug 2021 11:29:45 +0000 (14:29 +0300)]
Fix files-tests broken on MS-Windows by a recent change

* test/lisp/files-tests.el (files-colon-path): Use path-separator, and
account for drive letters in absolute file names on MS-Windows.  (Bug#49918)

3 years agoFix prin1 problem in package-quickstart-refresh
Lars Ingebrigtsen [Sat, 7 Aug 2021 11:02:01 +0000 (13:02 +0200)]
Fix prin1 problem in package-quickstart-refresh

* lisp/emacs-lisp/package.el (package-quickstart-refresh): Bind
print-length/print-level before using prin1-to-string (bug#49924).

3 years agoFix print-length issue in comp-run-async-workers
Lars Ingebrigtsen [Sat, 7 Aug 2021 10:59:22 +0000 (12:59 +0200)]
Fix print-length issue in comp-run-async-workers

* lisp/emacs-lisp/comp.el (comp-run-async-workers): Bind
print-length/print-level to ensure there's no truncation (bug#49922).

3 years agoMake `q' in `org-agenda' work even with `debug-on-error' set
Lars Ingebrigtsen [Sat, 7 Aug 2021 10:55:39 +0000 (12:55 +0200)]
Make `q' in `org-agenda' work even with `debug-on-error' set

* lisp/org/org-agenda.el (org-agenda-get-restriction-and-command):
Using `error' here will trigger users with `debug-on-error' so use
`user-error' instead (bug#49920).  It would probably be preferable
to rewrite this to not use the error system to do control flow.

3 years agoFix problem with relative directories in CDPATH
Lars Ingebrigtsen [Sat, 7 Aug 2021 10:50:56 +0000 (12:50 +0200)]
Fix problem with relative directories in CDPATH

* lisp/files.el (parse-colon-path): Allow relative directories
(like ".") in CDPATH (bug#49918).

3 years agoperl-mode: fix variable fontification
Tomasz Konojacki [Sat, 7 Aug 2021 10:36:22 +0000 (12:36 +0200)]
perl-mode: fix variable fontification

* lisp/progmodes/perl-mode.el: Handle variables first to avoid
conflicting with keywords. This fixes cases like "$package"
(bug#49906).
Copyright-paperwork-exempt: yes

3 years ago; * lisp/replace.el (occur-1): Remove old fringe arrow.
Mattias Engdegård [Sat, 7 Aug 2021 09:11:52 +0000 (11:11 +0200)]
; * lisp/replace.el (occur-1): Remove old fringe arrow.

3 years agoAllow building on MacOS with MacPorts and libgccjit
Lars Ingebrigtsen [Sat, 7 Aug 2021 09:56:37 +0000 (11:56 +0200)]
Allow building on MacOS with MacPorts and libgccjit

* configure.ac: Check for the "port" command (MacPorts).
Add the required lib/include directories for nativecomp.

* src/Makefile.in (LIBGCCJIT_CFLAGS, LIBGCCJIT_LIBS): Split into
two parts to allow including -L/-I for MacPorts.
(LIBES): Adjust.
(EMACS_CFLAGS): Ditto.

3 years agoMerge from origin/emacs-27
Glenn Morris [Fri, 6 Aug 2021 15:49:32 +0000 (08:49 -0700)]
Merge from origin/emacs-27

b77f6af24e (origin/emacs-27) ERC right stamps: also use latest buffer...

# Conflicts:
# lisp/erc/erc-stamp.el

3 years agoImprove ffap-ido-mode test
dickmao [Fri, 6 Aug 2021 11:29:31 +0000 (13:29 +0200)]
Improve ffap-ido-mode test

* test/lisp/ffap-tests.el (ffap-ido-mode): Actually test
`ido-everywhere' at run time, not compile time (bug#49895).

3 years agoFix problem with occasional stalls in `url-retrieve-synchronously'
dick r. chiang [Fri, 6 Aug 2021 11:24:53 +0000 (13:24 +0200)]
Fix problem with occasional stalls in `url-retrieve-synchronously'

* lisp/url/url.el (url-retrieve-synchronously): Use
`accept-process-output' on a null process.  That is the safer, more
conventional way of achieving non-blocking sleep-for (bug#49897).

Also rewrite for greater readability.

3 years ago; * doc/lispref/package.texi (Package Archives): Fix typo.
Eli Zaretskii [Fri, 6 Aug 2021 11:20:54 +0000 (14:20 +0300)]
; * doc/lispref/package.texi (Package Archives): Fix typo.

3 years agoMention NonGNU in "Package Archives" node in the manual
Lars Ingebrigtsen [Fri, 6 Aug 2021 11:03:28 +0000 (13:03 +0200)]
Mention NonGNU in "Package Archives" node in the manual

* doc/lispref/package.texi (Package Archives): Mention NonGNU, too
(bug#49899).

3 years agoAdd colon-space after prompt
Dmitry Gutov [Fri, 6 Aug 2021 08:34:02 +0000 (11:34 +0300)]
Add colon-space after prompt

* lisp/progmodes/project.el (project--completing-read-strict):
Fix last change's regression (bug#49865).

3 years agoFix automatic hscrolling when line numbers are displayed
Eli Zaretskii [Fri, 6 Aug 2021 07:51:45 +0000 (10:51 +0300)]
Fix automatic hscrolling when line numbers are displayed

* src/xdisp.c (hscroll_window_tree): When line numbers are
displayed, account for the the line-number space when calculating
the desired X coordinate on the left.  (Bug#49891)

3 years agoImprove wording of recently changed documentation
Eli Zaretskii [Fri, 6 Aug 2021 07:22:22 +0000 (10:22 +0300)]
Improve wording of recently changed documentation

* src/minibuf.c (syms_of_minibuf):
* lisp/minibuffer.el (minibuffer-restore-windows):
* lisp/progmodes/etags.el (etags-xref-prefer-current-file):
Improve wording of doc strings.

* etc/NEWS: Improve wording and format of recently added entries.

3 years agoMake sure installed *.eln files have correct permissions
Eli Zaretskii [Fri, 6 Aug 2021 06:46:39 +0000 (09:46 +0300)]
Make sure installed *.eln files have correct permissions

* Makefile.in (install-eln): Add "umask 022" to ensure the *.eln
files are accessible from the user's Emacs session.  Suggested by
Wilhelm Kirschbaum <wkirschbaum@gmail.com>.  (Bug#49864)

3 years agoERC right stamps: also use latest buffer's window's width (Bug#44140)
Olivier Certner [Tue, 6 Jul 2021 10:35:43 +0000 (12:35 +0200)]
ERC right stamps: also use latest buffer's window's width (Bug#44140)

* lisp/erc/erc-stamp.el (erc-insert-timestamp-right): Use latest
buffer's window's width to position the timestamp, if both
`erc-timestamp-right-column' and `erc-fill-column' are not set (or
`erc-fill-mode' is off).  This is what the documentation says, but was
not implemented.  Also fix the bug of using selected window's width
instead of the (or some) window showing the buffer.  The latest
window's width is saved in `erc-timestamp-last-window-width' and used
when the buffer is no more shown.  In case the buffer was never shown,
which I'm not sure can happen, either use `fill-column' if set, or
give up on aligning and just output the timestamp (modulo the kludge)
right after message text.  While here, fix the off by one calculation
of point start when the reference is the window's width.

3 years agoChange how project-find-file's completion works
Dmitry Gutov [Fri, 6 Aug 2021 00:30:10 +0000 (03:30 +0300)]
Change how project-find-file's completion works

* lisp/progmodes/project.el (project--completing-read-strict):
Allow to choose a non-existent file, with confirmation
(bug#49204).
Don't use the string at point as a "real" default, and instead
only include it in "future history": meaning, it will be inserted
on 'M-n' (bug#49865).

3 years agoNew option etags-xref-prefer-current-file
Dmitry Gutov [Fri, 6 Aug 2021 00:12:40 +0000 (03:12 +0300)]
New option etags-xref-prefer-current-file

* lisp/progmodes/etags.el (etags-xref-prefer-current-file):
New user option (bug#2544).
(xref-backend-definitions): Use it.

3 years agoProvide a default for xref-find-apropos pattern
Dmitry Gutov [Fri, 6 Aug 2021 00:02:13 +0000 (03:02 +0300)]
Provide a default for xref-find-apropos pattern

* lisp/progmodes/xref.el (xref-find-apropos):
Provide a default for the pattern (bug#49731).

3 years agoChange the xref-goto-xref error message
Dmitry Gutov [Thu, 5 Aug 2021 23:49:42 +0000 (02:49 +0300)]
Change the xref-goto-xref error message

* lisp/progmodes/xref.el (xref-goto-xref):
Change the error message (bug#49846).

3 years agoAdd function minibuffer-restore-windows (bug#45072)
Juri Linkov [Thu, 5 Aug 2021 23:36:22 +0000 (02:36 +0300)]
Add function minibuffer-restore-windows (bug#45072)

* lisp/minibuffer.el (minibuffer-restore-windows): New function
that removes the completions buffer.  Add it to minibuffer-exit-hook.
* src/minibuf.c (read-minibuffer-restore-windows): Mention
minibuffer-restore-windows.

3 years agoReset mtime of a buffer reverted "delicately"
Konstantin Kharlamov [Thu, 5 Aug 2021 15:25:56 +0000 (18:25 +0300)]
Reset mtime of a buffer reverted "delicately"

* lisp/files.el (revert-buffer-insert-file-contents-delicately):
Once buffer is reverted, reset its mtime to that of the file.
(Bug#49893)

3 years agoFix files-tests on non-Posix systems
Eli Zaretskii [Thu, 5 Aug 2021 17:42:10 +0000 (20:42 +0300)]
Fix files-tests on non-Posix systems

* test/lisp/files-tests.el (files-test-auto-save-name-default)
(files-test-auto-save-name-transform)
(files-test-auto-save-name-unique, files-test-lock-name-default)
(files-test-lock-name-unique): Skip the drive letter in absolute
file names on MS-Windows/MS-DOS when comparing file names against
the expected ones.
(files-tests-file-name-non-special--subprocess): Skip test on
MS-Windows/MS-DOS.

3 years agoCease attempts to const-propagate through setq
Mattias Engdegård [Thu, 5 Aug 2021 09:50:25 +0000 (11:50 +0200)]
Cease attempts to const-propagate through setq

The current method of propagating constants through setq was unsound
because it relied on each setq form only being traversed at most once
during optimisation, which isn't necessarily true in general; it could
be made to miscompile code in rare cases.

Since it was only used in limited circumstances, disabling this
optimisation doesn't cost us much.

* lisp/emacs-lisp/byte-opt.el (byte-optimize-form-code-walker):
Don't update the known value when traversing `setq`.
* test/lisp/emacs-lisp/bytecomp-tests.el (bytecomp-tests--test-cases):
Add test case.

3 years agoFix M-n description in refcards
Lars Ingebrigtsen [Thu, 5 Aug 2021 11:14:26 +0000 (13:14 +0200)]
Fix M-n description in refcards

* etc/refcards/pl-refcard.tex (section{Szukanie przyrostowe}):
Ditto (in comments).

* etc/refcards/refcard.tex (section{Incremental Search}): Fix M-n
description (bug#49872).

3 years ago; Fix oauth typos in last change.
Basil L. Contovounesios [Thu, 5 Aug 2021 10:40:31 +0000 (11:40 +0100)]
; Fix oauth typos in last change.

3 years agoAdd support for the oauth2.el library in nnimap and smtpmail
Roland Winkler [Thu, 5 Aug 2021 10:33:21 +0000 (12:33 +0200)]
Add support for the oauth2.el library in nnimap and smtpmail

* doc/misc/gnus.texi (Customizing the IMAP Connection):
* doc/misc/smtpmail.texi (Authentication): Mention it.

* lisp/gnus/nnimap.el (nnimap-login): Support oauth2.

* lisp/mail/smtpmail.el (smtpmail-try-auth-method): New function
for oauth2.

3 years ago* lisp/cus-start.el (read-minibuffer-restore-windows): Fix entry.
Glenn Morris [Thu, 5 Aug 2021 00:42:55 +0000 (17:42 -0700)]
* lisp/cus-start.el (read-minibuffer-restore-windows): Fix entry.

3 years ago* lisp/vc/smerge-mode.el (smerge-mode-menu): Add menu item for smerge-refine.
Juri Linkov [Wed, 4 Aug 2021 20:43:21 +0000 (23:43 +0300)]
* lisp/vc/smerge-mode.el (smerge-mode-menu): Add menu item for smerge-refine.

3 years agoPackage archive location needs to be absolute filename
dickmao [Wed, 4 Aug 2021 08:50:38 +0000 (10:50 +0200)]
Package archive location needs to be absolute filename

* lisp/emacs-lisp/package.el (package--with-response-buffer-1):
Actually check that URL is absolute (bug#49788).

3 years agoAdd a new thing-at-point type: existing-filename
Lars Ingebrigtsen [Wed, 4 Aug 2021 08:35:53 +0000 (10:35 +0200)]
Add a new thing-at-point type: existing-filename

* doc/lispref/text.texi (Buffer Contents): Mention it.

* lisp/thingatpt.el (thing-at-point-file-at-point): New function.
(existing-filename): Register it.

3 years agoMake `M-j' work reliably if `comment-auto-fill-only-comments' is set
Lars Ingebrigtsen [Wed, 4 Aug 2021 08:03:12 +0000 (10:03 +0200)]
Make `M-j' work reliably if `comment-auto-fill-only-comments' is set

* lisp/simple.el (default-indent-new-line): Force breaking the
line when called interactively (bug#49849).  (Perhaps the
interactive command should be rebound and call this function
instead...)

3 years agoImprove `define-globalized-minor-mode' doc strings
Lars Ingebrigtsen [Wed, 4 Aug 2021 07:38:45 +0000 (09:38 +0200)]
Improve `define-globalized-minor-mode' doc strings

* lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
Copy the description from easy-mmode--arg-docstring (bug#49843).

3 years agoffap ido accommodation
dickmao [Tue, 3 Aug 2021 16:02:48 +0000 (12:02 -0400)]
ffap ido accommodation

Now that ffap-file-finder can be ido-find-file, the
noninteractive portion of find-file-at-point cannot
assume ffap-file-finder always takes an argument
(ido-find-file does not).

* lisp/ffap.el (find-file-at-point): Do not call ffap-file-finder.
* test/lisp/ffap-tests.el (ffap-ido-mode): Test it.

3 years agoUse `abort-minibuffers' in delsel
Miha Rihtaršič [Wed, 4 Aug 2021 07:15:25 +0000 (09:15 +0200)]
Use `abort-minibuffers' in delsel

* lisp/delsel.el (minibuffer-keyboard-quit): Use
`abort-minibuffers' (bug#49821).

Previously, C-g was bound to abort-recursive-edit, now it is bound to
abort-minibuffers.  However, after requiring delsel, it gets bound to
minibuffer-keyboard-quit, which still uses abort-recursive-edit.  Use
the new function instead.

3 years agoAdd new user option 'read-minibuffer-restore-windows'
martin rudalics [Wed, 4 Aug 2021 06:48:18 +0000 (08:48 +0200)]
Add new user option 'read-minibuffer-restore-windows'

* doc/lispref/minibuf.texi (Text from Minibuffer): Document it
(bug#45072).

* lisp/cus-start.el (standard): Add.

* src/minibuf.c (syms_of_minibuf): New variable
'read-minibuffer-restore-windows'.

3 years agoUpdate outdated Gnus information
Lars Ingebrigtsen [Wed, 4 Aug 2021 05:34:36 +0000 (07:34 +0200)]
Update outdated Gnus information

* doc/misc/gnus.texi (History): Update information.

3 years ago; * lisp/so-long.el: Bump version for the GNU ELPA build
Phil Sainty [Wed, 4 Aug 2021 05:17:23 +0000 (17:17 +1200)]
; * lisp/so-long.el: Bump version for the GNU ELPA build

GNU ELPA released commit 359a8e4eda047b7dcb7e64faff7f8eaacf5d937c as
version 1.1.

3 years agoFix apparent typo in new cl-generic-tests.el test case
Lars Ingebrigtsen [Wed, 4 Aug 2021 04:38:34 +0000 (06:38 +0200)]
Fix apparent typo in new cl-generic-tests.el test case