[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] add bepo (french dvorak) keyboard layout
From: |
Aurelien Jarno |
Subject: |
Re: [Qemu-devel] [PATCH] add bepo (french dvorak) keyboard layout |
Date: |
Thu, 20 Jan 2011 12:45:29 +0100 |
User-agent: |
Mutt/1.5.18 (2008-05-17) |
On Sun, Jan 09, 2011 at 02:24:59PM +0100, Fred Boiteux wrote:
> Hello,
>
> It's my first message here, and I'm not a git user, so I hope the
> patch format will be good (I've done a "git diff -cached" in the qemu
> tree).
> I'm using the Qemu program with VNC I/O, and I had some problems with
> my keyboard layout, so I've prepared a definition to be included in
> Qemu, built from Xorg description. I've tested here, it works for me.
>
> If you have any remark/question about that, tell me.
>
> Fred.
>
>
>
> Signed-off-by: Frédéric Boiteux <address@hidden>
>
> ---
Thanks, applied.
> diff --git a/pc-bios/keymaps/bepo b/pc-bios/keymaps/bepo
> new file mode 100644
> index 0000000..d40041a
> --- /dev/null
> +++ b/pc-bios/keymaps/bepo
> @@ -0,0 +1,333 @@
> +include common
> +
> +# Bépo : Improved ergonomic french keymap using Dvorak method.
> +# Built by community on 'Dvorak Fr / Bépo' :
> +# see http://www.clavier-dvorak.org/wiki/ to join and help.
> +#
> +# Bépo layout (1.0rc2 version) for a pc105 keyboard (french) :
> +# ┌────┐
> +# │ S A│ S = Shift, A = AltGr + Shift
> +# │ s a│ s = normal, a = AltGr
> +# └────┘
> +#
> +#
> ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┲━━━━━━━━━┓
> +# │ # ¶ │ 1 „ │ 2 “ │ 3 ” │ 4 ≤ │ 5 ≥ │ 6 │ 7 ¬ │ 8 ¼ │ 9 ½ │ 0 ¾ │ ° ′ │
> ` ″ ┃ ⌫ Retour┃
> +# │ $ – │ " — │ « < │ » > │ ( [ │ ) ] │ @ ^ │ + ± │ - − │ / ÷ │ * × │ = ≠ │
> % ‰ ┃ arrière┃
> +#
> ┢━━━━━┷━┱───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┺━┳━━━━━━━┫
> +# ┃ ┃ B ¦ │ É ˝ │ P § │ O Œ │ È ` │ ! │ V │ D Ð │ L │ J IJ │ Z Ə
> │ W ┃Entrée ┃
> +# ┃Tab ↹ ┃ b | │ é ˊ │ p & │ o œ │ è ` │ ˆ ¡ │ v ˇ │ d ð │ l / │ j ij │ z ə
> │ w ̆ ┃ ⏎ ┃
> +#
> ┣━━━━━━━┻┱────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┺┓
> ┃
> +# ┃ ┃ A Æ │ U Ù │ I ˙ │ E ¤ │ ; ̛ │ C ſ │ T Þ │ S ẞ │ R ™ │ N │ M º
> │ Ç , ┃ ┃
> +# ┃Maj ⇬ ┃ a æ │ u ù │ i ̈ │ e € │ , ’ │ c © │ t þ │ s ß │ r ® │ n ˜ │ m ¯
> │ ç ¸ ┃ ┃
> +#
> ┣━━━━━━━┳┹────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┲┷━━━━━┻━━━━━━┫
> +# ┃ ┃ Ê │ À │ Y ‘ │ X ’ │ : · │ K │ ? ̉ │ Q ̣ │ G │ H ‡ │ F ª
> ┃ ┃
> +# ┃Shift ⇧┃ ê / │ à \ │ y { │ x } │ . … │ k ~ │ ' ¿ │ q ˚ │ g µ │ h † │ f ˛
> ┃Shift ⇧ ┃
> +#
> ┣━━━━━━━╋━━━━━┷━┳━━━┷━━━┱─┴─────┴─────┴─────┴─────┴─────┴───┲━┷━━━━━╈━━━━━┻━┳━━━━━━━┳━━━┛
> +# ┃ ┃ ┃ ┃ Espace inséc. Espace inséc. fin ┃ ┃
> ┃ ┃
> +# ┃Ctrl ┃Meta ┃Alt ┃ ␣ (Espace) _ ␣ ┃AltGr ⇮┃Menu
> ┃Ctrl ┃
> +#
> ┗━━━━━━━┻━━━━━━━┻━━━━━━━┹───────────────────────────────────┺━━━━━━━┻━━━━━━━┻━━━━━━━┛
> +
> +
> +# First row
> +## keycode 41 = dollar numbersign U+2013 U+00b6
> +dollar 0x29
> +numbersign 0x29 shift
> +U2013 0x29 altgr
> +U00b6 0x29 shift altgr
> +
> +## keycode 2 = +quotedbl +one U+2014 U+201e
> +quotedbl 0x2
> +one 0x2 shift
> +U2014 0x2 altgr
> +U201e 0x2 shift altgr
> +
> +## keycode 3 = +guillemotleft +two less U+201c
> +guillemotleft 0x3
> +two 0x3 shift
> +less 0x3 altgr
> +U201c 0x3 shift altgr
> +
> +## keycode 4 = +guillemotright +three greater U+201d
> +guillemotright 0x4
> +three 0x4 shift
> +greater 0x4 altgr
> +U201d 0x4 shift altgr
> +
> +## keycode 5 = +parenleft +four bracketleft U+2264
> +parenleft 0x5
> +four 0x5 shift
> +bracketleft 0x5 altgr
> +U2264 0x5 shift altgr
> +
> +## keycode 6 = +parenright +five bracketright U+2265
> +parenright 0x6
> +five 0x6 shift
> +bracketright 0x6 altgr
> +U2265 0x6 shift altgr
> +
> +## keycode 7 = +at +six asciicircum
> +at 0x7
> +six 0x7 shift
> +asciicircum 0x7 altgr
> +
> +## keycode 8 = +plus +seven U+00b1 U+00ac
> +plus 0x8
> +seven 0x8 shift
> +U00b1 0x8 altgr
> +U00ac 0x8 shift altgr
> +
> +## keycode 9 = +minus +eight U+2212 U+00bc
> +minus 0x9
> +eight 0x9 shift
> +U2212 0x9 altgr
> +U00bc 0x9 shift altgr
> +
> +## keycode 10 = +slash +nine U+00f7 U+00bd
> +slash 0xa
> +nine 0xa shift
> +U00f7 0xa altgr
> +U00bd 0xa shift altgr
> +
> +## keycode 11 = +asterisk +zero U+00d7 U+00be
> +asterisk 0xb
> +zero 0xb shift
> +U00d7 0xb altgr
> +U00be 0xb shift altgr
> +
> +## keycode 12 = equal U+00b0 U+2260 U+2032
> +equal 0xc
> +U00b0 0xc shift
> +U2260 0xc altgr
> +U2032 0xc shift altgr
> +
> +## keycode 13 = percent grave U+2030 U+2033
> +percent 0xd
> +grave 0xd shift
> +U2030 0xd altgr
> +U2033 0xd shift altgr
> +
> +
> +# Second row
> +
> +# simplified letter definitions notation :
> +## keycode 16 = b
> +b 0x10 addupper
> +## keycode 18 = p
> +p 0x12 addupper
> +## keycode 19 = o
> +o 0x13 addupper
> +## keycode 22 = v
> +v 0x16 addupper
> +## keycode 23 = d
> +d 0x17 addupper
> +## keycode 24 = l
> +l 0x18 addupper
> +## keycode 25 = j
> +j 0x19 addupper
> +## keycode 26 = z
> +z 0x1a addupper
> +## keycode 27 = w
> +w 0x1b addupper
> +
> +# then, add specific definitions
> +## AltGr keycode 16 = bar
> +bar 0x10 altgr
> +## Shift AltGr keycode 16 = brokenbar
> +brokenbar 0x10 shift altgr
> +
> +## keycode 17 = +eacute +Eacute dead_acute
> +eacute 0x11
> +Eacute 0x11 shift
> +dead_acute 0x11 altgr
> +
> +## AltGr keycode 18 = ampersand
> +ampersand 0x12 altgr
> +## Shift AltGr keycode 18 = U+00a7
> +U00a7 0x12 shift altgr
> +
> +## AltGr keycode 19 = +U+0153
> +U+0153 0x13 altgr
> +## Shift AltGr keycode 19 = +U+0152
> +U+0152 0x13 shift altgr
> +
> +## keycode 20 = +egrave +Egrave dead_grave grave # no Meta !
> +egrave 0x14
> +Egrave 0x14 shift
> +dead_grave 0x14 altgr
> +
> +## keycode 21 = dead_circumflex exclam exclamdown
> +dead_circumflex 0x15
> +exclam 0x15 shift
> +exclamdown 0x15 altgr
> +
> +## AltGr keycode 22 = dead_caron
> +dead_caron 0x16 altgr
> +
> +## AltGr keycode 23 = eth
> +eth 0x17 altgr
> +## Shift AltGr keycode 23 = ETH
> +ETH 0x17 shift altgr
> +
> +## AltGr keycode 25 = +U+0133
> +U+0133 0x19 altgr
> +## Shift AltGr keycode 25 = +U+0132
> +U+0132 0x19 shift altgr
> +
> +## AltGr keycode 26 = +U+0259
> +U+0259 0x1a altgr
> +## Shift AltGr keycode 26 = +U+018f
> +U+018f 0x1a shift altgr
> +
> +
> +
> +# Third row
> +
> +# simplified letter definitions notation :
> +## keycode 30 = a
> +a 0x1e addupper
> +## keycode 31 = u
> +u 0x1f addupper
> +## keycode 32 = i
> +i 0x20 addupper
> +## keycode 33 = e
> +e 0x21 addupper
> +## keycode 35 = c
> +c 0x23 addupper
> +## keycode 36 = t
> +t 0x24 addupper
> +## keycode 37 = s
> +s 0x25 addupper
> +## keycode 38 = r
> +r 0x26 addupper
> +## keycode 39 = n
> +n 0x27 addupper
> +## keycode 40 = m
> +m 0x28 addupper
> +
> +# then, add specific definitions
> +## AltGr keycode 30 = +ae
> +ae 0x1e altgr
> +## Shift AltGr keycode 30 = +AE
> +AE 0x1e shift altgr
> +
> +## AltGr keycode 31 = +ugrave
> +ugrave 0x1f altgr
> +## Shift AltGr keycode 31 = +Ugrave
> +Ugrave 0x1f shift altgr
> +
> +## AltGr keycode 32 = dead_diaeresis
> +dead_diaeresis 0x20 altgr
> +
> +
> +## AltGr keycode 33 = U+20ac
> +U20ac 0x21 altgr
> +
> +## keycode 34 = comma semicolon U+2019 +U+031b
> +comma 0x22
> +semicolon 0x22 shift
> +U2019 0x22 altgr
> +U+031b 0x22 shift altgr
> +
> +## AltGr keycode 35 = copyright
> +copyright 0x23 altgr
> +## Shift AltGr keycode 35 = U+017f
> +U017f 0x23 shift altgr
> +
> +## AltGr keycode 36 = +thorn
> +thorn 0x24 altgr
> +## Shift AltGr keycode 36 = +THORN
> +THORN 0x24 shift altgr
> +
> +## AltGr keycode 37 = +ssharp
> +ssharp 0x25 altgr
> +## Shift AltGr keycode 37 = U+1e9e
> +U1e9e 0x25 shift altgr
> +
> +## AltGr keycode 38 = registered
> +registered 0x26 altgr
> +## Shift AltGr keycode 38 = U+2122
> +U2122 0x26 shift altgr
> +
> +## AltGr keycode 39 = dead_tilde
> +dead_tilde 0x27 altgr
> +
> +## Shift AltGr keycode 40 = masculine
> +masculine 0x28 shift altgr
> +
> +## keycode 43 = +ccedilla +Ccedilla dead_cedilla
> +ccedilla 0x2b
> +Ccedilla 0x2b shift
> +dead_cedilla 0x2b altgr
> +
> +
> +# Fourth row
> +
> +# simplified letter definitions notation :
> +## keycode 45 = y
> +y 0x2d addupper
> +## keycode 46 = x
> +x 0x2e addupper
> +## keycode 48 = k
> +k 0x30 addupper
> +## keycode 50 = q
> +q 0x32 addupper
> +## keycode 51 = g
> +g 0x33 addupper
> +## keycode 52 = h
> +h 0x34 addupper
> +## keycode 53 = f
> +f 0x35 addupper
> +
> +# then, add specific definitions
> +## keycode 86 = +ecircumflex +Ecircumflex slash slash
> +ecircumflex 0x56
> +Ecircumflex 0x56 shift
> +
> +## keycode 44 = +agrave +Agrave backslash
> +agrave 0x2c
> +Agrave 0x2c shift
> +backslash 0x2c altgr
> +
> +## AltGr keycode 45 = braceleft
> +braceleft 0x2d altgr
> +## Shift AltGr keycode 45 = U+2018
> +U2018 0x2d shift altgr
> +
> +## AltGr keycode 46 = braceright
> +braceright 0x2e altgr
> +
> +## keycode 47 = period colon U+2026 periodcentered
> +period 0x2f
> +colon 0x2f shift
> +U2026 0x2f altgr
> +periodcentered 0x2f shift altgr
> +
> +## AltGr keycode 48 = asciitilde
> +asciitilde 0x30 altgr
> +## Shift AltGr keycode 48 = U+2328
> +U2328 0x30 shift altgr
> +
> +## keycode 49 = apostrophe question questiondown +U+0309
> +apostrophe 0x31
> +question 0x31 shift
> +questiondown 0x31 altgr
> +U+0309 0x31 shift altgr
> +
> +## AltGr keycode 51 = mu
> +mu 0x33 altgr
> +
> +## AltGr keycode 52 = U+2020
> +U2020 0x34 altgr
> +## Shift AltGr keycode 52 = U+2021
> +U2021 0x34 shift altgr
> +
> +## Shift AltGr keycode 53 = ordfeminine
> +ordfeminine 0x35 shift altgr
> +
> +
> +
> +## keycode 57 = space nobreakspace underscore U+202f
> +space 0x39
> +nobreakspace 0x39 shift
> +underscore 0x39 altgr
> +U202f 0x39 shift altgr
>
>
--
Aurelien Jarno GPG: 1024D/F1BCDB73
address@hidden http://www.aurel32.net