Commit Graph

571 Commits (921c2ce0337baba79f8569070966254cf760c320)

Author SHA1 Message Date
nick black 5a72383cb0
reject sprixels larger than plane, add unit test #1572 3 years ago
nick black cc73811dd4
sprixelated planes may be resized after all #1572 3 years ago
nick black cc657bbe35
notcurses_plane(3): document sprixelated effects #1585 3 years ago
nick black 23ef5313e3
document pixel blitting vis-a-vis planes #1585 #1572 3 years ago
nick black 68db5d5df6
notcurses(3) add paragraph on visuals #1585 3 years ago
Nick Black c8680255be
palette256 -> ncpalette #1570 (#1573)
everything prefixed with palette256 is now prefixed with ncpalette
3 years ago
nick black f4aa419a31
add notcurses_canhalfblock()/notcurses_canquadrant() #1575 3 years ago
nick black 6c7b40debf
add stats for sprixel emissions/elisions #1563 3 years ago
nick black d5b58d9f58
v2.2.8 3 years ago
nick black eefc4fb91f
v2.2.7 3 years ago
nick black 6b7195a387 document new function ncvisual_inflate() #1546 3 years ago
Nick Black 8c6cd6a630
Further work on opacity optimizations (#1549)
* [bitmap] on move, clear old OPAQUE cells #1527
* update ncvisual_blitter_geom() documentation #1547
* replace some ncvisual_blitter_geom with NCVISUAL_OPTION_VERALIGNED
* [normal] replace ncvisual_blitter_geom with NCVISUAL_OPTION_VERALIGNED
* [intro] use ncvisual_blitter_geom() correctly #1547
* ncvisual_blitter_geom: only set *blitter on success
3 years ago
nick black 7ad5219fa2
convert another crop of cell_ to nccell_ #1532 3 years ago
Nick Black e591ec2e98
cell -> nccell throughout much of remaining API (#1535)
cell -> nccell throughout much of the API #1532
3 years ago
nick black e017dcba89
v2.2.6 3 years ago
nick black 0c566cd74a [ncvisual] pipe transcolor through #1518 3 years ago
nick black ff76dba6ed
cell_strdup -> nccell_strdup 3 years ago
nick black 0fc5f7835d
[docs] cell_release -> nccell_release 3 years ago
nick black cf3a6317aa export ncdirect_stream() 3 years ago
nick black f294c6bb0b
add ncplane_pixelgeom() #1507 3 years ago
nick black 05082fc277
ncplane_as_rgba(), returns pixel geometry along with bitmap #1508 3 years ago
nick black 9546b7e914
move logo to doc/ from data/ to keep install simple 3 years ago
nick black b6a9b59f9d notcurses_plane.3: add BUGS about bitmap graphics and ncplane_at_yx() 3 years ago
nick black b92991e57b
[visual] allow NCBLIT_PIXEL in ascii mode 3 years ago
nick black 57114c8005
[bitmaps] remove redundant PixelWipeBlocks test 3 years ago
nick black c87992c452
[ncvisual] fix NCVISUAL_OPTION_VERALIGNED definition 3 years ago
nick black 50df69ab31 [planes] implement MARGINALIZED in ncplane_create() #1472 3 years ago
nick black 78c8e70933 [planes] add NCPLANE_OPTION_MARGINALIZED #1472 3 years ago
nick black 6105913d06 [planes] add NCPLANE_OPTION_VERALIGNED #1465 3 years ago
nick black f714337fe1 [visual] NCVISUAL_OPTION_HORALIGNED for cell blitters #1443 3 years ago
nick black 033ae7f93e [capabilities] eradicate notcurses_canpixel() 3 years ago
nick black 828cce634a [capabilites] remove redundant notcurses_canpixel() 3 years ago
MasFlam c677a4fd8a
Add the nctabbed widget (#1431)
Tabs for the people!

fixes #986
3 years ago
nick black a27fc0e3f7 notcurses_fade.3: break up typedef across lines 3 years ago
nick black 2cf0f06562 [visual] add OPTION_HORALIGNED #1443 3 years ago
nick black 3c0a765599
notcurses_render.3: render a pile, not planes 3 years ago
nick black 33d408b4a3
[sixel] call sprite_sixel_init at proper time #1436 3 years ago
nick black 7b61822a7e
notcurses.3.md: add notcurses_tree reference 3 years ago
nick black a6548fbcc8 [ncvisual] refuse to blit bitmaps to standard plane 3 years ago
nick black 66e545f160
[pixel] fill out only through the plane #1391 3 years ago
nick black 70059297c0
notcurses_direct.3: add image render+raster to docs 3 years ago
nick black 04ad933a4b
ncplayer: don't try to drive four/eight #1406 3 years ago
nick black 1dabe17d84
notcurses_tree.3: update version to 2.2.3 3 years ago
nick black f35e2eb982
notcurses_visual.3: link to sixel/kitty 3 years ago
nick black bc84987af5
v2.2.3 3 years ago
nick black 49ce0d1c57
mention SIGCONT along with SIGWINCH 3 years ago
nick black 100a89291b hide cell_{b,f}channel(), cell_set_{b,f}channel() 3 years ago
nick black cd0aaf58a2 normalize blitter names 3 years ago
nick black 5b4d920646 pixel documentation 3 years ago
nick black 6c7c9be6d2 require explicit check for pixel support
Add `notcurses_check_pixel_support()` and
`ncdirect_check_pixel_support()` per #1367. Removes
NCOPTION_VERIFY_SIXEL, again per #1367. Adds
`free_terminfo_cache()`, and calls it from both
`notcurses_stop_minimal()` and `ncdirect_stop()`.
Update all documentation. Closes #1371 and #1367.
3 years ago
nick black 036d0a8697 s/NCBLIT_SIXEL/NCBLIT_PIXEL/g #1095 3 years ago
nick black aa4da3f335
nctree: drop bchannels from options 3 years ago
Nick Black e30b12a480
nctree (#1361)
The nctree widget, PoC, and unitt rs #1164.
3 years ago
nick black 2221120543 add SIGILL to documented fatal signals #1357 3 years ago
nick black c10f5a40ce
v2.2.2 3 years ago
nick black 2741b049cb
don't expose nctree in 2.2.2 3 years ago
nick black bb14694000 add nctree movement api #1164 3 years ago
nick black 3eb42d6c0c implment nctree_create()/free() #1164 3 years ago
nick black 7a698310b6 ncinput is not opaque 3 years ago
nick black 14ce0ace73 man pages: relate nctree and ncreel #1164 3 years ago
nick black 2ae618c06b add new man page notcurses_tree.3 #1164 3 years ago
nick black 1b1e0b88be
ncplane_qrcode: drop blitter argument, update docs 3 years ago
nick black be4a9154a8
v2.2.1 3 years ago
joeyt aa02cf855a fix some dank typos
Looks like the release process used a regex(?) to replace that included some
unintended targets.  Microsoft link broke in 2.2.0; CELL_ALPHA_TRANSPARENT
continually replaced since 2.0.1.
3 years ago
nick black 3cdf7160de
v2.2.0 3 years ago
nick black cff8767de7
notcurses_visual.3: fix up markdown syntax 3 years ago
nick black 6b126f4049
add notcurses_canbraille() capability test 3 years ago
nick black 2cd8b9d82e
Further reduction of our gigantic README
Extract Curses differences and adaptation sections, and
move them to doc/CURSES.md. Reference this new document
in README.md. We now have sufficiently few sections that
we can dispense with the ToC. Do so.
3 years ago
nick black 54ca2249df
v2.1.8 3 years ago
nick black b3569b6aef
Initialize Readline on demand
Eliminate NCDIRECT_OPTION_NO_READLINE (it was only introduced in
Notcurses 2.1.6). Add a new function, ncdirect_readline(). Upon
first call to this function, initialize libreadline. Destroy
libreadline in ncdirect_stop() iff we initialized it. Add
hilodirect guessing game PoC from #1325. Rename
notcurses_directmode.3 to notcurses_direct.3. Closes #1326.
3 years ago
nick black 289d0d6a54
notcurses.3: proper linker syntax for notcurses 3 years ago
nick black 43dd0440f7
add raster timing stats #1324 3 years ago
nick black 2491b693ba
Add missing channel_set_palindex()
Implement channels_set_fg_palindex() and channels_set_bg_palindex()
in terms of channel_set_palindex(). Add missing entries to
notcurses_channels.3 man page. Use uint32_t in place of unsigned
when dealing with channels in notcurses.h.
3 years ago
nick black b0915d1db6 Proper transparent blitter stacking
This completes the work for #1068. This addressed a subtle issue.
When we're using pixel->semigraphic art, we want slightly different
rendering. Essentially, imagine that we have two images, each two
pixels tall and one pixel wide. The top image is a transparent pixel
above a white pixel. The bottom image is a white pixel above a black
pixel. We'd expect the result to be two white pixels, but we can
instead get a black pixel above a white pixel. This is because the
*background* color is being merged from the bottom plane, but really
we want the *top* color. Ncvisuals are now blitted along with
information regarding which quadrants they draw over, and when
appropriate, we invert the foreground and background. Closes #1068.
3 years ago
nick black 6ebedd73bd
notcurses_core.3: syntax in SEE ALSO 3 years ago
nick black 121f10a9c5
v2.1.7 3 years ago
nick black 57271d09ce
v2.1.6 3 years ago
nick black 6d15aacc52 add notcurses_core.3.md man page #1301 4 years ago
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.
4 years ago
nick black 3ecdde74d0
v2.1.5 4 years ago
nick black 1108ebb5b6
Fix up some subtle pile issues
ncplane_destroy() needs to call ncplane_reparent_family(), not
ncplane_reparent() as it was doing (closes #1291). ->absy and
->absx actually are absolute; return them directly for an O(1)
ncplane_abs_yx() (down from O(N), huzzah). Add some unit tests
related to destroying and reparenting (#1286). Add ncplane_abs_y()
and ncplane_abs_x(), document them, etc.
4 years ago
nick black 1c0a623b8b
document new function ncplane_abs_yx() #1286 4 years ago
nick black 68b340e3c8
ncdirect: prep readline for use #1120 4 years ago
nick black 2048f8bc11
notcurses_plane.3: fix some syntax 4 years ago
nick black 7e05d0438a
notcurses_init.3: fix up some syntax 4 years ago
nick black ec037023a7
notcurses.3: add period at end of sentence 4 years ago
nick black e617acecc7
v2.1.4 4 years ago
nick black 18958e98cd update nccell def in docs 4 years ago
nick black 0c38728ceb Remove CELL_WIDEASIAN_MASK from docs #1277 4 years ago
nick black 21f6b5fc8a
notcurses.3: talk about piles, update threading section #1264 4 years ago
nick black 998cf02f34
add NCDIRECT_NO_QUIT_SIGHANDLERS #1271 4 years ago
nick black 555a3262b1
add channel_palindex and friends 4 years ago
nick black af07822d35 Document base cell better
Improve the documentation for ncplane_set_base_cell() and
ncplane_set_base(). Go by render.c's authority (all three
channels are independently checked for transparency, and
replaced with the base cell if so--egc, fg, and bg). Add a
BASE CELL section to notcurses_plane.3. Check for, and reject,
an nccell which is secondary among a multicolumn EGC.

Closes #1238.
4 years ago
nick black 70b74a749b
v2.1.3 4 years ago
nick black 7e20a25482
ncdirect_*_palindex -> ncdirect_set_*_palindex #1261 4 years ago
nick black f1253560ad
ncdirect: set_ on rgb functions #1261 4 years ago
nick black 713498efc5
syntax error in notcurses_input.3 4 years ago
nick black e6d1cbb2b4
clean up notcurses_input.3 4 years ago
nick black 58bc9bd3bc
fix up writeout stats, report in shutdown banner 4 years ago
nick black 55d563b646
v2.1.2 4 years ago