Add French Layout for XD75 (#2681)

This commit is contained in:
youdroid 2018-04-15 18:50:46 +02:00 committed by Drashna Jaelre
parent b7d095fdc3
commit 5d36118eaa
5 changed files with 281 additions and 0 deletions

View File

@ -0,0 +1,20 @@
# Clavier AZERTY français
![Disposition Clavier](https://i.imgur.com/tH9TVBc.png)
# Configuration du clavier
Ce clavier AZERTY est basé sur le fichier keymap_french.c de correspondance QWERTY - AZERTY.
Ce fichier est composé de trois énumérations (layout français, touches de contrôle, touches multimédias) correspondant aux keycodes sous la forme d'hexa.
Il peut être utilisé pour toute autre configuration de clavier juste en incluant ce fichier dans son propre keymap.c.
La touche de fonction permet elle d'avoir accès aux différentes touches multimédias ainsi qu'au pavé numérique. Mais aussi si le clavier est équipé de led, à différents modes d'éclairage.
# Compilation
```
make xd75:french:dfu
```

View File

@ -0,0 +1,24 @@
/* Copyright 2017 Benjamin Kesselring
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef CONFIG_USER_H
#define CONFIG_USER_H
#include "../../config.h"
// place overrides here
#endif

View File

@ -0,0 +1,60 @@
#include "keymap_french.c"
#include "xd75.h"
// Layer shorthand
#define _AZ 0
#define _FN 1
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* AZERTY
* .--------------------------------------------------------------------------------------------------------------------------------------.
* | ESC | & | é | " | ' | ( | - | è | _ | ç | à | ) | = | INSERT | BACKSP |
* |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------|
* | TAB | a | z | e | r | t | y | u | i | o | p | ^ | $ | ENTER | PG UP |
* |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------+--------|
* | CAP LK | q | s | d | f | g | h | j | k | l | m | ù | * | ENTER | PG DN |
* |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------------------------+--------|
* | LSHIFT | w | x | c | v | b | n | , | ; | : | ! | < | LSHIFT | UP | DEL |
* |--------+--------+--------+--------+--------+-----------------+--------+--------+--------+--------+-----------------+--------+--------|
* | LCTRL | CMD | ALT | FN | SPACE | SPACE | SPACE | SPACE | ALGR | MENU | HOME | END | LEFT | DOWN | RIGHT |
* '--------------------------------------------------------------------------------------------------------------------------------------'
*/
[_AZ] = { /* AZERTY */
{ FR_ESC, FR_AMP, FR_EACU, FR_QUOT, FR_APOS, FR_LPAR, FR_MINS, FR_EGRV, FR_UNDS, FR_CCED, FR_AGRV, FR_RPAR, FR_EQUA, FR_INST, FR_BSPC },
{ FR_TAB, FR_A, FR_Z, FR_E, FR_R, FR_T, FR_Y, FR_U, FR_I, FR_O, FR_P, FR_HAT, FR_DLR, FR_ENTR, FR_PGUP },
{ FR_CAPL, FR_Q, FR_S, FR_D, FR_F, FR_G, FR_H, FR_J, FR_K, FR_L, FR_M, FR_UGRV, FR_AST, FR_ENTR, FR_PGDN },
{ FR_LSFT, FR_W, FR_X, FR_C, FR_V, FR_B, FR_N, FR_COMM, FR_SCLN, FR_COLN, FR_EXCL, FR_LESS, FR_RSFT, FR_UP, FR_DEL },
{ FR_LCTR, FR_LCMD, FR_LALT, MO(_FN), FR_SPAC, FR_SPAC, FR_SPAC, FR_SPAC, FR_ALGR, FR_MENU, FR_HOME, FR_END, FR_LEFT, FR_DOWN, FR_RIGT },
},
/* FUNCTION
* .--------------------------------------------------------------------------------------------------------------------------------------.
* | | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | PRINT | LED |
* |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
* | | PREV | PLAY | NEXT | | | | | NUM LCK| 7 | 8 | 9 | * | | LED+ |
* |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
* | | VOL- | MUTE | VOL+ | | | | | | 4 | 5 | 6 | - | | LED- |
* |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
* | | | | | | | | | | 1 | 2 | 3 | + | | LEDMAX |
* |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
* | RESET | | | FN | | | | | | | 0 | . | PENT | | LEDLVL |
* '--------------------------------------------------------------------------------------------------------------------------------------'
*/
[_FN] = { /* FUNCTION */
{ FR_EMPT, FR_F1, FR_F2, FR_F3, FR_F4, FR_F5, FR_F6, FR_F7, FR_F8, FR_F9, FR_F10, FR_F11, FR_F12, FR_PSCR, BL_TOGG },
{ FR_EMPT, FR_MPRV, FR_MPLY, FR_MNXT, FR_EMPT, FR_EMPT, FR_EMPT, FR_EMPT, FR_NUML, FR_7, FR_8, FR_9, FR_MULT, FR_EMPT, BL_INC },
{ FR_EMPT, FR_MVDN, FR_MUTE, FR_MVUP, FR_EMPT, FR_EMPT, FR_EMPT, FR_EMPT, FR_EMPT, FR_4, FR_5, FR_6, FR_MOIN, FR_EMPT, BL_DEC },
{ FR_EMPT, FR_EMPT, FR_EMPT, FR_EMPT, FR_EMPT, FR_EMPT, FR_EMPT, FR_EMPT, FR_EMPT, FR_1, FR_2, FR_3, FR_PLUS, FR_EMPT, BL_ON },
{ RESET, FR_EMPT, FR_EMPT, FR_TRANS, FR_EMPT, FR_EMPT, FR_EMPT, FR_EMPT, FR_EMPT, FR_EMPT, FR_0, FR_DOT, FR_ENTK, FR_EMPT, BL_STEP },
},
};
const uint16_t PROGMEM fn_actions[] = {
};

View File

@ -0,0 +1,157 @@
enum french_key {
FR_EMPT = 0x00,
FR_TRANS,
FR_Q = 0x04,
FR_B,
FR_C,
FR_D,
FR_E,
FR_F,
FR_G,
FR_H,
FR_I,
FR_J,
FR_K,
FR_L,
FR_COMM, /* 0x10 */
FR_N,
FR_O,
FR_P,
FR_A,
FR_R,
FR_S,
FR_T,
FR_U,
FR_V,
FR_Z,
FR_X,
FR_Y,
FR_W,
FR_AMP,
FR_EACU,
FR_QUOT, /* 0x20 */
FR_APOS,
FR_LPAR,
FR_MINS,
FR_EGRV,
FR_UNDS,
FR_CCED,
FR_AGRV,
FR_ENTR,
FR_ESC,
FR_BSPC,
FR_TAB,
FR_SPAC,
FR_RPAR,
FR_EQUA,
FR_HAT,
FR_DLR, /* 0x30 */
FR_AST =0x32,
FR_M,
FR_UGRV,
FR_SCLN =0x36,
FR_COLN,
FR_EXCL,
FR_CAPL,
FR_F1,
FR_F2,
FR_F3,
FR_F4,
FR_F5,
FR_F6,
FR_F7, /* 0x40 */
FR_F8,
FR_F9,
FR_F10,
FR_F11,
FR_F12,
FR_PSCR,
FR_INST =0x49,
FR_HOME,
FR_PGUP,
FR_DEL,
FR_END,
FR_PGDN,
FR_RIGT,
FR_LEFT, /* 0x50 */
FR_DOWN,
FR_UP,
FR_NUML,
FR_SLSH, /* KEYPAD */
FR_MULT,
FR_MOIN,
FR_PLUS,
FR_ENTK,
FR_1,
FR_2,
FR_3,
FR_4,
FR_5,
FR_6,
FR_7,
FR_8, /* 0x60 */
FR_9,
FR_0,
FR_DOT,
FR_LESS,
FR_EQ =0x67 /* END KEYPAD */,
FR_F13,
FR_F14,
FR_F15,
FR_F16,
FR_F17,
FR_F18,
FR_F19,
FR_F20,
FR_F21, /* 0x70 */
FR_F22,
FR_F23,
FR_F24,
FR_MENU =0x76
};
enum french_control_touch{
/* Modifiers */
FR_LCTR = 0xE0,
FR_LSFT,
FR_LALT,
FR_LCMD,
FR_RCTR,
FR_RSFT,
FR_ALGR,
FR_RCMD
};
enum french_media_key{
/* System Control */
FR_SYSTEM_POWER = 0xA5,
FR_SYSTEM_SLEEP,
FR_SYSTEM_WAKE,
/* Media Control */
FR_MUTE,
FR_MVUP,
FR_MVDN,
FR_MNXT,
FR_MPRV,
FR_MSTP,
FR_MPLY,
FR_MEDIA_SELECT,
FR_MEDIA_EJECT,
FR_MAIL,
FR_CALCULATOR,
FR_MY_COMPUTER,
FR_WWW_SEARCH,
FR_WWW_HOME,
FR_WWW_BACK,
FR_WWW_FORWARD,
FR_WWW_STOP,
FR_WWW_REFRESH,
FR_WWW_FAVORITES,
FR_MEDIA_FAST_FORWARD,
FR_MEDIA_REWIND /* 0xBC */
};

View File

@ -0,0 +1,20 @@
# Copyright 2013 Jun Wako <wakojun@gmail.com>
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
RGBLIGHT_ENABLE = no
ifndef QUANTUM_DIR
include ../../../../Makefile
endif