37 lines
1.3 KiB
Scheme
Executable file
37 lines
1.3 KiB
Scheme
Executable file
#!/usr/bin/env gxi
|
|
|
|
(export main)
|
|
|
|
(import :std/format
|
|
:std/iter
|
|
:gerbil/gambit/threads
|
|
:dlozeve/fancy/format
|
|
:dlozeve/fancy/table
|
|
:dlozeve/fancy/rule
|
|
:dlozeve/fancy/spinner)
|
|
|
|
(def (main)
|
|
(display (rule "[bold green]Fancy demo" style: 'simple))
|
|
(displayln)
|
|
(displayln (parse-markup
|
|
"[bold red]Lorem ipsum[/bold red] dolor sit amet, [underline]consectetur[/underline] adipiscing elit, sed do
|
|
eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad
|
|
minim veniam, [cyan]quis nostrud exercitation [yellow]ullamco[/yellow] laboris[/cyan] nisi ut
|
|
aliquip ex ea commodo consequat. Duis aute irure dolor in
|
|
reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
|
|
pariatur. [black on yellow]Excepteur sint [on red]occaecat[/on red] cupidatat non proident, sunt in
|
|
culpa qui officia deserunt mollit anim id est laborum."))
|
|
(displayln)
|
|
|
|
(def tab (table '("[bold]#" "[bold]Name" "[bold]Property") '(3 20 20)))
|
|
(display (table-header tab))
|
|
(display (table-row tab "42" "[green]Foo" "Bar"))
|
|
(display (table-row tab "21" "[red]Toto" "Blublu"))
|
|
(display (table-footer tab))
|
|
(displayln)
|
|
(displayln)
|
|
(for ((i (in-range 20)))
|
|
(display (spinner i "[yellow]Waiting:" (format "(computing ~d/20)" (1+ i))
|
|
style: 'dots))
|
|
(thread-sleep! 0.1))
|
|
(displayln))
|