Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Plain-text "summary" RDMD export method. #37

Closed
rafegoldberg opened this issue Apr 28, 2020 · 1 comment
Closed

Plain-text "summary" RDMD export method. #37

rafegoldberg opened this issue Apr 28, 2020 · 1 comment
Assignees

Comments

@rafegoldberg
Copy link
Contributor

Let's add a previewText export method to the RDMD engine to loop through the AST and remove any non-paragraph nodes. Then we can transform that to plain-text, and do the truncation in the top-level method. So it'd look something like:

import remarkToPlainText from 'remark-plain-text';
import visit from 'unist-util-flatmap';

const pTagFilter = node => node.type==='paragraph' ? node : null);
//^Our custom p tag filter "plugin"; this is all
// pseudo code, but it works something like this!

export function previewText(text, truncateAt, opts = {}) {
  if (!text) return null;
  [text, opts] = setup(text, opts);

  text = processor(opts)
    .use(tree => visit(tree, pTagFilter))
    .use(remarkToPlainText)
    .use(rehypeStringify)
    .processSync(text)
    .contents;

  return text.slice(0, truncateAt).trim() + '...';
}
@rafegoldberg rafegoldberg transferred this issue from readmeio/api-explorer Aug 4, 2020
@kanadgupta kanadgupta removed their assignment Mar 8, 2022
@kellyjosephprice
Copy link
Collaborator

I believe astToPlainText can be used to accomplish this?

rafegoldberg pushed a commit that referenced this issue Oct 30, 2024
## Version 7.8.0
### ✨ New & Improved

* compat parser ([#1004](#1004)) ([ead267e](ead267e))

### 🛠 Fixes & Updates

* bold in tables ([#1006](#1006)) ([bc481d9](bc481d9))
* **deps:** bump actions/setup-node from 3 to 4 ([#821](#821)) ([f96ea89](f96ea89)), closes [actions/setup-node#866](actions/setup-node#866) [actions/setup-node#868](actions/setup-node#868) [actions/setup-node#876](actions/setup-node#876) [actions/setup-node#868](actions/setup-node#868) [actions/setup-node#861](actions/setup-node#861) [actions/setup-node#859](actions/setup-node#859) [actions/setup-node#870](actions/setup-node#870) [actions/setup-node#872](actions/setup-node#872) [actions/setup-node#875](actions/setup-node#875) [actions/setup-node#831](actions/setup-node#831) [actions/setup-node#803](actions/setup-node#803) [actions/setup-node#809](actions/setup-node#809) [actions/setup-node#816](actions/setup-node#816) [actions/setup-node#794](actions/setup-node#794) [actions/setup-node#710](actions/setup-node#710) [actions/setup-node#812](actions/setup-node#812) [actions/setup-node#808](actions/setup-node#808) [actions/setup-node#804](actions/setup-node#804) [actions/setup-node#802](actions/setup-node#802) [actions/setup-node#807](actions/setup-node#807) [#876](#876) [#868](#868) [#866](#866)
* **deps:** bump actions/upload-artifact from 3 to 4 ([#846](#846)) ([5a72802](5a72802)), closes [actions/upload-artifact#464](actions/upload-artifact#464) [actions/upload-artifact#313](actions/upload-artifact#313) [actions/upload-artifact#436](actions/upload-artifact#436) [#374](#374) [#375](#375) [#351](#351) [actions/upload-artifact#327](actions/upload-artifact#327) [actions/toolkit#1095](actions/toolkit#1095) [actions/toolkit#1063](actions/toolkit#1063) [#515](#515) [#511](#511) [#509](#509) [#505](#505)
* **deps:** bump braces from 3.0.2 to 3.0.3 ([#907](#907)) ([6b017a7](6b017a7)), closes [#40](#40) [#37](#37) [#27](#27)
* **deps:** bump core-js from 3.36.1 to 3.38.1 ([#1013](#1013)) ([58ceef7](58ceef7)), closes [#1357](https://github.com/readmeio/markdown/issues/1357) [#1361](https://github.com/readmeio/markdown/issues/1361) [#1352](https://github.com/readmeio/markdown/issues/1352) [#1345](https://github.com/readmeio/markdown/issues/1345) [#1344](https://github.com/readmeio/markdown/issues/1344) [#1361](https://github.com/readmeio/markdown/issues/1361)
* **deps-dev:** bump css-loader from 6.11.0 to 7.1.2 ([#1015](#1015)) ([6be77cf](6be77cf)), closes [#1600](https://github.com/readmeio/markdown/issues/1600) [#1590](https://github.com/readmeio/markdown/issues/1590) [#1577](https://github.com/readmeio/markdown/issues/1577) [#1600](https://github.com/readmeio/markdown/issues/1600) [#1590](https://github.com/readmeio/markdown/issues/1590) [#1577](https://github.com/readmeio/markdown/issues/1577) [#1600](https://github.com/readmeio/markdown/issues/1600) [#1596](https://github.com/readmeio/markdown/issues/1596) [#1595](https://github.com/readmeio/markdown/issues/1595) [#1591](https://github.com/readmeio/markdown/issues/1591) [#1587](https://github.com/readmeio/markdown/issues/1587) [#1586](https://github.com/readmeio/markdown/issues/1586)
* **deps:** bump dset from 3.1.3 to 3.1.4 ([#1018](#1018)) ([be480d7](be480d7))
* **deps:** bump github/codeql-action from 2 to 3 ([#847](#847)) ([4b97fe6](4b97fe6)), closes [#2203](https://github.com/readmeio/markdown/issues/2203) [#2195](https://github.com/readmeio/markdown/issues/2195) [#2185](https://github.com/readmeio/markdown/issues/2185) [#2156](https://github.com/readmeio/markdown/issues/2156) [#2151](https://github.com/readmeio/markdown/issues/2151) [#2147](https://github.com/readmeio/markdown/issues/2147) [#2141](https://github.com/readmeio/markdown/issues/2141) [#2124](https://github.com/readmeio/markdown/issues/2124) [#2121](https://github.com/readmeio/markdown/issues/2121) [/github.com/github/codeql-action/blob/main/#3230---08-jan-2024](https://github.com/readmeio//github.com/github/codeql-action/blob/main//issues/3230---08-jan-2024) [#2106](https://github.com/readmeio/markdown/issues/2106) [#2083](https://github.com/readmeio/markdown/issues/2083) [#2096](https://github.com/readmeio/markdown/issues/2096) [#2073](https://github.com/readmeio/markdown/issues/2073) [#2079](https://github.com/readmeio/markdown/issues/2079) [#2200](https://github.com/readmeio/markdown/issues/2200) [#2198](https://github.com/readmeio/markdown/issues/2198) [#2197](https://github.com/readmeio/markdown/issues/2197)
* **deps-dev:** bump jest-puppeteer from 8.0.6 to 10.1.4 ([#1016](#1016)) ([33aa434](33aa434)), closes [#604](#604) [#602](#602) [#599](#599) [#586](#586) [#578](#578) [#576](#576) [#605](#605)
* **deps:** bump micromatch from 4.0.5 to 4.0.8 ([#1019](#1019)) ([7be267e](7be267e)), closes [#266](#266)
* **deps-dev:** bump mini-css-extract-plugin from 2.8.1 to 2.9.1 ([#1017](#1017)) ([9fb25da](9fb25da))
* **deps-dev:** bump semantic-release from 22.0.12 to 24.2.0 ([#1011](#1011)) ([443c843](443c843)), closes [#3462](https://github.com/readmeio/markdown/issues/3462) [#3460](https://github.com/readmeio/markdown/issues/3460) [#3436](https://github.com/readmeio/markdown/issues/3436) [#3423](https://github.com/readmeio/markdown/issues/3423) [#3462](https://github.com/readmeio/markdown/issues/3462) [#3489](https://github.com/readmeio/markdown/issues/3489) [#3488](https://github.com/readmeio/markdown/issues/3488) [#3486](https://github.com/readmeio/markdown/issues/3486) [#3487](https://github.com/readmeio/markdown/issues/3487) [#3485](https://github.com/readmeio/markdown/issues/3485) [#3483](https://github.com/readmeio/markdown/issues/3483) [#3450](https://github.com/readmeio/markdown/issues/3450) [#3481](https://github.com/readmeio/markdown/issues/3481) [#3424](https://github.com/readmeio/markdown/issues/3424)
* **deps-dev:** bump webpack from 5.91.0 to 5.95.0 ([#1014](#1014)) ([b9c8dd2](b9c8dd2))
* update conventional commits ([50a4be9](50a4be9))
* upgrade conventionalcommits ([3646513](3646513))

<!--SKIP CI-->
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants