1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-02-10 01:34:36 -08:00
Commit graph

149293 commits

Author SHA1 Message Date
Eli Zaretskii
7b82584c69 Improve documentation of new behavior of 'M-y'
* lisp/minibuffer.el (minibuffer-local-map): Switch the order of
'\r' and '\n' bindings.
* lisp/simple.el (yank-pop, read-from-kill-ring)
(yank-from-kill-ring): Doc fixes.

* doc/emacs/search.texi (Isearch Yank):
* doc/emacs/killing.texi (Yanking): Improve the description of the
new functionality of 'M-y'.
* doc/lispref/text.texi (Yank Commands): Remove inaccurate
description of 'M-y' in Isearch.

* etc/NEWS: Improve the wording of 'M-y' entry.
2021-05-17 15:17:57 +03:00
Philipp Stephani
e477b5ee12 Add a unit test to reproduce Bug#48471.
* test/lisp/progmodes/project-tests.el (project-tests--trivial)
(project-root, project-ignores): New test project type.
(project-ignores): New unit test.
2021-05-17 10:43:54 +02:00
Philipp Stephani
42950e9e46 Fix a few Edebug specifications where code is wrapped in lambdas.
As the Info node `(elisp) Specification List' explains, it is not
correct to use `body' or t for a piece of code that the macro wraps in
a `lambda' form.  These should use `def-body' instead.

* lisp/info-xref.el (info-xref-with-file):
* lisp/subr.el (subr--with-wrapper-hook-no-warnings, track-mouse)
(combine-change-calls, with-eval-after-load):
* lisp/emacs-lisp/bytecomp.el (displaying-byte-compile-warnings):
* lisp/emacs-lisp/cl-macs.el (cl-do-symbols, cl-progv):
* lisp/emacs-lisp/ert-x.el (ert-with-test-buffer):
* lisp/emacs-lisp/gv.el (gv-letplace):
* lisp/emacs-lisp/nadvice.el (define-advice):
* lisp/emacs-lisp/thunk.el (thunk-delay):
* lisp/vc/vc-dispatcher.el (vc-run-delayed): Use 'def-body' instead of
t or 'body' where applicable.

* lisp/emacs-lisp/package.el (package--with-response-buffer): Remove
evaluation of the body altogether.  I have no idea how to write it
correctly in this case.
2021-05-17 10:09:43 +02:00
Eric Abrahamsen
e761e12498 Add a 'silent option for native-comp-async-report-warnings-errors
* lisp/emacs-lisp/comp.el (native-comp-async-report-warnings-errors):
Set to 'silent to log warnings, but not pop up the *Warnings* buffer.
* lisp/emacs-lisp/comp.el (comp-accept-and-process-async-output):
Check value.
2021-05-16 14:27:53 -07:00
Eric Abrahamsen
0212fb180a Use condition-case-unless-debug in nnselect-run
* lisp/gnus/nnselect.el (nnselect-run): This is confusing for users,
make it more yielding to common debugging strategies.
2021-05-16 10:22:22 -07:00
Eric Abrahamsen
10a14f6ac3 Fix function signature for gnus-search-indexed-parse-output
* lisp/gnus/gnus-search.el (gnus-search-indexed-parse-output): Generic
function arg list didn't match the method arglist, which made for
confusing function help.
2021-05-16 10:22:22 -07:00
Lars Ingebrigtsen
c14e0da361 mouse-wheel-progressive-speed doc string clarification
* lisp/mwheel.el (mouse-wheel-progressive-speed): Doc string
improvement (bug#45322).
2021-05-16 17:59:54 +02:00
Ingo Lohmar
5a82d4ce5a prepend newline in sqli buffer
(sql-remove-continuation-prompt, sql-send-string): Move newline
insertion.

Previously, the preoutput filter `sql-remove-continuation-prompt'
inserted a leading newline in the interactive SQL buffer if it decided
that is has to remove continuation prompts and that it had found all
it was looking for.

1) This filter function was a doubtful place to do that (arguably, its
   name does not suggest any action like this).
2) The behavior worked inconsistently, eg, when sending a single-line
   "SELECT" statement, because it only ran when the filter function
   needed to remove any prompts (for example, not when sending a
   region without newlines).

   This can lead to misaligned table headers, which explains why
   emacswiki and stackoverflow both present several fixes to this
   behavior.
2021-05-16 16:32:10 +02:00
Tassilo Horn
b6d02dc376 Add bug-reference-mode-force-auto-setup
* lisp/progmodes/bug-reference.el
(bug-reference-try-setup-from-rmail): Match the Rmail mbox filename
against GROUP-REGEXP in bug-reference-setup-from-mail-alist.
(bug-reference-mode-force-auto-setup): New function which forces
auto-setup even if bug-reference-bug-regexp and
bug-reference-url-format are already set.
2021-05-16 16:19:57 +02:00
Dario Gjorgjevski
069c2fb17a Add more completion tests
* test/lisp/minibuffer-tests.el (completion--pcm-score)
(completion--pcm-first-difference-pos): New helpers.
(completion-pcm-test-1, completion-pcm-test-2)
(completion-pcm-test-3, completion-pcm-test-4)
(completion-pcm-test-5, completion-pcm-test-6)
(completion-substring-test-1, completion-substring-test-2)
(completion-substring-test-3, completion-substring-test-4)
(completion-flex-test-1, completion-flex-test-2)
(completion-flex-test-3): New tests (bug#42149)
2021-05-16 15:50:41 +02:00
Sebastian Urban
bf8b8cc6c5 Improve some quotation quoting in the Emacs manual
* doc/emacs/text.texi (Quotation Marks, Quotation Marks):
* doc/emacs/display.texi (Text Display): Fix some issues when
quoting quote marks and the like (bug#35885).

* doc/emacs/emacs.texi: Switch on double-sided printing headings.

Copyright-paperwork-exempt: yes
2021-05-16 15:29:39 +02:00
Noam Postavsky
487498e497 Remove unreliable test for match data clobbering
* src/search.c (Freplace_match): Don't test for change in search_regs
start and end, this is unreliable if change hooks modify text earlier
in the buffer (bug#35264).
2021-05-16 15:19:57 +02:00
Philipp Stephani
01bd4d1a82 Optimize calls to 'eql', 'memql' and similar for fixnums.
It's good practice to compare integers using 'eql' because two bignum
objects representing the same integer might not be 'eq'.  However,
'eql' is slower and doesn't have its own byte code.  Therefore,
replace it with 'eq' if one argument is guaranteed to be a fixnum on
all platforms.

* lisp/emacs-lisp/byte-opt.el (byte-optimize--fixnump): New helper
function.
(byte-optimize-equal, byte-optimize-member, byte-optimize-assoc): Use
it to optimize 'eql' etc. to 'eq' if it will always compare fixnums.
2021-05-16 14:45:18 +02:00
Michael Albinus
4f510f63a8 Fix handling of stderr buffer in Tramp's make-process (Bug#47861)
* lisp/net/tramp-sh.el (tramp-sh-handle-make-process):
Reimplement stderr buffer handling.  (Bug#47861)
(tramp-maybe-open-connection): Improve traces.

* test/lisp/net/tramp-tests.el (tramp-test30-make-process):
Rework for stderr buffer.
2021-05-16 12:08:09 +02:00
Tassilo Horn
1b8f013d17 Bug reference auto-setup for Rmail
* lisp/progmodes/bug-reference.el
(bug-reference-try-setup-from-rmail): New function setting up
`bug-reference-mode' from the current Rmail message.
2021-05-16 09:21:48 +02:00
Dmitry Gutov
b6e0b66e0e Update CSS completion tests
* test/lisp/textmodes/css-mode-tests.el (css-test-complete-pseudo-class)
(css-test-complete-pseudo-element): Update the tests for recent changes.
2021-05-15 23:46:30 +03:00
Tassilo Horn
de61b0b25f Refactor bug-reference setup functions into a defvar
* lisp/progmodes/bug-reference.el
(bug-reference-auto-setup-functions): New defvar so that other
packages can add their own auto-setup functions to it.
* lisp/progmodes/bug-reference.el (bug-reference--run-auto-setup): Use
the new variable instead of hard-coding the 4 functions we've had
already.
2021-05-15 21:19:55 +02:00
Eli Zaretskii
b5e6dba05f Fix segfaults when byte-compiling with native-compilation
* src/emacs.c (main): Call 'set_initial_minibuffer_mode' before
entering recursive-exit.
* src/minibuf.c (init_minibuf_once_for_pdumper): Don't call
'set_minibuffer_mode' here...
(set_initial_minibuffer_mode): ... set it in this new function.
(Bug#48446)
* src/lisp.h: Add prototype for 'set_initial_minibuffer_mode'.
2021-05-15 20:44:40 +03:00
Alan Mackenzie
46e4704e2a Miscellaneous corrections to src/minibuf.c for bug #48337
* src/minibuf.c (read_minibuf): Call get_minibuffer before incrementing
minibuf_level, in case a hook function calls Factive_minibuffer_window.
(init_minibuf_once_for_pdumper): Create  *Minibuf-0* here (moved from
init_minibuf_once), and set its mode, so that clicking in the mini-window
immediately after start up works (thanks, Eli Z.).
2021-05-15 11:49:49 +00:00
Eli Zaretskii
248ec838aa Fix launching net-utils on MS-Windows
* lisp/net/net-utils.el (net-utils-run-simple): Bind
coding-system-for-read around the code which starts the process.
(Bug#48375)
2021-05-15 12:38:01 +03:00
pillule
0a68159026 Fix `quit-restore-window' when all previous buffers got killed (Bug#48367)
* lisp/window.el (quit-restore-window): Simplify calculation of
WINDOW's previous buffer.  Avoid that killing WINDOW's previous
buffers results in a state where `quit-window' has no more
effect, by simply deleting WINDOW in that case (Bug#48367).

Copyright-paperwork-exempt: yes
2021-05-15 10:47:07 +02:00
Daniel Semyonov
b00796ee36 Mairix: use 'mairix-search-options' as documented
* lisp/net/mairix.el (mairix-call-mairix): Append
'mairix-search-options' to the arguments passed to mairix.

Copyright-paperwork-exempt: yes
2021-05-15 11:12:00 +03:00
Daniel Semyonov
b1ac6797c5 Mairix: autoload main interactive functions
* lisp/net/mairix.el (mairix-search, mairix-use-saved-search)
(mairix-edit-saved-searches-customize, mairix-search-from-this-article)
(mairix-search-thread-this-article, mairix-widget-search-based-on-article)
(mairix-edit-saved-searches, mairix-widget-search, mairix-update-database):
Add magic autoload comment.

Copyright-paperwork-exempt: yes
2021-05-15 11:11:49 +03:00
Eli Zaretskii
63d259cc0d Improve doc string of 'log-edit-generate-changelog-from-diff'
* lisp/vc/log-edit.el (log-edit-generate-changelog-from-diff):
Improve the doc string.  (Bug#48269)
2021-05-15 11:06:41 +03:00
Martin Rudalics
c18403302d Have X builds handle VisibilityNotify events (Bug#48268, Bug#48413)
* src/xterm.c (handle_one_xevent): Handle VisibilityNotify
events (Bug#48268, Bug#48413).
2021-05-15 09:20:50 +02:00
Dmitry Gutov
48b37c3ef0 Add :company-kind support to nxml-mode completion
* lisp/nxml/rng-nxml.el (rng-complete-tag)
(rng-complete-attribute-name, rng-complete-attribute-value):
Support :company-kind.
2021-05-15 04:18:42 +03:00
Dmitry Gutov
efea3a02f5 Add :company-kind support to sh-mode completion
* lisp/progmodes/sh-script.el (sh--completion-keywords):
New variable.
(sh--cmd-completion-table): Extracted from here.
(sh-completion-at-point-function): Add :company-kind.
2021-05-15 03:44:16 +03:00
Dmitry Gutov
c92ad6a75a Include colons in the completion strings
* lisp/textmodes/css-mode.el
(css--complete-pseudo-element-or-class):
Include colons in the completion strings. That's simply the nicer
behavior (e.g. someone typing : will see pseudo-elements in
completions as well), and by the standards, the colons are part of
their names anyway (of pseudo-elements and classes).
2021-05-15 03:28:39 +03:00
Dmitry Gutov
76ba00a161 Add :company-kind support to css-mode completion
* lisp/textmodes/css-mode.el (css--complete-pseudo-element-or-class)
(css--complete-property-value, css-completion-at-point)
(css--complete-at-rule): Add :company-kind properties, to annotate
completions with kinds returned in each case.
2021-05-15 03:28:28 +03:00
Lars Ingebrigtsen
efc24f1e0b Make the M-x obsoletion check more robust
* lisp/simple.el (read-extended-command): Make the obsoletion
check more robust.
2021-05-14 18:50:24 +02:00
Alan Mackenzie
780b1db126 Various detailed fixes to minibuf.c, etc., to fix bug #48337
Also fix some unsafe coding.

* lisp/window.el (push-window-buffer-onto-prev): New function, extracted from
(record-window-buffer): Refactor by extracting the above, and removing the now
redundant parameter DO-MINIBUF.

* src/minibuf.c (zip_minibuffer_stacks, read_minibuf): Replace calls to
get_minibuffer (0) by nth_minibuffer (0).  Replace calls to
Qrecord_window_buffer by calls to Qpush_window_buffer_onto_prev.
(Factive_minibuffer_window, read_minibuf_unwind): Call abort_emacs should an
"impossible" null value be returned by nth_minibuffer.
(read_minibuf): Move the get_minibuffer_call to just after the incrementation
of minibuf_level as a precaution against a missing buffer in
Vminibuffer_list.
(nth_minibuffer): Replace XCAR by Fcar, to allow (car nil) to work.
(init_minibuf_once): Create the inactive buffer  *Minibuf-0*.
(syms_of_minibuf): New DEFSYM, Qpush_window_buffer_onto_prev.

* src/window.c (restore_window_configuration): Replace some XCARs and XCDRs
by Fcar_safe and Fcdr_safe.
2021-05-14 15:52:21 +00:00
Eli Zaretskii
43701a8436 ; * doc/misc/calc.texi (Date Arithmetic): Fix order in @menu. 2021-05-13 19:58:30 +03:00
Glenn Morris
5cfb9a507d * doc/misc/calc.texi: Remove most hand-written node pointers.
The complex, conditional node layout makes this one of the very
few cases that can't be done entirely automatically.
2021-05-13 09:26:47 -07:00
Glenn Morris
fa33870e9f Remove more hand-written node pointers in doc/misc
* doc/misc/ede.texi, doc/misc/mh-e.texi, doc/misc/reftex.texi:
* doc/misc/todo-mode.texi: Remove hand-written node pointers.
2021-05-13 09:08:40 -07:00
Glenn Morris
9533eacec8 * doc/misc/epa.texi: Remove hand-written node pointers. 2021-05-13 08:21:10 -07:00
Glenn Morris
3061409de2 Merge from origin/emacs-27
bcd92b5708 (origin/emacs-27) Improve documentation of Hexl mode
c233f4eccd ; * etc/NEWS: Fix decoded-time-set-defaults typo.
4c3abb3dd1 Fix compilation errors with latest w32 API headers
127f1f330b Improve doc strings in log-edit.el
e36183ff46 ; * etc/TODO (etc/DOC): Update the todo entries.

# Conflicts:
#	etc/NEWS
2021-05-13 08:11:03 -07:00
Glenn Morris
ff8bf8c8df * doc/misc/epa.texi: Fix @nodes in previous change. 2021-05-13 08:07:57 -07:00
Michael Albinus
c9773379c1 Improve Tramp traces
* lisp/net/tramp-cmds.el (tramp-list-tramp-buffers):
List also trace buffers.

* lisp/net/tramp.el (tramp-buffer-name):
Add `tramp-suppress-trace' property.
(tramp-get-debug-file-name): Fix docstring.
(tramp-trace-buffer-name): New defun.
(tramp-trace-functions): New defvar.
(tramp-debug-message): Obey also `tramp-trace-functions'.

* test/lisp/net/tramp-tests.el (tramp--test-instrument-test-case):
Handle trace buffer accordingly.
2021-05-13 16:46:17 +02:00
dickmao
5be26b43f4 Process sentinels need to work under X and commandline
* src/process.c (add_non_keyboard_read_fd): Make this a public function.
(add_process_read_fd): Fold old, static add_non_keyboard_read_fd guts
into here.
* src/xsmfns.c (ice_conn_watch_CB): Call add_non_keyboard_read_fd
(bug#43834).
2021-05-13 15:22:01 +02:00
Eli Zaretskii
1aaceec931 Fix vertical cursor motion across tall text or small images
'line-move-partial' should in general leave it to the display
engine to scroll or recenter the window due to vertical motion of
the cursor.  The only purpose of this function is to produce
vscroll suitable for scrolling across large (relatively to the
window's height) images, where moving by display lines is not
appropriate.

* src/xdisp.c (Fdisplay__line_is_continued_p): New primitive.

* lisp/simple.el (line-move-partial): Call
'display--line-is-continued-p' to decide whether to leave it to
redisplay to scroll the window as appropriate.  (Bug#48170)
2021-05-13 16:12:10 +03:00
Michael Albinus
1b919004f6 Fix bug#48349 in file-name-non-special
* lisp/files.el (file-name-non-special): Use Tramp file name
handler only in case of	`copy-file', 'rename-file' and
`copy-directory'.  (Bug#48349)
2021-05-13 13:57:46 +02:00
Stefan Kangas
218001e484 Document `package-quickstart' in the user manual
* doc/emacs/package.texi (Package Installation): Document
`package-quickstart' (bug#44748).
2021-05-13 13:45:04 +02:00
Nicolás Bértolo
0e69c85d7d Make searching for files faster under Windows
* src/lread.c (openp): Use faccessat to check that a file exists
before opening it on Windows (bug#41646).  This speeds up
searching for files.
2021-05-13 13:30:29 +02:00
Stefan Kangas
1af91d271e Don't consider obsolete commands for completion in some cases
* lisp/simple.el (read-extended-command): Exclude obsolete commands
that are either lacking a 'current-name' or were obsoleted in a
previous major version (bug#43300).

(There's been some back and forth here.  Obsolete commands used to be
treated normally for completion, and then they were removed.  Then
they were put back again, but annotated with what they were
obsoleting.  There was some pushback on this change, so this latest
changes is a compromise between the last two states.)
2021-05-13 12:17:53 +02:00
Radon Rosborough
adbdf85e23 Use an explicit line width of 1 on hollow cursors under X
* src/xterm.c (x_draw_hollow_cursor): Specify a line width of
1 explicitly to avoid problems on some X implementations (bug#42452).
2021-05-13 11:44:36 +02:00
Eli Zaretskii
cd0e7d51ab ; * src/image.c (xpm_format, xpm_valid_color_symbols_p): Fix last change. 2021-05-13 12:33:08 +03:00
Eli Zaretskii
3547e01d96 * src/image.c (xpm_image_p): Avoid another compiler warning. 2021-05-13 12:23:19 +03:00
Eli Zaretskii
0b0ab33f2d * src/image.c: Avoid compiler warnings in Cairo builds without XPM. 2021-05-13 12:17:44 +03:00
Tom Gillespie
ec574a72f7 Fix evaluation order for hack-local-variables
* lisp/files.el (hack-local-variables): Fix the ordering which
local variables are evaluated by `hack-local-variables' so that
prop-line local variables are evaluated first. There is a hidden
nreverse lurking in `hack-local-variables-apply' which means that
the prop line variables must come second in order to be evaluated
before the end of file variables.
2021-05-12 23:31:23 +02:00
Philip K
0d55a8ad28 Don't mark interactive commands as internal functions
* lisp/epa-ks.el (epa-ks-search-mode-map): Rename commands from
"--" to "-" throughout.
2021-05-12 20:02:46 +02:00