Accepting request 593838 from home:sbrabec:branches-kbd-fi-1085432
- Disable characters >=U+F000. These do not work properly (bsc#1085432#c15, kbd-unicode-fxxx.patch). OBS-URL: https://build.opensuse.org/request/show/593838 OBS-URL: https://build.opensuse.org/package/show/Base:System/kbd?expand=0&rev=109
This commit is contained in:
parent
93a30b004f
commit
21d9384083
@ -1,34 +1,71 @@
|
|||||||
Partially revert 3f065394 to not fail on ligature fi and other characters with UNICODE code 0xFxxx.
|
Disable characters >=U+F000. These do not work properly.
|
||||||
|
|
||||||
Index: kbd-2.0.4/src/libkeymap/analyze.l
|
Explanation from Alexey Gladkov:
|
||||||
|
|
||||||
|
The kbd value is unsigned short [1] and take a look how kernel gets
|
||||||
|
a type [2]. The last bytes are occupied by type.
|
||||||
|
|
||||||
|
[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/include/uapi/linux/kd.h?id=06dd3dfeea60e2a6457a6aedf97afc8e6d2ba497#n103
|
||||||
|
[2] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/include/uapi/linux/keyboard.h?id=06dd3dfeea60e2a6457a6aedf97afc8e6d2ba497#n45
|
||||||
|
|
||||||
|
The problem in the kernel. In the kb_value there is no room to store such
|
||||||
|
values.
|
||||||
|
|
||||||
|
Index: kbd-2.0.4/data/keymaps/i386/qwertz/de_alt_UTF-8.map
|
||||||
===================================================================
|
===================================================================
|
||||||
--- kbd-2.0.4.orig/src/libkeymap/analyze.l
|
--- kbd-2.0.4.orig/data/keymaps/i386/qwertz/de_alt_UTF-8.map
|
||||||
+++ kbd-2.0.4/src/libkeymap/analyze.l
|
+++ kbd-2.0.4/data/keymaps/i386/qwertz/de_alt_UTF-8.map
|
||||||
@@ -361,11 +361,6 @@ To to|To|TO
|
@@ -160,7 +160,7 @@ shift alt keycode 2 = U+00AC # notsig
|
||||||
}
|
shift alt keycode 3 = U+201D # right double quote
|
||||||
{Unicode} {
|
shift alt keycode 4 = numbersign
|
||||||
yylval->num = strtol(yytext + 1, NULL, 16);
|
shift alt keycode 5 = sterling
|
||||||
- if (yylval->num >= 0xf000) {
|
-shift alt keycode 6 = U+FB01 # fi ligature
|
||||||
- ERR(yyextra, _("unicode keysym out of range: %s"),
|
+#shift alt keycode 6 = U+FB01 # fi ligature
|
||||||
- yytext);
|
shift alt keycode 7 = dead_circumflex
|
||||||
- return(ERROR);
|
shift alt keycode 8 = backslash
|
||||||
- }
|
shift alt keycode 9 = U+02DC # small tilde
|
||||||
return(UNUMBER);
|
@@ -179,7 +179,7 @@ shift alt keycode 23 = Ucircumflex
|
||||||
}
|
shift alt keycode 24 = Ooblique
|
||||||
{Decimal}|{Octal}|{Hex} {
|
shift alt keycode 25 = U+220F # n-ary product
|
||||||
Index: kbd-2.0.4/src/libkeymap/analyze.c
|
shift alt keycode 26 = degree
|
||||||
===================================================================
|
-shift alt keycode 27 = U+F8FF # apple logo
|
||||||
--- kbd-2.0.4.orig/src/libkeymap/analyze.c
|
+#shift alt keycode 27 = U+F8FF # apple logo
|
||||||
+++ kbd-2.0.4/src/libkeymap/analyze.c
|
shift alt keycode 30 = Aring
|
||||||
@@ -1499,11 +1499,6 @@ YY_RULE_SETUP
|
shift alt keycode 31 = Iacute
|
||||||
#line 362 "analyze.l"
|
shift alt keycode 32 = U+2122 # trade mark
|
||||||
{
|
@@ -188,7 +188,7 @@ shift alt keycode 34 = Igrave
|
||||||
yylval->num = strtol(yytext + 1, NULL, 16);
|
shift alt keycode 35 = Oacute
|
||||||
- if (yylval->num >= 0xf000) {
|
shift alt keycode 36 = U+0131 # dotless i
|
||||||
- ERR(yyextra, _("unicode keysym out of range: %s"),
|
shift alt keycode 37 = U+02C6 # circumflex accent
|
||||||
- yytext);
|
-shift alt keycode 38 = U+FB02 # fl ligature
|
||||||
- return(ERROR);
|
+#shift alt keycode 38 = U+FB02 # fl ligature
|
||||||
- }
|
shift alt keycode 39 = U+0152 # OE
|
||||||
return(UNUMBER);
|
shift alt keycode 40 = AE
|
||||||
}
|
shift alt keycode 41 = U+201C # left double quote
|
||||||
YY_BREAK
|
@@ -210,7 +210,7 @@ control shift alt keycode 2 = U+00AC
|
||||||
|
control shift alt keycode 3 = U+201D # right double quote
|
||||||
|
control shift alt keycode 4 = numbersign
|
||||||
|
control shift alt keycode 5 = sterling
|
||||||
|
-control shift alt keycode 6 = U+FB01 # fi ligature
|
||||||
|
+#control shift alt keycode 6 = U+FB01 # fi ligature
|
||||||
|
control shift alt keycode 7 = circumflex
|
||||||
|
control shift alt keycode 8 = backslash
|
||||||
|
control shift alt keycode 9 = U+02DC # small tilde
|
||||||
|
@@ -229,7 +229,7 @@ control shift alt keycode 23 = Ucircumf
|
||||||
|
control shift alt keycode 24 = Ooblique
|
||||||
|
control shift alt keycode 25 = U+220F # n-ary product
|
||||||
|
control shift alt keycode 26 = degree
|
||||||
|
-control shift alt keycode 27 = U+F8FF # apple logo
|
||||||
|
+#control shift alt keycode 27 = U+F8FF # apple logo
|
||||||
|
control shift alt keycode 30 = Aring
|
||||||
|
control shift alt keycode 31 = Iacute
|
||||||
|
control shift alt keycode 32 = U+2122 # trade mark
|
||||||
|
@@ -238,7 +238,7 @@ control shift alt keycode 34 = Igrave
|
||||||
|
control shift alt keycode 35 = Oacute
|
||||||
|
control shift alt keycode 36 = U+0131 # dotless i
|
||||||
|
control shift alt keycode 37 = U+02C6 # circumflex accent
|
||||||
|
-control shift alt keycode 38 = U+FB02 # fl ligature
|
||||||
|
+#control shift alt keycode 38 = U+FB02 # fl ligature
|
||||||
|
control shift alt keycode 39 = U+0152 # OE
|
||||||
|
control shift alt keycode 40 = AE
|
||||||
|
control shift alt keycode 41 = U+201C # left double quote
|
||||||
|
@ -1,3 +1,9 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Apr 5 17:32:03 CEST 2018 - sbrabec@suse.com
|
||||||
|
|
||||||
|
- Disable characters >=U+F000. These do not work properly
|
||||||
|
(bsc#1085432#c15, kbd-unicode-fxxx.patch).
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Thu Mar 15 17:04:06 CET 2018 - sbrabec@suse.com
|
Thu Mar 15 17:04:06 CET 2018 - sbrabec@suse.com
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user