-
Notifications
You must be signed in to change notification settings - Fork 235
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
emacs' merlin-mode highlighting of code w/ errors is just bad #1663
emacs' merlin-mode highlighting of code w/ errors is just bad #1663
Comments
Add |
+1 for having nice defaults... |
@UnixJunkie , |
Just take a significant ocaml source file from any project, and change it so that it does not compile anymore. |
And yes, this PR #1693 changes the default to something I prefer. |
I exaplained a typical example that exhibits the issue in #1693 (comment) |
I personally don't have a strong opinion about this. Knowing the scope of the error is useful, but having the whole buffer turn red is not. Do other language plugins have better way to deal with this issue ? Maybe we could underline everything only when more information is asked about the error ? Since we had recently a nice collective discussion about keybindings, I will summon the people who took part in it to gather more feedback 🙂 |
Depends on what info we can get from the compiler about the error - in CIDER we try to map the errors to a single expression, even if it's multiline. Can someone post a screenshot of the problem, because I don't recall seeing crazy error highlighting in Merlin. |
Yeah, this looks pretty bad indeed. I think most packages would just underline characters 2-19 on line 121 as indicated by the compiler error. |
The wholesale highlighting of the entire module struct because of a single mismatch is rubbish of course, but setting Anything preventing us from highlighting the ranges supplied by the error messages? They seem a lot more informative, as in
|
CHANGES: Fri Dec 1 15:00:42 CET 2023 + merlin binary - Fix a follow-up issue to the preference of non-ghost nodes introduced in ocaml/merlin#1660 (ocaml/merlin#1690, fixes ocaml/merlin#1689) - Add `-cache-lifespan` flag, that sets cache invalidation period. (ocaml/merlin#1698, ocaml/merlin#1705) - Fix Merlin locate not fallbacking on the correct file in case of ambiguity (@goldfirere, ocaml/merlin#1699) - Fix Merlin reporting errors provoked by the recovery itself (ocaml/merlin#1709, fixes ocaml/merlin#1704) + editor modes - vim: load merlin when Vim is compiled with +python3/dyn (e.g. MacVim) - emacs: highlight only first error line by default (ocaml/merlin#1693, fixes ocaml/merlin#1663)
CHANGES: Fri Dec 1 15:00:42 CET 2023 + merlin binary - Fix a follow-up issue to the preference of non-ghost nodes introduced in ocaml/merlin#1660 (ocaml/merlin#1690, fixes ocaml/merlin#1689) - Add `-cache-lifespan` flag, that sets cache invalidation period. (ocaml/merlin#1698, ocaml/merlin#1705) - Ignore the new 5.1 `cmi-file` flag instead of rejecting it (ocaml/merlin#1710, fixes ocaml/merlin#1703) - Fix Merlin locate not fallbacking on the correct file in case of ambiguity (@goldfirere, ocaml/merlin#1699) - Fix Merlin reporting errors provoked by the recovery itself (ocaml/merlin#1709, fixes ocaml/merlin#1704) + editor modes - vim: load merlin when Vim is compiled with +python3/dyn (e.g. MacVim) - emacs: highlight only first error line by default (ocaml/merlin#1693, fixes ocaml/merlin#1663)
CHANGES: Fri Dec 1 15:00:42 CET 2023 + merlin binary - Fix a follow-up issue to the preference of non-ghost nodes introduced in ocaml/merlin#1660 (ocaml/merlin#1690, fixes ocaml/merlin#1689) - Add `-cache-lifespan` flag, that sets cache invalidation period. (ocaml/merlin#1698, ocaml/merlin#1705) - Ignore the new 5.1 `cmi-file` flag instead of rejecting it (ocaml/merlin#1710, fixes ocaml/merlin#1703) - Fix Merlin locate not fallbacking on the correct file in case of ambiguity (@goldfirere, ocaml/merlin#1699) - Fix Merlin reporting errors provoked by the recovery itself (ocaml/merlin#1709, fixes ocaml/merlin#1704) - Add support for OCaml 5.1.1 (ocaml/merlin#1714) + editor modes - vim: load merlin when Vim is compiled with +python3/dyn (e.g. MacVim) - emacs: highlight only first error line by default (ocaml/merlin#1693, fixes ocaml/merlin#1663)
CHANGES: Mon Dec 18 16:42:00 CET 2023 + merlin binary - Fix a follow-up issue to the preference of non-ghost nodes introduced in ocaml/merlin#1660 (ocaml/merlin#1690, fixes ocaml/merlin#1689) - Add `-cache-lifespan` flag, that sets cache invalidation period. (ocaml/merlin#1698, ocaml/merlin#1705) - Fix Merlin locate not fallbacking on the correct file in case of ambiguity (@goldfirere, ocaml/merlin#1699) - Fix Merlin reporting errors provoked by the recovery itself (ocaml/merlin#1709, fixes ocaml/merlin#1704) + editor modes - vim: load merlin when Vim is compiled with +python3/dyn (e.g. MacVim) - emacs: highlight only first error line by default (ocaml/merlin#1693, fixes ocaml/merlin#1663)
CHANGES: Mon Dec 18 16:42:00 CET 2023 + merlin binary - Fix a follow-up issue to the preference of non-ghost nodes introduced in ocaml/merlin#1660 (ocaml/merlin#1690, fixes ocaml/merlin#1689) - Add `-cache-lifespan` flag, that sets cache invalidation period. (ocaml/merlin#1698, ocaml/merlin#1705) - Fix Merlin locate not fallbacking on the correct file in case of ambiguity (@goldfirere, ocaml/merlin#1699) - Fix Merlin reporting errors provoked by the recovery itself (ocaml/merlin#1709, fixes ocaml/merlin#1704) + editor modes - vim: load merlin when Vim is compiled with +python3/dyn (e.g. MacVim) - emacs: highlight only first error line by default (ocaml/merlin#1693, fixes ocaml/merlin#1663)
CHANGES: Fri Dec 1 15:00:42 CET 2023 + merlin binary - Fix a follow-up issue to the preference of non-ghost nodes introduced in ocaml/merlin#1660 (ocaml/merlin#1690, fixes ocaml/merlin#1689) - Add `-cache-lifespan` flag, that sets cache invalidation period. (ocaml/merlin#1698, ocaml/merlin#1705) - Ignore the new 5.1 `cmi-file` flag instead of rejecting it (ocaml/merlin#1710, fixes ocaml/merlin#1703) - Fix Merlin locate not fallbacking on the correct file in case of ambiguity (@goldfirere, ocaml/merlin#1699) - Fix Merlin reporting errors provoked by the recovery itself (ocaml/merlin#1709, fixes ocaml/merlin#1704) - Add support for OCaml 5.1.1 (ocaml/merlin#1714) + editor modes - vim: load merlin when Vim is compiled with +python3/dyn (e.g. MacVim) - emacs: highlight only first error line by default (ocaml/merlin#1693, fixes ocaml/merlin#1663) [new release] merlin-lib and merlin (4.13-501) CHANGES: Fri Dec 1 15:00:42 CET 2023 + merlin binary - Fix a follow-up issue to the preference of non-ghost nodes introduced in ocaml/merlin#1660 (ocaml/merlin#1690, fixes ocaml/merlin#1689) - Add `-cache-lifespan` flag, that sets cache invalidation period. (ocaml/merlin#1698, ocaml/merlin#1705) - Ignore the new 5.1 `cmi-file` flag instead of rejecting it (ocaml/merlin#1710, fixes ocaml/merlin#1703) - Fix Merlin locate not fallbacking on the correct file in case of ambiguity (@goldfirere, ocaml/merlin#1699) - Fix Merlin reporting errors provoked by the recovery itself (ocaml/merlin#1709, fixes ocaml/merlin#1704) + editor modes - vim: load merlin when Vim is compiled with +python3/dyn (e.g. MacVim) - emacs: highlight only first error line by default (ocaml/merlin#1693, fixes ocaml/merlin#1663) [new release] merlin-lib and merlin (4.13-414) CHANGES: Fri Dec 1 15:00:42 CET 2023 + merlin binary - Fix a follow-up issue to the preference of non-ghost nodes introduced in ocaml/merlin#1660 (ocaml/merlin#1690, fixes ocaml/merlin#1689) - Add `-cache-lifespan` flag, that sets cache invalidation period. (ocaml/merlin#1698, ocaml/merlin#1705) - Fix Merlin locate not fallbacking on the correct file in case of ambiguity (@goldfirere, ocaml/merlin#1699) - Fix Merlin reporting errors provoked by the recovery itself (ocaml/merlin#1709, fixes ocaml/merlin#1704) + editor modes - vim: load merlin when Vim is compiled with +python3/dyn (e.g. MacVim) - emacs: highlight only first error line by default (ocaml/merlin#1693, fixes ocaml/merlin#1663)
CHANGES: Mon Dec 18 16:42:00 CET 2023 + merlin binary - Fix a follow-up issue to the preference of non-ghost nodes introduced in ocaml/merlin#1660 (ocaml/merlin#1690, fixes ocaml/merlin#1689) - Add `-cache-lifespan` flag, that sets cache invalidation period. (ocaml/merlin#1698, ocaml/merlin#1705) - Fix Merlin locate not fallbacking on the correct file in case of ambiguity (@goldfirere, ocaml/merlin#1699) - Fix Merlin reporting errors provoked by the recovery itself (ocaml/merlin#1709, fixes ocaml/merlin#1704) + editor modes - vim: load merlin when Vim is compiled with +python3/dyn (e.g. MacVim) - emacs: highlight only first error line by default (ocaml/merlin#1693, fixes ocaml/merlin#1663)
Putting a lot of code in a bold pinkish font is just not helpful.
That makes the whole code completely unreadable.
I have to disable merlin-mode so that I can continue
working on the code in question...
https://discuss.ocaml.org/t/emacs-merlin-mode-and-highlighting-of-code-w-errors/12845/2
The text was updated successfully, but these errors were encountered: