From 67edba9355ae260883d577f864ca5c3f897d6441 Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Mon, 24 Jan 2011 14:58:11 +0000 Subject: [PATCH] found some test utilities re keymap (xkbtest.c 19 Nov 2009) and data age table refresh (29 Sep 2010) --- yarrg/test-dataage-refresh-intervals.pl | 31 +++++++++++++++++++++++++ yarrg/xkbtest.c | 24 +++++++++++++++++++ 2 files changed, 55 insertions(+) create mode 100755 yarrg/test-dataage-refresh-intervals.pl create mode 100644 yarrg/xkbtest.c diff --git a/yarrg/test-dataage-refresh-intervals.pl b/yarrg/test-dataage-refresh-intervals.pl new file mode 100755 index 0000000..53e6791 --- /dev/null +++ b/yarrg/test-dataage-refresh-intervals.pl @@ -0,0 +1,31 @@ +#!/usr/bin/perl +$t=0; +$intv=10; + +sub roundnum ($) { + my ($s) = @_; + return + $s < 60*2 ? 60 : + $s < 3600*2 ? 60 : + $s < 86400*2 ? 3600 : + 86400; +} + +sub conv ($) { + my ($s) = @_; + return sprintf "%2dd%2dh%02dm%02ds", + int($s / 86400), int(($s % 86400) / 3600), + int(($s % 3600) / 60), $s % 60; +} + +for (;;) { + my $unit= roundnum($t); + my $r= int($t / $unit) * $unit; + printf "%8d %s +%8d %s R %8d %s %7d %5.2f\n", + $t, conv($t), $intv, conv($intv), + $r, conv($r), $t-$r, ($t-$r)/$unit; + $intv= $t*0.01 + 10; + $t += $intv; + #$intv *= 1.01; + #$intv += 5; +} diff --git a/yarrg/xkbtest.c b/yarrg/xkbtest.c new file mode 100644 index 0000000..9b0d91a --- /dev/null +++ b/yarrg/xkbtest.c @@ -0,0 +1,24 @@ + +#include +#include +#include + +#include +#include + +static Display *disp; + +int main(void) { + disp= XOpenDisplay(0); assert(disp); + fprintf(stderr,"XOpenDisplay OK\n"); + int code= XKeysymToKeycode(disp,XK_slash); + fprintf(stderr,"XKeySymToKeycode(XK_slash)=%d\n",code); + int per; + KeySym *map= XGetKeyboardMapping(disp, code,code, &per); + fprintf(stderr,"XGetKeyboardMapping(...)=%p per=%d\n",map,per); + int i; + for (i=0; i