You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
# figures
> Unicode symbols with fallbacks for older terminals
[](index.js)
[*and more...*](index.js)
Terminals such as Windows Console Host (and CMD) only support a [limited character set](http://en.wikipedia.org/wiki/Code_page_437).
## Install
```shnpm install figures```
## Usage
```jsimport figures, {mainSymbols, fallbackSymbols, replaceSymbols} from 'figures';
console.log(figures.tick);// On terminals with Unicode symbols: ✔// On other terminals: √
console.log(mainSymbols.tick);// On all terminals: ✔
console.log(fallbackSymbols.tick);// On all terminals: √
console.log(replaceSymbols('✔ check'));// On terminals with Unicode symbols: ✔ check// On other terminals: √ check```
## API
### figures (default export)
Type: `object`
Symbols to use on any terminal.
### mainSymbols
Symbols to use when the terminal supports Unicode symbols.
### fallbackSymbols
Symbols to use when the terminal does not support Unicode symbols.
### replaceSymbols(string, options?)
Returns the input with replaced fallback symbols if the terminal has poor Unicode support.
All the below [figures](#figures) are attached to the default export as shown in the example above.
#### string
Type: `string`
String where the Unicode symbols will be replaced with fallback symbols depending on the terminal.
#### options
Type: `object`
##### useFallback
Type: `boolean`\Default: `true` if the terminal has poor Unicode support
Whether to replace symbols with fallbacks.
This can be set to `true` to always use fallback symbols, whether the terminal has poor Unicode support or not.
```jsimport {replaceSymbols} from 'figures';
console.log(replaceSymbols('✔ check', {useFallback: true}));// On terminals with Unicode symbols: √ check// On other terminals: √ check```
## Figures
`Fallback` characters are only shown when they differ from the `Main` ones.
| Name | Main | Fallback || ------------------------------------------- | :--: | :------: || tick | `✔` | `√` || info | `ℹ` | `i` || warning | `⚠` | `‼` || cross | `✘` | `×` || square | `█` | || squareSmall | `◻` | `□` || squareSmallFilled | `◼` | `■` || squareDarkShade | `▓` | || squareMediumShade | `▒` | || squareLightShade | `░` | || squareTop | `▀` | || squareBottom | `▄` | || squareLeft | `▌` | || squareRight | `▐` | || squareCenter | `■` | || circle | `◯` | `( )` || circleFilled | `◉` | `(*)` || circleDotted | `◌` | `( )` || circleDouble | `◎` | `( )` || circleCircle | `ⓞ` | `(○)` || circleCross | `ⓧ` | `(×)` || circlePipe | `Ⓘ` | `(│)` || circleQuestionMark | `?⃝ ` | `(?)` || radioOn | `◉` | `(*)` || radioOff | `◯` | `( )` || checkboxOn | `☒` | `[×]` || checkboxOff | `☐` | `[ ]` || checkboxCircleOn | `ⓧ` | `(×)` || checkboxCircleOff | `Ⓘ` | `( )` || questionMarkPrefix | `?⃝ ` | `?` || bullet | `●` | || dot | `․` | || ellipsis | `…` | || pointer | `❯` | `>` || pointerSmall | `›` | `›` || triangleUp | `▲` | || triangleUpSmall | `▴` | || triangleUpOutline | `△` | `∆` || triangleDown | `▼` | || triangleDownSmall | `▾` | || triangleLeft | `◀` | `◄` || triangleLeftSmall | `◂` | || triangleRight | `▶` | `►` || triangleRightSmall | `▸` | || lozenge | `◆` | `♦` || lozengeOutline | `◇` | `◊` || home | `⌂` | || hamburger | `☰` | `≡` || smiley | `㋡` | `☺` || mustache | `෴` | `┌─┐` || heart | `♥` | || star | `★` | `✶` || play | `▶` | `►` || musicNote | `♪` | || musicNoteBeamed | `♫` | || nodejs | `⬢` | `♦` || arrowUp | `↑` | || arrowDown | `↓` | || arrowLeft | `←` | || arrowRight | `→` | || arrowLeftRight | `↔` | || arrowUpDown | `↕` | || almostEqual | `≈` | || notEqual | `≠` | || lessOrEqual | `≤` | || greaterOrEqual | `≥` | || identical | `≡` | || infinity | `∞` | || subscriptZero | `₀` | || subscriptOne | `₁` | || subscriptTwo | `₂` | || subscriptThree | `₃` | || subscriptFour | `₄` | || subscriptFive | `₅` | || subscriptSix | `₆` | || subscriptSeven | `₇` | || subscriptEight | `₈` | || subscriptNine | `₉` | || oneHalf | `½` | || oneThird | `⅓` | || oneQuarter | `¼` | || oneFifth | `⅕` | || oneSixth | `⅙` | || oneSeventh | `⅐` | `1/7` || oneEighth | `⅛` | || oneNinth | `⅑` | `1/9` || oneTenth | `⅒` | `1/10` || twoThirds | `⅔` | || twoFifths | `⅖` | || threeQuarters | `¾` | || threeFifths | `⅗` | || threeEighths | `⅜` | || fourFifths | `⅘` | || fiveSixths | `⅚` | || fiveEighths | `⅝` | || sevenEighths | `⅞` | || line | `─` | || lineBold | `━` | || lineDouble | `═` | || lineDashed0 | `┄` | || lineDashed1 | `┅` | || lineDashed2 | `┈` | || lineDashed3 | `┉` | || lineDashed4 | `╌` | || lineDashed5 | `╍` | || lineDashed6 | `╴` | || lineDashed7 | `╶` | || lineDashed8 | `╸` | || lineDashed9 | `╺` | || lineDashed10 | `╼` | || lineDashed11 | `╾` | || lineDashed12 | `−` | || lineDashed13 | `–` | || lineDashed14 | `‐` | || lineDashed15 | `⁃` | || lineVertical | `│` | || lineVerticalBold | `┃` | || lineVerticalDouble | `║` | || lineVerticalDashed0 | `┆` | || lineVerticalDashed1 | `┇` | || lineVerticalDashed2 | `┊` | || lineVerticalDashed3 | `┋` | || lineVerticalDashed4 | `╎` | || lineVerticalDashed5 | `╏` | || lineVerticalDashed6 | `╵` | || lineVerticalDashed7 | `╷` | || lineVerticalDashed8 | `╹` | || lineVerticalDashed9 | `╻` | || lineVerticalDashed10 | `╽` | || lineVerticalDashed11 | `╿` | || lineDownLeft | `┐` | || lineDownLeftArc | `╮` | || lineDownBoldLeftBold | `┓` | || lineDownBoldLeft | `┒` | || lineDownLeftBold | `┑` | || lineDownDoubleLeftDouble | `╗` | || lineDownDoubleLeft | `╖` | || lineDownLeftDouble | `╕` | || lineDownRight | `┌` | || lineDownRightArc | `╭` | || lineDownBoldRightBold | `┏` | || lineDownBoldRight | `┎` | || lineDownRightBold | `┍` | || lineDownDoubleRightDouble | `╔` | || lineDownDoubleRight | `╓` | || lineDownRightDouble | `╒` | || lineUpLeft | `┘` | || lineUpLeftArc | `╯` | || lineUpBoldLeftBold | `┛` | || lineUpBoldLeft | `┚` | || lineUpLeftBold | `┙` | || lineUpDoubleLeftDouble | `╝` | || lineUpDoubleLeft | `╜` | || lineUpLeftDouble | `╛` | || lineUpRight | `└` | || lineUpRightArc | `╰` | || lineUpBoldRightBold | `┗` | || lineUpBoldRight | `┖` | || lineUpRightBold | `┕` | || lineUpDoubleRightDouble | `╚` | || lineUpDoubleRight | `╙` | || lineUpRightDouble | `╘` | || lineUpDownLeft | `┤` | || lineUpBoldDownBoldLeftBold | `┫` | || lineUpBoldDownBoldLeft | `┨` | || lineUpDownLeftBold | `┥` | || lineUpBoldDownLeftBold | `┩` | || lineUpDownBoldLeftBold | `┪` | || lineUpDownBoldLeft | `┧` | || lineUpBoldDownLeft | `┦` | || lineUpDoubleDownDoubleLeftDouble | `╣` | || lineUpDoubleDownDoubleLeft | `╢` | || lineUpDownLeftDouble | `╡` | || lineUpDownRight | `├` | || lineUpBoldDownBoldRightBold | `┣` | || lineUpBoldDownBoldRight | `┠` | || lineUpDownRightBold | `┝` | || lineUpBoldDownRightBold | `┡` | || lineUpDownBoldRightBold | `┢` | || lineUpDownBoldRight | `┟` | || lineUpBoldDownRight | `┞` | || lineUpDoubleDownDoubleRightDouble | `╠` | || lineUpDoubleDownDoubleRight | `╟` | || lineUpDownRightDouble | `╞` | || lineDownLeftRight | `┬` | || lineDownBoldLeftBoldRightBold | `┳` | || lineDownLeftBoldRightBold | `┯` | || lineDownBoldLeftRight | `┰` | || lineDownBoldLeftBoldRight | `┱` | || lineDownBoldLeftRightBold | `┲` | || lineDownLeftRightBold | `┮` | || lineDownLeftBoldRight | `┭` | || lineDownDoubleLeftDoubleRightDouble | `╦` | || lineDownDoubleLeftRight | `╥` | || lineDownLeftDoubleRightDouble | `╤` | || lineUpLeftRight | `┴` | || lineUpBoldLeftBoldRightBold | `┻` | || lineUpLeftBoldRightBold | `┷` | || lineUpBoldLeftRight | `┸` | || lineUpBoldLeftBoldRight | `┹` | || lineUpBoldLeftRightBold | `┺` | || lineUpLeftRightBold | `┶` | || lineUpLeftBoldRight | `┵` | || lineUpDoubleLeftDoubleRightDouble | `╩` | || lineUpDoubleLeftRight | `╨` | || lineUpLeftDoubleRightDouble | `╧` | || lineUpDownLeftRight | `┼` | || lineUpBoldDownBoldLeftBoldRightBold | `╋` | || lineUpDownBoldLeftBoldRightBold | `╈` | || lineUpBoldDownLeftBoldRightBold | `╇` | || lineUpBoldDownBoldLeftRightBold | `╊` | || lineUpBoldDownBoldLeftBoldRight | `╉` | || lineUpBoldDownLeftRight | `╀` | || lineUpDownBoldLeftRight | `╁` | || lineUpDownLeftBoldRight | `┽` | || lineUpDownLeftRightBold | `┾` | || lineUpBoldDownBoldLeftRight | `╂` | || lineUpDownLeftBoldRightBold | `┿` | || lineUpBoldDownLeftBoldRight | `╃` | || lineUpBoldDownLeftRightBold | `╄` | || lineUpDownBoldLeftBoldRight | `╅` | || lineUpDownBoldLeftRightBold | `╆` | || lineUpDoubleDownDoubleLeftDoubleRightDouble | `╬` | || lineUpDoubleDownDoubleLeftRight | `╫` | || lineUpDownLeftDoubleRightDouble | `╪` | || lineCross | `╳` | || lineBackslash | `╲` | || lineSlash | `╱` | |
## Other characters
If you cannot find the character you're looking for in the table above, please look at this full list of [cross-platform terminal characters](https://github.com/ehmicky/cross-platform-terminal-characters).
## Unsupported terminals
The following terminals are not officially supported:
- xterm- Linux Terminal (kernel)- cmder
They can display most but not all of the symbols listed above.
## Related
- [log-symbols](https://github.com/sindresorhus/log-symbols) - Colored symbols for various log levels
|