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 Ĳ │ Z Ə │ W   ┃Entrée ┃
# ┃Tab ↹  ┃ b | │ é ˊ │ p & │ o œ │ è ` │ ˆ ¡ │ v ˇ │ d ð │ l / │ j ĳ │ 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
