NAME
Terminal::WCWidth - returns character width on a terminal
SYNOPSIS
use Terminal::WCWidth;
sub print-right-aligned($s) {
print " " x (80 - wcswidth($s));
say $s;
}
print-right-aligned("this is right-aligned");
print-right-aligned("another right-aligned string")
DESCRIPTION
A Raku port of a Python module.
SUBROUTINES
wcwidth
Takes a single codepoint and outputs its width:
wcwidth(0x3042) # "あ" - returns 2
Returns:
-1
for a control character
0
for a character that does not advance the cursor (NULL or combining)
1
for most characters
2
for full width characters
wcswidth
Takes a string and outputs its total width:
wcswidth("*ウルヰ*") # returns 8 = 2 + 6
Returns -1 if any control characters are found.
Unlike the Python version, this module does not support getting the width of only the first n
characters of a string, as you can use the .substr
method.
ACKNOWLEDGEMENTS
Thanks to Jeff Quast (jquast), the author of the Python module, which in turn is based on the C library by Markus Kuhn.
AUTHORS
+merlan #flirora
José Joaquín Atria
Raku Community
COPYRIGHT AND LICENSE
Copyright 2015 - 2017 +merlan #flirora
Copyright 2020, 2024 Raku Commuity
This library is free software; you can redistribute it and/or modify it under the Artistic License 2.0.