aboutsummaryrefslogtreecommitdiff
path: root/console-client/xkb
Commit message (Collapse)AuthorAgeFilesLines
* Use our own variant of 'assert' and 'assert_perror'.Justus Winter2017-08-053-7/+7
| | | | | Our variants print stack traces on failures. This will make locating errors much easier.
* console-client: Fix lower range of binary searchDiego Nieto Cid2015-06-051-4/+4
| | | | | | | | | | | | | | To prevent infinite recursion range checking was introduced as an exit condition adding two extra comparisons on each recursive call. By fixing the range used by the recursive call over the lower half of the array one can avoid penalizing successful lookups while still preventing infinite recursion due to `first` parameter being greater than `last` parameter. * console-client/xkb/kstoucs.c (find_ucs): don't remove middle from the lower range. Remove extra comparisons.
* console-client: assert preconditionDiego Nieto Cid2015-06-051-0/+4
| | | | * console-client/xkb/kstoucs.c (find_ucs): assert precondition.
* console-client: fix binary searchJustus Winter2015-05-231-2/+4
| | | | | | | | Previously, the binary search through the keysym map was incorrectly implemented. This resulted in infinite loops (thanks to the compilers tail call optimization) or crashes (if the stack space was exhausted). * console-client/xkb/kstoucs.c (find_ucs): Fix binary search.
* console-client: avoid nested functionJustus Winter2015-05-231-17/+18
| | | | | | * console-client/xkb/kstoucs.c (find_ucs): Previously, this function was a nested function for no reason at all. Turn it into a normal function.
* Explicit the keymap compatibility flagsSamuel Thibault2015-02-022-94/+92
| | | | | | | | | Since "default" is not provided any more by xkb * console-client/xkb/xkb-data/keymap/hurd: Replace "default" xkb_compatibility by "basic+mousekeys+accessx(basic)+misc+iso9995+level5+caps(caps_lock)" for all keymaps.
* console-client: Fix typos in commentsStefan Weil2015-01-036-12/+12
| | | | Signed-off-by: Stefan Weil <sw@weilnetz.de>
* Avoid compiler warning about empty bodiesJustus Winter2014-05-261-1/+2
| | | | | | | | | | | | | Make empty bodies of control flow statements more explicit. Doing so will allow us to use stricter compiler settings. This would have cought 4ece292c. * console-client/xkb/xkb.c: Make empty bodies more explicit * libpipe/pipe.c: Likewise. * mach-defpager/default_pager.c: Likewise. * pfinet/linux-src/net/ipv4/fib_hash.c: Likewise. * pflocal/connq.c: Likewise. * pflocal/socket.c: Likewise.
* Normalize whitespace at the end of each file to '\n'Justus Winter2013-11-091-1/+0
| | | | | Some files were not normalized. In console/motd.UTF8 the additional newline is intentional. Empty files were excluded as well.
* Fix gcc warningSamuel Thibault2013-09-211-0/+1
| | | | * console-client/xkb/kstoucs.c (find_ucs): Return 0 by default.
* Fix descriptor leakMiguel Figueiredo2013-06-011-2/+1
| | | | * console-client/xkb/compose.c (read_composefile): Always fclose `fc'.
* Fix console hang on unknown key pressSamuel Thibault2013-05-011-2/+2
| | | | | * console-client/xkb/kstoucs.c (find_ucs): Remove middle value from recursive call range.
* Add more keymapsSamuel Thibault2012-09-231-0/+268
| | | | | * console-client/xkb/xkb-data/keymap/hurd: Add keymaps used by the Debian installer.
* Merge branch 'master' of git.savannah.gnu.org:/srv/git/hurd/hurdSamuel Thibault2012-07-011-0/+1
|\
| * TODO: make xkb use rulesSamuel Thibault2012-07-011-0/+1
| |
* | Use path to x11 locales from x11.pc instead of our prefixSamuel Thibault2012-07-011-3/+3
|/ | | | | | * configure.in (X11_PREFIX): Define from x11.pc's prefix variable. * console-client/xkb/compose.c (get_compile_file_for_locale): Use X11_PREFIX "/share" instead of DATADIR.
* Print KeySymToUcs4 calls.Diego Nieto Cid2011-04-161-0/+13
|
* Use locale's compose file by default.Diego Nieto Cid2011-04-161-0/+173
| | | | | | | | | | | | | | * console-client/Makefile [HAVE_X11=yes](compose-CFLAGS): Define DATADIR. * console-client/pc-kbd.c (pc_kbd_init): Load compose file unconditionally. * console-client/xkb/compose.c: Include fcntl.h, unistd.h and locale.h (struct map_entry, enum callback_result, map_callback): New types. (map_iterate): New function. (struct matcher_context): New type. (match_left_set_right, match_right_set_left): New functions. (get_compose_file_for_locale): Likewise. (read_composefile): Use get_compose_file_for_locale result when argument composefn is NULL.
* Avoid redefinition of NoSymbol.Diego Nieto Cid2011-04-162-4/+0
| | | | | * console-client/xkb/xkb.c: Remove macro NoSymbol. * console-client/xkb/compose.c: Likewise.
* Delete xkb/HACKING file.Diego Nieto Cid2011-04-161-35/+0
|
* Cleanup.Diego Nieto Cid2011-04-164-24/+1
|
* Deallocate memory on errors.Diego Nieto Cid2011-04-161-1/+7
| | | | * console-client/xkb/parser.y(parse_xkbconfig): Free cwd.
* Remove default keymap.Diego Nieto Cid2011-04-164-2676/+3
| | | | | | | | * console-client/xkb/default.xkb: Removed file. * console-client/xkb/makeconf.sh: Likewise. * console-client/xkb/xkbdefaults.c: Likewise. * console-client/xkb/parser.y(parse_xkbconfig): Don't use harcoded defaults, return error when no keymap file is given.
* Delete Compose file.Diego Nieto Cid2011-04-161-441/+0
|
* Reimplement KeySymToUcs4.Diego Nieto Cid2011-04-162-310/+51
| | | | | | | * console-client/Makefile (DIST_FILES): Add xkb/kstoucs_map.sh. (kstoucs_map.c): New target. * console-client/xkb/kstoucs.c: Reimplement KeySymToUcs4. * console-client/xkb/kstoucs_map.sh: New file.
* Depend on X11 for string to keysym mappings.Diego Nieto Cid2011-04-086-5668/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * config.make.in (HAVE_X11,X11_CFLAGS,X11_LIBS,XKB_BASE): New variables. * configure.in: Check for x11 module. * console-client/Makefile (PC_KBD_SO_SRCS): Move XKB sources... * console-client/Makefile (XKB_SRCS): ... here. New variable. * console-client/Makefile (SRCS): Add $(XKB_SRCS). * console-client/Makefile (LCLHDRS): Add xkb/xkb.h. * console-client/Makefile (XKB_DATA_DIR): Removed variable. * console-client/Makefile (pc_kbd.so.$(hurd-version)): Use patsubst. Depend on XKB objects when HAVE_X11 = yes. * console-client/Makefile (install): Depend on XKB datafiles when HAVE_X11 = yes. * console-client/Makefile (pc-kbd-CFLAGS): Set variable when HAVE_X11 = yes * console-client/Makefile ($(XKB_DATA_DIR),$(XKB_DATA_DIR)/%): Replaced by... * console-client/Makefile[HAVE_X11=yes]($(XKB_BASE),$(XKB_BASE)/%): ... this targets. * console-client/Makefile[HAVE_X11=yes](pc_kbd-LDLIBS): New variable. * console-client/xkb/keysymdef.h: Removed file. * console-client/xkb/ks_tables.h: Likewise. * console-client/xkb/symname.c: Likewise. * console-client/xkb/xkb.c: Include <X11/keysymdef.h>. * console-client/xkb/compose.c: Likewise. * console-client/xkb/xkb.h: Remove XStringToKeysym prototype. Include <X11/Xlib.h>.
* Update xkb/README.Diego Nieto Cid2011-04-081-22/+17
| | | | | | | * console-client/xkb/README: Refer to this artifact as "module" instead of "input driver". Key repeater is now implemented by pc-kbd. Update the module's installation and usage procedures.
* Use first section when there's no default.Diego Nieto Cid2011-04-081-2/+30
| | | | | | * console-client/xkb/parser.y (skip_to_firstsection): New function. (include_section): Call skip_to_firstsection when skip_to_defaultsection fails.
* * console-client/xkb/parser.y (include_section): Free filename.Diego Nieto Cid2011-04-081-0/+3
|
* * console-client/xkb/parser.y (include_section): Remove superflous strdup.Diego Nieto Cid2011-04-081-1/+1
|
* Added an example for selecting the keymap.Arne Babenhauserheide2011-04-081-1/+1
| | | | * console-client/xkb/README: Keymap selection example.
* Symbols 0..9 stand for their ascii character.Diego Nieto Cid2011-04-081-1/+7
| | | | * console-client/xkb/parser.y(symbolname): Shift by '0' numbers [0..9].
* Add support for hexadecimal symbols.Diego Nieto Cid2011-04-081-0/+1
| | | | * console-client/xkb/parser.y(symbolname): Match and return hex value.
* Update foreign files.Diego Nieto Cid2011-04-085-4140/+5346
| | | | | | | | * console-client/xkb/keysymdef.h: Replaced file. * console-client/xkb/ks_tables.h: Likewise. * console-client/xkb/kstoucs.c: Likewise. * console-client/xkb/symname.c: Likewise. * console-client/xkb/HACKING: New file, added foreign files information.
* Document new options.Diego Nieto Cid2011-04-081-0/+6
| | | | * console-client/xkb/README: Updated.
* * console-client/xkb/xkb.c (iskeypad): Access up to 'width' symbols.Diego Nieto Cid2011-04-081-1/+1
|
* 'vmods' is an alias for 'virtual_modifiers'.Diego Nieto Cid2011-04-081-0/+1
|
* Fix handling of error conditions.Diego Nieto Cid2011-04-081-2/+2
| | | | | * console-client/xkb/parser.y (key_set_action): Test actions variable. (key_set_keysym): Test keysyms instead of keys.
* Fix memory errors.Diego Nieto Cid2011-04-081-4/+4
| | | | | | | * console-client/xkb/parser.y (key_set_keysym): Consider symbol's size when reallocing. (key_set_action): Consider (xkb_action_t *)'s size when reallocing. Start clearing levels from 'width' and up to 'level'.
* Add neo supportAlexander Preisinger2011-04-081-0/+7
| | | | * console-client/xkb/xkb-data/keymap/hurd: New keymap neo.
* README updateAlexander Preisinger2011-04-081-4/+4
|
* Enable hurd extensions in every layout.Diego Nieto Cid2011-04-081-98/+98
|
* Remove obsolete variable declaration.Diego Nieto Cid2011-04-081-1/+0
|
* Use vfprintf in debug_printf and write to stderr.Diego Nieto Cid2011-04-081-1/+1
|
* Add debugging messages.Diego Nieto Cid2011-04-083-6/+17
| | | | | | | | | * console-client/xkb/lex.l(include_file): Log file changes. * console-client/xkb/parser.y(key_set_keysym): Log symbol associations. (include_section): Log section being read. (symbolssect,keycodesect,key_new): Log current key. * console-client/xkb/xkbdata.c(keyname_add): Log keyname, keycode and hash. (set_rmod_keycode): Log modifier, keyname and keycode.
* Emit warnings on undeclared virtual modifiers.Diego Nieto Cid2011-04-081-0/+2
|
* Report inexistent section.Diego Nieto Cid2011-04-081-6/+36
| | | | | | | * console-client/xkb/parser.y (include_section): Declare scanner_get_current_location and scanner_get_current_file prototypes. New local variables current_location, current_file and err. Report error and exit when a section cannot be processed successfully.
* Add function to read the state of the scanner.Diego Nieto Cid2011-04-081-0/+12
| | | | | * console-client/xkb/lex.l (scanner_get_current_location): New function. (scanner_get_current_file): Likewise.
* Check for end of file.Diego Nieto Cid2011-04-081-7/+19
| | | | | | | | | * console-client/xkb/parser.y [!YY_NULL]: Define YY_NULL, the end of file token. * console-client/xkb/parser.y (skip_to_sectionname): If the end of file is reached while skipping symbols return an error. Return 0 on success. * console-client/xkb/parser.y (skip_to_defaultsection): Likewise.
* Propagate error on unexpected end of files.Diego Nieto Cid2011-04-081-7/+9
| | | | | | * console-client/xkb/lex.l (close_include): Return an error code on failure. (yywrap): Indicate termination when close_include fails.