cli: "fancy" theme preview

This adds a "fancy" theme preview to the `+list-themes` CLI action.
By default, if the command is connected to a TTY, it will display the
fancy preview. If it is not connected to a TTY, or the user specifies
`--plain` on the command line, a simple list of themes will be printed
to stdout.

While in the preview `F1` or `?` will show a help screen.
This commit is contained in:
Jeffrey C. Ollie
2024-09-23 21:49:24 -05:00
committed by Mitchell Hashimoto
parent 98f48c6df8
commit 743e547235
5 changed files with 1295 additions and 58 deletions

View File

@ -1038,7 +1038,6 @@ fn addDeps(
.optimize = optimize,
.libxev = false,
.images = false,
.text_input = false,
});
const wuffs_dep = b.dependency("wuffs", .{
.target = target,

View File

@ -54,8 +54,8 @@
.hash = "122056fbb29863ec1678b7954fb76b1533ad8c581a34577c1b2efe419e29e05596df",
},
.vaxis = .{
.url = "git+https://github.com/rockorager/libvaxis?ref=main#a8baf9ce371b89a84383130c82549bb91401d15a",
.hash = "12207f53d7dddd3e5ca6577fcdd137dcf1fa32c9f22cbb0911ad0701cde4095a1c4c",
.url = "git+https://github.com/rockorager/libvaxis?ref=main#2cc1eb77f842dd8587dfc9cf399d42e4c1369175",
.hash = "12203c2d83911e6aacfbfdd48d31d6fc36e89947dfc7aec104debe3ac85e9f3a44f2",
},
},
}

View File

@ -1,3 +1,3 @@
# This file is auto-generated! check build-support/check-zig-cache-hash.sh for
# more details.
"sha256-MocGI5dxh+WO79p01HbdFuc+wR+sXSxBnoFAmrX4p0s="
"sha256-MAzGg4tWlyv2X/GjAwm7s2whojawIKNMx1xWR+cZffQ="

File diff suppressed because it is too large Load Diff

45
src/cli/lorem_ipsum.txt Normal file
View File

@ -0,0 +1,45 @@
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras hendrerit aliquet
turpis non dictum. Mauris pulvinar nisl sit amet dui cursus tempus. Pellentesque
ut dui justo. Etiam quis magna sagittis nisi pretium consequat vitae ut nisl.
Sed at metus id odio pulvinar sodales. Vestibulum sollicitudin, sem id tristique
vestibulum, neque ante dictum tortor, in convallis mi enim ac lorem. Suspendisse
orci ex, ullamcorper sed leo vitae, mattis egestas nisl. Morbi id est vel
ipsum mollis convallis vel at mauris. Duis vehicula facilisis placerat. Aliquam
venenatis auctor ipsum vel elementum. Proin ac tincidunt lacus. Sed facilisis
tellus ullamcorper bibendum lobortis. Pellentesque porta, lacus quis efficitur
pulvinar, sem mi varius ante, sed finibus diam ante et risus.
Morbi ut sollicitudin justo. Nulla mattis mi ac mauris tincidunt tempor. Morbi
vel gravida erat. Ut eu risus quis nisi facilisis aliquet varius id orci.
Pellentesque tortor diam, porttitor nec urna nec, convallis consectetur dui.
Vestibulum et hendrerit ipsum. Morbi pharetra dictum turpis in elementum. Ut
nec volutpat nunc, at venenatis leo. Morbi eget nulla luctus, tincidunt dui vel,
cursus urna. Maecenas ac pellentesque nisi. Quisque ut lorem porta, eleifend
metus id, pellentesque tellus.
Vivamus gravida convallis felis, at hendrerit dolor. Vestibulum tincidunt id
augue quis hendrerit. Praesent venenatis elit quis posuere gravida. Praesent
at massa a purus maximus tempus. Proin dui leo, feugiat et erat ac, tincidunt
aliquam risus. Aenean rutrum hendrerit turpis, sit amet consectetur justo porta
non. Sed auctor justo elit, sed mollis odio ullamcorper nec. Pellentesque ac
hendrerit tortor. Praesent quis viverra dui, sit amet imperdiet magna.
Mauris iaculis maximus felis, aliquet vehicula neque sagittis nec. Duis
convallis purus enim, vel scelerisque purus dignissim eu. Donec congue sapien
a neque rhoncus, sit amet accumsan libero tincidunt. Proin vitae placerat urna.
Donec dolor sapien, fringilla sed semper sit amet, sollicitudin sit amet orci.
Mauris maximus convallis vehicula. Aliquam urna ipsum, fermentum ac iaculis vel,
blandit eget lorem. Sed enim ante, sodales a diam in, convallis interdum quam.
Duis non urna risus. Proin ac neque at risus ullamcorper mattis eu vel nunc.
Proin et ipsum euismod, ullamcorper justo et, imperdiet est. Curabitur quis
arcu faucibus, bibendum nisl nec, hendrerit sapien. Curabitur vitae ante risus.
Praesent eget sagittis tortor.
Mauris aliquam nec nibh eu congue. Nullam congue auctor vestibulum. Donec
posuere sapien nec massa efficitur tincidunt. Vestibulum ante ipsum primis in
faucibus orci luctus et ultrices posuere cubilia curae; Proin molestie, nisl
in tincidunt condimentum, ante metus fermentum felis, ac molestie lacus dui vel
dolor. Donec ornare laoreet posuere. Etiam id tincidunt ante. Maecenas semper
diam ac tortor facilisis egestas. Nam eu bibendum nisl. Integer tempor nisl nec
ex consectetur, quis lobortis enim finibus. Sed ac erat posuere, fermentum metus
sed, suscipit nisl.