keycodes_french_afnor_0.0.1.hjson (19935B)
- {
- "aliases": {
- /* French AZERTY - AFNOR NF Z71-300
- *
- * A standard for the French keyboard
- *
- * The project was launched at the end of 2015 on the proposal of the General
- * Delegation for the French language and the languages of France (Ministry
- * of Culture), starting from the observation that the current "azerty"
- * keyboards constrain the writing of French, languages regional and European
- * languages with Latin alphabet.
- *
- * For the first time, a standard (NF Z71-300) defines the placement of
- * characters on the French keyboard. It offers two layouts, one of which
- * closely follows the QWERTY keyboard used by most people who write in French.
- *
- * However, it is in many ways superior to the old keyboard:
- *
- * - it contains all the characters required to enter text in French (for example É, œ and ")
- * - it is designed to be more ergonomic and allow faster typing
- * - it includes almost 60 additional characters for entering foreign languages, technical content, etc
- * - however, the characters remain easy to locate thanks to intuitive groupings
- *
- * Source: https://norme-azerty.fr
- */
- /*
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐
- * │ @ │ à │ é │ è │ ê │ ( │ ) │ ‘ │ ’ │ « │ » │ ' │ ^ │ │
- * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤
- * │ │ A │ Z │ E │ R │ T │ Y │ U │ I │ O │ P │ - │ + │ │
- * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐ │
- * │ │ Q │ S │ D │ F │ G │ H │ J │ K │ L │ M │ / │ * │ │
- * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴────┤
- * │ │ < │ W │ X │ C │ V │ B │ N │ . │ , │ : │ ; │ │
- * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤
- * │ │ │ │ │ │ │ │ │
- * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘
- */
- "KC_GRV": {
- "key": "FR_AT",
- "label": "@",
- }
- "KC_1": {
- "key": "FR_AGRV",
- "label": "à",
- }
- "KC_2": {
- "key": "FR_EACU",
- "label": "é",
- }
- "KC_3": {
- "key": "FR_EGRV",
- "label": "è",
- }
- "KC_4": {
- "key": "FR_ECIR",
- "label": "ê",
- }
- "KC_5": {
- "key": "FR_LPRN",
- "label": "(",
- }
- "KC_6": {
- "key": "FR_RPRN",
- "label": ")",
- }
- "KC_7": {
- "key": "FR_LSQU",
- "label": "‘",
- }
- "KC_8": {
- "key": "FR_RSQU",
- "label": "’",
- }
- "KC_9": {
- "key": "FR_LDAQ",
- "label": "«",
- }
- "KC_0": {
- "key": "FR_RDAQ",
- "label": "»",
- }
- "KC_MINS": {
- "key": "FR_QUOT",
- "label": "'",
- }
- "KC_EQL": {
- "key": "FR_DCIR",
- "label": "^ (dead)",
- }
- "KC_Q": {
- "key": "FR_A",
- "label": "A",
- }
- "KC_W": {
- "key": "FR_Z",
- "label": "Z",
- }
- "KC_E": {
- "key": "FR_E",
- "label": "E",
- }
- "KC_R": {
- "key": "FR_R",
- "label": "R",
- }
- "KC_T": {
- "key": "FR_T",
- "label": "T",
- }
- "KC_Y": {
- "key": "FR_Y",
- "label": "Y",
- }
- "KC_U": {
- "key": "FR_U",
- "label": "U",
- }
- "KC_I": {
- "key": "FR_I",
- "label": "I",
- }
- "KC_O": {
- "key": "FR_O",
- "label": "O",
- }
- "KC_P": {
- "key": "FR_P",
- "label": "P",
- }
- "KC_LBRC": {
- "key": "FR_MINS",
- "label": "-",
- }
- "KC_RBRC": {
- "key": "FR_PLUS",
- "label": "+",
- }
- "KC_A": {
- "key": "FR_Q",
- "label": "Q",
- }
- "KC_S": {
- "key": "FR_S",
- "label": "S",
- }
- "KC_D": {
- "key": "FR_D",
- "label": "D",
- }
- "KC_F": {
- "key": "FR_F",
- "label": "F",
- }
- "KC_G": {
- "key": "FR_G",
- "label": "G",
- }
- "KC_H": {
- "key": "FR_H",
- "label": "H",
- }
- "KC_J": {
- "key": "FR_J",
- "label": "J",
- }
- "KC_K": {
- "key": "FR_K",
- "label": "K",
- }
- "KC_L": {
- "key": "FR_L",
- "label": "L",
- }
- "KC_SCLN": {
- "key": "FR_M",
- "label": "M",
- }
- "KC_QUOT": {
- "key": "FR_SLSH",
- "label": "/",
- }
- "KC_NUHS": {
- "key": "FR_ASTR",
- "label": "*",
- }
- "KC_NUBS": {
- "key": "FR_LABK",
- "label": "<",
- }
- "KC_Z": {
- "key": "FR_W",
- "label": "W",
- }
- "KC_X": {
- "key": "FR_X",
- "label": "X",
- }
- "KC_C": {
- "key": "FR_C",
- "label": "C",
- }
- "KC_V": {
- "key": "FR_V",
- "label": "V",
- }
- "KC_B": {
- "key": "FR_B",
- "label": "B",
- }
- "KC_N": {
- "key": "FR_N",
- "label": "N",
- }
- "KC_M": {
- "key": "FR_DOT",
- "label": ".",
- }
- "KC_COMM": {
- "key": "FR_COMM",
- "label": ",",
- }
- "KC_DOT": {
- "key": "FR_COLN",
- "label": ":",
- }
- "KC_SLSH": {
- "key": "FR_SCLN",
- "label": ";",
- }
- /* Shifted symbols
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐
- * │ # │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ " │ ¨ │ │
- * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤
- * │ │ │ │ │ │ │ │ │ │ │ │ – │ ± │ │
- * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐ │
- * │ │ │ │ │ │ │ │ │ │ │ │ \ │ ½ │ │
- * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴────┤
- * │ │ > │ │ │ │ │ │ │ ? │ ! │ … │ = │ │
- * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤
- * │ │ │ │ │ │ │ │ │
- * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘
- */
- "S(FR_AT)": {
- "key": "FR_HASH",
- "label": "#",
- }
- "S(FR_AGRV)": {
- "key": "FR_1",
- "label": "1",
- }
- "S(FR_EACU)": {
- "key": "FR_2",
- "label": "2",
- }
- "S(FR_EGRV)": {
- "key": "FR_3",
- "label": "3",
- }
- "S(FR_ECIR)": {
- "key": "FR_4",
- "label": "4",
- }
- "S(FR_LPRN)": {
- "key": "FR_5",
- "label": "5",
- }
- "S(FR_RPRN)": {
- "key": "FR_6",
- "label": "6",
- }
- "S(FR_LSQU)": {
- "key": "FR_7",
- "label": "7",
- }
- "S(FR_RSQU)": {
- "key": "FR_8",
- "label": "8",
- }
- "S(FR_LDAQ)": {
- "key": "FR_9",
- "label": "9",
- }
- "S(FR_RDAQ)": {
- "key": "FR_0",
- "label": "0",
- }
- "S(FR_QUOT)": {
- "key": "FR_DQUO",
- "label": "\"",
- }
- "S(FR_DCIR)": {
- "key": "FR_DIAE",
- "label": "¨ (dead)",
- }
- "S(FR_MINS)": {
- "key": "FR_NDSH",
- "label": "–",
- }
- "S(FR_PLUS)": {
- "key": "FR_PLMN",
- "label": "±",
- }
- "S(FR_SLSH)": {
- "key": "FR_BSLS",
- "label": "\\",
- }
- "S(FR_ASTR)": {
- "key": "FR_HALF",
- "label": "½",
- }
- "S(FR_LABK)": {
- "key": "FR_RABK",
- "label": ">",
- }
- "S(FR_DOT)": {
- "key": "FR_QUES",
- "label": "?",
- }
- "S(FR_COMM)": {
- "key": "FR_EXLM",
- "label": "!",
- }
- "S(FR_COLN)": {
- "key": "FR_ELLP",
- "label": "…",
- }
- "S(FR_SCLN)": {
- "key": "FR_EQL",
- "label": "=",
- }
- /* AltGr symbols
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐
- * │ ˘ │ § │ ´ │ ` │ & │ [ │ ] │ ¯ │ _ │ “ │ ” │ ° │ ˇ │ │
- * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤
- * │ │ æ │ £ │ € │ ® │ { │ } │ ù │ ˙ │ œ │ % │ − │ † │ │
- * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐ │
- * │ │ θ │ ß │ $ │ ¤ │ µ │ Eu│ │ ∕ │ | │ ∞ │ ÷ │ × │ │
- * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴────┤
- * │ │ ≤ │ ʒ │ © │ ç │ ¸ │ − │ ~ │ ¿ │ ¡ │ · │ ≃ │ │
- * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤
- * │ │ │ │ │ │ │ │ │
- * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘
- */
- "ALGR(FR_AT)": {
- "key": "FR_BREV",
- "label": "˘ (dead)",
- }
- "ALGR(FR_AGRV)": {
- "key": "FR_SECT",
- "label": "§",
- }
- "ALGR(FR_EACU)": {
- "key": "FR_ACUT",
- "label": "´ (dead)",
- }
- "ALGR(FR_EGRV)": {
- "key": "FR_GRV",
- "label": "` (dead)",
- }
- "ALGR(FR_ECIR)": {
- "key": "FR_AMPR",
- "label": "&",
- }
- "ALGR(FR_LPRN)": {
- "key": "FR_LBRC",
- "label": "[",
- }
- "ALGR(FR_RPRN)": {
- "key": "FR_RBRC",
- "label": "]",
- }
- "ALGR(FR_LSQU)": {
- "key": "FR_MACR",
- "label": "¯ (dead)",
- }
- "ALGR(FR_RSQU)": {
- "key": "FR_UNDS",
- "label": "_",
- }
- "ALGR(FR_LDAQ)": {
- "key": "FR_LDQU",
- "label": "“",
- }
- "ALGR(FR_RDAQ)": {
- "key": "FR_RDQU",
- "label": "”",
- }
- "ALGR(FR_QUOT)": {
- "key": "FR_DEG",
- "label": "°",
- }
- "ALGR(FR_DCIR)": {
- "key": "FR_CARN",
- "label": "ˇ (dead)",
- }
- "ALGR(FR_A)": {
- "key": "FR_AE",
- "label": "æ",
- }
- "ALGR(FR_Z)": {
- "key": "FR_PND",
- "label": "£",
- }
- "ALGR(FR_E)": {
- "key": "FR_EURO",
- "label": "€",
- }
- "ALGR(FR_R)": {
- "key": "FR_REGD",
- "label": "®",
- }
- "ALGR(FR_T)": {
- "key": "FR_LCBR",
- "label": "{",
- }
- "ALGR(FR_Y)": {
- "key": "FR_RCBR",
- "label": "}",
- }
- "ALGR(FR_U)": {
- "key": "FR_UGRV",
- "label": "ù",
- }
- "ALGR(FR_I)": {
- "key": "FR_DOTA",
- "label": "˙ (dead)",
- }
- "ALGR(FR_O)": {
- "key": "FR_OE",
- "label": "œ",
- }
- "ALGR(FR_P)": {
- "key": "FR_PERC",
- "label": "%",
- }
- "ALGR(FR_MINS)": {
- "key": "FR_MMNS",
- "label": "−",
- }
- "ALGR(FR_PLUS)": {
- "key": "FR_DAGG",
- "label": "†",
- }
- "ALGR(FR_Q)": {
- "key": "FR_THET",
- "label": "θ",
- }
- "ALGR(FR_S)": {
- "key": "FR_SS",
- "label": "ß",
- }
- "ALGR(FR_D)": {
- "key": "FR_DLR",
- "label": "$",
- }
- "ALGR(FR_F)": {
- "key": "FR_CURR",
- "label": "¤ (dead monetary key)",
- }
- "ALGR(FR_G)": {
- "key": "FR_DGRK",
- "label": "µ (dead Greek key)",
- }
- "ALGR(FR_H)": {
- "key": "FR_EU",
- "label": "Eu (dead European symbol key)",
- }
- "ALGR(FR_K)": {
- "key": "FR_DSLS",
- "label": "∕ (dead)",
- }
- "ALGR(FR_L)": {
- "key": "FR_PIPE",
- "label": "|",
- }
- "ALGR(FR_M)": {
- "key": "FR_INFN",
- "label": "∞",
- }
- "ALGR(FR_SLSH)": {
- "key": "FR_DIV",
- "label": "÷",
- }
- "ALGR(FR_ASTR)": {
- "key": "FR_MUL",
- "label": "×",
- }
- "ALGR(FR_LABK)": {
- "key": "FR_LEQL",
- "label": "≤",
- }
- "ALGR(FR_W)": {
- "key": "FR_EZH",
- "label": "ʒ",
- }
- "ALGR(FR_X)": {
- "key": "FR_COPY",
- "label": "©",
- }
- "ALGR(FR_C)": {
- "key": "FR_CCED",
- "label": "ç",
- }
- "ALGR(FR_V)": {
- "key": "FR_CEDL",
- "label": "¸ (dead)",
- }
- "ALGR(FR_B)": {
- "key": "FR_DMNS",
- "label": "− (dead)",
- }
- "ALGR(FR_N)": {
- "key": "FR_DTIL",
- "label": "~ (dead)",
- }
- "ALGR(FR_DOT)": {
- "key": "FR_IQUE",
- "label": "¿",
- }
- "ALGR(FR_COMM)": {
- "key": "FR_IEXL",
- "label": "¡",
- }
- "ALGR(FR_COLN)": {
- "key": "FR_MDDT",
- "label": "·",
- }
- "ALGR(FR_SCLN)": {
- "key": "FR_AEQL",
- "label": "≃",
- }
- /* Shift+AltGr symbols
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐
- * │ ̑ │ │ │ │ │ ˝ │ ̏ │ │ — │ ‹ │ › │ ˚ │ │ │
- * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤
- * │ │ │ │ │ │ ™ │ │ │ ̣ │ │ ‰ │ ‑ │ ‡ │ │
- * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐ │
- * │ │ │ │ │ │ │ ˍ │ │ │ │ │ √ │ ¼ │ │
- * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴────┤
- * │ │ ≥ │ │ │ │ ˛ │ │ │ │ ̦ │ │ ≠ │ │
- * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤
- * │ │ │ │ │ │ │ │ │
- * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘
- */
- "S(ALGR(FR_AT))": {
- "key": "FR_IBRV",
- "label": "̑ (dead)",
- }
- "S(ALGR(FR_LPRN))": {
- "key": "FR_DACU",
- "label": "˝ (dead)",
- }
- "S(ALGR(FR_RPRN))": {
- "key": "FR_DGRV",
- "label": "̏ (dead)",
- }
- "S(ALGR(FR_RSQU))": {
- "key": "FR_MDSH",
- "label": "—",
- }
- "S(ALGR(FR_LDAQ))": {
- "key": "FR_LSAQ",
- "label": "‹",
- }
- "S(ALGR(FR_RDAQ))": {
- "key": "FR_RSAQ",
- "label": "›",
- }
- "S(ALGR(FR_QUOT))": {
- "key": "FR_RNGA",
- "label": "˚ (dead)",
- }
- "S(ALGR(FR_T))": {
- "key": "FR_TM",
- "label": "™",
- }
- "S(ALGR(FR_I))": {
- "key": "FR_DOTB",
- "label": "̣ (dead)",
- }
- "S(ALGR(FR_P))": {
- "key": "FR_PERM",
- "label": "‰",
- }
- "S(ALGR(FR_MINS))": {
- "key": "FR_NBHY",
- "label": "‑ (non-breaking hyphen)",
- }
- "S(ALGR(FR_PLUS))": {
- "key": "FR_DDAG",
- "label": "‡",
- }
- "S(ALGR(FR_H))": {
- "key": "FR_MACB",
- "label": "ˍ (dead)",
- }
- "S(ALGR(FR_SLSH))": {
- "key": "FR_SQRT",
- "label": "√",
- }
- "S(ALGR(FR_ASTR))": {
- "key": "FR_QRTR",
- "label": "¼",
- }
- "S(ALGR(FR_LABK))": {
- "key": "FR_GEQL",
- "label": "≥",
- }
- "S(ALGR(FR_V))": {
- "key": "FR_OGON",
- "label": "˛ (dead)",
- }
- "S(ALGR(FR_COMM))": {
- "key": "FR_DCMM",
- "label": "̦ (dead)",
- }
- "S(ALGR(FR_SCLN))": {
- "key": "FR_NEQL",
- "label": "≠",
- }
- }
- }