tigetstr-test.c (828B)
1 #include <ncurses.h> 2 #include <term.h> 3 4 int 5 main() 6 { 7 char* s; 8 char buf[4096]; 9 10 if (!initscr()) 11 { 12 perror("initscr"); 13 return 1; 14 } 15 cbreak(); 16 noecho(); 17 nonl(); 18 s = tigetstr("tsl"); 19 if (s) 20 { 21 if (s != (char*)-1) 22 { 23 char* ps = s; 24 char* pbuf = buf; 25 int len = 0; 26 const char* ver = curses_version(); 27 28 if (!ver) 29 { 30 endwin(); 31 printf("!ver\n"); 32 return 1; 33 } 34 len = sprintf(pbuf, "%s\n", ver); 35 pbuf += len; 36 37 len = sprintf(pbuf, "tigetstr(\"tsl\")=["); 38 pbuf += len; 39 while (*ps) 40 { 41 len = sprintf(pbuf, "%X%s", *ps, 42 *(ps+1) ? " " : ""); 43 pbuf += len; 44 ps++; 45 } 46 sprintf(pbuf, "]\n"); 47 } 48 else 49 sprintf(buf, "tigetstr(\"tsl\")=(char*)-1\n"); 50 } 51 else 52 sprintf(buf, "tigetstr(\"tsl\")=NULL\n"); 53 addstr(buf); 54 refresh(); 55 getchar(); 56 endwin(); 57 return 0; 58 }