Code Check
Overleaf's Code Check feature provides immediate feedback that helps you avoid common LaTeX syntax errors.
Last updated
Was this helpful?
Overleaf's Code Check feature provides immediate feedback that helps you avoid common LaTeX syntax errors.
The Overleaf editor includes a syntax-checker known as Code Check which highlights common errors as you type.
The errors Code Check can find are:
Mismatched \begin and \end commands
Mismatched LaTeX group delimiters { }
Mismatched \left and \right delimiters
Mismatched math mode delimiters $..$ and $$..$$
Math commands used outside math mode
Text commands used inside math mode
Code Check uses heuristics and assumes that the document is typical LaTeX, using only standard commands, e.g., every \begin{} has a corresponding \end{}.
If your project uses your own LaTeX or TeX macros, or packages which change standard LaTeX behavior, you may find that Code Check needs to be turned off—you can do this globally, for a single file, or for part of a file.
In particular, if you use macros as shortcuts for standard LaTeX environments (e.g., \newcommand{\beq}{\begin{equation}}), these will not be expanded and you should disable Code Check.
If you don't want to use Code Check at all, click on the project Settings, then navigate to Editor > Code Check.
To turn off Code Check for a single file, put the comment %%novalidate at the top of the file (N.B. to avoid conflicts we use a double comment character).
You can also turn off Code Check for part of a file.
URL, verbatim and other commands where % is a literal character can give false errors when there is subsequent LaTeX code on the same line as the command. A workaround is to start a new line after any \url{} or other commands containing literal % characters.
Commands that use LaTeX3 syntax with underscores in macro names.
Custom command definitions that separate \begin{...} from \end{...} statements.
Last updated
Was this helpful?
Was this helpful?
%%novalidate
% complex macro definitions or Tikz figures
% ...This part of the file is checked with Code Check
%%begin novalidate
This part is not checked
%%end novalidate
This part will also be checked with Code Check