Skip to main content

Tangled up in Unicode

This module provides access to character properties for all Unicode characters, from the Unicode Character Database (UCD) . This module provides an alternative to Python's standard library unicodedata. Tangled up in Unicode provides four main benefits compared to the standard library:

  • The latest version of the Unicode database is used.
  • Adds human-readable class names (Property value aliases).
  • Extends the properties to use more potential of the database.
  • UCD version independent of Python version (Python 3.6 has UCD 9.0, 3.7 has UCD 11.0.0, 3.8 has 12.0.1, 3.9 has 13.0.0)

Note that Python 3 added unicode support, but that this is different from the UCD. Unicode support handles storing and manipulating unicode characters, while this package aims to provide properties of specific characters.

Example

The default lookup in unicodedata for $:

Property Value
Name Dollar Sign
Category (Short) Sc
Bidirectional (Short) ET
Combining 0
Mirrored 0
East Asian Width (Short) Na
Decomposition

Extra information provided by this package

Property Value
Category Alias (Long) Currency_Symbol
Bidirectional Alias (Long) European_Terminator
East Asian Width Alias (Long) Narrow
Script (Long) Common
Script (Short) Zyyy
Block (Long) Basic_Latin
Block (Short) ASCII
PropList Pattern_Syntax
Uppercase Character
Lowercase Character
Titlecase Character

Properties comparison

Property tangled-up-in-unicode unicodedata
Name ☑ ☑
Decimal ☑ ☑
Digit ☑ ☑
Numeric ☑ ☑
Combining ☑ + alias ☑
Mirrored ☑ ☑
Decomposition ☑ ☑
Category ☑ + alias ☑
Bidirectional ☑ + alias ☑
East Asian Width ☑ + alias ☑
Script ☑ + alias -
Block ☑ + alias -
Age ☑ + alias -
Binary Property Values ☑ -
Version 13.0.0 (latest) 12.0.1

Table 1: presence of properties is denoted by ☑ (Unicode Character 'BALLOT BOX WITH CHECK' (U+2611)).

Usage

import tangled_up_in_unicode as unicodedata

The package can be installed via pip:

pip install tangled-up-in-unicode

Performance

The module is written in Python. It can be compiled with Cython to gain competitive performance with the native library.

Unsupported features

Some of the features in unicodedata are not supported.

Feature tangled-up-in-unicode unicodedata
lookup - ☑
normalize - ☑
ucd_3_2_0 - ☑

Acknowledgements

Where possible, code and documentation of the original module are used. This repository is part of the Dylan Profiling project.

Metadata

Release files for tangled-up-in-unicode 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for tangled-up-in-unicode 0.1.0
File Size Uploaded
tangled_up_in_unicode-0.1.0.tar.gz 3.1 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for tangled-up-in-unicode 0.1.0
File Interpreter ABI Platform
tangled_up_in_unicode-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 6.2 MB

Release files / tangled_up_in_unicode-0.1.0.tar.gz

Download URL tangled_up_in_unicode-0.1.0.tar.gz
Size 3.1 MB
Tags Source
SHA-256 checksum
How to use checksums
d07ffa62a4d9e9e0a92582f869ac3a2859456f5c9241580c7a5d9fcf2e6e6315
BLAKE2b-256 checksum
How to use checksums
13918210dd5e1f8f18891b463ed1e731f163e35981d474978191af8e2c1dbb6a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.5

Release files / tangled_up_in_unicode-0.1.0-py3-none-any.whl

Download URL tangled_up_in_unicode-0.1.0-py3-none-any.whl
Size 3.1 MB
Tags Python 3
SHA-256 checksum
How to use checksums
a06dea9cf93dcda6a720c46bb86a41e84372e3123c7fd6bef9e66add1dd41019
BLAKE2b-256 checksum
How to use checksums
933ecb354fb2097fcf2fd5b5a342b10ae2a6e9363ba435b64e3e00c414064bc7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.5

Release history Release notifications | RSS feed

0.2.0

2 release files

This release

0.1.0 This release

2 release files

0.0.7

2 release files

0.0.6

2 release files

0.0.5

2 release files

0.0.4

1 release file

0.0.3

1 release file

0.0.2

1 release file

0.0.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page