Commit Graph

4322 Commits (c2616c6cbbc502ae4853c861f1274856d7f5760a)

Author SHA1 Message Date
nick black 60e13fb2d2
fission: handle extrawide characters on input #2002 3 years ago
nick black 6ad09dd30c
add unit test for emitting NUL cell #2002 3 years ago
nick black 9df9806781
send a CSI14t, process response #1891 3 years ago
nick black aeadc7e499
don't allow 0 in ioctl to clear earlier CSI14t response #2000 3 years ago
nick black 56636ca57c
interrogate_terminfo: close memory leak on error path 3 years ago
nick black 74dba98c68
ncls: use NCSCALE_SCALE_HIRES by default even with NCBLIT_PIXEL 3 years ago
nick black d84976d187
enable KITTY_SELFREF for 0.22.1+ (upstream bugfix) #1990 3 years ago
nick black ddd0533b03
NEWS: prep for 2.3.13 3 years ago
nick black 61990c47e1
fbcon: don't try to manipulate auxvecs at cell fringes #1996 3 years ago
nick black ac7902a940
sixel_scrub: be a bit more cautious about our jiggery-pokery 3 years ago
nick black c482d89dba
fbcon: use sixel_scrub 3 years ago
nick black 4f39868011
ffmpeg_decode: plug subtitle memory leak present since the beginning 3 years ago
nick black 6162ba3943 restore compatibility ncvisual_subtitle() 3 years ago
nick black 3d1d3794cd ncplayer: kill off handle_subtitle 3 years ago
nick black 45bac6bb69 get text subtitles working once more #1311 3 years ago
nick black b5ed6b1b92 drop diagnostic 3 years ago
nick black 7ab6b6b96d ncplayer: destroy subtitle window on all paths #1311 3 years ago
nick black 74860fbac3 set up type-1 subtitles better #1311 3 years ago
nick black 469eaebd03 [ffmpeg] decode type-1 bitmap subtitles 3 years ago
nick black 6288f5765f pad_for_image: don't allow a short count 3 years ago
nick black b0b5e49383 ncvisual_from_palidex 3 years ago
nick black 1448960cd5 start handling type-1 DVB subtitles #1311 3 years ago
nick black 272607a07c
notcurses_core_init: flush following sprite_clear_all() 3 years ago
nick black 24ccb66a20
kitty 0.22.0 introduces self-referential composition, not 0.21.3 3 years ago
nick black 81879194d2
scroll: go to the bottom before scrolling #1994 3 years ago
nick black 4561ed6a69 notcurses-info: use wviz throughout for broken unicode implementations 3 years ago
nick black 023dd01740
notcurses-info: improve appearance on non-black backgrounds 3 years ago
nick black 6d74f65f22
always track logend{y,x} #1984
even if we're not using PRESERVE_CURSOR, we still want
to place the cursor following the end of our output
when we close the context. always track it. this results
in proper placement of the closing banner following e.g.
notcurses-demo -k and rgbbg.
3 years ago
nick black 8cfdefda4c
rgbbg: only need to move once per line 3 years ago
nick black 780a4a9101
intro: propagate out display error
pressing 'q' to abort in the 'intro' demo was resulting
in a message of FAILED rather than ABORTED. propogate out
the error as returned from orcaride() properly to reflect
the reason for the early exit. it now shows ABORTED.
3 years ago
nick black 3f0a3e2f35
handle_getc: preserve csi for mouse lookup #1991 3 years ago
nick black f69a0eea58
notcurses-info: line up logo/url with right 3 years ago
nick black 38da41d26c
notcurses-info: tidy up a bit, block things off 3 years ago
nick black ee6de771e4
handle arbitary target glyph widths in ncplane_put #1873 3 years ago
nick black 7b5f4175eb
add nccell_cols(), deprecate nccell_width() 3 years ago
nick black 481a2d0366
kitty selfrec: stash sprixcell status into auxvec for rematerialization #1989 3 years ago
nick black d3fa19e6d6 only use new kitty protocol with 0.21.3 #1900 3 years ago
nick black 0c21404564 finish selfref #1900 3 years ago
nick black c71580d6d6 working kitty_wipe_selfref+kitty_rebuild_selfref #1900 3 years ago
nick black b7d9899149 kitty: restore kitty_wipe_animation 3 years ago
nick black 8e6fa10f24 kitty: don't preserve RGBA data for new selfref animation #1900 3 years ago
nick black e8cdff6cf9 kitty: reference/produce frames properly with a=c #1900 3 years ago
nick black 1f29036fb5 implement reflective kitty animation #1900 3 years ago
nick black e399687d7d kitty: tripartite blit implementation #1900 3 years ago
nick black 57f962399d statepixel: use black foreground so we can read errors 3 years ago
nick black 0ba45c44da notcurses-info: abuse internals less egregiously 3 years ago
nick black e0a8e9abc5
notcurses-info: more, always more 3 years ago
nick black 99843190c0
notcurses-info: draw a bit more 3 years ago
nick black 269196c39c
linux fbcon: wipe + restore #1954 3 years ago
nick black 0a6fd661b4 set_rgb: unsigned unless we're clipping 3 years ago
nick black f9e24bbed4
sprixel_free: close mstreamfp if it's open 3 years ago
nick black 8c8d07d5e8 kill some warnings on macos 3 years ago
nick black 4f1ef47b09
remove stray 'u' from plot summary 3 years ago
nick black 1597b25d39
procroller: use notcurses_get() over notcurses_getc() #1686 3 years ago
nick black 0d289958f9
death to sigset_t #1967 3 years ago
nick black 93fe6db376
check for support in ncdirect_on_styles() 3 years ago
nick black ddbc36e872
ncdirect_dump_plane: fix sprite_draw() error check #1980 3 years ago
nick black b67c6b8fb2
ncplayer: pass loglevel through to direct mode #1981 3 years ago
nick black 45986668a1
Linux framebuffer in direct mode (#1959)
In direct mode, we need to call through to `pixel_draw()` rather than just printing it ourselves, given that Linux framebuffer drawing doesn't involve printing (but instead writing to the memory map). Do so.
3 years ago
nick black 4f1de02710
replace random() with rand() for windows goodness 3 years ago
nick black 613d437b87
input: don't error out on all special keys, egads =[ 3 years ago
nick black 2fb9db77e8
fbcon: update auxvecs on reblit 3 years ago
nick black cd635316d9
fbcon_wipe: preserve auxvec 3 years ago
nick black 1113f7dd35
windows: patch out more constants 3 years ago
nick black f28152d95e
ncplayer: eliminate %j conversions 3 years ago
nick black 1e2f3252bd
hark! a vagrant! get windows library linking 3 years ago
nick black e5d77037dc
CMake: link in ws2_32 on windows 3 years ago
nick black 03fbf57f24
fix up windows strndup compilation 3 years ago
nick black a26b28e10f
prefer ansi c rand() to posix random(), doh 3 years ago
nick black b867935708
termdesc: wrap linux-only parts up for linux 3 years ago
nick black 3172f4712a
s/SA_SIGNINFO/SA_SIGINFO/g =[ 3 years ago
nick black 3d3561fe0e
windows: elide still more signal jank 3 years ago
nick black 59cb0b8bfa
plot: use PRIu64 3 years ago
nick black 0d0f30ca93
windows: don't try and use termios 3 years ago
nick black fd13b70d27
windows: no sys/ioctl.h, move to compat.h 3 years ago
nick black 8332ff060c
windows: no langinfo.h 3 years ago
nick black 7ace56cee6
remove unused png mmap code 3 years ago
nick black b2fb50fc39
png: cut out mmap portions on windows 3 years ago
nick black c733293421
[rage at sky] 3 years ago
nick black 8df13818de
windows: stub out siginfo_t 3 years ago
nick black 15c3d88ddb
windows: more signal/termios mitigation #463 3 years ago
nick black d90736f84f
define O_CLOEXEC as O_NOINHERIT on windows 3 years ago
nick black 698d1e59f5
replace j conversion with PRI for windows 3 years ago
nick black 917361d87d
windows: fd.c needs internal.h for logerror() 3 years ago
nick black d3d0838c07
windows hates all of fd.c 3 years ago
nick black ff2ef8571d
windows: no sys/wait.h, weird printf specifiers 3 years ago
nick black dae8e340d2
still more windows garbage 3 years ago
nick black 0ae839c63d
windows craveth not posix signals 3 years ago
nick black 873ee6f227
windows cleanups 3 years ago
nick black ed99ac670e strike most poll.h, use winsock2.h on windows 3 years ago
nick black f79e41294c
notcurses_getc: don't count nonblocking exit as input_error for stats 3 years ago
nick black 8d46a0bd17
capture bytes in linux framebuffer graphics to sprixelbytes stat 3 years ago
nick black b278d16f67
fbcon_wipe: build up auxvec 3 years ago
nick black 6c45990abb kitty: use zlib level 2, not 6 #1695 3 years ago
nick black 729290d81a deflate for animate #1695 3 years ago
nick black 5da51e138c intro: don't tolerate drawing failures 3 years ago
nick black 4fc1561d0f blitterargs: no need to pass cell-pixel geom, it's in sprixel 3 years ago
nick black a5ec720e5b kitty: fold transcolor verdict into auxvec 3 years ago
nick black 383ce5c2b0 xray: always set marsh.dm 3 years ago
nick black 19305aa653 kitty: reuse auxvecs across frames 3 years ago
nick black cc6bdf4b55 kitty: write transcolor pixel alpha as 0
when we're building out the kitty graphic, we check whether
alpha is low, or whether the color matches the transparent
color. in the latter case, we're writing the original alpha
to the auxvec. in rebuild, however, we don't know what the
transcolor was, and thus a pixel that matched it will become
visible. instead, rewrite alpha as 0 on transcolor match, so
that 0 is restored should we rebuild the cell.
3 years ago
nick black fcd62a04ec kitty: on redraw, move between annihilations 3 years ago
nick black 6f8b882b6d
stats_summarize: move input events up, where there's more space 3 years ago
nick black 05fdd0b117
flush before making SUM decision, to get true value 3 years ago
nick black 17d5b4064a
move sixel inversion detection into apply_term_heuristics #1957 3 years ago
Daniel Eklöf 0ec571d80c Foot has an inverted DECSDM since 1.8.2
fcd9897342
3 years ago
nick black 08e0acf92b
recognize Terminology via DA3 of ~~TY 3 years ago
nick black 8c7f047a05
ncmenu: always use NCPLANE_OPTION_FIXED #1958 3 years ago
nick black f9ebbcd80a
demo: create all subplanes with NCPLANE_OPTION_FIXED #1958 3 years ago
nick black 962a7539b4
whiteout: restore original scrolling mode for standard plane 3 years ago
nick black ee9b01e9b6
Konsole now handles TDA #1807 3 years ago
nick black c3d3f8613b work around whiteout problems on mac #1936 3 years ago
nick black f1bdc38538
preserve TAM annihilation across multiframes in fbcon #1954 3 years ago
nick black 145a421d02
fbcon: implement transparency via copy elision 3 years ago
nick black 5fc1540a09
fbcon_scrub: return success to get notcurses-demo working in framebuffer 3 years ago
nick black b590056887
notcurses-info: use NCLOGLEVEL_SILENT without -v 3 years ago
nick black bb7a141a3b
iTerm2: name it, always give it quadrant/rgb 3 years ago
nick black 11787f159c build fbcon routines even off linux #1883 3 years ago
nick black cf5e98c6cd fbcon: properly place bitmaps 3 years ago
nick black d2cf43d087 kill obsolete FIXME 3 years ago
nick black 558a1652cf fbcon_rebuild, necessary 3 years ago
nick black a5b9a2ed42 linux fbcon blitting! 3 years ago
nick black c7dd482474 need fbcon_scrub 3 years ago
nick black 8f8e910eaf adapt framebuffer code to new sprixel api 3 years ago
nick black 3e366ebe0e set up framebuffer graphics 3 years ago
nick black f8463270f1
cleanup for tinfo_debug_bitmaps() 3 years ago
nick black 04c0d37675
scroll child planes only when they intersect #1883 3 years ago
nick black 1f254c47b2
implement child plane scrolling #1883 3 years ago
nick black 8db6e3abaa
notcurses-info: display logo at the end for proper positioning #1883 3 years ago
nick black 3f2147b9e4
set sprixel_scale_height to 1 by default 3 years ago
nick black 382b68f5ab
why weren't we always handling SIGFPE? 3 years ago
nick black 84a61d1476
terminate iTerm2 OSC with ST 3 years ago
nick black bed16a9b7b
when HIGHCONTRAST is atop default, use queried value for bg computation #1947 3 years ago
nick black d8338105b3
notcurses_refresh: correct dimy/dimx #1931 3 years ago
nick black c5bef4a2af
iterm: position cursor before draw 3 years ago
nick black 7ed7827aca
iterm: use sixel_scrub for scrubbing 3 years ago
nick black 757fb5811f
display images with iterm2 protocol (#1946)
Implement the basics of the iTerm2 graphics protocol, requiring PNG construction, zlib compression, and base64 encoding. We're not yet performing wipes nor restores, only display. This is still pretty experimental, but it worked with WezTerm. #1420
3 years ago
nick black 7b4d3b9af3
iTerm2: fix up XTVERSION lexing #1944 3 years ago
nick black 547a30e73f
summarize_stats: protect against 0 renders zerodiv 3 years ago
nick black cd49a63b7b
only use MAP_SHARED_VALIDATE where defined #1941 3 years ago
nick black fadc500568
better guard on demo's summary table for divide by zero 3 years ago
nick black 38f1ea1ebc
update cursor terminal point with PRESERVE_CURSOR 3 years ago
nick black c9ddec9de7
add input_events and input_errors stats #1914 3 years ago
nick black ffbafef645
notcurses_stats: copy only stats, not lock #1914 3 years ago
nick black fe150bff95
pass ncsharedstats down through to input layer #1914 3 years ago
nick black b1b35a56e7
move stats lock into object with stats struct #1914 3 years ago
nick black 7722ea60c6
move lock into ncstats object #1914 3 years ago
nick black e98c59a40d
notcurses-info: drop spurious space following braille 3 years ago
nick black 4398fc223c
implement locate_cursor_simple for redirected input case #1942 3 years ago
MasFlam ff0cffc590 Spice up the tabbed poc 3 years ago
nick black b2cfddc645 atomic on png crc32 lookup 3 years ago
nick black 5a0e2a2ae5 CMake: link zlib into notcurses-core #1821 3 years ago
nick black 4de3101c20 provide png.h 3 years ago
nick black 1dd954d4be deflate that sumbitch 3 years ago
nick black c1e419fd9d CMake: demand Zlib 3 years ago
nick black 60c953b77b png: prep for deflate 3 years ago
nick black 3dbc5645f7 create_png_mmap: accept a file descriptor 3 years ago
nick black a55a37a838 write PNG IDAT and IEND chunks, unit test 3 years ago
nick black 9c92b83387 some PNG work 3 years ago
nick black 277fd3931e start writing up PNGs 3 years ago
nick black 0dfe103f4f define PNG creation interface, assumes mmap() #1821 3 years ago
nick black ef1dfe6254 fix regression in HUD from shift to PRIu64, whoops 3 years ago
nick black 8947a5f5d7
not many neofetch changes recently 3 years ago
nick black af1015b264
kill 'vizdirect' PoC 3 years ago
nick black 99217a7e27
employ XTPUSHCOLORS/XTPOPCOLORS where supported #1296 3 years ago
nick black 95cdfd7524
learn XTPOPCOLORS/XTPUSHCOLORS for xterm+kitty #1296 3 years ago
nick black 2c838e3aa7 info: when printing neoart, use default foreground 3 years ago
nick black 37fb3ab34e
README: clear up wording in FAQ entry 3 years ago
nick black bfd689b1c0 info: dole out symbols line, closes #1929 3 years ago
nick black e04793b6d6 info: dole out box lines #1929 3 years ago
nick black 8566aa8fec info: expand out the legacy symbols rows #1929 3 years ago
nick black d1b1e7fe3a info: do sextants one-by-one #1929 3 years ago
nick black 6f2d392f69 silence a bunch of Wstring-plus-int warnings 3 years ago
nick black 26a381b6e2 notcurses-info: break out sextants #1929 3 years ago
nick black ba19013f6a notcurses-info: overcome unicode deficiencies throughout braille #1929 3 years ago
nick black 19f7726075 notcurses-info: print braille one at a time #1929 3 years ago
nick black a705dfd0ff convert last(?) two remaining PRIu64s 3 years ago
nick black c804148084 Mention @michaelsbradleyjr in HISTORY.md 3 years ago
nick black 3458c440d9 ncneofetch gets a logo on darwin #1925 3 years ago
nick black ab69a1d6d0 animate: truncate unicode 13 for apple #195 3 years ago
nick black a8baa6cb9a poll: handle NULL as -1 on apple #195 3 years ago
nick black 622ae010da fix format specifiers in demo.c #195 3 years ago
nick black baf218fdd4 egcpool, plane: fix unit tests for OS X #1924 3 years ago
nick black 86aa60d55b cell.cpp: fix up tests for OS X #1924 3 years ago
nick black fef33ad2aa wide.cpp: patch up tests for OS X 11.4 3 years ago
nick black 931fa8eb13 get everything building on OSX #195 3 years ago
nick black 5015e39f16 only need TIMER_ABSTIME on apple 3 years ago
nick black 8f41bfd757 inttypes PRIu64 throughout stats.c 3 years ago
nick black f3886df67c osx: ppoll, execvpe, pipe2 workarounds 3 years ago
nick black 33752742d1 byteswap on OS X #195 3 years ago
nick black 15b9b64cad
char32_t is C++, not C -- move to uint32_t 3 years ago
nick black 0d68b62bee
enqueue_cursor_report: set clr->next to NULL 3 years ago
nick black bd002f154f garbage first run at integrated cursor location report #1692 3 years ago
nick black fb75a11a75 render: need scrolls before sprixels 3 years ago
nick black c2763fb6c7 summarize_stats: one newline to stdout, not stderr 3 years ago
nick black fb8b453d61 get look_for_clrs() down on paper #1692 3 years ago
nick black d6ef7ccacd add link to 'Text Rendering Hates You' 3 years ago
nick black 6708780e60 fix up XTSHIFTESCAPE #1061 3 years ago
nick black 2240880718 extract fill_buffer #1692 3 years ago
nick black 73324ce2a4 yank locate_cursor_early() #1692 3 years ago
nick black 85e55de569 recognize Tc unofficial terminfo capability as synonym for RGB 3 years ago
nick black bd451aa087 implement locate_cursor() #1692 3 years ago
nick black e133225092 implement enqueue_cursor_report #1692 3 years ago
nick black 9746a06bde prepare a cursor report queue #1692 3 years ago
nick black 3df88384cd set XTSHIFTESCAPE when enabling mouse #1061 3 years ago
nick black d81164a348 handle_csi: differentiate between csis #1692 3 years ago
nick black dcc58ef713 input: process CSI for cursor report #1692 3 years ago
nick black 75b84329da comment up handle_getc() regarding controls #1692 3 years ago
nick black 7ee9ef397a add logpanic/logfatal, convert some printf()s 3 years ago
nick black 8a3579581a [input] read large chunks at once #1903 3 years ago
nick black cf8b640064 The Gang Genocides Genocide s/_genocide/_destroy_family/g #1907 3 years ago
nick black cea2206ec7
remove two meaningless uses of inline from notcurses.c 3 years ago
Tomek Szczęsny 0baf4ea1b5
Relative cursor move (#1885)
Relative cursor move by @tomek-szczesny
3 years ago
nick black 531f62a5ae
notcurses-demo: remove stray notcurses_refresh() calls 3 years ago
nick black 5a081a014d
kitty: remove horrible a=t positioning hack #1918 #1910 3 years ago
nick black c2d6edc109
notcurses_refresh: always clear screen #1915 3 years ago
nick black 7bdad5237f
get clrscr immediately before refresh #1915 3 years ago
nick black bc4f2a3626
CHANNELS_RGB_ -> NCCHANNELS_ 3 years ago
nick black bfca06264a
fix up indexing for NCBLIT_8x1 plotter #1912 3 years ago
nick black 2441a31766
kill unused variable warnings 3 years ago
nick black 37286aa707 work around strange kitty issue for now #1910 3 years ago
nick black 714b288c8d [kitty] no longer need to update under opaque, huzzah 3 years ago
nick black aada04ba47 flush following goto_location for logend #1906 3 years ago
nick black 8b33353105 [kitty] q=2 can come on earlier chunks 3 years ago
nick black 0c484e4e02 run the logend{yx} state machine in raster #1906 3 years ago
nick black f9c8102e37 notcurses-info: use NCOPTION_NO_CLEAR_BITMAPS 3 years ago
nick black 5725605167 move cursor to logend{yx} post rasterization #1906 3 years ago
nick black af418a221f with PRESERVE_CURSOR, track logical end of output #1906 3 years ago
nick black e767fd0b5f
notcurses-demo: turn mouse support back on 3 years ago
nick black 087fd083af
[brownbag] actually call mouse_{dis/en}able() 3 years ago
nick black 840ed1a3d8
remove all uses of NCSTYLE_STANDOUT 3 years ago
nick black 55f8614391
improve 256-color grey quantization 3 years ago
nick black b96dc6d1bc
recognize greys in 8-color quantization 3 years ago
nick black a7779c5024
cursor_yx_get: loop on 0 input for GNU screen #1902 3 years ago
nick black e2a3af49b5
cursor_yx_get: fprintf -> logerror 3 years ago
nick black 405a1f2808
recognize tmux in XTVERSION #1901 3 years ago
nick black f3504b3bfe
DA2: don't force version interpretation #1901 3 years ago
nick black cefc98f55b
reset errno prior to reading control input #1901 3 years ago
nick black 672a761080
mmap() the linux framebuffer 3 years ago
nick black afad46b006
notcurses-info: admit -v for NCLOGLEVEL_TRACE 3 years ago
nick black 14a50cfa3f
add ncchannels_reverse, use it in ncmenu, add unit test #1878 3 years ago
nick black f0aec109b7
support menus on any plane #1645 3 years ago
nick black e631cac954
s/SPRIXCEL_/SPRIXCELL_/g 3 years ago
nick black b2dd44e06c
[kitty] convert fixed fprintfs to ncfputs 3 years ago
nick black 8b1c324353
[kitty] update summary comment 3 years ago
nick black 8846e3cee2
ncdirect_putegc(), get true width in ncwidth #1899 3 years ago
nick black 4a23acab2d
fission demo: go both up and down #1896 3 years ago
nick black 20603e5012
direct mode: fix for animation kitty 3 years ago
nick black 4d2a896cdd notcurses-info: distinguish animation from regular kitty #1895 3 years ago
nick black 66b8c7f004 [kitty] properly copy source for rebuild #1895 3 years ago
nick black 0aa8b5267c [kitty] fixup non-animated case 3 years ago
nick black 6d6f69a02b rebuild: only free auxvec for non-animation #1895 3 years ago
nick black 811bc9eb65 animated kitty rebuild #1895 3 years ago
nick black 22443d4b3a [kitty] fixups for non-animated case #1895 3 years ago
nick black a0b5a85e25 kitty: animated rebuild no longer crashes 3 years ago
nick black b9b26603ad kitty animation: everything up through rebuild works #1895 3 years ago
nick black af305f56c4 [kitty] clean up auxvecs on error #1895 3 years ago
nick black ebc405b165 [kitty] get most of animation working #1895 3 years ago
nick black d2e0c64a7c add kitty_transanim_auxvec() and kitty_wipe_animation() #1895 3 years ago
nick black 948553a980 extract sprite.h 3 years ago
nick black 4bb85d28c8
use non-interpolative scaling with eagle/luigi 3 years ago
nick black f339855c39
nccell_width: minimum width is 1 #1894 3 years ago
nick black b170ee98e1
you do not get to win https://www.youtube.com/watch?v=ASacQYJWOPI 3 years ago
nick black 6e19e0536e
demo: remove obsolete postinit_checks() 3 years ago
nick black 3c2fe36fc9
[kitty] pass C=1 for move command 3 years ago
nick black 1493045490
notcurses-info: hold off on displaying logo 3 years ago
nick black 5009a25721
stop warning on truecolor but no ccc 3 years ago
nick black d38c15302a
notcurses-info: add sub+superscripts 3 years ago
nick black b41928833f
replace fprintf with ncfputc 3 years ago
nick black e7ac7ab14b [kitty] C=1 needs be emitted with the presentation, not load #1865 3 years ago
nick black afd738a977 direct: write sprixels with posix i/o to work around blocking 3 years ago
nick black 0b794bba64 direct mode: work with separate load+display kitty #1865 3 years ago
nick black 56433a1a7f [kitty] free and release sprixel on commit to destroy #1890 3 years ago
nick black 2e7079a69e [kitty] silence present command #1865 3 years ago
nick black 9a53379d36 [kitty] keep display distinct from draw #1865 3 years ago
nick black 3f8dcfa357 kitty: separate out commit from draw #1865 3 years ago
nick black 3608d6a2d6 [kitty] pull remove out of destroy, rename destroy scrub #1865 3 years ago
nick black 3763739b9f
direct mode: write sprixel with posix i/o for strength 3 years ago
nick black 212da290ae Create mstreamfp before registering signal handlers
We use mstreamfp in notcurses_stop_minimal(), so we can't
register that function as a fatal signal handler until
we've opened mstreamfp. Move it before the registration.
Eliminates a coredump when we ctrl+c during init.
3 years ago
nick black 4a3e536c66
notcurses-info: completely shade lower right 3 years ago
nick black 32ade77dd5
more sequences, more notcures-info 3 years ago
nick black 88cccb4d2a
notcurses-info: colorize box block 3 years ago
nick black e915724b9f
utf8_codepoint_length: implement Corrigendum#1
Dmitry Sapozhnikov pointed out that I was admitting
illegal first bytes; I was also just plain wrong.
Bring this up to sync with Corrigendum #1.
3 years ago
nick black 29f1acc479
bulk up scrolling unit test #1649 3 years ago
nick black 8df91e35a9
unit test for virtual cursor on scrolling plane #1649 3 years ago
nick black 0941efbea5
unit tests for ncplane_moverel() 3 years ago
nick black da3f485ace
notcurses-info: add many triangles 3 years ago
nick black 8dc65b6db1 notcurses-info: always emit newline #1837 3 years ago
nick black 669cf758df
locate_cursor_early: fix compilation 3 years ago
nick black e870e12285
locate_cursor_early: require ttyfd #1880 3 years ago
nick black acc66372b5
add utf8_codepoint_length() #1871 3 years ago
nick black 70b8bba715
Merge branch 'master' of github.com:dankamongmen/notcurses 3 years ago
nick black d7aac5461a reacquire cursor following init banner
when using NCOPTION_PRESERVE_CURSOR, we want to reacquire
the true cursor position after printing the init banner,
rather than trying to figure out how many lines it made
us scroll, and keeping that up to date. this improves the
notcurses-info output on freebsd, where the compiler line
was occupying more than one row. closes #1880.
3 years ago
nick black 50a7996b4f
notcurses_detected_terminal: use termdesc_longterm() 3 years ago
nick black 5451ecd890
return version in ncdirect_detected_terminal() 3 years ago
nick black bc213921be
interrogate_terminfo: placeholders for cursor
always get the cursor location from query responses,
so that we load u7 into the escape table even though
it wasn't found in terminfo. this is needed on freebsd,
where termcap doesn't seem to have u7 in it.
3 years ago
nick black 4ed41259c9
don't emit smkx twice, flatten all initial writes 3 years ago
nick black 488a36eaf5
ncplayer: remove meaningless notcurses_check_pixel_support() call 3 years ago
nick black dc02a8f04b
notcurses_stop_minimal: use reliable I/O
fflush(), so far as i can tell, cannot be reliably used
in glibc. after it fails once, subsequent calls return 0
and do not set errno -- only the persistent ferror() serves
to indicate that flushing is not going on. instead, write
into the render state's memstream, and then use reliable
blocking_write() to dump it to stdout. closes #1872.
3 years ago
nick black ed8c369d4e on pile change, clear old sprixels #1875 3 years ago
nick black 9d27bf1869
remove meaningless notcurses_check_pixel_supprot() from ncplayer 3 years ago
nick black 588f8d3789
drop signals at the end of reset_term_attributes() #1872 3 years ago
nick black 205a8bd764
faster nccell_width()
nccell_width() ought simply consult the nccell's width
field to get a column count (it was written before the
rearrangement of nccell). do so. fix up the macros
CELL_CHAR_INITIALIZER and CELL_INITIALIZER to assign a
width of 1 for non-printing characters, matching the
behavior of utf8_egc_len() on whitespace. instead of
hard-coding the logic in ncplane_put() for multicolumn
glyphs, call nccell_wide_right_p() and wide_left_p().
use nccell_width() in ncplane_putc_yx(), fixing it for
glyphs of more than 2 columns.
3 years ago
nick black 505f38956d
Fade unit test: use CELL_CHAR_INITIALIZER 3 years ago
nick black 0e341fa3de
notcurses-info.1: describe output 3 years ago
nick black 1287d8bd03
combine some writes 3 years ago
nick black d558c8d6e1
require set_pixel_blitter() for sixel_blit 3 years ago
nick black 5af6f58e07
Visual: render 1x1->fullscreen #1675 3 years ago
nick black feccb7dab8
purge wayward notcurses_debug() calls in pile unit tests 3 years ago
nick black f219a21732
ResizeThenRotateFromMemory is garbage =[ 3 years ago
nick black 4d1681bf11
fix dumb error in ResizeThenRotateFromMemory #1722 3 years ago
nick black d8c37337d9
allow different backends to specify their own padding requirements #1722 3 years ago
nick black a10959345a
null media implementation: don't colorize warning 3 years ago
nick black cb6ffee3a7
OpenImageIO: simplify TypeDesc declarations #1722 3 years ago
nick black d70aed8939
tighten up banner warnings 3 years ago
nick black c2a076a6b3
banners: properly account lines 3 years ago
nick black 4f8a8597a1
fold a few escape emissions down into single flushes 3 years ago
nick black 4cc69c445d
rasterize: use a single ncflush(), even with SUM 3 years ago
nick black 8bdd4b3908
ncfputc: we can use putc() here 3 years ago
nick black 5d7f2ce92f
visual_banner: always print to nc->ttyfp 3 years ago
nick black de8bb9d498
clearall: take a FILE, not an fd 3 years ago
nick black a99d096666
input: convert some stderr to logerror/logwarn() 3 years ago
nick black a36c13da13
merge notcurses-info changes from kitty branch 3 years ago
nick black 9c1f489bb6
merge ncseqs.h from kitty branch 3 years ago
nick black b4bf1297e1
only invert DECSDM on MLterm < 3.9.1 #1869 3 years ago
nick black 6615f52fe3
extract MLterm version from XTVERSION #1869 3 years ago
nick black ef2e4e626e
[dragon] properly size input visual #1723 3 years ago
nick black bf3caa8198
disable kitty ASU while it breaks graphics #1864 3 years ago
nick black 581a33f5e2
a mysterious space! 3 years ago
nick black 4c8bfbd405
notcurses-info: rewrite U13 in terms of NCANGLE* 3 years ago
nick black 0bfa8c33fd [sixel] clean up cells even when under a new sixel #1537 3 years ago
nick black 5cf24d4d2e mojibake: add emoji from unicode 14.0β 3 years ago
nick black 4a8d075e64
add NCBOXOUTER #1858 3 years ago
nick black 7e2c6fc005
notcurses-info: tighten up all output 3 years ago
nick black 62e0c226d8
brighten up initial banner 3 years ago
nick black 866ffd91dd
tighten up initial banners further 3 years ago
nick black a1d011fdc2
notcurses-info: hold off on displaying logo 3 years ago
nick black 89fee267b7
notcurses-info: pack more densely 3 years ago
nick black 62dd65dd84
tighten up intro banner #1837 3 years ago
nick black 1193e40fd1
notcurses-info: show logo pursuant to #1649 3 years ago
nick black 3596b2b2a2
NEWS: describe pure changes 3 years ago
nick black 37fbd526ed
ncvisual_blitset_geom: handle non-origin with CHILDPLANE #1854 3 years ago
nick black 35b57ddb91
remove useless notcurses_check_pixel_support() calls 3 years ago
nick black 4177486e26
mark capability functions as ((pure)) 3 years ago
nick black 15d6cfaf35
allow pixels to stdplane with NCVISUAL_OPTION_CHILDPLANE #1854 3 years ago
nick black 6f1bbf82d0
add prefix_data() 3 years ago
nick black a17800b034
notcurses-info: add fractions 3 years ago
nick black 301e76956e
[querylex] handle fail on set cregs 3 years ago
nick black 5861d16d33
expand accepting states for primary device attributes 3 years ago
nick black ea41c5ebaf fix cell_extended_p() for big-endian 3 years ago