cjke-strings
v1.0.31
Published
a set of Chinese Japanese Korean and Emoji strings helpers
Downloads
10
Maintainers
Readme
string-width is active maintenance again! Use that package instead.
This package will mark as deprecated soon.
CJKE strings module
Tools for Chinese Japanese Korean Emoji string
The code is come from:
- Write by myself
- Codebase is copied from sindresorhus/string-width
- Learn about emojis from tonytonyjan/string-width
- Unicode tables copied from many wiki pages
Mostly you also need a module called stringz
describe('typescript', () => {
it('is really great', () => {
should(cleverMan).to.be('using it');
});
});
APIs
- isCombiningCharacters - detect a character is in Combining Characters table
- readFirstCompleteChar - get first complete character at beginning of given string, prevent or ?
- unicodeEscape - escape string as "\uxxxx\uxxxx\uxxxx" form
- limitWidth - cut a limited display width of a string
- stringWidth - calculate display width of a string
readFirstCompleteChar(str: string, windowsConsole = false): CodePointInfo
| var | desc | | -------------- | ---------------------------------- | | str | any string | | windowsConsole | is used for windows console or not |
CodePointInfo
| var | type | desc | | ------- | ------- | -------------------------- | | data | string | first complete char | | width | number | display width of that char | | length | number | string length of that char | | visible | boolean | should the char visible? |
function limitWidth(str: string, limit: number, windowsConsole = false): LimitResult
| var | desc | | -------------- | ---------------------------------- | | str | any string | | limit | target display width to cut | | windowsConsole | is used for windows console or not |
LimitResult
| var | type | desc | | ------ | ------ | ---------------------------- | | result | string | cut result | | width | number | real display width of result |
function stringWidth(str: string, windowsConsole = false): number
| var | desc | | -------------- | ---------------------------------- | | str | any string | | windowsConsole | is used for windows console or not | | {return} | the display width of str |
function isCombiningCharacters(code: number): boolean
| var | desc |
| -------- | --------------------------------------- |
| code | return value of 'string'.charCodeAt()
|
| {return} | is in combine char list |
function unicodeEscape(str: string): string
| var | desc | | -------- | -------------- | | str | any string | | {return} | escaped string |
Windows console
Windows Console (the black window) is not fully support unicode, so there is some workaround. Default is false
.
| char | default | when true | | :--: | ------: | --------: | | À | 1 | 2 | | 😂̀ | 2 | 3 | | À̀̀̀̀̀̀̀̀̀̀̀̀̀̀̀̀̀̀̀̀̀̀̀ | 1 | 25 | | 啊 | 2 | 2 | | 👍🏽 | 2 | 4(👍+🏽) |