Commit Graph

4838 Commits

Author SHA1 Message Date
nick black
cfd47c26b6
ncvisual_render_pixels: reject negative placex/placey on alignment #1526 2021-04-12 04:22:31 -04:00
nick black
669bc5fa33
[mlterm] sixel cursor hack
At least mlterm unhides the cursor after emitting a
Sixel, even if it was hidden beforehand. Track this
behavior using 'sprixel_cursor_hack' in the tinfo cache.
Set this based on an "mlterm" TERM heuristic match.
When it is set, supply the 'civis' capability as
cursor_hack in blitterargs, and emit it at the end of
the sixel in sixel_blit() #1524.
2021-04-12 04:02:23 -04:00
nick black
03a1e66bf9
TERMINALS.md: add notes on terminology 2021-04-12 03:32:42 -04:00
nick black
7e08e40bff
notcurses_stop: don't treat drop_signals() as an error 2021-04-12 03:32:32 -04:00
nick black
e301ef34ae
disable alacritty sixel until ayosec/graphics is merged #1430 2021-04-12 03:25:49 -04:00
nick black
084d5d6673
notcurses_init: free memstream on error paths 2021-04-12 03:23:55 -04:00
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.
2021-04-12 02:44:36 -04:00
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.
2021-04-12 02:44:36 -04:00
nick black
9c7fa38187
mlterm: enable quadrants (no sextants as of 3.9.0) 2021-04-12 02:25:21 -04:00
nick black
c7fca301e8
sixel: set a huge default max geom 2021-04-12 02:17:06 -04:00
nick black
e7ca10804d
xtsmgraphics reply: always allow 'S' to terminate #1523 2021-04-12 02:14:15 -04:00
nick black
430e328df6
[query_sixel] tighten sixel check state machine #1523 2021-04-12 02:03:17 -04:00
nick black
96ca5e79cb
xray: use alpha channel for sprixel 2021-04-12 01:12:37 -04:00
nick black
2e254d29e0
ncvisual_blitset_geom: fix unknown flag diagnostic 2021-04-12 00:53:42 -04:00
nick black
0fade67ae1
link to Jakub Dundalek's zig example 2021-04-11 20:32:49 -04:00
joseLuís
5f96acc9e3 [rust] refacture NcVisual module
- separate the methods into its own module.
- add constants NCVISUAL_OPTION_ADDALPHA, NCVISUAL_OPTION_HORALIGNED, NCVISUAL_OPTION_VERALIGNED
- add NcRgba type.
- update the docs.
2021-04-10 20:19:13 +02:00
nick black
f8f2784a22
[alacritty] did they disable XTSMGRAPHICS again? wtf? 2021-04-10 13:39:29 -04:00
joseLuís
48ab7e0945 [rust] fix #1509
- fix bugs in macros: error, error_ref & error_ref_mut
- remove issue-1509 example
- minor improvements
- rustfmt
2021-04-10 19:26:55 +02:00
nick black
fada4148b5 [ncplayer] add -a option for alpha channel #1518 2021-04-10 12:02:58 -04:00
nick black
76241f81d2 [rust] adapt pixel-cell.rs 2021-04-10 12:02:58 -04:00
nick black
bb0d6c2e80 [rust] update fullsize_pixel_without_plane() 2021-04-10 12:02:58 -04:00
nick black
34bcbb505b [xray] put streaming plane back above scrolling #1518 2021-04-10 12:02:58 -04:00
nick black
bac7d634d9 [visual] pipe transcolor through, use it everywhere #1518 2021-04-10 12:02:58 -04:00
nick black
0c566cd74a [ncvisual] pipe transcolor through #1518 2021-04-10 12:02:58 -04:00
joseLuís
932f4c1b7c [rust] simplify issue-1509 example 2021-04-10 15:54:38 +02:00
nick black
33929cf91e
[rust] update to nccell 2021-04-10 09:33:01 -04:00
joseLuís
bc80350384 [rust] several fixes
- fix after renaming cell functions.
- fix some NcVisual method names and docs
- fix some rustdoc warnings
2021-04-10 15:29:55 +02:00
nick black
9fdfd33d30
[cffi] update cell_release to nccell_release 2021-04-10 09:29:09 -04:00
nick black
849ec2748f
[rust] nccell updates 2021-04-10 09:23:42 -04:00
nick black
ff76dba6ed
cell_strdup -> nccell_strdup 2021-04-10 09:21:52 -04:00
nick black
94a2badc06
Merge branch 'master' of github.com:dankamongmen/notcurses 2021-04-10 09:11:09 -04:00
nick black
0fc5f7835d
[docs] cell_release -> nccell_release 2021-04-10 09:11:04 -04:00
nick black
d504e972cc
cell_release -> nccell_release 2021-04-10 09:09:56 -04:00
joseLuís
1afe6f162e rust: add new pixel geometry functionality
- add NcPlane method .pixelgeom.
- upgrade full-capabilities example.
- fix NcVisual method .blitter_geom docs.
- rustfmt
2021-04-10 15:09:02 +02:00
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.
2021-04-10 08:56:59 -04:00
nick black
d4fff6a921
check wcwidth('⣿') for braille support 2021-04-10 07:56:56 -04:00
joseLuís
66d4f323e8 rust: fix .gitignore; remove issue example
- make .gitignore just ignore the *root* build dir
- remove unneeded rust/.gitignore
- remove no longer needed issue-rgba.rs
2021-04-10 13:03:54 +02:00
nick black
1f67f540e6
[stacking] guard tests for quadrants 2021-04-10 06:58:08 -04:00
nick black
1720457467
[rotate] fix unit tests for odd number of columns 2021-04-10 06:52:39 -04:00
joseLuís
8e8c20468b rust: update function-summary
- add PENDING-changes.md file to keep track.
- remove output-* folder, no longer needed.
- move old bindgen*rs and changes*txt files to history/.
2021-04-10 12:45:16 +02:00
nick black
17a27427ec
[visual] guard quadblitter tests with check 2021-04-10 06:37:05 -04:00
nick black
7488a84121
[xray] bring slider plane to top #1518 2021-04-10 06:23:48 -04:00
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.
2021-04-10 05:12:45 -04:00
nick black
62242f0e41 [terminfo] add alacritty hack for sixel #1430 2021-04-10 04:41:14 -04:00
nick black
cf3a6317aa export ncdirect_stream() 2021-04-10 04:41:14 -04:00
nick black
53894caccb add ncdirect_stream #1346 2021-04-10 04:41:14 -04:00
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()).
2021-04-10 04:04:02 -04:00
nick black
945b560dc2
mention direct mode in CURSES document 2021-04-10 01:27:15 -04:00
nick black
35e44d81c5
caps-rendered: differentiate sixel v kitty 2021-04-10 00:48:24 -04:00
nick black
1f33ada62e
[cffi] update for ncplane_as_rgba() 2021-04-10 00:47:03 -04:00