]> git.eshelyaron.com Git - emacs.git/log
emacs.git
3 years agoUse file-in-directory-p instead of obsolete dired-in-this-tree-p
Tassilo Horn [Sat, 12 Jun 2021 12:45:53 +0000 (14:45 +0200)]
Use file-in-directory-p instead of obsolete dired-in-this-tree-p

* lisp/dired-aux.el (dired-rename-subdir,dired-rename-subdir-1)
(dired-insert-subdir,dired-insert-subdir-validate)
(dired-kill-tree,dired-tree-down): Use file-in-directory-p instead of
obsolete dired-in-this-tree-p.

3 years agoFix double (recursive) load of fortran.el
Lars Ingebrigtsen [Sat, 12 Jun 2021 12:44:54 +0000 (14:44 +0200)]
Fix double (recursive) load of fortran.el

* lisp/progmodes/fortran.el (fortran-menu): Move menu creation to
the end to avoid a recursive load (bug#43116).

3 years agoMention nov-is-evil/nnvirtual combination in the Gnus manual
Alex Bochannek [Sat, 12 Jun 2021 12:09:05 +0000 (14:09 +0200)]
Mention nov-is-evil/nnvirtual combination in the Gnus manual

* doc/misc/gnus.texi (To From Newsgroups): Mention using separate
select methods for different values (bug#48801).

3 years agoAdd ability to bring only the selected frame to the front (bug#48865)
Matt Beshara [Sun, 6 Jun 2021 03:06:47 +0000 (13:06 +1000)]
Add ability to bring only the selected frame to the front (bug#48865)

Causes ‘ns-hide-emacs’ to layer the selected frame in front of every other
application’s windows, and give that frame keyboard focus, when called with
'activate-front.

* src/nsfns.m (Fns_hide_emacs): Allow activating only selected frame.

3 years ago* lisp/emacs-lisp/benchmark.el (benchmark-elapse): Tweak
Stefan Monnier [Fri, 11 Jun 2021 18:06:29 +0000 (14:06 -0400)]
* lisp/emacs-lisp/benchmark.el (benchmark-elapse): Tweak

3 years ago; perl-mode.el: Allow newline between quote-likes and delimiter
Harald Jörg [Fri, 11 Jun 2021 11:52:45 +0000 (13:52 +0200)]
; perl-mode.el: Allow newline between quote-likes and delimiter

* lisp/progmodes/perl-mode.el (perl-syntax-propertize-function):
Allow newline between a quote-like operator and its delimiter
(Bug#22355).

* test/lisp/progmodes/cperl-mode-tests.el (cperl-test-bug-22355):
Test case for the fix.

* test/lisp/progmodes/cperl-mode-resources/cperl-bug-22355.pl:
Test resource for a quote-like with newline before the delimiter.

3 years ago; Improve delete-window-choose-selected documentation
Robert Pluim [Fri, 11 Jun 2021 09:30:13 +0000 (11:30 +0200)]
; Improve delete-window-choose-selected documentation

* doc/lispref/windows.texi (Deleting Windows): Improve
delete-window-choose-selected documentation.

3 years agoRename/rewrite recently added option and function in window.el
Martin Rudalics [Fri, 11 Jun 2021 07:55:02 +0000 (09:55 +0200)]
Rename/rewrite recently added option and function in window.el

* lisp/window.el (window-at-x-y): Rename from `window-at-pos'.
Fix doc-string.
(delete-window-choose-selected): Rename from
`delete-window-set-selected'.  Fix doc-string.
(delete-window): Adjust to above renaming.
* doc/emacs/windows.texi (Change Window): Mention new option
`delete-window-choose-selected'.
* etc/NEWS:
* doc/lispref/windows.texi (Deleting Windows): Follow up on
above renamings.

3 years ago; * etc/NEWS: Rephrase the entry about 'grep-find-template'.
Eli Zaretskii [Fri, 11 Jun 2021 06:29:37 +0000 (09:29 +0300)]
; * etc/NEWS: Rephrase the entry about 'grep-find-template'.

3 years agoSimplify vc-git-log-switches's usage; change default value to nil
Dmitry Gutov [Fri, 11 Jun 2021 01:39:34 +0000 (04:39 +0300)]
Simplify vc-git-log-switches's usage; change default value to nil

* lisp/vc/vc-git.el (vc-git-log-switches):
Do not mention or allow the value 't' anymore
(https://lists.gnu.org/archive/html/emacs-devel/2021-06/msg00452.html).
(vc-git-print-log): Use 'vc-git-log-switches' directly.

3 years agoSupport mercury in 'ctags' as well
Eli Zaretskii [Thu, 10 Jun 2021 13:55:04 +0000 (16:55 +0300)]
Support mercury in 'ctags' as well

The previous lack of support was due to incorrect calls to 'make_tag'
in 'mercury_pr', which caused 'pfnote' to refrain from adding Mercury
tags to the list of recorded tags.

* lib-src/etags.c (mercury_pr): Pass the correct NAME and NAMELEN
arguments to 'make_tag'.

* test/manual/etags/CTAGS.good: Adjust to the above change.

3 years agoImprove documentation of 'M-y'
Eli Zaretskii [Thu, 10 Jun 2021 12:06:10 +0000 (15:06 +0300)]
Improve documentation of 'M-y'

* doc/emacs/killing.texi (Yanking): Mention that TTY frames can
also support yanking from the clipboard.
(Earlier Kills): Finalize the documentation of the new behavior
of the lone 'M-y'.  (Bug#48478)

3 years agoProvide new option `delete-window-set-selected' (Bug#47300)
Martin Rudalics [Thu, 10 Jun 2021 07:14:21 +0000 (09:14 +0200)]
Provide new option `delete-window-set-selected' (Bug#47300)

When `delete-window' deletes its frame's selected window, this new
option allows to choose another window as replacement.

* lisp/window.el (get-lru-window, get-mru-window)
(get-largest-window): New optional argument NO-OTHER.
(window-at-pos): New function.
(delete-window-set-selected): New option.
(delete-window): Handle `delete-window-set-selected'.
* src/window.c (Fdelete_window_internal): Set the selected
window of WINDOW's frame to the first window on that frame and
let `delete-window' choose a more suitable window instead.
* doc/lispref/windows.texi (Deleting Windows): Describe new
option `delete-window-set-selected'.
(Cyclic Window Ordering): Describe new NO-OTHER argument for
`get-lru-window', `get-mru-window' and `get-largest-window'.
* etc/NEWS: Mention `delete-window-set-selected' and the NO-OTHER
argument.

3 years ago; perl-mode.el: Detect quote-like operator immediately after =>
Harald Jörg [Wed, 9 Jun 2021 20:58:53 +0000 (22:58 +0200)]
; perl-mode.el: Detect quote-like operator immediately after =>

* lisp/progmodes/perl-mode.el (perl-syntax-propertize-function):
Detect a quotelike operator immediately after a fat comma "=>"
(Bug#25098)

* test/lisp/progmodes/cperl-mode-tests.el (cperl-test-bug-25098):
Test case for the bug with code from the bug report.

* test/lisp/progmodes/cperl-mode-resources/cperl-bug-25098.pl:
Resource file for the test.

3 years agoRemove pause on fullscreening in NS (bug#48406)
Alan Third [Sat, 5 Jun 2021 13:38:17 +0000 (14:38 +0100)]
Remove pause on fullscreening in NS (bug#48406)

* src/nsterm.m (ns_make_frame_visible):
(ns_set_parent_frame):
([EmacsView windowWillEnterFullScreen:]):
([EmacsView windowDidEnterFullScreen:]):
([EmacsView windowWillExitFullScreen:]):
([EmacsView initFrameFromEmacs:]): Remove references to
in_fullscreen_transition.
([EmacsView toggleFullScreen:]): Remove calls to removed methods.
([EmacsView inFullScreenTransition]):
([EmacsView waitFullScreenTransition]): Remove Methods.
* src/nsterm.h (EmacsView): Remove defintions of removed methods, and
the in_fullscreen_transition variable.

3 years ago* lib/Makefile.in (Makefile): Fix typo.
Glenn Morris [Wed, 9 Jun 2021 16:51:18 +0000 (09:51 -0700)]
* lib/Makefile.in (Makefile): Fix typo.

3 years agoFix image filename encoding issues (bug#48902)
Alan Third [Tue, 8 Jun 2021 19:08:34 +0000 (20:08 +0100)]
Fix image filename encoding issues (bug#48902)

* src/image.c (image_find_image_fd): Don't return an encoded filename
string.
* src/nsfns.m: ([NSString stringWithLispString:]): Clarify usage
comment.
* src/nsimage.m ([EmacsImage allocInitFromFile:]): No need to encode
the filename when converting to NSString.

3 years ago* etc/NEWS: New user option 'shell-has-auto-cd'.
Michael Albinus [Wed, 9 Jun 2021 11:01:09 +0000 (13:01 +0200)]
* etc/NEWS: New user option 'shell-has-auto-cd'.

3 years agoHandle auto-cd in shell-mode
Jason Kim [Wed, 9 Jun 2021 09:44:34 +0000 (11:44 +0200)]
Handle auto-cd in shell-mode

* lisp/shell.el (shell-has-auto-cd): New defcustom.
(shell-directory-tracker): Handle implicit "cd".

Copyright-paperwork-exempt: yes

3 years agoNew user option for Git log switches
Utkarsh Singh [Tue, 1 Jun 2021 09:03:01 +0000 (14:33 +0530)]
New user option for Git log switches

* lisp/vc/vc-git.el (vc-git-diff-switches): New defcustom.
(vc-git-print-log): Use it.

* etc/NEWS: Announce the new option.

Copyright-paperwork-exempt: yes

3 years ago; perl-mode.el: Detect regexes immediately after "|&"
Harald Jörg [Tue, 8 Jun 2021 21:23:25 +0000 (23:23 +0200)]
; perl-mode.el: Detect regexes immediately after "|&"

* lisp/progmodes/perl-mode.el (perl-syntax-propertize-function):
Add "|&" to the list of characters after which a slash starts a
regular expression (Bug#23992).

* test/lisp/progmodes/cperl-mode-tests.el (cperl-test-ppss):
Correct the docstring.
(cperl-test-bug-23992): New test for Bug#23992.
(cperl-test-bug-42168): Adapt inline comments to the current code.

* test/lisp/progmodes/cperl-mode-resources/cperl-bug-23992.pl:
Resource file with example code from the bug report.

3 years ago* lisp/simple.el (yank-from-kill-ring): Add edited string to the kill-ring.
Juri Linkov [Tue, 8 Jun 2021 16:54:17 +0000 (19:54 +0300)]
* lisp/simple.el (yank-from-kill-ring): Add edited string to the kill-ring.

(Bug#48478)

3 years agoSync overlay code in minibuffer-message and set-minibuffer-message (bug#48669)
Juri Linkov [Tue, 8 Jun 2021 16:51:51 +0000 (19:51 +0300)]
Sync overlay code in minibuffer-message and set-minibuffer-message (bug#48669)

* lisp/minibuffer.el (minibuffer-message): Copy more overlay positioning code
from set-minibuffer-message.
(minibuffer--message-overlay-pos): Mention both minibuffer-message and
set-minibuffer-message in the docstring.
(set-minibuffer-message): Use 'cursor t' instead of 1.

3 years agoMerge from origin/emacs-27
Glenn Morris [Tue, 8 Jun 2021 14:50:36 +0000 (07:50 -0700)]
Merge from origin/emacs-27

37f4457994 (origin/emacs-27) ; Fix typo in dynamic module functions d...
f7d4bbceee ; * src/composite.h: Improve comments for LGSTRING and LGL...

3 years ago; Merge from origin/emacs-27
Glenn Morris [Tue, 8 Jun 2021 14:50:36 +0000 (07:50 -0700)]
; Merge from origin/emacs-27

The following commit was skipped:

bef00aa137 (emacs-27) ; Auto-commit of loaddefs files.

3 years agoChange the Gnus default to use `#' to toggle the process mark
Alex Bochannek [Tue, 8 Jun 2021 11:34:24 +0000 (13:34 +0200)]
Change the Gnus default to use `#' to toggle the process mark

* doc/misc/gnus.texi (Marking Groups, Topic Commands):
(Setting Process Marks, Pick and Read): Document the new default.
* lisp/gnus/gnus-group.el (gnus-group-make-menu-bar): Update menu.

* lisp/gnus/gnus-sum.el (gnus-summary-make-menu-bar): Update menu.

* lisp/gnus/gnus-topic.el (gnus-topic-make-menu-bar): Update menu.

* lisp/gnus/gnus.el (gnus-process-mark-toggle): Change default.

3 years agoMH-E: do not look for MH variants in relative directories
Stephen Gildea [Tue, 8 Jun 2021 04:47:24 +0000 (21:47 -0700)]
MH-E: do not look for MH variants in relative directories

* lisp/mh-e/mh-e.el (mh-variants): Do not examine relative directories
in exec-path (e.g., "."); these won't have MH installed.  Also,
file-chase-links is not robust with relative names: you cannot pass it
a relative name that is a symlink.

3 years agoFix an example in ERC docs
Stefan Kangas [Mon, 7 Jun 2021 23:58:18 +0000 (01:58 +0200)]
Fix an example in ERC docs

* doc/misc/erc.texi (Connecting):
* lisp/erc/erc.el (erc, erc-tls): Fix example to use J. Random Hacker
instead of Harry S. Truman.

3 years ago* doc/man/emacs.1.in: Minor fixes.
Stefan Kangas [Tue, 18 May 2021 17:03:36 +0000 (19:03 +0200)]
* doc/man/emacs.1.in: Minor fixes.

3 years agoRevert "src/nsterm.m: fix window tabbing on macOS"
Alan Third [Mon, 7 Jun 2021 22:13:33 +0000 (23:13 +0100)]
Revert "src/nsterm.m: fix window tabbing on macOS"

This reverts commit 2207f9adccc0411b7ad73a3703f16250d7f8e139.

3 years agoImprove support of remote files in browse-url.el
Michael Albinus [Mon, 7 Jun 2021 18:41:30 +0000 (20:41 +0200)]
Improve support of remote files in browse-url.el

* etc/NEWS: Mention support of remote file browsing.

* lisp/net/browse-url.el (browse-url-of-buffer): Revert last change.
(browse-url-of-file): Use temporary file in case of remote file.
(Bug#48397)

3 years ago; Fix typos in etc/NEWS
Michael Albinus [Mon, 7 Jun 2021 18:36:57 +0000 (20:36 +0200)]
; Fix typos in etc/NEWS

3 years agoMerge branch 'master' of git.savannah.gnu.org:/srv/git/emacs
Eli Zaretskii [Mon, 7 Jun 2021 12:03:56 +0000 (15:03 +0300)]
Merge branch 'master' of git.savannah.gnu.org:/srv/git/emacs

3 years agoFix rgrep abbreviation
Dmitry Gutov [Mon, 7 Jun 2021 12:03:11 +0000 (15:03 +0300)]
Fix rgrep abbreviation

* lisp/progmodes/grep.el (grep-mode-font-lock-keywords):
Update for the last change in grep-find-template (bug#48471).

3 years ago* src/xdisp.c (Fwindow_text_pixel_size): Plug memory leak. (Bug#48884)
Eli Zaretskii [Mon, 7 Jun 2021 12:03:06 +0000 (15:03 +0300)]
* src/xdisp.c (Fwindow_text_pixel_size): Plug memory leak.  (Bug#48884)

3 years agoSupport remote file names in `browse-url-of-buffer'
Michael Albinus [Mon, 7 Jun 2021 11:45:38 +0000 (13:45 +0200)]
Support remote file names in `browse-url-of-buffer'

* lisp/net/browse-url.el (browse-url-of-buffer): Use temporary
file in case of remote `file-name'.  (Bug#48397)

3 years ago; Mention the previous change in NEWS
Dmitry Gutov [Mon, 7 Jun 2021 02:00:41 +0000 (05:00 +0300)]
; Mention the previous change in NEWS

3 years agoSupport old BSD find and "root dir symlink" better
Dmitry Gutov [Mon, 7 Jun 2021 01:52:30 +0000 (04:52 +0300)]
Support old BSD find and "root dir symlink" better

* lisp/progmodes/grep.el (grep-compute-defaults):
Add '-H' to grep-find-template (bug#48471).

* lisp/cedet/semantic/symref/grep.el (semantic-symref-perform-search):
Pass the root directory name without the trailing slash.

* lisp/progmodes/xref.el (xref-matches-in-directory): Ditto.

* test/lisp/progmodes/xref-tests.el (xref--xref-file-name-display-is-abs)
(xref--xref-file-name-display-is-relative-to-project-root):
Make tests more strict again.

3 years agocompletion-pcm--hilit-commonality: Reuse the match-data cons cells
Dmitry Gutov [Sun, 6 Jun 2021 21:57:42 +0000 (00:57 +0300)]
completion-pcm--hilit-commonality: Reuse the match-data cons cells

* lisp/minibuffer.el (completion-pcm--hilit-commonality): Reuse
the match-data cons cells for better performance (bug#48841).

3 years agoFix a problem with restarting 'tags-search'
Eli Zaretskii [Sun, 6 Jun 2021 12:29:18 +0000 (15:29 +0300)]
Fix a problem with restarting 'tags-search'

* lisp/progmodes/etags.el (tags-search, tags-query-replace): Link
to 'fileloop-continue' instead of 'tags-loop-continue', for
continuing TAGS-based search/replace commands.

* lisp/fileloop.el (fileloop-continue): Reset
'switch-to-buffer-preserve-window-point' to nil when switching to
another buffer, so as to make sure a new search always restarts
from point-min in each buffer it searches.  (Bug#48628)

3 years agoClarify boolean widget prompt
Lars Ingebrigtsen [Sun, 6 Jun 2021 11:21:25 +0000 (13:21 +0200)]
Clarify boolean widget prompt

* lisp/wid-edit.el (widget-boolean-prompt-value): Clarify prompt
(bug#43593).

3 years agoClarify file reversion prompt
Lars Ingebrigtsen [Sun, 6 Jun 2021 11:04:12 +0000 (13:04 +0200)]
Clarify file reversion prompt

* lisp/files.el (revert-buffer--default): Clarify prompt when the
buffer is modified (bug#43884).

3 years agoMake `so-long' restore `view-mode'
Lars Ingebrigtsen [Sun, 6 Jun 2021 10:33:13 +0000 (12:33 +0200)]
Make `so-long' restore `view-mode'

* lisp/so-long.el (so-long): Make the `v' command in Dired work
more reliably (bug#45084).

3 years agoMinor copyedits in the Emacs user manual
Sebastian Urban [Sat, 29 May 2021 16:50:10 +0000 (18:50 +0200)]
Minor copyedits in the Emacs user manual

* doc/emacs/fixit.texi (Spelling): Move TeX hyphenation directives
from here...
* doc/emacs/docstyle.texi: ...to here.
* doc/emacs/display.texi (Displaying Boundaries, Text Display):
Minor stylistic changes.  (Bug#48654)

Copyright-paperwork-exempt: yes

3 years agoMinor fixes for last change
Eli Zaretskii [Sun, 6 Jun 2021 09:44:49 +0000 (12:44 +0300)]
Minor fixes for last change

* test/manual/etags/ETAGS.good_1:
* test/manual/etags/ETAGS.good_2:
* test/manual/etags/ETAGS.good_3:
* test/manual/etags/ETAGS.good_4:
* test/manual/etags/ETAGS.good_5:
* test/manual/etags/ETAGS.good_6: Adapt to added Mercury support.

* lib-src/etags.c (find_entries, test_objc_is_mercury):
* etc/NEWS: Fix punctuation and typos in last change.

3 years agoAdd support for Mercury (https://mercurylang.org) in 'etags'
Fabrice Nicol [Tue, 1 Jun 2021 02:15:59 +0000 (04:15 +0200)]
Add support for Mercury (https://mercurylang.org) in 'etags'

Tag declarations starting lines with ':-'.
By default, all declarations are tagged.  Optionally, first
predicate or functions in clauses can be tagged as in Prolog
support using '--declarations'.  (Bug#47408).
* lib-src/etags.c (test_objc_is_mercury, Mercury_functions)
(mercury_skip_comment,  mercury_decl, mercury_pr):
Implement Mercury support.  As Mercury and Objective-C have
the same file extension .m, a heuristic test tries to detect
the language.

* doc/man/etags.1: Document the change.  Add Mercury-specific
 behavior for '--declarations'.  This option tags first
predicates or functions in clauses in addition to declarations.

3 years agosrc/nsterm.m: fix window tabbing on macOS
Paul W. Rankin [Sat, 8 May 2021 09:09:59 +0000 (19:09 +1000)]
src/nsterm.m: fix window tabbing on macOS

* src/nsterm.m: remove NSWindowTabbingModeDisallowed to respect
  system-wide preferences
* etc/NEWS: add mention of native tab support in macOS and where
  to specify system-wide setting

3 years ago; Fix typo in dynamic module functions docs.
Basil L. Contovounesios [Sun, 6 Jun 2021 06:52:01 +0000 (07:52 +0100)]
; Fix typo in dynamic module functions docs.

3 years ago* lisp/net/tramp.el (tramp-error): Make it a defun.
Michael Albinus [Sun, 6 Jun 2021 06:38:40 +0000 (08:38 +0200)]
* lisp/net/tramp.el (tramp-error): Make it a defun.

3 years agoConsider environment vars in Fido's directory-aware RET binding
João Távora [Sat, 5 Jun 2021 20:46:59 +0000 (21:46 +0100)]
Consider environment vars in Fido's directory-aware RET binding

Fixes: bug#48782
* lisp/icomplete.el (icomplete-fido-ret): Consider environment
variables in dir expansion.

3 years agoFix Gnus summary exclusion when everything matches
Alex Bochannek [Sat, 5 Jun 2021 20:29:09 +0000 (22:29 +0200)]
Fix Gnus summary exclusion when everything matches

* lisp/gnus/gnus-sum.el (gnus-summary-limit-to-recipient):
* lisp/gnus/gnus-sum.el (gnus-summary-limit-to-subject):
(gnus-summary-limit-to-address, gnus-summary-limit-to-extra):
Don't claim that there aren't any matches when everything matches
an exclusion (bug#48834).

3 years ago* src/keyboard.c (read_decoded_event_from_main_queue): Fix paren typo
Stefan Monnier [Sat, 5 Jun 2021 15:57:57 +0000 (11:57 -0400)]
* src/keyboard.c (read_decoded_event_from_main_queue): Fix paren typo

3 years ago* lisp/mpc.el (mpc-intersection): Fix commit 1760029b0927242
Stefan Monnier [Thu, 3 Jun 2021 22:05:01 +0000 (18:05 -0400)]
* lisp/mpc.el (mpc-intersection): Fix commit 1760029b0927242

3 years agoDocument the last change
Eli Zaretskii [Sat, 5 Jun 2021 14:17:17 +0000 (17:17 +0300)]
Document the last change

* doc/lispref/os.texi (Input Modes): Document the changes in the
values of the META flag.

* etc/NEWS: Call out the change in input-meta-mode.

3 years agoSupport terminal emulators that encode the Meta modifier as 8th bit
Max Mikhanosha [Sat, 5 Jun 2021 13:57:43 +0000 (16:57 +0300)]
Support terminal emulators that encode the Meta modifier as 8th bit

See discussion starting at

 https://lists.gnu.org/archive/html/emacs-devel/2021-06/msg00034.html

for the details.
* src/keyboard.c (read_decoded_event_from_main_queue): For
raw-text encoed input, if Meta bit is encoded, apply the Meta
modifier to single-byte characters that have the 0x80 bit set.
For input encoded otherwise, if the Meta bit is encoded, remove
the 0x80 bit after decoding the characters.
(tty_read_avail_input): Reset the 0x80 bit only if Meta bit is not
encoded.
(Fset_input_meta_mode): Support 'encoded' as the value of META.
(Fset_input_mode): Document 'encoded' for META.
(Fcurrent_input_mode): Support and document 'encoded' as the value
of META.
(syms_of_keyboard): DEFSYM 'encoded'.

3 years agoFix slow operation of 'string-width'
Eli Zaretskii [Sat, 5 Jun 2021 11:16:06 +0000 (14:16 +0300)]
Fix slow operation of 'string-width'

* src/composite.c (find_automatic_composition): Accept one
additional argument BACKLIM; don't look back in buffer or string
farther than that.  Add an assertion for BACKLIM.
(composition_adjust_point, Ffind_composition_internal): Callers
adjusted.
* src/composite.h (find_automatic_composition): Adjust prototype.
* src/character.c (lisp_string_width): Call
'find_automatic_composition' with the value of BACKLIM equal to POS,
to avoid costly and unnecessary search back in the string, since
those previous characters were already checked for automatic
compositions.  (Bug#48734)  (Bug#48839)

3 years agoSome additions to the TeX input method
Eli Zaretskii [Sat, 5 Jun 2021 08:28:26 +0000 (11:28 +0300)]
Some additions to the TeX input method

* lisp/leim/quail/latin-ltx.el (latin-ltx--define-rules): Add some
rules from Unicode Technical Note 28 "UnicodeMath" v3.1.

3 years agoMake icomplete less blinky and more responsive
Dmitry Gutov [Sat, 5 Jun 2021 00:56:33 +0000 (03:56 +0300)]
Make icomplete less blinky and more responsive

* lisp/icomplete.el (icomplete-pre-command-hook, icomplete-tidy):
Remove, update the callers
(https://lists.gnu.org/archive/html/emacs-devel/2021-06/msg00111.html).
(icomplete-compute-delay): Change the default to 150ms.
(icomplete-max-delay-chars): Change the default to 2.

3 years agoAsk if dir and subdir dired buffers be killed when deleting dir
Tassilo Horn [Fri, 4 Jun 2021 19:58:11 +0000 (21:58 +0200)]
Ask if dir and subdir dired buffers be killed when deleting dir

Previously, when you've had dired buffers

  ~/foo/
  ~/foo/bar/
  ~/foo/bar/baz/

and then deleted ~/foo/, dired (with dired-clean-up-buffers-too set to
non-nil) would only ask to delete the dired buffer of ~/foo/.  Now it
will offer to delete all three buffers.

* lisp/dired.el (dired-buffers-for-dir): Add optional argument SUBDIRS
which makes the function return also dired buffers showing a subdir of
DIR.
(dired-in-this-tree-p): Make obsolete in favor of file-in-directory-p
which actually does what the name suggest whereas dired-in-this-tree-p
is just string-matching on filenames which will fail with symlinks
filenames including ./ or ../.

3 years agoFix documentation of a recent change.
Eli Zaretskii [Fri, 4 Jun 2021 13:50:43 +0000 (16:50 +0300)]
Fix documentation of a recent change.

* etc/NEWS:
* doc/emacs/misc.texi (Invoking emacsclient): Fix a recent change.
(Bug#11358)

3 years agoFix placement of point in Dired deletion operations
Stephen Berman [Fri, 4 Jun 2021 10:01:41 +0000 (12:01 +0200)]
Fix placement of point in Dired deletion operations

* lisp/dired.el (dired-do-flagged-delete, dired-do-delete): Use
point-marker instead of point to record each file name position.
Clean up the markers before returning.
(dired-internal-do-deletions): Move to the file name marker, and
then move point to the file name to visually emphasize which file
is being operated on (bug#48805).

3 years agoAdd a new `server-edit-abort' command
Harald Hanche-Olsen [Fri, 4 Jun 2021 09:09:46 +0000 (11:09 +0200)]
Add a new `server-edit-abort' command

* doc/emacs/misc.texi (Invoking emacsclient): Document it (bug#11358).

* lisp/server.el (server-edit): Mention it in the doc string.
(server-edit-abort): New command.

Copyright-paperwork-exempt: yes

3 years agoRevert "Make the `i' command in Info-mode remove duplicate matches"
Lars Ingebrigtsen [Fri, 4 Jun 2021 08:48:16 +0000 (10:48 +0200)]
Revert "Make the `i' command in Info-mode remove duplicate matches"

This reverts commit 089e0c4c55dcf72f9cf2f6f04b8a52fc7355499c.

There were no duplicate entries -- there were two entries
for different things that referred to the same line.

3 years agoFix documentation of recent 'windmove' changes
Eli Zaretskii [Fri, 4 Jun 2021 06:48:13 +0000 (09:48 +0300)]
Fix documentation of recent 'windmove' changes

* lisp/windmove.el (windmove-default-keybindings)
(windmove-display-default-keybindings)
(windmove-delete-default-keybindings)
(windmove-swap-states-default-keybindings): Improve doc strings.
(Bug#41438)

* etc/NEWS: Fix a typo in the 'windmove' entry.

3 years ago* lisp/simple.el (read-from-kill-ring): Fix the case of 'M-y M-p' (bug#48478)
Juri Linkov [Thu, 3 Jun 2021 20:54:30 +0000 (23:54 +0300)]
* lisp/simple.el (read-from-kill-ring): Fix the case of 'M-y M-p' (bug#48478)

Don't use offsets for read-from-kill-ring-history when kill-ring-yank-pointer
points to the last element of kill-ring.

3 years ago* lisp/help-fns.el (help--symbol-class): New function.
Juri Linkov [Thu, 3 Jun 2021 20:41:30 +0000 (23:41 +0300)]
* lisp/help-fns.el (help--symbol-class): New function.

Refactored from help--symbol-completion-table-affixation.
https://lists.gnu.org/archive/html/emacs-devel/2021-06/msg00066.html

3 years ago* etc/NEWS: Add windmove keybindings (bug#41438)
Juri Linkov [Thu, 3 Jun 2021 20:36:07 +0000 (23:36 +0300)]
* etc/NEWS: Add windmove keybindings (bug#41438)

3 years agoAdd user options for default windmove commands (bug#41438)
Philip Kaludercic [Thu, 27 May 2021 10:24:42 +0000 (12:24 +0200)]
Add user options for default windmove commands (bug#41438)

* windmove.el (windmove--default-keybindings-type): Add type.
(windmove-default-keybindings): Add user option.
(windmove-display-default-keybindings): Add user option.
(windmove-delete-default-keybindings): Add user option.
(windmove-swap-states-default-keybindings): Add user option.

3 years agoImprove windmove-*-default-keybindings functions (bug#41438)
Philip Kaludercic [Tue, 25 May 2021 09:47:51 +0000 (11:47 +0200)]
Improve windmove-*-default-keybindings functions (bug#41438)

* windmove.el (windmove-mode-map): Add special map for windmove commands.
(windmove-mode): Add minor mode for activating windmove-mode-map.
(windmove-install-defaults): Add general function for manipulating
windmove-mode-map.
(windmove-default-keybindings): Use windmove-install-defaults.
(windmove-display-default-keybindings): Use windmove-install-defaults.
(windmove-delete-default-keybindings): Use windmove-install-defaults.
(windmove-swap-states-default-keybindings): Use windmove-install-defaults.

3 years agoConstant-propagate (function SYMBOL)
Mattias Engdegård [Thu, 3 Jun 2021 19:20:57 +0000 (21:20 +0200)]
Constant-propagate (function SYMBOL)

* lisp/emacs-lisp/byte-opt.el (byte-optimize--substitutable-p):
Consider #'SYMBOL a constant for compile-time propagation purposes.

3 years agoOptimise (cons X nil) to (list X)
Mattias Engdegård [Thu, 3 Jun 2021 19:15:11 +0000 (21:15 +0200)]
Optimise (cons X nil) to (list X)

* lisp/emacs-lisp/byte-opt.el (byte-optimize-cons): New function.

3 years agoFix fill-column-indicator on TTY frames
Eli Zaretskii [Thu, 3 Jun 2021 14:45:12 +0000 (17:45 +0300)]
Fix fill-column-indicator on TTY frames

* src/xdisp.c (extend_face_to_end_of_line): Fix calculation of
fill-column-indicator on TTY frames.  Suggested by Jimmy Aguilar
Mena <spacibba@aol.com>.

3 years agoMore accurate highlighting of mis-spellings in Flyspell
Eli Zaretskii [Thu, 3 Jun 2021 12:57:14 +0000 (15:57 +0300)]
More accurate highlighting of mis-spellings in Flyspell

* lisp/textmodes/flyspell.el (flyspell-word): Highlight only the
misspelled word, not any extra characters after it.  (Bug#5575)

3 years agoMake the `i' command in Info-mode remove duplicate matches
Lars Ingebrigtsen [Thu, 3 Jun 2021 09:55:45 +0000 (11:55 +0200)]
Make the `i' command in Info-mode remove duplicate matches

* lisp/info.el (Info-index): Weed out duplicate matched
(bug#3692).

3 years agoFix up previous hideif change to avoid a compilation warning
Lars Ingebrigtsen [Thu, 3 Jun 2021 08:39:39 +0000 (10:39 +0200)]
Fix up previous hideif change to avoid a compilation warning

* lisp/progmodes/hideif.el
(hide-ifdef-expand-reinclusion-protection): Move to avoid a
compilation warning.

3 years agofringe-mode doc clarifications
Lars Ingebrigtsen [Thu, 3 Jun 2021 08:19:22 +0000 (10:19 +0200)]
fringe-mode doc clarifications

* lisp/fringe.el (fringe-mode):
(fringe-mode): Note that this variable and command have nothing to
do with modes (bug#6931).

3 years ago* lisp/progmodes/hideif.el: Fix initial version for new variables
Luke Lee [Thu, 3 Jun 2021 08:04:16 +0000 (16:04 +0800)]
* lisp/progmodes/hideif.el: Fix initial version for new variables

(hide-ifdef-verbose, hide-ifdef-evalulate-enter-hook)
(hide-ifdef-evalulate-leave-hook): Fix initial version to 28.1.
(hide-ifdef-expand-reinclusion-protection): Obsolete since 28.1,
rename to `hide-ifdef-expand-reinclusion-guard' instead.

3 years agoFix problem with empty command histories in eshell and `erase'
Lars Ingebrigtsen [Thu, 3 Jun 2021 07:50:20 +0000 (09:50 +0200)]
Fix problem with empty command histories in eshell and `erase'

* lisp/eshell/em-hist.el (eshell-add-input-to-history): Protect
against an empty ring (bug#48770).

3 years ago; Fix last change.
Eli Zaretskii [Thu, 3 Jun 2021 07:49:09 +0000 (10:49 +0300)]
; Fix last change.

3 years ago* configure.ac: Clarify "smoke test" error message. (Bug#48804)
Eli Zaretskii [Thu, 3 Jun 2021 07:46:54 +0000 (10:46 +0300)]
* configure.ac: Clarify "smoke test" error message.  (Bug#48804)

3 years agoCross-reference the message/error control variables
Lars Ingebrigtsen [Thu, 3 Jun 2021 07:29:55 +0000 (09:29 +0200)]
Cross-reference the message/error control variables

* src/keyboard.c (syms_of_keyboard): Mention set-message-function
in the command-error-function doc string...

* src/xdisp.c (syms_of_xdisp): ... and vice versa (bug#13752).

3 years ago* configure.ac: Improve error messages about libgccjit.
Eli Zaretskii [Thu, 3 Jun 2021 06:55:00 +0000 (09:55 +0300)]
* configure.ac: Improve error messages about libgccjit.

3 years agoAllow opening buttonized URL with secondary browser in rcirc
Tassilo Horn [Wed, 2 Jun 2021 21:02:45 +0000 (23:02 +0200)]
Allow opening buttonized URL with secondary browser in rcirc

* lisp/net/browse-url.el (browse-url-button-open-url): Add autoload
cookie.
* lisp/net/rcirc.el (rcirc-markup-urls): Use
`browse-url-button-open-url' instead of just `browse-url' in order to
be able to use the secondary browser by giving a prefix arg.

3 years ago; * src/composite.h: Improve comments for LGSTRING and LGLYPH.
Eli Zaretskii [Wed, 2 Jun 2021 14:50:57 +0000 (17:50 +0300)]
; * src/composite.h: Improve comments for LGSTRING and LGLYPH.

3 years agoFix a typo in 'produce_glyphless_glyph'
Eli Zaretskii [Wed, 2 Jun 2021 13:14:14 +0000 (16:14 +0300)]
Fix a typo in 'produce_glyphless_glyph'

* src/xdisp.c (produce_glyphless_glyph): Initialize lower_xoff.
Remove workaround for lack of its initialization.  (Bug#8215)

3 years ago* lisp/progmodes/hideif.el: update for new C++ standards and extensions
Luke Lee [Wed, 2 Jun 2021 12:29:00 +0000 (20:29 +0800)]
* lisp/progmodes/hideif.el: update for new C++ standards and extensions

Matching gcc/clang behavior on stringification including keeping the same
number of white spaces.  C++11, C++14, C++17 and GCC literals extension are
supported.  Preprocessing time floating point operation supported but limited
to Emacs internal representation which is C data type "double".  Also support
some frequently used keywords like __LINE__, __TIME__, __DATE__ and so on.

(hif-clear-all-ifdef-defined, hif-show-all, hif-after-revert-function)
(hide-ifdef-define, hide-ifdefs, show-ifdefs): interactive behavior changes,
mainly to allow operation within the marked region.
(hif-eval, hif-__LINE__, hif-__FILE__, hif-__COUNTER__, hif-__cplusplus)
(hif-__DATE__, hif-__TIME__, hif-__STDC__, hif-__STDC_VERSION__)
(hif-__STDC_HOST__, hif-__FILE__, hif-full-match, hif-is-number, hif-is-float)
(hif-delete-char-in-string, hif-string-to-decfloat, hif-string-to-hexfloat)
(hif-strtok, hif-is-white, hif-backward-comment, hif-split-signed-token)
(hif-keep-single, hif-display-macro): new functions.
(hide-ifdef-verbose, hide-ifdef-evalulate-enter-hook)
(hide-ifdef-evalulate-leave-hook, hide-ifdef-evaluator, hif-predefine-alist)
(hif-numtype-suffix-regexp, hif-bin-regexp, hif-hex-regexp, hif-oct-regexp)
(hif-dec-regexp, hif-decfloat-regexp, hif-hexfloat-regexp)
(hif-unicode-prefix-regexp, hif-verbose-define-count): new constants or
variables.
(hif-macroref-regexp, hif-token-alist, hif-token-regexp)
(hif-string-literal-regexp): modified constants for faster regexp processing.
(hide-ifdef-expand-reinclusion-guard): renamed from
`hide-ifdef-expand-reinclusion-protection' to match commonly used term.
(hif-lookup, hif-defined, hif-string-to-number, hif-tokenize, hif-nextoken)
(hif-if-valid-identifier-p, hif-define-operator, hif-expand-token-list)
(hif-parse-exp, hif-math, hif-factor, hif-get-argument-list, hif-stringify)
(hif-token-concat, hif-mathify, hif-comma, hif-token-stringification)
(hif-token-concatenation, hif-macro-supply-arguments, hif-evaluate-macro)
(hif-find-define, hif-add-new-defines, hide-ifdef-guts, hif-undefine-symbol)
(hide-ifdef-set-define-alist, hide-ifdef-use-define-alist): modified functions
for new internal data representation, mainly for stringification and white
space preservation.  Also better error handling to report source line number
and more informative error messages.

3 years agoFix ibuffer auto-shrinking windows
Lars Ingebrigtsen [Wed, 2 Jun 2021 08:54:37 +0000 (10:54 +0200)]
Fix ibuffer auto-shrinking windows

* lisp/ibuffer.el (ibuffer-shrink-to-fit): Don't shrink all
windows, just the ibuffer one (bug#7218).

3 years agoMove point in dired buffers when handling a list of files
Lars Ingebrigtsen [Wed, 2 Jun 2021 08:13:58 +0000 (10:13 +0200)]
Move point in dired buffers when handling a list of files

* lisp/dired-aux.el (dired-create-files): Advance point to the
current file (bug#8015).

3 years agoAdd new user option to Gnus to allow `#' to toggle
Alex Bochannek [Wed, 2 Jun 2021 05:41:25 +0000 (07:41 +0200)]
Add new user option to Gnus to allow `#' to toggle

* doc/misc/gnus.texi (Marking Groups, Setting Process Marks):
Mention the new variable.

* lisp/gnus/gnus-group.el (gnus-group-make-menu-bar): Update menu.
(gnus-group-mark-group): Support the variable.
(gnus-group-mark-update): New command.
(gnus-group-unmark-group, gnus-group-mark-region): Pass in new
parameter.

* lisp/gnus/gnus-sum.el (gnus-summary-make-menu-bar): Update menu.
(gnus-summary-mark-as-processable): Use the variable.

* lisp/gnus/gnus-topic.el (gnus-topic-mark-topic):  (bug#48683).

* lisp/gnus/gnus-topic.el (gnus-topic-mark-topic): Use the variable.

* lisp/gnus/gnus.el (gnus-process-mark-toggle): New user option.

3 years ago; End recently added sentences with a period.
Basil L. Contovounesios [Tue, 1 Jun 2021 16:59:46 +0000 (17:59 +0100)]
; End recently added sentences with a period.

3 years ago; Bump isearch.el :version after recent change.
Basil L. Contovounesios [Tue, 1 Jun 2021 17:04:48 +0000 (18:04 +0100)]
; Bump isearch.el :version after recent change.

3 years agoImprove performance of NS port's display on macOS
Alan Third [Fri, 21 May 2021 12:33:56 +0000 (13:33 +0100)]
Improve performance of NS port's display on macOS

* src/nsterm.h: Update EmacsSurface definition.
* src/nsterm.m ([EmacsView focusOnDrawingBuffer]): Don't change the
CGContext's settings directly.
([EmacsView unfocusDrawingBuffer]): Don't release the context here.
(CACHE_MAX_SIZE): Add maximum cache size.
([EmacsView updateLayer]): Send a request for getContext, which will
copy the buffer and create the context if it doesn't already exist, to
the NS run loop.
([EmacsSurface initWithSize:ColorSpace:Scale:]): Add the scale factor
and if there's already a CGContext available, reuse it.
([EmacsSurface dealloc]): No longer need to release lastSurface
separately.
([EmacsSurface getContext]): Don't create more surfaces than we have
spaces for in the cache.
([EmacsSurface releaseContext]): If there's no context don't try to
release it and put currentSurface back on the cache instead of
lastSurface.
([EmacsSurface copyContentsTo:]): Don't try to copy if the source and
destination are actually the same surface.

3 years ago* Add `native-compile-target-directory' (bug#48743)
Andrea Corallo [Tue, 1 Jun 2021 15:17:42 +0000 (17:17 +0200)]
* Add `native-compile-target-directory' (bug#48743)

* lisp/emacs-lisp/comp.el (native-compile-target-directory): New
variable.
(comp-spill-lap-function): Make use of.

3 years agoRename batch-byte-native-compile-for-bootstrap (bug#48743)
Andrea Corallo [Tue, 1 Jun 2021 15:10:10 +0000 (17:10 +0200)]
Rename batch-byte-native-compile-for-bootstrap (bug#48743)

* lisp/Makefile.in : Rename `batch-byte-native-compile-for-bootstrap'
-> `batch-byte+native-compile.
* lisp/emacs-lisp/bytecomp.el (byte+native-compile)
(byte-compile-file): Rename
`batch-byte-native-compile-for-bootstrap' ->
`batch-byte+native-compile + `byte-native-for-bootstrap' ->
`byte+native-compile'.
* lisp/emacs-lisp/comp.el (comp-spill-lap-function, comp-final)
(batch-native-compile, batch-byte+native-compile): Likewise.
* lisp/emacs-lisp/bytecomp.el (byte+native-compile)
(byte-compile-file): Likewise.
* test/src/comp-tests.el (comp-tests-bootstrap): Rename
`byte-native-for-bootstrap' -> `byte+native-compile'.

3 years agoRemove unnecessary function declaration in isearch
Glenn Morris [Tue, 1 Jun 2021 15:52:47 +0000 (08:52 -0700)]
Remove unnecessary function declaration in isearch

* lisp/isearch.el (multi-isearch-switch-buffer):
Remove unnecessary declaration (after ldefs-boot update).

3 years agoAvoid hang in nnimap-keepalive
Andreas Schwab [Tue, 1 Jun 2021 13:46:34 +0000 (15:46 +0200)]
Avoid hang in nnimap-keepalive

* lisp/gnus/nnimap.el (nnimap-keepalive): Make interruptable.

3 years ago; Auto-commit of loaddefs files.
Glenn Morris [Tue, 1 Jun 2021 13:29:13 +0000 (06:29 -0700)]
; Auto-commit of loaddefs files.

3 years ago* lisp/gnus/gnus-art.el: Don't sneak dynbound code via quoting
Stefan Monnier [Tue, 1 Jun 2021 13:14:53 +0000 (09:14 -0400)]
* lisp/gnus/gnus-art.el: Don't sneak dynbound code via quoting

Make sure we don't accidentally quote lambdas by embedding them within
quoted data.

(gnus-visible-headers, gnus-emphasis-alist)
(gnus-mime-display-alternative, gnus-article-describe-bindings):
Unquote lambdas.

3 years ago; Auto-commit of loaddefs files.
Glenn Morris [Tue, 1 Jun 2021 13:12:39 +0000 (06:12 -0700)]
; Auto-commit of loaddefs files.

3 years agoAdd annotation capability to icomplete-vertical-mode
João Távora [Tue, 25 May 2021 21:40:40 +0000 (22:40 +0100)]
Add annotation capability to icomplete-vertical-mode

Co-authored-by Daniel Mendler <mail@daniel-mendler.de>

* lisp/icomplete.el (icomplete--affixate): New helper.
(icomplete--render-vertical): Use it. Rework.
(icomplete-completions): Pass md to icomplete--render-vertical.