17 lines
588 B
OCaml
17 lines
588 B
OCaml
open Seq
|
|
let to_sixteen f = ints 0 |> take 16 |> f |> Array.of_seq
|
|
let ( >>= ) = Option.bind
|
|
let (=?)= Array.mem
|
|
|
|
let colours =
|
|
let init_default = to_sixteen (map (fun x -> Types.Simple x)) in
|
|
Sys.getenv_opt "CULRS"
|
|
>>= (fun s -> if String.length s > 0 then Some s else None)
|
|
|> Option.fold ~none:init_default ~some:Parse.parse_env_colours
|
|
|
|
let order =
|
|
let init_default = to_sixteen (filter (fun i -> i =? [| 0; 8 |])) in
|
|
Sys.getenv_opt "CULR_ORDER"
|
|
>>= (fun s -> if String.length s > 0 then Some s else None)
|
|
|> Option.fold ~none:init_default ~some:Parse.parse_env_order
|