Commit Graph

5664 Commits (master)

Author SHA1 Message Date
nick black f62ea3b344 [sixels] lift all logic into choose_alternate_color() #2516 2 years ago
nick black 32ddd6247b [sixels] factor out choose_alternate_color #2516 2 years ago
nick black 58fe88bad1
[gettcap] fold down control sequence responses #2541 2 years ago
nick black 3d2c1ed840
[automaton] handle negative XTGETTCAP #2544 2 years ago
nick black c0a20fdc3c [input] handle multiple XTGETTCAP returns 2 years ago
nick black 4a3b70ddc2 [terminfo] prefer XTGETTCAP to terminfo for HPA #2541 2 years ago
nick black 5806aa6864 [tinfo] factor out do_terminfo_lookups() 2 years ago
nick black 2584435efc
[kitty] treat absent event type as NCTYPE_PRESS #2527 2 years ago
nick black 1af9b16276
[sixel] restrict to 99, but use true 100 scale for accuracy 2 years ago
nick black db6b5af77a
[automaton] handle broken contour palette replies #2539 2 years ago
nick black 949925e1f7
[input] drive process_ncinput() through load_ncinput() #2216 2 years ago
nick black f7dd724942
[input] synthesize ctrl+c and friends for all inputs #2537 2 years ago
nick black 457da57ca6
[sixel] qlinks are one-biased 2 years ago
nick black 2550b09ab3 [pixelmouse] break response down for 1016 #2326 2 years ago
nick black d0f75018a7 [input] break out pixelmouse_click() #2326 2 years ago
nick black 2dd0415298 [term] use DECRQM 1016 to detect pixelmice #2326 2 years ago
nick black b026c624a0
[reel] put legend on its own plane so as not to leak to other demos #2535 2 years ago
nick black 3375e9061c [sixel] comment on requirement of 8 free qnodes per onode 2 years ago
nick black 7abf93e166 [sixel] properly allocate onodes 2 years ago
nick black bf9184a41d [sixel] decatree #2515 2 years ago
nick black ea08cd92ba add meta modifier handling #2522
Handle Meta modifier in Kitty and XTMODKEYS. Add Meta
indicator to notcurses-input. Update man page. Add
NCKEY_META_{SHIFT, CTRL, ALT, META} constants. Add
"modifiers" field to ncinput struct. Add inline
functions for testing modifiers. Remove special-casing
in Kitty protocol that capitalized all lowercase ASCII
when ctrl was pressed; we don't do this for XTMODKEYS.
2 years ago
nick black 8db6f9dc7b [automaton] add extended XTMODKEYS modifiers #2518 2 years ago
nick black 6680550fab [sixel] fix octree initial membership test 2 years ago
nick black 766461dd7d [sixel] browse through to subtree 2 years ago
nick black fc447ac889 [sixel] zero out qlink on dynnode 2 years ago
nick black df91593931 [sixel] finish out octrees #2515 2 years ago
nick black cbe9294c41 [mice] if pixelmice is set, use 1016 #2326 2 years ago
nick black 6b461c89cf
report pixel mice capabilities in notcurses-info #2326 2 years ago
nick black 5cb5e890dc
[input] always capitalize when shift is held 2 years ago
nick black 6a51c470b2
[sixel] fix memory leak in color extraction 2 years ago
nick black de02ceed91
[load_ncinput] always capitalize ASCII when Ctrl is used 2 years ago
nick black 92bda51996 [cmake] -v on failing notcurses-input runs 2 years ago
nick black 483985e9aa [drone] try and get some useful logs 2 years ago
nick black 4bccb59732 Post to the readyness fd for EOF
When we get to the EOF on stdin, we need account for that
with the readiness fd. Post to it upon the EOF transition.
Closes #2525.
2 years ago
nick black 28cd88f6d4 [input] don't queue further terminal input following stdineof #2525 2 years ago
nick black 27b5d38ea1
don't use sigaltstack() with USE_ASAN #2529 2 years ago
nick black 59eb7dd18b
[XTMODKEYS] undo with m, not n #2526 2 years ago
nick black 5de0a24fe6
[automaton] handle iTerm2 xtsmgraphics failure #2531 2 years ago
nick black 0c007078f0
kill some signed-vs-unsigneds 2 years ago
nick black 91a8d85707 [automaton] combine modifiers 2 years ago
nick black 4b49cb4592 add meta modifier handling #2522
Handle Meta modifier in Kitty and XTMODKEYS. Add Meta
indicator to notcurses-input. Update man page. Add
NCKEY_META_{SHIFT, CTRL, ALT, META} constants. Add
"modifiers" field to ncinput struct. Add inline
functions for testing modifiers. Remove special-casing
in Kitty protocol that capitalized all lowercase ASCII
when ctrl was pressed; we don't do this for XTMODKEYS.
2 years ago
nick black efddf0b496
[automaton] add extended XTMODKEYS modifiers #2518 2 years ago
nick black d44c37d717
terminology now supports XTVERSION, good for them 2 years ago
nick black 5d9f66f48b
[quantanal] work on scaled images 2 years ago
nick black c876ef18a5
[sixels] stretch in unit test to work on all geometries 2 years ago
nick black 6f36efd80a
[xtmodkeys] step up to 4;2, and define all modifiers #2518 2 years ago
nick black ecee3f1bd8
[automaton] handle XTSMGRAPHICS failures #2517 2 years ago
nick black f133462429
[enter_alternate_screen] pop the keyboard state #2509 2 years ago
nick black 03160d902d [termdesc] don't enable sixel graphics with 0 color registers 2 years ago
nick black dba86c72f0 [tests] is this just some ncdirect problem 2 years ago
nick black 5e42c19ace [quantanal] don't compare transparent pixels 2 years ago
nick black 02f88d4c75 [sixel] first-order merge from octrees #2503 2 years ago
nick black 0ce264c216 [fbuf] accommodate 64-bit integers 2 years ago
nick black 192a71f0ca [octrees] insert_color() and alloc_qnodes() #2503 2 years ago
nick black 0944e553ea [sixel] NULL out needs_refresh to avoid double-free 2 years ago
nick black 064dc36754 [sixel] properly terminate statement 2 years ago
nick black 62298fba4b [sixel] clear out entirety of auxiliary vectors 2 years ago
nick black 991ed5b87e
[sixel] diagnostic on malformed input 3 years ago
nick black 0925ca64c6
[quantanal] exit with error on compare() failure 3 years ago
nick black f2cca37c59
[tester] define loglevel so we can log in internal headers 3 years ago
nick black 5a19baa61b
[sixel] kill compiler warning for unused function 3 years ago
nick black 94944abd51
[stats] account for bitmap emission in rasterize_sprixels (sixel case) #2507 3 years ago
nick black 3bb3e55550 [sixel] use 8-bit initial mask, not 6 #2503 3 years ago
nick black ee951f1bd3 some comments 3 years ago
nick black 62fc112bf0 [sixel] kill FIXME about setting p2 on reblit 3 years ago
nick black 6bc9e9f7f3 [debug] check for utf8 before using arrows 3 years ago
nick black 49fefcabc4
check for cellpx{xy} in check_pixel_support() 3 years ago
nick black 3431c8fcab
[sixel] improve accuracy with tighter decision bounds #2503 3 years ago
nick black 2b6070ca6f
[demo] don't try to use cell-pixel geometry if it's unavailable #2505 3 years ago
nick black c1899c5930
[quantanal] properly format runtime 3 years ago
nick black 05a10ef0bb
[ncsixel_as_rgba] admit sixels with leading transparent rows #2504 3 years ago
nick black 40bfab099b
[quantanal] show elapsed time 3 years ago
nick black 26bdd1193a
[quantanal] count colors in original/quantized images 3 years ago
nick black 2ec93e8dfb
[info] move logo over one column 3 years ago
nick black 1a757fc1ba
comment up the PALETTEQUERY atrocity exhibition 3 years ago
nick black 2580513d1a
[sixel] vertically condesnsify this code a little 3 years ago
nick black abacb08280
quantanal: scale to display when image is too large 3 years ago
nick black 7f64f181aa
[ncsixel_as_rgba] properly scale up colors #2502 3 years ago
nick black 3b7c71ee8b [quantanal] finish things out #1724 3 years ago
nick black 4403615e09 [quantanal] first draft of compare() 3 years ago
nick black a1f55fe03c [quantanal] verify NCPIXEL_SIXEL 3 years ago
nick black 5b34ff3bda [quantanal] show relative sizes 3 years ago
nick black 635da75c3c [quantanal] recover control sequence with ncplane_at_yx() 3 years ago
nick black 0e190d0bc0 [quantanal] render visual 3 years ago
nick black a4751d354d quantanal 3 years ago
nick black c19a2477ff
reject empty sixel 3 years ago
KristofferC ff3b4b0a10 some updates from review 3 years ago
KristofferC ac94303a1f also nckeys 3 years ago
KristofferC 81d36891da make a shared lib with the static inline functions
This is to be used for wrappers of notcurses that do not otherwise
have an easy way of getting access to the definitions of the `static
inline` functions
3 years ago
nick black aa7903b370 implement ncvisual_from_sixel() 3 years ago
nick black 3d0fbc4d8f ncvisual_from_sixel() atop ncsixel_as_rgba() 3 years ago
nick black bb91c170dd implement sixel_as_rgba() #1724 3 years ago
nick black 61000ce2a4 start sixelanalyzer binary #1724 3 years ago
nick black 746d7af429 [safesixel] libncsixel_explode() 3 years ago
nick black 3190419774 start on libncsixel #2383 3 years ago
nick black e0c5cf5838
NCOPTION_SCROLLING, alias NCOPTION_CLI_MODE 3 years ago
nick black 3eb2383fff
[cli1] properly loop on NCTYPE_RELEASE 3 years ago
nick black 0836f02864
parameterized tputs string for DECERA 3 years ago
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