1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-06 06:20:55 -08:00
emacs/lisp/progmodes
João Távora 0ff82eb487 Flymake: more ambitious cleanup in flymake-mode (bug#69809)
Further improve flymake-mode idempotency by not nuke existing overlays.
This means multiple flymake-mode invocations do the same as just one
one, with minimal or no additional side effects.  This is good for
people with lots of 'flymake-mode' in hooks.

The foreign diagnostic importation has been refactored into a separate
function and moved to the "really start" section of 'flymake-start'.
The duplication problem appears to be avoided by some heuristics in
flymake-highlight-line.

A new test has been added.

* lisp/progmodes/flymake.el (flymake--import-foreign-diagnostics): New helper
  (flymake-start): Use it.
  (flymake-mode): Don't nuke overlays here.

* test/lisp/progmodes/flymake-tests.el (foreign-diagnostics): New
  test.
2025-01-14 17:47:17 +00:00
..
antlr-mode.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
asm-mode.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
autoconf.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
bat-mode.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
bug-reference.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
c-ts-common.el Improve doxygen font-lock rules in c-ts-mode (bug#75012) 2025-01-03 23:38:32 -08:00
c-ts-mode.el ; Move c-ts-mode keyword variables forward 2025-01-12 23:38:24 -08:00
cc-align.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
cc-awk.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
cc-bytecomp.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
cc-cmds.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
cc-defs.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
cc-engine.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
cc-fonts.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
cc-guess.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
cc-langs.el Add keywords var and final to Java Mode 2025-01-08 14:07:36 +00:00
cc-menus.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
cc-mode.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
cc-styles.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
cc-vars.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
cfengine.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
cl-font-lock.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
cmacexp.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
cmake-ts-mode.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
compile.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
cperl-mode.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
cpp.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
csharp-mode.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
cwarn.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
dcl-mode.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
dockerfile-ts-mode.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
ebnf-abn.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
ebnf-bnf.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
ebnf-dtd.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
ebnf-ebx.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
ebnf-iso.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
ebnf-otz.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
ebnf-yac.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
ebnf2ps.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
ebrowse.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
eglot.el Merge from origin/emacs-30 2025-01-11 07:44:23 -05:00
elisp-mode.el Merge from origin/emacs-30 2025-01-04 09:59:52 -05:00
elixir-ts-mode.el Merge from origin/emacs-30 2025-01-04 09:59:52 -05:00
erts-mode.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
etags-regen.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
etags.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
executable.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
f90.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
flymake-cc.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
flymake-proc.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
flymake.el Flymake: more ambitious cleanup in flymake-mode (bug#69809) 2025-01-14 17:47:17 +00:00
fortran.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
gdb-mi.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
glasses.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
go-ts-mode.el Merge from origin/emacs-30 2025-01-11 07:44:23 -05:00
grep.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
gud.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
heex-ts-mode.el Merge from origin/emacs-30 2025-01-04 09:59:55 -05:00
hideif.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
hideshow.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
icon.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
inf-lisp.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
java-ts-mode.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
js.el Use the treesit thing 'list' with symbol property 'treesit-thing-symbol' 2025-01-10 09:33:49 +02:00
json-ts-mode.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
ld-script.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
lua-ts-mode.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
m4-mode.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
make-mode.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
meta-mode.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
mixal-mode.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
modula2.el Don't start docstrings with "This function" or similar 2024-12-26 21:02:45 +01:00
octave.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
opascal.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
pascal.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
peg.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
perl-mode.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
php-ts-mode.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
prog-mode.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
project.el Merge from origin/emacs-30 2025-01-04 09:59:52 -05:00
prolog.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
ps-mode.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
python.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
ruby-mode.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
ruby-ts-mode.el Use the treesit thing 'list' with symbol property 'treesit-thing-symbol' 2025-01-10 09:33:49 +02:00
rust-ts-mode.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
scheme.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
sh-script.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
simula.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
sql.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
subword.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
tcl.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
typescript-ts-mode.el * lisp/progmodes/typescript-ts-mode.el: Fix syntax of tsx tags. 2025-01-11 19:39:56 +02:00
vera-mode.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
verilog-mode.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
vhdl-mode.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
which-func.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
xref.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
xscheme.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00