code / tomo

Lines41.3K C23.7K Markdown9.7K YAML5.0K Tomo2.3K
7 others 763
Python231 Shell230 make212 INI47 Text21 SVG16 Lua6
(39 lines)
1 '\" t
2 .\" Copyright (c) 2025 Bruce Hill
3 .\" All rights reserved.
4 .\"
5 .TH Text.width 3 2025-11-29 "Tomo man-pages"
6 .SH NAME
7 Text.width \- get display width
8 .SH LIBRARY
9 Tomo Standard Library
10 .SH SYNOPSIS
11 .nf
12 .BI Text.width\ :\ func(text:\ Text\ ->\ Int)
13 .fi
14 .SH DESCRIPTION
15 Returns the display width of the text as seen in a terminal with appropriate font rendering. This is usually the same as the text's `.length`, but there are some characters like emojis that render wider than 1 cell.
18 .SH ARGUMENTS
20 .TS
21 allbox;
22 lb lb lbx
23 l l l.
24 Name Type Description
25 text Text The text whose length you want.
26 .TE
27 .SH RETURN
28 An integer representing the display width of the text.
30 .SH NOTES
31 This will not always be exactly accurate when your terminal's font rendering can't handle some unicode displaying correctly.
33 .SH EXAMPLES
34 .EX
35 assert "AmΓ©lie".width() == 6
36 assert "🀠".width() == 2
37 .EE
38 .SH SEE ALSO
39 .BR Tomo-Text (3)