On Thu, Aug 10, 2017 at 01:23:08PM -0500, Eric Blake wrote: > On 08/10/2017 10:55 AM, Daniel P. Berrange wrote: > > The https://gitlab.com/keycodemap/keycodemapdb/ repo contains a > > data file mapping between all the different scancode/keycode/keysym > > sets that are known, and a tool to auto-generate lookup tables for > > different combinations. > > > > It is used by GTK-VNC, SPICE-GTK and libvirt for mapping keys. > > Using it in QEMU will let us replace many hand written lookup > > tables with auto-generated tables from a master data source, > > reducing bugs. Adding new QKeyCodes will now only require the > > master table to be updated, all ~20 other tables will be > > automatically updated to follow. > > > > Signed-off-by: Daniel P. Berrange <berra...@redhat.com> > > --- > > > + > > +ui/input-keymap-%.c: $(KEYCODEMAP_GEN) $(KEYCODEMAP_CSV) ui/Makefile.objs > > + $(call quiet-command,\ > > + $(PYTHON) $(KEYCODEMAP_GEN) \ > > + --lang glib2 \ > > + --varname qemu_input_map_$$(echo $@ | sed -e > > "s,^ui/input-keymap-,," -e "s,\.c$$,,") \ > > + code-map $(KEYCODEMAP_CSV) \ > > + $$(echo $@ | sed -E -e > > "s,^ui/input-keymap-([a-zA-Z0-9]+)2([a-zA-Z0-9]+)\.c$$,\1,") \ > > + $$(echo $@ | sed -E -e > > "s,^ui/input-keymap-([a-zA-Z0-9]+)2([a-zA-Z0-9]+)\.c$$,\2,") \ > > Can this text transformation be done using intrinsic make functions, > instead of requiring the shell to spawn external processes?
Suggestions welcome :-) > The regex looks fragile: if we ever have one keymap named '2abc' and > another named 'xyz2', then the input-keymap-xyz222abc may be difficult > to extract based on greedy matching favoring 'xyz22' 2 'abc'. Would it > be better to have 'xyz2-to-2abc' as the preferred naming in the > keycodemapdb project, to make sure the conversion names are unambiguous? The names may end in a digit, but they won't start in a digit, so its unambiguous Regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|