Commit Graph

386 Commits

Author SHA1 Message Date
nick black
a4367fcfb5 rip out ncplane_ creation functions #985 2020-09-18 17:46:57 -04:00
nick black
e42dbdfd60 _stainable() -> _stained() #985 2020-09-18 02:02:08 -04:00
nick black
c85ac831c6 man pages: update for rgb name changes #985 2020-09-18 01:39:21 -04:00
nick black
4bb1f3fc85 mbswidth -> ncstrwidth() #985 2020-09-15 01:39:42 -04:00
nick black
dab7247cdd
mbswidth: use utf8_egc_len() for segmentation #1014 2020-09-15 00:29:53 -04:00
nick black
5fc9f7b367
plot: update man page #627 2020-09-13 14:40:18 -04:00
nick black
c3e5e47a2a
ncreader: conform to the New Way #627 2020-09-13 13:53:11 -04:00
nick black
4f04f1bc31 remove bgchannels field from selector_options #627 2020-09-13 13:22:58 -04:00
nick black
306948507f ncmultiselect: normalize per new widget API #627 #1006 2020-09-13 13:22:58 -04:00
nick black
cc98b51276 ncselector: finish out man page #627 2020-09-13 13:22:58 -04:00
nick black
bc097a5674
v1.7.2 2020-09-10 04:14:01 -04:00
nick black
af05ae7a92 man pages: document NCREADER_OPTION_CURSOR 2020-09-06 23:10:16 -04:00
nick black
f88c8ae79c
expose ncvisual_default_blitter(), name blitter in notcurses-view #995 2020-09-06 12:56:16 -04:00
nick black
c7cb149d95
notcurses.3: update CMake module name 2020-09-01 22:02:36 -04:00
nick black
3afcfc97d6
ncreader: define NCREADER_OPTIONS_EMACSKEYS 2020-08-31 22:43:42 -04:00
nick black
70f062aff5
v1.7.1 2020-08-31 21:49:39 -04:00
nick black
2f28420034 rename ncplane_putsimple() -> ncplane_putchar() #912 2020-08-31 21:14:29 -04:00
nick black
64fe8f6c07
v1.7.0 2020-08-30 19:12:16 -04:00
nick black
4c7a1d0427 ncdirect_init: add flags parameter #976 2020-08-30 13:38:33 -04:00
nick black
c93243fd54
v1.6.20 2020-08-30 01:25:44 -04:00
nick black
a48e840542 document ncreel a bit more 2020-08-29 18:24:45 -04:00
nick black
66f80c77f9
add ncplane_y() and ncplane_x() 2020-08-29 15:50:45 -04:00
nick black
e92b7fd6ea
v1.6.19 2020-08-27 12:43:28 -04:00
nick black
6526e58c00
v1.6.18.4 2020-08-27 12:30:29 -04:00
nick black
6ea73e6e45
v1.6.18.3 2020-08-27 08:18:38 -04:00
nick black
550c02d8ac
v1.6.18.2 2020-08-27 07:26:28 -04:00
nick black
d11d8175d0
v1.6.18.1 2020-08-27 03:10:48 -04:00
nick black
602607d737 notcurses_directmode.3: mention cbreak mode 2020-08-26 23:12:59 -04:00
nick black
6d7f9eb501
v1.6.18 2020-08-25 18:24:19 -04:00
nick black
9d75f575db
ncplane_set_[fb]channels 2020-08-25 17:28:29 -04:00
nick black
70a28feb63
ncreader: horizontal scrolling mostly works #839 2020-08-25 08:58:49 -04:00
nick black
7cbb2e9110 zoo demo: show cursor in reader box #835 2020-08-25 06:29:03 -04:00
nick black
a53d5a21a8 disable/enable cursor for rasterize 2020-08-25 04:55:06 -04:00
nick black
d900fdb7fa ncreader: create off-screen plane for horizontal scrolling #839 2020-08-25 04:55:06 -04:00
nick black
fbaa451ff9 ncreader: allow NCREADER_OPTION_HORSCROLL #839 2020-08-25 04:55:06 -04:00
nick black
d610bd3ece flesh out reader.3 2020-08-25 04:55:06 -04:00
nick black
cab19cf790 Cursor work (placement, drop RETAIN_CURSOR) #953
notcurses_enable_cursor() now accepts placement arguments.
both it and notcurses_disable_cursor() now return int rather
than void. add notcurses_cursor_move_yx().
2020-08-25 03:11:50 -04:00
nick black
4dd1d6a4c8 Annihilate nc_err_e and all infrastructure #948 2020-08-24 17:20:29 -04:00
nick black
f2d92b0f05
bring notcurses_cell.3 up to date #949 2020-08-24 15:15:27 -04:00
nick black
8b75769476
flesh out notcurses_stop.3 #949 2020-08-24 15:08:33 -04:00
nick black
c9c1f2841e
man page polishing 2020-08-24 00:35:41 -04:00
nick black
8914df6445
metric.3: one of these yes, one of these not so much 2020-08-24 00:12:36 -04:00
nick black
026b94969d cffi heap allocations are zero-initialized #942 2020-08-23 22:27:50 -04:00
Nick Black
73dc0a7d69
Zoo 2, electric boogaloo (#939)
* Reimplement the widget zoo demo. The previous PoC
  was a multithreaded monster with behavior dependent
  on screen geometry. Replace it with a single thread state
  machine. Closes #936.
* Support titles for ncplot. Adds title to the ncplot_options
  struct, which may be NULL. Closes #941 .
* Properly color ncplot according to maxchannels and
  minchannels. Closes #940
* Add tools/function-table.sh script for generating public API list.
2020-08-23 12:44:53 -04:00
nick black
4ebf8f748c
v1.6.16 2020-08-22 23:12:04 -04:00
nick black
5c533c9f1a
ncplot: support legend styling 2020-08-21 07:34:50 -04:00
Nick Black
359ad1d36d
Generalized mergedown #779 (#932)
* Rename ncplane_mergedown -> ncplane_mergedown_simple()
* New ncplane_mergedown(), fully general projection of src to dst
2020-08-20 23:51:35 -04:00
Nick Black
e1cf346ddb
internalize highgradient_sized implementation #920 (#922)
internalize highgradient_sized implementation #920
2020-08-19 13:15:26 -04:00
nick black
05da44b06b
hide blending functions #917 2020-08-18 08:41:55 -04:00
nick black
a2c95814b7 Remove cell_simple_p()
Get notcurses-tetris working again, since its collision
detection relied on simple vs non-simple EGCs, which are
no longer an operative concept. Closes #899.
2020-08-16 15:57:32 -04:00
nick black
49ae79341d
v1.6.15 2020-08-16 11:04:43 -04:00
nick black
dc99d56ac1
v1.6.14 2020-08-16 10:06:33 -04:00
nick black
5ade4b1f1e
notcurses_plane.3: remove ncplane_styles() 2020-08-16 09:51:17 -04:00
nick black
f2dce8ab3f
update docs for tabletcb from ncreel 2020-08-16 09:06:09 -04:00
nick black
e897de3700
v1.6.13 2020-08-16 08:54:22 -04:00
nick black
78803f8c1d
ncmultiselector: support pgup/pgdown #862 2020-08-16 06:02:00 -04:00
nick black
cdec910d7e
bulk up notcurses_selector.3 man page #862 2020-08-16 05:54:58 -04:00
nick black
d884dea8d7 notcurses-capabilities man page 2020-08-16 01:51:34 -04:00
nick black
f9eed1c412 palette_size is unsigned #891 2020-08-16 01:51:34 -04:00
nick black
16ff667325 blissful endianness-opacity
not caring about endianness is the opiate of the masses.
happy, happy masses. remove endianness.h and all its baleful
influence by explicitly breaking up the cell structure. #892
2020-08-16 01:44:36 -04:00
nick black
172ef7580f
update notcurses_cell and USAGE: 32MB egcpool max 2020-08-12 19:13:57 -04:00
nick black
9704f5cbe7
v1.6.12 2020-08-12 09:37:59 -04:00
Nick Black
11d6a4eb89
New reel layout algorithm #818 (#870)
New reel layout algorithm based on trimming and sifting. Fixes the original issue of #818, though I'm not marking that bug fixed until I've resolved the little issues remaining with this one.
Back off CMake version dependency, see if we can get by with 3.11.4 for EPEL8 #851
Simplify tablet drawing tremendously by separating tablet border and data planes. Callbacks no longer need worry about the borders; they can simply fill the plane they're handed. #833
Improve notcurses_debug() a bit
Add ncplane_new_named() and friends to expose plane naming to the user.
Add internal ncplane_genocide() to kill a plane and all its bound descendents
New industrial-strength ncreel unit testing
notcurses-ncreel now accepts -ln for log level n
Add ncplane_parent() and ncplane_parent_const()
2020-08-09 17:40:59 -04:00
nick black
fa76f5a432
v1.6.11 2020-08-03 02:47:07 -04:00
nick black
ead60d06cc
unexport cell_egc_idx() 2020-08-02 23:45:58 -04:00
nick black
8cfd1677c4
v1.6.10 2020-08-01 17:53:19 -04:00
nick black
2dcab374c4 mojibake: fix some row overruns #842 2020-07-31 23:05:09 -04:00
nick black
78a7b4d255 constify ncreader_options->egc 2020-07-30 03:50:44 -04:00
nick black
7174a84e94 zoo: add multiselector 2020-07-29 01:15:50 -04:00
nick black
bac02bccd0
selector/multiselect: kill itemcount options field #831 2020-07-28 22:42:49 -04:00
nick black
d126c71dd6
v1.6.9 2020-07-26 23:27:11 -04:00
nick black
f8c16ceb79
v1.6.8 2020-07-26 22:20:52 -04:00
nick black
1c55c8cdd0
remove cell_noforeground_p() from docs 2020-07-26 22:07:54 -04:00
nick black
4f8673b0e9
v1.6.7 2020-07-26 21:25:52 -04:00
nick black
28be87a849
ncblitter_e: improve documentation 2020-07-25 18:36:15 -04:00
nick black
6ea968c522 declare ncmenu_mouse_selected() #819 2020-07-23 22:33:21 -04:00
nick black
17f1323c20
v1.6.6 2020-07-19 21:55:10 -04:00
nick black
104bbfef50
add notcurses_lex_blitter() 2020-07-19 21:53:01 -04:00
nick black
308b49da5a
v1.6.5 2020-07-19 21:16:53 -04:00
nick black
b2e924319b
v1.6.4 2020-07-19 20:09:14 -04:00
nick black
37ceb753bf
notcurses-view: print blitter name #805 2020-07-19 02:54:53 -04:00
nick black
a4ee5bd9c7
v1.6.3 2020-07-16 12:53:42 -04:00
nick black
3f544a4ed1
v1.6.2 2020-07-15 23:34:25 -04:00
Nick Black
dbc83c41b3
linuxconsole PoC (#791)
* use ioctl(KDGETMODE) to detect Linux console
* diagnostic on KDGETMODE
* add logdebug()
* unit test for notcurses_drop_planes(), add ncplane_putnstr_aligned()
* linuxconsole PoC
* linuxconsole: dump unicode->font table
* linuxconsole: explode glyphs
* linuxconsole: show 7 glyphs per 'line'
* linuxconjammer: shim console font with half blocks
* signals: handler for SIGTERM
* man pages: update notcurses_init() for options
* add NCOPTION_NO_FONT_CHANGES #201
2020-07-13 01:21:41 -04:00
nick black
1cc0371373
v1.6.1 2020-07-12 03:20:50 -04:00
nick black
4a97c139e6
add ncplane_putstr_stainable() #754 2020-07-10 23:43:47 -04:00
nick black
a6b002fa77 add ncdirect box-drawing functions #753 2020-07-10 18:41:25 -04:00
nick black
96c6dc8e16 add ncdirect_canopen_images() and ncdirect_canutf8() #753 2020-07-10 18:41:25 -04:00
nick black
c783244185 ncdirect_hline_interp(), ncdirect_vline_interp(), dirlines PoC #753 2020-07-10 18:41:25 -04:00
nick black
750f88b70a split direct into its own header 2020-07-10 18:41:25 -04:00
nick black
3ef1a3a07d
add notcurses_version_components() 2020-07-09 02:17:55 -04:00
Nick Black
162f9910c2
Tons of work on ncreel (#776)
Tons of work on ncreel (#627, #749, #694)
Improve reel demo: get input wired up once more, avoid the FPS demo at bottom, print pointer and line count in each tablet, use new ncreel API. Improve notcurses-ncreel explorer: kill memory leaks (#694), draw tablets better, use new ncreel API. Fix bug in ncreel core where cruft could be left on the screen, via a very gross brute force algorithm. I'll likely come back and make this a bit less ghastly in the future #749. Remove weird one-off input system from ncreel, residue from outcurses. Make some of the normalizing changes speced out in #627

* ncreel: give each tablet an index, and print it #749
* reel: eliminate FIXME + param to insert_tabler() #749
* ncreel: label tablets with their adress to correlate against debugging logs #749
* more terminal environment variable notes
* TERMS.md: add Sakura, st
* ncreel: move legend out of reel proper
* ncreel_options: dump min/max_supported_rows/cols #627
* ncreel: remove weird one-off input layer #627
* ncreel: add ncreel_offer_input()
* reel demo: call demo_getc()
* reel demo: rig up input to demo main
* ncreel: drop ncreel_del_focused(), properly bind tablets
* reel demo: don't free up necessary plane
* ncreel: don't pull absolute locations of tablets
* ncreel: place tablets correctly in boundrel
* reel demo: add back support for left/right
* reel demo: restore thread movement
* ncreel: remove a great deal of complexity
* reel demo: stay out of FPS graph's way
* ncreel: give each tablet an index, and print it #749
* reel: eliminate FIXME + param to insert_tabler() #749
* ncreel: label tablets with their adress to correlate against debugging logs #749
* ncreel: move legend out of reel proper
* ncreel_options: dump min/max_supported_rows/cols #627
* ncreel: remove weird one-off input layer #627
* ncreel: add ncreel_offer_input()
* reel demo: call demo_getc()
* reel demo: rig up input to demo main
* ncreel: drop ncreel_del_focused(), properly bind tablets
* reel demo: don't free up necessary plane
* ncreel: don't pull absolute locations of tablets
* ncreel: place tablets correctly in boundrel
* reel demo: add back support for left/right
* reel demo: restore thread movement
* ncreel: remove a great deal of complexity
* reel demo: stay out of FPS graph's way
* reel: tighten up reel following redraw
* reel: fix upper-left corner of topless perimeter
* ncreel: print linecount, return clipped value
* reel: draw focused tablet relative to reel
* reel: brute force decruftification, how embarrassing #749
2020-07-09 02:02:23 -04:00
nick black
c809913c22
ncreel: remove {tbrl}off from USAGE, python, docs #627 2020-07-06 16:00:29 -04:00
nick black
b6330d142b
add notcurses_render_file() #491 2020-07-05 07:14:07 -04:00
nick black
284dfc4fad
v1.6.0 2020-07-04 22:40:32 -04:00
nick black
7a022a4c76 ncneofetch: show palette via direct mode #750 2020-07-01 20:30:06 -04:00
nick black
6ab11e679f
v1.5.3 2020-06-28 16:18:57 -04:00
nick black
d568e0619c
docs/USAGE: CELL_FG_MASK -> CELL_FG_RGB_MASK 2020-06-28 02:43:55 -04:00
nick black
354152b48b
Redefine CELL_ALPHA_ in their natural forms
CELL_ALPHA_OPAQUE et al were defined as 0..3, meaning
CELL_ALPHA_SHIFT had to be used to compare them to their
channel representations. Instead, define them in said
representation outright, eliminating the need to shift while
retaining arithmetic properties, and zero initialization for
CELL_ALPHA_OPAQUE. Eliminate CELL_ALPHA_SHIFT #738.
2020-06-28 01:53:42 -04:00
nick black
0ad87ef8bb
manpages: restore '*' for ncdirect_init() 2020-06-21 00:50:09 -04:00