summaryrefslogtreecommitdiff
path: root/theme
diff options
context:
space:
mode:
Diffstat (limited to 'theme')
-rwxr-xr-xtheme/dune7
-rwxr-xr-xtheme/nord.ml39
-rwxr-xr-xtheme/theme.ml1
3 files changed, 47 insertions, 0 deletions
diff --git a/theme/dune b/theme/dune
new file mode 100755
index 0000000..a812bef
--- /dev/null
+++ b/theme/dune
@@ -0,0 +1,7 @@
+(library
+ (name theme)
+ (libraries
+ color
+ gg
+ )
+ )
diff --git a/theme/nord.ml b/theme/nord.ml
new file mode 100755
index 0000000..4748d83
--- /dev/null
+++ b/theme/nord.ml
@@ -0,0 +1,39 @@
+open StdLabels
+
+let default = Color.of_rgb 5 255 255
+
+let theme =
+ [| "#2e3440"
+ ; "#3b4252"
+ ; "#434c5e"
+ ; "#4c566a"
+ (* Bright *)
+ ; "#d8dee9"
+ ; ""
+ ; "#eceff4"
+ (* Frost *)
+ ; "#8fbcbb"
+ ; ""
+ ; ""
+ ; ""
+ (* Aurora 11 - *)
+ ; "#bf616a" (* Redd color *)
+ ; ""
+ ; ""
+ ; "#a3be8c" (* Green color *)
+
+
+ |]
+ |> Array.map ~f:(fun f ->
+ Color.of_hexstring f
+ |> Option.value ~default
+ )
+
+let set_color t f =
+ let Color.Rgba'.{r; g; b; _ } = Color.to_rgba' (Array.get theme t) in
+ f r g b
+
+
+let to_gg t =
+ let Color.Rgba'.{r; g; b; _ } = Color.to_rgba' (Array.get theme t) in
+ Gg.Color.of_srgb (Gg.V4.v r g b 1.)
diff --git a/theme/theme.ml b/theme/theme.ml
new file mode 100755
index 0000000..39974b1
--- /dev/null
+++ b/theme/theme.ml
@@ -0,0 +1 @@
+module Nord = Nord