From c067b426a976762dafee0ef47e2970823b203894 Mon Sep 17 00:00:00 2001 From: Bel LaPointe Date: Sun, 8 Mar 2020 20:37:48 -0600 Subject: [PATCH] Fix colors breaking floating css because fuck --- config/config.go | 18 ++++++- config/rotate.py | 129 +++++++++++++++++++++++++++++++++++++++++++++++ config/water.css | 1 + server/notes.go | 2 +- wrapper.html | 33 ------------ 5 files changed, 147 insertions(+), 36 deletions(-) create mode 100644 config/rotate.py create mode 160000 config/water.css delete mode 100755 wrapper.html diff --git a/config/config.go b/config/config.go index 87b534b..9352244 100755 --- a/config/config.go +++ b/config/config.go @@ -72,7 +72,11 @@ const defaultWrapper = ` diff --git a/config/rotate.py b/config/rotate.py new file mode 100644 index 0000000..45f9d8c --- /dev/null +++ b/config/rotate.py @@ -0,0 +1,129 @@ +#! /usr/local/bin/python3 + +def main(args) : + print("args", args) + for i in args : + rotate(i) + +def rotate(x) : + print("input: {}", x) + rgb = hex_to_rgb(x) + print("rgb: {}", rgb) + hsl = rgb_to_hsl(rgb) + print("hsl: {}", hsl) + import os + env = os.environ + if "DEG" in env : + deg = int(env["DEG"]) + else : + deg = 110 + hsl = rotate_hsl(hsl, deg) + print("hsl': {}", hsl) + rgb = hsl_to_rgb(hsl) + print("rgb': {}", rgb) + print(rgb_to_hex(rgb)) + +def hex_to_rgb(x) : + if x.startswith("#") : + x = x[1:] + r = x[0:2] + g = x[2:4] + b = x[4:6] + return ( + hex_to_dec(r), + hex_to_dec(g), + hex_to_dec(b), + ) + +def hex_to_dec(x) : + s = 0 + mul = 1 + for i in range(len(x)): + c = x[len(x)-i-1] + c = c.upper() + digit = ord(c) - ord('0') + if not c.isdigit() : + digit = ord(c) - ord('A') + 10 + s += mul * digit + mul *= 16 + return s + +def rgb_to_hsl(rgb) : + return ( + compute_h(rgb), + compute_s(rgb), + compute_l(rgb), + ) + +def compute_h(rgb) : + r, g, b, cmax, cmin, delta = compute_hsl_const(rgb) + if delta == 0 : + return 0 + if r == cmax : + return 60 * ( ( (g - b)/delta ) % 6) + if g == cmax : + return 60 * ( ( (b - r)/delta ) + 2) + if b == cmax : + return 60 * ( ( (r - g)/delta ) + 4) + +def compute_s(rgb) : + r, g, b, cmax, cmin, delta = compute_hsl_const(rgb) + if delta == 0 : + return 0 + return delta / ( 1 - (abs(2*compute_l(rgb)-1)) ) + +def compute_l(rgb) : + r, g, b, cmax, cmin, delta = compute_hsl_const(rgb) + return (cmax + cmin) / 2 + +def compute_hsl_const(rgb) : + rgb = [ i/255.0 for i in rgb ] + return rgb[:] + [max(rgb), min(rgb), max(rgb)-min(rgb)] + +def rotate_hsl(hsl, deg) : + return ( + (hsl[0] + deg) % 360, + hsl[1], + hsl[2], + ) + +def hsl_to_rgb(hsl) : + h = hsl[0] + s = hsl[1] + l = hsl[2] + + c = s * (1 - abs(2 * l)) + x = c * (1 - abs((h / 60) % 2 - 1)) + m = l - (c / 2) + + rgbp = () + if h < 60 : + rgbp = (c, x, 0) + if h < 120 : + rgbp = (x, c, 0) + if h < 180 : + rgbp = (0, c, x) + if h < 240 : + rgbp = (0, x, c) + if h < 300 : + rgbp = (x, 0, c) + else: + rgbp = (c, 0, x) + + r = rgbp[0] + g = rgbp[1] + b = rgbp[2] + return ( + (r+m)*255, + (g+m)*255, + (b+m)*255, + ) + +def rgb_to_hex(rgb) : + r = min(max(int(rgb[0]), 0), 255) + g = min(max(int(rgb[1]), 0), 255) + b = min(max(int(rgb[2]), 0), 255) + return "#{:02x}{:02x}{:02x}".format(r, g, b) + +from sys import argv +main(argv[1:]) diff --git a/config/water.css b/config/water.css new file mode 160000 index 0000000..7e86e4f --- /dev/null +++ b/config/water.css @@ -0,0 +1 @@ +Subproject commit 7e86e4f67c8a90d581df8926e77fbe9534752c9e diff --git a/server/notes.go b/server/notes.go index 8b0a859..e21e742 100755 --- a/server/notes.go +++ b/server/notes.go @@ -22,7 +22,7 @@ func (s *Server) notes(w http.ResponseWriter, r *http.Request) { } func notesHead(w http.ResponseWriter, p filetree.Path) { - fmt.Fprintln(w, h2(p.MultiLink(), "margin: 0; position: fixed; padding: .25em; background-color: #202b38; width: 100%; top: 0;")) + fmt.Fprintln(w, h2(p.MultiLink())) htmlSearch(w) } diff --git a/wrapper.html b/wrapper.html deleted file mode 100755 index 92b811d..0000000 --- a/wrapper.html +++ /dev/null @@ -1,33 +0,0 @@ - -
- - - - -
- - {{{}}} - - -