
Product
Announcing Precomputed Reachability Analysis in Socket
Socket’s precomputed reachability slashes false positives by flagging up to 80% of vulnerabilities as irrelevant, with no setup and instant results.
remark-lint-table-pipes
Advanced tools
remark-lint rule to warn when table rows are not fenced with pipes
remark-lint
rule to warn when GFM table rows have no initial or
final cell delimiter.
This package checks that table rows have initial and final delimiters.
Tables are a GFM feature enabled with remark-gfm
.
You can use this package to check that tables are consistent.
This plugin is included in the following presets:
Preset | Options |
---|---|
remark-preset-lint-markdown-style-guide |
This package is ESM only. In Node.js (version 16+), install with npm:
npm install remark-lint-table-pipes
In Deno with esm.sh
:
import remarkLintTablePipes from 'https://esm.sh/remark-lint-table-pipes@5'
In browsers with esm.sh
:
<script type="module">
import remarkLintTablePipes from 'https://esm.sh/remark-lint-table-pipes@5?bundle'
</script>
On the API:
import remarkLint from 'remark-lint'
import remarkLintTablePipes from 'remark-lint-table-pipes'
import remarkParse from 'remark-parse'
import remarkStringify from 'remark-stringify'
import {read} from 'to-vfile'
import {unified} from 'unified'
import {reporter} from 'vfile-reporter'
const file = await read('example.md')
await unified()
.use(remarkParse)
.use(remarkLint)
.use(remarkLintTablePipes)
.use(remarkStringify)
.process(file)
console.error(reporter(file))
On the CLI:
remark --frail --use remark-lint --use remark-lint-table-pipes .
On the CLI in a config file (here a package.json
):
…
"remarkConfig": {
"plugins": [
…
"remark-lint",
+ "remark-lint-table-pipes",
…
]
}
…
This package exports no identifiers.
It exports no additional TypeScript types.
The default export is
remarkLintTablePipes
.
unified().use(remarkLintTablePipes)
Warn when GFM table rows have no initial or final cell delimiter.
There are no options.
Transform (Transformer
from unified
).
While tables don’t require initial or final delimiters (the pipes before the first and after the last cells in a row), it arguably does look weird without.
remark-stringify
with
remark-gfm
formats all tables with initial and final
delimiters.
ok.md
👉 Note: this example uses GFM (
remark-gfm
).
Small table:
| Planet | Mean anomaly (°) |
| :- | -: |
| Mercury | 174 796 |
No messages.
not-ok.md
👉 Note: this example uses GFM (
remark-gfm
).
Planet | Mean anomaly (°)
:- | -:
Mercury | 174 796
1:1: Unexpected missing closing pipe in row, expected `|`
1:26: Unexpected missing opening pipe in row, expected `|`
2:1: Unexpected missing closing pipe in row, expected `|`
2:8: Unexpected missing opening pipe in row, expected `|`
3:1: Unexpected missing closing pipe in row, expected `|`
3:18: Unexpected missing opening pipe in row, expected `|`
missing-cells.md
👉 Note: this example uses GFM (
remark-gfm
).
Planet | Symbol | Satellites
:- | - | -
Mercury
Venus | ♀
Earth | ♁ | 1
Mars | ♂ | 2 | 19 412
1:1: Unexpected missing closing pipe in row, expected `|`
1:29: Unexpected missing opening pipe in row, expected `|`
2:1: Unexpected missing closing pipe in row, expected `|`
2:11: Unexpected missing opening pipe in row, expected `|`
3:1: Unexpected missing closing pipe in row, expected `|`
3:8: Unexpected missing opening pipe in row, expected `|`
4:1: Unexpected missing closing pipe in row, expected `|`
4:10: Unexpected missing opening pipe in row, expected `|`
5:1: Unexpected missing closing pipe in row, expected `|`
5:14: Unexpected missing opening pipe in row, expected `|`
6:1: Unexpected missing closing pipe in row, expected `|`
6:22: Unexpected missing opening pipe in row, expected `|`
trailing-spaces.md
👉 Note: this example uses GFM (
remark-gfm
).
␠␠Planet␠␠
␠-:␠
␠␠| Planet |␠␠
␠| -: |␠
1:3: Unexpected missing closing pipe in row, expected `|`
1:11: Unexpected missing opening pipe in row, expected `|`
2:2: Unexpected missing closing pipe in row, expected `|`
2:5: Unexpected missing opening pipe in row, expected `|`
windows.md
👉 Note: this example uses GFM (
remark-gfm
).
Mercury␍␊:-␍␊None
1:1: Unexpected missing closing pipe in row, expected `|`
1:8: Unexpected missing opening pipe in row, expected `|`
2:1: Unexpected missing closing pipe in row, expected `|`
2:3: Unexpected missing opening pipe in row, expected `|`
3:1: Unexpected missing closing pipe in row, expected `|`
3:5: Unexpected missing opening pipe in row, expected `|`
Projects maintained by the unified collective are compatible with maintained versions of Node.js.
When we cut a new major release, we drop support for unmaintained versions of
Node.
This means we try to keep the current release line,
remark-lint-table-pipes@5
,
compatible with Node.js 16.
See contributing.md
in remarkjs/.github
for ways
to get started.
See support.md
for ways to get help.
This project has a code of conduct. By interacting with this repository, organization, or community you agree to abide by its terms.
FAQs
remark-lint rule to warn when table rows are not fenced with pipes
The npm package remark-lint-table-pipes receives a total of 83,653 weekly downloads. As such, remark-lint-table-pipes popularity was classified as popular.
We found that remark-lint-table-pipes demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 3 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Product
Socket’s precomputed reachability slashes false positives by flagging up to 80% of vulnerabilities as irrelevant, with no setup and instant results.
Product
Socket is launching experimental protection for Chrome extensions, scanning for malware and risky permissions to prevent silent supply chain attacks.
Product
Add secure dependency scanning to Claude Desktop with Socket MCP, a one-click extension that keeps your coding conversations safe from malicious packages.