Commit Graph

840 Commits

Author SHA1 Message Date
nick black
f67a97edfb
correctly handle ASCII + combining chars, add unit tests #36 2019-11-25 21:11:27 -05:00
nick black
64e998849a
sync widecolor demo stuff to outcurses 2019-11-25 20:28:36 -05:00
nick black
24b3fe7da0 ncplane_box: check dimensions before drawing #37 2019-11-25 19:52:11 -05:00
nick black
190b38dc97 purge widecolor of RtL and LtR direction changes #25 2019-11-25 19:38:35 -05:00
nick black
5220836798 completely reset egcpool in egcpool_dump() 2019-11-25 19:38:35 -05:00
nick black
32a55b2ee3 1 << 24u, not 1 << 23u, stupid 2019-11-25 19:38:35 -05:00
nick black
26c584050c maxcolor demo: get it working 2019-11-25 19:38:35 -05:00
nick black
2f43da2d16 boxdemo: concentric boxes 2019-11-25 19:38:35 -05:00
nick black
5f053ab220 run maxcolor demo 2019-11-25 19:38:35 -05:00
nick black
894f52ce6c enter maxcolor demo 2019-11-25 19:38:35 -05:00
nick black
4a402a9843
only 30 blocks, that's quite enough 2019-11-25 18:07:09 -05:00
nick black
9744ca0d4c egcpool: copy in nonspacing characters of an EGC #32 2019-11-25 13:40:43 -05:00
nick black
095d9035fb notcurses_options: provide retain_cursor bool #29 2019-11-25 13:40:43 -05:00
nick black
8fcb2923fa print our stats after restoring terminal 2019-11-25 13:40:43 -05:00
nick black
faa52a22b4 inhibit render printing in media res 2019-11-25 09:55:55 -05:00
nick black
7eb136ae78 render stats #12 2019-11-25 09:55:55 -05:00
nick black
e1034c5612 don't need timer just a clock 2019-11-25 09:55:55 -05:00
nick black
49e33bc6ff use civis capability to hide cursor #29 2019-11-25 09:55:55 -05:00
nick black
ba495faca9 add timespec utility functions 2019-11-25 09:55:55 -05:00
nick black
c89d8134fa launch unicodeblocks demo 2019-11-25 09:55:55 -05:00
nick black
8d7a63b853 print boxfilling chars in first demo 2019-11-25 09:55:55 -05:00
nick black
04d11a3521 reorder a bit of widecolor test 2019-11-25 09:55:55 -05:00
nick black
7fcb9d295c demo: get everything showing up 2019-11-25 09:55:55 -05:00
nick black
e6a009ee3a
erase in griddemo #22 2019-11-25 02:22:15 -05:00
nick black
a90638aa5c
widecolor_demo: get fg/bg working 2019-11-25 01:45:08 -05:00
nick black
979f6828ed
erase in grid demo 2019-11-24 22:00:35 -05:00
nick black
319e9cc25a
widecolor: don't require a plane 2019-11-24 21:59:47 -05:00
nick black
92b5d23185
widecolor: don't require a plane 2019-11-24 21:59:43 -05:00
nick black
3c3c3335fc
always set styling in cell_duplicate #16 2019-11-24 21:59:21 -05:00
nick black
b665592ce1
reenable all demos 2019-11-24 21:54:00 -05:00
nick black
5e61f536e8
gridinverse, gridswitch demos #16 2019-11-24 21:18:02 -05:00
nick black
7173f628ee
griddemo: inverse 2019-11-24 21:10:54 -05:00
nick black
3d5ba40352
grid demo 2019-11-24 21:01:25 -05:00
nick black
414b2694ba boxdemo: inject some color #9 2019-11-24 18:38:27 -05:00
nick black
ba08a6142e demo: call boxdemo 2019-11-24 18:38:27 -05:00
nick black
48555507e6 boxdemo 2019-11-24 18:38:27 -05:00
nick black
27e90d9204 cell: implement fg/bgdefault bits 2019-11-24 18:38:27 -05:00
nick black
d400c79870 implement ncplane_box() and unit test #9 2019-11-24 18:38:27 -05:00
nick black
2b467c99af implement ncplane_vline() + unit test #9 2019-11-24 18:38:27 -05:00
nick black
e050770fde implement ncplane_hline() + unit test 2019-11-24 18:38:27 -05:00
nick black
0c262a3a6d implement ncplane_erase() #9 2019-11-24 18:38:27 -05:00
nick black
8ff52f5ebc
laughable implementation of ncplane_vprintf #9 2019-11-24 16:19:24 -05:00
nick black
ca5c37fab9 widepanel: dump content 2019-11-24 16:11:35 -05:00
nick black
e5b426eb55 ncplane: don't putc/getc past plane 2019-11-24 16:11:35 -05:00
nick black
586142057f egcpool: don't split egc's across ringbuffer bounds 2019-11-24 16:11:35 -05:00
nick black
db842e5305 ncplane: leave cursor at lower right 2019-11-24 16:11:35 -05:00
nick black
1e65adb75a widecolor: adapt to new ncplane_putc() 2019-11-24 16:11:35 -05:00
nick black
ad321a9516 demo: adapt to new ncplane_putc() 2019-11-24 16:11:35 -05:00
nick black
2b8993a53d fix up cell_load() #17 2019-11-24 16:11:35 -05:00
nick black
32394dd892 egcpool: preserve incoming EGC on realloc 2019-11-24 16:11:35 -05:00
nick black
a997fb2dc0 reenable widecolor demo from outcurses 2019-11-24 16:11:35 -05:00
nick black
52e83dfcc2
Get UTF8 rendering properly #14 2019-11-24 14:00:48 -05:00
Nick Black
b93bcebf0b
Extended grapheme clusters (#15)
Introduce egcpool for attached storage
Hook up style support
Switch entirely to UTF-8 char from wchar_t (#14)
Pull out next EGC in cell_load (#14)
2019-11-24 12:36:46 -05:00
nick black
9c9f1f4462
demo: getopt(), allow inhibition of alternate screen with -k 2019-11-23 20:52:14 -05:00
nick black
13931aee60
implement ncplane_getc() #9 2019-11-23 20:45:53 -05:00
nick black
f9b88c5079
implement notcurses_palette_size() 2019-11-23 20:39:22 -05:00
nick black
a509cb6320
someone set us up the bomb 2019-11-23 19:24:29 -05:00
nick black
e4f041f522
start moving to utf-8 from wchar_t #14 2019-11-23 18:34:06 -05:00
nick black
8856f67822
ncplane: background directcolor works 2019-11-23 12:39:54 -05:00
nick black
fd04c55d16
implement ncplane_putwstr #9 2019-11-23 12:28:42 -05:00
nick black
2f9821ce39
notcurses: interrogate terminfo for styles 2019-11-23 10:42:46 -05:00
Nick Black
7e92c8bb82
documentation and declarations (#13)
ncplane: flesh out API
ncplane: line and erase APIs
README.md: document differences from ncurses
notcurses_init(): print long term name
CMake: link librt into notcurses
cell: move functionality out to header
2019-11-23 09:05:32 -05:00
nick black
a8721df75a
ncplane: flesh out API 2019-11-22 22:47:12 -05:00
nick black
f42c3bf0f1
ncurses_render: don't resend unchanged colors 2019-11-21 10:56:17 -05:00
nick black
05f99e16ef
term_fg_rgb8: properly form directrgb escape 2019-11-21 10:56:12 -05:00
nick black
f07652f24b don't try to destroy nullptr ncplane in tests 2019-11-21 08:51:57 -05:00
nick black
9a5d893ce7 demo: setlocale(), blit some characters like a boss 2019-11-21 08:51:57 -05:00
nick black
b94e428277 ncplane: add ncplane_putwc() 2019-11-21 08:51:57 -05:00
nick black
d6aef3d2e6 notcurses_render: blit wchar_t arrays #5 2019-11-21 08:51:57 -05:00
nick black
c8d11459ec notcurses_render: set colors naively #5 2019-11-21 08:51:57 -05:00
nick black
691d3d97b8 some ncplane unit tests 2019-11-21 08:51:57 -05:00
nick black
a916c66052 introduce z-buffer of ncplanes 2019-11-21 08:51:57 -05:00
nick black
d3f9329737 notcurses_options: allow outfd to be specified 2019-11-21 08:51:57 -05:00
nick black
54ed3e108e introduce notcurses_options struct #3 2019-11-21 08:51:57 -05:00
nick black
787c27a812
demo: always reset the terminal on error 2019-11-19 06:44:28 -05:00
nick black
0f6e19dd92
notcurses_setrgb(): plug into direct mode when RGB flag is set 2019-11-19 06:26:44 -05:00
nick black
8fe936ca4c
ftairs! we have discovered ftairs! 2019-11-19 05:33:38 -05:00
nick black
908e9e120c
Don't require smcup/rmcup, and emit them only if supported #3 2019-11-18 12:16:26 -05:00
nick black
f88a26f55f
introduce notcurses_render() 2019-11-18 00:05:32 -05:00
nick black
4c01423289
allocate up the plane of cchars 2019-11-17 22:23:29 -05:00
nick black
17bc714c4d
define cell struct 2019-11-17 22:02:43 -05:00
nick black
ce42950314
check for RGB terminfo flag, check against colors 2019-11-17 16:12:00 -05:00
nick black
f88e211c26
disable ECHO and ICANON 2019-11-17 13:40:06 -05:00
nick black
abebd8d18e
preserve and restore termattr via termios 2019-11-17 13:36:57 -05:00
nick black
24da35a93b
load smcap/rmcap and emit them 2019-11-17 13:29:18 -05:00
nick black
b6ee41b355
link in tinfo, call setupterm() 2019-11-17 12:55:12 -05:00
nick black
4a406a8d8a
notcurses_init: stash away ttyfd 2019-11-17 10:36:58 -05:00
nick black
c1f4219dc1
notcurses_term_dimensions() + unit test 2019-11-17 10:25:40 -05:00
nick black
1fcae27627
just the basics 2019-11-17 09:53:59 -05:00
nick black
70df86ba17
version string, notcurses_version() 2019-11-17 05:04:41 -05:00