1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
open! Oxbow_core
module Ctx = struct
type t =
{ focused_index : int
; count : int
}
end
let render (layout : Layout.t) ~(scheme : Scheme.t) ~(align : Align.t) ~(ctx : Ctx.t) =
match layout with
| Floating -> "∘∘∘"
| Scrolling ->
(match align with
| Left -> "=>>"
| Centered -> ">=>"
| Visible -> ">>=")
| Tiling ->
(match scheme with
| Even -> "[]="
| Diminish -> "[]>"
| Dwindle -> "[\\]"
| Spiral -> "[@]"
| Deck -> "[D]"
| Monocle -> Printf.sprintf "[%d]" ctx.focused_index)
;;