Skip to main content

unicode-segmentation-rs

Python bindings for the Rust unicode-segmentation, unicode-linebreak, and unicode-width crates, providing Unicode text segmentation and width calculation according to Unicode standards.

Features

  • Grapheme Cluster Segmentation: Split text into user-perceived characters
  • Word Segmentation: Split text into words according to Unicode rules
  • Sentence Segmentation: Split text into sentences
  • Line-Break Segmentation: Find legal wrapping opportunities according to Unicode Standard Annex #14
  • Display Width Calculation: Get the display width of text (for terminal/monospace display)
  • Gettext PO Wrapping: Wrap text for gettext PO files with proper handling of escape sequences and CJK characters

Installation

From PyPI

uv pip install unicode-segmentation-rs

From source

# Install maturin
pip install maturin

# Build and install the package
maturin develop --release

Usage

import unicode_segmentation_rs

# Grapheme clusters (user-perceived characters)
text = "Hello 👨‍👩‍👧‍👦 World"
clusters = unicode_segmentation_rs.graphemes(text, is_extended=True)
print(clusters)  # ['H', 'e', 'l', 'l', 'o', ' ', '👨‍👩‍👧‍👦', ' ', 'W', 'o', 'r', 'l', 'd']

# Get grapheme clusters with their byte indices
indices = unicode_segmentation_rs.grapheme_indices(text, is_extended=True)
print(indices)  # [(0, 'H'), (1, 'e'), ...]

# Word boundaries (includes punctuation and whitespace)
text = "Hello, world!"
words = unicode_segmentation_rs.split_word_bounds(text)
print(words)  # ['Hello', ',', ' ', 'world', '!']

# Unicode words (excludes punctuation and whitespace)
words = unicode_segmentation_rs.unicode_words(text)
print(words)  # ['Hello', 'world']

# Word indices
indices = unicode_segmentation_rs.split_word_bound_indices(text)
print(indices)  # [(0, 'Hello'), (5, ','), ...]

# Sentence segmentation
text = "Hello world. How are you? I'm fine."
sentences = unicode_segmentation_rs.unicode_sentences(text)
print(sentences)  # ['Hello world. ', 'How are you? ', "I'm fine."]

# Line-break opportunities use UTF-8 byte offsets
text = "你好世界"
breaks = unicode_segmentation_rs.line_breaks(text)
print(breaks)  # [(3, False), (6, False), (9, False), (12, True)]
units = unicode_segmentation_rs.line_break_units(text)
print(units)  # ['你', '好', '世', '界']

# Display width calculation
text = "Hello 世界"
width = unicode_segmentation_rs.text_width(text)
print(width)  # 10 (Hello=5, space=1, 世=2, 界=2, but depends on terminal)

# Character width
print(unicode_segmentation_rs.text_width('A'))    # 1
print(unicode_segmentation_rs.text_width('世'))   # 2
print(unicode_segmentation_rs.text_width('\t'))   # 1

Examples

Grapheme Cluster Segmentation

import unicode_segmentation_rs

# Complex emojis and combining characters
text = "Hello 👨‍👩‍👧‍👦 नमस्ते"
print(f"Text: {text}")
print(f"Graphemes: {unicode_segmentation_rs.graphemes(text, is_extended=True)}")
print(f"Length (graphemes): {len(unicode_segmentation_rs.graphemes(text, is_extended=True))}")
print(f"Length (chars): {len(text)}")

# With indices
print("Grapheme indices:")
for idx, cluster in unicode_segmentation_rs.grapheme_indices(text, is_extended=True):
    print(f"  {idx:3d}: {cluster!r}")

Word Segmentation

text = "Hello, world! How are you?"
print(f"Text: {text}")
print(f"Word bounds: {unicode_segmentation_rs.split_word_bounds(text)}")
print(f"Unicode words: {unicode_segmentation_rs.unicode_words(text)}")

# With indices
print("Word boundary indices:")
for idx, word in unicode_segmentation_rs.split_word_bound_indices(text):
    print(f"  {idx:3d}: {word!r}")

Sentence Segmentation

text = "Hello world. How are you? I'm fine, thanks! What about you?"
print(f"Text: {text}")
sentences = unicode_segmentation_rs.unicode_sentences(text)
print("Sentences:")
for i, sentence in enumerate(sentences, 1):
    print(f"  {i}. {sentence!r}")

Line-Break Segmentation

# Find legal wrapping opportunities without measuring or reformatting text
text = "Hello 世界"
print(unicode_segmentation_rs.line_breaks(text))
print(unicode_segmentation_rs.line_break_units(text))  # ['Hello ', '世', '界']

# A soft hyphen is preserved in the unit before its discretionary break
text = "foo\u00adbar"
print(unicode_segmentation_rs.line_break_units(text))  # ['foo\u00ad', 'bar']

Line-break segmentation reports opportunities only. The caller remains responsible for measuring widths, trimming whitespace for display, and rendering a visible hyphen when selecting a soft-hyphen break.

The underlying unicode-linebreak crate treats complex-context (SA) characters as ordinary alphabetic characters rather than performing dictionary-based segmentation. Consequently, scripts such as Thai, Lao, and Khmer do not receive language-specific word break opportunities.

Multilingual Examples

# Arabic
arabic = "مرحبا بك. كيف حالك؟"
print(f"Arabic: {arabic}")
print(f"Sentences: {unicode_segmentation_rs.unicode_sentences(arabic)}")

# Japanese
japanese = "こんにちは。お元気ですか?"
print(f"Japanese: {japanese}")
print(f"Sentences: {unicode_segmentation_rs.unicode_sentences(japanese)}")

# Mixed languages
mixed = "Hello世界! This is a test文章."
print(f"Mixed: {mixed}")
print(f"Words: {unicode_segmentation_rs.unicode_words(mixed)}")

Display Width Calculation

examples = [
    "Hello",
    "世界",
    "Hello 世界",
    "こんにちは",
    "🎉🎊",
    "Tab\there",
]

for text in examples:
    width = unicode_segmentation_rs.text_width(text)
    print(f"Text: {text!r:20} Width: {width:2} Chars: {len(text):2}")

# Character widths
chars = ['a', 'A', '1', ' ', '世', '界', 'あ', '🎉', '\t', '\n']
for c in chars:
    w = unicode_segmentation_rs.text_width(c)
    print(f"  {c!r:6} width: {w:2}")

Gettext PO File Wrapping

# Wrap text for PO files (default width is 77 characters)
text = "This is a long translation string that needs to be wrapped appropriately for a gettext PO file"
lines = unicode_segmentation_rs.gettext_wrap(text, 77)
for i, line in enumerate(lines, 1):
    print(f"Line {i}: {line}")

# Wrapping with CJK characters
text = "This translation contains 中文字符 (Chinese characters) and should wrap correctly"
lines = unicode_segmentation_rs.gettext_wrap(text, 40)
for line in lines:
    width = unicode_segmentation_rs.text_width(line)
    print(f"[{width:2d} cols] {line}")

# Escape sequences are preserved
text = "This has\\nline breaks\\tand tabs"
lines = unicode_segmentation_rs.gettext_wrap(text, 20)
print(lines)

API Reference

graphemes(text: str, is_extended: bool) -> list[str]

Split a string into grapheme clusters. Set is_extended=True for extended grapheme clusters (recommended).

grapheme_indices(text: str, is_extended: bool) -> list[tuple[int, str]]

Split a string into grapheme clusters with their byte indices.

split_word_bounds(text: str) -> list[str]

Split a string at word boundaries (includes punctuation and whitespace).

split_word_bound_indices(text: str) -> list[tuple[int, str]]

Split a string at word boundaries with byte indices.

unicode_words(text: str) -> list[str]

Get Unicode words from a string (excludes punctuation and whitespace).

unicode_sentences(text: str) -> list[str]

Split a string into sentences according to Unicode rules.

line_breaks(text: str) -> list[tuple[int, bool]]

Return every allowed or mandatory Unicode line-break opportunity as (utf8_byte_offset, mandatory). The boolean is True only for mandatory breaks. Non-empty input includes the mandatory end-of-text opportunity.

line_break_units(text: str) -> list[str]

Split a string at every allowed or mandatory Unicode line-break opportunity. Every input code point is preserved exactly, and the mandatory end-of-text opportunity does not add an empty unit.

text_width(text: str) -> int

Get the display width of a string in columns (as it would appear in a terminal). East Asian characters typically take 2 columns.

gettext_wrap(text: str, width: int) -> list[str]

Wrap text for gettext PO files. This function follows gettext's wrapping behavior:

  • Never breaks escape sequences (\n, \", etc.)
  • Prefers breaking after spaces
  • Handles CJK characters with proper width calculation
  • Breaks long words only when necessary

Building for Distribution

# Build wheel
maturin build --release

# Build and publish to PyPI
maturin publish

Running Tests

# Install test dependencies
pip install pytest

# Run tests
pytest tests/

License

This project is licensed under the Apache License 2.0.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

unicode_segmentation_rs-0.3.2.tar.gz (33.3 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

unicode_segmentation_rs-0.3.2-cp315-abi3.abi3t-win_amd64.whl (167.9 kB view details)

Uploaded CPython 3.15CPython 3.15+Windows x86-64

unicode_segmentation_rs-0.3.2-cp315-abi3.abi3t-win32.whl (163.2 kB view details)

Uploaded CPython 3.15CPython 3.15+Windows x86

unicode_segmentation_rs-0.3.2-cp315-abi3.abi3t-musllinux_1_2_x86_64.whl (508.8 kB view details)

Uploaded CPython 3.15CPython 3.15+musllinux: musl 1.2+ x86-64

unicode_segmentation_rs-0.3.2-cp315-abi3.abi3t-musllinux_1_2_i686.whl (540.9 kB view details)

Uploaded CPython 3.15CPython 3.15+musllinux: musl 1.2+ i686

unicode_segmentation_rs-0.3.2-cp315-abi3.abi3t-musllinux_1_2_armv7l.whl (580.7 kB view details)

Uploaded CPython 3.15CPython 3.15+musllinux: musl 1.2+ ARMv7l

unicode_segmentation_rs-0.3.2-cp315-abi3.abi3t-musllinux_1_2_aarch64.whl (477.7 kB view details)

Uploaded CPython 3.15CPython 3.15+musllinux: musl 1.2+ ARM64

unicode_segmentation_rs-0.3.2-cp315-abi3.abi3t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (306.4 kB view details)

Uploaded CPython 3.15CPython 3.15+manylinux: glibc 2.17+ x86-64

unicode_segmentation_rs-0.3.2-cp315-abi3.abi3t-manylinux_2_17_s390x.manylinux2014_s390x.whl (319.3 kB view details)

Uploaded CPython 3.15CPython 3.15+manylinux: glibc 2.17+ s390x

unicode_segmentation_rs-0.3.2-cp315-abi3.abi3t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (423.9 kB view details)

Uploaded CPython 3.15CPython 3.15+manylinux: glibc 2.17+ ppc64le

unicode_segmentation_rs-0.3.2-cp315-abi3.abi3t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (305.9 kB view details)

Uploaded CPython 3.15CPython 3.15+manylinux: glibc 2.17+ ARMv7l

unicode_segmentation_rs-0.3.2-cp315-abi3.abi3t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (301.0 kB view details)

Uploaded CPython 3.15CPython 3.15+manylinux: glibc 2.17+ ARM64

unicode_segmentation_rs-0.3.2-cp315-abi3.abi3t-manylinux_2_5_i686.manylinux1_i686.whl (321.3 kB view details)

Uploaded CPython 3.15CPython 3.15+manylinux: glibc 2.5+ i686

unicode_segmentation_rs-0.3.2-cp315-abi3.abi3t-macosx_11_0_arm64.whl (273.3 kB view details)

Uploaded CPython 3.15CPython 3.15+macOS 11.0+ ARM64

unicode_segmentation_rs-0.3.2-cp315-abi3.abi3t-macosx_10_12_x86_64.whl (274.5 kB view details)

Uploaded CPython 3.15CPython 3.15+macOS 10.12+ x86-64

unicode_segmentation_rs-0.3.2-cp314-cp314t-win_amd64.whl (167.9 kB view details)

Uploaded CPython 3.14tWindows x86-64

unicode_segmentation_rs-0.3.2-cp314-cp314t-win32.whl (163.4 kB view details)

Uploaded CPython 3.14tWindows x86

unicode_segmentation_rs-0.3.2-cp314-cp314t-musllinux_1_2_x86_64.whl (509.2 kB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ x86-64

unicode_segmentation_rs-0.3.2-cp314-cp314t-musllinux_1_2_i686.whl (540.8 kB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ i686

unicode_segmentation_rs-0.3.2-cp314-cp314t-musllinux_1_2_armv7l.whl (580.9 kB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ ARMv7l

unicode_segmentation_rs-0.3.2-cp314-cp314t-musllinux_1_2_aarch64.whl (478.1 kB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ ARM64

unicode_segmentation_rs-0.3.2-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (306.2 kB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.17+ x86-64

unicode_segmentation_rs-0.3.2-cp314-cp314t-manylinux_2_17_s390x.manylinux2014_s390x.whl (319.5 kB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.17+ s390x

unicode_segmentation_rs-0.3.2-cp314-cp314t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (423.6 kB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.17+ ppc64le

unicode_segmentation_rs-0.3.2-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (306.2 kB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.17+ ARMv7l

unicode_segmentation_rs-0.3.2-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (301.1 kB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.17+ ARM64

unicode_segmentation_rs-0.3.2-cp314-cp314t-manylinux_2_5_i686.manylinux1_i686.whl (321.4 kB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.5+ i686

unicode_segmentation_rs-0.3.2-cp314-cp314t-macosx_11_0_arm64.whl (273.5 kB view details)

Uploaded CPython 3.14tmacOS 11.0+ ARM64

unicode_segmentation_rs-0.3.2-cp314-cp314t-macosx_10_12_x86_64.whl (274.6 kB view details)

Uploaded CPython 3.14tmacOS 10.12+ x86-64

unicode_segmentation_rs-0.3.2-cp310-abi3-win_amd64.whl (170.9 kB view details)

Uploaded CPython 3.10+Windows x86-64

unicode_segmentation_rs-0.3.2-cp310-abi3-win32.whl (165.9 kB view details)

Uploaded CPython 3.10+Windows x86

unicode_segmentation_rs-0.3.2-cp310-abi3-musllinux_1_2_x86_64.whl (512.2 kB view details)

Uploaded CPython 3.10+musllinux: musl 1.2+ x86-64

unicode_segmentation_rs-0.3.2-cp310-abi3-musllinux_1_2_i686.whl (545.7 kB view details)

Uploaded CPython 3.10+musllinux: musl 1.2+ i686

unicode_segmentation_rs-0.3.2-cp310-abi3-musllinux_1_2_armv7l.whl (584.1 kB view details)

Uploaded CPython 3.10+musllinux: musl 1.2+ ARMv7l

unicode_segmentation_rs-0.3.2-cp310-abi3-musllinux_1_2_aarch64.whl (481.9 kB view details)

Uploaded CPython 3.10+musllinux: musl 1.2+ ARM64

unicode_segmentation_rs-0.3.2-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (310.1 kB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ x86-64

unicode_segmentation_rs-0.3.2-cp310-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl (322.4 kB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ s390x

unicode_segmentation_rs-0.3.2-cp310-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (426.9 kB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ ppc64le

unicode_segmentation_rs-0.3.2-cp310-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (308.6 kB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ ARMv7l

unicode_segmentation_rs-0.3.2-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (304.6 kB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ ARM64

unicode_segmentation_rs-0.3.2-cp310-abi3-manylinux_2_5_i686.manylinux1_i686.whl (325.8 kB view details)

Uploaded CPython 3.10+manylinux: glibc 2.5+ i686

unicode_segmentation_rs-0.3.2-cp310-abi3-macosx_11_0_arm64.whl (278.0 kB view details)

Uploaded CPython 3.10+macOS 11.0+ ARM64

unicode_segmentation_rs-0.3.2-cp310-abi3-macosx_10_12_x86_64.whl (276.8 kB view details)

Uploaded CPython 3.10+macOS 10.12+ x86-64

File details

Details for the file unicode_segmentation_rs-0.3.2.tar.gz.

File metadata

File hashes

Hashes for unicode_segmentation_rs-0.3.2.tar.gz
Algorithm Hash digest
SHA256 a95476f855783bae41fe12b52940829d94ff84216fef538ef6187167ae469a21
MD5 0c44950c1f470f624f801863bfb3aeaf
BLAKE2b-256 5c8b7ac7227ae426098cfbdd751ddf8b79db370ceb653b9f04e26e437119acf7

See more details on using hashes here.

File details

Details for the file unicode_segmentation_rs-0.3.2-cp315-abi3.abi3t-win_amd64.whl.

File metadata

File hashes

Hashes for unicode_segmentation_rs-0.3.2-cp315-abi3.abi3t-win_amd64.whl
Algorithm Hash digest
SHA256 c9895924d8cb865c22dbdf0b843f9c438fe320af9b54260ba90d693f7b62a62d
MD5 8867218b130d3e50f7cf3c360f492de9
BLAKE2b-256 a2397c56311075f3fcf80056e3620125d5cba24849a2dd37f3d05af6ccbea8b7

See more details on using hashes here.

File details

Details for the file unicode_segmentation_rs-0.3.2-cp315-abi3.abi3t-win32.whl.

File metadata

File hashes

Hashes for unicode_segmentation_rs-0.3.2-cp315-abi3.abi3t-win32.whl
Algorithm Hash digest
SHA256 f3802a750d708ee363d29bfa235ef4c29b9c5e8a034727710e84faf1701fcd6a
MD5 7b91a95a848832d7439fabda39f520c7
BLAKE2b-256 4cfac8b2cadff23761bd1df122070b8a7f67557d69486ce79804016fffee81ef

See more details on using hashes here.

File details

Details for the file unicode_segmentation_rs-0.3.2-cp315-abi3.abi3t-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for unicode_segmentation_rs-0.3.2-cp315-abi3.abi3t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 9480374f89173b49d5424cd23e07c69d9a26874658f226f280425c61aa26297f
MD5 375361359993e8856f68655f4acdbd7a
BLAKE2b-256 efd7402db3c228721a0927f59b502adfbe3d77f4521ca981c052fd4a95efa4be

See more details on using hashes here.

File details

Details for the file unicode_segmentation_rs-0.3.2-cp315-abi3.abi3t-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for unicode_segmentation_rs-0.3.2-cp315-abi3.abi3t-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 5a1cf184902516be7fc46d71dec10db8fbf8140494334fe1692536f99faa4460
MD5 3b185c1f0e599da972552ea59c1024e8
BLAKE2b-256 8242ffb446accda53b41959e594de3da24f5b7ca8af876dc6ee551c7ba6b437b

See more details on using hashes here.

File details

Details for the file unicode_segmentation_rs-0.3.2-cp315-abi3.abi3t-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for unicode_segmentation_rs-0.3.2-cp315-abi3.abi3t-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 f9173358bd0ad5a76a7feca20d6d48b64fce7ffc23dd294870469dd35a5ac6cf
MD5 0ca1f95ea20040bb3062e1ff09d6af3d
BLAKE2b-256 6ca5e5da181119e31451161153f957bba0c8a99ed24ffe4ab69a9b118c794db0

See more details on using hashes here.

File details

Details for the file unicode_segmentation_rs-0.3.2-cp315-abi3.abi3t-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for unicode_segmentation_rs-0.3.2-cp315-abi3.abi3t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 a7940805ea9925810056b2525022afc47df6f13df00cfcf59c42e8e61c50c40d
MD5 8498ea0ff30b6d6f2699a6e7fb141447
BLAKE2b-256 1ca2244898fc486e74e49021eaed0aff264abf00786d6dd384c42bd854996dd8

See more details on using hashes here.

File details

Details for the file unicode_segmentation_rs-0.3.2-cp315-abi3.abi3t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for unicode_segmentation_rs-0.3.2-cp315-abi3.abi3t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7ddbd297f626eb0d3d48ec618d23241eb48ff937db7871de465164c32dafb95e
MD5 9e585cf4b4567fd6986f75d94e77443e
BLAKE2b-256 dbc7be70f6a3f7b7777f4dc270baf0b2b0ba25b1c534c1f5d80cdd17814f2f7a

See more details on using hashes here.

File details

Details for the file unicode_segmentation_rs-0.3.2-cp315-abi3.abi3t-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for unicode_segmentation_rs-0.3.2-cp315-abi3.abi3t-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 e379c94f833c5ffea2b2e8b5f87f7f9ddb12666f2b8fb36469509f7607df5da4
MD5 544da81718b14b56cce214da2765b08b
BLAKE2b-256 f7466908f46037ce434f22db0d567f197ada3782bd34c4b57eb4545ef159bd7e

See more details on using hashes here.

File details

Details for the file unicode_segmentation_rs-0.3.2-cp315-abi3.abi3t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for unicode_segmentation_rs-0.3.2-cp315-abi3.abi3t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 5cb9b26fd0ea66d206fcabf52bbe2fee18425a553b4f0726d3b86b18fadafe02
MD5 fad1de7120cf7de2e7047abece6e276a
BLAKE2b-256 3c26b5aa3f65c4e97529a6dddaf10a4b5bfe3f3bbdf479660da84b39a37ed643

See more details on using hashes here.

File details

Details for the file unicode_segmentation_rs-0.3.2-cp315-abi3.abi3t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for unicode_segmentation_rs-0.3.2-cp315-abi3.abi3t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 c4e232b8456e903dc6ed6ad85b6ca7739ecb4b40e19abc4ae96be18ea504838b
MD5 918bec98e306a9540f9c7451773980dc
BLAKE2b-256 d73d0a4a4990686b802f978768734b1b2bedcdb34bcc1f6cad436033ada94f0c

See more details on using hashes here.

File details

Details for the file unicode_segmentation_rs-0.3.2-cp315-abi3.abi3t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for unicode_segmentation_rs-0.3.2-cp315-abi3.abi3t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 90f067f3afef0f0ae82801d3c769c501a89999091dc7c3f39fa15c8413dce357
MD5 f23c93ad1b58babda2d53f215d567577
BLAKE2b-256 6bf97518be11c775740e631b437c05efe39834b6f59be06519835fef620f4e92

See more details on using hashes here.

File details

Details for the file unicode_segmentation_rs-0.3.2-cp315-abi3.abi3t-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for unicode_segmentation_rs-0.3.2-cp315-abi3.abi3t-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 26cc616b1a63ab84efc756a779e08eeeebe03d6a6757335937e4488ee2dc8aa8
MD5 912a1f1dbe56ea0873e6e2fc55956696
BLAKE2b-256 b8bf8f27c45b9efdbabffc82e814215052d0241865b424bd98af1f89f5e2692f

See more details on using hashes here.

File details

Details for the file unicode_segmentation_rs-0.3.2-cp315-abi3.abi3t-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for unicode_segmentation_rs-0.3.2-cp315-abi3.abi3t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 6493478bc664a3a80c3ad1bc45f5acd8014ca1d6bfe162186b720e5c6c856abe
MD5 4d87fb289ee6e4ff4deaeb9b30c72e9f
BLAKE2b-256 d8a7d6d7b12df80266a6d998ac5a9149d2d874affce597dc8670eadd92360b2a

See more details on using hashes here.

File details

Details for the file unicode_segmentation_rs-0.3.2-cp315-abi3.abi3t-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for unicode_segmentation_rs-0.3.2-cp315-abi3.abi3t-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 16b6c41791858589907d17144c92917e3ff5d552b7ed57b8dd4659b87b2e1b81
MD5 747e20cfc9e66eb10c3313be7ca99829
BLAKE2b-256 2820ebe648c1f6b261aeab8ff0e6ee750dcef967b1d2c62f0ca9e2aafcb83010

See more details on using hashes here.

File details

Details for the file unicode_segmentation_rs-0.3.2-cp314-cp314t-win_amd64.whl.

File metadata

File hashes

Hashes for unicode_segmentation_rs-0.3.2-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 25da168f2577f3477cfa490b13a209287e5aa3e1daa2e749ff365e7b9b895472
MD5 283a617ef81ff683e67b651c0bda12b6
BLAKE2b-256 ded8f5e0f95eb402763e1e3db21e695dac9b48357fe018bdccff5f3070383c6b

See more details on using hashes here.

File details

Details for the file unicode_segmentation_rs-0.3.2-cp314-cp314t-win32.whl.

File metadata

File hashes

Hashes for unicode_segmentation_rs-0.3.2-cp314-cp314t-win32.whl
Algorithm Hash digest
SHA256 a0b700484240687ac92fb9c8320b6ab1a0184a9bc32892c83749bbf79ea298c7
MD5 6daf615e267475b99519ac6e5f817be7
BLAKE2b-256 50c82ff0f229a7dfd6dbc7d60a5eb45448a4c3b4834186ce9067cfd216c72645

See more details on using hashes here.

File details

Details for the file unicode_segmentation_rs-0.3.2-cp314-cp314t-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for unicode_segmentation_rs-0.3.2-cp314-cp314t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 08bf49b2147576ed60c6d590e5b59cbc4ddaae00a5f9f795ae47fdc962d03def
MD5 e9161499daebb1af123d521a4df40c86
BLAKE2b-256 c54aa8f3a64631b69e1934712640016d61d9702a4e573448976da375fda5c59e

See more details on using hashes here.

File details

Details for the file unicode_segmentation_rs-0.3.2-cp314-cp314t-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for unicode_segmentation_rs-0.3.2-cp314-cp314t-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 4a1cc2cb64371b8e414c588c46555bd874389cba6386c86b54199ac4c37d3db3
MD5 e6647c0a675bb82e93807a263c32440e
BLAKE2b-256 f7e95908bffaae4af7406fd8be91cb1f73880ada90fd32d745aff7858d4c8921

See more details on using hashes here.

File details

Details for the file unicode_segmentation_rs-0.3.2-cp314-cp314t-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for unicode_segmentation_rs-0.3.2-cp314-cp314t-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 07a6eb8c0ac2c0d598162f59910b881d512ee3c9a8c8579ad1a757e8075d18c7
MD5 20572fd332852a81ec120694ef5d89dd
BLAKE2b-256 95c864f431dc441c8d3c38de755a8db25c73659ca1e1a50bd271a7be108ba639

See more details on using hashes here.

File details

Details for the file unicode_segmentation_rs-0.3.2-cp314-cp314t-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for unicode_segmentation_rs-0.3.2-cp314-cp314t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 e9dd0982da46ca28f6eeafe74cc76bc48a967d4a6466a517b77304aa56e3d836
MD5 f54004a4c040c76b3092881ccacd9486
BLAKE2b-256 61b3ec5f939b0de2307df0f5d2ee0d9624afaaf33bfd3d4438c6fc008286dd9d

See more details on using hashes here.

File details

Details for the file unicode_segmentation_rs-0.3.2-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for unicode_segmentation_rs-0.3.2-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a9ae59277bee1b76e9393e86f362150cb38007dfb6749c96c46c93d354e203b0
MD5 65d3bb76dee72ea6fe9c0f402b35d10c
BLAKE2b-256 52f5388d61cb8df5b1b52abd9ae1444a0429ef94a6f1fc546e3ca0b2acb7f7f6

See more details on using hashes here.

File details

Details for the file unicode_segmentation_rs-0.3.2-cp314-cp314t-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for unicode_segmentation_rs-0.3.2-cp314-cp314t-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 5a31902842ddefbc9fc24ee3cf5861eefa9aa91c59f6849a57ad2a661227bdd5
MD5 c18e010e13477111deca16d30e5347f2
BLAKE2b-256 2f653506b1e89e566bcf0baa5b8e31ec0fd6ed952ddaac9f95f9bfe7ac5687aa

See more details on using hashes here.

File details

Details for the file unicode_segmentation_rs-0.3.2-cp314-cp314t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for unicode_segmentation_rs-0.3.2-cp314-cp314t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 16b2017c7b263083bdf80055aca2c6374530a34117b6858c188c9a9d2f0d1033
MD5 2937f50f9653133cd80f6d809ed2e3ba
BLAKE2b-256 dcb009f33a95f2bd955d80e5e14d0d72fb816d69aaa3ce122a48dfeed781bc5b

See more details on using hashes here.

File details

Details for the file unicode_segmentation_rs-0.3.2-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for unicode_segmentation_rs-0.3.2-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 478f4cc90e1722ba0722d487768dc2e55c0f60a64116fd2034c1d7780033bc86
MD5 c8e9a9c20ef12446e72684b9a63d4fdf
BLAKE2b-256 4caf93de2ed02c3c30239ef4d842ccf3d7d90dbe86e52a0db1a1501d67923780

See more details on using hashes here.

File details

Details for the file unicode_segmentation_rs-0.3.2-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for unicode_segmentation_rs-0.3.2-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 a87350117eab030dca6c672f4bc39705f1af8b988f66a4a58a6263277398031f
MD5 179e8b526d661dfa7ea3817b5374b5da
BLAKE2b-256 ef68034645447ecc411eafdc81b624d7e0aca4bc36434a8f7322dcdfbdfb0b41

See more details on using hashes here.

File details

Details for the file unicode_segmentation_rs-0.3.2-cp314-cp314t-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for unicode_segmentation_rs-0.3.2-cp314-cp314t-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 936148f1accf9e484bd1f1fed4f3e32fe4f5fc8265ac1ec00f2f0bfa14c82d6e
MD5 26c910938e00cfd4515c295b292a9d14
BLAKE2b-256 a3886a9c17cd9dbb2f874f3786c13cb47a4cf60fae649ccd1f1948b9d6bb8902

See more details on using hashes here.

File details

Details for the file unicode_segmentation_rs-0.3.2-cp314-cp314t-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for unicode_segmentation_rs-0.3.2-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 fbba7195018560c47a5d7421b0c9a2b1cf5aee24ba6246c0f1ebb898d68fe856
MD5 647729331523ae604a22c68af951676c
BLAKE2b-256 d4f930cf997056aa27ffc8843b6b3386065b750260a730523b1bff73f2a3007c

See more details on using hashes here.

File details

Details for the file unicode_segmentation_rs-0.3.2-cp314-cp314t-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for unicode_segmentation_rs-0.3.2-cp314-cp314t-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 9cbe7231bbbb50051d85fd93fdc020783e3104fcc96554597e413fd8771a8a97
MD5 b54e3dbfac0a85ab816fb5c2d7815b3d
BLAKE2b-256 da11843224db0bcbbddf92f1da3c53fc72c2b19007f822cb73d91964dc66e0d6

See more details on using hashes here.

File details

Details for the file unicode_segmentation_rs-0.3.2-cp310-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for unicode_segmentation_rs-0.3.2-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 317c5b5892b6906f9a48a53f230c4c8737a0ce5e3abec7de6d810548cb82b2e3
MD5 f709e19d8a28a25985975e221d319c36
BLAKE2b-256 9065cc9647898a0ab1fccf843077e4d2ca61b00c91c7bfffbec7b913ec64222c

See more details on using hashes here.

File details

Details for the file unicode_segmentation_rs-0.3.2-cp310-abi3-win32.whl.

File metadata

File hashes

Hashes for unicode_segmentation_rs-0.3.2-cp310-abi3-win32.whl
Algorithm Hash digest
SHA256 37730584f85261dbe0e873c8513efa54c71e30f4afebb722e8a228981da2cd53
MD5 5c7a20b6a213d0e175ef5003af5436c0
BLAKE2b-256 f6a3bbe763124504e978849fe8ff4eb7ce2e7cc4c6c46dba79d64a6b6b8bd3ae

See more details on using hashes here.

File details

Details for the file unicode_segmentation_rs-0.3.2-cp310-abi3-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for unicode_segmentation_rs-0.3.2-cp310-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 452b575cc0651d25f0385891e2e6f889e589485762a0248ea1f8e1d7e968e509
MD5 143ebfdcf0fcfb00d04a7eaad43f6f16
BLAKE2b-256 149ece23d2655f957c4f3826d6b595b50728691ee1ff4318d9df7e5885c2bbee

See more details on using hashes here.

File details

Details for the file unicode_segmentation_rs-0.3.2-cp310-abi3-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for unicode_segmentation_rs-0.3.2-cp310-abi3-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 9e994c83a227d307045b94aa3b89bfc2da44f823b60c1f1cf47e732c61a08abc
MD5 d7e0e19d1a20b005cdf1f182ef03ba62
BLAKE2b-256 079ef98d11a5742758b344d5ec4ced319ff8f550ee21ca9cfcf3ec733497c3bf

See more details on using hashes here.

File details

Details for the file unicode_segmentation_rs-0.3.2-cp310-abi3-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for unicode_segmentation_rs-0.3.2-cp310-abi3-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 a8817e2c19ac78abaae1064e8719651b8ec967fbe0280d349528df3370c6eb1d
MD5 64b9634e531972e631e009c94611c5e8
BLAKE2b-256 537a5283ca94cc97660803b2578e4dc5ef4c1b67fd0654ae9a6a5babb0ce59fe

See more details on using hashes here.

File details

Details for the file unicode_segmentation_rs-0.3.2-cp310-abi3-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for unicode_segmentation_rs-0.3.2-cp310-abi3-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 6edf8195c1524840c185ab147af7c0d774c5a2faf3f02a4780f895001a452a37
MD5 c75b5c349ac11b8a93662729fb0a04bd
BLAKE2b-256 16daf091c0a7875a71d31cdb1d25a1d4baef7f68f0567dc9f9e167756dbc1763

See more details on using hashes here.

File details

Details for the file unicode_segmentation_rs-0.3.2-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for unicode_segmentation_rs-0.3.2-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a286b506017cc727e8dd024ea3b0d6002d5fd9377bb5703a5cb5245114413dd2
MD5 f3bc551070baa06f15d775869103a375
BLAKE2b-256 ee350fba2ab99a11f269a36146894e5141aa9a99d43bc4d4229863b6b18b5ec7

See more details on using hashes here.

File details

Details for the file unicode_segmentation_rs-0.3.2-cp310-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for unicode_segmentation_rs-0.3.2-cp310-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 a678b30421be6e77d785b7ca2697c05dea822cf1e0a11cffa7645a7fb4258b9c
MD5 f6c29c78b6a97159755b4b7f48df21ae
BLAKE2b-256 1eb63049f7da4f2e55d5f2e337e2602a552c5fab882fdf3aac36875c83f3d85c

See more details on using hashes here.

File details

Details for the file unicode_segmentation_rs-0.3.2-cp310-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for unicode_segmentation_rs-0.3.2-cp310-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 68f91e54d195bd6d07ba7644ebbe3e77d547f36ade344f1bcf6a06dcfa44beac
MD5 96b3e2dfcd13cb288024f226ac6d38db
BLAKE2b-256 dbb2dab537f7c0e51ab0e73f1738fdf370d32fca4439fd71f2d2dfaf6c55e3ee

See more details on using hashes here.

File details

Details for the file unicode_segmentation_rs-0.3.2-cp310-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for unicode_segmentation_rs-0.3.2-cp310-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 8afeec290284d1656a0fa00655654e249477a077c8e9dd2a37f91f727bd6c1fd
MD5 39ff4340bec27b57837e1af2734843c5
BLAKE2b-256 f855ba1b97babb6f2e11b3e8b577d60841275557a17661b3f52aea2fce42749a

See more details on using hashes here.

File details

Details for the file unicode_segmentation_rs-0.3.2-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for unicode_segmentation_rs-0.3.2-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 e8b97f03430c5963037880b6dd414f98e23f1d72a7afb97f976e0684ed53cfe4
MD5 a08046e02122793df36ba73d83923b2a
BLAKE2b-256 7597e21b17306778af045c4f4bae99aea1b9bf37a16768a50effaa05e6bcd0a8

See more details on using hashes here.

File details

Details for the file unicode_segmentation_rs-0.3.2-cp310-abi3-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for unicode_segmentation_rs-0.3.2-cp310-abi3-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 a7c557a5730193ce3b93b3e9fac27db7a3ba8b221595b5971b6b3392a4dae6cc
MD5 6ee3a0392c6eca05bf09f9d25233b1fb
BLAKE2b-256 a0ab137134b61495c8237cc8f470320b2bb2965e287adeacd35e8d3bbfca25b8

See more details on using hashes here.

File details

Details for the file unicode_segmentation_rs-0.3.2-cp310-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for unicode_segmentation_rs-0.3.2-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 73f97838f1afe0c0289976f1f225a6078699a327da9ceef94bc4edbce8f5a254
MD5 858a3bf7d08fe6ff0ab0f0a1328bc5da
BLAKE2b-256 a5ccd9a2cbbe23e86e23ae12f580e70647a8835a62e0f778616f552544e9cb5d

See more details on using hashes here.

File details

Details for the file unicode_segmentation_rs-0.3.2-cp310-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for unicode_segmentation_rs-0.3.2-cp310-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 0dcc7b21fd61953a91733480c819745d361d041355496a6d4d4bffa15d11f331
MD5 ccfe0bad1dd6b340f0ed003eec924cb0
BLAKE2b-256 64cdbd1fb96f4726a826a8870c9386628c07c0eb98c66177170de37a2e48f05b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page