0.6.1 • Published 8 days ago

sugar-high v0.6.1

Weekly downloads
-
License
MIT
Repository
-
Last release
8 days ago

Sugar High

Build Coverage

Introduction

Super lightweight JSX syntax highlighter, around 1KB after minified and gzipped

img

Usage

npm install --save sugar-high
import { highlight } from 'sugar-high'

const codeHTML = highlight(code)

document.querySelector('pre > code').innerHTML = codeHTML

Highlight with CSS

Then make your own theme with customized colors by token type and put in global CSS. The corresponding class names star with sh__ prefix.

/**
 * Types that sugar-high have:
 *
 * identifier
 * keyword
 * string
 * Class, number and null
 * property
 * entity
 * jsx literals
 * sign
 * comment
 * break
 * space
 */
:root {
  --sh-class: #2d5e9d;
  --sh-identifier: #354150;
  --sh-sign: #8996a3;
  --sh-property: #0550ae;
  --sh-entity: #249a97;
  --sh-jsxliterals: #6266d1;
  --sh-string: #00a99a;
  --sh-keyword: #f47067;
  --sh-comment: #a19595;
}

Features

Line number

Sugar high provide .sh_line class name for each line. To display line number, define the .sh_line::before element with CSS will enable line numbers automatically.

pre code {
  counter-reset: sh-line-number;
}

.sh__line::before {
  counter-increment: sh-line-number 1;
  content: counter(sh-line-number);
  margin-right: 24px;
  text-align: right;
  color: #a4a4a4;
}

Line Highlight

Use .sh__line:nth-child(<line number>) to highlight specific line.

.sh__line:nth-child(5) {
  background: #f5f5f5;
}

CSS Class Names

You can use .sh__token--<token type> to customize the output node of each token.

.sh__token--keyword {
  background: #f47067;
}

LICENSE

MIT

0.6.1

8 days ago

0.6.0

3 months ago

0.5.4

6 months ago

0.5.3

6 months ago

0.5.6

5 months ago

0.5.5

6 months ago

0.4.7

8 months ago

0.5.0

8 months ago

0.5.2

8 months ago

0.5.1

8 months ago

0.4.5

2 years ago

0.4.4

2 years ago

0.4.6

2 years ago

0.4.3

2 years ago

0.4.1

2 years ago

0.4.2

2 years ago

0.3.0

2 years ago

0.2.1

2 years ago

0.2.0

2 years ago

0.4.0

2 years ago

0.3.1

2 years ago

0.2.2

2 years ago

0.1.2

2 years ago

0.1.1

2 years ago

0.1.0

2 years ago

0.0.9

2 years ago

0.0.8

2 years ago

0.0.7

2 years ago

0.0.6

2 years ago

0.0.5

2 years ago

0.0.4

2 years ago

0.0.3

2 years ago

0.0.2

2 years ago

0.0.1

2 years ago