Branch :
| Author | Commit | Date | CI | Message |
|---|---|---|---|---|
| 91a19905 | 2015-08-24 13:44:20 | test/x11comp: Fix contention between X11 and Xvfb on Mac OS X - Abandon use of -displayfd. - Have x11comp itself look for an unused X11 display number instead. | ||
| 74f85d05 | 2015-08-23 23:02:10 | test/x11comp: remove duplicate FOUR_LEVEL_KEYPAD from test keymap The `test/data/keymaps/host.xkb` file contains a duplicate definition of this type. On my computer (linux, xkbcomp 1.3.0, xserver 1.17.2), the test passes as is, but if I remove the duplicate definition, the roundtrip brings it back and the test fails. I can also reproduce it without relation to the test, by loading `test/data/keymaps/host.xkb` (without the duplicate) using xkbcomp -I $(pwd)/test/data/keymaps/host.xkb $DISPLAY and downloading it again using xkbcomp $DISPLAY out.xkb the duplicate is added. On Mac OS X however, the duplicate is removed (correctly), so the test fails there. xkbcommon itself, which was forked from xkbcomp, doesn't have this bug; in fact, doing ./test/print-compiled-keymap -k keymaps/host.xkb removes the duplicate if it is present. This is (probably) a regression in xkbcomp or xserver compared to the versions used in Mac OS X. Since getting a patch for any of these two is hopeless from my experience, I did not try to investigate further. I am not sure why, but if I also add a `PC_SUPER_LEVEL2` type, the duplicate of `FOUR_LEVEL_KEYPAD` doesn't show up. Hopefully the test will work on all platforms now. https://github.com/xkbcommon/libxkbcommon/issues/26 Reported-by: @nuko8 Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| bdf68803 | 2015-08-23 22:22:11 | test/x11comp: small simplifications xkbcomp doesn't need the search-path argument, since we pass an absolute path. Keep the plain -I which clears the search path just to be sure. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| afbe21a2 | 2015-07-20 11:46:15 | Merge pull request #25 from mvo5/master Add XKB_CONFIG_ROOT environment | ||
| 7ea129fb | 2015-07-17 20:59:52 | Add XKB_CONFIG_ROOT environment The XKB_CONFIG_ROOT environment allows overrding the build time DFLT_XKB_CONFIG_ROOT path. | ||
| 257e38c8 | 2015-07-17 23:26:20 | build: don't fail if linker version scripts are not supported Some platforms (such as OSX) do not support version scripts. In these platforms the symbols will not be versioned, but it is OK to omit them. https://github.com/xkbcommon/libxkbcommon/issues/24 | ||
| 8e1fed6c | 2015-03-24 16:40:29 | compose: correctly parse modifier syntax As described in: http://cgit.freedesktop.org/xorg/lib/libX11/commit/?id=ddf3b09bb262d01b56fbaade421ac85b0e60a69f Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| c8c41c01 | 2015-03-10 12:20:01 | rename to LICENSE GitHub uses 'LICENSE' to scrape for repository license information, cf. https://github.com/blog/1964-open-source-license-usage-on-github-com Rename to make it a bit easier for it. | ||
| b0450847 | 2015-02-19 17:03:06 | doc: some editorial changes to compose documentation Use nicer Markdown syntax, `surround` some words, fix some typos. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 74482de6 | 2015-02-03 20:50:52 | test/common: print keycode in decimal not hex Keycodes are usually written in decimal, so hex is hard to compare. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| ca58937d | 2014-10-24 23:40:24 | configure.ac: also print ${datarootdir} in summary It goes something like: ${XLOCALEDIR} -> ${datarootdir}/locale/X11 -> ${prefix}/share/locale/X11 -> /usr/share/locale/X11 But AC_MSG_RESULT only performs one substitution. Instead of starting to expand this stuff manually, just print datarootdir so all the pieces are there. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| dc275a28 | 2014-10-24 23:06:07 | PACKAGING: fix confusing typo Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 508fbcd1 | 2014-10-24 23:03:41 | doc: explain the envvars which affect compose Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 91620179 | 2014-10-23 21:03:13 | keycodes: use correct printf format Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| c03834a1 | 2014-10-23 21:00:20 | Reduce variable scopes Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 5e3615b2 | 2014-10-18 20:04:57 | ast-build: remove log message about allocation failure We don't do so anywhere else, so until we have something comprehensive, let's not so here. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 4a660d7f | 2014-10-18 19:47:19 | xkbcomp: remove file->topName It is useless. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 96a29ede | 2014-10-18 19:22:56 | xkbcomp/keymap: remove useless free() Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| c43c3c86 | 2014-10-18 16:41:59 | Bump version to 0.5.0 Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 60104e79 | 2014-10-18 16:35:49 | Update NEWS Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| b92f7924 | 2014-10-18 16:38:13 | Change initial symbol file versions to V_0.5.0 It will be quite confusing to use V_0.4.3 since this was already released without symbol versioning. Hopefully this doesn't cause any trouble for people who are using -git. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 47bb9fd1 | 2014-10-18 16:37:46 | compose: fill @since TBD Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| aa41d883 | 2014-10-18 16:03:41 | doc/compat.md: add compose incompatibilities Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 413954aa | 2014-10-18 15:51:41 | Add PACKAGING file Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 047d0612 | 2014-10-18 15:07:37 | Makefile.am: add symbol files to EXTRA_DIST Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 6337d789 | 2014-10-18 14:52:54 | README: we also accepts patches through github Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 0419f6e7 | 2014-10-18 14:50:49 | docs: make html output have a fixed width, hide footer It's hard to read text which stretches indefinitely. The footer is not adding much. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 494a8fbf | 2014-10-18 13:50:54 | README: move compatibility notes to their own page Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| b05a05ed | 2014-10-18 14:29:37 | README: add notes about Compose support Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 49dc91ce | 2014-10-18 14:12:14 | doc/quick-guide: some improvements Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| bac0c323 | 2014-10-18 13:58:56 | README: remove elaborate details from the intro Point to the "quick guide" instead. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| ab9cb11c | 2014-10-18 13:53:25 | doc/compat.md: we don't support more groups or mods yet Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 2e8ab383 | 2014-10-18 13:44:02 | README: link to online API docs Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| cb461893 | 2014-10-18 13:34:15 | README: move note about xkeyboard-config to its own section Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 8bf1e193 | 2014-10-18 13:31:32 | README: remove section on API stability This was useful when we *weren't* stable. But now that we are this should be obvious. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| f774f819 | 2014-10-18 13:23:53 | Replace some strncmp's with memcmp Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| a4cc119b | 2014-10-18 12:36:40 | compose/parser: save len in keysym_from_name cache This reduces a lot of strcmp's, and allows to use a faster memcmp. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| a0d2b029 | 2014-10-17 01:14:57 | test/keyseq: test 'map[None] = Level2;' scenario See previous commit for an explanation. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 312182ce | 2014-10-16 17:55:46 | test/data: add files for model=applealu_ansi layout=us Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| c6ee6371 | 2014-10-16 17:48:00 | test/data: sync to xkeyboard-config 2.13 (Run ./test/data/sync.sh). Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 30e7445d | 2014-10-17 00:41:05 | state: correctly infer inactive type entries The current test is incorrect, since 'map[None]' is entirely valid. In most cases this doesn't cause any problems, since the default fallback is Level1, and it's almost always 'map[None] = Level1' anyway. But in one case in xkeyboard-config it isn't, in types/numpad(mac): type "KEYPAD" { modifiers = None; map[None] = Level2; level_name[Level2] = "Number"; }; So before checking if no modifiers were mapped, make sure there *were* any modifiers at all. https://bugs.freedesktop.org/show_bug.cgi?id=85092 Reported-by: Gatis Paeglis <gatis.paeglis@digia.com> Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| a4c667ad | 2014-10-17 00:13:48 | symbols: don't warn about conflicting syms if they are the same Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 2e5530ad | 2014-10-16 18:51:51 | parser: bring back warning about includes of files with no default Using the same format as xkbcomp. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 57ad452b | 2014-10-16 13:11:26 | Merge pull request #14 from jasperla/undefined disable -Wl,--no-undefined on OpenBSD for it doesn't have DT_NEEDED for libc | ||
| dff65c0c | 2014-10-16 11:35:18 | disable -Wl,--no-undefined on OpenBSD for it doesn't have DT_NEEDED for libc | ||
| 1595f2b7 | 2014-10-15 22:38:17 | Merge pull request #13 from jasperla/librt Make librt optional, required for at least OpenBSD | ||
| 3e169c47 | 2014-10-15 21:08:17 | Make librt optional, required for at least OpenBSD | ||
| c42b8646 | 2014-10-14 11:47:25 | test/compose: test include statement Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 3f489730 | 2014-10-14 10:53:38 | test/compose: test modifier syntax Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| c6e63fd7 | 2014-10-14 11:28:17 | compose/parser: fix parsing of multiple modifiers Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| d1c5dd14 | 2014-10-13 18:19:16 | compose/parser: parse (! mods) properly We don't actually do anything with them. But if someone uses them we can at least not choke. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 3c0c3afa | 2014-10-13 15:47:13 | compose/parser: resolve keysyms in parser instead of scanner It will become context-sensitive. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 0b99c63c | 2014-10-13 15:05:48 | compose/parser: use parameter as intended Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 8bba4b34 | 2014-10-13 00:16:59 | compose/parser: one more skip_to_eol() Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| a3116f97 | 2014-10-13 18:51:12 | compose/parser: fix segfault when including The keysym cache for the new scanner was not initialized. To avoid such errors also in the future, require passing the priv argument in scanner_init(), instead of initializing it separately. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 65c355aa | 2014-10-13 14:28:27 | COPYING: add copyright notice from libX11:modules/im/ximcp/imLcPrs.c We have used some portions of it, so add the notice. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 8a0acf2c | 2014-10-07 23:42:08 | scanner-utils: optimize one-line comments Compose files have a lot of those. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 8d58e250 | 2014-10-03 00:30:43 | bench/compose: add new benchmark Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 5cefa5c5 | 2014-01-29 13:46:42 | test/interactive-evdev: add compose support To try, do e.g.: sudo ./test/interactive-evdev -l us -v intl -o compose:ralt -d Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 10a7a2bd | 2013-10-27 20:37:27 | test/compose: add new test Some results from the benchmark (compilation of en_US.UTF-8/Compose): $ grep 'model name' /proc/cpuinfo model name : Intel(R) Core(TM)2 Duo CPU E8400 @ 3.00GHz model name : Intel(R) Core(TM)2 Duo CPU E8400 @ 3.00GHz $ uname -a Linux ran 3.16.1-1-ARCH #1 SMP PREEMPT Thu Aug 14 07:40:19 CEST 2014 x86_64 GNU/Linux $ ./test/compose bench compiled 1000 compose tables in 7.776488331s So according to the above benchmark and valgrind --tool=massif, an xkb_compose_table adds an overhead of about ~8ms time and ~130KB resident memory. For contrast, a plain US keymap adds an overhead of ~3ms time and 90KB resident memory. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| edc98b54 | 2014-09-12 18:44:30 | compose: add xkbcommon-compose - implementation Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| e8b11232 | 2014-09-12 00:31:40 | darray: add darray_shrink() If we have a big array which can be finalized, on average we can give back 1/4 of its size, which the allocator might be able to use. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 046c802e | 2014-09-12 18:43:58 | compose: add xkbcommon-compose - API xkbcommon-compose is a Compose implementation for xkbcommon. It mostly behaves like libX11's Compose, but the support is somewhat low-level and is not transparent like in libX11. The user must add some supporting code in order to utilize it. The intended audience are users who use xkbcommon but not a full-blown input method. With this they can add Compose support in a straightforward manner, so they have a fairly complete keyboard input for Latin-like languages at least. See the header documentation for details. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 29a1a780 | 2014-09-12 18:40:18 | scanner-utils: add priv member For when a user of the scanner wants to pass something along with it. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| b3f23965 | 2014-02-06 01:48:32 | keysym: add function to test if a keysym is for a modifier Needed for compose. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 94a8e01c | 2014-02-03 14:55:37 | scanner-utils: add helper for appending an entire string Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 8eb024d5 | 2013-10-27 20:17:29 | scanner-utils: add helper for hex string escape Like the already existing oct. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| bc3b4c08 | 2014-10-02 22:03:28 | Move benchmarks from tests to their own files in bench/ The tests only contain tests, and the benchmarks are more visible. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| fd126551 | 2014-10-02 21:24:29 | build: don't rebuild everything for libtest.la We added a -fvisibilty=default to the libtest.la CFLAGS. When automake sees that the CFLAGS are different from those of libxkbcommon.la, it figures it should recompile all of the $(libxkbcommon_la_SOURCES), instead of reusing the already-compiled object files. But actually, the convenience library is not a shared object, it's just used as an archive, thus the -fvisibility is entirely pointless. So avoid the recompilations by just removing it. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 4ed68120 | 2014-10-01 19:14:36 | scanner-utils: optimize str()/lit() Replace the dog-slow unneeded strncasecmp() with an inlineable memcmp(). Before: compiled 2500 keymaps in 8.348715629s After: compiled 2500 keymaps in 7.872640338s Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 725ae134 | 2014-09-25 22:01:17 | keymap: rename XkbKeyGroupWidth to XkbKeyNumLevels The "width" terminology comes from the group*width+level layout of the keysyms in a key, as used in the old implementations. We don't keep all the keysyms of a key in one array so change it to a more accurate name. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 2c259f17 | 2014-09-25 21:55:52 | symbols: improve FindKeyForSymbol() A bit more involved, but can short circuit. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 485b736f | 2014-09-25 21:25:39 | symbols: use correct max value xkb_level_index_t was initially uint16_t, now it's 32. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 9c088df3 | 2014-09-22 15:45:26 | doc: disable alphabetical data structure index It is useless - we have very little data structures. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 805ed4e7 | 2014-09-22 15:31:51 | doc: disable BRIEF_MEMBER_DESC It's easier to quickly go through the functions in a module this way. The names provide enough "brief description" to get someone to click for the full description. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 08d05799 | 2014-09-22 15:27:13 | doc: disable tree view It is redundant with the header navigation. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 0b448548 | 2014-09-22 15:23:10 | doc: linkify some references Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| f088d23f | 2014-09-22 11:44:51 | x11, doc: add note about Key{Press,Release}->state field Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 7831fe21 | 2014-09-22 11:24:17 | x11, doc: add note about per-client flags like detectable autorepeat Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 68962aa1 | 2014-09-21 23:54:34 | keymap-dump: combine modifier_map's with the same modifier A bit less efficient, but makes for shorter, nicer output. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 0224283f | 2014-09-21 17:09:58 | rules: fix mlvo-not-used warning An mlvo can also be used in an expansion, but we didn't mark them in this case in commit d8a4f52cb95d989b4. This caused wrongful warnings on something like -l ch -v fr -- the `fr` is only added via expansion. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| f0cd7abc | 2014-09-21 00:59:11 | quick-guide: fix xkb_state_key_get_syms() example Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 51ae4a17 | 2014-09-21 00:56:33 | quick-guide: fix Java-esque array syntax Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| d8a4f52c | 2014-09-20 16:13:24 | rules: warn when an RMLVO component isn't used Due to wildcard matches in the rules file, this is only really useful for misspelled or missing options, e.g. $ ./test/rmlvo-to-kccgst -o comprose:ralt > /dev/null xkbcommon: ERROR: Unrecognized RMLVO option "comprose:ralt" was ignored Although it is more of a warning, it indicates a misconfiguration which the user probably wants to see. Therefore the log level is ERROR. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| d0c6fce2 | 2014-09-20 15:06:13 | parser: use "atom" instead of "sval" in yylval "sval" is already used for "struct sval". Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 1ba7d9ec | 2014-09-19 12:35:52 | doc: reorder "Keymap Components" functions Put the general keymap stuff before key-specific functions. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 494e3189 | 2014-09-19 00:56:16 | doc: move consumed modifier description to its own section With small edits. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 0aeb1095 | 2014-09-18 21:09:41 | doc: order the modules better Explicitly specify the files in INPUT so that "X11 Support" appears after the main modules. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| c00df885 | 2014-09-18 12:13:59 | x11, doc: fix typo Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| ab4df099 | 2014-09-18 11:59:27 | x11, doc: add overview Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 24846080 | 2014-09-11 14:08:12 | test/keyseq: add test Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 64fec8f3 | 2014-09-11 12:15:31 | configure.ac: add -Wdocumentation It's supported by clang and warns about bad doxygen comments. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 5f8ccd18 | 2014-09-11 12:09:57 | doc: fix @param display for xkb_x11_setup_xkb_extension() Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 1054962d | 2014-09-11 02:55:51 | symbols: use darray_foreach_from for nicer loop Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| f03dcf9f | 2014-09-10 19:11:41 | Remove compatibility symbols Remove the deprecated symbols that were used for ABI compatibility during the transition period to the first stable version, 0.2.0. The old *names* can still be used, programs which use the old names will continue to work, as long as they were compiled against a stable version (as they have been #defined to the new names from the start; see xkbcommon/xkbcommon-compat.h). Namely, this will break binaries which: 1. Were compiled against a pre-stable version of libxkbcommon, and 2. Are linked against the next version of libxkbcommon, and 3. Expect to work. This scenario is very unlikely, and will break in many other ways anyway. Also, retaining support for these means including them in the new symbol version file, which I would like to avoid. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 5444f6a8 | 2014-09-09 19:08:46 | build: use symbol versioning Symbol versions provide a means by which ELF utilities can determine whether a program is incompatible with a too-old library version so that package management tools can autodetect version-based dependencies and suggest upgrade paths. [ran: swap xkbcommon.map and xkbcommon-x11.map] Signed-off-by: Jan Engelhardt <jengelh@inai.de> Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| a931740c | 2014-09-10 13:29:52 | keycodes: fix keymap compilation with no aliases and malloc(0)==NULL If the keymap doesn't have any key-aliases (which is certainly possible), the calloc(num_key_aliases, ...) is allowed to return NULL according to the C standard, but this is not an error. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 7a87c202 | 2014-09-10 13:10:33 | ast-build: fix leak in error path Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| ba985629 | 2014-09-06 11:29:15 | test: make most tests portable by copying linux/input.h locally There is really no reason to deny these tests from different platforms only for a few #defines. The only linux-only test (or test program, it is not run by make check) is interactive-evdev, which actually uses evdev. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| e95fb475 | 2014-09-06 11:05:44 | Remove <linux/input.h> include from test/x11comp.c libxkbcommon 0.4.3 introduces a new test, x11comp, which does not build on non-Linux OSes because of the unconditional <linux/input.h> include. This seems not needed even on Linux, so attached there is a simple patch to remove it. https://bugs.freedesktop.org/show_bug.cgi?id=83551 Signed-off-by: Ran Benita <ran234@gmail.com> |