1notcurses-demo(1)                                            notcurses-demo(1)
2
3
4

NAME

6       notcurses-demo - Show off some notcurses features
7

SYNOPSIS

9       notcurses-demo [-h|--help] [-p path] [-d delaymult]   [-l loglevel] [-f
10       renderfile] [-J jsonfile] [-m margins] [-V|--version] [-ikc] demospec
11

DESCRIPTION

13       notcurses-demo demonstrates the capabilities of the notcurses  library.
14       It  can  be run in any terminal emulator or console with a correct ter‐
15       minfo(5) database, but is at is best in a 24bpp TrueColor RGB  environ‐
16       ment.  If notcurses-demo seems to generate garbage, something is likely
17       configured in a way that is going to prevent notcurses from working  in
18       other applications.
19
20       The demonstrations include (see NOTES below):
21
22       · (a)nimate—explore cycles within Unicode
23
24       · (b)oxes—pulsating boxes with a transparent center
25
26       · (c)hunli—the strongest woman in the world
27
28       · (d)ragon—the Harter-Heighway dragon curve
29
30       · (e)agle—they took some time off my life, back in the day
31
32       · (f)allin'—the screen falls apart under heavy blows
33
34       · (g)rid—a gradient of color lain atop a great grid
35
36       · (h)ighcon—high contrast text atop various colors
37
38       · (i)ntro—a setting of tone
39
40       · (j)ungle—low-bandwidth color cycling reveals ancient ruins
41
42       · (k)eller—the miracle of sight, and painting with Braille
43
44       · (l)uigi—a dashing Apennine plumber in a world of fire
45
46       · (m)ojibake—today's fresh catch of emoji (market price)
47
48       · (n)ormal—a normal map of a friend, with effects
49
50       · (o)utro—a message of hope from the library's author
51
52       · (q)rcode—quick response codes (from ISO/IEC 18004:2015)
53
54       · (r)eel—demonstration of the ncreel high-level widget
55
56       · (s)liders—a missing-piece puzzle made up of colorful blocks
57
58       · (t)rans—an exploration of various transparencies
59
60       · (u)niblocks—a series of blocks detailing Unicode pages
61
62       · (v)iew—images and a video are rendered as text
63
64       · (w)hiteout—a great Nothing slowly robs the world of color
65
66       · (x)ray—stimulate a logo with energy
67
68       · (y)ield—the best laid schemes o' mice an'men gang aft agley
69
70       · (z)oo—see the marvelous widgets of the notcurses world
71
72       At  any  time,  press 'q' to quit.  The demo is best run in at least an
73       80x45 terminal, and will refuse to run in anything smaller than 80x24.
74

OPTIONS

76       -p path: Look in the specified path for data files.
77
78       -d delaymult: Apply a non-negative rational multiplier to the  standard
79       delay of 1s.
80
81       -l  loglevel:  Log everything (log level 8) or nothing (log level 0) to
82       stderr.
83
84       -f renderfile: Render each frame  to  renderfile  in  addition  to  the
85       screen.
86
87       -J jsonfile: Emit JSON summary of run to jsonfile.
88
89       -m margins: Define rendering margins (see below).
90
91       -k:  Inhibit  use  of  the alternate screen.  Necessary if you want the
92       output left on your terminal after the program exits.
93
94       -c: Do not attempt to seed the PRNG.  This is useful when benchmarking.
95
96       -i: Continue after a failing demo.
97
98       -h|--help: Print a usage message, and exit with success.
99
100       -V|--version: Print the program name and version, and  exit  with  suc‐
101       cess.
102
103       demospec:  Select  which  demos  to run, and what order to run them in.
104       The default is ixezcytnhdmbkgarwuvlsfjqo.  See  above  for  a  list  of
105       demos.
106
107       Default  margins  are all 0, and thus the full screen will be rendered.
108       Using -m, margins can be supplied.  Provide a single number to set  all
109       four  margins to the same value, or four comma-delimited values for the
110       top, right, bottom, and left margins  respectively.   Negative  margins
111       are illegal.
112

NOTES

114       Proper display requires:
115
116       · A  terminal  advertising  the rgb terminfo(5) capability, or that the
117         environment variable COLORTERM is defined to 24bit (and that the ter‐
118         minal honors RGB escapes),
119
120       · A monospaced font, and
121
122       · Good Unicode support in your libc, font, and terminal emulator.
123
124       The Debian version of notcurses-demo leaves out certain multimedia con‐
125       sidered non-free under the Debian Free Software Guidelines.  As  a  re‐
126       sult,  the chunli, eagle, jungle, keller, luigi, and view demos are un‐
127       available through the Debian package.  This applies to any distro which
128       uses the DFSG source tarball, including Ubuntu and Fedora.
129
130       If  notcurses  is  built without multimedia support, the chunli, eagle,
131       keller, outro, view, xray, and yield demos will be partially or  wholly
132       unavailable.   If  notcurses  is built without libqrcodegen, the qrcode
133       demo will be unavailable.
134
135       If notcurses-demo is run in a terminal lacking the can_change  terminfo
136       capability, the jungle demo will be skipped.
137
138       The  following  keypresses  are recognized (and are also available from
139       the menu):
140
141       · Ctrl-U: Toggle the help screen.
142
143       · H: Toggle the HUD.  The HUD shows the most recent and current  demos'
144         runtime  and  number of rendered frames.  It can be grabbed and moved
145         with the mouse.
146
147       · P: Toggle the FPS graph.
148
149       · Ctrl-R: Restart the demo.
150
151       · Alt-d: Toggle a window with debugging information.
152
153       · q: Quit.
154
155       Benchmarking should be performed using -c to get  a  well-defined  PRNG
156       seed.  JSON output via -J will probably be useful.
157

BUGS

159       Certain  demos (especially mojibake and uniblocks) heavily exercise the
160       font rendering stack.  If your font or rendering  engine  draws  glyphs
161       with  width  different  from  that  reported  by the standard library's
162       wcwidth(3), Notcurses will have an incorrect notion  of  cursor  place‐
163       ment, leading to undesirable behavior.
164
166       · All code and design copyright Nick Black <nickblack@linux.com>.
167
168       · Images  from  Street  Fighter  II  and Mega Man 2 copyright Capcom of
169         America.
170
171       · Images from Super Mario Bros.  copyright Nintendo of America.
172
173       · Images from Ninja Gaiden copyright Koei Tecmo America.
174
175       · Images from Final Fantasy copyright Square Enix Co Ltd.
176
177       · "Jungle with Rain" copyright Mark Ferrari/Living Worlds.
178

SEE ALSO

180       notcurses(3), ncurses(3NCURSES), wcwidth(3), terminfo(5)
181

AUTHORS

183       nick black <nickblack@linux.com>.
184
185
186
187                                    v2.2.3                   notcurses-demo(1)
Impressum