pub fn visual_width(s: &str, tab_width: usize) -> usize
Computes the visual width of a string (tabs expand to tab_width).