Skip to content

Commit d3cdf14

Browse files
committed
style: quadrant-block grid spinner family (5 patterns)
Single CLI row, but each cell renders as a 2x2 sub-grid via Unicode quadrant block characters (▘▝▖▗▀▄▌▐▙▚▛▜▟▞█ + space). Result: 4 sub-cells per visual cell, each independently lit — gives a 2-row "mini square grid" illusion in one line of output. - quad-random: 16 sub-cells, each flashing independently per frame. Visually busy "many things happening" feel. - quad-twinkle: sparse single-corner lights in a 6-cell row — stars twinkling, calm. - quad-pulse: heartbeat through quadrant fill levels (empty → corners → diagonals → full → fade back). - quad-rain: half-blocks falling at random columns — best 2-row vertical-drop illusion in a single line of output. - quad-cross: alternating diagonal ▚▞ checkerboard shift — hypnotic geometric flicker. 52 → 57 spinner styles. 107 tests pass.
1 parent 3091226 commit d3cdf14

1 file changed

Lines changed: 44 additions & 0 deletions

File tree

‎src/codechu_cli/progress.py‎

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -227,6 +227,50 @@
227227
"matrix-trail": [
228228
"▔", "▀", "█", "▆", "▄", "▂", "▁", " ",
229229
],
230+
231+
# --- Quadrant-block grids ------------------------------------------
232+
# Single CLI row, but each cell renders as a 2x2 sub-grid via
233+
# Unicode quadrant block characters (▘▝▖▗▀▄▌▐▙▚▛▜▟▞█ + space).
234+
# Result: 4 sub-cells per visual cell, each can be lit/dark
235+
# independently — gives a 2-row "grid of mini squares" illusion.
236+
237+
# quad-random: 4 cells, each picks a different random pattern per
238+
# frame. Visually busy — "many cells flashing on/off independently"
239+
"quad-random": [
240+
"▘▗▖▝", "▟▙▛▜", "▖▘▗▝", "▞▀▄▚",
241+
"▝▖▘▗", "▛▜▟▙", "▖▝▘▗", "▚▞▀▄",
242+
"▌▐▝▘", "▟▖▞▛", "▀▙▚▗", "▐▌▜▝",
243+
],
244+
245+
# quad-twinkle: sparse single-corner lights in a 6-cell row.
246+
# Slower, calmer — feels like stars twinkling on/off, not chaos
247+
"quad-twinkle": [
248+
"▘ ", " ▝ ", " ▗ ", " ▖ ",
249+
" ▖ ", "▝ ▗ ", " ▘ ▗ ", "▖ ▝ ",
250+
" ▘ ", "▗ ▖ ",
251+
],
252+
253+
# quad-pulse: all 4 cells light together then fade through corners
254+
# back to empty. Slow heartbeat through quadrant fill levels
255+
"quad-pulse": [
256+
" ", "▘▝▖▗", "▙▚▞▟", "████",
257+
"▙▚▞▟", "▘▝▖▗", " ", " ",
258+
],
259+
260+
# quad-rain: half-blocks falling in random columns — 2-row vertical
261+
# drop illusion (▀ = head, █ = mid-fall, ▄ = bottom, space = clear)
262+
"quad-rain": [
263+
"▀ ▀ ", "█ █▀", "▄ █ ", " ▀ ▄ ",
264+
"▀█ ", "▄█ ▀ ", " ▄ █ ", " ▄▄ ",
265+
"▀ ▀ ", "█▀█ ",
266+
],
267+
268+
# quad-cross: alternating diagonal blocks — ▚/▞ checkerboard shift.
269+
# Hypnotic, mathematical; less "random" more "geometric flicker"
270+
"quad-cross": [
271+
"▚▞▚▞", "▞▚▞▚", "▚▚▞▞", "▞▞▚▚",
272+
"█▚▞ ", " ▞▚█", "▚█ ▞", "▞ █▚",
273+
],
230274
}
231275

232276
DEFAULT_SPINNER_STYLE = "dots"

0 commit comments

Comments
 (0)