pub fn truncate(value: &str, columns: usize) -> StringExpand description
Cut a string to at most columns display columns, ending with … when anything was
removed. Never splits a character, and never returns something wider than it was asked
for — including the ellipsis.
use majordomus_cli::environment::text::{truncate, width};
assert_eq!(truncate("majordomus", 10), "majordomus");
assert_eq!(truncate("majordomus", 6), "major…");
assert_eq!(truncate("日本語です", 5), "日本…");
assert_eq!(width(&truncate("日本語です", 5)), 5, "and exactly as wide as asked");
assert_eq!(truncate("abc", 0), "");