]> git.eshelyaron.com Git - emacs.git/log
emacs.git
3 years agoAdapt Tramp versions
Michael Albinus [Mon, 30 Nov 2020 12:44:44 +0000 (13:44 +0100)]
Adapt Tramp versions

* doc/misc/tramp.texi (Obtaining @value{tramp}):
(Remote shell setup, Remote processes, Archive file names):
* lisp/net/trampver.el (customize-package-emacs-version-alist):
Adapt Tramp versions.

3 years agoImprove docstrings
Dmitry Gutov [Mon, 30 Nov 2020 01:33:14 +0000 (03:33 +0200)]
Improve docstrings

* lisp/progmodes/project.el (project-find-file)
(project-or-external-find-file): More accurate docstrings (bug#44588).

3 years agoFix double-free bug when finalizing module runtimes.
Philipp Stephani [Sun, 29 Nov 2020 20:13:02 +0000 (21:13 +0100)]
Fix double-free bug when finalizing module runtimes.

* src/emacs-module.c (finalize_runtime_unwind): Don't finalize initial
environment twice.

* test/src/emacs-module-resources/mod-test.c (emacs_module_init):
Allocate lots of values during module initialization to trigger the
bug.

3 years ago* lisp/simple.el (read-from-kill-ring): Call current-kill to prefill kill-ring
Juri Linkov [Sun, 29 Nov 2020 19:54:53 +0000 (21:54 +0200)]
* lisp/simple.el (read-from-kill-ring): Call current-kill to prefill kill-ring

3 years agoFix MINIBUF 'nomini' arg for windmove/window-in-direction (bug#44932)
Juri Linkov [Sun, 29 Nov 2020 19:48:01 +0000 (21:48 +0200)]
Fix MINIBUF 'nomini' arg for windmove/window-in-direction (bug#44932)

* lisp/windmove.el (windmove-display-in-direction)
(windmove-delete-in-direction, windmove-swap-states-in-direction):
Add 'nomini' as MINIBUF arg of window-in-direction.

* lisp/window.el (window-in-direction): Rename arg MINI to MINIBUF.
Update docstring from walk-window-tree.
Send MINIBUF arg to walk-window-tree unchanged.

3 years agoAllow doprint to handle multibyte chars in format (bug#44349)
Alan Third [Fri, 27 Nov 2020 22:11:47 +0000 (22:11 +0000)]
Allow doprint to handle multibyte chars in format (bug#44349)

* src/doprnt.c (doprnt): Handle the case where fmtchar is the start of
a multibyte character.

3 years agoMake log-view-commit-body less intrusive
Protesilaos Stavrou [Sun, 29 Nov 2020 10:43:38 +0000 (11:43 +0100)]
Make log-view-commit-body less intrusive

* lisp/vc/log-view.el (log-view-commit-body): Inherit from
font-lock-comment-face.  This makes expanded commit messages in
log-view look the same as they did prior to commit 1f0b929430 (consult
bug#44424) (bug#44937).

3 years agoframe-position doc string clarificaton
Lars Ingebrigtsen [Sun, 29 Nov 2020 10:10:42 +0000 (11:10 +0100)]
frame-position doc string clarificaton

* src/frame.c (Fframe_position): Mention that the values are
system-dependent (bug#32977).

3 years agogarbage-collect doc string clarification
Lars Ingebrigtsen [Sun, 29 Nov 2020 10:05:10 +0000 (11:05 +0100)]
garbage-collect doc string clarification

* src/alloc.c (Fgarbage_collect): Mention that calling this
function is not guaranteed to collect all the garbage (bug#34404).

3 years agoTweak eww-use-browse-url doc string
Lars Ingebrigtsen [Sun, 29 Nov 2020 09:54:58 +0000 (10:54 +0100)]
Tweak eww-use-browse-url doc string

* lisp/net/eww.el (eww-use-browse-url): Tweak doc string wording.

3 years agoUpdate TUTORIAL.it
Lele Gaifax [Sat, 28 Nov 2020 08:48:09 +0000 (09:48 +0100)]
Update TUTORIAL.it

* etc/tutorials/TUTORIAL.it: Follow changes made to TUTORIAL in the
last year

3 years ago* etc/tutorials/TUTORIAL.sv: General copy-editing.
Mattias Engdegård [Sat, 28 Nov 2020 11:28:45 +0000 (12:28 +0100)]
* etc/tutorials/TUTORIAL.sv: General copy-editing.

3 years agoUse correct glyph in title when resizing NS frames
Mattias Engdegård [Fri, 27 Nov 2020 20:16:15 +0000 (21:16 +0100)]
Use correct glyph in title when resizing NS frames

* src/nsterm.m ([EmacsView windowWillResize:toSize:]): Use ×, not x.

3 years agoFix incorrect handling of module runtime and environment pointers.
Philipp Stephani [Fri, 27 Nov 2020 18:08:55 +0000 (19:08 +0100)]
Fix incorrect handling of module runtime and environment pointers.

We used to store module runtime and environment pointers in the static
lists Vmodule_runtimes and Vmodule_environments.  However, this is
incorrect because these objects have to be kept per-thread.  With this
naive approach, interleaving module function calls in separate threads
leads to environments being removed in the wrong order, which in turn
can cause local module values to be incorrectly garbage-collected.
The fix isn't completely trivial: specbinding the lists wouldn't work
either, because then the garbage collector wouldn't find the
environments in other threads than the current ones, again leading to
objects being garbage-collected incorrectly.  While introducing custom
pseudovector types would fix this, it's simpler to put the runtime and
environment pointers into the specbinding list as new specbinding
kinds.  This works since we need to unwind them anyway, and we only
ever treat the lists as a stack.  The thread switching machinery
ensures that the specbinding lists are thread-local, and that all
elements of the specbinding lists in all threads are marked during
garbage collection.

Module assertions now have to walk the specbinding list for the
current thread, which is more correct since they now only find
environments for the current thread.  As a result, we can now remove
the faulty Vmodule_runtimes and Vmodule_environments variables
entirely.

Also add a unit test that exemplifies the problem.  It interleaves two
module calls in two threads so that the first call ends while the
second one is still active.  Without this change, this test triggers
an assertion failure.

* src/lisp.h (enum specbind_tag): Add new tags for module runtimes and
environments.

* src/eval.c (record_unwind_protect_module): New function to record a
module object in the specpdl list.
(do_one_unbind): Unwind module objects.
(backtrace_eval_unrewind, default_toplevel_binding, lexbound_p)
(Fbacktrace__locals): Deal with new specbinding types.
(mark_specpdl): Mark module environments as needed.

* src/alloc.c (garbage_collect): Remove call to 'mark-modules'.
Garbage collection of module values is now handled as part of marking
the specpdl of each thread.

* src/emacs-module.c (Fmodule_load, funcall_module): Use specpdl to
record module runtimes and environments.
(module_assert_runtime, module_assert_env, value_to_lisp): Walk
through specpdl list instead of list variables.
(mark_module_environment): Rename from 'mark_modules'.  Don't attempt
to walk though current thread's environments only, since that would
miss other threads.
(initialize_environment, finalize_environment): Don't change
Vmodule_environments variable; environments are now in the specpdl
list.
(finalize_environment_unwind, finalize_runtime_unwind): Make 'extern'
since do_one_unbind now calls them.
(finalize_runtime_unwind): Don't change Vmodule_runtimes variable;
runtimes are now in the specpdl list.
(syms_of_module): Remove Vmodule_runtimes and Vmodule_environments.

* test/data/emacs-module/mod-test.c (Fmod_test_funcall): New test
function.
(emacs_module_init): Bind it.

* test/src/emacs-module-tests.el (emacs-module-tests--variable): New
helper type to guard access to state in a thread-safe way.
(emacs-module-tests--wait-for-variable)
(emacs-module-tests--change-variable): New helper functions.
(emacs-module-tests/interleaved-threads): New unit test.

3 years ago; * src/lisp.h (enum specbind_tag): Fix typo.
Philipp Stephani [Fri, 27 Nov 2020 19:04:20 +0000 (20:04 +0100)]
; * src/lisp.h (enum specbind_tag): Fix typo.

3 years ago* lisp/subr.el (activate-change-group): Refine fix for bug#33341
Stefan Monnier [Fri, 27 Nov 2020 15:19:21 +0000 (10:19 -0500)]
* lisp/subr.el (activate-change-group): Refine fix for bug#33341

3 years agoMake the 'cucumber' compilation pattern work without 'omake'
Mattias Engdegård [Tue, 24 Nov 2020 11:05:47 +0000 (12:05 +0100)]
Make the 'cucumber' compilation pattern work without 'omake'

When 'omake' is included in compilation-error-regexp-alist, which it
still is by default, then all other rules are modified to match with
an extra leading 6 spaces as well. The 'cucumber' pattern relied on
this in order to work as intended.

* lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
Extend the 'cucumber' pattern so that it works even when 'omake'
is not included.  Move it below the 'gnu' rule so that it doesn't
match anything else.

3 years agoUpdate TUTORIAL.de and TUTORIAL.fr
Mattias Engdegård [Fri, 27 Nov 2020 14:29:22 +0000 (15:29 +0100)]
Update TUTORIAL.de and TUTORIAL.fr

* etc/tutorials/TUTORIAL.de:
* etc/tutorials/TUTORIAL.fr: Follow recent changes in TUTORIAL.

3 years ago* lisp/subr.el (activate-change-group): Fix bug#33341
Stefan Monnier [Fri, 27 Nov 2020 14:43:56 +0000 (09:43 -0500)]
* lisp/subr.el (activate-change-group): Fix bug#33341

3 years agoUpdate TUTORIAL.es
Stefan Kangas [Fri, 27 Nov 2020 09:36:15 +0000 (10:36 +0100)]
Update TUTORIAL.es

* etc/tutorials/TUTORIAL.es: A followup to recent changes in
TUTORIAL.

3 years agoUpdate TUTORIAL.sv
Stefan Kangas [Fri, 27 Nov 2020 09:22:42 +0000 (10:22 +0100)]
Update TUTORIAL.sv

* etc/tutorials/TUTORIAL.sv: A followup to recent changes in
TUTORIAL.  Minor tweaks for grammar and style.

3 years agoAdd completion-tab-width to align prefix chars with names in read-char-by-name
Juri Linkov [Fri, 27 Nov 2020 09:17:12 +0000 (11:17 +0200)]
Add completion-tab-width to align prefix chars with names in read-char-by-name

* lisp/international/mule-cmds.el (mule--ucs-names-affixation):
Replace mule--ucs-names-annotation to display chars in prefixes
that implements two FIXME items.
(read-char-by-name): Let-bind completion-tab-width to 4.
Use affixation-function instead of annotation-function.

* lisp/minibuffer.el (completion-tab-width): New variable.
(completion--insert-strings): Align colwidth to tab positions
when completion-tab-width is non-nil.

* lisp/simple.el (completion-setup-function): Set tab-width to
completion-tab-width when completion-tab-width is non-nil.

https://lists.gnu.org/archive/html/emacs-devel/2020-11/msg01263.html

3 years ago* lisp/simple.el (read-from-kill-ring): Use frame-text-cols, not frame-width.
Juri Linkov [Fri, 27 Nov 2020 09:00:43 +0000 (11:00 +0200)]
* lisp/simple.el (read-from-kill-ring): Use frame-text-cols, not frame-width.

3 years agoUpdate TUTORIAL.he
Eli Zaretskii [Fri, 27 Nov 2020 08:50:15 +0000 (10:50 +0200)]
Update TUTORIAL.he

* etc/tutorials/TUTORIAL.he: A followup to recent changes in
TUTORIAL.

3 years agoFix up previous server exit directory deletion
Lars Ingebrigtsen [Fri, 27 Nov 2020 08:23:53 +0000 (09:23 +0100)]
Fix up previous server exit directory deletion

* lisp/server.el (server-start): Only delete the server directory
if it's in /tmp (bug#44644).

3 years agoFix modification check when custom-form is `lisp'
Dario Gjorgjevski [Thu, 26 Nov 2020 10:59:23 +0000 (11:59 +0100)]
Fix modification check when custom-form is `lisp'

* lisp/cus-edit.el (custom-variable-modified-p): Quote the value when
custom form is 'lisp (or 'mismatch) prior to comparing in order to
accommodate `custom-variable-value-create' (bug#44852).

3 years agoRemove keyboard anachronisms from tutorial
Mattias Engdegård [Thu, 26 Nov 2020 16:08:26 +0000 (17:08 +0100)]
Remove keyboard anachronisms from tutorial

* etc/tutorials/TUTORIAL: Don't keep referring to EDIT as if it were a
common name for the Meta key; since a few decades back it's labelled
Alt (or Option or ⌥ but those keys usually also have 'alt' engraved on
them).  Similarly, CTL is practically extinct and not worth
mentioning.

3 years agoFix replace-regexp-in-string substring match data translation
Mattias Engdegård [Wed, 25 Nov 2020 14:32:08 +0000 (15:32 +0100)]
Fix replace-regexp-in-string substring match data translation

For certain patterns, re-matching the same regexp on the matched
substring does not produce correctly translated match data
(bug#15107 and bug#44861).

Using a new builtin function also improves performance since the
number of calls to string-match is halved.

Reported by Kevin Ryde and Shigeru Fukaya.

* lisp/subr.el (replace-regexp-in-string): Translate the match data
using match-data--translate instead of trusting a call to string-match
on the matched string to do the job.
* test/lisp/subr-tests.el (subr-replace-regexp-in-string):
Add test cases.
* src/search.c (Fmatch_data__translate): New internal function.
(syms_of_search): Register it as a subroutine.

3 years agoKeep point in the *eldoc* buffer in eldoc-display-in-echo-area
Lars Ingebrigtsen [Thu, 26 Nov 2020 10:24:20 +0000 (11:24 +0100)]
Keep point in the *eldoc* buffer in eldoc-display-in-echo-area

* lisp/emacs-lisp/eldoc.el (eldoc-display-in-echo-area): Use
'save-excursion' to keep point position in *eldoc* buffer.
Suggested by Andrii Kolomoiets <andreyk.mad@gmail.com>.

3 years agoAllow following symlinks when recompiling directories
Lars Ingebrigtsen [Thu, 26 Nov 2020 10:00:35 +0000 (11:00 +0100)]
Allow following symlinks when recompiling directories

* doc/lispref/compile.texi (Compilation Functions): Document it.
* lisp/emacs-lisp/bytecomp.el (byte-recompile-directory): Allow
following symlinks (bug#10292).

3 years ago; * etc/NEWS: Add some missing documentation markers.
Stefan Kangas [Thu, 26 Nov 2020 06:00:19 +0000 (07:00 +0100)]
; * etc/NEWS: Add some missing documentation markers.

3 years ago* lisp/files.el (auto-mode-alist): Add entry for "archive-contents".
Stefan Kangas [Thu, 26 Nov 2020 05:37:18 +0000 (06:37 +0100)]
* lisp/files.el (auto-mode-alist): Add entry for "archive-contents".

3 years agoAdd "replied" -> "answered" for gnus-search imap searches
Eric Abrahamsen [Wed, 25 Nov 2020 23:26:06 +0000 (15:26 -0800)]
Add "replied" -> "answered" for gnus-search imap searches

* lisp/gnus/gnus-search.el (gnus-search-imap-handle-flag): This allows
"mark:A" to be translated into "ANSWERED" and "-mark:A" to be
translated into "UNANSWERED".

3 years agoAssume default imap TEXT search even when not using parsed queries
Eric Abrahamsen [Sat, 14 Nov 2020 21:37:08 +0000 (13:37 -0800)]
Assume default imap TEXT search even when not using parsed queries

This behavior both better matches the previous nnir behavior, reducing
confusion for new users, and matches behavior when using parsed
queries.

* lisp/gnus/gnus-search.el (gnus-search-imap-search-keys): Make sure
this variable contains all known IMAP search keys.
(gnus-search-run-search): If the search query doesn't start with a
known search key, prepend "TEXT " to the query.

3 years agoUse null-device where appropriate
Michael Albinus [Wed, 25 Nov 2020 21:13:33 +0000 (22:13 +0100)]
Use null-device where appropriate

* lisp/filesets.el (filesets-select-command):
* lisp/shell.el (shell-mode):
* lisp/term.el (term-exec-1):
* lisp/wdired.el (wdired-do-symlink-changes):
* lisp/cedet/ede/pmake.el (ede-proj-makefile-create):
* lisp/eshell/esh-io.el (eshell-set-output-handle):
* lisp/gnus/gnus-fun.el (gnus-grab-cam-x-face):
* lisp/gnus/mml2015.el (mml2015-epg-key-image):
* lisp/gnus/smime.el (smime-noverify-region):
* lisp/org/ob-picolisp.el (org-babel-execute:picolisp):
* lisp/org/ob-screen.el (org-babel-prep-session:screen)
(org-babel-prep-session:screen):
* lisp/play/fortune.el (fortune-quiet-strfile-options):
* lisp/progmodes/cperl-mode.el (cperl-pod2man-build-command):
* lisp/progmodes/sh-script.el (sh-tmp-file):
* lisp/vc/diff-mode.el (diff-add-log-current-defuns)
(diff--font-lock-prettify):
* lisp/vc/ediff-mult.el (ediff-patch-file-form-meta):
* lisp/vc/ediff-ptch.el (ediff-map-patch-buffer)
(ediff-fixup-patch-map, ediff-dispatch-file-patching-job):
* lisp/vc/vc.el (vc-diff-internal): Use null-device or  (null-device),
respectively.  (Bug#3736)

3 years ago* lisp/minibuffer.el (completions-format): Add new value 'one-column'.
Juri Linkov [Wed, 25 Nov 2020 20:24:11 +0000 (22:24 +0200)]
* lisp/minibuffer.el (completions-format): Add new value 'one-column'.

* lisp/minibuffer.el (completion--insert-strings): Support 'one-column'.

* lisp/simple.el (read-from-kill-ring): Truncate strings at frame-width.

3 years ago(defvar): Detect defining a variable currently lexically bound
Stefan Monnier [Wed, 25 Nov 2020 19:49:55 +0000 (14:49 -0500)]
(defvar): Detect defining a variable currently lexically bound

* src/eval.c (lexbound_p): New function.
(Finternal__define_uninitialized_variable): Use it.

3 years agoAdd tests for replace-regexp-in-string
Mattias Engdegård [Wed, 25 Nov 2020 12:56:39 +0000 (13:56 +0100)]
Add tests for replace-regexp-in-string

* test/lisp/subr-tests.el (subr-replace-regexp-in-string): New.

3 years ago* doc/lispref/searching.texi (Rx Constructs): Group numbering fix
Mattias Engdegård [Wed, 25 Nov 2020 11:39:56 +0000 (12:39 +0100)]
* doc/lispref/searching.texi (Rx Constructs): Group numbering fix

3 years ago* test/lisp/net/tramp-tests.el (tramp-test29-start-file-process):
Michael Albinus [Wed, 25 Nov 2020 11:24:08 +0000 (12:24 +0100)]
* test/lisp/net/tramp-tests.el (tramp-test29-start-file-process):

Use `tramp--test-windows-nt-p'.

3 years agoMerge from origin/emacs-27
Michael Albinus [Wed, 25 Nov 2020 11:18:23 +0000 (12:18 +0100)]
Merge from origin/emacs-27

6442cdc0e4 Revert extra focus redirection in do_switch_frame (Bug#24803)
fc4379f1ae Minor cleanup of tramp-tests.el on MS Windows
dea3d6aa18 Fix handling of defcustom :local tag

3 years ago; Merge from origin/emacs-27
Michael Albinus [Wed, 25 Nov 2020 10:49:54 +0000 (11:49 +0100)]
; Merge from origin/emacs-27

The following commit was skipped:

b2ee665024 CC Mode.  Fix an off by one error.  Fixes bug #41809

3 years agoMerge from origin/emacs-27
Michael Albinus [Wed, 25 Nov 2020 10:49:54 +0000 (11:49 +0100)]
Merge from origin/emacs-27

f425a774c2 Fix display artifacts when 'display' properties cover newl...

3 years agoRevert extra focus redirection in do_switch_frame (Bug#24803)
Martin Rudalics [Wed, 25 Nov 2020 08:58:21 +0000 (09:58 +0100)]
Revert extra focus redirection in do_switch_frame (Bug#24803)

* src/frame.c (do_switch_frame): Do not also redirect frame
focus when FRAME has its minibuffer window on the selected
frame which was intended to fix Bug#24500.  It may cause
Bug#24803 and lead to a nasty state where no active cursor is
shown on any frame, see
https://lists.gnu.org/archive/html/emacs-devel/2020-11/msg01137.html.

3 years agoAdd 'completions-detailed' to add prefix/suffix with 'affixation-function'
Juri Linkov [Wed, 25 Nov 2020 08:46:59 +0000 (10:46 +0200)]
Add 'completions-detailed' to add prefix/suffix with 'affixation-function'

* doc/lispref/minibuf.texi (Completion Variables)
(Programmed Completion): Add affixation-function.

* lisp/help-fns.el (help--symbol-completion-table-affixation): New function.
(help--symbol-completion-table): Set affixation-function when
completions-detailed is non-nil.

* lisp/minibuffer.el (completion-metadata): Add affixation-function
to docstring.
(completions-annotations): Inherit from shadow with italic.
(completions-detailed): New defcustom.
(completion--insert-strings): Count string-width on all strings in
completion list.  Insert prefix and suffix.
(completion-extra-properties): Add affixation-function to docstring.
(minibuffer-completion-help): Call affixation-function.
(minibuffer-default-prompt-format): Move down closer to its use.

https://lists.gnu.org/archive/html/emacs-devel/2020-11/msg00613.html

3 years agoMinor cleanup of tramp-tests.el on MS Windows
Michael Albinus [Wed, 25 Nov 2020 08:41:11 +0000 (09:41 +0100)]
Minor cleanup of tramp-tests.el on MS Windows

* test/lisp/net/tramp-tests.el (tramp-test29-start-file-process):
Do not test remote pty on MS Windows.

3 years agoMove code in face-remap.el to avoid a compilation warning
Lars Ingebrigtsen [Wed, 25 Nov 2020 05:29:10 +0000 (06:29 +0100)]
Move code in face-remap.el to avoid a compilation warning

* lisp/face-remap.el (text-scale--refresh): Move code to avoid
compilation warning.

In text-scale--refresh:
face-remap.el:241:14: Warning: reference to free variable ‘text-scale-mode’

3 years agoMake text-scale-mode optionally adjust the header line
Stefan Kangas [Wed, 25 Nov 2020 02:03:48 +0000 (03:03 +0100)]
Make text-scale-mode optionally adjust the header line

* lisp/face-remap.el
(text-scale-remap-header-line-face): New buffer local variable.
(text-scale-mode): Adjust header line if above variable is non-nil.
(face-remap--clear-remappings, face-remap--remap-face): New defuns.
* lisp/face-remap.el: Arrange to watch text-scale-mode-remapping.
(text-scale--refresh): New function.

* lisp/emacs-lisp/tabulated-list.el (tabulated-list-mode): Use
text-scale-remap-header-line.  (Bug#41852)

3 years agoYank items selected from kill-ring using completion and minibuffer history
Juri Linkov [Tue, 24 Nov 2020 19:23:41 +0000 (21:23 +0200)]
Yank items selected from kill-ring using completion and minibuffer history

* doc/emacs/killing.texi (Earlier Kills): Document standalone M-y.

* doc/emacs/search.texi (Isearch Yank): Explain standalone M-y.

* doc/lispref/text.texi (Yank Commands): Soften the wording of
yank after another yank.

* lisp/delsel.el: Put 'yank' property on yank-pop and yank-from-kill-ring.

* lisp/isearch.el (isearch-yank-pop): Use with-isearch-suspended
and read-from-kill-ring to read a string from the kill-ring and
append it to the search string.

* lisp/simple.el (yank-pop): Call yank-from-kill-ring and
read-from-kill-ring when last-command is not 'yank' instead of
signaling an error.  Remove "*" from interactive spec.  Update docstring.
(read-from-kill-ring): New function.
(yank-from-kill-ring): New command.

https://lists.gnu.org/archive/html/emacs-devel/2020-11/msg00801.html

3 years ago* build-aux/update-subdirs: Use lexical-binding in subdirs.el.
Stefan Kangas [Tue, 24 Nov 2020 19:09:04 +0000 (20:09 +0100)]
* build-aux/update-subdirs: Use lexical-binding in subdirs.el.

3 years agoAdd a (broken) unit test to exemplify Bug#11218.
Philipp Stephani [Tue, 24 Nov 2020 17:38:36 +0000 (18:38 +0100)]
Add a (broken) unit test to exemplify Bug#11218.

* test/lisp/emacs-lisp/ert-tests.el
(ert-test-with-demoted-errors): New (broken) unit test.

3 years ago; Reintroduce line mistakenly removed in my last commit
Stefan Kangas [Tue, 24 Nov 2020 17:10:29 +0000 (18:10 +0100)]
; Reintroduce line mistakenly removed in my last commit

3 years agoRemove XEmacs compat code from idlw-help.el
Stefan Kangas [Tue, 24 Nov 2020 17:03:31 +0000 (18:03 +0100)]
Remove XEmacs compat code from idlw-help.el

* lisp/progmodes/idlw-help.el (idlwave-do-context-help)
(idlwave-help-show-help-frame): Remove XEmacs compat code.

3 years agoMake XEmacs compat aliases easy-menu-{add,remove} obsolete
Stefan Kangas [Tue, 24 Nov 2020 16:39:11 +0000 (17:39 +0100)]
Make XEmacs compat aliases easy-menu-{add,remove} obsolete

* lisp/emacs-lisp/easymenu.el (easy-menu-remove, easy-menu-add):
Make XEmacs compat aliases obsolete.
* lisp/allout.el (allout-setup-menubar):
* lisp/cus-edit.el (Custom-mode):
* lisp/gnus/gnus-art.el (gnus-article-edit-mode):
* lisp/gnus/message.el (message-mode):
* lisp/net/sieve.el (sieve-manage-mode):
* lisp/org/org-agenda.el (org-agenda-mode):
* lisp/org/org-table.el (org-table-edit-formulas, orgtbl-mode):
* lisp/org/org.el:
* lisp/progmodes/cperl-mode.el (cperl-mode):
* lisp/progmodes/hideshow.el (hs-minor-mode):
* lisp/progmodes/idlw-help.el (idlwave-help-mode):
* lisp/progmodes/idlw-shell.el (idlwave-shell-mode):
* lisp/progmodes/idlwave.el (idlwave-mode):
* lisp/progmodes/meta-mode.el (meta-common-mode):
* lisp/progmodes/octave.el (octave-mode):
* lisp/progmodes/prolog.el (prolog-menu):
* lisp/progmodes/tcl.el (tcl-mode):
* lisp/speedbar.el (speedbar-reconfigure-keymaps):
* lisp/term.el (term-mode, term-char-mode, term-process-pager):
* lisp/textmodes/dns-mode.el (dns-mode):
* lisp/wid-browse.el (widget-browse-mode): Don't call above
obsolete aliases.
* lisp/cedet/semantic/grammar.el (semantic-grammar-setup-menu-xemacs):
* lisp/mh-e/mh-folder.el (mh-folder-mode):
* lisp/mh-e/mh-identity.el (mh-identity-add-menu):
* lisp/mh-e/mh-letter.el (mh-letter-mode):
* lisp/mh-e/mh-search.el (mh-search-mode):
* lisp/mh-e/mh-show.el (mh-show-mode):
* lisp/obsolete/otodo-mode.el (todo-mode):
* lisp/progmodes/antlr-mode.el (antlr-mode):
* lisp/progmodes/cc-mode.el (c-mode, c++-mode, objc-mode)
(java-mode, idl-mode, pike-mode):
* lisp/progmodes/sql.el (sql-mode, sql-interactive-mode):
* lisp/progmodes/vhdl-mode.el (vhdl-update-mode-menu)
(vhdl-add-source-files-menu, vhdl-mode):
* lisp/textmodes/reftex-index.el (reftex-index-mode)
(reftex-index-phrases-mode):
* lisp/textmodes/reftex-toc.el (reftex-toc-mode):
* lisp/textmodes/reftex.el (reftex-mode): Only call above obsolete
aliases in XEmacs.

* lisp/progmodes/prolog.el (prolog-inferior-menu):
* lisp/erc/erc-menu.el (erc-menu-add, erc-menu-remove): Don't call
above obsolete aliases.  Make obsolete.
* lisp/erc/erc-menu.el (menu, erc-menu-add, erc-menu-remove):
* lisp/progmodes/prolog.el (prolog-inferior-mode): Adjust callers.
* lisp/speedbar.el (speedbar-previous-menu): Make obsolete.
(Bug#44731)

3 years agoFix handling of defcustom :local tag
Basil L. Contovounesios [Wed, 18 Nov 2020 12:53:03 +0000 (12:53 +0000)]
Fix handling of defcustom :local tag

For discussion, see the following emacs-devel thread:
https://lists.gnu.org/r/emacs-devel/2020-11/msg00734.html

* lisp/custom.el (custom-declare-variable): Delay call to
make-variable-buffer-local until after user option has been
initialized with a value.  Otherwise the user option may be
initialized to nil.
* test/lisp/custom-tests.el (custom--test-local-option)
(custom--test-permanent-option): New :local user options.
(custom-test-local-option): New test for defcustom :local keyword.

3 years agoCC Mode. Fix an off by one error. Fixes bug #41809
Alan Mackenzie [Thu, 25 Jun 2020 17:07:16 +0000 (17:07 +0000)]
CC Mode.  Fix an off by one error.  Fixes bug #41809

* lisp/progmodes/cc-engine.el (c-full-pp-to-literal): Change > to >= (twice).

3 years ago; Fix last change to gnus-sum.el
Basil L. Contovounesios [Tue, 24 Nov 2020 16:19:55 +0000 (16:19 +0000)]
; Fix last change to gnus-sum.el

* lisp/gnus/gnus-sum.el (gnus-paging-select-next): Add :version tag.

3 years agoFix display artifacts when 'display' properties cover newlines
Eli Zaretskii [Tue, 24 Nov 2020 15:04:37 +0000 (17:04 +0200)]
Fix display artifacts when 'display' properties cover newlines

* src/xdisp.c (pos_visible_p): Set glyph_row of scratch iterators
to NULL, to avoid producing glyphs while we figure out the layout.
(Bug#44826)

3 years agoFix menu binding for files in fileset
Mauro Aranda [Tue, 24 Nov 2020 11:48:55 +0000 (08:48 -0300)]
Fix menu binding for files in fileset

* lisp/filesets.el (filesets-remake-shortcut): We want the callback of
the menu item, not a list that contains the callback.  (Bug#44764)

3 years agoFix matching of inline choices for the choice widget
Mauro Aranda [Tue, 24 Nov 2020 11:31:18 +0000 (08:31 -0300)]
Fix matching of inline choices for the choice widget

A choice widget should be able to match either no inline values or
inline values, upon request.  (Bug#44579)

* lisp/wid-edit.el (choice): New property, :inline-bubbles-p.  A
predicate that returns non-nil if the choice widget can act as an
inline widget.  Document it.
(widget-choice-inline-bubbles-p): New function, for the
:inline-bubbles-p property of the choice widget.
(widget-inline-p): New function.  Use the :inline-bubbles-p property
of the widget, if any.
(widget-match-inline): Use the above to see if the widget can act like
an inline widget.  Document it.
(widget-choice-value-create): Account for the case of a choice widget
that has inline members.
(widget-checklist-add-item, widget-editable-list-value-create)
(widget-group-value-create): Use widget-inline-p rather than just
checking for a non-nil :inline property, allowing these functions to
pass the complete information to widgets like the choice widget to
create their values.

* test/lisp/wid-edit-tests.el (widget-test-choice-match-no-inline)
(widget-test-choice-match-all-inline)
widget-test-choice-match-some-inline): New tests, to check that choice
widgets can match its choices, inline or not.
(widget-test-inline-p): New test, for the new function
widget-inline-p.
(widget-test-repeat-can-handle-choice)
(widget-test-repeat-can-handle-inlinable-choice)
(widget-test-list-can-handle-choice)
(widget-test-list-can-handle-inlinable-choice)
(widget-test-option-can-handle-choice)
(widget-test-option-can-handle-inlinable-choice): New tests.  This
grouping widgets need to be able to create a choice widget regardless
if it has inline choices or not.

3 years agoFix finding filelist for :tree fileset (Bug#976)
Drew Adams [Tue, 24 Nov 2020 11:00:29 +0000 (08:00 -0300)]
Fix finding filelist for :tree fileset (Bug#976)

* lisp/filesets.el (filesets-files-under): New function, used to get
all files for a :tree fileset.
(filesets-get-filelist): Use it.  Look for the directory and the
pattern in the right place inside entry.

3 years agoAutoload the 'rx' pcase macroexpander (bug#44807)
Mattias Engdegård [Tue, 24 Nov 2020 09:37:37 +0000 (10:37 +0100)]
Autoload the 'rx' pcase macroexpander (bug#44807)

* lisp/emacs-lisp/rx.el (rx--pcase-macroexpander]): Autoload.

3 years agoAllow controlling whether SPC in Gnus goes to the next article
Lars Ingebrigtsen [Tue, 24 Nov 2020 08:27:14 +0000 (09:27 +0100)]
Allow controlling whether SPC in Gnus goes to the next article

* doc/misc/gnus.texi (Summary Maneuvering): Document it.
* lisp/gnus/gnus-sum.el (gnus-paging-select-next): New variable.
(gnus-summary-prev-page, gnus-summary-next-page): Use it.

3 years agoMake the `C' command work on marked files
Lars Ingebrigtsen [Tue, 24 Nov 2020 07:44:30 +0000 (08:44 +0100)]
Make the `C' command work on marked files

* lisp/arc-mode.el (archive-copy-file): Make the `C' command work
on marked files (bug#44753).

3 years agoAdd a user option to control how links are followed in eww
Lars Ingebrigtsen [Tue, 24 Nov 2020 07:22:26 +0000 (08:22 +0100)]
Add a user option to control how links are followed in eww

* doc/misc/eww.texi (Advanced): Document it (bug#44783).

* lisp/net/eww.el (eww-use-browse-url): New variable.
(eww-follow-link): Use it.

3 years agoCodesign the executable on recene MacOS systems
Itai Seggev [Tue, 24 Nov 2020 05:52:27 +0000 (06:52 +0100)]
Codesign the executable on recene MacOS systems

* src/Makefile.in (temacs$(EXEEXT)): Codesign the executable on
recent (ARM) MacOS systems (bug#43878).  Without this, building
Emacs fails.

Copyright-paperwork-exempt: yes

3 years agoDelete the emacs-server directory upon Emacs exit
Lars Ingebrigtsen [Tue, 24 Nov 2020 05:41:03 +0000 (06:41 +0100)]
Delete the emacs-server directory upon Emacs exit

* lisp/server.el (server-start): Delete the server directory upon
Emacs exit (bug#44644).  This fixes the problem of /tmp/emacs0
directories being left behind when running an Emacs server as root.

3 years agoTweak the face of unknown backend indicators in flymake
Lars Ingebrigtsen [Tue, 24 Nov 2020 05:22:52 +0000 (06:22 +0100)]
Tweak the face of unknown backend indicators in flymake

* lisp/progmodes/flymake.el (flymake--mode-line-format): Don't put
a face on the the "?" unknown backend indicator, because that
looks odd in inactive windows (bug#44689).

3 years agoHandle outline overlays better when cycling in outline.el
Paul W. Rankin [Tue, 24 Nov 2020 05:08:59 +0000 (06:08 +0100)]
Handle outline overlays better when cycling in outline.el

* lisp/outline.el (outline--cycle-state): Only consider outline
overlays that are on outline headings; when subtree end is
point-max, return overlay-end +1 because final subtree overlay
only reaches point-max -1 (bug#41198).
(outline-cycle-buffer): Check that buffer has top-level headings
before calling outline-hide-sublevels 1 thus preventing
disconcerting buffer state of content reduced to single "..."

3 years agoAdapt files-x-tests.el according to recent Tramp changes
Michael Albinus [Mon, 23 Nov 2020 18:54:09 +0000 (19:54 +0100)]
Adapt files-x-tests.el according to recent Tramp changes

* test/lisp/files-x-tests.el (tramp-connection-local-default-profile):
Don't declare.
(tramp-connection-local-default-shell-variables)
(tramp-connection-local-default-system-variables): Declare.
(files-x-test-with-connection-local-variables): Use them.

3 years ago; Merge from origin/emacs-27
Glenn Morris [Mon, 23 Nov 2020 17:41:53 +0000 (09:41 -0800)]
; Merge from origin/emacs-27

The following commits were skipped:

2b1cec5592 (origin/emacs-27) Sync latest SKK-JISYO.L
070c1f8cd7 Update publicsuffix.txt from upstream

3 years agoMerge from origin/emacs-27
Glenn Morris [Mon, 23 Nov 2020 17:41:53 +0000 (09:41 -0800)]
Merge from origin/emacs-27

3ceee39819 Fix Bug#44481

3 years ago; Merge from origin/emacs-27
Glenn Morris [Mon, 23 Nov 2020 17:41:53 +0000 (09:41 -0800)]
; Merge from origin/emacs-27

The following commit was skipped:

a824888188 Minor Edebug manual keystroke clarifications

3 years agoMerge from origin/emacs-27
Glenn Morris [Mon, 23 Nov 2020 17:41:53 +0000 (09:41 -0800)]
Merge from origin/emacs-27

86cbc9d216 Make ignoring modifiers on IME input optional
32b97bb9e0 Ignore modifiers when processing WM_IME_CHAR messages
f641ef1a07 Improve documentation of 'font-spec'

# Conflicts:
# etc/NEWS

3 years ago; Merge from origin/emacs-27
Glenn Morris [Mon, 23 Nov 2020 17:41:53 +0000 (09:41 -0800)]
; Merge from origin/emacs-27

The following commit was skipped:

9d02e6c5ff Further doc fixes for dotimes about RESULT

3 years agoMerge from origin/emacs-27
Glenn Morris [Mon, 23 Nov 2020 17:41:53 +0000 (09:41 -0800)]
Merge from origin/emacs-27

e66502fec1 ; * doc/misc/eshell.texi (Input/Output): Fix typo.

3 years ago; Merge from origin/emacs-27
Glenn Morris [Mon, 23 Nov 2020 17:41:53 +0000 (09:41 -0800)]
; Merge from origin/emacs-27

The following commit was skipped:

d5d3862c56 ; * INSTALL: Correct a recent change.

3 years agominibuffer code: restore original frame after using minibuffer-only frame, etc
Alan Mackenzie [Mon, 23 Nov 2020 15:54:50 +0000 (15:54 +0000)]
minibuffer code: restore original frame after using minibuffer-only frame, etc

* src/minibuf.c (read_minibuf): In the record_unwind_protect for the second
restore_window_configuration (separate minibuffer frame case) arrange for the
future switching back to the original frame by Fset_window_configuration.

3 years agoFix 'See @xref{...}' (bug#44811)
Mattias Engdegård [Mon, 23 Nov 2020 14:15:25 +0000 (15:15 +0100)]
Fix 'See @xref{...}' (bug#44811)

Reported by 황병희.

* doc/lispref/edebug.texi (Printing in Edebug):
* doc/misc/ebrowse.texi (Marking Classes):
* doc/misc/gnus.texi (Ma Gnus):
* doc/misc/tramp.texi (Remote shell setup):
Don't stutter (@xref expands to 'See ...').

3 years agoRemove Emacs 19 and 20 compat code from table.el
Stefan Kangas [Mon, 23 Nov 2020 12:46:21 +0000 (13:46 +0100)]
Remove Emacs 19 and 20 compat code from table.el

* lisp/textmodes/table.el:
(table-recognize-cell, table--make-cell-map)
(*table--present-cell-popup-menu, table--update-cell)
(table--update-cell-widened, table--update-cell-heightened)
(table--cell-insert-char, table--warn-incompatibility): Remove
Emacs 19 and 20 compat code.
* lisp/textmodes/table.el (table-disable-menu)
(table--set-timer, table--get-last-command): Declare obsolete.

3 years agoSync latest SKK-JISYO.L
Stefan Kangas [Wed, 26 Aug 2020 15:25:53 +0000 (17:25 +0200)]
Sync latest SKK-JISYO.L

* leim/SKK-DIC/SKK-JISYO.L: Sync to current upstream version.

(cherry picked from commit 6a5f9700846551a7f3795e257356dbab865116f4)

3 years agoUpdate publicsuffix.txt from upstream
Stefan Kangas [Sun, 11 Oct 2020 13:03:11 +0000 (15:03 +0200)]
Update publicsuffix.txt from upstream

* etc/publicsuffix.txt: Update from
https://publicsuffix.org/list/public_suffix_list.dat
dated 2020-10-09 08:23:34 UTC.

(cherry picked from commit 5b13afab0a903ead8363482529019d4fb80ec4b4)

3 years agoUse lexical-binding in most runtime leim lisp files
Stefan Kangas [Mon, 23 Nov 2020 11:12:29 +0000 (12:12 +0100)]
Use lexical-binding in most runtime leim lisp files

* lisp/leim/quail/arabic.el:
* lisp/leim/quail/croatian.el:
* lisp/leim/quail/cyril-jis.el:
* lisp/leim/quail/cyrillic.el:
* lisp/leim/quail/czech.el:
* lisp/leim/quail/ethiopic.el:
* lisp/leim/quail/georgian.el:
* lisp/leim/quail/greek.el:
* lisp/leim/quail/hanja-jis.el:
* lisp/leim/quail/hanja.el:
* lisp/leim/quail/hanja3.el:
* lisp/leim/quail/hebrew.el:
* lisp/leim/quail/ipa-praat.el:
* lisp/leim/quail/latin-alt.el:
* lisp/leim/quail/latin-post.el:
* lisp/leim/quail/latin-pre.el:
* lisp/leim/quail/persian.el:
* lisp/leim/quail/programmer-dvorak.el:
* lisp/leim/quail/py-punct.el:
* lisp/leim/quail/pypunct-b5.el:
* lisp/leim/quail/rfc1345.el:
* lisp/leim/quail/sami.el:
* lisp/leim/quail/sgml-input.el:
* lisp/leim/quail/slovak.el:
* lisp/leim/quail/symbol-ksc.el:
* lisp/leim/quail/tamil-dvorak.el:
* lisp/leim/quail/vntelex.el:
* lisp/leim/quail/vnvni.el:
* lisp/leim/quail/welsh.el: Use lexical-binding.

3 years agoSmall fixes to gnus-search output parsing of indexed engines
Eric Abrahamsen [Fri, 20 Nov 2020 00:32:41 +0000 (16:32 -0800)]
Small fixes to gnus-search output parsing of indexed engines

* lisp/gnus/gnus-search.el (gnus-search-indexed-parse-output): When
filtering for desired groups, accept any of [.\/] as potential segment
delimiters. Later on, filesystem path separators will be interpreted
as dots (".") when constructing group names. Also, make sure we use
`expand-file-name' on the prefix, and just use `string-remove-prefix'
to get rid of it.

3 years agoUnbreak compilation with CHECK_STRUCTS.
Philipp Stephani [Sun, 22 Nov 2020 22:22:50 +0000 (23:22 +0100)]
Unbreak compilation with CHECK_STRUCTS.

Commit 3963aea4f4a22da0c1fb8ca8ca80b59c58373811 modified the ‘buffer’
structure, but didn’t adapt the hash.

* src/pdumper.c (dump_buffer): Update buffer hash.

3 years agoReplace /dev/null by remote null-device in Tramp.
Michael Albinus [Sun, 22 Nov 2020 18:56:23 +0000 (19:56 +0100)]
Replace /dev/null by remote null-device in Tramp.

* lisp/net/tramp-adb.el (tramp-adb-get-ls-command)
(tramp-adb-handle-set-file-times, tramp-adb-handle-process-file):
Use `tramp-get-remote-null-device'.

* lisp/net/tramp-compat.el (tramp-tramp-file-p): Declare.
(tramp-compat-null-device): New defalias.

* lisp/net/tramp-sh.el (tramp-methods) <telnet, nc>:
(tramp-perl-encode-with-module, tramp-perl-decode-with-module)
(tramp-perl-encode, tramp-perl-decode, tramp-awk-decode):
Use "%n" marker.
(tramp-do-directory-files-and-attributes-with-stat)
(tramp-sh-handle-file-name-all-completions)
(tramp-do-copy-or-rename-file-out-of-band)
(tramp-sh-handle-insert-directory, tramp-sh-handle-process-file)
(tramp-set-remote-path, tramp-open-connection-setup-interactive-shell)
(tramp-find-inline-encoding, tramp-send-command-and-check)
(tramp-get-remote-path, tramp-get-ls-command, tramp-get-ls-command-with)
(tramp-get-remote-awk, tramp-get-remote-hexdump, tramp-get-remote-od)
(tramp-get-env-with-u-option): Use `tramp-get-remote-null-device'.
(tramp-remote-coding-commands, tramp-call-local-coding-command):
Adapt docstring.

* lisp/net/tramp-smb.el (tramp-smb-conf): Use `null-device'.
(tramp-smb-handle-file-acl): Use `tramp-get-remote-null-device'.

* lisp/net/tramp.el (tramp-methods): Adapt docstring.
(tramp-get-remote-null-device): New defun.
(tramp-interrupt-process): Use it.

3 years agoTest for byte-compiler warning "variable lacks prefix"
Stefan Kangas [Sun, 22 Nov 2020 06:19:11 +0000 (07:19 +0100)]
Test for byte-compiler warning "variable lacks prefix"

* test/lisp/emacs-lisp/bytecomp-tests.el
(bytecomp--with-warning-test): New macro.
(bytecomp-warn-wrong-args, bytecomp-warn-wrong-args-subr):
Use above new macro.
(bytecomp-warn-variable-lacks-prefix): New test.

3 years agoTest interactive-only spec of with-suppressed-warnings
Stefan Kangas [Sun, 22 Nov 2020 02:24:26 +0000 (03:24 +0100)]
Test interactive-only spec of with-suppressed-warnings

* test/lisp/emacs-lisp/bytecomp-tests.el
(bytecomp-test--with-suppressed-warnings): Test suppressing warning
with interactive-only.

3 years agoSay which command shadows a key binding
Stefan Kangas [Fri, 13 Nov 2020 18:15:21 +0000 (19:15 +0100)]
Say which command shadows a key binding

* src/keymap.c (describe_vector): Say which command shadows this
binding.  (Bug#9293)
* test/src/keymap-tests.el
(help--describe-vector/bug-9293-one-shadowed-in-range): Adapt
test.

3 years agoDon't shadow bindings by the same command
Stefan Kangas [Fri, 13 Nov 2020 14:28:34 +0000 (15:28 +0100)]
Don't shadow bindings by the same command

* src/keymap.c (describe_vector): Do not say binding is shadowed if
the other key binding points to the same command.  (Bug#9293)
* test/src/keymap-tests.el
(help--describe-vector/bug-9293-same-command-does-not-shadow): New
test.

3 years agoDon't show key ranges if shadowed by different commands
Stefan Kangas [Fri, 13 Nov 2020 14:28:29 +0000 (15:28 +0100)]
Don't show key ranges if shadowed by different commands

* src/keymap.c (describe_vector): Make sure found consecutive keys
are either not shadowed or, if they are, that they are shadowed by
the same command.  (Bug#9293)
* test/src/keymap-tests.el
(help--describe-vector/bug-9293-one-shadowed-in-range): New test.

3 years agoHandle help-form in y-or-n-p and use this in find-file-noselect (bug#5423)
Juri Linkov [Sat, 21 Nov 2020 19:49:46 +0000 (21:49 +0200)]
Handle help-form in y-or-n-p and use this in find-file-noselect (bug#5423)

* doc/lispref/help.texi (Help Functions): Mention help-form for
read-char-from-minibuffer and y-or-n-p.

* doc/lispref/minibuf.texi (Yes-or-No Queries): Mention help-form
for y-or-n-p.
(Multiple Queries): Mention help-form for read-char-from-minibuffer.

* lisp/files.el (find-file-noselect): Let-bind multi-line help text
to help-form for y-or-n-p.

* lisp/subr.el (read-char-choice): Mention help-form in docstring.
(read-char-from-minibuffer): Mention help-form in docstring.
(y-or-n-p-map): Remove handling of 'help'.
(y-or-n-p): Mention help-form in docstring.
When help-form is non-nil: add help-char to 'prompt', and bind
help-char to help-form-show in composed-keymap.

3 years agoFix Bug#44481
Michael Albinus [Sat, 21 Nov 2020 15:00:17 +0000 (16:00 +0100)]
Fix Bug#44481

* lisp/net/tramp.el (tramp-system-name): New defconst.
(tramp-default-host, tramp-restricted-shell-hosts-alist)
(tramp-local-host-regexp):
* lisp/net/tramp-sh.el (tramp-maybe-open-connection): Use it.  (Bug#44481)

3 years agoHandle connection-local null-device and path-separator variables
Michael Albinus [Sat, 21 Nov 2020 14:28:52 +0000 (15:28 +0100)]
Handle connection-local null-device and path-separator variables

* doc/lispref/os.texi (System Environment): Add `path-separator'
function and `null-device' variable and function.

* etc/NEWS: Mention 'null-device' and 'path-separator'.  Fix typos.

* lisp/files-x.el (path-separator, null-device): New defuns.  (Bug#3736)

* lisp/net/tramp-adb.el
(tramp-adb-connection-local-default-shell-variables): Rename from
`tramp-adb-connection-local-default-profile'.

* lisp/net/tramp-integration.el
(tramp-connection-local-default-system-variables): New defvar.
Add it to connection-local profiles.
(tramp-connection-local-default-shell-variables): Rename from
`tramp-connection-local-default-profile'.

* lisp/progmodes/grep.el (grep-hello-file): New defun.
(grep-compute-defaults): Use `null-device' function for remote
case. Handle remote `hello-file'.  Use `process-file-shell-command'.
(grep,grep-expand-keywords, lgrep): Use `null-device' function for
remote case.

3 years agoMinor Edebug manual keystroke clarifications
Lars Ingebrigtsen [Mon, 16 Nov 2020 23:18:11 +0000 (00:18 +0100)]
Minor Edebug manual keystroke clarifications

* doc/lispref/edebug.texi (Edebug Misc): Also mention the `a'
binding to abort (bug#44697).  Also fix `d' function reference, and
add `P' reference.

(cherry picked from commit b613f25f97abf756101eaa2af90689a19c0b3350)

3 years agoMigrate usage of GPM_CLICK_EVENT to MOUSE_CLICK_EVENT.
Jared Finder [Sun, 15 Nov 2020 07:44:26 +0000 (23:44 -0800)]
Migrate usage of GPM_CLICK_EVENT to MOUSE_CLICK_EVENT.

* src/termhooks.h (enum event_kind):
* src/term.c (term_mouse_click, handle_one_term_event):
* src/keyboard.c (discard_mouse_events, make_lispy_event): Migrate
usage of GPM_CLICK_EVENT to MOUSE_CLICK_EVENT.

3 years agoMake ignoring modifiers on IME input optional
Eli Zaretskii [Sat, 21 Nov 2020 08:14:55 +0000 (10:14 +0200)]
Make ignoring modifiers on IME input optional

By default, ignore modifier keys on IME input, but add
a variable to get back old behavior.
* src/w32fns.c (syms_of_w32fns): New variable
w32-ignore-modifiers-on-IME-input.
(w32_wnd_proc): Use it to ignore modifier keys when IME input is
used.  (Bug#44641)

* etc/NEWS: Announce the change and the new variable.

3 years agoIgnore modifiers when processing WM_IME_CHAR messages
Masahiro Nakamura [Sat, 14 Nov 2020 08:55:16 +0000 (17:55 +0900)]
Ignore modifiers when processing WM_IME_CHAR messages

* src/w32fns.c (w32_wnd_proc): Ignore modifiers when processing
WM_IME_CHAR messages.

3 years ago* lisp/emacs-lisp/package.el (package-strip-rcs-id): Don't ignore errors
Stefan Monnier [Sat, 21 Nov 2020 00:28:34 +0000 (19:28 -0500)]
* lisp/emacs-lisp/package.el (package-strip-rcs-id): Don't ignore errors

Ignoring errors here just postpones the error and replaces a clear
"invalid version syntax" with a confusing "package lacks a version".

3 years agoUse cl-letf instead of unwind-protect in a test
Mauro Aranda [Fri, 20 Nov 2020 22:28:03 +0000 (19:28 -0300)]
Use cl-letf instead of unwind-protect in a test

* test/lisp/cus-edit-tests.el (cus-edit-tests-customize-saved/show-obsolete):
Good use case for cl-letf, so use it.
Suggested by Stefan Monnier <monnier@iro.umontreal.ca> in:
https://lists.gnu.org/archive/html/emacs-devel/2020-11/msg00914.html