⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ucdata.man

📁 ldap服务器源码
💻 MAN
字号:
.\".\" $Id: ucdata.man,v 1.5 2001/01/02 18:46:20 mleisher Exp $.\".TH ucdata 3 "03 January 2001".SH NAME ucdata \- package for providing Unicode/ISO10646 character information.SH SYNOPSIS#include <ucdata.h>.spvoid ucdata_load(char * paths, int masks).spvoid ucdata_unload(int masks).spvoid ucdata_reload(char * paths, int masks).spint ucdecomp(unsigned long code, unsigned long *num, unsigned long **decomp).spint uccanondecomp(const unsigned long *in, int inlen, unsigned long **out,int *outlen).spint ucdecomp_hangul(unsigned long code, unsigned long *num,unsigned long decomp[]).spint uccomp(unsigned long ch1, unsigned long ch2, unsigned long *comp).spint uccomp_hangul(unsigned long *str, int len).spint uccanoncomp(unsiged long *str, int len).nfstruct ucnumber {  int numerator;  int denominator;};.spint ucnumber_lookup(unsigned long code, struct ucnumber *num).spint ucdigit_lookup(unsigned long code, int *digit).spstruct ucnumber ucgetnumber(unsigned long code).spint ucgetdigit(unsigned long code).spunsigned long uctoupper(unsigned long code).spunsigned long uctolower(unsigned long code).spunsigned long uctotitle(unsigned long code).spint ucisalpha(unsigned long code).spint ucisalnum(unsigned long code).spint ucisdigit(unsigned long code).spint uciscntrl(unsigned long code).spint ucisspace(unsigned long code).spint ucisblank(unsigned long code).spint ucispunct(unsigned long code).spint ucisgraph(unsigned long code).spint ucisprint(unsigned long code).spint ucisxdigit(unsigned long code).spint ucisupper(unsigned long code).spint ucislower(unsigned long code).spint ucistitle(unsigned long code).spint ucisisocntrl(unsigned long code).spint ucisfmtcntrl(unsigned long code).spint ucissymbol(unsigned long code).spint ucisnumber(unsigned long code).spint ucisnonspacing(unsigned long code).spint ucisopenpunct(unsigned long code).spint ucisclosepunct(unsigned long code).spint ucisinitialpunct(unsigned long code).spint ucisfinalpunct(unsigned long code).spint uciscomposite(unsigned long code).spint ucisquote(unsigned long code).spint ucissymmetric(unsigned long code).spint ucismirroring(unsigned long code).spint ucisnonbreaking(unsigned long code).spint ucisrtl(unsigned long code).spint ucisltr(unsigned long code).spint ucisstrong(unsigned long code).spint ucisweak(unsigned long code).spint ucisneutral(unsigned long code).spint ucisseparator(unsigned long code).spint ucislsep(unsigned long code).spint ucispsep(unsigned long code).spint ucismark(unsigned long code).spint ucisnsmark(unsigned long code).spint ucisspmark(unsigned long code).spint ucismodif(unsigned long code).spint ucismodifsymbol(unsigned long code).spint ucisletnum(unsigned long code).spint ucisconnect(unsigned long code).spint ucisdash(unsigned long code).spint ucismath(unsigned long code).spint uciscurrency(unsigned long code).spint ucisenclosing(unsigned long code).spint ucisprivate(unsigned long code).spint ucissurrogate(unsigned long code).spint ucisidentstart(unsigned long code).spint ucisidentpart(unsigned long code).spint ucisdefined(unsigned long code).spint ucisundefined(unsigned long code).spint ucishan(unsigned long code).spint ucishangul(unsigned long code).SH DESCRIPTION.TP 4.BR Macros.brUCDATA_CASE.brUCDATA_CTYPE.brUCDATA_DECOMP.brUCDATA_CMBCL.brUCDATA_NUM.brUCDATA_ALL.br.TP 4.BR ucdata_load()This function initializes the UCData library by locating the data files in oneof the colon-separated directories in the `paths' parameter.  The data filesto be loaded are specified in the `masks' parameter as a bitwise combinationof the macros listed above..spThis should be called before using any of the other functions..TP 4.BR ucdata_unload()This function unloads the data tables specified in the `masks' parameter..spThis function should be called when the application is done using the UCDatapackage..TP 4.BR ucdata_reload()This function reloads the data files from one of the colon-separateddirectories in the `paths' parameter.  The data files to be reloaded arespecified in the `masks' parameter as a bitwise combination of the macroslisted above..TP 4.BR ucdecomp()This function determines if a character has a decomposition and returns thedecomposition information if it exists..spIf a zero is returned, there is no decomposition.  If a non-zero isreturned, then the `num' and `decomp' variables are filled in with theappropriate values..spExample call:.sp.nf    unsigned long i, num, *decomp;    if (ucdecomp(0x1d5, &num, &decomp) != 0) {       for (i = 0; i < num; i++)         printf("0x%08lX,", decomp[i]);       putchar('\n');    }.TP 4.BR uccanondecomp()This function will decompose a string, insuring the characters are incanonical order for comparison..spIf a decomposed string is returned, the caller is responsible for deallocatingthe string..spIf a -1 is returned, memory allocation failed.  If a zero is returned, nodecomposition was done.  Any other value means a decomposition string wascreated and the values returned in the `out' and `outlen' parameters..TP 4.BR ucdecomp_hangul()This function determines if a Hangul syllable has adecomposition and returns the decomposition information..spAn array of at least size 3 should be passed to the functionfor the decomposition of the syllable..spIf a zero is returned, the character is not a Hangulsyllable. If a non-zero is returned, the `num' fieldwill be 2 or 3 and the syllable will be decomposed intothe `decomp' array arithmetically..spExample call:.sp.nf    unsigned long i, num, decomp[3];    if (ucdecomp_hangul(0xb1ba, &num, &decomp) != 0) {       for (i = 0; i < num; i++)         printf("0x%08lX,", decomp[i]);       putchar('\n');    }.TP 4.BR uccomp()This function determines if a pair of characters have a composition, andreturns that composition if one exists..spA zero is returned is no composition exists for the character pair.  Any othervalue indicates the `comp' field holds the character code representing thecomposition of the two character codes..TP 4.BR uccomp_hangul()This composes the Hangul Jamo in-place in the string..spThe returned value is the new length of the string..TP 4.BR uccanoncomp()This function does a full composition in-place in the string, including theHangul composition..spThe returned value is the new length of the string..TP 4.BR ucnumber_lookup()This function determines if the code is a number andfills in the `num' field with the numerator anddenominator.  If the code happens to be a single digit,the numerator and denominator fields will be the same..spIf the function returns 0, the code is not a number.Any other return value means the code is a number..TP 4.BR ucdigit_lookup()This function determines if the code is a digit andfills in the `digit' field with the digit value..spIf the function returns 0, the code is not a number.Any other return value means the code is a number..TP 4.BR ucgetnumber()This is a compatibility function with John Cowan's"uctype" package.  It uses ucnumber_lookup()..TP 4.BR ucgetdigit()This is a compatibility function with John Cowan's"uctype" package.  It uses ucdigit_lookup()..TP 4.BR uctoupper()This function returns the code unchanged if it isalready upper case or has no upper case equivalent.Otherwise the upper case equivalent is returned..TP 4.BR uctolower()This function returns the code unchanged if it isalready lower case or has no lower case equivalent.Otherwise the lower case equivalent is returned..TP 4.BR uctotitle()This function returns the code unchanged if it isalready title case or has no title case equivalent.Otherwise the title case equivalent is returned..TP 4.BR ucisalpha()Test if \fIcode\fR is an alpha character..TP 4.BR ucisalnum()Test if \fIcode\fR is an alpha or digit character..TP 4.BR ucisdigit()Test if \fIcode\fR is a digit character..TP 4.BR uciscntrl()Test if \fIcode\fR is a control character..TP 4.BR ucisspace()Test if \fIcode\fR is a space character..TP 4.BR ucisblank()Test if \fIcode\fR is a blank character..TP 4.BR ucispunct()Test if \fIcode\fR is a punctuation character..TP 4.BR ucisgraph()Test if \fIcode\fR is a graphical (visible) character..TP 4.BR ucisprint()Test if \fIcode\fR is a printable character..TP 4.BR ucisxdigit()Test if \fIcode\fR is a hexadecimal digit character..TP 4.BR ucisupper()Test if \fIcode\fR is an upper case character..TP 4.BR ucislower()Test if \fIcode\fR is a lower case character..TP 4.BR ucistitle()Test if \fIcode\fR is a title case character..TP 4.BR ucisisocntrl()Is the character a C0 control character (< 32)?.TP 4.BR ucisfmtcntrl()Is the character a format control character?.TP 4.BR ucissymbol()Is the character a symbol?.TP 4.BR ucisnumber()Is the character a number or digit?.TP 4.BR ucisnonspacing()Is the character non-spacing?.TP 4.BR ucisopenpunct()Is the character an open/left punctuation (i.e. '[').TP 4.BR ucisclosepunct()Is the character an close/right punctuation (i.e. ']').TP 4.BR ucisinitialpunct()Is the character an initial punctuation (i.e. U+2018 LEFTSINGLE QUOTATION MARK).TP 4.BR ucisfinalpunct()Is the character a final punctuation (i.e. U+2019 RIGHTSINGLE QUOTATION MARK).TP 4.BR uciscomposite()Can the character be decomposed into a set of othercharacters?.TP 4.BR ucisquote()Is the character one of the many quotation marks?.TP 4.BR ucissymmetric()Is the character one that has an opposite form(i.e. <>).TP 4.BR ucismirroring()Is the character mirroring (superset of symmetric)?.TP 4.BR ucisnonbreaking()Is the character non-breaking (i.e. non-breakingspace)?.TP 4.BR ucisrtl()Does the character have strong right-to-leftdirectionality (i.e. Arabic letters)?.TP 4.BR ucisltr()Does the character have strong left-to-rightdirectionality (i.e. Latin letters)?.TP 4.BR ucisstrong()Does the character have strong directionality?.TP 4.BR ucisweak()Does the character have weak directionality(i.e. numbers)?.TP 4.BR ucisneutral()Does the character have neutral directionality(i.e. whitespace)?.TP 4.BR ucisseparator()Is the character a block or segment separator?.TP 4.BR ucislsep()Is the character a line separator?.TP 4.BR ucispsep()Is the character a paragraph separator?.TP 4.BR ucismark()Is the character a mark of some kind?.TP 4.BR ucisnsmark()Is the character a non-spacing mark?.TP 4.BR ucisspmark()Is the character a spacing mark?.TP 4.BR ucismodif()Is the character a modifier letter?.TP 4.BR ucismodifsymbol()Is the character a modifier symbol?.TP 4.BR ucisletnum()Is the character a number represented by a letter?.TP 4.BR ucisconnect()Is the character connecting punctuation?.TP 4.BR ucisdash()Is the character dash punctuation?.TP 4.BR ucismath()Is the character a math character?.TP 4.BR uciscurrency()Is the character a currency character?.TP 4.BR ucisenclosing()Is the character enclosing (i.e. enclosing box)?.TP 4.BR ucisprivate()Is the character from the Private Use Area?.TP 4.BR ucissurrogate()Is the character one of the surrogate codes?.TP 4.BR ucisidentstart()Is the character a legal initial character of an identifier?.TP 4.BR ucisidentpart()Is the character a legal identifier character?.TP 4.BR ucisdefined()Is the character defined (appeared in one of the datafiles)?.TP 4.BR ucisundefined()Is the character not defined (non-Unicode)?.TP 4.BR ucishan()Is the character a Han ideograph?.TP 4.BR ucishangul()Is the character a pre-composed Hangul syllable?.SH "SEE ALSO"ctype(3).SH ACKNOWLEDGMENTSThese are people who have helped with patches oralerted me about problems..spJohn Cowan <cowan@locke.ccil.org>.brBob Verbrugge <bob_verbrugge@nl.compuware.com>.brChristophe Pierret <cpierret@businessobjects.com>.brKent Johnson <kent@pondview.mv.com>.brValeriy E. Ushakov <uwe@ptc.spbu.ru>.brStig Venaas <Stig.Venaas@uninett.no>.SH AUTHORMark Leisher.brComputing Research Lab.brNew Mexico State University.brEmail: mleisher@crl.nmsu.edu

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -