MD038 - Remove extra spaces in code¶
Aliases: no-space-in-code
What this rule does¶
Removes unnecessary spaces between backticks and code content in inline code spans.
Why this matters¶
- Clean formatting: Extra spaces make code snippets look unpolished
- Accurate code: Leading/trailing spaces might be mistaken as part of the code
- Consistent appearance: Code should be formatted the same way throughout
- Better readability: Clear boundaries between code and regular text
Examples¶
✅ Correct¶
Code directly touches the backticks:
Use the `print()` function to display output.
Call `getUserName()` to get the current user.
The variable `isEnabled` stores the state.
❌ Incorrect¶
Extra spaces inside backticks:
Use the ` print()` function to display output.
Call `getUserName() ` to get the current user.
The variable ` isEnabled ` stores the state.
🔧 Fixed¶
Spaces removed from edges:
Use the `print()` function to display output.
Call `getUserName()` to get the current user.
The variable `isEnabled` stores the state.
Configuration¶
This rule has no configuration options.
Flavor-specific behavior¶
Obsidian flavor¶
When using --flavor obsidian, this rule recognizes Dataview plugin inline queries and does not flag them as spacing errors:
- Inline DQL:
`= expression`- Queries that start with= - Inline DataviewJS:
`$= expression`- JavaScript expressions that start with$=
Examples that are valid in Obsidian flavor:
The file name is `= this.file.name` and it was modified on `= this.file.mtime`.
Page count: `$= dv.pages('#project').length` projects found.
Status: `= choice(this.done, "✅", "⏳")`
Note: These expressions don't have leading whitespace issues in practice since the = or $= comes directly after the opening backtick. The Dataview check serves as additional protection for edge cases.
MkDocs flavor¶
When using --flavor mkdocs, this rule allows InlineHilite syntax for syntax-highlighted inline code:
Quarto flavor¶
When using --flavor quarto, this rule allows inline R code expressions:
Automatic fixes¶
This rule will:
- Remove spaces after opening backticks
- Remove spaces before closing backticks
- Preserve spaces within the code itself
- Handle multiple code spans on the same line
Learn more¶
Related rules¶
- MD037 - Spaces inside emphasis markers - Similar rule for bold and italic text