28. decembrī, pēc vairāk nekā divu gadu pārtraukuma, tika izlaista 2.5.0 versija TUI bibliotēkai termbox2, kas uzrakstīta C valodā un izplatīta saskaņā ar MIT licenci.
Salīdzinot ar oriģinālu termbox, ir saglabāts vienkāršs API un trūkst atkarību, izņemot libc, bet pievienoti:
- stingrāka kļūdu pārbaude;
- efektīvāka escape secību解析;
- opcionāla 32 bitu krāsas atbalsts;
- uzlabots Unicode grafēmu atbalsts;
- koda ģenerēšana iebūvētām escape secībām;
- testu komplekts;
- un vēl daudz ko citu.
Bibliotēka ir organizēta kā vienfaila bibliotēka (tikai 128K .h fails), lai gan to var izveidot arī kā atsevišķu dinamisku vai statisku bibliotēku.
#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; }
Avots: linux.org.ru
