Daniel Eklöf
013ac94cd5
[sixel]: re-enable Set Raster Attributes, and fix the ‘pad’ parameter
...
Now that we explicitly set P2=1, we can safely emit a "Set Raster
Attributes" command, to tell the terminal the final size of the image
up front.
Also fix the ‘pad’ parameter (horizontal aspect ratio); XTerm rejects
sixels with pan or pad set to 0.
3 years ago
Daniel Eklöf
8b7fa78be1
[sixel]: set P2=1
...
This indicates that empty pixels should "remain at their current
color". I.e. it makes them transparent.
This is in contrast to P2=0|2, where empty pixels are filled with the
"current background color" (which is either sixel color register #0 ,
or the current ANSI background color, depending on terminal and its
sixel implementation).
Note that due to what is most likely a bug, XTerm will behave as if
P2=1 if P2 is either left unset, or explicitly set to 0 or 2, as long
as we do *not* emit a "Set Raster Attributes" command.
3 years ago
nick black
9c7fa38187
mlterm: enable quadrants (no sextants as of 3.9.0)
3 years ago
nick black
c7fca301e8
sixel: set a huge default max geom
3 years ago
nick black
e7ca10804d
xtsmgraphics reply: always allow 'S' to terminate #1523
3 years ago
nick black
430e328df6
[query_sixel] tighten sixel check state machine #1523
3 years ago
nick black
96ca5e79cb
xray: use alpha channel for sprixel
3 years ago
nick black
2e254d29e0
ncvisual_blitset_geom: fix unknown flag diagnostic
3 years ago
nick black
f8f2784a22
[alacritty] did they disable XTSMGRAPHICS again? wtf?
3 years ago
nick black
fada4148b5
[ncplayer] add -a option for alpha channel #1518
3 years ago
nick black
76241f81d2
[rust] adapt pixel-cell.rs
3 years ago
nick black
34bcbb505b
[xray] put streaming plane back above scrolling #1518
3 years ago
nick black
bac7d634d9
[visual] pipe transcolor through, use it everywhere #1518
3 years ago
nick black
0c566cd74a
[ncvisual] pipe transcolor through #1518
3 years ago
nick black
ff76dba6ed
cell_strdup -> nccell_strdup
3 years ago
nick black
d504e972cc
cell_release -> nccell_release
3 years ago
nick black
9dbcef9969
stop exporting lookup_blitset()
...
the media code that makes up non-core libnotcurses called
into lookup_rgba(). instead, have them use the new
funtion ncvisual_blitter_geom() to access the actual blitter
being used. we can then hide lookup_blitset(), which ought
never have been exported. closes #1519 .
3 years ago
nick black
d4fff6a921
check wcwidth('⣿') for braille support
3 years ago
nick black
1f67f540e6
[stacking] guard tests for quadrants
3 years ago
nick black
1720457467
[rotate] fix unit tests for odd number of columns
3 years ago
nick black
17a27427ec
[visual] guard quadblitter tests with check
3 years ago
nick black
7488a84121
[xray] bring slider plane to top #1518
3 years ago
nick black
80d93fdfb6
disable quadrants except where whitelisted #1517
...
Require a known-good TERM heuristic match to enable
quadrants (NCBLIT_2x2); they otherwise decay to halves
(NCBLIT_2x1). The only terminal that supports quadrants
but does not support sextants is the Linux console, where
we program quadrants directly into the font table,
like a beast. Closes #1517 , and #1298 if we're lucky.
3 years ago
nick black
62242f0e41
[terminfo] add alacritty hack for sixel #1430
3 years ago
nick black
53894caccb
add ncdirect_stream #1346
3 years ago
Nick Black
04b1ba8ed2
Dankamongmen/unify geom ( #1514 )
...
deprecate ncvisual_geom() in favor of new ncvisual_blitter_geom(), which allows caller to get the blitter used. replace the checks and calculations in ncvisual_render() with a call to ncvisual_blitter_geom(), unifying the two paths (and eliminating several bugs in the unloved ncvisual_geom()).
3 years ago
nick black
35e44d81c5
caps-rendered: differentiate sixel v kitty
3 years ago
nick black
1f33ada62e
[cffi] update for ncplane_as_rgba()
3 years ago
nick black
582bdebbc3
lol remove notcurses_debug() from notcurses_render()
3 years ago
nick black
f294c6bb0b
add ncplane_pixelgeom() #1507
3 years ago
nick black
d153ccb8f4
[ncvisual] properly size created plane
...
if we go into ncvisual_render() looking to render a number
of rows not evenly divisible by the scaling factor, we need
to get an extra row (duh). correct ncvisual_render_cell() to
reflect this. the blitters already know to fill this line in
with transparency wherever the image is not defined. fix up
rotation unit tests to reflect this. closes #1513 .
3 years ago
nick black
94839c2958
[ncdirect_stream] kill unused variable warnings
3 years ago
nick black
05082fc277
ncplane_as_rgba(), returns pixel geometry along with bitmap #1508
3 years ago
nick black
694a0c133f
[terminfo] only interrogate for sixel when pixel geometry is defined #1511 #1506
3 years ago
nick black
217453780e
[terminfo] remove alacritty hacks #1506 #1430
3 years ago
nick black
b1baa5e88a
[demo] print that we're checking for pixel support #1506
3 years ago
nick black
cc3cddf40b
[sprixel] don't yet enable sixel on alacritty
3 years ago
nick black
0febe3428f
[sprixels] simplify query_sixel()
3 years ago
nick black
9dad70568b
[plot] drop inline from update_sample
3 years ago
joseLuís
fce6c6873f
fix typos
3 years ago
nick black
8db054ede7
kill off get_controlling_tty in favor of get_tty_fd #1504
3 years ago
nick black
7865539505
query_sixel: support alacritty's ugh decisions #1430
3 years ago
nick black
0c2e3d6e35
[sixel] make some sixeltable args const
3 years ago
Nick Black
7e78690597
[bitmaps] new unit test LoadVideoPixelScaleDifferentPlanes ( #1502 )
3 years ago
nick black
7c35d94a9b
paint: referene crender, not rvec #1482
3 years ago
nick black
0dbd3cf830
ncvisual_render_pixels: hide any old sprixels
3 years ago
nick black
2f47d9adef
[bitmaps] new unit test LoadVideoPixelScaleDifferentPlanes
3 years ago
nick black
656b3221af
refresh: initialize with init_rvec, not memset()
3 years ago
nick black
123447183c
[jungle] fix invalid access on some window geometries
3 years ago
nick black
3d3d235abb
[xray] update frame count for new video
3 years ago
nick black
998ebf8254
[ncplayer] meaningless timespec dealloc
3 years ago
nick black
ee2f150058
[sprixels] move destruction into free_plane() from ncplane_destroy()
3 years ago
nick black
16b7910b57
[sprixels] plug two memory leaks
3 years ago
nick black
94b073dd3d
ncvisual_render_pixels: zorch reuse on either invalid ncv or n sprixel
3 years ago
nick black
cbd92e5180
sprixel_recycle: use the valid sprixel link
3 years ago
nick black
d7408cf5aa
[bitmap] check p_beats_sprixel, use text phase 2 when set #1496
3 years ago
nick black
3c4d25a092
[ncvisual] detach from sprite in ncvisual_destroy()
3 years ago
nick black
89734a2dc7
[bitmap] proper parameters for tacache TAM2 #1495
3 years ago
nick black
ad3322e4db
erp
3 years ago
nick black
6a1e74feae
[bitmaps] clear out ncvisual link on hide
3 years ago
nick black
f968ba7774
[plots] free up title in destructor
3 years ago
nick black
021fc052fc
[render] end kitty flicker #1493
3 years ago
nick black
631697e9e2
eliminate sixel flicker #1493
3 years ago
nick black
83296b4688
Revert "eliminate sixel flicker #1493"
...
This reverts commit aa80af8f87
.
3 years ago
nick black
aa80af8f87
eliminate sixel flicker #1493
3 years ago
nick black
d4883d30f2
[tests] add directmode bitmap test
3 years ago
nick black
c0dadcd5d7
[normal] don't use expired ncplane 'n' #1492
3 years ago
nick black
b6a9b59f9d
notcurses_plane.3: add BUGS about bitmap graphics and ncplane_at_yx()
3 years ago
nick black
fbe16935f3
[sixel] clean up sprixels on move #1449
3 years ago
nick black
d813a66581
[sixel] seed initial TAM matrix #1445
3 years ago
nick black
670dcbdd08
[kitty] initialize TAM matrix #1445
3 years ago
nick black
dd6d9392ec
[unittests] add PixelTAMSetup test #1445
3 years ago
nick black
259c5f5e3e
[tests] pixel test shouldn't check for wipe function
3 years ago
nick black
4c735cd95d
[paint] why must we constify ourselves, every day
3 years ago
nick black
21de64f65b
ncdirect_cursor_move_yx: only use cursor_yx_get with a real terminal #1486
3 years ago
nick black
afeed4d075
drone: run ctest with --output-on-failure
3 years ago
nick black
cef16e77ce
disable PixelWipe test until we can keep it from OOMing ctest
3 years ago
nick black
05f73da2da
directmode: get cursor position if we need to for cursor move #1486
3 years ago
nick black
98d506d011
[plots] error path return fixups -- thanks, unit tests!
3 years ago
nick black
4ca2bb0940
[visual-details] get compiling with OIIO C++
3 years ago
nick black
687aa93a84
[plots] c++ conversion done #1421
3 years ago
nick black
acc5be058c
[plots] move plot.cpp to C plot.c #1421
3 years ago
nick black
d62ced7aa4
[TERMINALS] wezterm notes
3 years ago
nick black
d2dfa0ecbb
[ffmpeg] move C++ to C #1421
3 years ago
nick black
322e4f4b3b
[kitty] fix off-by-one in write_kitty_data(), ugh
3 years ago
nick black
913f06d59c
[PixelWipeImages] actually test image wiping
3 years ago
nick black
0434d75689
[unittests] correct checks for putchar
3 years ago
nick black
b92991e57b
[visual] allow NCBLIT_PIXEL in ascii mode
3 years ago
nick black
c67981d668
[unittests] don't export sprite_wipe_cell()
3 years ago
nick black
57114c8005
[bitmaps] remove redundant PixelWipeBlocks test
3 years ago
nick black
5e4c07816d
[stream] restore erase(), preserve tacache across sixels #1482
3 years ago
nick black
da0da25269
[bitmaps] abstract out sprite_destroy()
3 years ago
nick black
65cc9a3ea9
[xray] keep bitmap plane below others
3 years ago
nick black
58c1cdf055
[bitmaps] ATL represent
...
Fix Sixel mutation by printing the Sixel first, and only then
printing text atop it. Come around a second time on sprixels
only. All tests and demos now work under both the Sixel and
the Kitty protocols.
Huzzah! World leader, bitch! Ain't nobody else done this.
3 years ago
nick black
7127118d27
[fallin] undo changes which put background on top
3 years ago
nick black
51182e3315
[sixel] reproduce surgery map #1457
3 years ago
nick black
6907562c9c
[kitty] apply tacache #1457
3 years ago
nick black
21c0e17c05
[kitty] tacache resuse #1457
3 years ago
nick black
2e1582af1f
plane_blit_sixel: move back to memcpy()
3 years ago
nick black
094dd89bb7
[sixel] don't double-close fp on error
3 years ago
nick black
dd5136256a
[ffmpeg] don't erase() in stream()
3 years ago
nick black
feb462bafa
[sprixels] comment out debugging cruft
3 years ago
nick black
69c8e25894
[sprixels] kill glyph copy on sprixel load
3 years ago
nick black
4ee0582321
[bitmaps] introduce sprixcell_e enum #1457
3 years ago
nick black
85d0df491e
[bitmap] intensify unit tests
3 years ago
nick black
cd6b9c2c87
[intro] kill unused param warnings
3 years ago
nick black
f887b5a122
[intro] use NCSCALE_SCALE
3 years ago
nick black
11685e77cc
[sprixel_create] eliminate copy of glyph
3 years ago
nick black
fac56fc2cc
[plane] incorporate left/top margins into resize #1472
3 years ago
nick black
5a6ee2d720
[ncplane_dup] remove cheerful diagnostic
3 years ago
nick black
a8a42c2a50
[planes] implement ncplane_resize_marginalized() #1472
3 years ago
nick black
7c5b7fe85c
[ncplane_new] allocate based on true length #1472
3 years ago
nick black
1688f66bc7
[ncplane_new_internal] fix diagnostic
3 years ago
nick black
50df69ab31
[planes] implement MARGINALIZED in ncplane_create() #1472
3 years ago
nick black
78c8e70933
[planes] add NCPLANE_OPTION_MARGINALIZED #1472
3 years ago
nick black
a3a4f40fa0
[bitmaps] add a big unit test on wiping
3 years ago
nick black
d095ba9bb7
[keller] drop 2 unnecessary bitmap workarounds
3 years ago
nick black
0100e26d62
[ncplayer] use unique_ptr for view plane
3 years ago
nick black
0c36e1248e
[blit] skip over left/top trim, allowing neg placement #1470
3 years ago
nick black
ca84f95379
[demo] vertically align fpsgraph at bottom
3 years ago
nick black
fea6b51bdf
xray: horizontally center video
3 years ago
nick black
390bfc6647
ncplayer: extract handle_subtitle()
3 years ago
nick black
df85fb55ba
[bitmaps] fix bitmap placement when making a new plane #1468
3 years ago
nick black
229c1ab3c2
ncplane_new_internal: use ncplane_valign() #1468
3 years ago
nick black
86de98c5d2
Fix cell blit / plane vertical alignment
...
Deprecate ncplane_align(), after rewriting it as a passthrough
to new function ncplane_halign(). Add ncplane_valign(). Update
all callers. Closes #1468 .
3 years ago
nick black
51ccd60e96
[kitty] comment up the graphics protocol]
3 years ago
nick black
8b3e692fa1
[ncplayer] don't vertically center until #1468 is resolved
3 years ago
nick black
958b75bed7
NCPLANE_OPTION_VERALIGNED for bitmaps #1465
3 years ago
nick black
ff86bb0187
[ncvisual] first stab at NCVISUAL_OPTION_VERALIGNED #1461
3 years ago
nick black
de69fd858b
fwrite vs ncputs
...
theoretically, fwrite() could get better performance than
fputs() due to knowing the length of its input buffer. i
didn't see any perf change beyond noise, but who knows.
3 years ago
nick black
465390f5e1
[planes] implement NCPLANE_OPTION_VERALIGNED #1465
3 years ago
nick black
6105913d06
[planes] add NCPLANE_OPTION_VERALIGNED #1465
3 years ago
nick black
3d586844fb
[intro] great scott!
3 years ago
nick black
625955ba63
[intro] cover the x-axis when we move
3 years ago
nick black
00634eb982
[ncdirect] honor xoff for bitmaps #1436
3 years ago
nick black
83af07546d
[bitmap] actually call sprite_sixel_init()
3 years ago
nick black
6f446f94de
remove kittyzapper PoC
3 years ago
nick black
721e208ce2
[ncplayer] newline between bitmaps in directmode
3 years ago
nick black
8b9af4cf0e
[visual] work for all alignment types
3 years ago
nick black
42e1e4f5d0
[visual] NCVISUAL_OPTIONS_HORALIGNED for bitmaps #1443
3 years ago
nick black
1c3e10f926
[visual] implement NCVISUAL_OPTION_HORALIGNED for cells 1443
3 years ago
nick black
f714337fe1
[visual] NCVISUAL_OPTION_HORALIGNED for cell blitters #1443
3 years ago
nick black
cd297ff4d2
[tests] add pixel video test, direct mode scale test
3 years ago
nick black
57cb7004ff
[ncvisual] add logerror() throughout parameter checks
3 years ago
nick black
6f4a9e089c
[tests] unit test for directmode image rendering
3 years ago
nick black
828cce634a
[capabilites] remove redundant notcurses_canpixel()
3 years ago
nick black
32def3a600
[nctabbed] notcurses_stop() ending unit tests
3 years ago
nick black
a487aa9a28
[nctabbed_destroy] work on single-element case
3 years ago
nick black
978d872307
[nctabbed] get Add test working
3 years ago
nick black
7754eed249
fix bad test in ncreel_add()/nctabbed_add()
3 years ago