What is a Vertical Ruler in VS Code?
In VS Code, the vertical ruler is a static, customizable design element to give your code an unenforced right-side boundary, meaning it won’t word-wrap your code
This vertical ruler isn’t for measurements, unlike in Word, Illustrator, or other design/editing packages.
Text is not impacted by rulers, as the example above shows.
Why?
A vertical ruler provides an easy means to make your code readable by not being too wide.
Some languages (like Python or Drupal) have style guides for max characters per line. (79 characters for Python).
While others, like Javascript, have a very loose set of guidelines but nothing suggesting a max character count per line.
How
Color and multiple vertical rulers are available in VS Code as of the February 2020 edition.
Step 1 - Open settings.json
- Mac: Press
Shift
Command
P
- non-macOS: press
Ctrl P
This opens the file search.
Type in settings.json
and select the file to edit it.
Step 2 - Add the following to the last line inside the json object:
"editor.rulers": [
{
"column": 80, // spacing of 1st column from left
"color": "#ff9900" // orange, Go Vols!
},
100, // 2nd ruler with no color option
{
"column": 120, // third ruler
"color": "#9f0af5" // purple, go Pirates!
},
],
The above implementation is language-agnostic and becomes the default "always-on" ruler(s). It is possible to have both the default and language-specific at the same time.
For a specific language, change the language name in the ‘[ ]’ brackets to your preferred language:
"[ruby]": {
"editor.rulers": [
{
"column": 100,
"color": "#00ff22"
}
]
}
Add one for each language.
Step 3 - Enjoy readable code
Make sure to save your changes and enjoy.
Feedback?
Have thoughts or advice on the above implementation or other useful VS Code settings?
If so, drop a note. I'd love to hear and see your examples, explanations, and other details to clarify how/why/when.
Resources
February 2020 VS Code Feature.
MDN Javascript Guidelines
Python Style Guide - PEP8
Top comments (3)
Which theme are you using here?

Enforce max line length with your linter.. This is not sustainable in a collaborative environment
How so/why not? <--curious, not argumentative. :)