nick black
0a86ce83cc
[bitmaps] add sprixel_invalidate #1449
2021-03-24 05:22:15 -04:00
nick black
af91bfb015
[eagle] don't run pixel background
2021-03-24 05:22:15 -04:00
nick black
836f356305
[debug] setab, not setbf
2021-03-24 05:22:15 -04:00
nick black
3e4709e595
[intro] add natasha orca when we have pixel support #1423
2021-03-24 05:22:15 -04:00
nick black
be7f2d5d32
[yield] bring it back up
2021-03-23 22:36:17 -04:00
nick black
b2948a5581
[pixel] pass tacache into plane_blit_pixel from constructors #1388
2021-03-23 00:37:13 -04:00
nick black
4fa0857311
[normal] prep for NCBLIT_PIXEL
2021-03-22 05:52:35 -04:00
nick black
c0a1be59ce
[fallin] not yet ready for NCBLIT_PIXEL
2021-03-20 15:35:02 -04:00
nick black
51409439f6
[fallin] put background image on first row
2021-03-20 10:59:33 -04:00
nick black
d6cb986d72
[pixel] multiplex sprixel_cell_wipe()
2021-03-20 10:59:33 -04:00
nick black
53a85871fe
[pixel] detach old sprite when blitting onto existing plane
2021-03-20 10:59:33 -04:00
nick black
4f876cf962
[demo] always place HUD in the right place
2021-03-20 10:59:33 -04:00
nick black
7b0e6f432c
[yield] render background into a plane #1425
2021-03-20 10:59:33 -04:00
nick black
7e03705ffb
[fallin] render background to new plane #1425
2021-03-20 10:59:33 -04:00
nick black
1b095b1bae
[yield] render to new plane each iteration #1425
2021-03-20 10:59:33 -04:00
nick black
7426cc8067
fallin' demo: use NCBLIT_PIXEL #1425
2021-03-20 10:59:33 -04:00
nick black
8ea2cb9c18
yield demo: use NCBLIT_PIXEL if available #1425
2021-03-20 10:59:33 -04:00
nick black
5d49892c69
[keller] suffix blitter name with 'blitter'
2021-03-16 18:02:05 -04:00
nick black
a4c8aee8bd
[keller] run braille first now that pixel's in the mix
2021-03-16 00:32:45 -04:00
nick black
e2885b5a68
nctree: implement NCKEY_END
2021-03-11 23:19:07 -05:00
nick black
64634143ca
keller: render to new planes
2021-03-11 22:44:23 -05:00
nick black
04a7736112
demo: move fpsgraph/hud to another pile when hidden #1402
2021-03-11 22:36:43 -05:00
nick black
7dfb366cbc
notcurses-demo: drop 'i' argument
2021-03-11 22:28:30 -05:00
nick black
3574e3ec2f
keller: use NCSCALE_SCALE for NCBLIT_PIXEL
2021-03-11 18:46:52 -05:00
nick black
c882a44ac5
CMake: CMAKE_REQUIRED_INCLUDES everywhere #1387
2021-03-08 08:32:11 -03:00
nick black
17e92a69f9
keller: work around damage check for pixel #1381
2021-03-08 05:02:15 -05:00
nick black
228b9edf09
ncneofetch: adapt to screen width for neofetch-style logos
2021-03-07 21:25:57 -05:00
nick black
ef5a3200de
pull pixelon/pixeloff out of tinfo struct
2021-03-07 19:50:55 -05:00
nick black
cdf8685154
keller: don't use NCSCALE_STRETCH with NCBLIT_PIXEL...yet #1381
2021-03-07 14:16:16 -05:00
nick black
60ff6a73d6
sliders: simplify, kill compiler warning
2021-03-03 23:33:33 -05:00
nick black
a9c257465a
keller demo: separate legend lines
2021-03-01 18:17:35 -05:00
nick black
a759f9ba0b
keller: always begin at row 1
2021-02-28 13:19:19 -05:00
nick black
1b2aedff67
keller: add pixel iteration #1281
2021-02-28 13:03:35 -05:00
nick black
4533d42fa0
sixel_blit: use '$' to return carriage #200
2021-02-27 19:03:42 -05:00
nick black
7aacc7b40e
demo: prep for NCOPTIONS_VERIFY_SIXEL #200
2021-02-27 19:03:42 -05:00
nick black
cd10321819
zoo: clean up central plane #1353
2021-02-21 16:26:32 -05:00
nick black
ed3075414e
zoo demo: use nul glyph as base cell #1353
2021-02-21 16:22:54 -05:00
nick black
1b1e0b88be
ncplane_qrcode: drop blitter argument, update docs
2021-02-15 03:34:14 -05:00
nick black
6e9b23f06f
demo: account for raster time in TheoFPS calculation
2021-02-14 20:01:10 -05:00
nick black
50c6240efa
yield: print label immediately
2021-02-11 21:37:14 -05:00
nick black
c023ccf4d6
yield: transparent background for label
2021-02-11 21:10:36 -05:00
nick black
f6c12aedae
mojibake: add a few unicode 13.1 emoji
2021-02-07 21:39:24 -05:00
nick black
07db12f5e0
keller: always use white for text #1331
2021-02-05 02:44:55 -05:00
nick black
cd33073b16
jungle: work on all geometries
2021-02-03 01:05:34 -05:00
nick black
94172303be
implement raster timing stats #1324
2021-02-02 23:02:43 -05:00
nick black
ddc524420d
jungle demo: more precise timing
2021-02-02 22:57:21 -05:00
nick black
43dd0440f7
add raster timing stats #1324
2021-02-02 21:59:29 -05:00
nick black
0f5c76d070
intro: use actual inverted blocks
2021-02-02 00:57:58 -05:00
nick black
740093fbb3
ffmpeg: kill per-ncviusal subtitle context memory leak
2021-01-22 01:52:39 -05:00
nick black
b0301c834d
git mv TERMS.md TERMINALS.md
2021-01-21 02:37:46 -05:00
nick black
65231aefb2
fix linking for USE_MULTIMEDIA=none
2021-01-21 00:46:19 -05:00
nick black
87f2e03510
animate: trim flop over the top
2021-01-21 00:20:49 -05:00
nick black
73834e392c
animate: clean up after ourselves with original color #1310
2021-01-20 22:52:00 -05:00
nick black
dd210871d6
Reorder demos slightly
...
'dragon' looks much cooler when it has residue from the
prior demo still on the screen. 'yield' won't do, though,
as it's a graphic (which, devoid of color, looks like
nothing). move it after 'highcontrast'. move 'normal' up
after 'trans' so as never to present too much reading
to the user at once. users hate reading =[. this also
makes 'mojibake' look cooler while we're at it.
Signed-off-by: nick black <dankamongmen@gmail.com>
2021-01-20 02:24:49 -05:00
Nick Black
9112185657
Split up notcurses/notcurses-core ( #1297 )
...
Extract `libnotcurses-core` from `libnotcurses`. The former contains everything except multimedia code. The latter contains multimedia stuff (a wrapper around FFmpeg or OIIO). If built with `-DUSE_MULTIMEDIA=none`, there will not be any `libnotcurses.so` generated. `libnotcurses.so` uses library constructors/destructors to insert its implementation into the `ncvisual` stack at runtime. Users linking `-lnotcurses` will get the full implementation; users linking `-lnotcurses-core` only will get the stack less multimedia code.
The upshot of this is that someone can compile/install only `libnotcurses-core`, and a program linked against it will work just fine. This eliminates the need to install the full (large) dependency stack of the multimedia code unless necessary. This will hopefully be useful for e.g. installers etc. Closes #339 .
2021-01-18 14:10:04 -05:00
nick black
ccf124ddb9
clean up TERMS.md #1295
2021-01-16 17:54:22 -05:00
nick black
14c64a2aa2
uniblock demo: set pbar background to 0
2021-01-15 06:06:42 -05:00
nick black
99ef8a02e5
animate demo: cycle through glyphs #1263
2021-01-15 04:45:04 -05:00
nick black
e4ee96e698
animate demo: cycle through sequences #1263
2021-01-15 04:20:49 -05:00
nick black
0139f25a9c
animate demo: kill outer loop #1263
2021-01-15 04:06:00 -05:00
nick black
a5c0eedec4
animate demo: chew up the end #1263
2021-01-15 03:31:52 -05:00
nick black
22ecc09dc0
fully accurate determine_totalmoves #1263
2021-01-15 03:31:52 -05:00
nick black
57044946ad
animate demo: adaptive timing #1263
2021-01-15 03:31:52 -05:00
nick black
40a3c106bf
animate demo: use full length of string #1263
2021-01-15 03:31:52 -05:00
nick black
432de7a8ce
animate demo: use background colors #1263
2021-01-15 03:31:52 -05:00
nick black
1ff04ee7d5
animate demo: clean up end
2021-01-15 03:31:52 -05:00
nick black
17e015e9a0
add all current cycles to animate, kill geom PoC
2021-01-15 03:31:52 -05:00
nick black
5b1602606e
animate demo: get the movement completely working
2021-01-15 03:31:52 -05:00
nick black
9acf5e6a2e
animate demo: outer circle / closing logic
2021-01-15 03:31:52 -05:00
nick black
80a3727b83
animate demo: begin work on pathfinder
2021-01-15 03:31:52 -05:00
nick black
655cafa69d
plan out animate demo
2021-01-15 03:31:52 -05:00
nick black
a6ddb6ed2e
plot out animate demo #1267
2021-01-15 03:31:52 -05:00
nick black
5dfd0f94eb
start replacing allglyph with animate #1263
2021-01-15 03:31:52 -05:00
nick black
fa3c17abb9
freebsd: don't use sextants, no libc support #1287
2021-01-13 05:49:57 -05:00
nick black
222d5e722d
uniblocks: avoid some problematic glyphs #1285
2021-01-12 05:07:45 -05:00
nick black
8283adc28f
Introduce src/compat/ for all bins
...
I've created the new files src/compat/compat.{hc}. These
are available to all binaries by adding src to the include
directories, and src/compat/compat.c to the sources. Several
functions are implemented here which one or more target
operating systems are missing, right now all related to time.
This includes clock_nanosleep(), which is missing on OS X and
DragonFly BSD. Eliminate the other three definitions of
timespec_to_ns() and friends. Standardize on NANOSECS_IN_SEC
rather than the more opaque GIG. Progress on #1121 .
2021-01-09 23:25:25 -05:00
nick black
4fc099f2e9
reel/plot/menu: properly warn on bad flags
2021-01-08 05:13:31 -05:00
nick black
6ff95dd24a
notcurses-demo: print usage on invalid spec
2021-01-03 19:47:21 -05:00
nick black
478d7cb514
update channels in ncdirect palindex #1275
2021-01-02 21:11:21 -05:00
nick black
e37b466eea
notcurses-demo: support 'V' for version out #1266
2020-12-31 02:28:47 -05:00
nick black
0bcb107ae6
fallin: don't carry cell across planes #1265
2020-12-31 00:50:10 -05:00
nick black
f1253560ad
ncdirect: set_ on rgb functions #1261
2020-12-28 13:52:58 -05:00
nick black
8824495924
uniblock demo: properly set progress
2020-12-28 01:58:54 -05:00
nick black
b0c6f697e0
yield: render in pfill loop so we never look locked up
2020-12-28 00:54:44 -05:00
nick black
68f5ea711e
demo: move HUD over by 2, don't block legend
2020-12-28 00:46:30 -05:00
nick black
f22ddfa72f
progbar: don't overrun on 1.0 #1257
2020-12-27 21:07:33 -05:00
nick black
91e932ed26
ncvisual_render: handle NCSCALE_NONE_HIRES #1250
2020-12-25 23:28:50 -05:00
nick black
56d94e9392
intro: add a bar on top to match bottom
2020-12-25 23:28:50 -05:00
nick black
dd1cdc40d5
add NCSCALE_NONE_HIRES, NCSCALE_SCALE_HIRES #1250
2020-12-25 23:28:50 -05:00
nick black
a4bad2318f
dragon: don't force 3x2
2020-12-25 19:49:27 -05:00
nick black
4d8efcab82
Progress towards NCBLIT_3x2 by default
...
Add a new member 'sextants' to the terminfo cache (both
notcurses and ncvisual contain one of these, and both
initialize it the same way -- interrogate_terminfo()).
Add a new function, 'notcurses_media_defblitter()', and
deprecate 'ncvisual_default_blitter()' (the latter didn't
receive enough information to return NCBLIT_3x2). Update
all callers. Add new *internal* function rgba_default_blitter(),
so this logic can be freely changed in the future. If
sextants are available, and we're scaling, return NCBLIT_3x2.
Once we detect sextant availability, we'll have sexblitter
as a default -- stay tuned! #1114
2020-12-25 17:05:31 -05:00
nick black
4e5dbfd2b9
render: use hpa in place of cuf #1245
2020-12-25 00:19:25 -05:00
nick black
fd146db050
demo: reject extra command line arguments
2020-12-18 18:52:11 -05:00
nick black
1798e061e1
fallin': drop unused nccell c #1231
2020-12-18 01:31:58 -05:00
nick black
28b1a80433
ncplane_at_yx_cell: work directly with cell_duplicate() #1231
2020-12-18 01:19:28 -05:00
nick black
3226652936
reel demo: kill tablets on demo_render() exit #1225
2020-12-17 13:47:02 -05:00
Nick Black
1bdd2d0555
Progress bar polishing ( #1219 )
...
Progress bars now support four 32-bit channels in ncprogbar_options, and uses them to color a gradient. The redraw procedure has been changed from O(n) to O(1). ASCII progress bars have been repaired. Closes #1213 .
2020-12-16 16:48:10 -05:00
nick black
243b8bd4d4
uniblock: scrub all legend residue
2020-12-16 07:23:48 -05:00
nick black
f2cbfff8d9
demo: remove meaningless average r%/w%
2020-12-15 05:11:50 -05:00
nick black
8ec6d2e6fc
progbars: full resolution, fix vert inversion #1210
2020-12-15 04:23:37 -05:00
nick black
2ff20108c8
force LTR override on UC_BIDI_AL #1204
2020-12-15 03:26:14 -05:00
nick black
1bbbdd9dc0
annotate many functions with ((nonnull))
2020-12-14 22:24:37 -05:00
nick black
f7d55e8fa8
allglyph demo: add two fat vertical progress bars
2020-12-14 15:39:57 -05:00
nick black
ee9ed23e04
uniblock: fixed-width progress bar to better show off smooth fill #1209
2020-12-14 13:43:57 -05:00
nick black
d5574cab9a
restructure progbar logic to prep for highres #1209
2020-12-13 11:34:19 -05:00
nick black
4984903d61
intro: better use of flipmode bar
2020-12-13 11:00:56 -05:00
nick black
ca547bc521
progbar: get vertical progbars working #1209
2020-12-13 10:56:34 -05:00
nick black
cd3fd17174
uniblock demo: add a progress bar #1151
2020-12-13 10:26:51 -05:00
nick black
be3bd474f6
model.dot: simplify
2020-12-13 06:01:12 -05:00
nick black
a2ab467219
whiteout demo: fix up brace extensions
2020-12-13 02:03:52 -05:00
nick black
fd2acde1b1
rename cell->nccell, keep alias #1200
2020-12-13 00:49:37 -05:00
nick black
e66f1a03ad
keller: give each phase a full demodelay
2020-12-12 22:51:07 -05:00
nick black
1c673a57af
assume default 80x24 when ioctl() fails #1197
2020-12-11 19:52:46 -05:00
nick black
876c5a91a1
notcurses: remove unused truecols field
2020-12-11 19:44:40 -05:00
nick black
22790943bc
demo: change plot to 2Hz to avoid gaps
2020-12-09 00:30:09 -05:00
nick black
8fe3e17b54
boxdemo: rotate colors through at finer granularity #1186
2020-12-08 10:12:25 -05:00
nick black
c95bb1ad48
demo: index summary from 1
2020-12-08 01:27:34 -05:00
nick black
7140d1349c
demo: fix demo_getc() to use MAXSLEEP (12.5ms)
2020-12-06 12:28:22 -05:00
nick black
4cf4a4ce0b
egcpool: fix cell_egc_idx() math #1179
2020-12-06 11:55:45 -05:00
nick black
03c95b2b14
demo: minimal-width debug plane
2020-12-06 07:51:08 -05:00
nick black
16320792c2
demo: turn on NCPLOT_OPTION_PRINTSAMPLE #1183
2020-12-06 06:40:39 -05:00
nick black
14fa544433
add NCPLOT_OPTION_PRINTSAMPLE #1183
2020-12-06 06:33:54 -05:00
nick black
5257232f2f
plot: use T-type intervalbase #1184
2020-12-06 06:07:18 -05:00
nick black
e46d9e2a2b
fpsgraph_stop: don't render
2020-12-06 03:10:11 -05:00
nick black
9b7238fdc9
demo: preserve plot/hud/etc. on shutdown
...
If we're using -k to inhibit use of the alternate screen
for notcurses-demo, we want to see what was on the screen
when we quit. If we're actually quitting, don't destroy
these components manually, so they remain visible.
2020-12-06 03:06:02 -05:00
nick black
a7f59e4fab
plots: use pool_blit_direct() #1182
...
Use pool_blit_direct() instead of ncplane_putwc_yx() in
redraw_plot(). This eliminates use of rtl_egc() and wcwidth()
on the EGCs used in plots, sidestepping Debian's -1 wcwidth
for sextants (in the same fashion blitting does) and slightly
speeding up plot drawing. At a plot rate of 10Hz, notcurses-demo
is now faster than it used to be at 1Hz, so that's nice.
2020-12-06 02:53:13 -05:00
nick black
73d9668d13
de-picklize eagles with help from k. sarkozy
2020-12-05 22:42:00 -05:00
nick black
8091e5c7e0
demo: plot by decisecond instead of second #1081
2020-12-05 03:37:22 -05:00
nick black
2cb8295146
demo: use braille for plot, looks great
2020-12-05 02:48:38 -05:00
nick black
66b911de38
move wcwidth()==-1 emoji to end of mojibake
2020-12-05 01:42:38 -05:00
nick black
35bd9aaae0
whiteout demo: change timing to allow for analysis
2020-12-04 18:09:52 -05:00
nick black
192c583aad
try forcing LC_CTYPE, C.UTF-8 if not inhibited #1150
2020-11-30 21:44:37 -05:00
nick black
47d5347f01
run mojibake after normal; it looks cool
2020-11-27 21:07:23 -05:00
nick black
2e78ae1c5e
update logo to notcurses II xray #1144
2020-11-27 20:55:38 -05:00
nick black
3ce7d36eed
eagle demo: explicitly request NCBLIT_2x2
2020-11-24 02:53:54 -05:00
nick black
61baabe9a1
eagle, HUD: use default blitter
2020-11-17 23:42:36 -05:00
nick black
f676cd34a8
convert remaining ncplane_new -> ncplane_create #1115
2020-11-17 23:42:36 -05:00
nick black
3e209f3539
eagle, luigi, sliders, outro: ncplane_create #1115
2020-11-17 23:42:36 -05:00
nick black
e8224dfa35
xray: ncplane_new -> ncplane_create #1115
2020-11-17 23:42:36 -05:00
nick black
eef6df8c0a
death to horiz #1115
2020-11-17 23:42:36 -05:00
nick black
c9d6809014
view: replay current media on blitter change #1111
2020-11-12 14:40:22 -05:00
nick black
61aa96fd8a
eagle: 3x2->2x2 to match cowardly defaults
2020-11-02 16:11:18 -05:00
nick black
16bffab27a
eagle demo: use NCBLIT_3x2
2020-11-01 00:16:04 -04:00
nick black
5f91990ed1
dragon demo: use NCBLIT_3x2
2020-11-01 00:13:53 -04:00
nick black
13a9b38390
demo: strip some explicit NCBLIT_2x2s, use NCBLIT_DEFAULT
2020-10-31 17:15:20 -04:00
nick black
f9b4993b07
notcurses-demo: implement debug window #1013
2020-10-29 19:06:06 -04:00
nick black
957d15410c
notcurses-demo: draw debug window when relevant #1013
2020-10-29 19:06:06 -04:00
nick black
132c08e18c
demo: add alt+d 'debug' menu option #1013
2020-10-29 19:06:06 -04:00
nick black
63abad4569
keller: use only meaningful blitters
2020-10-29 18:15:42 -04:00
nick black
77733b35d2
keller demo: also cycle warmech
2020-10-29 18:15:42 -04:00