Commit Graph

76 Commits (774f8e5a23e2f17f4fae98a55e7b5f7ac23c81d6)

Author SHA1 Message Date
nick black af7ca02f36 Decode input escape sequences to special keys #78
Add the necessary input buffer, non-blocking reads, escape trie,
and unit tests to support extended keys, including arrow keys.
Update notcurses-input to print Unicode Control Glyphs instead of
a blank space for control chars.
5 years ago
Nick Black c0a1ee0f31
Spruce up slider demo, fix up uniblock demo #66 #72 (#112)
Slider demo: paint chunks in a pattern, then shuffle them up #72
Right-to-left unit tests #66
Fix up damage to uniblock demo using cup explicit cursor move #66
5 years ago
nick black 1bb114dbdc box unit tests: enlarge pattern #42 5 years ago
nick black f40f8cfb15 use background in fade unit tests 5 years ago
nick black ae711b7e75 h/vline gradient unit tests #42 5 years ago
nick black b711eaeedd box gradient unit tests #42 5 years ago
nick black bdc841e46e ncplane_box: support box mask ctlword #42 5 years ago
nick black a55e02836b ncplane_box: accept ctlword (#42) 5 years ago
Nick Black 8e8cb92c54
Improved cell API #97 (#103)
* cell/ncplane: simplify box API (#97)
* widecolor: use new box api (#97)
* uniblock: use new box API #97
* intro: use new box api #97
* panelreel: use new box api
* boxdemo: use new box API #97
* sliding: use new box API #97
* maxcolor: use new box api #97
* factor out notcurses_channel_prep() #97
* maxcolor: use new channel API #97
* sliding: use new channel API #97
* intro: use new channel API #97
* new output functions with no need for a cell
* add ncplane_putegc() and ncplane_putsimple(). the former takes an EGC, the latter a simple char less than 0x80. (#97)
* cell_prime: directly load all parts of a cell with immediates
* widecolor: use new output API #97
* boxdemo: properly initialize cells
* slider: total time cap of 5 * delaydemo
* maxcolor: use new output API #97
5 years ago
nick black e21594b4e9
ncplane_*_box_cells() -> cells_*_box() #97 5 years ago
nick black 415e238b3d transparent planes #10 5 years ago
nick black 2aadd096c0 lookin' good atl 5 years ago
nick black be5ce9051d
outro 5 years ago
nick black 0e4080456c fade unit tests #40 5 years ago
nick black 999f33a2ee
0.3.0-pre 5 years ago
Nick Black 426f632300
Panelreels port #52 (#90)
Port of panelreels, unit tests, and panelreel-demo from outcurses #52.
Doesn't completely work yet, but is surprisingly close!
5 years ago
nick black 8e9ed2b8a1 libav tests: check dimensions 5 years ago
nick black 28fac736bb notcurses-view: stop() before printing error
implement ncvisual_render()
5 years ago
nick black d106ebf0d3 libav: check for AVERROR_EOF #86 5 years ago
nick black 531340a145 libav: return averr to caller #86 5 years ago
Nick Black a7d50b557d
ncplane_at_cursor (#76), CCCflag, nonblocking stdin (#78) (#84)
* put stdin into nonblocking mode, retry on short write to stdout #78
* wrap getc_blocking() around a poll #78
* get CCCflag from terminfo. stop clearing the screen in render/startup
* implement ncplane_at_cursor() #76
* ncplane_at_cursor() unit test for simples #76
* PlaneAtCursorComplex unit test #76
* PlaneAtCursorInsane() unit test #76
* nplane_at_cursor: return number of bytes, not just 0/-1
* uniblock-demo: add a bunch of pages from Unicode 12
* demo: make -d delay multiplier a float
* egcpool: check offset against poolsize in check_validity()
* notcurses_init(): set smkx/rmkx to NULL with pass_through_esc
* PlaneAtCursorAttrs unit test #76
* add ncplane_styles() accessor
5 years ago
nick black 9fe6c152a9 enhance SetStyles unit test 5 years ago
nick black 4cc0ce037d read terminfo entries for keypad #78 5 years ago
nick black 8c6d0495ee
input: decode special keys, call notcurses_resize() #79 5 years ago
nick black e391bfbb81
input: add pass_through_esc option, otherwise run smkx #78 5 years ago
nick black 17d7d8a8c5
release guide 5 years ago
Nick Black 7f9ac490b0
ncplane_resize(), slider demo (#64) (#74)
* sliding: bounding box around puzzle
* slider: make moves, deleting planes #61
* implement z-index move functions
* demo: allow demos to be chosen via command-line option
* allow default bg/fg to be explicitly chosen
* ncplane_resize() unit test #64
* useful links
* slider: use random colors
* use find_above() in ncplace_destroy()
* ncplane_resize() work #64
5 years ago
nick black 742a27fd00 ncplane unit test tiling the screen #26 5 years ago
nick black f65d168d83 notcurses_render(): call term_setstyles() for sgr stuff #11 5 years ago
nick black d5cc65715e ncplane userptr routines + unit tests #26 5 years ago
nick black 5dfb07183c libav: throw an swscaler in the mix #61 5 years ago
nick black d423978e1b run ncvisual_decode() in libav unit tests 5 years ago
nick black cf557ff500 ncurses-view #61 5 years ago
nick black 3ef57d734e unit tests for egcpool removal #59 5 years ago
nick black 2080e0bff3 unit tests for exercised egcpool #59 5 years ago
Nick Black ba648dbd74
What a miserable evening tracking #57 (#60)
* widecolor-demo: don't emit spaces
* notcurses_init: newline before splash
* boxdemo: ncplane_erase() on entry #58
* uniblock-demo: print even wide chars #49
5 years ago
nick black f514fe234c switch demos to ncplane_rounded_box_cells() 5 years ago
nick black 728d4775b6
initialize nc_ in notcurses tests #54 5 years ago
nick black 9f334f88df
libav: don't require a notcurses ctx for tests #54 5 years ago
nick black 80519c92fa libav: add LoadVideo unit test #35 5 years ago
nick black 66432c37e1 libav: extract frame from AVFormatContext 5 years ago
nick black f20e8fde4b add notcurses_image_open() #23 5 years ago
nick black 7aaa0fcce1
track wide char as reported by wcwidth(), add unit test #6 5 years ago
nick black f67a97edfb
correctly handle ASCII + combining chars, add unit tests #36 5 years ago
nick black 94698a5982
add unit test for composed vs combined EGCs #36 5 years ago
nick black 0d1fbdff06 unit test for boxes outside planes #37 5 years ago
nick black 6f92ae92ab egcpool: unit tests for utf8 conversion #20 5 years ago
nick black a2f4fae96a huh 5 years ago
nick black ba08a6142e demo: call boxdemo 5 years ago
nick black d400c79870 implement ncplane_box() and unit test #9 5 years ago