mirror of
https://github.com/atom/atom.git
synced 2026-04-06 03:02:13 -04:00
Expose a isCjkCharacter text utility
This commit is contained in:
@@ -74,3 +74,23 @@ describe 'text utilities', ->
|
||||
expect(textUtils.isKoreanCharacter("ㄼ")).toBe(true)
|
||||
|
||||
expect(textUtils.isKoreanCharacter("O")).toBe(false)
|
||||
|
||||
describe ".isCjkCharacter(character)", ->
|
||||
it "returns true when the character is either a korean, half-width or double-width character", ->
|
||||
expect(textUtils.isCjkCharacter("我")).toBe(true)
|
||||
expect(textUtils.isCjkCharacter("私")).toBe(true)
|
||||
expect(textUtils.isCjkCharacter("B")).toBe(true)
|
||||
expect(textUtils.isCjkCharacter(",")).toBe(true)
|
||||
expect(textUtils.isCjkCharacter("¢")).toBe(true)
|
||||
expect(textUtils.isCjkCharacter("ハ")).toBe(true)
|
||||
expect(textUtils.isCjkCharacter("ヒ")).toBe(true)
|
||||
expect(textUtils.isCjkCharacter("ᆲ")).toBe(true)
|
||||
expect(textUtils.isCjkCharacter("■")).toBe(true)
|
||||
expect(textUtils.isCjkCharacter("우")).toBe(true)
|
||||
expect(textUtils.isCjkCharacter("가")).toBe(true)
|
||||
expect(textUtils.isCjkCharacter("ㅢ")).toBe(true)
|
||||
expect(textUtils.isCjkCharacter("ㄼ")).toBe(true)
|
||||
|
||||
expect(textUtils.isDoubleWidthCharacter("a")).toBe(false)
|
||||
expect(textUtils.isDoubleWidthCharacter("O")).toBe(false)
|
||||
expect(textUtils.isDoubleWidthCharacter("z")).toBe(false)
|
||||
|
||||
@@ -89,6 +89,11 @@ isKoreanCharacter = (character) ->
|
||||
0xA960 <= charCode <= 0xA97F or
|
||||
0xD7B0 <= charCode <= 0xD7FF
|
||||
|
||||
isCjkCharacter = (character) ->
|
||||
isDoubleWidthCharacter(character) or
|
||||
isHalfWidthCharacter(character) or
|
||||
isKoreanCharacter(character)
|
||||
|
||||
# Does the given string contain at least surrogate pair, variation sequence,
|
||||
# or combined character?
|
||||
#
|
||||
@@ -102,4 +107,4 @@ hasPairedCharacter = (string) ->
|
||||
index++
|
||||
false
|
||||
|
||||
module.exports = {isPairedCharacter, hasPairedCharacter, isDoubleWidthCharacter, isHalfWidthCharacter, isKoreanCharacter}
|
||||
module.exports = {isPairedCharacter, hasPairedCharacter, isDoubleWidthCharacter, isHalfWidthCharacter, isKoreanCharacter, isCjkCharacter}
|
||||
|
||||
Reference in New Issue
Block a user