// Copyright status: this file is in the public domain. #include #include "lx.h" #include "internal.h" LX_KEYSYM lx_string_to_keysym(const char *name) { int l; int m; int h; const KEYSYM_NAME *kn; int c; l = -1; h = lx__n_keysym_names; while (h-l > 1) { m = (l + h) / 2; kn = &lx__keysym_names[lx__keysym_by_name[m]]; c = strcmp(kn->name,name); if (c <= 0) l = m; if (c >= 0) h = m; } return((l == h) ? kn->ks : LX_KEYSYM__None); }