unicodedata

package
v0.0.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 5, 2021 License: MIT, LGPL-2.1 Imports: 1 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	BreakOP  = _OP  // Open Punctuation
	BreakCL  = _CL  // Close Punctuation
	BreakCP  = _CP  // Close Parenthesis
	BreakQU  = _QU  // Quotation
	BreakGL  = _GL  // Non-breaking ("Glue")
	BreakNS  = _NS  // Nonstarter
	BreakEX  = _EX  // Exclamation/Interrogation
	BreakSY  = _SY  // Symbols Allowing Break After
	BreakIS  = _IS  // Infix Numeric Separator
	BreakPR  = _PR  // Prefix Numeric
	BreakPO  = _PO  // Postfix Numeric
	BreakNU  = _NU  // Numeric
	BreakAL  = _AL  // Alphabetic
	BreakHL  = _HL  // Hebrew Letter
	BreakID  = _ID  // Ideographic
	BreakIN  = _IN  // Inseparable
	BreakHY  = _HY  // Hyphen
	BreakBA  = _BA  // Break After
	BreakBB  = _BB  // Break Before
	BreakB2  = _B2  // Break Opportunity Before and After
	BreakZW  = _ZW  // Zero Width Space
	BreakCM  = _CM  // Combining Mark
	BreakWJ  = _WJ  // Word Joiner
	BreakH2  = _H2  // Hangul LV Syllable
	BreakH3  = _H3  // Hangul LVT Syllable
	BreakJL  = _JL  // Hangul L Jamo
	BreakJV  = _JV  // Hangul V Jamo
	BreakJT  = _JT  // Hangul T Jamo
	BreakRI  = _RI  // Regional Indicator
	BreakBK  = _BK  // Mandatory Break
	BreakCR  = _CR  // Carriage Return
	BreakLF  = _LF  // Line Feed
	BreakNL  = _NL  // Next Line
	BreakSG  = _SG  // Surrogate
	BreakSP  = _SP  // Space
	BreakCB  = _CB  // Contingent Break Opportunity
	BreakAI  = _AI  // Ambiguous (Alphabetic or Ideographic)
	BreakCJ  = _CJ  // Conditional Japanese Starter
	BreakSA  = _SA  // Complex Context Dependent (South East Asian)
	BreakEB  = _EB  // Emoji Base
	BreakEM  = _EM  // Emoji Modifier
	BreakZWJ = _ZWJ // Zero width joiner
	BreakXX  = _XX  // Unknown
)
View Source
var Breaks = map[string]*unicode.RangeTable{
	"OP":  _OP,
	"CL":  _CL,
	"CP":  _CP,
	"QU":  _QU,
	"GL":  _GL,
	"NS":  _NS,
	"EX":  _EX,
	"SY":  _SY,
	"IS":  _IS,
	"PR":  _PR,
	"PO":  _PO,
	"NU":  _NU,
	"AL":  _AL,
	"HL":  _HL,
	"ID":  _ID,
	"IN":  _IN,
	"HY":  _HY,
	"BA":  _BA,
	"BB":  _BB,
	"B2":  _B2,
	"ZW":  _ZW,
	"CM":  _CM,
	"WJ":  _WJ,
	"H2":  _H2,
	"H3":  _H3,
	"JL":  _JL,
	"JV":  _JV,
	"JT":  _JT,
	"RI":  _RI,
	"BK":  _BK,
	"CR":  _CR,
	"LF":  _LF,
	"NL":  _NL,
	"SG":  _SG,
	"SP":  _SP,
	"CB":  _CB,
	"AI":  _AI,
	"CJ":  _CJ,
	"SA":  _SA,
	"EB":  _EB,
	"EM":  _EM,
	"ZWJ": _ZWJ,
	"XX":  _XX,
}
View Source
var HangulJamoProps = [6]charJamoProps{
	{Start: JAMO_L, End: JAMO_V},
	{Start: JAMO_L, End: JAMO_T},
	{Start: JAMO_L, End: JAMO_L},
	{Start: JAMO_V, End: JAMO_V},
	{Start: JAMO_T, End: JAMO_T},
	{Start: NO_JAMO, End: NO_JAMO},
}

Map from JamoType to CharJamoProps that hold only simple * JamoTypes (no LV or LVT) or none.

Functions

func BreakClass

func BreakClass(r rune) (string, *unicode.RangeTable)

func IsEmoji

func IsEmoji(r rune) bool

func IsEmojiBaseCharacter

func IsEmojiBaseCharacter(r rune) bool

func IsEmojiExtendedPictographic

func IsEmojiExtendedPictographic(r rune) bool

func IsEmojiModifier

func IsEmojiModifier(r rune) bool

func IsEmojiModifierBase

func IsEmojiModifierBase(r rune) bool

func IsEmojiPresentation

func IsEmojiPresentation(r rune) bool

func IsVirama

func IsVirama(r rune) bool

func IsVowelDependent

func IsVowelDependent(r rune) bool

Types

type JamoType

type JamoType int8

An enum that works as the states of the Hangul syllables system.

const (
	JAMO_LV  JamoType = iota /* break HANGUL_LV_SYLLABLE */
	JAMO_LVT                 /* break HANGUL_LVT_SYLLABLE */
	JAMO_L                   /* break HANGUL_L_JAMO */
	JAMO_V                   /* break HANGUL_V_JAMO */
	JAMO_T                   /* break HANGUL_T_JAMO */
	NO_JAMO                  /* Other */
)

func Jamo

func Jamo(btype *unicode.RangeTable) JamoType

Jamo returns the Jamo Type of `btype` or NO_JAMO

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL