1. msgdown
A simple message formatter for bold, strikthrough, underline, sub, sup, italic and code.
msgdown
Package: msgdown
Created by: mattmezza
Last modified: Mon, 09 May 2022 23:06:05 GMT
Version: 1.0.2
License: MIT
Downloads: 7,797
Repository: https://github.com/mattmezza/msgdown

Install

npm install msgdown
yarn add msgdown

msgdown

A simple message formatter for bold, strikethrough, underline, sub, sup, italic and code.

msgdown

logo

Installation

yarn add msgdown

Usage

 const down = require('msgdown')

const msg = `*Attention:* /msgdown/^TM^ is great¡1¡. _Use it_ or ~don\'t~ it is \`console.log('up to you!')\``
const html = down(msg)

html will contain exactly this:

 <strong>Attention:</strong> <em>msgdown</em><sup>TM</sup> is great<sub>1</sub>. <u>Use it</u> or <del>don\'t</del> it is <code>console.log('up to you!')</code>

Custom tokens

By default msgdown will use these tokens:

 const defaultTokens = {
  bold: {delimiter: '*', tag: 'strong'},
  italic: {delimiter: '/', tag: 'em'},
  underline: {delimiter: '_', tag: 'u'},
  strike: {delimiter: '~', tag: 'del'},
  code: {delimiter: '`', tag: 'code'},
  sup: {delimiter: '^', tag: 'sup'},
  sub: {delimiter: '¡', tag: 'sub'}
}

You can override every and each of the tokens by passing in your custom token object on every function call:

 const html = down('ßI am bold with a bß', {bold: {delmiter: 'ß', tag: 'b'}})

The above html will contain <b>I am bold with a b</b>.

Testing

There is a test file linked to yarn test. Should be enough even though enough is never enough.

Development

Maybe add more tokens? Maybe add pattern matching instead of plain one char matching? Maybe something else? You name it...

Author

Matteo Merola [email protected]

RELATED POST

Enhancing Vue.js Development: Harnessing the Potential of Vue-Loader

Enhancing Vue.js Development: Harnessing the Potential of Vue-Loader

Simplify Data Validation in Vue.js: A Step-by-Step Guide to Using Regex

Simplify Data Validation in Vue.js: A Step-by-Step Guide to Using Regex

Troubleshooting Made Easy: Common Issues and Solutions with vue-loader Without vue-cli

Troubleshooting Made Easy: Common Issues and Solutions with vue-loader Without vue-cli

Optimizing Webpack 4 with Vue CLI 3: Disabling the Cache-Loader

Optimizing Webpack 4 with Vue CLI 3: Disabling the Cache-Loader

Step-by-Step Guide: How to Add a Function to Your Vuex Plugin

Step-by-Step Guide: How to Add a Function to Your Vuex Plugin