astro-ghostcms/.pnpm-store/v3/files/fc/c793d299b978e890002d8a0ab65...

183 lines
5.4 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# retext
[![Build][build-badge]][build]
[![Coverage][coverage-badge]][coverage]
[![Downloads][downloads-badge]][downloads]
[![Size][size-badge]][size]
[![Sponsors][sponsors-badge]][collective]
[![Backers][backers-badge]][collective]
[![Chat][chat-badge]][chat]
[**retext**][retext] is a natural language processor powered by [plugins][]
part of the [unified][] [collective][].
* API by [**unified**][unified]
* Parses natural language to the tree with [`retext-latin`][latin]
* [**nlcst**][nlcst] syntax tree
* [Plugins][] transform the tree
* Serialize the tree to natural language using [`retext-stringify`][stringify]
Dont need the parser?
Or the compiler?
[Thats OK][unified-usage].
## Sponsors
Support this effort and give back by sponsoring on [OpenCollective][collective]!
<!--lint ignore no-html-->
<table>
<tr valign="middle">
<td width="20%" align="center" colspan="2">
<a href="https://www.gatsbyjs.org">Gatsby</a> 🥇<br><br>
<a href="https://www.gatsbyjs.org"><img src="https://avatars1.githubusercontent.com/u/12551863?s=256&v=4" width="128"></a>
</td>
<td width="20%" align="center" colspan="2">
<a href="https://vercel.com">Vercel</a> 🥇<br><br>
<a href="https://vercel.com"><img src="https://avatars1.githubusercontent.com/u/14985020?s=256&v=4" width="128"></a>
</td>
<td width="20%" align="center" colspan="2">
<a href="https://www.netlify.com">Netlify</a><br><br>
<!--OC has a sharper image-->
<a href="https://www.netlify.com"><img src="https://images.opencollective.com/netlify/4087de2/logo/256.png" width="128"></a>
</td>
<td width="10%" align="center">
<a href="https://www.holloway.com">Holloway</a><br><br>
<a href="https://www.holloway.com"><img src="https://avatars1.githubusercontent.com/u/35904294?s=128&v=4" width="64"></a>
</td>
<td width="10%" align="center">
<a href="https://themeisle.com">ThemeIsle</a><br><br>
<a href="https://themeisle.com"><img src="https://avatars1.githubusercontent.com/u/58979018?s=128&v=4" width="64"></a>
</td>
<td width="10%" align="center">
<a href="https://boosthub.io">Boost Hub</a><br><br>
<a href="https://boosthub.io"><img src="https://images.opencollective.com/boosthub/6318083/logo/128.png" width="64"></a>
</td>
<td width="10%" align="center">
<a href="https://expo.io">Expo</a><br><br>
<a href="https://expo.io"><img src="https://avatars1.githubusercontent.com/u/12504344?s=128&v=4" width="64"></a>
</td>
</tr>
<tr valign="middle">
<td width="100%" align="center" colspan="10">
<br>
<a href="https://opencollective.com/unified"><strong>You?</strong></a>
<br><br>
</td>
</tr>
</table>
## Install
[npm][]:
```sh
npm install retext
```
## Use
```js
import {retext} from 'retext'
import retextProfanities from 'retext-profanities'
import retextEmoji from 'retext-emoji'
import {reporter} from 'vfile-reporter'
retext()
.use(retextProfanities)
.use(retextEmoji, {convert: 'encode'})
.process('Hes set on beating your butt for sheriff! :cop:')
.then((file) => {
console.log(String(file))
console.error(reporter(file))
})
```
Yields:
```txt
Hes set on beating your butt for sheriff! 👮
1:26-1:30 warning Be careful with “butt”, its profane in some cases butt retext-profanities
⚠ 1 warning
```
## Contribute
See [`contributing.md`][contributing] in [`retextjs/.github`][health] for ways
to get started.
See [`support.md`][support] for ways to get help.
Ideas for new plugins and tools can be posted in [`retextjs/ideas`][ideas].
A curated list of awesome retext resources can be found in [**awesome
retext**][awesome].
This project has a [code of conduct][coc].
By interacting with this repository, organization, or community you agree to
abide by its terms.
## License
[MIT][license] © [Titus Wormer][author]
<!-- Definitions -->
[build-badge]: https://github.com/retextjs/retext/workflows/main/badge.svg
[build]: https://github.com/retextjs/retext/actions
[coverage-badge]: https://img.shields.io/codecov/c/github/retextjs/retext.svg
[coverage]: https://codecov.io/github/retextjs/retext
[downloads-badge]: https://img.shields.io/npm/dm/retext.svg
[downloads]: https://www.npmjs.com/package/retext
[size-badge]: https://img.shields.io/bundlephobia/minzip/retext.svg
[size]: https://bundlephobia.com/result?p=retext
[sponsors-badge]: https://opencollective.com/unified/sponsors/badge.svg
[backers-badge]: https://opencollective.com/unified/backers/badge.svg
[collective]: https://opencollective.com/unified
[chat-badge]: https://img.shields.io/badge/chat-discussions-success.svg
[chat]: https://github.com/retextjs/retext/discussions
[health]: https://github.com/retextjs/.github
[contributing]: https://github.com/retextjs/.github/blob/main/contributing.md
[support]: https://github.com/retextjs/.github/blob/main/support.md
[coc]: https://github.com/retextjs/.github/blob/main/code-of-conduct.md
[ideas]: https://github.com/retextjs/ideas
[awesome]: https://github.com/retextjs/awesome-retext
[license]: https://github.com/retextjs/retext/blob/main/license
[author]: https://wooorm.com
[npm]: https://docs.npmjs.com/cli/install
[unified]: https://github.com/unifiedjs/unified
[unified-usage]: https://github.com/unifiedjs/unified#usage
[latin]: https://github.com/retextjs/retext/tree/main/packages/retext-latin
[stringify]: https://github.com/retextjs/retext/tree/main/packages/retext-stringify
[plugins]: https://github.com/retextjs/retext/tree/main/doc/plugins.md
[retext]: https://github.com/retextjs/retext
[nlcst]: https://github.com/syntax-tree/nlcst