Edit

kc3-lang/libxkbcommon/scripts/update-keysyms

Branch :

  • Show log

    Commit

  • Author : Pierre Le Marre
    Date : 2025-01-16 23:22:40
    Hash : 4ac22263
    Message : keysyms: Check clashes between keysyms names and keywords Due to how our parser is implemented, keysyms names that are also valid keywords require special handling. Added a check for these clashes in the keysym generator. The only current clash, `section`, is already handled. Note that it means that e.g. `section`, `Section` and `sEcTiOn` all parse to the same keysym. This side effect is fine here, because *currently* there is no other keysym that clashes with any possible of the case variation of `section`. But in order to be extra cautious, we now test thoses clashes too. Hopefully we will never have a clash again, but while it is unlikely that we modify the keywords, the keysyms are not a frozen set.

  • scripts/update-keysyms
  • #!/bin/sh
    # Run this to regenerate xkbcommon-keysyms.h from the X11 headers
    # defining the keysyms and update the name <-> keysym mapping.
    export LC_CTYPE=C.UTF-8
    export LC_COLLATE=C.UTF-8
    scripts/makeheader > include/xkbcommon/xkbcommon-keysyms.h
    scripts/makekeys include/xkbcommon/xkbcommon-keysyms.h \
                     src/xkbcomp/keywords.gperf > src/ks_tables.h
    scripts/update-headers.py