Commit Graph

5666 Commits (master)

Author SHA1 Message Date
nick black dc4bb1095e
detect rectangular edit support, display in notcurses-info #2498 3 years ago
nick black 406abe53aa
[ncls] use notcurses c interface exclusively 3 years ago
nick black 11b25bff07 [ncls] no scaling unless necessary or specified #2008 3 years ago
nick black 0059fea1ba [ncls] don't destroy planes 3 years ago
nick black 569cae4a46 [ncls] draw filenames in the correct place 3 years ago
nick black 489a36d291 [ncls] get things working in CLI mode #2026 3 years ago
nick black d51260f932 [ncls] switch to CLI mode #2026 3 years ago
nick black 0958a83452
[kitty] reunite comment with the code it describes 3 years ago
nick black 3d96b91e87
process_ibuf(): do late initdata handoff following process_escapes() #2496 3 years ago
nick black 22d989a847
b64idx: move to base64.h 3 years ago
nick black 08eca8c0b5
ncneofetch: don't assert() out just because we lack an image #2494 3 years ago
nick black 8315f766bd
ncneofetch: add ubuntu logo path #2494 3 years ago
nick black 43654547a0
neofetch-ripper: write ubuntu alias #2494 3 years ago
nick black 2f00fadfdd eliminate some signedness changes in notcurses.h 3 years ago
nick black 21dca60e7c [logging] use CRLF on windows #2489 3 years ago
nick black a831cef4e5 [windows] no lstat #2006 3 years ago
nick black b429da0457 [ncls] implement -L option / symlink handling #2006 3 years ago
nick black 70936ada74
kill redundant function prefix_data() 3 years ago
nick black 73f3e64bc9 [windows] kill compiler warning 3 years ago
nick black 094c8c00ca [channels_blend] update unit tests for general blender #2433 3 years ago
nick black 2d7c2eac73 [channels_blend] support fully general blending #2433 3 years ago
nick black 982895e53c
Merge branch 'master' of github.com:dankamongmen/notcurses 3 years ago
nick black ab0cd3ac2a
[init] kill redundant zorches 3 years ago
nick black f8d5eac938 [demo] rewrite usage screen without direct mode #2486 3 years ago
nick black bb03499e9e
remove unnecessary direct.h includes 3 years ago
nick black 7eda195e7d [ncplayer] clean up planes created for -k mode #2188 3 years ago
nick black a28feab67a [ncplayer] set standard plane scrolling when -k is used #2188 3 years ago
nick black 13d2c9989d [ncplayer] with -k, display graphic at the current position #2188 3 years ago
nick black 189ed256f4 [ncplayer] -k will be cli mode not direct mode #2188 3 years ago
nick black c95f1c4ac2
[tfman] use NCALPHA_HIGHCONTRAST for main text #2480 3 years ago
nick black 9c3adaaea3
add ncchannel_rgb(), use it in channels_blend() 3 years ago
nick black 814432d65d
[tfman] interpret groff unicode macros #2482 3 years ago
nick black be53b25f86
remove accidental decstbm 3 years ago
nick black 0f02465216
[dragon] blit to another plane, preserving background #2419 3 years ago
nick black b348db2e3d
[tfman] move structure browser along with page browser 3 years ago
nick black 07a424fdb2
[demo] run dragon following highcontrast 3 years ago
nick black 82adff4b77
[dragon] blit to another plane, preserving background #2419 3 years ago
nick black d2de8265b3
[cellblitters] clear glyph for all-transparent cells #2419 3 years ago
nick black 15e0649941
[box] demo: use any blitter for ships 3 years ago
nick black dca02e6aae [tfman] simplify main loop 3 years ago
nick black 3c17bc78e2 [tfman] structure-based navigation #2457 3 years ago
nick black b7164f440a [tfman] draw out structure bar #2457 3 years ago
nick black 6089219902 [tfman] track lines in docnode #2457 3 years ago
nick black 5f6f9ff75e [tests] cut line length down in textlayout test 3 years ago
nick black bbd9cb746a [notcurses-input] s/seperator/separator/ 3 years ago
nick black fc129c70c1 [blit] spelling in diagnostics 3 years ago
nick black 59fd31c050 [tfman] change up control for horizontal structure bar #2457 3 years ago
nick black 973175ce49 [tfman] horizontal structure bar #2457 3 years ago
nick black 1b4a968c8b
[termdesc] disable braille on RXVT 3 years ago
nick black 3164ae3c10
[termdesc] enable quadrants for RXVT 3 years ago
nick black 7ac3ad8b16
[banners] when using zlib, show that version 3 years ago
nick black e2d9d8ec7e
render: change some ints to unsigned 3 years ago
nick black 03aaa2eb87
[view] keep PIP aligned with right edge #2479 3 years ago
nick black b983e9b338
[view] use ncplane_resize_placewithin to keep PIP onscreen #2479 3 years ago
nick black 7378b34cf3
notcurses_refresh follows notcurses_rasterize()
If we've received a SIGWINCH or a SIGCONT prior to
rasterizing, we want to do a full refresh to sync the
visual area, but do it *after* the primary rasterization.
The latter requires the crender rvec match the geometry
assumed at render time, but notcurses_refresh() can
change that geometry, leading to invalid references into
the rvec at rasterization time. Closes #2471.
3 years ago
nick black 5ea69031ca [tfman] fix two problems found by fuzzing #2475 3 years ago
nick black 897d981b93 [demo] clean up datadir to keep asan/valgrind meaningful 3 years ago
nick black 0f69cdbd49 [demo] make directory diagnostic meaningful again 3 years ago
nick black 321617d9b9 [tfman] '-q' argument for no input, mainly intended for fuzzing 3 years ago
nick black 52664e212f crender: change member order for less padding
Our crender struct was being padded up to 48 bytes. Change
the member ordering to get it down to 40 without use of
((packed)) or other alignment-unfriendly methods. Saves
16% of memory devoted to rendering solutions, hopefully
with attendant savings in memory traffic. See #2471.
3 years ago
nick black a4df1aaffc
[tfman] only one line between subsection headings and text 3 years ago
nick black 73aea84a75
[tfman] structure browser support multiple moves #2457 3 years ago
nick black bcf713b5bc
[tfman] move structure browser along with page browser 3 years ago
nick black aa1a3fc3f5
[tfman] move structure browser along with page browser 3 years ago
nick black 5eb8558775
[tfman.1] document tfman UI thus far 3 years ago
nick black 685a88d2a6
[tfman] move remaining parsing code into parse.c 3 years ago
nick black 7f05f5281d
[tfman] move structure browser along with page #2457 3 years ago
nick black e49394a702
[output] partial print on right-aligned overflow text #2472 3 years ago
nick black 944184d9b3
[tfman] get everything working on resize 3 years ago
nick black 5a205b8410
[tfman] toggle visibility of structure menu with 's' #2457 3 years ago
nick black 5295d0c938
[tfman] colorize structure based off distance #2457 3 years ago
nick black 6685815c7f
[tfman] proper structure paths #2457 3 years ago
nick black 83976af4b4
[tfman] stylize browser text 3 years ago
nick black 6f803ca2a5 [pocpp] add NCOPTION_DRAIN_INPUT where appropriate 3 years ago
nick black 2d098e6ede
[tfman] build up structure 3 years ago
nick black 78269365b4
ncplane_resize_internal: realloc only when keepleny && !keepy #2426 3 years ago
nick black 7a99d00719
ncplane_resize_internal: release lost cells in the general case #2426 3 years ago
nick black 902fe7ee4b
ncplane_resize_internal: release lost cells on realloc #2426 3 years ago
nick black 61ef2f5ee4
[kitty] use zlib if libdeflate is unavailable #2423 3 years ago
nick black b3710c0cf1
[read_input_nblock] use standard int format specifiers 3 years ago
KristofferC a3c37932d6 check __MINGW32__ instead of __MINGW64__ 3 years ago
KristofferC d49a0375b7 use an explicit zero in initializers
empty initializers is a GNU extension
3 years ago
KristofferC 186fd9781a make Lmcons.h lowercase
this is the actual name of the file which matters on case-senstivie systems
3 years ago
nick black 8410271591
don't use XTPUSH/POPCOLORS with Kitty <= 0.23.1
Up until late in the 0.23.1 postcycle, Kitty's XTPOPCOLORS
implementation was unreliable (it didn't restore palette-
indexed colors visible on the screen). Only use
XTPUSHCOLORS+XTPOPCOLORS on Kitty if our version > 0.23.1,
reprogramming the palette directly until then. Closes #2459.
3 years ago
nick black 0f5a8855b6
kill compiler warning on unsigned char platforms 3 years ago
nick black 31b328c688
[ncplane_putc_yx] spelling 3 years ago
nick black cf754a6e02
nctree kill signed comparison with unsigned 3 years ago
nick black c067527c28
kill compilation warnings on alpine 3 years ago
nick black b075de5da9
[channels_blend] blend palette-indexed colors #2442 3 years ago
nick black ca848a9987
[altscreen] put palette push/pops in #2459 3 years ago
nick black f46acb8767
[tfman] set len on exit from zlib inflator 3 years ago
nick black a7ea84ea7d
[paint] yank newline handling #2464 3 years ago
Kristoffer Carlsson 4106a2888a change to use a value of 0 instead 3 years ago
Kristoffer Carlsson 12822d8b62 always define `AT_NO_AUTOMOUNT` if it is not defined 3 years ago
KristofferC 126652ef74 add missing `cstdint` include 3 years ago
nick black c81adef86f
[tfman] pass through escaped characters 3 years ago
nick black 7107c9015c
[notcurses-input] identify ISO level 3/5 shift 3 years ago
nick black 5cdc4f1ab8 [nctree] get nctree_add() working #2458 3 years ago
nick black 5afc56f980 [tfman] set up plane for structure nctree 3 years ago
nick black 49e9406576 [nctree] refuse the standard plane 3 years ago
nick black c2c61172f2 [tfman] free up docstructure 3 years ago
nick black f2677e2366 [nctree] implement nctree_add #2458 3 years ago
nick black 454c830237 [nctree] implement nctree_del() #2458 3 years ago
nick black 8fe602e9ef [Nctree] adapt unit tests to newly-allowed empty trees #2458 3 years ago
nick black a1cdecd8d2 [nctree] draw a tree with no items 3 years ago
nick black 174445bb60 [tfman] hook up docstructure object 3 years ago
nick black 7e25835356 [tfman] implement nf/fi for preformatted text 3 years ago
nick black 36277c5834 [tfman] add dashes, tilde, double quote macros 3 years ago
nick black 0e5bf46535 define nctree_add/nctree_del #2458 3 years ago
nick black b77dedd791 [input] replay only if midescape is not set #2455 3 years ago
nick black 4ba258c6d7
[tfman] bring us out of escaped state on non-backslash 3 years ago
nick black d6cb34af2b
cut out inputcore diagnostics 3 years ago
nick black b13d27a058
[drone] build without static libs on debian 3 years ago
nick black 2e745ba753
kitty_functional: handle L3SHIFT/L5SHIFT 3 years ago
nick black 4d727e5a59
handle KP_Seperator #2452 3 years ago
nick black 1c07bd2554
input: add descriptor for KP_Separator #2452 3 years ago
nick black 52ac57cb49
[FutureFlags] don't overwhelm stdout in test 3 years ago
nick black 64c8776c48
[TextLayout] update unit test 3 years ago
nick black eea3be5768
[direct_stop] undo XTMODKEYS if appropriate 3 years ago
nick black 70123f8011
[puttext] only write hard newline when specified 3 years ago
nick black dc2251b73c
[ncman] correct movement calculations, especially page down 3 years ago
nick black 161813101e
[ncblit_rgba] reimplement using ncvisual_blit() #2451 3 years ago
nick black 39f1d9b4cc
ncblit_bgrx: reimplement using ncvisual_blit() #2451 3 years ago
nick black cbbfd263fa [ffmpeg] mark everything static 3 years ago
nick black 80c3463dbb
[demo] drop unused sums 3 years ago
nick black aa27d41442
[cli1 poc] don't set unused fd on windows 3 years ago
nick black 3cfb3adf1a
[notcurses-input] cast to wint_t 3 years ago
nick black 0383afdff8
[ncls] handle_dir: fold r into return value 3 years ago
nick black 46bbee55f3
[grid] fold ret into return value 3 years ago
nick black dda7aa9962 [shutdown] only reprogram palette if we touched it #2450 3 years ago
nick black 24dbb3c5ea [automaton] add special R-type for rxvt #2435 3 years ago
nick black 0d65db84dc [reset_term_palette] use oc only as a last resort #2450 3 years ago
nick black 227271017a recognize RXVT by TERM #2435 3 years ago
nick black 4a47820c0e update matchstart on buffer move, fix midescape clear #2448 3 years ago
nick black efc542beb7 [palette] seed initial notcurses palette from tdesc 3 years ago
nick black e106029c90 [termdesc] copy only palette entries we actually read 3 years ago
nick black ed7213a8bf [terminfo] store initial palette in termdesc #2435 3 years ago
nick black 35ff603c17 [automaton] recognize palette responses #2435 3 years ago
nick black e9e2f601a9 [termdesc] send 256 palette queries like a boss #2435 3 years ago
nick black 0740f0286f
update LayoutZooText unit test 3 years ago
nick black ef480b81d1
[ncplane_puttext] scribe newlines purposefully 3 years ago
nick black 1322fabbb7
[ncplane_resize_internal] correct tozorch calculation 3 years ago
nick black e061686eda [ncman] match rg/rs macros 3 years ago
nick black 1ef4d27960 [ncman] implement pgup/pgdown 3 years ago
nick black 238663403b [scroll_down] move along with expansion for autogrow #2446 3 years ago
nick black e0c4e67a11 [ncman] colorize the title 3 years ago
nick black 21a35d7b97 [ncman] clean up top end 3 years ago
nick black adcdef6288 [ncplane_puttext] unit test for newline while growing plane #2446 3 years ago
nick black ba1fbbee90
don't expose kitty-style bg transparency to user #2432 3 years ago
nick black 4c17970ba0
detect and expose default foreground color #2432 3 years ago
nick black 3391db6dcb
[termdesc] query default foreground color #2432 3 years ago
nick black 6e42d5c52e
add notcurses_default_background() #2432 3 years ago
nick black 341b3f1996
[notcurses_core_init] guard against wide FILE 3 years ago
nick black 546355a871
notcurses_cursor_yx ought be const 3 years ago
nick black 32fd9a4478
[ncman] print substituted macros 3 years ago
nick black 358a6306da
[ncman] implement font macros and some textsub macros 3 years ago
nick black 66960aa6f8
[ncman] move declaration outside of switch 3 years ago
nick black eb5e76b04c
[ncman] use puttext() with newlines, not cursor moves 3 years ago
nick black f84242a3fc
[ncman] add a bit of color to structure 3 years ago
nick black 71a59b406e
[ncman] handle groff IX as comment 3 years ago
nick black f8626e48cb
[ncman] parse all five arguments of TH 3 years ago
nick black e23cf59f57
[ncman] handle tagged paragraphs 3 years ago
nick black 21488d394d
[ncman] be more leniant in parsing 3 years ago
nick black 9062a6ee7b [windows] detect MinTTY #2248 3 years ago
nick black c295aa55c7
[windows] detect mintty based off TERM_PROGRAM #2248 3 years ago
nick black 98094af341
Revert "[termdesc] send XTVERSION as our very first query to better race ConPTY #2248"
This reverts commit 9507052606.
3 years ago
nick black 9507052606 [termdesc] send XTVERSION as our very first query to better race ConPTY #2248 3 years ago
nick black 41ef5e4790
[ncman] don't move down beyond the page 3 years ago
nick black 359af3cf76
[ncman] move up and down, yeehaw 3 years ago
nick black bda4748096 [ncplane_put] implement autogrow in both dimensions #2440 3 years ago
nick black fff05e54ab remove hysterical FIXME 3 years ago
nick black f6abcc92b2 [ncman] use autogrow 3 years ago
nick black de3cd3c644 [notcurses-info] add chess pieces 3 years ago
nick black e57999d226 basic autogrow tests #2440 3 years ago
nick black c8e601e457 no autogrow for standard plane, add autogrow tests #2440 3 years ago
nick black 27bf6e0eee implement NCPLANE_OPTION_VSCROLL #2440 3 years ago
nick black 977a4ed966 introduce NCPLANE_OPTIONS_{VSCROLL, AUTOGROW} #2440 3 years ago
nick black 0c71899656 include any data in the same read as initdata with response #2434 3 years ago
nick black eb55caf880 [windows] data path dir need always be heap allocated 3 years ago
nick black ae948a1068 [ncplane_put] don't scroll on invalid x 3 years ago
nick black 5eb23cefb0 [ncplane_put] subtle cursor verification fix
We were checking for an off-plane cursor destination on
the X axis when it was provided explicitly, but not when
-1 was used to indicate the current position (contradicting
the comment immediately above the test). We also want to do
so when we're using the current position, though in this
case scrolling must be taken into account. Also, we were
placing the cursor on such a validation failure, despite not
intending to write anything.

Not testing for a current x (the -1 case) usually worked
because it was thrown out by ncplane_move_cursor_yx() below.
That fails, however, when we're working with an EGC that's
more than one column.

Delicate!
3 years ago
nick black b468c3fc83 [ncman] grow paras, handle single-byte lines #2323 3 years ago
nick black a50cd595c0 [ncman] handle paras and free text #2323 3 years ago
nick black 55f48fb6e9 [ncman] extract / draw subsection headers 3 years ago
nick black e6d0c07a23 [ncman] recurse for display 3 years ago
nick black 3c4b6f11fc [ncman] diagnostics for inflate, get zlib implementation working 3 years ago
nick black dc833be329 [ncman] display section headers 3 years ago
nick black 5bf2f57561 [ncman] extract version 3 years ago
nick black 0acb9dfe4d use sysconf(_SC_PAGESIZE) 3 years ago
nick black eab3ca981e [ncman] extract title/section 3 years ago
nick black 4c426f1fb6 [ncman] share trie across arguments 3 years ago
nick black d28ddebfcf
hierarchal pagenodes 3 years ago
nick black 56c61d97b2
[ncman] start extracting structure from groff data 3 years ago
nick black 02d95dc5af
[demo] add ctrl+L to menu 3 years ago
nick black b8a548873e
[ncman] bar at bottom with help 3 years ago
nick black 5860d41da5
[compat] only declare strndup on windows c #2428 3 years ago
nick black 0848edbbe7
[macOS] no MAP_POPULATE 3 years ago
nick black 7ed70a7234 link ncman against zlib 3 years ago
nick black f8b797f9db [CMake] use zlib if not using libdeflate #2423 3 years ago
nick black 8f38689489 [ncman] zlib implementation, quick and dirty 3 years ago
nick black 21c22616d9 drop some obsolete casts 3 years ago
nick black ee33dbd03a kill two obsolete FIXMEs 3 years ago
nick black 2ebf1f1942 [ncman] build trie, extract commands 3 years ago
nick black 51a76fe1e5 [ncman] augment troffnode with type 3 years ago
nick black 2c6be5a610 add structure for all troff elements 3 years ago
nick black 723139405f define troff structure 3 years ago
nick black c32e9b3791 [ncman] lex out comments from troff data 3 years ago
nick black e9cc8d0b2e [ncman] start lexing troff data 3 years ago
nick black a2385047cc [ncman] add support for inflation using libdeflate 3 years ago
nick black 7f94e50e69 [ncman] map up argument 3 years ago
nick black 269bf361e7 [ncman] event loop for each argument 3 years ago
nick black 624389877f add ncman's main 3 years ago
nick black 403bf91634
[windows] setup_alt_sig_stack() implementation 3 years ago
nick black fe7704919f
[ncman] reset alt signal stack after free() 3 years ago
nick black 9190d3bdfa
[signals] use an alternate signal stack #2424 3 years ago
nick black 91111cdb58
[ncchannels_reverse] don't generate illegal alpha+color states #2421 3 years ago
nick black 6c4c16465b
[xray] show only 1% of dropped frames 3 years ago
nick black 1c93a5ff45
[palette] rename unit tests, add some CHECKs 3 years ago
nick black 6f3ba8c3dd
utf8_to_egc: cast wchar_t to unsigned for logging 3 years ago
nick black 6080de837a [ncplane_putc_yx] copy egc to avoid invalidation
ncplane_putc_yx() calls ncplane_put() using an EGC extracted
from its nccell argument. The very act of writing that cell
to the plane, however, can grow the plane's underlying EGCpool,
possibly invalidating this reference. This was showing up as
a unit test failure on macOS, and was hopefully also the cause
of unit test failures on Alpine i686. Do a quick heap copy of
the EGC in ncplane_putc_yx(), and free it after writing to the
plane. Shouldn't cost anything (there was no measurable
impact in my testing). Closes #2420.
3 years ago
nick black 418aad1e45 reenable PlaneAtCursorInsane unit test on apple 3 years ago
nick black c49d3b1e02 enable RightToLeft test on apple 3 years ago
nick black 4513d36978 enable MultiglyphWidth test on apple 3 years ago
nick black a7db3b88fe
Use samoa.avi instead of fm6.mov in unit test
On DFSG builds, we don't have fm6.mov available to us,
so use samoa.avi (of my own construction) instead.
3 years ago
nick black 52c40cbca5
[notcurses.3] document all environment variables 3 years ago
nick black d98eb2a454
grunt #2416 3 years ago
nick black 4a4bec5078
[demo] bring sham jungle definition up to date #2416 3 years ago
nick black 04489e179a
[ncneofetch] properly place palette plane 3 years ago
nick black b57d6eb8d8 notcurses_data_path: allow overrides 3 years ago
nick black 16c9e9f101
[ncneofetch] fix display when no logo is found 3 years ago
nick black a4bc4e1897 [windows] fall back to NOTCURSES_SHARE 3 years ago
nick black 46114adb57
oiio_decode_loop: fix sense of seek_subimage() test #2402 3 years ago
nick black 7925df32cc
[ncneofetch] use notcurses_data_path() #2402 3 years ago
nick black 238de45e96 [nctetris] find the background everywhere #2042 3 years ago
nick black 7351b2aff6
[oiio] plug memory leak in oiio_destroy, thanks ASAN! #2402 3 years ago
nick black e9d299c139
[ncneofetch] clear area to left and right of palettebox 3 years ago
nick black cf36985c69 block_on_input: pass HANDLE** #2402 3 years ago
nick black caaeec5094
Place ncneofetch properly (#2415)
* ncplane_polyfill_inner: plug memory leak on error paths
* [progbar_create] memory leak on error path
* ncvisual_polyfill_core: memory leaks on error paths
* notcurses_early_init: memory leak on error path
* [demo] fix summary table for ASCII #2402
* [sliders] make it work in ASCII #2402
* add ncplane_ascii_box() #2402
* [notcurses-info] use capabilities accessors for blitters
3 years ago
nick black 771f2e1fb6 [ncplane_scrollup_child] need move to physical scroll location #2378 3 years ago
nick black 4ef8b53602 [ncneofetch] handle palette size not a multiple of showel 3 years ago
nick black 5cd85ca367 [ncneofetch] when in utf8, use half blocks for palette 3 years ago
nick black 3ffe7ac12c
kittykbdsupport bool distinct from kbdlevel, use in notcurses-info #2412 3 years ago
nick black 69b2b3d274
never send keyboard level changes with DRAININPUT #2412 3 years ago
nick black dae138c7d0 [ncneofetch] only render once #2378 3 years ago
nick black 2a636e3d9d
windows compile fixup erp 3 years ago
nick black 879a79f001 milt! 3 years ago
nick black fb33ea39c1 [windows] don't drain the input readiness pipe #2408 3 years ago
joseLuís b1f636a2d9 [docs] rename plane/visual sections to regions 3 years ago
nick black a4d7bd5670
[TERMINALS.md] document PuTTY settings #1298 3 years ago
nick black 48b124f82b
legacy_cb_f3 conflicts with cursor location report, dump it 3 years ago
nick black bce181a0d9 [ncneofetch] handle NULL from notcurses_data_dir() 3 years ago
nick black 538dff91ba
[input] provide utf8 form in ncinput 3 years ago
nick black 62f694dfa3
extract_color_table: get cell-pixel geometry from bargs #2404 3 years ago
nick black e57720ef51 [Stacking] fix unit test 3 years ago
nick black 6c5bc6b396 [rendercore] on fg elide, persist previous fg rgb 3 years ago
nick black ffc5993eec [rendercore] drop diagnostic 3 years ago
nick black 1be43cb54a [rendercore] omit fg on rgbequal #1316 3 years ago
nick black 0761994abb mark some string literals as utf8 3 years ago
nick black dc527439d4 [rendercore] cleanup, drop 'alttext', add 'noforeground' 3 years ago
nick black 7a91a2f905 normalize cell initializer names (prefix with NC) 3 years ago
nick black b340f01a0a always use space when fgrgb == bgrgb #1316
When both foreground and background are using RGB, and
the two channels are the same RGB value, the glyph will
be invisible; emitting a space with the correct background
can save RGB escapes and glyph bytes. Eliminates several
longstanding FIXMEs in the Stacking unit tests. Add a new
function nccell_rgbequal_p(), and unit testing for it.
Add a new unit test to check that this optimization has
taken place, and that it has only taken place in the
rasterization phase--the original plane must be unchanged.
Closes #1316.
3 years ago
nick black 0b75f06abd add and unit test nccell_rgbequal_p() #1316 3 years ago
nick black c298563e32 [FgMatchesBg] new unit test for optimized fg==bg #1316 3 years ago
nick black 3139bf019a
[initlang] fix sense of ASCII test 3 years ago
nick black 75bd0dd0bc
use notcurses_data_dir() in tester, fetch 3 years ago
nick black d85a0b213a [windows] dump diagnostic 3 years ago
nick black 4b3b904040 [windows] use DataDir for registry key, not InstallDir 3 years ago
nick black abb99d4a67
[notcurses-demo] don't hardcode NOTCURSES_SHARE, use notcurses_data_dir() 3 years ago
nick black df689d9104
[notcurses_options] unsigned margins 3 years ago
nick black 233d32be04
kill obsolete FIXME in sprixel_rescale 3 years ago
nick black 2d3fb9f12e [xray] hold at 15s (true runtime of source media) 3 years ago
nick black 38daf44fb3 [sprite_rebuild] don't change state on a no-op 3 years ago
nick black 5665adc8cc fbcon_rebuild: use direct cellpx when appropriate 3 years ago
nick black 39310f5797 update_term_dimensions: set cpix for linuxfb 3 years ago
nick black 8645511b63 [sprixel_rescale] rebuild all cells using old TAM 3 years ago
nick black ae2338c7a5 [render] refresh on resize #1687 3 years ago
nick black affece853c [sprixel_rescale] hook up to the main paint() path #1687 3 years ago
nick black 47e842d6dc [input] properly identify EINTR 3 years ago
nick black 0d933a180d [splice_rescale] implement, hook up to splice_zaxis_recursive #1687 3 years ago
nick black 6da5392724 [ncplane_reparent] pass cell-pixel geometries into splice_zaxis_recursive() #1687 3 years ago
nick black 135208eafe [input] recognize 0x1b 0x5b 0x45 as begin #2396 3 years ago
nick black ab233d85ee
[input] enable legacy f2 3 years ago
nick black db9d15f795 [sprite_load] kill unnecessary check 3 years ago
nick black 0dbb469a27 [sprixels] use cell-pixel geometry from ncpile #1687 3 years ago
nick black 0925da36f7
[xray] brighten drop count 3 years ago
nick black 549fcac603
[ncplane_dup] don't use ncplane_cursor_move_yx(), set cursor directly 3 years ago
nick black 6f90d20543
[xray] make the drop count redder with more drops 3 years ago
nick black fe20da9492
[input] legacy begin, end, home #2394 3 years ago
nick black fc8b8813c2
[input] handle legacy disambiguated arrow keys #2394 3 years ago
nick black 230e8713d8
[xray] don't even render drop count/slider when behind 3 years ago
nick black 07bdfd8b0f
[xray] balance out singleton case 3 years ago
nick black a5d79da1f0 [xray] add drop count with guy getting more and more pissed off 3 years ago
nick black 3a458c98c3 [xray] draw 5% of frames that would be dropped #2385 3 years ago
nick black 3cd09a0099 [xray] eliminate flicker on dropped frame #2385 3 years ago
nick black efc57333a7 [demo] pass start time to demos for more precise deadlines 3 years ago
nick black d5464deb9a [demo] use a single start time between HUD and recordkeeping 3 years ago
nick black 04ef46a067 [xray] take time at the beginning of demo 3 years ago
nick black cee5c267a2 [xray] 20s deadline #2385 3 years ago
nick black 0c89881266 [xray] calculate 20s deadline #2385 3 years ago
nick black 2ac51d2404 [demo] workaround for summary tables =\ #2389 3 years ago
nick black 8f26eeea5c
[textlayout] plug memory leak in unit test 3 years ago
nick black 2fbfdbb19a
[stats] fix up non-linux unix compilation 3 years ago
nick black 5d547d3678
[stats] account for cell/pixel geometry changes #2384 3 years ago
nick black 8d84c79296
[stats] add new cell_geo_changes and pixel_geo_changes stats #2384 3 years ago
nick black 80dd726239
[cli PoC] fix compile on windows 3 years ago
nick black 55152a0e0c
[input] always drain event readiness pipe #2216 3 years ago
nick black 2d6428cb15
[cli PoC] add a poll on the eventready fd #2216 3 years ago
nick black 70bfd825d7 [windows] get InstallDir from registry, working 3 years ago
nick black 1e8e942594 [windows] implement tty_check() with _isatty() 3 years ago
nick black 455ec4eb66
combine path_seperator() functions 3 years ago
nick black 53a24e1e35
[oiio] erase plane in stream #2368 3 years ago
nick black a7d54f90db zalgo: put prompt following output 3 years ago
nick black c0daadeb9f
[visual] use absolute coordinate in diagnostic 3 years ago
nick black 821b2929b5
[input] only ever need 2 pfds 3 years ago
nick black 049f64ebf2
[input] check ipipe for readiness #2350 3 years ago
nick black 0c6b1b73a6
[ffmpeg] adapt to ncstrwidth() 3 years ago
nick black 0b4232d07d
[ncstrwidth] yield to ncstrwidth_valid 3 years ago
nick black 02f00b01e7
[nctetris] drop background to 3x2 from PIXEL #2380 3 years ago
nick black 46251c1d30
[visual] diagnostics on failures 3 years ago
nick black 4491ce0a94
[shame] 3 years ago
nick black 2fd8f5086f
[windows] add initc capability to windows, stop querying ccc #2377 3 years ago
nick black ed78203a1f
[nctetris] tighten up notcurses logo 3 years ago
nick black d5e451939b
[sixel] copy through sixel_maxy_pristine #2379 3 years ago
nick black 9d4b23d56f
[nctetris] add a Notcurses logo 3 years ago
nick black e8f210135a
[cbreak_mode] don't tolerate error on GetConsoleMode() 3 years ago
nick black 198d3b5f19 windows/freebsd: add logos 3 years ago
nick black f992a55b2d [paint] stop processing line of plane on linefeed #2196 3 years ago
nick black 88a3d42e8f [paint] stop processing line of plane on linefeed #2196 3 years ago
nick black 0003165180 [term] don't send keyboard upcodes if we're draining input #2374 3 years ago
nick black 9b0f806d04 remove filesystem #include 3 years ago
nick black 717aaf9d5d [cli PoC] set scrolling on stdn #2196 3 years ago
nick black 508e143916 [rendercore] move logendx to 0 on linefeed 3 years ago
nick black 4087d59a05 [ncneofetch] return error on failure to emit newline 3 years ago
nick black 06056f5f9c [rastercore] bump logendy if we saw a linefeed 3 years ago
nick black 253ab19cf3 [ncneofetch] fix up infoplane placement for bottom of screen #2196 3 years ago
nick black 6aeab473e5 [scroll_up] scroll up children only on true scroll 3 years ago
nick black 163637828e [sprite_init] stir timestamp into rand() for initial image id 3 years ago
nick black f963b31d9d [goto_location] don't update logendy/x here 3 years ago
nick black 83fd6f83c7 [render] place space instead of newline in term_putc() #2196 3 years ago
nick black f88f1b8697 [pool_blit_direct] pass newlines through #2196 3 years ago
nick black 7e63e33a0b [blitcore] accept newlines, set colcount = 1 #2196 3 years ago
nick black b70afa8b5d [Media] unit tests: cap frames of video at 100 3 years ago
nick black 83902cf7f4 [xray] always provide sufficient topbanner 3 years ago
nick black c030b53bb2 kill trailing whitespace 3 years ago
nick black ea1c10dcfd kill trailing whitespace 3 years ago
nick black 50fbb0a778 [cli2 PoC] strip trailing whitespace 3 years ago
nick black 467b0294f3 [nctetris] kill memory leak of username 3 years ago
nick black 30dedad9df [info] print newline on last line #2196 3 years ago
nick black 8810ec9bb7 [cli PoC] emit a newline following input 3 years ago
nick black 279b3f4cfe [tester] don't require TERM on windows #2363 3 years ago