28 grudnia, po ponad dwuletniej przerwie, wydano wersję 2.5.0 biblioteki do tworzenia TUI termbox2, napisanej w języku C i dystrybuowanej na licencji MIT.
W porównaniu z oryginałem termbox, zachowano prosty interfejs API i brak zależności poza libc, ale dodano:
- bardziej restrykcyjne sprawdzanie błędów;
- bardziej efektywne analizowanie sekwencji escape;
- opcjonalne wsparcie dla kolorów 32-bitowych;
- ulepszona obsługa grafem Unicode;
- generowanie kodu dla wbudowanych sekwencji escape;
- zbiór testów;
- i wiele więcej.
Biblioteka jest zorganizowana jako biblioteka jednofajlowa (plik .h ma zaledwie 128K), choć można ją również skompilować jako osobną bibliotekę dynamiczną lub statyczną.
#define TB_IMPL #include "termbox2.h" int main(int argc, char **argv) { struct tb_event ev; int y = 0; tb_init(); tb_printf(0, y++, TB_GREEN, 0, "hello from termbox"); tb_printf(0, y++, 0, 0, "width=%d height=%d", tb_width(), tb_height()); tb_printf(0, y++, 0, 0, "press any key…"); tb_present(); tb_poll_event(&ev); y++; tb_printf(0, y++, 0, 0, "event type=%d key=%d ch=%c", ev.type, ev.key, ev.ch); tb_printf(0, y++, 0, 0, "press any key to quit…"); tb_present(); tb_poll_event(&ev); tb_shutdown(); return 0; }
Źródło: linux.org.ru
