@@ -292,8 +292,10 @@ wrapWithOffset maxWidth n xs =
292292 in firstLine : (fmap (takeWidth maxWidth) . takeWhile (not . T.null) . iterate (dropWidth maxWidth) $ rest)
293293
294294-- | Split a 'Text' at the given column index. For example
295+--
295296-- > splitAtWidth 3 "ᄀabc" == ("ᄀa", "bc")
296−-- becaues the first character has a width of two (see 'charWidth' for more on that).
297+--
298+-- because the first character has a width of two (see 'charWidth' for more on that).
297299splitAtWidth :: Int -> Text -> (Text, Text)
298300splitAtWidth n t@(Text arr off len)
299301 | n <= 0 = (T.empty, t)
@@ -310,14 +312,18 @@ splitAtWidth n t@(Text arr off len)
310312 w = charWidth c
311313
312314-- | Takes the given number of columns of characters. For example
315+--
313316-- > takeWidth 3 "ᄀabc" == "ᄀa"
317+--
314318-- because the first character has a width of 2 (see 'charWidth' for more on that).
315319-- This function will not take a character if its width exceeds the width it seeks to take.
316320takeWidth :: Int -> Text -> Text
317321takeWidth n = fst . splitAtWidth n
318322
319323-- | Drops the given number of columns of characters. For example
324+--
320325-- > dropWidth 2 "ᄀabc" == "abc"
326+--
321327-- because the first character has a width of 2 (see 'charWidth' for more on that).
322328-- This function will not drop a character if its width exceeds the width it seeks to drop.
323329dropWidth :: Int -> Text -> Text