notcurses-demo(1)
π notcurses-demo β Show off some Notcurses features π
okay bestie, welcome to the actual manual page for notcurses-demo, straight out of the Notcurses house π β¨ this is a (1) command page, so it's a program you run in your shell, not some library function. buckle up π
β¨ SYNOPSIS β¨
notcurses-demo [-h|--help] [-p path] [-d delaymult] [-l loglevel] [-J
jsonfile] [-m margins] [-V|--version] [-kc] demospec
πΈ DESCRIPTION πΈ
so notcurses-demo is literally just a flex π
β it demonstrates the capabilities of the Notcurses library. it can run in any terminal emulator or console that has a correct terminfo(5) database, but ngl it's at its absolute best in a 24bpp TrueColor RGB environment. and bestie, listen: if notcurses-demo seems to be generating garbage, something is probably configured in a way that's going to prevent Notcurses from working in other applications too. that's your vibe check failing fr fr π
here's the demo lineup (peep the NOTES below too):
- (a)nimate β explore cycles within Unicode π
- (b)oxes β pulsating boxes with a transparent center π¦
- (c)hunli β the strongest woman in the world πͺ
- (d)ragon β the Harter-Heighway dragon curve π
- (e)agle β they took some time off my life, back in the day π¦
- (f)ission β the screen falls apart under heavy blows π₯
- (g)rid β a gradient of color lain atop a great grid π
- (h)ighcon β high contrast text atop various colors π¨
- (i)ntro β a setting of tone π¬
- (j)ungle β low-bandwidth color cycling reveals ancient ruins π΄
- (k)eller β the miracle of sight, and painting with Braille ποΈ
- (l)uigi β a dashing Apennine plumber in a world of fire π₯
- (m)ojibake β today's fresh catch of emoji (market price) π
- (n)ormal β a normal map of a friend, with effects π«Ά
- (o)utro β a message of hope from the library's author π
- (q)rcode β quick response codes (from ISO/IEC 18004:2015) π±
- (r)eel β demonstration of the
ncreelhigh-level widget π‘ - (s)liders β a missing-piece puzzle made up of colorful blocks π§©
- (t)rans β an exploration of various transparencies πͺ
- (u)niblocks β a series of blocks detailing Unicode pages π§±
- (v)iew β images and a video are rendered as text ποΈ
- (w)hiteout β a great Nothing slowly robs the world of color βͺ
- (x)ray β stimulate a logo with energy β‘
- (y)ield β the best laid schemes o' mice an'men gang aft agley π
- (z)oo β see the marvelous widgets of the Notcurses world π¦
at any time, press q to quit. the demo is best run in at least an 80x45 terminal, and it will straight-up refuse to run in anything smaller than 80x24. no cap. π«
π OPTIONS π
-ppath β Look in the specified path for data files. ποΈ-ddelaymult β Apply a non-negative rational multiplier to the standard delay of 1s. β±οΈ-lloglevel β Log between everything (loglevel 7) and nothing (loglevel 0) to stderr. π-frenderfile β Render each frame to renderfile in addition to the screen. π₯-Jjsonfile β Emit JSON summary of run to jsonfile. π§Ύ-mmargins β Define rendering margins (see below). π-kβ Inhibit use of the alternate screen. Necessary if you want the output left on your terminal after the program exits. π₯οΈ-cβ Do not attempt to seed the PRNG. This is useful when benchmarking. π²-h|--helpβ Print a usage message, and exit with success. π-V|--versionβ Print the program name and version, and exit with success. βΉοΈ- demospec β Select which demos to run, and what order to run them in. The default is
ixetunchdmbkywjgarvlsfqzo. See above for a list of demos. π
default margins are all 0, and thus the full screen will be rendered. using -m, margins can be supplied. provide a single number to set all four margins to the same value, or four comma-delimited values for the top, right, bottom, and left margins respectively. negative margins are illegal. π«
π¦ NOTES π¦
proper display requires:
- a terminal advertising the
rgbterminfo(5)capability, or that the environment variableCOLORTERMis defined to24bit(and that the terminal honors RGB escapes), - a monospaced font, and
- good Unicode support in your libc, font, and terminal emulator. π
the Debian version of notcurses-demo leaves out certain multimedia considered non-free under the Debian Free Software Guidelines. as a result, the chunli, eagle, jungle, keller, luigi, and view demos are unavailable through the Debian package. this applies to any distro which uses the DFSG source tarball, including Ubuntu and Fedora. π
if Notcurses is built without multimedia support, the chunli, eagle, keller, outro, view, xray, and yield demos will be partially or wholly unavailable. if Notcurses is built without libqrcodegen, the qrcode demo will be unavailable. π§
if notcurses-demo is run in a terminal lacking the can_change terminfo capability, the jungle demo will be skipped. π
the following keypresses are recognized (and are also available from the menu):
- Ctrl+U: Toggle the help screen. π
- H: Toggle the HUD. The HUD shows the most recent and current demos' runtime and number of rendered frames. It can be grabbed and moved with the mouse. π±οΈ
- P: Toggle the FPS graph. π
- Ctrl+R: Restart the demo. π
- Ctrl+L: Redraw the screen. ποΈ
- Alt+d: Toggle a window with debugging information. π
- q: Quit. π
benchmarking should be performed using-cto get a well-defined PRNG seed. JSON output via-Jwill probably be useful. π
π©Ή BUGS π©Ή
certain demos (especially mojibake and uniblocks) heavily exercise the font rendering stack. if your font or rendering engine draws glyphs with width different from that reported by the standard library's wcwidth(3), Notcurses will have an incorrect notion of cursor placement, leading to undesirable behavior. π lowkey a whole mess.
π COPYRIGHT π
- all code and design copyright Nick Black
nickblack@linux.com. βοΈ - Images from Street Fighter II and Mega Man 2 copyright Capcom of America. π₯
- Images from Super Mario Bros. copyright Nintendo of America. π
- Images from Ninja Gaiden copyright Koei Tecmo America. π₯·
- Images from Final Fantasy copyright Square Enix Co Ltd. βοΈ
- Images from Back to the Future copyright Universal Studios and U-Drive Joint Venture. π
- "Jungle with Rain" copyright Mark Ferrari/Living Worlds. π§οΈ
π SEE ALSO π
notcurses(3), ncurses(3NCURSES), wcwidth(3), terminfo(5)
π«Ά AUTHORS π«Ά
nick black nickblack@linux.com
that's the whole page bestie, we ate and left no crumbs π β¨ this was the notcurses-demo(1) manual, version v3.0.17, and it's genuinely iconic β go run it in a fat TrueColor terminal and stan the Notcurses girlies πππ¦ periodt.
π¦ where this page comes from
- alpine 3.24: notcurses-doc 3.0.17-r0 Β· Apache-2.0
- ubuntu resolute: notcurses-bin 3.0.17+dfsg-3 Β· Apache-2.0
- ubuntu stonking: notcurses-bin 3.0.17+dfsg-3 Β· Apache-2.0
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms