mirror of
https://github.com/RGBCube/nu_scripts
synced 2025-07-31 14:17:45 +00:00

* refactor: ✨ move in one commit Eveything in modules should probably be changed to `exported` defs. The idea is to move everything first to keep proper history. * refactor: 📝 add modules readme (wip) * refactor: ✨ small move * refactor: 📝 changed nestring, updated modules readme * refactor: 📝 to document or not to document * fix: 🐛 themes replaced the template to use `main` and regenerated them from lemnos themes. * Revert "fix: 🐛 themes" This reverts commit 4918d3633c8d2d81950a0ed0cfd9eb84241bc886. * refactor: ✨ introduce sourced - Created a source `root` in which sourcable demos are stored. Some might get converted to modules later on. - Moved some files to bin too. * fix: 🐛 fehbg.nu * fix: 🐛 modules/after.nu * moved some other stuff around --------- Co-authored-by: Darren Schroeder <343840+fdncred@users.noreply.github.com>
37 lines
No EOL
964 B
Text
37 lines
No EOL
964 B
Text
export def draw [] {
|
|
let term_cols = ((term size).columns - 1)
|
|
|
|
# let's itertate through each of the columns of our terminal
|
|
0..$term_cols | each { |col|
|
|
let r = (255 - ($col * 255 / $term_cols) | math round)
|
|
let g = ($col * 510 / $term_cols | math round)
|
|
let b = ($col * 255 / $term_cols | math round)
|
|
if $g > 255 {
|
|
let g = (510 - $g)
|
|
build-colorstr $r $g $b $col
|
|
} else {
|
|
build-colorstr $r $g $b $col
|
|
}
|
|
} | str join
|
|
}
|
|
|
|
def build-colorstr [
|
|
r:int # Red
|
|
g:int # Green
|
|
b:int # Blue
|
|
c:int # Column
|
|
] {
|
|
# Heavy use of string interpolation below
|
|
let bg = $"(ansi rgb_bg)($r);($g);($b)m"
|
|
let fg = $"(ansi rgb_fg)(255 - $r);(255 - $g);(255 - $b)m"
|
|
let idx = ($c mod 2)
|
|
let slash_str = (if $idx == 0 {
|
|
$'/(ansi reset)'
|
|
} else {
|
|
$'\(ansi reset)'
|
|
})
|
|
$"($bg)($fg)($slash_str)"
|
|
# sleep 10ms | ignore
|
|
}
|
|
|
|
draw |