| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
Keep <MDSW> as an alias, for private user layouts that possibly use it.
Signed-off-by: Benno Schulenberg <bensberg@telfort.nl>
|
|
|
|
| |
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
|
|
| |
And move a comment to the relevant line, while correcting a typo.
|
|
|
|
|
| |
Also drop an unneeded comment -- once LWIN and RWIN were extra keys,
nowadays they are standard.
|
|
|
|
|
| |
Most other codenames are listed in the order in which they appear
on a standard keyboard, so do this for these two too.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Commit 710752e4be from fourteen years ago repurposed keycode 97
(until then used for "Romaji") for AB11, freeing up keycode 211
for <I211>, but forgot to remove this comment.
(Also add a space, to line up the Japanese codes consistently.)
Also, adjust the generation script to not recreate the comment.
Signed-off-by: Benno Schulenberg <bensberg@telfort.nl>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change came up after discussions in:
https://github.com/google/mozc/issues/552
This change is not complex, but it has somewhat complex background. The
following discussion describes it extensively.
1. Six keys somewhat related or unrelated
This change involves six keys: ImeOn, ImeOff, Hangul Latin toggle,
Hangul to Hanja conversion, Eisu toggle / Caps Lock and
Katakana / Hiragana / Romaji.
ImeOn is the name used by Microsoft. Apple calls it "Kana switch".
ImeOff is the name used by Microsoft. Apple calls it "alphanumeric".
Hangul Latin toggle is the name used in keycodes directory. Apple calls
it "Hangul/English toggle".
Hangul to Hanja conversion is the name used in keycodes directory. Apple
calls it "Hanja conversion".
ImeOn and Hangul Latin toggle are mapped to Lang1 in USB HID usage and
physically located right to space key.
ImeOff and Hangul to Hanja conversion are mapped to Lang2 in USB HID
usage and physically located left to space key.
Eisu toggle / Caps Lock and Katakana / Hiragana / Romaji has key top
prints somewhat similar to ImeOff (which says "Eisu") and ImeOn (which
says "Kana"), but they have different semantics for Japanese IMEs like
macOS Japanese Input Method, Microsoft Japanese IME, and Mozc have two
distinct states: IME ON/OFF state and input character type. Eisu_toggle
and Hiragana_Katakana are used to toggle the input character type where
ImeOn and ImeOff keys are used to IME ON/OFF state. Their physical
positions are also different. Eisu toggle / Caps Lock are located where
Caps Lock usually sits on a conventional IBM PC keyboard. The position
of Hiragana / Katakana / Romaji are described in Microsoft's
documentation shown later.
The following pages describe the keys listed above:
https://docs.microsoft.com/en-us/windows-hardware/design/component-guidelines/keyboard-japan-ime
https://developer.apple.com/documentation/uikit/uikeyboardhidusage/uikeyboardhidusagekeyboardlang1
https://developer.apple.com/documentation/uikit/uikeyboardhidusage/uikeyboardhidusagekeyboardlang2
2. Messy situation before this change
The following key codes were defined for xfree86:
<EISU> = 210;
<KANA> = 209;
alias <HNGL> = <FK16>;
alias <HJCV> = <FK17>;
They used to represent ImeOff, ImeOn, Hangul Latin toggle, and Hangul to
Hanja conversion, respectively.
However, apparently HNGL and HJCV were incorrect. The following commits
of xf86-input-keyboard suggest they are actually mapped to 209 and 210:
425c1280439fe37497a33c47b5a8432e59cbfb76
ccf63a61f39e1f107a67c33d6a7ad24ea4c76b7e
evdev only has HNGL and HJCV, and they also represent ImeOn and ImeOff,
respectively.
EISU, KANA, HNGL, HNGL, and HJCV were then used to generate the
following symbols respectively:
Eisu_toggle, Hiragana_Katakana, Hangul, and Hangul_Hanja.
Generating Eisu_toggle for ImeOff and Hiragana_Katakana for ImeOn were
semantically incorrect as they rather provide the functionality of Eisu
toggle / Caps Lock and Hiragana / Katakana / Romaji.
3. Solution
This change solves the situation by always defining HNGL and HJCV key codes and
generating Hangul for Lang1 keys and Hangul_Hanja for Lang2 keys. In
this way, Japanese and Korean IMEs can know keys they need to toggle IME
states. Japanese IMEs can also distinguish ImeOn and ImeOff from
Eisu toggle / Caps Lock and Hiragana Katakana / Romaji.
This change lets Hangul and Hangul_Hanja symbols overload semantics of
Japanese and Korean IMEs. This is based on the following rationales:
* evdev always emitted Hangul and Hangul_Hanja symbols before this
change and therefore it would be least disruptive.
* The key pairs are physically located in the same positions so users
would expect them to perform interchangeably when switching Japanese
and Korean IMEs.
* Distinguishing from key codes is not possible anyway because the
underlying hardware complies USB HID Usage Table, which do not
distinguish those keys.
|
|
|
|
|
|
| |
Missing from 011b71a6f4b306db5c97953cb339b86cd089835f
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
|
|
|
|
| |
Even the xserver is now meson only and building a desktop stack without
meson is not possible anymore. So let's drop autotools for meson, which
is much easier to maintain.
|
|
|
|
|
|
|
|
| |
These don't need to sit in the main source tree where we need exceptions for
them in the build system. They are only called from special jobs in the CI
pipelines, so let's move this to the CI directory.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The various <I123> keycodes in keycodes/evdev simply match the kernel
defines + offset 8. There is no need to maintain these manually, let's
generate them instead.
Keycodes update rarely and irregularly (on average maybe every second kernel
release) so there's no need to integrate this into the build itself, let's add
it to our CI instead.
The script here uses python-libevdev which has a list of the various key
codes and their names (compile-time built-in in libevdev itself so it's
advisable that a recent libevdev is used). The script is hooked up to a custom
job that will fail if there are key codes with a #define in the kernel that
are not listed in our evdev file. We allow that job to fail, it's not that
urgent to block any merge requests.
Changes to v1, see commit 5dc9b48c and its revert 8fa3b314:
- Parse the template for existing defines and alias those keys. e.g.
alias <I121> = <MUTE>;
- Kernel v5.10 keycodes are now included in the file
- The script defaults to the correct template/keycode file, no commandline
arguments needed for the default run.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
OUTP has been mapped to XF86Display in symbols/pc for about 13 years now, but
no evdev keycode is mapped to this alias. Instead, we have I235 mapped to
XF86Display in symbols/inet. Alias I235 to OUTP and remove the separate
mapping, the keymap stays the same.
Fixes xkbcomp warning
Warning: Key <OUTP> not found in evdev+aliases(qwerty) keycodes
Symbols ignored
The same goes for KITG/KIDN/KIUP, all of which are mapped in symbols/pc.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Some of the generated keys overwrote existing keys, causing warnings
and nonfunctional keys. For example:
xkbcommon: WARNING: Multiple names for keycode 121; Using <I121>, ignoring <MUTE>
Revert this commit, we're too close to a release and it's better to wait until
the next one to give this approach more time to settle.
Fixes #247
This reverts commit 5dc9b48c9b31de9f9780887a79ded3b1e52591d9.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The various <I123> keycodes in keycodes/evdev simply match the kernel
defines + offset 8. There is no need to maintain these manually, let's
generate them instead.
Keycodes update rarely and irregularly (on average maybe every second kernel
release) so there's no need to integrate this into the build itself, let's add
it to our CI instead.
The script here uses python-libevdev which has a list of the various key
codes and their names (compile-time built-in in libevdev itself so it's
advisable that a recent libevdev is used). The script is hooked up to a custom
job that will fail if there are key codes with a #define in the kernel that
are not listed in our evdev file. We allow that job to fail, it's not that
urgent to prevent any other pipelines.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
|
|
|
|
| |
Make the line format for keycodes consistent for all <I123> codes.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The keyboard of the Acer TravelMate 5735Z has dedicated currency keys
close to the arrow keys. Currently, these are not working.
`libinput debug-events` reports the events below.
event0 KEYBOARD_KEY +7.161s KEY_EURO (435) pressed
event0 KEYBOARD_KEY +7.305s KEY_EURO (435) released
event0 KEYBOARD_KEY +7.708s KEY_DOLLAR (434) pressed
event0 KEYBOARD_KEY +7.852s KEY_DOLLAR (434) released
So, add the corresponding mappings. With these changes, pressing these
keys results in € and $ being displayed by GNOME Shell 3.36.3.
Closes: https://gitlab.freedesktop.org/xkeyboard-config/xkeyboard-config/-/issues/213
|
|
|
|
| |
Fixes: commit 28bb029b ("Map evdev keycode KEY_FULL_SCREEN to XF86XFullScreen")
|
|
|
|
|
|
| |
They're just straight installs.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
|
|
|
|
| |
No functional changes
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
|
|
| |
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Add XF86XFullScreen, to be used as mapping for evdev's KEY_FULL_SCREEN.
The patch for adding the FullScreen keysym to xproto is here:
https://gitlab.freedesktop.org/xorg/proto/xorgproto/merge_requests/11
Signed-off-by: Sebastian Wick <sebastian@sebastianwick.net>
|
|/
|
|
|
|
| |
This is obsolete, it's just evdev now
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add XF86RotationLockToggle, to be used as mapping for evdev's
KEY_ROTATE_LOCK_TOGGLE.
I've a Point of View P1006W-232 Windows tablet which actually has a
rotate-lock toggle-button. The latest kernel correctly generates
KEY_ROTATE_LOCK_TOGGLE events for this. So now I'm hooking up support for
it through all the higher layers.
The patch for adding the RotationLockToggle keysym to xproto is here:
https://patchwork.freedesktop.org/patch/279365/
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
KEY_KEYBOARD has an evdev-keycode value of 374 not 366. It seems that
with the original addition of the mapping the evdev-keycode value was
mistaken for the X scancode which is 8 higher then the evdev-keycode
since the X scancodes start at 8. What seems to have happened is that
the evdev-keycode was used instead of the X scancode and then 8 was
subtracted for the wrong "// #define KEY_KEYBOARD 366" comment.
This commit corrects the comment to say 374 and corrects the X
scancode being mapped to 382.
Cc: Christian Kellner <christian@kellner.me>
Reviewed-by: Christian Kellner <christian@kellner.me>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
|
|
|
|
|
|
|
|
|
|
| |
NB: XF86Keyboard is a relatively new keysym and therefore needs
recent protocol headers. Also KEY_KEYBOARD's keysym is > 255
and therefore needs a recent xkbcomp (as the new KEY_FAVORITES).
https://bugs.freedesktop.org/show_bug.cgi?id=101521
Signed-off-by: Christian Kellner <christian@kellner.me>
|
|
|
|
|
|
|
|
|
|
|
| |
NB: The value of KEY_FAVORITES is 0x16c (364) and thus beyond 255,
which is not supported by X11. It might also need a recent xkbcomp
that is patched so it does not throw fatal errors for those. See
https://lists.x.org/archives/xorg-devel/2017-April/053389.html
https://bugs.freedesktop.org/show_bug.cgi?id=100709
Signed-off-by: Christian Kellner <christian@kellner.me>
|
|
|
|
|
|
|
| |
In particular KEY_RFKILL is required for properly handling airplane mode
in userspace.
https://bugs.freedesktop.org/show_bug.cgi?id=100970
|
|
|
|
|
|
|
|
|
| |
This extended keymap includes keycodes beyond the
255 which are not handled by X11 so it is only
suitable for the use with libraries that support
extended keycodes, like libxkbcommon.
https://bugs.freedesktop.org/show_bug.cgi?id=92238
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The keyboard driver (for legacy keyboards) reports the same
keycodes for some inet keys as for the extra keys (Henkan and
Muhenkan) on Japanese 106 keyboards.
So on these keyboards Japanese users either loose their extra
keys or some multimedia keys.
In:
commit bd9d0ced6154de583c96573585f428618017fca3
Fix henkan key on jp106 keyboard with inet media keys
the Henkan/Muhenkan keys were reintroduced.
A better fix will map one of the two sets to different and still
unused keycodes.
A patch for the xf86-input-keyboard driver moves the two inet keys
into the range above 0xfb.
This patch contains the corresponding changes to xkeyboard-config.
Both the legacy keyboard driver and xkeyboard-config will have to
be updated simultaniously otherwise users will loose the two affected
multmedia keys.
Signed-off-by: Egbert Eich <eich@freedesktop.org>
|
|
|
|
|
|
| |
The olpcm symbols refer to AE00 but that is not defined anywhere.
https://bugs.freedesktop.org/show_bug.cgi?id=34738
|
|
|
|
|
|
|
|
|
|
|
| |
Patch updated against current tree.
> From: Paul Fox <pgf@laptop.org>
> Date: Tue, 20 Jul 2010 16:22:40 -0400
> Subject: [PATCH] add support for the OLPC "mechanical" (non-membrane) keyboard
> model(s). to aid in this, add keycodes/olpc with aliases to avoid needing to
> use BKSL and TLDE, which don't appear anywhere near their "traditional"
> position on the olpcm mechanical keyboards.
|
|
|
|
|
|
| |
Remove support for old Sun Type_4/5 keyboards and update data for Sun
Type_6/7 Keyboards as described in Bug 57450 - XKB data specific for Sun
Keyboards is outdated.
|
|
|
|
|
|
|
|
|
|
| |
It's only used by the X server's ListComponents call, which I intend to
stub out shortly.
(For bonus points, that call will fork xkbcomp to generate the necessary
listings itself if it can't find the *.dir files.)
Signed-off-by: Daniel Stone <daniel@fooishbar.org>
|
|
|
|
|
|
|
|
|
| |
According to symbols/inet this keycode is used by two keyboard models:
logitech_g15 and apple.
Thus it should not be used for a fake keycode that gets assigned to a
virtual modifier.
Signed-off-by: Egbert Eich <eich@freedesktop.org>
|
|
|
|
| |
Signed-off-by: Alexandr Shadchin <Alexandr.Shadchin@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Apple's Expose and Dashboard keys (F3 and F4) have correct keycodes
reported by evdev, but are not mapped. This adds the required keycodes
and symbols, using the symbols XF86LaunchA and XF86LaunchB, which allows
the keys to be used in compiz configuration.
(This patch has been included in Ubuntu since 2010.)
Bug: #34351
Ref.: https://bugs.launchpad.net/ubuntu/+bug/520519
Signed-off-by: Bryce Harrington <bryce@canonical.com>
|
|
|
|
| |
https://bugs.freedesktop.org/show_bug.cgi?id=32975
|
|
|
|
|
|
|
| |
Aliases for base rules to match geometry definition
JIS keyboard aliases necessary for evdev rules
Signed-off-by: Damien Ciabrini <damien.ciabrini@gmail.com>
|
|
|
|
| |
Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
|
|
|
|
| |
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
|
|
|
|
| |
https://bugs.freedesktop.org/show_bug.cgi?id=3952
|
|
|
|
|
|
| |
CVS is no longer used for X.Org modules
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
|
|
|
|
|
|
|
|
| |
65fba6dfe3435f changed I56 to I59 to OUTP, KITG, KIDN, KIUP and removed the
I56 keycodes from the xfree86 map. Some inet models rely on this key for
special functionality - they don't work anymore now.
Instead of replacing them completely, alias OUTP to I56, etc.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
|
|
| |
geometries are left in the codebase, for some while
|
| |
|
| |
|
|
|
|
| |
kernels, b.fd.o#9095
|
| |
|
| |
|