Commit Graph

209 Commits (76983d6ba7a588582618d8fb34edaca1edd86965)

Author SHA1 Message Date
nick black 595a697146
notcurses-view: space now pauses #603 4 years ago
nick black 3bc9a4cfa2
v1.4.5 4 years ago
nick black c0f820db94
notcurses-view: select blitter with numbers #671 4 years ago
nick black 5ff84cb9dd
add 'a'llglyphs demo #668 4 years ago
nick black 354ece5826
v1.4.4.1 4 years ago
nick black 230f3af8e1
v1.4.4 4 years ago
nick black e879bf8f93
let outro demo run on no-multimedia builds 4 years ago
Nick Black ebcba82d4b
Fully general ncvisual layer (#647)
This represents an essentially complete rewrite of ncvisual and associated code. It had two major goals:

Improve the ncvisual API based off lessons learned, pursuant to the upcoming API freeze. In particular, I wanted to:

decouple ncvisuals from ncplanes. It should be possible to render a ncvisual to multiple planes, with different scaling each time. It should be possible to create an ncvisual without a plane, etc.
normalize the various ways of constructing an ncvisual -- file, memory, plane, etc.
Support multiple blitters, from 7-bit ASCII to Sixel. This required writing the blitters in several cases, and they're not yet in their final implementations (but the API is fine)
I have not yet unified Plots and Visuals, and might not, given that the Plot code works fine. We could at this point implement Plots in terms of Visuals, though -- the blitter backend range has been unified. Sixel is not yet implemented, though it is listed.

There is a new POC tool, blitter. It renders its arguments using all possible blitter+scaling combinations. Another new POC, resize, displays its argument, then resizes it to the screen size and displays that, explicitly making use of ncvisual_resize() rather than a scaling parameter to ncvisual_render().

This also eliminates some memory leaks and bugs we were seeing in trunk, and brings in Sixel scaffolding.

The C++ wrapper will also need patching back up; I cut most of it down while wrestling with this crap, urk.

Closes #638, #562, and #622.
4 years ago
nick black c08c9b7f7f
v1.4.3 4 years ago
nick black 07e894c40c
v1.4.2.4 4 years ago
nick black 32d3ae91c8
v1.4.2.3 4 years ago
nick black e132c6bb24
v1.4.2.2 4 years ago
nick black 49fb03655e
v1.4.2.1 4 years ago
nick black 38e67abd9d
v1.4.2 4 years ago
nick black 8b5b44cf36
v1.4.1 4 years ago
nick black 6a22040584
v1.4.0 4 years ago
nick black e2b610506f
v1.3.4 4 years ago
nick black 84107c547d
view: support -m argument for margins #551 4 years ago
nick black 6e8a0bebae
view: support -k to inhibit alternate screen #551 4 years ago
nick black dcf262207b
notcurses-tetris.1: write up keys 4 years ago
nick black 05753bd91a
v1.3.3 4 years ago
nick black 7d1e3c77c8 oiio: image scaling #535, subimages for video #536 4 years ago
nick black fdf8c4544e
fallin: move falling planes to top of z-axis 4 years ago
nick black ffbcb069a6
man pages: s/FFmpeg/multimedia/g 4 years ago
Nick Black fe8034b5e0
ncfdplane, fileroller PoC, ncfdplane unit tests, qrcodes #24 #514 (#524)
* first draft of ncsubproc spec
* qrcode first draft #24
* demo: add qrcode demo skeleton, entries #24
* qrcode demo #24
* fedora python build changes from @dcantrell
* ncplane_qrcode() works #24
* add some flash to the qrcode demo #24
* drone: use newest builders
* fix up rgb PoC
* drop jungle demo to 100Hz target
* add fd.c
* ncfd skeletons
* more ncfdplane #514
* ncfdp i/o loop
* ncfp: improve uinit test, write core
* firm up ncfdplane #514
* fileroller PoC #514
* ncplane: allow '\n' in stream when scrolling #523
4 years ago
nick black 38cca493e7
man pages: terminals don't honor COLORTERM, they honor escapes 4 years ago
nick black 1dad2c6b50
v1.3.2 4 years ago
nick black e00ef4aca9
prep for 1.3.1 4 years ago
nick black 86e225dc4c prep for 1.3.0 #460 4 years ago
nick black 24a9343b0b
prep for 1.2.9 4 years ago
nick black 69b716f7f8 prep for 1.2.8 4 years ago
nick black 3d9d8c0fe1
yank colloquy man page, since it's been extracted 4 years ago
nick black 89809d5b59 prep for 1.2.7 4 years ago
nick black 6d366380ed prep for 1.2.6 4 years ago
nick black c717673458 drop keyplot man page/cmake #455 4 years ago
nick black 37b5564722
man page for colloquy 4 years ago
nick black df3dc6b5bc
prep for 1.2.5 4 years ago
nick black 89a3c32615 add man page for notcurses-keyplot #430 4 years ago
Nick Black f9c54761f5
Basic mandelbrot for `n`ormal demo #145 (#424)
normal: working mandelbrot, very basic #145
5 years ago
nick black 7c6b655483 v1.2.4 5 years ago
Nick Black 52bdbc6724
ncplane_translate() accept NULL dest as standard plane #408 (#411)
* tetris man page
* tetris basic skeleton
* tetris: Ticker()
* README: fix up some obsolete terminology
* tetris: draw the game board
* tetris: add NewPiece()
* tetris: draw tetriminos
* tetris: check for stuck piece, move it down
* Accept NULL dst in ncplane_translate() #408
5 years ago
Nick Black c056a0a026
Subregion renders #293 (#404)
Add four new fields to notcurses_options: margin_{tblr}, which requests margins to the top, right, bottom, and left. Render only within those margins, leaving the screen otherwise untouched (well, cleared if using the alternate screen). #293
5 years ago
nick black ac683e21d2
v1.2.3 5 years ago
nick black 0dc5456035
Emit JSON on -J arg to demo #387
Accept -J as a parameter requiring an option to notcurses-demo(1).
Update the man page and usage message to reflect this. Open the
specified file for binary writing with truncation at option parsing
time; fail out if we can't open it. At the end of the demo, write
the results out as JSON, using full precision for all values #387.
5 years ago
nick black e72111ac8b
v1.2.2 5 years ago
nick black 88c49df1b1
v1.2.1
DSFG demo can't have luigi
s/1.2.0/1.2.1/g
5 years ago
nick black 7b27953c17
notcurses_reel(3): fix up some references 5 years ago
nick black 69e2e8ec26
add notcurses-pydemo(1) man page #359 5 years ago
nick black 5bf66563d3
notcurses-demo(1): note that jungle doesn't run without ccc 5 years ago
Nick Black e6637e81cc
Prep for serious rusting #101 (#354)
* CMake: add USE_PANDOC, USE_DOXYGEN options #101
* README: mention rust
* start integrating rust into build #101
* CMake: add USE_NETWORK option for cargo
* Debian: build-dep on doxygen
* rust: colloquy checks in Cargo.lock
* extract NCKEY defines into their own include
* colloquy: use clap to parse CLI args
* CMake: unify option namespace
* Python: update include path
* Rust: fix up --frozen workings for -DUSE_NETWORK=off
* CMake: abstract out colloquy a little
* Sync direct.hh to the New Way
5 years ago
Jakub Wilk f08d51c5e7 fix typos 5 years ago
nick black 2b08c53075 prep for 1.2.0 5 years ago
nick black 9923b69296
demo: remove H option, no longer necessary 5 years ago
nick black 048b17952e
notcurses_ncinput(3): add NOTE about shift key 5 years ago
nick black e71c9284ef
man pages: address some syntax issues 5 years ago
nick black 887726b0d9 Debian: move all symbols/history to 1.1.8 5 years ago
nick black cda600a4aa :/ 5 years ago
nick black b7a92e0321
notcurses-tester(1) man page #326 5 years ago
nick black 8e29b5ba0f add highcon demo #181 5 years ago
nick black 05997f9988
notcurses-demo: accept -i to continue on demo failure 5 years ago
nick black c519c95fff
panelreel -> ncreel #324 5 years ago
nick black 01bc543399
tag demos requiring ffmpeg 5 years ago
nick black 959b2b8d70
notcurses-demo(1): markdown syntax 5 years ago
nick black b284901d18
prep for 1.1.6 5 years ago
nick black 429e00d612 v1.1.5 5 years ago
nick black 116453bfec notcurses-demo(1): add note about DFSG build #316 5 years ago
nick black 49013433ea
demo: spruce up table a bit more 5 years ago
nick black 60c19017f0
v1.1.4 5 years ago
nick black 746ef96ea1 prep for v1.1.3 5 years ago
Nick Black da0283ac25
Selector widget #166, subtitles #95 (#301)
Get rid of annoying empty line in notcurses-view (and ncvisuals at offsets in general)
Implement most of the Selector widget. Need to add styling and scrolling still. #166
Reenable ubuntu focal build
Subtitles! We decode them, and display them in notcurses-view. If ncvisual_simple_streamer() is provided an extra ncplane, it will use it to display subtitles. #95
We now build Python by default, as things are working much better.
ncplane_set_base() now takes channel, attrword, and EGC, so you can usually avoid having to set up and release a cell. ncplane_set_base_cell() takes over duty from ncplane_set_base() for ease of conversion.
notcurses-demo and notcurses-view now both accept a 0 for delay multiplier, meaning 'go as fast as you possibly can'. Very small multipliers (e.g. 0.00001) no longer cause floating point exceptions.
fading routines no longer cause floating point exceptions on very small timescales.
5 years ago
nick black c9bfc54381
prep for 1.1.2 5 years ago
nick black c1c25afcc7 Python: fix up debug package #298 5 years ago
nick black ac791c781d
1.1.1, update version numbers 5 years ago
nick black bee5be9d80
chunli: finalize out 5 years ago
nick black 1e403123e1
s/notcurses_render/demo_render/g pass 5 years ago
nick black 6434593afb
notcurses-demo.1: add copyrights 5 years ago
nick black 98fe08727b fallen: open the curtain on patents.png 5 years ago
nick black 3bd0732e81 notcurses_view: accept -s option 5 years ago
nick black 7860e1eace first start of fallin' demo 5 years ago
nick black 08f6fa0e79 implement ncplane_dup() 5 years ago
nick black 2c2542a553 docs/rust/python: update versions to 1.1.0 5 years ago
nick black adf808110d
convert remaining man1 pages to pandoc 5 years ago
nick black dd7f8eff4b
ncvisual_stream: add timescale param 5 years ago
nick black 5e1764d9b1
ncvisual_stream: add timescale param 5 years ago
nick black d9b721971a
merge in doc changes 5 years ago
nick black 3c7b9777e4
throw analytics into man pages 5 years ago
nick black 1b83c8b182
uniblock: drop rtl blocks for now #183 #259 5 years ago
nick black 6fc38cdf42 notcurses-demo.1: syntax fix for man page 5 years ago
nick black d057473c4c
notcurses-demo.1: migrate to pandoc 5 years ago
nick black 5a555ff917
v1.0.2 5 years ago
nick black 7e40453199
v1.0.1 5 years ago
nick black 202115d826 Add python3-all-dev build-dep 5 years ago
nick black 1a2cccaa18 fold out ncplane_move_cursor_yx() wherever possible #257 5 years ago
Nick Black f5c6297902
Chun Li demo (#251)
* chun li demo
* ncvisual_decode: allow multiple renders of the same frame
* add -H to notcurses-demo man page
* update section 1 man page versions
5 years ago
nick black 03636b14d3
maxcolor -> trans, document loglevels 5 years ago
nick black 38ace7677f
build man pages properly #213 5 years ago
nick black 6ffbe195cc
man: fix up groff syntax 5 years ago
nick black 24350ed51e
get everybody read for 0.9.3 5 years ago
nick black dfa6c91257
add 'q' to man page 5 years ago
nick black 708159c686
x-ray demo 5 years ago
Nick Black 9b81de3789
O(1) passive damage detection #189 (#197)
* notcurses: set up lastframe #189
* render: o(1) take no prisoners damage detection #189
5 years ago
nick black c3fa7ea664
bleachworm replaces widechomper #177 5 years ago
nick black 792b1f2cfb
notcurses-demo: accept -p to find data files #160 5 years ago
Nick Black 957549105b
Wide character rigor (#117) (#157)
* unidamage PoC
* add cell_load_simple()
* clear CELL_WIDEASIAN_MASK in cell_load()
* split out render code
* add CELL_SIMPLE_INITIALIZER
* widecolor: fix message plane
* widecolor: simplify color increments
* document wide character handling
* unit tests for wide obliteration #117
* widechar obliteration hardening #117
* widecolor -> widechomper, update man page
5 years ago
nick black a72bf25907
install section 3 man page 5 years ago
Nick Black 0d2c43603b
Luigi in Mega Man world (#127)
* uniblock-demo: reset background to black
* warning about quantization
* some luigi love
* update cell documentation
* add unit test for move of stdplane
* MoveToLowerRight unit test
* ncplane_move_yx(): error to move stdscr
* better box permutations test
* luigi in megaman2 world
* stats: don't print 'em if we haven't got 'em
5 years ago
nick black 065d44001c
change demo order 5 years ago
nick black 92fb071fb1
basic man pages for -view and -input 5 years ago
nick black e1356a2183
install man pages 5 years ago