| #!/bin/sh -efu | |
| cwd="$(readlink -ev "${0%/*}")" | |
| cd "$cwd" | |
| BUILDDIR="@BUILDDIR@" | |
| DATADIR="@DATADIR@" | |
| check_keymap() { | |
| local kmap temp rc | |
| rc=0 | |
| kmap="$1" | |
| temp="$(mktemp "$BUILDDIR"/temp.XXXXXXXXX)" | |
| ./libkeymap-dumpkeys "$kmap" "$2" "$3" > "$temp" || rc=$? | |
| cmp -s "$kmap" "$temp" || rc=$? | |
| if [ "$rc" != 0 ]; then | |
| printf '%s: failed\n' "${kmap##*/}" | |
| else | |
| rm -f -- "$temp" | |
| fi | |
| return $rc | |
| } | |
| check_keymap "$DATADIR"/data/dumpkeys-fulltable/ruwin_cplk-UTF-8.map FULL_TABLE TRUE | |
| check_keymap "$DATADIR"/data/dumpkeys-fulltable/qwerty-layout.map DEFAULT FALSE | |
| # check keymaps line | |
| kmap="$DATADIR/data/dumpkeys-fulltable/ua-ws.map" | |
| line0="$(grep '^#keymaps ' "$kmap")" ||: | |
| line0="${line0#\#}" | |
| line1="$(./libkeymap-dumpkeys "$kmap" SEPARATE_LINES FALSE |grep '^keymaps ')" ||: | |
| if [ "$line0" != "$line1" ]; then | |
| printf 'was: %s\n' "$line0" | |
| printf 'new: %s\n' "$line1" | |
| fi >&2 |