Vale: Your Style, Our Editor
Vale is a natural language linter that supports plain text, markup (Markdown, reStructuredText, AsciiDoc, and HTML), and source code comments. Vale doesn't attempt to offer a one-size-fits-all collection of rules—instead, it strives to make customization as easy as possible.
Check out project website to learn more!
Features
- Supports Markdown, reStructuredText, AsciiDoc, HTML, and source code.
- Extensible through straightforward YAML files.
- Standalone binaries for Windows, macOS, and Linux.
- Expressive, EditorConfig-like configuration.
Installation
There are a few options to choose from:
-
Install through Homebrew on macOS:
$ brew tap ValeLint/vale
$ brew install vale
-
Install via the Windows Installer package (.msi
) on the releases page.
-
Manually install on Windows, macOS, or Linux by downloading an executable from the releases page.
Usage
Run Vale on a single file:
$ vale README.md
Run Vale on files matching a particular glob:
# Only lint Markdown and reStructuredText
$ vale --glob='*.{md,rst}' directory
Or exclude files matching a particular glob:
# Ignore all `.txt` files
$ vale --glob='!*.txt' directory
Pipe input to Vale:
$ echo 'this is some text' | vale
Run Vale on text with an assigned syntax:
$ vale --ext=.md 'this is some text'
See vale --help
and Configuration for more information.
Integrations
Reference Styles
Style (download) |
Description |
Development Status |
write-good |
Naive linter for English prose for developers who can't write good and wanna learn to do other stuff good too. |
✅ |
Joblint |
Test tech job posts for issues with sexism, culture, expectations, and recruiter fails. |
✅ |
jQuery |
A collection of rules based on jQuery's documentation formatting conventions and writing style. |
🚧 |
TheEconomist |
A collection of rules based on The Economist Style Guide. |
🚧 |
Homebrew |
A set of style and usage guidelines for Homebrew’s prose documentation aimed at users, contributors, and maintainers. |
🚧 |
Middlebury |
A collection of rules based on The Middlebury Editorial Style Guide. |
🚧 |
18F |
Guidelines for creating plain and concise writing. |
🚧 |
To use one of these styles, you'd copy its files onto your StylesPath
and then specify it in your config file:
# This goes in a file named either `.vale` or `_vale`.
StylesPath = path/to/some/directory
MinAlertLevel = warning # suggestion, warning or error
[*.{md,txt}] # Only Markdown and .txt files
# List of styles to load
BasedOnStyles = vale, Joblint
# Style.Rule = {YES, NO, suggestion, warning, error} to
# enable/disable a rule or change its level.
vale.Editorializing = NO
See Configuration and Styles for more information.