Commit Graph

135 Commits

Author SHA1 Message Date
Paul LeoNerd Evans 9f1e7b34eb Resort back to using GNU sed in .sh built manpages, as we only need them at 'make dist' time now; doesn't matter that BSD can't run them 2008-12-10 01:03:43 +00:00
Paul LeoNerd Evans 696c145599 Make termkey_getkey() set a peeked key structure if it returns TERMKEY_RET_AGAIN 2008-12-10 00:38:21 +00:00
Paul LeoNerd Evans ef669c134d Complete change of driver internals - peek and return size but don't eat bytes; eat later in getkey() 2008-12-10 00:23:47 +00:00
Paul LeoNerd Evans eee8ddcee3 Linefeed properly in main() in demo files 2008-12-08 22:54:14 +00:00
Paul LeoNerd Evans d54b7b4274 Documentation fix for termkey_get_fd - returns int, not void 2008-12-02 23:06:08 +00:00
Paul LeoNerd Evans c10d6f02e4 Make sure only to slide buffer down when returning a real key to the user, or else it might upset the meta-key logic when it returns 2008-12-06 00:03:48 +00:00
Paul LeoNerd Evans 97a47e9b16 Make common static function getkey(), roll functionallity of termkey_getkey{,_force}() into it 2008-12-05 23:55:44 +00:00
Paul LeoNerd Evans 43a99e64f2 strdup() the terminfo keypad_local and keypad_xmit strings at construct time, in case multiple instances and they change beneath us 2008-12-03 20:19:15 +00:00
Paul LeoNerd Evans 2c1bea4f15 Use a C99 flexible array member rather than the [0] hack 2008-12-02 01:05:47 +00:00
Paul LeoNerd Evans 2fba93b690 Added termkey_keyname2sym() to API 2008-12-02 00:56:43 +00:00
Paul LeoNerd Evans f75bdf1516 Added termkey_get_fd() to API 2008-12-01 22:36:14 +00:00
Paul LeoNerd Evans 8737046c4d Extra documentation about the three types of key event structure, and what the code members mean 2008-11-30 12:43:13 +00:00
Paul LeoNerd Evans 39b810f0b8 Use shell natively to embed demo .c files in manpages rather than invoking sed, because OpenBSD's sed doesn't seem to like this 2008-11-28 19:58:16 +00:00
Paul LeoNerd Evans d245285df2 Cast 'term' to (non-const) char* when passing to setupterm() because terminfo's prototypes don't use const 2008-11-28 19:48:41 +00:00
Paul LeoNerd Evans fef558eeb4 Use sizeof() on assigned variables rather than types, to make code a little less fragile to type changes 2008-11-24 22:15:43 +00:00
Paul LeoNerd Evans 2cfa31e610 Make on_key() static in demo-async.c to shut up silly GCC warnings 2008-11-24 22:07:13 +00:00
Paul LeoNerd Evans c6ff878411 Fixed another signed-vs-unsigned int comparison in driver-ti.c 2008-11-24 22:06:14 +00:00
Paul LeoNerd Evans 85be2846c3 Make sure l is always initialised in termkey_snprint_key() 2008-11-24 22:05:06 +00:00
Paul LeoNerd Evans c8011f4bfd Make termkey_new_full() static for now until we expose the API fully 2008-11-24 22:03:23 +00:00
Paul LeoNerd Evans f3f4519561 Fixed some signed/unsigned integer mismatches, including one important bug 2008-11-24 21:58:55 +00:00
Paul LeoNerd Evans a40e9961d9 Export a gzip rather than bzip2 archive 2008-11-24 21:47:18 +00:00
Paul LeoNerd Evans 5c428818dd Bump VERSION_MINOR to 0.1 2008-11-18 16:58:37 +00:00
Paul LeoNerd Evans 0dc23ed684 Remove actual .so file on 'make clean' 2008-11-18 16:24:28 +00:00
Paul LeoNerd Evans 69196bcf1f Install to SONAME.MINOR and symlink to SONAME and basename 2008-11-18 15:57:59 +00:00
Paul LeoNerd Evans 14561e2a30 Only print about unrecognised terminfo variable names when debugging 2008-11-18 15:55:29 +00:00
Paul LeoNerd Evans 56634d0c82 Also added 'make dist' target to build distribution tarball 2008-11-18 15:46:29 +00:00
Paul LeoNerd Evans 223d5b19a2 Split Makefile into two halves; added 'make distdir' target for building distribution tarballs 2008-11-18 15:37:37 +00:00
Paul LeoNerd Evans c41763c60a Document the TERMKEY_CHECK_VERSION macro 2008-11-18 12:19:29 +00:00
Paul LeoNerd Evans 297cec0681 Better Makefile support for built manpages and termkey.h file 2008-11-18 11:55:08 +00:00
Paul LeoNerd Evans 480e30539b Added .bzrignore patterns for other built files 2008-11-16 12:44:02 +00:00
Paul LeoNerd Evans 4f73b850c5 Added compile-vs-runtime library version checks 2008-11-16 12:40:14 +00:00
Paul LeoNerd Evans c2dd9675d6 Store major and minor version number in Makefile; substitute #defines in termkey.h at build time 2008-11-16 12:28:38 +00:00
Paul LeoNerd Evans 4a108d4916 Compress trie nodes down to extent maps after loading, to save memory 2008-11-12 23:58:20 +00:00
Paul LeoNerd Evans 754214c200 Use a trie instead of a linear list of sequence strings in the terminfo driver - nicer lookup properties 2008-11-12 16:32:17 +00:00
Paul LeoNerd Evans 04e1926df6 Handle malloc() failures during setup of driver-ti 2008-11-12 16:10:58 +00:00
Paul LeoNerd Evans 62c5c97080 Make CSI driver's debugging output messages on unrecognised sequences conditional on #ifdef DEBUG 2008-11-12 13:02:30 +00:00
Paul LeoNerd Evans 927eaabae9 CSI driver shouldn't eat sequences it doesn't understand; leave them for another driver 2008-11-12 12:51:19 +00:00
Paul LeoNerd Evans 2c0d0f0f3c Bugfix to 'unknown CSI' case in CSI driver - neater output message to avoid uninitialised ints 2008-11-12 12:44:33 +00:00
Paul LeoNerd Evans 781c2160c3 Added documentation on termkey_{get,set}_flags() 2008-11-10 22:29:21 +00:00
Paul LeoNerd Evans 397a7fb683 Added (undocumented) termkey_{get,set}_flags() calls to API 2008-11-10 21:21:19 +00:00
Paul LeoNerd Evans 9757a73daa CSI driver should also load when TERM=screen because of screen's stupid way of blind-forwarding keypresses it doesn't understand 2008-11-09 22:41:44 +00:00
Paul LeoNerd Evans 30a3356815 Implemented free_driver() in terminfo driver 2008-11-09 22:38:10 +00:00
Paul LeoNerd Evans 20cc4b1701 When debugging, also print details of a key event when applicable 2008-11-09 21:58:30 +00:00
Paul LeoNerd Evans fd2466c4ce Load terminfo triver before CSI; in case they both apply 2008-11-09 20:04:14 +00:00
Paul LeoNerd Evans 73cee7f0b0 Allow stacking drivers in a linked list; try all of them at getkey() time 2008-11-09 19:58:11 +00:00
Paul LeoNerd Evans aef2e91277 If debugging, print verbose output about internals of getkey operation 2008-11-09 19:48:06 +00:00
Paul LeoNerd Evans 09edf2377f Driver getkey() can return TERMKEY_RES_NONE which attempts getkey_simple() afterwards 2008-11-09 19:45:43 +00:00
Paul LeoNerd Evans de74ffa67f getkey_simple() should return TERMKEY_RES_NONE if no bytes available; as a safety check 2008-11-09 19:29:30 +00:00
Paul LeoNerd Evans 0483eacb68 Print name of driver on startup if debugging 2008-11-08 17:56:57 +00:00
Paul LeoNerd Evans d50d772ca5 Drivers have names 2008-11-08 17:56:44 +00:00