blob: 218f5e1753a2d38a4564d16bbd44fc9b804c0be1 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
open Base
open Sequence
open Sequence.Infix
let center ~fill n text =
let padding = repeat fill and len_t = length text in
let len_p = (n - len_t) / 2 in
take (take padding len_p @ text @ padding) n
let extend ~fill n text = take (text @ repeat fill) n
let spread ?(l = empty) ?(lsize = length l) ?(c = empty) ?(csize = length c)
?(r = empty) ?(rsize = length r) ~fill w =
let lpad = take (repeat fill) ((w / 2) - lsize - (csize / 2) - 1) in
let rpad = take (repeat fill) ((w / 2) - rsize - (csize / 2)) in
l @ lpad @ c @ rpad @ r
let invert text = Terminal.(fmt_inverted_on @ text @ fmt_inverted_off)
let bold text = Terminal.(fmt_bold_on @ text @ fmt_bold_off)
|