-
-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update to match xorgproto 2024.1 #29
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The generated file is fine.
There's also one place where update might be needed, though, I haven't checked myself. We have a KEYSYM
tab that matches what is present in libxkbcommon, so we might need to update it as well.
See the from_char
and the top level comment where it came from in src/lib.rs
.
--
I'm fine with using e.g. arch since the thing is generated manually.
Glad to hear that. The main advantage of an Arch container that I can see is that its xorgproto package is updated very quickly, generally within a few days of release, so it is easy to get the latest version. I have taken a look at the file |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Will wait for @notgull for a while.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sorry for the delay, this looks good to me
Hi, thanks for the approvals. However, before merging, there is one small improvement to this PR that that does not affect the generated keysyms, but makes the
Although the previous After making this change, I checked that re-running the keysym generation gives the same result. |
Hello,
This pull request provides an updated version of xkeysym to match the latest xorgproto release (2024.1) and the latest version of libxkbcommon (1.7.0). Currently, xkeysym is only in sync with an earlier xorgproto release, 2022.1.
The changes in this pull request reflect the new keysym definitions added by xorgproto 2024.1 and 2023.1 . Additionally, xorgproto 2023.1 deprecated several keysym names and added their new, preferred names (e.g.
guillemotleft
becomesguillemetleft
), although the old names are kept for compatibility, in order to not break applications that depend on these older symbol names.One question relates to the choice of environment to fetch the most recent keyboard symbol headers, and generate the keyboard symbols from them. The
rust:slim
image, which is currently used by this crate to set up the environment to generate Rust code from headers, only has x11proto-core-dev 2022.1.1 (corresponding to xorgproto 2022.1) as the latest version available inapt
. This means that the current symbol set is only consistent with that, older release, and does not reflect recent changes. The other Rust official Docker images all only have older versions of xorgproto available through the package manager, exceptrust:alpine
which has a somewhat more recent xorgproto version at 2023.2.As a way to work around this, this pull request shows that the
archlinux:base
image can be used instead, since Arch'spacman
has xorgproto 2024.1 available. However, this choice makes the code generation step slower, sincecargo
must now be installed in the container first.Would there be a better way to accomplish this, or is this fine? I thought it could be possible instead to automatically generate directly from the downloaded raw header files, without installing a package, although this would require a significantly different setup process and might have its own downsides.
Thanks