Checks syntax of reStructuredText and code blocks nested within it.
From pip:
$ pip install --upgrade rstcheck
- Bash
- C (C99)
- C++ (C++11)
- JSON
- Python
- reStructuredText
With bad Python syntax:
====
Test
====
.. code-block:: python
print($ rstcheck bad_python.rst bad_python.rst:7: (ERROR/3) (python) unexpected EOF while parsing
With bad C++ syntax:
====
Test
====
.. code-block:: cpp
int main()
{
return x;
}$ rstcheck bad_cpp.rst bad_cpp.rst:9: (ERROR/3) (cpp) error: 'x' was not declared in this scope
With bad syntax in the reStructuredText document itself:
====
Test
===$ rstcheck bad_rst.rst bad_rst.rst:1: (SEVERE/4) Title overline & underline mismatch.
usage: rstcheck [-h] [--report level] [--ignore language] files [files ...]
Checks code blocks in reStructuredText.
positional arguments:
files files to check
optional arguments:
-h, --help show this help message and exit
--report level report system messages at or higher than level; 1 info, 2
warning, 3 error, 4 severe, 5 none (default: 1)
--ignore language comma-separated list of languages to ignore
To check reStructuredText in Vim using Syntastic:
let g:syntastic_rst_checkers = ['rstcheck']