1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-19 12:20:17 -08:00
Commit graph

8284 commits

Author SHA1 Message Date
Stefan Monnier
f831fa1744 * lisp/progmodes/python.el: Bump version to release the f-string support 2020-10-19 13:39:42 -04:00
Mattias Engdegård
653eab4788 Keep track of matching rules in compilation-mode
When matching messages in compilation-mode, keep track of the rule
employed for each match.  This facilitates debugging and allows us to
verify that each test case really exercises the rule that we expect it
to.

Naturally this uncovered several test cases that didn't check what the
author thought they did; the rules affixed to
compile-tests--test-regexps-data are those actually used, so that the
tests still pass.

* lisp/progmodes/compile.el (compilation--message): Add 'rule' slot.
(compilation-directory-properties, compilation-error-properties)
(compilation-internal-error-properties, compilation-parse-errors)
(compilation--compat-parse-errors): Set the rule slot.
* test/lisp/progmodes/compile-tests.el (compile-tests--test-regexps-data)
(compile-tests--grep-regexp-testcases)
(compile-tests--grep-regexp-tricky-testcases): Add rules to test cases.
(compile--test-error-line): Check that the rule matches what we expect.
(compile-test-grep-regexps): Adapt to test case format.
Remove now superfluous ert-info.
2020-10-19 13:00:14 +02:00
Mattias Engdegård
b16cd3f1e5 Hoist some loop-invariant variable bindings in compile.el
* lisp/progmodes/compile.el (compilation-parse-errors):
Hoist the binding of case-fold-search and a memq call out of
the loop, eliminating a minor but unnecessary quadratic term.
2020-10-19 12:53:38 +02:00
Harald Jörg
fb26dc130d cperl-mode: Delete a misleading comment, add tests for verification
* lisp/progmodes/cperl-mode.el: Delete a comment which explains a
bug which has been fixed a long time ago (bug#44073).
* test/lisp/progmodes/cperl-mode-tests.el
(cperl-mode-fontify-punct-vars): Add regression tests to verify
that fontification of punctuation variables doesn't start strings.
2020-10-19 10:57:57 +02:00
Stefan Kangas
58a9cec525 Add "Old-" prefix to "Version" header in more cases
These version numbers are historical accidents and not relevant today.
Ref: https://lists.gnu.org/r/emacs-devel/2020-03/msg00080.html
2020-10-18 20:35:26 +02:00
Stefan Kangas
f287fb45f5 * lisp/progmodes/ld-script.el: Use lexical-binding. 2020-10-18 02:27:29 +02:00
Stefan Kangas
073e72e484 * lisp/progmodes/mixal-mode.el: Fix typos. 2020-10-18 00:57:29 +02:00
Jose A Ortega Ruiz
3b5a43f3d7 Set jao@gnu.org as maintainer of mixal-mode.el
* lisp/progmodes/mixal-mode.el: Set jao@gnu.org as maintainer of
mixal-mode.el.  (Bug#44037)
2020-10-18 00:49:51 +02:00
Stefan Kangas
20728195b6 Use lexical-binding in mixal-mode.el
* lisp/progmodes/mixal-mode.el: Use lexical-binding.  (Bug#44037)
2020-10-18 00:49:51 +02:00
Jose A. Ortega Ruiz
9513aa8f48 mixal-mode: add missed instructions
Synchronises with latest released GNU MDK 1.2.11

* mixal-mode.el (mixal-operation-codes-alist):
  Add missed instructions: SLB,SRB,JAE,JAO,JXE,JXO
2020-10-17 17:59:21 +02:00
Lars Ingebrigtsen
6d0b2a60f6 Fix narrow-to-defun in f90-mode
* lisp/progmodes/f90.el (f90-beginning-of-subprogram): Make
narrow-to-defun work better (bug#44042).
2020-10-17 09:43:02 +02:00
Stefan Monnier
3b3274a85c * lisp/progmodes/python.el: Teach f-strings to font-lock
(python--f-string-p, python--font-lock-f-strings): New functions.
(python-font-lock-keywords-maximum-decoration): Use them.
2020-10-16 14:03:59 -04:00
Lars Ingebrigtsen
c7b952c45c Add some references to the microdocs in the comments in cperl-mode
* lisp/progmodes/cperl-mode.el: Tell the people reading the
comments how to read the docs explicitly (bug#1621).
2020-10-15 17:10:41 +02:00
David Engster
5f53a49d48 Search harder for file name matches in *compilation* buffers
* lisp/progmodes/compile.el (compilation-find-file): Use it (bug#14411).
(compilation-search-all-directories): New variable.
2020-10-15 16:47:44 +02:00
Lars Ingebrigtsen
c6ecf6428e Make C-x C-e' work more like C-M-x' on defvar etc
* doc/emacs/building.texi (Lisp Eval): Document it.

* lisp/emacs-lisp/pp.el (pp-eval-last-sexp): Ditto.

* lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp): Work more
like `eval-defun': Re-evaluate defvar/defcustom/defface forms.
2020-10-15 16:26:45 +02:00
Lars Ingebrigtsen
8fb761af6b Fix undefined function in project-compile
* lisp/progmodes/project.el (project-compile): Require compile.el
before using functions from the file (bug#44009).
2020-10-15 13:20:22 +02:00
Juri Linkov
b13e0c1501 * lisp/progmodes/grep.el: More fixes for 'lgrep' (bug#23590)
* lisp/progmodes/grep.el (grep-expand-template): Add new arg 'more-opts'.
(grep-use-directories-skip): New variable.
(lgrep): Set 'grep-use-directories-skip' to the result of 'grep-probe'.
Use "--directories=skip" when 'grep-use-directories-skip' is t.
2020-10-14 11:45:26 +03:00
Lars Ingebrigtsen
f3dbde7e6f Only skip directories in lgrep, not the other grep commands
* lisp/progmodes/grep.el (lgrep): Do the directory ignores here
(bug#23590).
(grep-compute-defaults): ... instead of here, because this would
affect all grep commands, not just lgrep.
2020-10-09 06:15:07 +02:00
Alan Mackenzie
81fe8990c0 CC Mode: Move the handling of keyword auto into type handling for C++.
This should allow auto, const, static, ... to be in any order.

* lisp/progmodes/cc-engine.el (c-forward-type): New return value 'no-id for
when auto precludes the parsing of a type identifier.  Adapt processing for
this.
(c-forward-decl-or-cast-1): Use the new facility from c-forward-type.

* lisp/progmodes/cc-langs.el (c-type-modifier-prefix-kwds): Insert the value
of c-no-type-kwds into the value.
(c-no-type-kwds, c-no-type-key): New lang consts/vars, basically "auto".
(c-typeless-decl-kwds, c-modifier-kwds): Remove "auto" from the C++ value.
2020-10-08 16:49:49 +00:00
Dmitry Gutov
0a5e9cf262 Mention two more functions in the commentary
* lisp/progmodes/project.el:
Mention two more functions in the commentary (bug#43595).
2020-10-08 02:41:12 +03:00
Alex Gramiak
0ab67a65f5 Default the grep commands to skip directories
* lisp/progmodes/grep.el (grep-compute-defaults): Skip directories
(bug#23590).
2020-10-07 05:41:23 +02:00
Stefan Kangas
d6a2754348 ; Fix more typos 2020-10-03 12:53:51 +02:00
Glenn Morris
726eb835dd Merge from origin/emacs-27
78eacf31e8 ; Fix many typos in symbols in docs and comments
d5d12707d6 * doc/misc/flymake.texi (Using Flymake): Fix a typo.  (Bug...

# Conflicts:
#	lisp/allout.el
#	lisp/progmodes/ebrowse.el
2020-10-02 09:38:24 -07:00
Stefan Kangas
78eacf31e8 ; Fix many typos in symbols in docs and comments 2020-10-02 13:29:45 +02:00
Stefan Monnier
053d70660b CC Mode: Convert the handling of c-special-indent-hook to standard usage
* lisp/progmodes/cc-styles.el (c-set-style): Use kill-local-variable rather
than copying the hook's global value to the local binding.
(c-make-styles-buffer-local): Remove redundant make-variable-buffer-local.
2020-10-02 10:34:37 +00:00
Dmitry Gutov
f6277911eb Make xref work better on variables in shell-script-mode
* lisp/progmodes/sh-script.el (sh-mode-syntax-table): Classify "/"
as punctuation so that `M-.' on $foo/bar works on the $foo part
(bug#25585).
2020-10-02 07:11:56 +02:00
Lars Ingebrigtsen
3f5f3dd604 Make `C-c C-e' in Python buffers work
* lisp/progmodes/python.el (python-shell-send-statement): Don't
send a cookie, because that leads to the naked expression not
being evaled (bug#43450).
(python-shell-send-region): Allow not sending a cookie.
(python-shell-buffer-substring): Ditto.
2020-10-02 05:30:37 +02:00
Per Starbäck
aac3effb8f python-shell-send-defun doesn't find the (whole) definition
* lisp/progmodes/python.el (python-shell-send-defun): Fix C-M-x
for definitions like @property\ndef bar(): (bug#37828).
2020-10-02 05:11:06 +02:00
Michael R. Mauger
e274e3f44b 2020-03-29 Michael R. Mauger <michael@mauger.com>
* lisp/progmodes/sql.el (sql-add-product): Re-correct argument
       spec.  Previous change was due to my mistake; I have
       resolved back to the prior behavior (Bug#39960).
       * test/lisp/progmodes/sql-tests.el (sql-test-add-product): Added
       test to insure I don't make the same mistake again.
2020-10-01 20:34:55 +02:00
Stefan Kangas
c6fa0ad315 ; Prefer https to http in many URLs
These were all tested with https and confirmed working.
2020-10-01 15:28:15 +02:00
Stefan Kangas
6cbc253aa0 Don't recommend quoting lambdas
* doc/misc/calc.texi (Symbolic Lisp Functions):
* doc/misc/cl.texi (Obsolete Lexical Binding):
* lisp/master.el:
* lisp/progmodes/sql.el (sql-interactive-mode):
* lisp/textmodes/flyspell.el (flyspell-mode):
* lisp/textmodes/ispell.el (ispell-message):
* lisp/textmodes/table.el: Doc fixes; don't recommend quoting
lambdas.
2020-10-01 15:28:14 +02:00
Lars Ingebrigtsen
07f748da43 Make M-x compile skip the header when looking for errors etc
* lisp/progmodes/compile.el (compilation--ensure-parse): Skip the
header when parsing (bug#43651).
(compilation-start): Mark the end.
2020-09-29 15:59:50 +02:00
Harald Jörg
3a95f4fc12 cperl-mode: Add compatibility for Emacs 26.1
* lisp/progmodes/cperl-mode.el (cperl--time-convert): New
compatibility helper for time-convert (available in Emacs
27.1)
(cperl--format-prompt): New compatibility helper for
format-prompt (available in Emacs 28)
(cperl-info-on-command): use cperl--format-prompt
(cperl-perldoc): use cperl--format-prompt
(cperl-time-fontification): use cperl--time-convert (bug#43652)
2020-09-28 14:13:01 +02:00
Simon Lang
cea06818a1 Add a new grep-match-regexp variable
* doc/emacs/building.texi (Grep Searching): Document it.

* lisp/progmodes/grep.el (grep-match-regexp): New variable (bug#41766).
(grep-filter): Use it.
2020-09-27 14:55:29 +02:00
Harald Jörg
2de618ed5d cperl-mode: Delete conditional code where conditions evaluate to nil
* lisp/progmodes/cperl-mode.el (cperl-force-face): This
macro's single effect is now inlined, and the macro is gone.
(cperl-problems): The reference to choose-color.el, which
is no longer available for download, is deleted.
(no function): A list of unnecessary empty variable
definitions is gone.  They were needed for Emacs v19 and
below.
(cperl-init-faces-weak): This function does no longer do
anything and is therefore deleted.
(cperl-init-faces): Some bodies of conditional code is deleted
because as of today the conditions evaluate to constants.  The
face cperl-nonoverridable-face is no longer available as
variable and needs to be doubly-quoted in one place (bug#43622).
2020-09-26 15:51:15 +02:00
Lars Ingebrigtsen
307b6f9353 Partially revert previous prolog.el cleanup
* lisp/progmodes/prolog.el (prolog-font-lock-keywords): Partially
revert previous patch -- we want the prolog-warning-face symbol,
not its value.
2020-09-25 16:06:35 +02:00
Lars Ingebrigtsen
6c7fad4ac4 Fix defcustom type in sql.el for sql-postgres-login-params
* lisp/progmodes/sql.el (sql-login-params): Fix defcustom type to
match sql-postgres-login-params value.
2020-09-25 15:42:35 +02:00
Lars Ingebrigtsen
c27096296f Fix a defcustom type in gdb-mi.el
* lisp/progmodes/gdb-mi.el (gdb-display-source-buffer-action): Fix
defcustom type to match the value.
2020-09-25 15:38:53 +02:00
Lars Ingebrigtsen
bf1b3714cc Fix the defcustom type fix in python.el
* lisp/progmodes/python.el (python-pdbtrack-exit-command): Fix
defcustom type (bug#30990).
2020-09-25 15:17:36 +02:00
Lars Ingebrigtsen
e1c33e29d5 Fix some defcustom types
* lisp/whitespace.el (whitespace-style):
* lisp/gnus/message.el (message-screenshot-command):
* lisp/progmodes/compile.el (compilation-transform-file-match-alist):
* lisp/progmodes/gdb-mi.el (gdb-default-window-configuration-file):
* lisp/progmodes/python.el (python-pdbtrack-exit-command): Fix the
defcustom types.
* lisp/progmodes/sql.el (sql-password-wallet): Fix the value.
2020-09-25 15:15:21 +02:00
Lars Ingebrigtsen
d067ac5b9e Remove more compat code from prolog.el
* lisp/progmodes/prolog.el (prolog-font-lock-keywords): Remove
compat test for a face that's always defined.
2020-09-25 11:37:45 +02:00
Stefan Monnier
09e07fb008 * lisp/progmodes/ruby-mode.el (ruby-use-smie): Declare obsolete
(ruby-mode-map, ruby-mode-menu): Don't use ruby-for/backward-sexp any more.
(ruby-mode-variables): Always setup SMIE navigation.
Still obey `ruby-use-smie` for indentation.
(ruby-forward-sexp, ruby-backward-sexp): Mark as obsolete.
2020-09-24 23:02:06 -04:00
Lars Ingebrigtsen
040c30295e Remove some XEmacs compat code from prolog.el
* lisp/progmodes/prolog.el (prolog-replace-in-string): Remove XEmacs
compat code and make obsolete.
(prolog-guess-fill-prefix): Adjust callers.
(prolog-uncomment-region): Make obsolete.
(prolog-mode-syntax-table): syntax-propertize-rules is always defined.
(prolog-syntax-propertize-function): Ditto.
(prolog-face-name-p): Make into obsolete alias.
(prolog-font-lock-keywords): Adjust callers.
2020-09-25 03:46:59 +02:00
Stefan Kangas
2788557000 Support shellcheck in compilation-mode
* lisp/progmodes/compile.el
(compilation-error-regexp-alist-alist): Add shellcheck regexp.
* test/lisp/progmodes/compile-tests.el
(compile-tests--test-regexps-data):
(compile-test-error-regexps): Add test for shellcheck.
* etc/compilation.txt: Add shellcheck example.
* etc/NEWS: Announce the change.

foo
2020-09-22 02:44:47 +02:00
Stefan Kangas
e1290f4713 Remove some Emacs 20 compat code
* lisp/apropos.el (apropos-local-value):
* lisp/progmodes/antlr-mode.el (antlr-mode-menu):
* lisp/progmodes/idlwave.el (idlwave-attach-classes):
* lisp/textmodes/artist.el (artist-replace-chars): Remove Emacs 20
compat code.
2020-09-22 01:01:36 +02:00
Stefan Kangas
462dbc1cb2 ; Fix typos 2020-09-21 14:26:42 +02:00
Alan Mackenzie
6089dec2b4 C++ Mode: Modernize the fontification of "using"
Since "using" is now used in three distinct ways in C++, write a special
function to handle these rather than attempting to adapt the old regular
expressions.

* lisp/progmodes/cc-fonts.el (c-font-lock-declarators): Amend to allow the
argument TYPES to be a face.  This face is given to the declarator being
processed.
(c-font-lock-single-decl): Make an argument to c-font-lock-declarators nil or
t, not merely nil or non-nil.
(c-complex-decl-matchers): Include c-font-lock-c++-using in the C++ value of
this variable.
(c-font-lock-c++-using): New function.

* lisp/progmodes/cc-langs.el (c-using-kwds, c-using-key): New lang
consts/vars.
(c-modifier-kwds): Remove "using" from the C++ value.
2020-09-20 19:57:05 +00:00
Noam Postavsky
a68a0e69da Fix slow python-mode inserts when there's a lot of strings
* lisp/progmodes/python.el (python-info-docstring-p): Doing more
than two repetitions here doesn't improve indentation (bug#39598).
2020-09-20 10:46:16 +02:00
Nick Roberts
4d184fb07f Make a gud error message more informative
* lisp/progmodes/gud.el (gud-jdb-marker-filter): Make the error
message more informative (bug#1282).
2020-09-20 00:27:26 +02:00
Drew Adams
28ba879362 Document and extend menu-bar-make-toggle some
2020-09-19  Lars Ingebrigtsen  <larsi@gnus.org>

	* lisp/menu-bar.el (menu-bar-showhide-fringe-menu): Adjust caller.
	(menu-bar-search-options-menu): Ditto.
	(menu-bar-options-menu): Ditto.
	(menu-bar-options-menu): Ditto.

	* lisp/progmodes/gdb-mi.el (menu): Ditto.

	* lisp/emacs-lisp/find-func.el (find-function-regexp): Add
	menu-bar-make-toggle-command.

	* lisp/menu-bar.el (menu-bar-make-toggle): Compatibility wrapper.

2020-09-19  Drew Adams  <drew.adams@oracle.com>

	* lisp/menu-bar.el (menu-bar-make-toggle-command): Add doc string
	and allow setting all keywords (bug#17954).
2020-09-19 18:23:27 +02:00