Error squiggles appear by default in VS Code, but you may need to check your settings if they have stopped showing

Error squiggles are the wavy red, yellow, and blue underlines that VS Code displays under code problems in real time. They appear automatically in most setups, but if you are not seeing them, the issue is usually a disabled extension, a language server that did not start, or a setting you changed. Turning them back on takes one or two steps depending on what turned them off.

The most common reason squiggles disappear is that you disabled the language extension for your file type — for example, the Python extension or the ESLint extension. The second most common reason is that you have a setting that hides problems in the editor itself. Both are easy to fix without restarting VS Code.

Key Takeaways

  • Error squiggles come from language extensions like Python, ESLint, and Pylance, so check that the extension for your language is installed and enabled.
  • Open the Problems panel with Ctrl+Shift+M (Windows and Linux) or Cmd+Shift+M (Mac) to see whether VS Code is detecting errors at all.
  • If the Problems panel is empty but you see code errors, check the Editor: Render Whitespace and Editor: Render Invalid Whitespace settings, which can hide squiggles.
  • Reload the window with Ctrl+Shift+P and typing "Developer: Reload Window" if squiggles still do not appear after checking extensions and settings.

Check that your language extension is installed and enabled

Error squiggles depend on a language extension being present and active. VS Code ships with built-in support for JavaScript and TypeScript, but Python, C++, Go, Rust, and most other languages need their official extension or a third-party alternative.

Open the Extensions panel by pressing Ctrl+Shift+X (Windows and Linux) or Cmd+Shift+X (Mac). Search for your language — for example, "Python" or "ESLint". If the extension is installed, you will see an Uninstall button. If it shows Install, click that button to add it. If the extension is installed but shows a Disable button with a strikethrough icon next to it, the extension is disabled — click Enable to turn it back on.

After you install or enable an extension, VS Code may ask you to reload the window. Click Reload if prompted. If it does not prompt you, move to the next step.

Open the Problems panel to see what errors exist

The Problems panel shows every error and warning VS Code has found in your open files. If errors appear there but not as squiggles in the editor, the problem is a display setting, not a detection problem.

Press Ctrl+Shift+M (Windows and Linux) or Cmd+Shift+M (Mac) to open the Problems panel at the bottom of the window. If the panel is empty, VS Code is not detecting errors — go back and check that your language extension is installed. If the panel shows errors but you do not see squiggles in the editor, move to the next step.

Check the Editor: Render Whitespace setting

A setting called Editor: Render Whitespace can hide error squiggles if it is set to "all" or "boundary". This setting is meant to show spaces and tabs visually, but it can interfere with how squiggles display.

Open the Settings panel by pressing Ctrl+, (Windows and Linux) or Cmd+, (Mac). Search for "render whitespace" in the search box. Look at the dropdown next to Editor: Render Whitespace. If it is set to anything other than "none" or "selection", change it to "none". Close the Settings panel — the change takes effect immediately.

Disable the Editor: Render Invalid Whitespace setting if it is on

A related setting called Editor: Render Invalid Whitespace can also hide squiggles in some cases. This setting highlights whitespace characters that do not match your file's indentation style.

In the Settings panel (still open from the previous step), search for "render invalid whitespace". If the checkbox next to Editor: Render Invalid Whitespace is checked, uncheck it. Again, the change takes effect right away.

Reload the window if squiggles still do not appear

If you have checked your extensions, opened the Problems panel, and adjusted the whitespace settings but squiggles still are not showing, reload VS Code's window to reset the language server.

Press Ctrl+Shift+P (Windows and Linux) or Cmd+Shift+P (Mac) to open the Command Palette. Type "reload window" and select Developer: Reload Window. VS Code will close and reopen your workspace. After it reopens, check whether squiggles now appear.

Frequently Asked Questions

Why do I see errors in the Problems panel but no squiggles in the editor?

This usually means a display setting is hiding the squiggles, not that they are not being detected. Check the Editor: Render Whitespace and Editor: Render Invalid Whitespace settings as described above. If both are set correctly and squiggles still do not show, try reloading the window.

Do I need to install a separate extension for error checking?

It depends on your language. JavaScript and TypeScript have built-in checking. Python, C++, Go, and most others need their official extension. Some languages like Python also benefit from additional tools like Pylance or Pylint, which provide more detailed error messages.

What if my language extension is installed but squiggles only appear sometimes?

The language server may be slow to start or may have crashed. Reload the window using the Developer: Reload Window command. If squiggles still appear only sometimes, check the Output panel (View > Output) and select your language from the dropdown to see whether the language server is reporting errors.

Can I turn off error squiggles if I do not want to see them?

Yes. Open Settings, search for "editor validate", and uncheck the box next to Editor: Validate. This disables error checking entirely. You can also disable squiggles for a single language by opening Settings, searching for "[language] validate", and unchecking that option instead.