Text::CharWidth - Get number of occupied columns of a string on terminal


Text-CharWidth documentation  | view source Contained in the Text-CharWidth distribution.

Index


NAME

Top

Text::CharWidth - Get number of occupied columns of a string on terminal

SYNOPSIS

Top

  use Text::CharWidth qw(mbwidth mbswidth mblen);
  mbwidth(string);
  mbswidth(string);
  mblen(string);

DESCRIPTION

Top

This module supplies features similar as wcwidth(3) and wcswidth(3) in C language.

Characters have its own width on terminal depending on locale. For example, ASCII characters occupy one column per character, east Asian fullwidth characters (like Hiragana or Han Ideograph) occupy two columns per character, and combining characters (apperaring in ISO-8859-11 Thai, Unicode, and so on) occupy zero columns per character. mbwidth() gives the width of the first character of the given string and mbswidth() gives the width of the whole given string.

The names of mbwidth and mbswidth came from "multibyte" versions of wcwidth and wcswidth which are "wide character" versions.

mblen(string) returns number of bytes of the first character of the string. Please note that a character may consist of multiple bytes in multibyte encodings such as UTF-8, EUC-JP, EUC-KR, GB2312, or Big5.

mbwidth(string) returns the width of the first character of the string. mbswidth(string) returns the width of the whole string.

Parameters are to be given in locale encodings, not always in UTF-8.

SEE ALSO

Top

locale(5), wcwidth(3), wcswidth(3)

AUTHOR

Top

Tomohiro KUBOTA, <kubota@debian.org>

COPYRIGHT AND LICENSE

Top


Text-CharWidth documentation  | view source Contained in the Text-CharWidth distribution.