Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Displayed width of Unicode characters and strings according to UAX#11 rules.

License

NotificationsYou must be signed in to change notification settings

correabuscar/unicode-width

 
 

Repository files navigation

Build statuscrates.io versionDocs status

Determine displayed width ofchar andstr types according toUnicode Standard Annex #11and other portions of the Unicode standard.

This crate is#![no_std].

use unicode_width::UnicodeWidthStr;fnmain(){let teststr ="Hello, world!";let width = teststr.width();println!("{}", teststr);println!("The above string is {} columns wide.", width);let width = teststr.width_cjk();println!("The above string is {} columns wide (CJK).", width);}

NOTE: The computed width values may not match the actual rendered columnwidth. For example, the woman scientist emoji comprises of a woman emoji, azero-width joiner and a microscope emoji. Suchemoji ZWJ sequencesare considered to have the sum of the widths of their constituent parts:

externcrate unicode_width;use unicode_width::UnicodeWidthStr;fnmain(){assert_eq!("👩".width(),2);// Womanassert_eq!("🔬".width(),2);// Microscopeassert_eq!("👩‍🔬".width(),4);// Woman scientist}

Additionally,defective combining character sequencesand nonstandardKorean jamo sequences maybe rendered with a different width than what this crate says. (This is not anexhaustive list.)

crates.io

You can use this package in your project by adding the followingto yourCargo.toml:

[dependencies]unicode-width ="0.1.11"

About

Displayed width of Unicode characters and strings according to UAX#11 rules.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Rust71.7%
  • Python28.3%

[8]ページ先頭

©2009-2025 Movatter.jp