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

155589 commits

Author SHA1 Message Date
Stefan Kangas
18ad1388d0 Use lexical-binding in some test files
* test/manual/cedet/ede-tests.el:
* test/manual/cedet/srecode-tests.el:
* test/manual/cedet/tests/test.el: Use lexical-binding.

* test/manual/etags/el-src/TAGTEST.EL: Add lexical-binding cookie.
* test/manual/etags/ETAGS.good_1: Update expected result for the
above change.
2021-02-10 06:28:20 +01:00
Stefan Kangas
45934e51e4 Change default semantic-lex-analyzer to semantic-lex
* lisp/cedet/semantic/lex.el (semantic-lex-analyzer): Change default
to semantic-lex, since semantic-flex was obsolete and has been
removed.
2021-02-10 06:28:15 +01:00
Stefan Kangas
843ca067db Convert many manual cedet tests to ert
* test/manual/cedet/cedet-utests.el
(cedet-files-utest): Move test from here...
* test/lisp/cedet/cedet-files-tests.el: ...to this new file.

* test/manual/cedet/srecode-tests.el
(srecode-document-function-comment-extract-test): Move test from
here...
* test/lisp/cedet/srecode/document-tests.el: ...to this new file.

* test/manual/cedet/cedet-utests.el
(inversion-unit-test): Move test from here...
* test/lisp/cedet/inversion-tests.el: ...to this new file.

* test/manual/cedet/semantic-tests.el
(semantic-gcc-test-output-parser): Move test from here...
* test/lisp/cedet/semantic/bovine/gcc-tests.el: ...to this new file.

* test/manual/cedet/semantic-tests.el
(semantic-test-data-cache): Move test from here...
* test/lisp/cedet/semantic/fw-tests.el: ...to this new file.
2021-02-10 06:25:44 +01:00
Stefan Kangas
a0451be18b Use lexical-binding in almost all of play/*.el
* lisp/play/5x5.el: Use lexical-binding.
(5x5-draw-grid-end, 5x5-draw-grid, 5x5-solver)
(5x5-solve-suggest): Silence byte-compiler.

* lisp/play/cookie1.el: Use lexical-binding.
(cookie-shuffle-vector, cookie-apropos): Silence byte-compiler.

* lisp/play/zone.el: Use lexical-binding.
(zone): Convert lambda to proper lexical closure.
(zone-replace-char, zone-fill-out-screen): Silence byte-compiler.

* lisp/play/blackbox.el:
* lisp/play/doctor.el:
* lisp/play/gametree.el:
* lisp/play/hanoi.el: Use lexical-binding.

* test/lisp/play/cookie1-resources/cookies:
* test/lisp/play/cookie1-tests.el: New files.
2021-02-10 06:25:28 +01:00
Protesilaos Stavrou
ff16c897ea Refine use of vc-dir faces; apply to all backends
* lisp/vc/vc-dir.el (vc-default-dir-printer): Add check for the
"ignored" status and make 'vc-dir-status-edited' the default face.
Also extend condition for more states that qualify as "warnings".

(vc-dir-ignored, vc-dir-status-ignored): Rename face for consistency.

* lisp/vc/vc-git.el (vc-git-dir-printer): Use the
'vc-dir-status-edited' as the default for the Git backend.  And
reference the renamed face.  Also stop treating the empty stash
differently from other header values.

* lisp/vc/vc-bzr.el (vc-bzr-dir-extra-headers): Implement new faces.
* lisp/vc/vc-cvs.el (vc-cvs-dir-extra-headers): Same.
* lisp/vc/vc-hg.el (vc-hg-dir-extra-headers): Same.
* lisp/vc/vc-svn.el (vc-svn-dir-extra-headers): Same.

This follows from the discussion in bug#46358.
2021-02-10 03:38:15 +02:00
Basil L. Contovounesios
bff9bd0d3a ; Fix warning in last change to semantic/idle.el. 2021-02-09 19:05:25 +00:00
Basil L. Contovounesios
e4328d4b3e Tiny simplification to read-char-by-name
* lisp/international/mule-cmds.el (mule--ucs-names-sort-by-code):
Sort with car-less-than-car instead of slower lambda.
(mule--ucs-names-affixation): Just stick character into a list to
avoid trip through format and char-to-string.
(read-char-by-name): Quote function symbols as such.
2021-02-09 19:05:24 +00:00
Eli Zaretskii
817a49748f Fix syntax category of some characters
* lisp/international/characters.el (modify-syntax-entry): Fix
syntax of numerical subscripts and superscripts.  (Bug#46240)
2021-02-09 20:57:29 +02:00
Juri Linkov
552d2b9083 * lisp/net/dictionary.el: Dictionary improvements (bug#45262)
* lisp/net/dictionary.el (dictionary-link-dictionary): New defcustom.
(dictionary-mark-reference): Use dictionary-link-dictionary.
(dictionary-post-buffer-hook): New defcustom.
(dictionary-post-buffer): Run dictionary-post-buffer-hook.
(dictionary-mode-map): Bind 'S-SPC' to scroll-down-command.
(dictionary-search-default): Use possibly multi-word data at point.
2021-02-09 20:29:54 +02:00
Stefan Monnier
80c9871428 Use lexical-binding in a few more scattered files
* lisp/registry.el: Use lexical-binding.
(registry-reindex): Remove unused var `values`.

* lisp/cedet/pulse.el: Use lexical-binding.

* lisp/cedet/semantic/idle.el: Use lexical-binding.
(semantic-idle-core-handler): Remove unused var `safe`.
(ede-auto-add-method): Declare var.
(define-semantic-idle-service): Use `declare`.  Remove unused var `setup`.
(pulse-flag): Declare var.

* lisp/net/ldap.el: Use lexical-binding.
(ldap-search-internal): Remove unused var `proc`.

* lisp/net/mairix.el: Use lexical-binding.
Remove redundant `:group` args.
(mairix-widget-create-query): Remove unnused var `allwidgets`.
2021-02-09 13:27:20 -05:00
Juri Linkov
7020fce353 New options read-char-by-name-sort and read-char-by-name-group (bug#46240)
* lisp/international/mule-cmds.el (mule--ucs-names-sort-by-code)
(mule--ucs-names-group): New functions.
(read-char-by-name-sort, read-char-by-name-group): New defcustoms.
(read-char-by-name): Use them.
2021-02-09 20:12:36 +02:00
Stefan Monnier
5a77517e7d * lisp/cedet/{semantic/scope.el,ede/project-am.el}: Use lexical-scoping
* lisp/cedet/ede/project-am.el: Remove redundant `:group` args.
(recentf-exclude): Declare variable.
(project-am--with-makefile-current): New function extracted from
`project-am-with-makefile-current`.  Use `with-current-buffer` and
`unwind-protect`.
(project-am-with-makefile-current): Use `declare` and
`project-am--with-makefile-current`.
(project-am-with-config-current): Use `declare` and `with-temp-buffer`.
(project-am-extract-shell-variable): Turn it into a `defun`; the use of
`defmacro` appears to have been a plain mistake.
2021-02-09 12:56:19 -05:00
Stefan Monnier
6fd8548b16 * lisp/emacs-lisp/byte-opt.el (byte-optimize--pcase): New macro
(byte-optimize-form-code-walker): Use it.
2021-02-09 12:10:07 -05:00
Stefan Monnier
04fb1664a8 * lisp/emacs-lisp/macroexp.el: Break cycle with bytecomp/byte-opt
The recent change in macroexp triggered a cyclic dependency error
during eager macroexpansion when neither `bytecomp` nor `byte-opt` had
been byte-compiled yet.  This fixes it by moving the offending
function to macroexp.el.

* lisp/emacs-lisp/macroexp.el (macroexp--unfold-lambda): Move from
byte-opt.el and rename.
(macroexp--expand-all): Use it.

* lisp/emacs-lisp/byte-opt.el (byte-compile-unfold-lambda): Move to
macroexp.el.
(byte-compile-inline-expand, byte-optimize-form-code-walker):
* lisp/emacs-lisp/bytecomp.el (byte-compile-form):
Use `macroexp--unfold-lambda` instead.
2021-02-09 12:02:25 -05:00
Stefan Kangas
3c53d28ae1 Remove some dead, commented out code from lisp-mode.el
* lisp/emacs-lisp/lisp-mode.el (lisp-data-mode-syntax-table):
Remove code commented out since 2005.
2021-02-09 17:03:55 +01:00
Stefan Kangas
0161c9df6e Load all generic-x.el modes unconditionally
* lisp/generic-x.el: Load all modes unconditionally.
(generic-default-modes, generic-mswindows-modes)
(generic-unix-modes, generic-other-modes)
(generic-extras-enable-list): Make obsolete.
Ref: https://lists.gnu.org/r/emacs-devel/2021-01/msg01403.html
2021-02-09 16:47:25 +01:00
Lars Ingebrigtsen
627a024675 Note that the `values' variable is now obsolete
* src/lread.c (syms_of_lread): Note that it's obsolete in the doc
string (because we can't mark it as obsolete "properly" yet,
because that leads to compilation warnings when somebody
(let (values) ... values).
2021-02-09 16:28:38 +01:00
Basil L. Contovounesios
8e3ace4297 ; Fix recent change in eval-last-sexp 2021-02-09 13:01:18 +00:00
Basil L. Contovounesios
1c326dfc1c ; Finish customize-changed-options obsoletion 2021-02-09 12:58:51 +00:00
Alan Mackenzie
69d3a6c90f Allow exit-minibuffer to be called from Lisp code. Fixes bug #46373
* lisp/minibuffer.el (exit-minibuffer): Throw the error "Not in most nested
minibuffer" only when the current buffer is a minibuffer (thus the command
came directly from a key binding).

* doc/lispref/minibuf.texi (Minibuffer Commands): Change the documentation
accordingly.
2021-02-09 09:41:13 +00:00
Lars Ingebrigtsen
5131e3accc Make pcomplete-ignore-case obsolete
* lisp/pcomplete.el (pcomplete-completions-at-point)
(pcomplete-stub, pcomplete--entries, pcomplete-insert-entry):
* lisp/eshell/em-cmpl.el (eshell-cmpl-initialize):
* lisp/eshell/em-cmpl.el (eshell-cmpl-ignore-case):
* lisp/erc/erc-pcomplete.el (pcomplete-erc-setup): Use
`completion-ignore-case' instead (bug#23117).

* lisp/pcomplete.el (pcomplete-ignore-case): Make obsolete.
2021-02-09 09:20:11 +01:00
Matt Armstrong
9c1e89a32c Preserve leading whitespace in `lm-commentary'.
* lisp/emacs-lisp/lisp-mnt.el (lm-commentary): Preserve leading
whitespace (bug#46364).
2021-02-09 09:10:45 +01:00
Lars Ingebrigtsen
0cc35e1431 Move all usages of values' to values--store-value'
* lisp/simple.el (eval-expression):
* lisp/progmodes/elisp-mode.el (eval-last-sexp):
* lisp/emacs-lisp/pp.el (pp-eval-expression):
* lisp/emacs-lisp/edebug.el (edebug-eval-expression):
* lisp/emacs-lisp/pp.el (pp-eval-expression):
* lisp/emacs-lisp/edebug.el (edebug-eval-expression):
* lisp/cedet/data-debug.el (data-debug-eval-expression): Use it
instead of pushing to `values' directly (bug#22066).

* lisp/subr.el (values--store-value): New function.
2021-02-09 09:04:47 +01:00
Lars Ingebrigtsen
900ed3ad84 Don't use `values' in elisp--eval-defun
* lisp/progmodes/elisp-mode.el (elisp--eval-defun): Don't use
`values', since it's being deprecated (bug#22066).
2021-02-09 08:32:40 +01:00
Lars Ingebrigtsen
fe449d8e08 Finish customize-changed-options/customize-changed fix up
* doc/emacs/custom.texi (Specific Customization): Fix
customize-changed/customize-changed-options documentation.
* lisp/cus-dep.el (custom-make-dependencies): Adjust doc string
(bug#23085).

* lisp/menu-bar.el (menu-bar-custom-menu): Adjust menu options.
2021-02-09 08:20:08 +01:00
Lars Ingebrigtsen
f3fd9591cf Fix count-lines problem in non-ASCII buffers
* src/fns.c (Fline_number_at_pos): Get the correct start position
in non-ASCII buffers (bug#22763).
2021-02-09 08:12:14 +01:00
Stefan Monnier
69943ae70c * lisp/gnus/gnus-topic.el: Fix a backward incompatibility
(gnus-topic-insert-topic-line): Make the vars used in
`gnus-topic-line-format-spec` dynamically scoped since it seems
that they're sometimes accessed from functions called by
`gnus-topic-line-format-spec` :-(

* lisp/gnus/gnus-util.el (gnus--\,@): Move macro to here...
* lisp/gnus/gnus-art.el (gnus--\,@): .. from here.

* lisp/gnus/gnus.el (gnus-method-to-server): Apply DeMorgan.
2021-02-08 19:08:14 -05:00
Eric Abrahamsen
1b0e6a16d3 Run Gnus group names through regexp-quote when matching results
* lisp/gnus/gnus-search.el (gnus-search-indexed-parse-output): Be more
careful about making sure group names will match search results
correctly.
2021-02-08 12:27:04 -08:00
Eli Zaretskii
9a698da7de ; * etc/NEWS: Call out a recent change in Enriched mode. 2021-02-08 18:19:31 +02:00
Eli Zaretskii
dcc00bbb19 ; * CONTRIBUTE: Clarify the "15-lines" rule a bit more. 2021-02-08 18:09:21 +02:00
Lars Ingebrigtsen
120149cf6a Clarify "changes" in CONTRIBUTE
* CONTRIBUTE: Clarify that "changes" doesn't include removing code
(bug#44834).

(cherry picked from commit 33c9556c9d)
2021-02-08 18:06:53 +02:00
Eli Zaretskii
6b351b2d76 Fix scrolling past tall images
* src/xdisp.c (try_window): Don't try checking the margins if the
window is vscrolled, as that could cause unnecessary recentering
when tall images are displayed.  (Bug#46320)
2021-02-08 18:04:00 +02:00
Stefan Monnier
cfb91b5bca * lisp/indent.el (beginning-of-line-text): Mark it as a movement command
So that combining it with `shift` selects the text, as usual, in case
you have it bound for example to `C-a` in a mode like `enriched-mode`.
2021-02-08 09:18:41 -05:00
Stefan Kangas
ce35760b19 ; Minor license statement fixes 2021-02-08 09:10:57 +01:00
Stefan Kangas
1a1193c864 * lisp/avoid.el: Doc fixes. 2021-02-08 09:10:57 +01:00
Lars Ingebrigtsen
4428c27c1a Record the value of C-x C-e' in values'
* lisp/progmodes/elisp-mode.el (eval-last-sexp): Record the value
in `values' (bug#22066) since we're messaging it.
2021-02-08 08:15:45 +01:00
Protesilaos Stavrou
9fdc753e14 Add vc-dir faces; also apply them to vc-git
* etc/NEWS: Document the new faces.

* lisp/vc/vc-dir.el (vc-dir-header, vc-dir-header-value)
(vc-dir-directory, vc-dir-file, vc-dir-mark-indicator)
(vc-dir-status-warning, vc-dir-status-edited, vc-dir-status-up-to-date)
(vc-dir-ignored): Add new faces.

* lisp/vc/vc-git.el (vc-git-permissions-as-string, vc-git-dir-printer)
(vc-git-dir-extra-headers): Apply new faces (bug#46358).
2021-02-08 07:54:54 +01:00
Sean Whitton
657641fb83 Bind clone-buffer to C-x x n
* lisp/bindings.el (ctl-x-x-map): Bind clone-buffer.
* etc/NEWS: Document the change (bug#46369).
2021-02-08 07:52:16 +01:00
Anticrisis
798bd1273c Fix tcl-mode indentation of namespaced code
* lisp/progmodes/tcl.el (tcl-calculate-indent): Fix indentation
when using namespaces (bug#44834).
(tcl-beginning-of-defun-function): Remove.  This partially reverts
cd5bb4bf3d.

Copyright-paperwork-exempt: yes
2021-02-08 07:33:49 +01:00
Lars Ingebrigtsen
33c9556c9d Clarify "changes" in CONTRIBUTE
* CONTRIBUTE: Clarify that "changes" doesn't include removing code
(bug#44834).
2021-02-08 07:30:18 +01:00
Lars Ingebrigtsen
f2814b2018 Make `C-a' in enriched-mode behave more line in other modes
* lisp/textmodes/enriched.el (enriched-mode-map): Don't rebind
beginning-or-line, because it makes `C-S-a' not mark the region,
and it doesn't allow actually moving to the beginning of the line
if the line starts with characters in `adaptive-fill-regexp'
(bug#22554).
2021-02-08 07:22:02 +01:00
Lars Ingebrigtsen
efb10ffdb7 Fix noninteractive gnus-article-press-button
* lisp/gnus/gnus-art.el (gnus-article-press-button): Make the `b'
summary mode command work again.
2021-02-08 07:11:52 +01:00
Stefan Kangas
7d4d577ed1 Prefer setq-local in a few more places
* lisp/calc/calc-embed.el (calc-embedded-make-info):
* lisp/calc/calcalg2.el (calcFunc-integ):
* lisp/comint.el (comint-mode):
* lisp/epa.el (epa--list-keys, epa--show-key):
* lisp/epg.el (epg--start):
* lisp/vc/ediff-util.el (ediff-activate-mark): Prefer setq-local.
2021-02-08 00:25:16 +01:00
Stefan Kangas
651aefa312 Add tests for count-lines
* test/lisp/simple-tests.el (simple-test-count-lines)
(simple-test-count-lines/ignore-invisible-lines): Add tests.
2021-02-08 00:24:36 +01:00
Eric Abrahamsen
fa735ebc0c Fix namazu search result parsing in gnus-search
* lisp/gnus/gnus-search.el (gnus-search-indexed-extract): This method
is documented to leave point at the end of the extracted search
result. The namazu implementation wasn't doing that.
2021-02-07 13:46:50 -08:00
Lars Ingebrigtsen
4712c75ab8 Clarify when activate-mark-hook is run
* doc/lispref/markers.texi (The Mark):
* lisp/simple.el (activate-mark-hook): Clarify when the hook is
run (bug#23444).
2021-02-07 22:01:39 +01:00
Michael Albinus
5a1222196b ; Rearrange changed entry in etc/NEWS 2021-02-07 19:38:49 +01:00
Lars Ingebrigtsen
7c5938ad7d Use line-number-at-pos' in count-lines'
* lisp/simple.el (count-lines): Use `line-number-at-pos', which
should be faster.
2021-02-07 17:30:02 +01:00
Eli Zaretskii
abedf3a865 Fix language-environment and font selection on MS-Windows
These changes improve setting the language-environment and font
selection when MS-Windows returns useless "ZZZ" as the "language
name", which then disrupts all the setup of the locale-dependent
stuff, and in particular font selection.
* lisp/w32-fns.el (w32-charset-info-alist): Add an element for
"iso8859-5", in case LANG is set to something unusable, like
"ZZZ".  This allows fonts capable of displaying Cyrillic
characters to be used even when language preferences are screwed.

* src/w32.c (init_environment): If GetLocaleInfo returns "ZZZ" as
the "language name" for LOCALE_USER_DEFAULT, try again with locale
ID based on what GetUserDefaultUILanguage returns.  (Bug#39286)
2021-02-07 17:52:30 +02:00
Tino Calancha
9380a7ed90 Add command to recenter errors from Occur/Grep buffers
To scroll up/down the current displayed occurrence/error
without abandon the Occur/Grep buffer.

Add also a command 'recenter-other-window' to recenter
the other window from any kind of buffer.

* lisp/window.el (recenter-other-window): New command.
Bind recenter-other-window to S-M-C-l (Bug#46119).

* lisp/simple.el (recenter-current-error): New command.
* lisp/progmodes/grep.el (grep-mode-map):
Delete bidings for n and p.

* lisp/progmodes/compile.el (compilation-minor-mode-map):
Move here the n and p bindings.
Bind `recenter-current-error' to l.
* lisp/replace.el (occur-mode-map):
Same.

* doc/emacs/windows.texi (Other Window):
* doc/emacs/display.texi (Recentering):
Document recenter-other-window.

* etc/NEWS (Changes in Specialized Modes and Packages in Emacs 28.1):
Announce the changes.
2021-02-07 16:51:07 +01:00