littlebot
Published on 2025-04-17 / 0 Visits
0

【源码】基于C语言的Unicode字符数据访问库

项目简介

本项目名为libuninameslist,是基于C语言开发的Unicode字符数据访问库。它包含了从www.unicode.org获取的NamesList.txtListeDesNoms.txt文件中的Unicode字符名称、注释及块定义数据,方便需要这些信息的程序进行访问。同时,该库还提供了Python包装器,支持Python程序使用。

项目的主要特性和功能

  1. 数据访问:提供函数访问Unicode字符的名称、注释、块信息等。
  2. 多版本兼容:保留旧版本静态数据数组访问方式,新增功能函数。
  3. 多语言支持:可构建法语库libuninameslist-fr,显示不同语言信息。
  4. Python包装:提供uninameslist.py包装器,便于Python用户访问数据。

安装使用步骤

前提条件

假设用户已经下载了本项目的源码文件。

安装库

通用安装

bash $ autoreconf -i $ automake $ ./configure $ make $ sudo make install 某些系统可能需要在安装后运行ldconfigbash $ su - $

安装法语库

bash $ ./configure --enable-frenchlib $ make clean $ make $ sudo make install

安装Python包装器

bash $ ./configure (可按需使用 --prefix=/usr,使用 --help 查看选项) $ make clean $ make $ su $ 若要构建可安装的轮子包: bash $ PYTHON=python2 ./configure --enable-pylib (可按需使用 --prefix=/usr) $ make $ su $

使用库

C语言

在C语言程序中,包含头文件#include <uninameslist.h>,即可使用库中的函数。

Python

在Python中使用uninameslist.py包装器,它暴露了以下库函数和符号: python * **version**: 记录 **libuninameslist** 的版本 * **name(_char_)**: 返回Unicode字符名称 * **name2(_char_)**: 返回Unicode规范别名(若定义用于更正字符名称),否则返回名称 * **charactersWithName2**: 包含所有具有规范别名的字符的字符串 * **annotation(_char_)**: 返回所有Unicode注释,包括别名和交叉引用 * **block(_char_)**: 返回字符所在的Unicode块,或按块名称查询 * **blocks()**: 用于迭代所有定义的Unicode块的生成器 * **valid(_char_)**: 返回字符是否有效(在Unicode中定义) * **uplus(_char_)**: 返回字符的Unicode代码点,格式为U+XXXX(BMP)或U+XXXXXX(超出BMP)

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】