Last active
August 15, 2019 22:20
-
-
Save baptistemarchand/b20ac3a2a9ef89de36081929dc23d106 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?xml version="1.1" encoding="UTF-8"?> | |
<!DOCTYPE keyboard SYSTEM "file://localhost/System/Library/DTDs/KeyboardLayout.dtd"> | |
<!--Last edited by Ukelele version 3.3.0.249 on 2019-08-16 at 00:13 (CEST)--> | |
<keyboard group="126" id="-5352" name="Baptiste" maxout="1"> | |
<layouts> | |
<layout first="0" last="0" mapSet="ISO" modifiers="Modifiers"/> | |
</layouts> | |
<modifierMap id="Modifiers" defaultIndex="0"> | |
<keyMapSelect mapIndex="0"> | |
<modifier keys=""/> | |
</keyMapSelect> | |
<keyMapSelect mapIndex="1"> | |
<modifier keys="anyShift"/> | |
</keyMapSelect> | |
<keyMapSelect mapIndex="2"> | |
<modifier keys="anyOption"/> | |
</keyMapSelect> | |
</modifierMap> | |
<keyMapSet id="ISO"> | |
<keyMap index="0"> | |
<key code="0" output="a"/> | |
<key code="1" output="u"/> | |
<key code="2" output="i"/> | |
<key code="3" output="e"/> | |
<key code="4" output="c"/> | |
<key code="5" output=","/> | |
<key code="6" output="à"/> | |
<key code="7" output="y"/> | |
<key code="8" output="x"/> | |
<key code="9" output="."/> | |
<key code="10" output="$"/> | |
<key code="11" output="k"/> | |
<key code="12" output="b"/> | |
<key code="13" output="é"/> | |
<key code="14" output="p"/> | |
<key code="15" output="o"/> | |
<key code="16" output="!"/> | |
<key code="17" output="è"/> | |
<key code="18" output="""/> | |
<key code="19" output="<"/> | |
<key code="20" output=">"/> | |
<key code="21" output="("/> | |
<key code="22" output="@"/> | |
<key code="23" output=")"/> | |
<key code="24" output="%"/> | |
<key code="25" output="/"/> | |
<key code="26" output="+"/> | |
<key code="27" output="="/> | |
<key code="28" output="-"/> | |
<key code="29" output="*"/> | |
<key code="30" output="w"/> | |
<key code="31" output="l"/> | |
<key code="32" output="v"/> | |
<key code="33" output="z"/> | |
<key code="34" output="d"/> | |
<key code="35" output="j"/> | |
<key code="36" output="
"/> | |
<key code="37" output="r"/> | |
<key code="38" output="t"/> | |
<key code="39" output="m"/> | |
<key code="40" output="s"/> | |
<key code="41" output="n"/> | |
<key code="42" output="ç"/> | |
<key code="43" output="g"/> | |
<key code="44" output="f"/> | |
<key code="45" output="’"/> | |
<key code="46" output="q"/> | |
<key code="47" output="h"/> | |
<key code="48" output="	"/> | |
<key code="49" output=" "/> | |
<key code="50" output="ê"/> | |
<key code="51" output=""/> | |
<key code="53" output=""/> | |
<key code="64" output=""/> | |
<key code="65" output=""/> | |
<key code="66" output=""/> | |
<key code="67" output=""/> | |
<key code="69" output=""/> | |
<key code="70" output=""/> | |
<key code="71" output=""/> | |
<key code="72" output=""/> | |
<key code="75" output=""/> | |
<key code="76" output=""/> | |
<key code="77" output=""/> | |
<key code="78" output=""/> | |
<key code="79" output=""/> | |
<key code="80" output=""/> | |
<key code="81" output=""/> | |
<key code="82" output=""/> | |
<key code="83" output=""/> | |
<key code="84" output=""/> | |
<key code="85" output=""/> | |
<key code="86" output=""/> | |
<key code="87" output=""/> | |
<key code="88" output=""/> | |
<key code="89" output=""/> | |
<key code="91" output=""/> | |
<key code="92" output=""/> | |
<key code="96" output=""/> | |
<key code="97" output=""/> | |
<key code="98" output=""/> | |
<key code="99" output=""/> | |
<key code="100" output=""/> | |
<key code="101" output=""/> | |
<key code="103" output=""/> | |
<key code="105" output=""/> | |
<key code="106" output=""/> | |
<key code="107" output=""/> | |
<key code="109" output=""/> | |
<key code="111" output=""/> | |
<key code="113" output=""/> | |
<key code="114" output=""/> | |
<key code="115" output=""/> | |
<key code="116" output=""/> | |
<key code="117" output=""/> | |
<key code="118" output=""/> | |
<key code="119" output=""/> | |
<key code="120" output=""/> | |
<key code="121" output=""/> | |
<key code="122" output=""/> | |
<key code="123" output=""/> | |
<key code="124" output=""/> | |
<key code="125" output=""/> | |
<key code="126" output=""/> | |
</keyMap> | |
<keyMap index="1"> | |
<key code="0" output="A"/> | |
<key code="1" output="U"/> | |
<key code="2" output="I"/> | |
<key code="3" output="E"/> | |
<key code="4" output="C"/> | |
<key code="5" output=";"/> | |
<key code="6" output="À"/> | |
<key code="7" output="Y"/> | |
<key code="8" output="X"/> | |
<key code="9" output=":"/> | |
<key code="10" output="#"/> | |
<key code="11" output="K"/> | |
<key code="12" output="B"/> | |
<key code="13" output="É"/> | |
<key code="14" output="P"/> | |
<key code="15" output="O"/> | |
<key code="16" output="!"/> | |
<key code="17" output="È"/> | |
<key code="18" output="1"/> | |
<key code="19" output="2"/> | |
<key code="20" output="3"/> | |
<key code="21" output="4"/> | |
<key code="22" output="6"/> | |
<key code="23" output="5"/> | |
<key code="24" output="`"/> | |
<key code="25" output="9"/> | |
<key code="26" output="7"/> | |
<key code="27" output="°"/> | |
<key code="28" output="8"/> | |
<key code="29" output="0"/> | |
<key code="30" output="W"/> | |
<key code="31" output="L"/> | |
<key code="32" output="V"/> | |
<key code="33" output="Z"/> | |
<key code="34" output="D"/> | |
<key code="35" output="J"/> | |
<key code="36" output="
"/> | |
<key code="37" output="R"/> | |
<key code="38" output="T"/> | |
<key code="39" output="M"/> | |
<key code="40" output="S"/> | |
<key code="41" output="N"/> | |
<key code="42" output="Ç"/> | |
<key code="43" output="G"/> | |
<key code="44" output="F"/> | |
<key code="45" output="?"/> | |
<key code="46" output="Q"/> | |
<key code="47" output="H"/> | |
<key code="48" output="	"/> | |
<key code="49" output=" "/> | |
<key code="50" output="Ê"/> | |
<key code="51" output=""/> | |
<key code="53" output=""/> | |
<key code="64" output=""/> | |
<key code="65" output=""/> | |
<key code="66" output=""/> | |
<key code="67" output=""/> | |
<key code="69" output=""/> | |
<key code="70" output=""/> | |
<key code="71" output=""/> | |
<key code="72" output=""/> | |
<key code="75" output=""/> | |
<key code="76" output=""/> | |
<key code="77" output=""/> | |
<key code="78" output=""/> | |
<key code="79" output=""/> | |
<key code="80" output=""/> | |
<key code="81" output=""/> | |
<key code="82" output=""/> | |
<key code="83" output=""/> | |
<key code="84" output=""/> | |
<key code="85" output=""/> | |
<key code="86" output=""/> | |
<key code="87" output=""/> | |
<key code="88" output=""/> | |
<key code="89" output=""/> | |
<key code="91" output=""/> | |
<key code="92" output=""/> | |
<key code="96" output=""/> | |
<key code="97" output=""/> | |
<key code="98" output=""/> | |
<key code="99" output=""/> | |
<key code="100" output=""/> | |
<key code="101" output=""/> | |
<key code="103" output=""/> | |
<key code="105" output=""/> | |
<key code="106" output=""/> | |
<key code="107" output=""/> | |
<key code="109" output=""/> | |
<key code="111" output=""/> | |
<key code="113" output=""/> | |
<key code="114" output=""/> | |
<key code="115" output=""/> | |
<key code="116" output=""/> | |
<key code="117" output=""/> | |
<key code="118" output=""/> | |
<key code="119" output=""/> | |
<key code="120" output=""/> | |
<key code="121" output=""/> | |
<key code="122" output=""/> | |
<key code="123" output=""/> | |
<key code="124" output=""/> | |
<key code="125" output=""/> | |
<key code="126" output=""/> | |
</keyMap> | |
<keyMap index="2"> | |
<key code="0" output=""/> | |
<key code="1" output=""/> | |
<key code="2" output=""/> | |
<key code="3" output=""/> | |
<key code="4" output=""/> | |
<key code="5" output=""/> | |
<key code="6" output="\"/> | |
<key code="7" output="{"/> | |
<key code="8" output="}"/> | |
<key code="9" output=""/> | |
<key code="10" output=""/> | |
<key code="11" output="~"/> | |
<key code="12" output="|"/> | |
<key code="13" output=""/> | |
<key code="14" output="&"/> | |
<key code="15" output=""/> | |
<key code="16" output=""/> | |
<key code="17" output=""/> | |
<key code="18" output=""/> | |
<key code="19" output=""/> | |
<key code="20" output=""/> | |
<key code="21" output="["/> | |
<key code="22" output="^"/> | |
<key code="23" output="]"/> | |
<key code="24" output=""/> | |
<key code="25" output=""/> | |
<key code="26" output=""/> | |
<key code="27" output=""/> | |
<key code="28" output=""/> | |
<key code="29" output=""/> | |
<key code="30" output=""/> | |
<key code="31" output=""/> | |
<key code="32" output=""/> | |
<key code="33" output=""/> | |
<key code="34" output=""/> | |
<key code="35" output=""/> | |
<key code="36" output="
"/> | |
<key code="37" output=""/> | |
<key code="38" output=""/> | |
<key code="39" output=""/> | |
<key code="40" output=""/> | |
<key code="41" output=""/> | |
<key code="42" output=""/> | |
<key code="43" output=""/> | |
<key code="44" output=""/> | |
<key code="45" output=""/> | |
<key code="46" output=""/> | |
<key code="47" output=""/> | |
<key code="48" output="	"/> | |
<key code="49" output="_"/> | |
<key code="50" output=""/> | |
<key code="51" output=""/> | |
<key code="53" output=""/> | |
<key code="64" output=""/> | |
<key code="65" output=""/> | |
<key code="66" output=""/> | |
<key code="67" output=""/> | |
<key code="69" output=""/> | |
<key code="70" output=""/> | |
<key code="71" output=""/> | |
<key code="72" output=""/> | |
<key code="75" output=""/> | |
<key code="76" output=""/> | |
<key code="77" output=""/> | |
<key code="78" output=""/> | |
<key code="79" output=""/> | |
<key code="80" output=""/> | |
<key code="81" output=""/> | |
<key code="82" output=""/> | |
<key code="83" output=""/> | |
<key code="84" output=""/> | |
<key code="85" output=""/> | |
<key code="86" output=""/> | |
<key code="87" output=""/> | |
<key code="88" output=""/> | |
<key code="89" output=""/> | |
<key code="91" output=""/> | |
<key code="92" output=""/> | |
<key code="96" output=""/> | |
<key code="97" output=""/> | |
<key code="98" output=""/> | |
<key code="99" output=""/> | |
<key code="100" output=""/> | |
<key code="101" output=""/> | |
<key code="103" output=""/> | |
<key code="105" output=""/> | |
<key code="106" output=""/> | |
<key code="107" output=""/> | |
<key code="109" output=""/> | |
<key code="111" output=""/> | |
<key code="113" output=""/> | |
<key code="114" output=""/> | |
<key code="115" output=""/> | |
<key code="116" output=""/> | |
<key code="117" output=""/> | |
<key code="118" output=""/> | |
<key code="119" output=""/> | |
<key code="120" output=""/> | |
<key code="121" output=""/> | |
<key code="122" output=""/> | |
<key code="123" output=""/> | |
<key code="124" output=""/> | |
<key code="125" output=""/> | |
<key code="126" output=""/> | |
</keyMap> | |
</keyMapSet> | |
</keyboard> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include QMK_KEYBOARD_H | |
#include "keymap_bepo.h" | |
#include "keymap_french.h" | |
// keymaps | |
#define BEPO 0 // default layer, for bepo compatible systems | |
#define FNAV 7 // function / navigation / mouse layer | |
#define NUMK 8 // numeric keypad layer | |
// macros | |
#define KP_00 0 // keypad "double 0" | |
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |
/* Keymap 0: default layer | |
* | |
* ,--------------------------------------------------. ,--------------------------------------------------. | |
* | $ | " | < | > | ( | ) | @ | | ^ | % | + | - | / | * |Backsp | | |
* |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| | |
* | Tab | B |E_ACUT| P | O |E_GRAV|Backsp| |xxxxx | ! | V | D | L | J | Z | | |
* |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| | |
* | LCtrl | A | U | I | E | , |------| |------| C | T | S | R | N | M | | |
* |--------+------+------+------+------+------| xxx | | = |------+------+------+------+------+--------| | |
* | LShift |A_GRAV| Y | X | . | K | | | | ' | Q | G | H | F | ç | | |
* `--------+------+------+------+------+-------------,-------------. ,-------------`-------------+------+------+------+------+--------' | |
* |Escape|xxxxxx|xxxxxx| ALT | CMD | | copy | cut | |xxxxxx| xxxx | | AltGr| CMD |xxxxxx| W | esc | | |
* `----------------------------------' ,------|------|------| |------+------+------. `----------------------------------' | |
* | | | undo | |xxxxxx| | | | |
* | Space|shift |------| |------| shift|Enter | | |
* | | |paste | |xxxxxx| | | | |
* `--------------------' `--------------------' | |
*/ | |
[BEPO] = LAYOUT_ergodox( | |
// Left hand | |
BP_DOLLAR, BP_DQOT, BP_LGIL, BP_RGIL, BP_LPRN, BP_RPRN, BP_AT, | |
KC_TAB, BP_B, BP_E_ACUTE, BP_P, BP_O, BP_E_GRAVE, KC_BSPC, | |
KC_LCTL, BP_A, BP_U, BP_I, BP_E, BP_COMMA, | |
KC_LSHIFT, BP_A_GRAVE, BP_Y, BP_X, BP_DOT, BP_K, XXXXXXX, | |
KC_ESC, XXXXXXX, XXXXXXX, KC_LALT, KC_LGUI, | |
LGUI(BP_C), LGUI(BP_X), | |
LGUI(BP_Z), | |
KC_SPC, KC_LSHIFT, LGUI(BP_V), | |
// Right hand | |
RALT(BP_AT), BP_PERC, BP_PLUS, BP_MINS, BP_SLASH, BP_ASTR, KC_BSPC, | |
XXXXXXX, BP_DCRC, BP_V, BP_D, BP_L, BP_J, BP_Z, | |
BP_C, BP_T, BP_S, BP_R, BP_N, BP_M, | |
BP_EQL, BP_APOS, BP_Q, BP_G, BP_H, BP_F, BP_CCED, | |
MO(FNAV), KC_RGUI, XXXXXXX, BP_W, KC_BSPC, | |
XXXXXXX, XXXXXXX, | |
XXXXXXX, | |
XXXXXXX, KC_RSHIFT, KC_ENTER), | |
/* Keymap 7: function / navigation / mouse layer | |
* | |
* ,--------------------------------------------------. ,--------------------------------------------------. | |
* | | | | | | |VolMut| | | | | | | | | | |
* |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| | |
* | | pipe | | amp | | |VolUp | | | | | Up | | | | | |
* |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| | |
* | | | | | | |------| |------| | Left | Down | Right| | | | |
* |--------+------+------+------+------+------|VolDwn| | |------+------+------+------+------+--------| | |
* | | | | | | | | | | | | | | | | | |
* `--------+------+------+------+------+-------------,-------------. ,-------------`-------------+------+------+------+------+--------' | |
* | | | | | | | | | | | | | | | | | | | |
* `----------------------------------' ,------|------|------| |------+------+------. `----------------------------------' | |
* | | | | | | | | | |
* | | |------| |------| | | | |
* | | | | | | | | | |
* `--------------------' `--------------------' | |
*/ | |
[FNAV] = LAYOUT_ergodox( | |
// Left hand | |
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RALT(BP_LEFT_PAREN), RALT(BP_RIGHT_PAREN), KC_MUTE, | |
XXXXXXX, BP_PIPE, XXXXXXX, RALT(BP_P), XXXXXXX, XXXXXXX, KC_VOLU, | |
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, | |
KC_TRNS, RALT(BP_A_GRAVE), RALT(BP_Y), RALT(BP_X), XXXXXXX, RALT(BP_K), KC_VOLD, | |
XXXXXXX, XXXXXXX, KC_TRNS, KC_TRNS, KC_TRNS, | |
KC_TRNS, KC_TRNS, | |
KC_TRNS, | |
XXXXXXX, KC_TRNS, KC_TRNS, | |
// Right hand | |
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, | |
XXXXXXX, XXXXXXX, KC_BSPC, KC_UP, KC_DEL, XXXXXXX, XXXXXXX, | |
KC_PGDOWN, KC_LEFT, KC_DOWN, KC_RIGHT, XXXXXXX, XXXXXXX, | |
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, | |
KC_TRNS, KC_TRNS, KC_TRNS, XXXXXXX, XXXXXXX, | |
KC_TRNS, KC_TRNS, | |
KC_TRNS, | |
KC_TRNS, KC_TRNS, XXXXXXX), | |
/* Keymap 8: numeric keypad layer, sends keypad codes | |
* | |
* ,--------------------------------------------------. ,--------------------------------------------------. | |
* | | | | | | | | | | | NumLo| / | * | - | | | |
* |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| | |
* | | | | | | | | | | | 7 | 8 | 9 | + | | | |
* |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| | |
* | | | | | | |------| |------| | 4 | 5 | 6 | + | | | |
* |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| | |
* | | | | | | | | | | | 1 | 2 | 3 | Enter| | | |
* `--------+------+------+------+------+-------------,-------------. ,-------------`-------------+------+------+------+------+--------' | |
* | | | | | | | | | | | | | 0 | 00 | . | Enter| | | |
* `----------------------------------' ,------|------|------| |------+------+------. `----------------------------------' | |
* | | | | | | | | | |
* | | |------| |------| | | | |
* | | | | | | | | | |
* `--------------------' `--------------------' | |
*/ | |
[NUMK] = LAYOUT_ergodox( | |
// Left hand | |
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, | |
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, | |
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, | |
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, | |
XXXXXXX, XXXXXXX, KC_TRNS, KC_TRNS, KC_TRNS, | |
KC_TRNS, KC_TRNS, | |
KC_TRNS, | |
XXXXXXX, KC_TRNS, KC_TRNS, | |
// Right hand | |
XXXXXXX, XXXXXXX, KC_NUMLOCK, KC_KP_SLASH, KC_KP_ASTERISK, KC_KP_MINUS, XXXXXXX, | |
XXXXXXX, XXXXXXX, KC_KP_7, KC_KP_8, KC_KP_9, KC_KP_PLUS, XXXXXXX, | |
XXXXXXX, KC_KP_4, KC_KP_5, KC_KP_6, KC_KP_PLUS, XXXXXXX, | |
XXXXXXX, XXXXXXX, KC_KP_1, KC_KP_2, KC_KP_3, KC_KP_ENTER, XXXXXXX, | |
KC_KP_0, M(KP_00), KC_KP_COMMA, KC_KP_ENTER, XXXXXXX, | |
KC_TRNS, KC_TRNS, | |
KC_TRNS, | |
KC_TRNS, KC_TRNS, XXXXXXX) | |
}; | |
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) | |
{ | |
switch(id) { | |
// keypad "double 0" | |
case KP_00: | |
if (record->event.pressed) { | |
return MACRO( T(KP_0), D(KP_0), END ); | |
} else { | |
return MACRO( U(KP_0), END ); | |
} | |
break; | |
} | |
return MACRO_NONE; | |
}; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment