Commit Graph

947 Commits

Author SHA1 Message Date
nick black
b9c4d359af
[docs] add notcurses_canpixel() to notcurses_capabilities.3 2021-10-26 09:55:24 -04:00
nick black
97f63dc954
v2.4.8 2021-10-23 06:36:18 -04:00
nick black
48ee66918a
[signals] include SIGBUS among fatal signals 2021-10-22 22:08:02 -04:00
nick black
6e2ab83a08
[utils] declare notcurses_osversion #2293 2021-10-21 18:36:52 -04:00
nick black
9097568ac0
document NOTCURSES_LOGLEVEL #2277 2021-10-17 17:28:35 -04:00
nick black
acb91339e4
v2.4.7 2021-10-16 23:52:33 -04:00
nick black
41764d3691
v2.4.6 2021-10-16 16:01:21 -04:00
nick black
9d002feea3 remove last instances of ncvisual_render() #1462 2021-10-16 03:39:25 -04:00
nick black
bb2004e589 ncvisual_render -> ncvisual_blit (docs) 2021-10-16 03:39:25 -04:00
nick black
99169aea42
tabbed janitorial work
clean up memory leak of tab names
ignore NCTYPE_RELEASE in tabbed PoC
constify strings in nctabbed_options
2021-10-14 03:26:15 -04:00
nick black
abea3f9064
constify ncmenu_item/_section strings 2021-10-13 20:38:21 -04:00
nick black
2015e8ffc9
Constify strings in selector/mselector_items
Use internal types to track items within the
selector/mselector widgets, rather than pressing the
user-provided item structs into double-duty. With this
change, we can constify the strings within those
user-provided items. Do so, also removing the internal-side
elements. Update documentation. Closes #2267.
2021-10-13 19:19:43 -04:00
nick black
1152e2c318
ncselector_options: constify string arguments 2021-10-13 18:38:10 -04:00
nick black
2148bcc4f2
Revert "[nckeys] move from PUA-B to 'plane 18' #2247"
This reverts commit e83f1f5ba3.
2021-10-09 11:07:26 -04:00
nick black
e83f1f5ba3
[nckeys] move from PUA-B to 'plane 18' #2247 2021-10-09 11:06:51 -04:00
nick black
a8b3634ca7 [ncvisual] add pxoffy+pxoffx fields to ncvisual_options #1682 2021-10-08 01:56:22 -04:00
nick black
7ba72c4c20
v2.4.5 2021-10-07 04:30:05 -04:00
nick black
6d3c64a5c1
[ncvisual_pixelgeom] document that results are invalidated by terminal resize #2141 2021-10-07 00:53:12 -04:00
nick black
4c81a72bab
notcurses_input.3: mention mouse events in bottom/right margins can show up #2233 2021-10-05 05:34:06 -04:00
nick black
cadd5f75fb notcurses_plane.3: add section about bindings 2021-10-05 02:15:56 -04:00
nick black
9185ea000c
add ncplane_set_name()/ncplane_name() + documentation 2021-10-04 20:46:47 -04:00
nick black
518eca2f60
move_family_{below,above}() need return int #2232 2021-10-04 13:41:14 -04:00
nick black
43fc6afaa3
ncplane_move_family_{above, below}() #2232 2021-10-04 01:50:01 -04:00
nick black
e42a76a2d2
Remove and replace ncplane_boundlist()
The function ncplane_boundlist() was poorly-considered,
and ought never have existed. Remove all traces of it.
Add the new functions ncplane_move_family_top() and
ncplane_move_family_bottom(). Replace the
ncplane_boundlist() code in notcurses-demo with a call
to ncplane_move_family_top(). We'll also want
ncplane_move_family_above() and ncplane_move_family_below(),
but they're not yet here. Document all z-axis movement
functions; they were lacking documentation before #2232.
2021-10-04 01:01:35 -04:00
nick black
ff84058f5c
v2.4.4 2021-10-03 00:20:52 -04:00
nick black
b5c161a07c
Unify control sequence automata #2183 (#2208)
Unify the dynamic, dataflow special keys automaton and the static, codeflow terminal response automaton, yielding a single automaton. Add kitty keyboard support information to `notcurses-info`. Closes #2183.
2021-09-30 05:08:19 -04:00
nick black
436f24c770
Remove libreadline support, implement low-level ncdirect_readline #2211 (#2212)
It was realized that our libreadline wrapper was incompatible with the new input method, indeed fundamentally so. Rip out all libreadline support. Implement a minimal ncdirect_readline() -- quite minimal, but enough to get by. We'll want to fill this out later.

So no ABI/API breakage, though perhaps some visible behavioral change.
2021-09-28 01:37:44 -04:00
nick black
a603d265a4
v2.4.3 2021-09-26 12:35:50 -04:00
nick black
72757044da [ncplane_erase_region] generalize #2181 2021-09-21 18:32:39 -04:00
nick black
5269e4b709
v2.4.2 2021-09-20 08:03:12 -04:00
nick black
3faf8ee3fb
[input] introduce NCKEY_EOF #2185 2021-09-19 22:16:31 -04:00
nick black
ea5da346f0
Add keytype indicator to notcurses-input #2182 2021-09-19 21:01:40 -04:00
nick black
99007e128c
[input] add evtype to ncinput, for press/repeat/release #2182 2021-09-19 20:13:02 -04:00
nick black
c59cbaa340
[index.html] drop bottom banner 2021-09-19 18:37:40 -04:00
nick black
1dd1fb2c74
[index.html] put repology on right 2021-09-19 18:34:05 -04:00
nick black
1d4c62d446
[input] implement timeouts 2021-09-16 02:03:00 -04:00
nick black
1630a1629f
merge that shit 2021-09-14 03:41:46 -04:00
nick black
3cf5a67b84
input thread #2136 2021-09-14 03:34:53 -04:00
nick black
f9df8e14fc
v2.4.1 2021-09-12 22:14:19 -04:00
nick black
4ec1bfd8be
[info] differentiate between kitty animation and kitty selfref #2161 2021-09-12 02:17:29 -04:00
nick black
54cf38b076
add ncstrwidth_valid() and documentation #2153 2021-09-10 01:28:27 -04:00
nick black
8aa856f20b
v2.4.0 2021-09-06 05:29:56 -04:00
nick black
108012950e
notcurses-info: indicate that el capability is present 2021-09-04 19:07:09 -04:00
nick black
25afdd8ab6 [kitty] handle level 1 of keyboard protocol #2131 2021-09-04 17:39:04 -04:00
nick black
e6ce5196d3
v2.3.18 2021-08-31 20:06:55 -04:00
nick black
ae1121402d
ncneofetch: accept -v 2021-08-30 19:54:52 -04:00
nick black
0de89b893a
home page: move things around a little 2021-08-27 14:17:36 -04:00
nick black
1915fb48a1
v2.3.17 2021-08-22 16:08:03 -04:00
nick black
ed557257d9 add notcurses_{enter,leave}_alternate_screen #2082 2021-08-21 23:00:58 -04:00
nick black
b978f58985 stop supporting/advertising renderfp #2081 2021-08-21 23:00:58 -04:00
nick black
5449878840
v2.3.16 2021-08-19 22:14:45 -04:00
nick black
89622ed1a1
notcurses_init.3: close parenthetical 2021-08-17 21:24:50 -04:00
nick black
f0558ff67a
notcurses_init.1: update comments on log levels 2021-08-17 21:15:44 -04:00
nick black
c9fbc5d7f9
v2.3.15 2021-08-17 19:18:05 -04:00
nick black
28def058ce
v2.3.14 2021-08-17 18:32:46 -04:00
nick black
91dfb487ad remove support for the iTerm2 graphics protocol #2060 2021-08-15 22:12:49 -04:00
nick black
c33ce4f9dd
rewrite NCCHANNELS_INITIALIZER in terms of NCCHANNEL_INITIALIZER 2021-08-13 14:14:33 -04:00
nick black
e35c49889d
ncchannel: make some unsigneds explicit uint32_ts 2021-08-13 03:54:06 -04:00
nick black
4d6526a61d ncneofetch rewritten in CLI mode
ncneofetch was previously direct mode followed by rendered mode with
margins, a Frankenstein application if one ever existed. Rewrite it
using CLI mode, extending the latter as necessary to accomplish this
task. We now have one fewer dependency on direct mode, we have better
proven out CLI mode, and we get a ~30% reduction in ncneofetch runtime.
Good stuff! Closes #2030.

Add ncplane_scrollup() and ncplane_scrollup_child()
Cleans up ncport.h
Eliminates some inconsequential memory leaks in ncneofetch
Add SPRIXEL_UNSEEN to avoid invalid moves on
 not-yet-displayed sprixels
2021-08-12 18:37:53 -04:00
nick black
9fcbf00420
v2.3.13 2021-08-04 23:37:22 -04:00
nick black
a346a5bf64
add new functions notcurses_{host,account}name() 2021-08-04 23:17:34 -04:00
nick black
24d7d6d995
start merging in the fauxmemstream branch #1977 2021-08-04 14:59:37 -04:00
nick black
6f0830c29a
force zero-width-joins #2016 2021-08-02 09:00:01 -04:00
nick black
16c2fff06b
notcurses-info.1: detail environment lines 2021-08-01 22:43:32 -04:00
nick black
89125802c6 notcurses-info: update man page with more text 2021-08-01 22:33:48 -04:00
nick black
42049dc95e
reorder demos so whiteout doesn't disrupt uniblock 2021-07-31 02:58:28 -04:00
nick black
1e248e41e1
v2.3.12 2021-07-29 00:55:19 -04:00
nick black
b0b5e49383 ncvisual_from_palidex 2021-07-27 15:47:21 -04:00
nick black
1448960cd5 start handling type-1 DVB subtitles #1311 2021-07-27 15:47:21 -04:00
nick black
7b5f4175eb
add nccell_cols(), deprecate nccell_width() 2021-07-26 19:39:15 -04:00
nick black
0a6fd661b4 set_rgb: unsigned unless we're clipping 2021-07-25 08:26:40 -05:00
nick black
0d289958f9
death to sigset_t #1967 2021-07-25 00:38:33 -04:00
nick black
8d46a0bd17
capture bytes in linux framebuffer graphics to sprixelbytes stat 2021-07-21 17:41:32 -04:00
nick black
30d71ab6b9
v2.3.11 2021-07-20 14:07:47 -04:00
nick black
1f254c47b2
implement child plane scrolling #1883 2021-07-18 16:35:01 -04:00
nick black
382b68f5ab
why weren't we always handling SIGFPE? 2021-07-17 21:55:57 -04:00
nick black
1fae68d9c6
add NCPLANE_OPTION_FIXED #1909 2021-07-15 23:04:25 -04:00
nick black
3aaff6a944
v2.3.10 2021-07-14 22:41:59 -04:00
nick black
561f4eba8c
v2.3.9 2021-07-12 12:24:38 -04:00
Tomek Szczęsny
0baf4ea1b5
Relative cursor move (#1885)
Relative cursor move by @tomek-szczesny
2021-07-11 09:53:56 -04:00
nick black
92293dd402
adapt new python to NCCHANNEL 2021-07-10 19:58:50 -04:00
nick black
83d8724e63
updating CELL_ -> NC_ references 2021-07-10 18:34:00 -04:00
nick black
603fd770fe
update new python for CHANNEL_RGB change 2021-07-10 18:20:44 -04:00
nick black
14a50cfa3f
add ncchannels_reverse, use it in ncmenu, add unit test #1878 2021-07-07 09:36:31 -04:00
nick black
f0aec109b7
support menus on any plane #1645 2021-07-07 08:33:36 -04:00
nick black
8846e3cee2
ncdirect_putegc(), get true width in ncwidth #1899 2021-07-07 05:54:47 -04:00
nick black
4a23acab2d
fission demo: go both up and down #1896 2021-07-07 04:29:36 -04:00
nick black
00e28cc569
complete ncplane_cursor_move_yx() documentation 2021-07-05 23:42:51 -04:00
nick black
43f0a2e5c8
remove false comments on ncplane_move_yx() 2021-07-05 23:39:42 -04:00
nick black
cd80b70594
add ncplane_moverel(), no unit tests though =[ #1881 2021-07-04 11:15:45 -04:00
nick black
f1202df541
document ncplane_cursor_move_yx better #1882 2021-07-04 11:05:31 -04:00
nick black
1189891167
v2.3.8 2021-07-04 01:14:12 -04:00
nick black
0e341fa3de
notcurses-info.1: describe output 2021-07-03 19:25:42 -04:00
nick black
8b6a30cba8
v2.3.7 2021-06-29 07:10:22 -04:00
nick black
a21113a66a
ncls: use NCSCALE_HIRES with NCBLIT_PIXEL by default 2021-06-29 04:47:40 -04:00
nick black
490c89f694 add ncplane_scrolling_p() #1841 2021-06-27 07:38:40 -04:00
nick black
7361683d3b
deny control characters in cells and plane emissions #1840 2021-06-27 03:16:24 -04:00
nick black
e813e3abe4
ncls: default to NCBLIT_PIXEL #1835 2021-06-26 20:17:37 -04:00
nick black
aa716d6814
add NCSTYLE_BLINK back to documentation #1818 2021-06-26 01:16:02 -04:00
nick black
166212f234 document NCOPTION_PRESERVE_CURSOR #1823 2021-06-25 00:21:08 -04:00
nick black
9d7f07771b
GTFO NCSTYLE_DIM, NCSTYLE_REVERSE #1818 2021-06-24 02:13:57 -04:00
nick black
481d539092
v2.3.6 2021-06-23 22:35:19 -04:00
nick black
a14a5271ac
v2.3.5 2021-06-23 13:07:42 -04:00
nick black
041f97371f add stat for ASUs and send them #1582 2021-06-22 16:30:58 -04:00
nick black
93fd4515e7
ncplayer: accept a color specification for -a 2021-06-22 09:49:48 -04:00
nick black
379453c8ea
render piles to file/buffer
Replace notcurses_render_to_file() and
notcurses_render_to_buffer() with variants that work
on arbitrary piles (the former only worked on the standard
pile). Rewrite the former as trivial wrappers around the
latter, and deprecate the former. Closes #1770.
2021-06-22 01:17:55 -04:00
nick black
e5662ac506 add and document sprixelbytes stat #1801 2021-06-20 08:51:23 -04:00
nick black
d360cc1d1e ncvisual_from_rgb_{packed, loose}() #1767 2021-06-19 05:14:09 -04:00
nick black
c8dfa17485
Set up sane logging for direct mode
All our diagnostic macros required a struct notcurses from
which to extract the loglevel. Eliminate this parameter,
and update all caller sites. Add a library-wide (but not
exported) loglevel variable, and set it from both
notcurses_core_init() and ncdirect_core_init(). Add two
new direct mode flags, NCDIRECT_OPTION_VERBOSE and
NCDIRECT_OPTION_VERY_VERBOSE, mapping them to
NCLOGLEVEL_WARNING and NCLOGLEVEL_INFO respectively.
Closes #1690.
2021-06-19 03:21:05 -04:00
nick black
048f2f5e77
handle nointerpolate in transparent sexblitter cell #1763 2021-06-19 01:12:49 -04:00
nick black
c9a338e0fd
add ncdirect_canget_cursor() #1790 2021-06-18 14:24:35 -04:00
nick black
476ebe5533
tie warning about no multimedia to linking with null implementation #1771 2021-06-15 23:39:44 -04:00
nick black
3cf971ac67 update ncvisual_plane.3 for ncplane_as_rgba() #1441 2021-06-15 22:33:20 -04:00
nick black
6d68e3c0cd
reference tack(1) in notcurses-{input,info}(1) 2021-06-13 19:46:40 -04:00
nick black
0d7a5a5ef8 remove the majority of notcurses_check_pixel_support() calls #1469 2021-06-13 18:21:14 -04:00
nick black
cadd4aefee s/CELL_ALPHA_/NCCELL_ALPHA_/g 2021-06-13 18:21:14 -04:00
nick black
160868d9e8
v2.3.4 2021-06-12 17:27:28 -04:00
nick black
4ca1036da9
v2.3.3 2021-06-12 16:54:36 -04:00
nick black
d695a8206f
add ncdirect_detected_terminal() and notcurses_detected_terminal() #1759 2021-06-12 13:10:16 -04:00
nick black
889d985c85
notcurses_visual.3: clarify parameters #1615 2021-06-11 17:28:27 -04:00
nick black
deea4ddf9c ncdirectf_geom: move to ncvisual_options #1746 2021-06-10 14:43:17 -04:00
nick black
ad13e5c428
index.html: reference notcurses-info 2021-06-09 21:32:01 -04:00
nick black
c56dfc2607
install caps-rendered as notcurses-info #1745 2021-06-09 20:54:20 -04:00
nick black
5426e153f7 ncdirectf_render: make ncvisual_options const, thanks @joseluis #1738 2021-06-09 06:57:15 -04:00
nick black
c967028fbe ncplayer: add -n option for noninterpolative scaling #1738 2021-06-09 06:57:15 -04:00
nick black
59f4edd777 ncdirectf_render: accept an ncvisual_options #1738 2021-06-09 06:57:15 -04:00
nick black
6fcaad3c5d
generalize ncvisual_inflate() to ncvisual_resize_noninterpolative() #1738 2021-06-08 16:32:03 -04:00
nick black
3aa287b9d4
notcurses.3: make explicit that rasterizing clears the area #1732 2021-06-08 14:55:40 -04:00
nick black
d730abb6b0 notcurses_render: purge falsehood #1732 2021-06-08 13:05:36 -04:00
nick black
7d6c03fe6a notcurses_visual.3: document BLEND interactions with PIXEL #1735 2021-06-08 13:05:36 -04:00
nick black
a6433caeaa add NCVISUAL_OPTION_NOINTERPOLATE #1576 2021-06-08 13:05:36 -04:00
nick black
ea13e25cf4 kill NCSCALE_INFLATE #1576 2021-06-06 15:14:35 -04:00
nick black
bf62f5ac3f
notcurses_visual.3: document what functionality requires a multimedia backend #1718 2021-06-06 00:22:30 -04:00
nick black
507d2c8d8e
v2.3.2 2021-06-03 02:29:13 -04:00
nick black
d170e6e7a2 man pages: document that only one context can be active at a time #1694 2021-06-01 17:44:34 -04:00
Nick Black
cd2b5de5fa
Panblitter ncplane_as_rgba() (#1697)
ncplane_as_rgba: genericize across blitters

ncplane_as_rgba() previously was implemented explicitly
in terms of NCBLIT_2x1. it now uses the `egcs` field of the
`blitset`. this supports NCBLIT_2x2 and NCBLIT_3x2 in
ncplane_rgba(). Closes #1490.
2021-06-01 02:25:11 -04:00
nick black
d20a4d8104
ncdirect: restore colors properly following sgr #1703 2021-05-31 20:07:10 -04:00
nick black
c4e2932c76 add ncdirect_supported_styles(), move SGR/SGR0/OC into escblock #1525 2021-05-26 18:04:29 -04:00
nick black
50693fb812
add a section on hardware cursor to notcurses_init.3 #1681 2021-05-22 23:19:58 -04:00
nick black
f2b26723c9
document notcurses_cursor_yx() #1681 2021-05-22 23:07:11 -04:00
nick black
07ea230476
notcurses.3: proper pandoc syntax for FILE* 2021-05-22 17:21:42 -04:00
nick black
6969652031
add ncinput_nomod_p() 2021-05-21 20:06:36 -04:00
nick black
739c96032d
v2.3.1 2021-05-18 04:03:27 -04:00
nick black
42f26fcb1e ncls: update to prep_image() maxy/maxx #1661 2021-05-18 03:36:27 -04:00
nick black
c42fab1564 implement ncdirectf passthroughs #1659 2021-05-16 12:58:24 -04:00
nick black
d1e7adf410 add ncdirectf api #1659 2021-05-16 12:58:24 -04:00
nick black
f91ffae773
link to new 2.3.0 video 2021-05-14 04:44:38 -04:00
nick black
1a7c5172f4
add note about sprixel/fb relationship to NEWS.md 2021-05-14 01:45:20 -04:00
nick black
8bd73378cf
add NCSCALE_INFLATE 2021-05-12 13:07:23 -04:00
nick black
ea4c593455
v2.3.0 2021-05-09 18:54:22 -04:00