1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-03-15 11:21:19 -07:00
Commit graph

80929 commits

Author SHA1 Message Date
Juri Linkov
1b251ed4e8 * lisp/button.el (button-map): Bind [follow-link] to 'mouse-face' (bug#49626) 2021-07-20 22:53:06 +03:00
Mattias Engdegård
f9d7440814 ; * lisp/emacs-lisp/byte-opt.el (byte-optimize-eq): Fix last change. 2021-07-20 19:32:11 +02:00
Mattias Engdegård
46d7d44894 Strength-reduce (eq X nil) to (not X)
* lisp/emacs-lisp/byte-opt.el (byte-optimize-eq): New optimisation,
which results in better test and branch code generation where it
applies.
2021-07-20 19:21:00 +02:00
Mattias Engdegård
51a86b6a05 Count (not X) as a switch condition
* lisp/emacs-lisp/bytecomp.el (byte-compile--cond-switch-prefix):
Treat (not VAR) and (null VAR) as (eq VAR nil) when computing the
extent of switch ops.
2021-07-20 19:21:00 +02:00
Michael Albinus
0c58796a22 * lisp/shadowfile.el (shadow-homedir): Add slash.
(shadow-contract-file-name): Use it.  Bug#49596.
2021-07-20 18:44:51 +02:00
Eli Zaretskii
b575e44cbf Fix documentation of a recent changeset
* lisp/autorevert.el (auto-revert-mode):
* lisp/files.el (revert-buffer): Doc fix.  (Bug#49661)
2021-07-20 18:37:40 +03:00
Konstantin Kharlamov
61c1522dde Improve auto-revert-mode and revert-buffer doc strings
* lisp/autorevert.el (auto-revert-mode):
* lisp/files.el (revert-buffer): Mention that there is
revert-buffer-with-fine-grain that is better suited for markers
preservation (bug#49661).
2021-07-20 16:38:55 +02:00
Lars Ingebrigtsen
c175ad52fa Make dired-guess-default return all matching programs
* lisp/dired-x.el (dired-guess-default): Return all matching
programs (bug#48071).
2021-07-20 16:16:09 +02:00
Ioannis Kappas
606b783acb Allow installing packages with DOS line endings
* lisp/emacs-lisp/package.el (package-install-from-buffer): Allow
installing files with different line ending conventions (Unix, DOS
and Macos) (bug#48137).
2021-07-20 15:53:34 +02:00
Miha Rihtaršič
7edbcb3648 Quit minibuffers without aborting kmacros
* doc/lispref/commands.texi (Quitting): Document `minibuffer-quit'
(Recursive Editing): Document throwing of function values to `exit'.

* doc/lispref/errors.texi (Standard Errors): Document
`minibuffer-quit'

* lisp/minibuffer.el (minibuffer-quit-recursive-edit): New function.

* lisp/simple.el (minibuffer-error-function): Do not abort keyboard
macro execution if is minibuffer-quit is signaled (bug#48603).
* src/data.c (syms_of_data): New error symbol `minibuffer-quit'

* src/keyboard.c (recursive_edit_1): Implement throwing of function
values to `exit`.  In that case, the function will be called without
arguments before returning from the command loop.
(cmd_error):
(Fcommand_error_default_function): Do not abort keyboard macro
execution if minibuffer-quit is signaled.
(command_loop_2): New argument HANDLERS.

* src/macros.c (Fexecute_kbd_macro): Use command_loop_2 instead of
command_loop_1.

* src/minibuf.c (Fabort_minibuffers): Use it.
2021-07-20 14:36:45 +02:00
Earl Hyatt
3dd87631fc Add commands 'kill-matching-lines' and 'copy-matching-lines'
* doc/emacs/search.texi: Document these additions.
* lisp/replace.el:
Add the commands 'kill-matching-lines' and 'copy-matching-lines'.

'kill-matching-lines' is like 'flush-lines', but adds the lines to the
kill ring as a single string, keeping line endings.
'copy-matching-lines' is like 'kill-matching-lines', but only copies
those lines instead of killing them.
2021-07-20 14:10:23 +02:00
Lars Ingebrigtsen
e02576c7eb Put command line file names and mouse dragging onto 'file-name-history'
* lisp/dnd.el (dnd-open-local-file): Add file to history.
* lisp/files.el (file-name-history--add): New function (bug#12915).

* lisp/startup.el (command-line-1): Add file to history.
2021-07-20 13:48:10 +02:00
Lars Ingebrigtsen
6ebe8b03d8 Make wdired work better in narrowed-to buffers
* lisp/wdired.el (wdired--before-change-fn):
(wdired--restore-properties): Widen before doing anything so that
we get all the changed bits (bug#49124).
2021-07-19 19:03:28 +02:00
Ivan Sokolov
f7f2024b86 Add function for filtering ANSI sequences when compiling
* lisp/ansi-color.el (ansi-color-for-compilation-mode): New user
option (bug#49609).
(ansi-color-compilation-filter): New function.
2021-07-19 18:54:23 +02:00
Lars Ingebrigtsen
072512414e Make the `s' command in *Help* work for Lisp variables defined in C
* lisp/help-fns.el (describe-variable): Store the type.
* lisp/help-mode.el (help-view-source): Use the type.  This fixes
the problem when looking for a variable defined in a C file.
2021-07-19 18:35:12 +02:00
Gabriel do Nascimento Ribeiro
513539524e Use 'remember-buffer' in remember.el doc strings.
* lisp/textmodes/remember.el (remember-initial-contents)
(remember-before-remember-hook, remember-destroy): Refer to
`remember-buffer'.

* lisp/textmodes/remember.el (remember-buffer): Make into
defcustom (bug#49373).
2021-07-19 18:04:25 +02:00
Gabriel do Nascimento Ribeiro
069f790ca3 Use 'remember-buffer' in remember.el doc strings.
* lisp/textmodes/remember.el (remember-initial-contents)
(remember-before-remember-hook, remember-destroy): Refer to
`remember-buffer'.

* lisp/textmodes/remember.el (remember-buffer): Make into
defcustom (bug#49373).
2021-07-19 17:47:30 +02:00
Madhu
039d00326e Propagate asynchronousness correctly when using proxies in url.el
* lisp/url/url.el (url-retrieve-internal): Propagate
asynchronousness correctly when using a proxy (bug#49570).

Copyright-paperwork-exempt: yes
2021-07-19 17:42:18 +02:00
Lars Ingebrigtsen
8f51194aa5 Fix infloop in woman-file-name
* lisp/woman.el (woman-file-name): Fix infloop for non-existent
manual page (bug#414).
2021-07-19 17:31:17 +02:00
Lars Ingebrigtsen
4ffa928b93 Allow comint-delete-output to save the output on the kill ring
* lisp/comint.el (comint-delete-output): Allow saving the output
to the kill ring (bug#1496).
2021-07-19 17:13:11 +02:00
Lars Ingebrigtsen
6336c18e5c Use make-separator-line in shortdoc
* lisp/simple.el (separator-line): Tweak definition to not be so
overwhelming.

* lisp/emacs-lisp/shortdoc.el (shortdoc-separator): Removed.
(shortdoc-display-group): Use make-separator-line.
2021-07-19 16:13:57 +02:00
Lars Ingebrigtsen
620e35f09f Add a new function for separator lines
* lisp/help-fns.el (describe-symbol): Use it.

* lisp/help.el (describe-key): Use it.

* lisp/simple.el (separator-line): New face.
(make-separator-line): New function (bug#49630).
2021-07-19 15:48:20 +02:00
Eli Zaretskii
bbce22337c Fix documentation of a recent changeset (bug#5003)
* lisp/files.el (safe-local-variable-values)
(ignored-local-variable-values): Doc fix.
(ignored-local-variable-values): Add :version tag.

* doc/emacs/custom.texi (Safe File Variables): Mention
'ignored-local-variable-values'.
* doc/lispref/variables.texi (File Local Variables): Fix wording.

* etc/NEWS: Improve wording of the 'ignored-local-variable-values'
entry.
2021-07-18 21:53:22 +03:00
Mattias Engdegård
88cc9d22df Count compile errors when FILE is a function
* lisp/progmodes/compile.el (compilation-parse-errors):
Don't omit messages from the error count when FILE is a function
rather than a regexp match number.
2021-07-18 20:41:59 +02:00
Lars Ingebrigtsen
da200ab049 Allow ignoring local variable values permanently
* doc/lispref/variables.texi (File Local Variables): Document it.

* lisp/files.el (ignored-local-variable-values): New user option
(bug#5003).
(hack-local-variables-confirm): Allow ignoring permanently.
(hack-local-variables-filter): Ignore the permanently ignored
variables.
2021-07-18 17:18:22 +02:00
Michael Albinus
7075ebbf5b Make remote file locks more robust
* lisp/net/tramp.el (tramp-handle-write-region):
* lisp/net/tramp-adb.el (tramp-adb-handle-write-region):
* lisp/net/tramp-smb.el (tramp-smb-handle-write-region):
* lisp/net/tramp-sshfs.el (tramp-sshfs-handle-write-region):
Make file locks more robust.

* test/lisp/net/tramp-tests.el (tramp-test39-make-lock-file-name):
Rename and extend.
2021-07-18 16:58:52 +02:00
Naofumi Yasufuku
1bd012ce43 Make remote file locks more robust. (Bug#49621)
* lisp/net/tramp-sh.el (tramp-sh-handle-write-region): Make file
locks more robust.  (Bug#49621)

Copyright-paperwork-exempt: yes
2021-07-18 16:57:53 +02:00
Lars Ingebrigtsen
e77bd6e8bf Maintain a list of terminal buffers in the menu
* lisp/term.el (term--update-term-menu): New function (bug#5641).
(term-mode): Use it to list terminal buffers.
2021-07-18 16:35:17 +02:00
Michael Albinus
12a193f876 Fix problem in `shadow-define-literal-group' (Bug#49596)
* lisp/shadowfile.el (shadow-make-fullname): HOST can also be a
remote file name.  Bug#49596.

* test/lisp/shadowfile-tests.el (auth-source-save-behavior)
(tramp-cache-read-persistent-data, tramp-persistency-file-name):
Set them globally.
(shadow-test06-literal-groups): Extend test.
2021-07-18 15:57:41 +02:00
Lars Ingebrigtsen
c112f73668 Make indent-tabs-mode into a regular mode instead of just a variable
* lisp/simple.el (indent-tabs-mode): Make into a minor mode (bug#6276).
2021-07-18 15:24:55 +02:00
Lars Ingebrigtsen
d2f9295a1f Don't shorten comment padding if the padding isn't spaces
* lisp/newcomment.el (comment-padright): Don't shorten non-space
padding (bug#6822).
(comment-padleft): Ditto.
2021-07-18 14:49:48 +02:00
Lars Ingebrigtsen
5ade22c2f8 Fix an unlikely `copyright-find-copyright' problem
* lisp/emacs-lisp/copyright.el (copyright-find-copyright): Make
the copyright matcher more robust (bug#7179).
2021-07-18 14:31:09 +02:00
Lars Ingebrigtsen
6b802a08ca Fix previous grep-file-at-point change
* lisp/progmodes/grep.el (grep-file-at-point): Fix previous change.
2021-07-17 16:56:35 +02:00
Lennart Borgman
9ee418b7b9 Add new function 'grep-file-at-point'
* lisp/progmodes/grep.el (grep-file-at-point): New function to
return the file name at point (bug#8252).
2021-07-17 16:53:36 +02:00
Karthik Chikmagalur
b4b0c219a1 Enhance pcomplete support for xargs
* lisp/pcmpl-unix.el (pcomplete/xargs): Add support for completing xargs
options, including the ability to distinguish them from the command
xargs runs (bug#49603).
Copyright-paperwork-exempt: yes
2021-07-17 16:29:11 +02:00
Lars Ingebrigtsen
153c9d5ff4 Make 'n'/'p' work again in shortdoc after previous changes
* lisp/emacs-lisp/shortdoc.el (shortdoc--goto-section): Adjust to
changes in how the text properties are inserted in 22a5482ab6
(bug#49605).  Also make into a regular function.
2021-07-17 15:41:33 +02:00
akater
109c27341e EIEIO: Prevent excessive evaluation of :initform
* lisp/emacs-lisp/eieio.el (initialize-instance):
Do not evaluate initform of a slot when initarg for the slot is provided,
according to the following secitons of CLHS:
- Object Creation and Initialization
- Initialization Arguments
- Defaulting of Initialization Arguments
- Rules for Initialization Arguments

* test/lisp/emacs-lisp/eieio-etests/eieio-tests.el:
Add corresponding tests
Fix a typo
2021-07-16 15:40:08 -04:00
Mattias Engdegård
24a8cc5e70 Define revert-buffer-function for *Memory Report*
* lisp/emacs-lisp/memory-report.el (memory-report):
Allow the memory report buffer to be updated by pressing 'g'.
2021-07-16 20:05:31 +02:00
Michael Albinus
4200f091b0 ; Fix last change in files.el 2021-07-16 18:54:12 +02:00
Michael Albinus
553ad9c9e8 Add lock-file-mode
* doc/emacs/files.texi (Interlocking):
* doc/lispref/files.texi (File Locks):
* etc/NEWS: Add lock-file-mode.

* lisp/files.el (lock-file-name-transforms)
(remote-file-name-inhibit-locks): Move down.
(lock-file-mode): New minor mode.
2021-07-16 18:13:28 +02:00
Eli Zaretskii
d8d9504c5a ; Fix wording of recent changes in documentation
* lisp/files.el (query-about-changed-file):
* doc/emacs/files.texi (Visiting):
* etc/NEWS: Fix the wording of a recent change.  (Bug#10755)
2021-07-16 16:26:21 +03:00
Lars Ingebrigtsen
9b601d8537 Add new user option 'query-about-changed-file'
* doc/emacs/files.texi (Visiting): Document it.
* lisp/files.el (query-about-changed-file): New user option (bug#10775).
(find-file-noselect): Use it.
2021-07-16 14:30:24 +02:00
Lars Ingebrigtsen
561ef16fd0 Fix lock-file-name-transforms build problem
* lisp/files.el (lock-file-name-transforms): Remove
custom-initialize-delay to fix build problem (bug#49507).
2021-07-16 13:59:46 +02:00
Lars Ingebrigtsen
8eba2b57ca Allow hiding variables in Customize
* lisp/cus-edit.el (custom-toggle-hide-variable): Allow closing an
option even if there are unsaved changes (bug#11655).
2021-07-16 12:55:21 +02:00
Remington Furman
865535a24c Make `number-at-point' work for more hex numbers
* lisp/thingatpt.el (number-at-point): Rewrite to actually catch
the hex numbers (bug#49588).

Copyright-paperwork-exempt: yes
2021-07-16 11:47:36 +02:00
Glenn Morris
653848a277 Improve recent jka-compr-compression-info-list change
* lisp/jka-cmpr-hook.el (jka-compr-compression-info-list):
Document previous change, and fix :type.
2021-07-15 13:19:48 -07:00
Tassilo Horn
f770538b30 Add bug-reference support for Codeberg projects
* lisp/progmodes/bug-reference.el (bug-reference-setup-from-vc-alist):
Add support for codeberg.org bug and pull request references.
* doc/emacs/maintaining.texi (Bug Reference): Mention that bug and
pull request references for codeberg projects are supported.
2021-07-15 21:51:54 +02:00
Tassilo Horn
ec3b108c1f Add support for sourcehut to bug-reference.el
* lisp/progmodes/bug-reference.el (bug-reference-setup-from-vc-alist):
Add support for bug references like #17 and ~user/project#19 for
sourcehut (sr.ht).
* doc/emacs/maintaining.texi (Bug Reference): Document sourcehut
support.
2021-07-15 21:43:29 +02:00
Ori
eaefa44acd ; * lisp/help-fns.el: Speed up `describe-mode'
* lisp/help-fns.el (help-fns--list-local-commands): Speed up (bug#49579).

A predicate checks if there are no key bindings for a given function. A
full list of bindings is not needed, even a single binding is sufficient
to say the function is bound. Set FIRSTONLY arg in where-is-internal so
this predicate runs faster, with functional equivalence. For some
configurations this has a noticeable improvement on the speed of
describe-mode.

Copyright-paperwork-exempt: yes
2021-07-15 18:57:38 +02:00
Lars Ingebrigtsen
8f5738eb8f Add more car/cdr examples to shortdoc
* lisp/emacs-lisp/shortdoc.el (list): Add more car/cdr examples.
2021-07-15 18:32:34 +02:00