retext-syntax-urls

retext plugin to classify url-like values as syntax, not natural language

Usage no npm install needed!

<script type="module">
  import retextSyntaxUrls from 'https://cdn.skypack.dev/retext-syntax-urls';
</script>

README

retext-syntax-urls

Build Coverage Downloads Size Sponsors Backers Chat

retext plugin to classify url-like values (example.com, index.html, www.alpha.bravo) as syntax, not natural language.

Install

This package is ESM only: Node 12+ is needed to use it and it must be imported instead of required.

npm:

npm install retext-syntax-urls

Use

Without syntax-urls:

import dictionary from 'dictionary-en-gb'
import {reporter} from 'vfile-reporter'
import {unified} from 'unified'
import retextEnglish from 'retext-english'
import retextSpell from 'retext-spell'
import retextSyntaxUrls from 'retext-syntax-urls'
import retextStringify from 'retext-stringify'

unified()
  .use(retextEnglish)
  .use(retextSpell, dictionary)
  .use(retextStringify)
  .process('Have you read readme.md? Check it out: www.example.com/readme.md')
  .then((file) => {
    console.log(reporter(file))
  })

Yields:

  1:15-1:24  warning  `readme.md` is misspelt        retext-spell  retext-spell
  1:40-1:55  warning  `www.example.com` is misspelt  retext-spell  retext-spell
  1:56-1:65  warning  `readme.md` is misspelt        retext-spell  retext-spell

⚠ 3 warnings

With syntax-urls:

   .use(retextEnglish)
+  .use(retextSyntaxUrls)
   .use(retextSpell, dictionary)

Yields:

no issues found

API

This package exports no identifiers. The default export is retextSyntaxUrls.

unified().use(retextSyntaxUrls)

Classify URLs, paths, and filenames as source, which represent “external (ungrammatical) values” instead of natural language. This hides them from retext-spell, retext-readability, retext-equality, and more.

Related

Contribute

See contributing.md in retextjs/.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.

License

MIT © Titus Wormer