qmk-keychron-q3-colemak-dh/users/toinux/keymap_qwerty_fr.h
2023-04-02 05:31:22 +01:00

154 lines
7.6 KiB
C
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/* Copyright 2022
*
* 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/>.
*/
#pragma once
#include "keycodes.h"
// clang-format off
// keymap adapted for https://qwerty-fr.org/
/* AltGr symbols (* symbol = dead key)
* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐
* │* `│ ¹ │ ² │ ê │ € │* ¯│* ^│ û │ î │ ô │ ø │ │ ≠ │ │
* ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤
* │ │ â │ é │ è │ ® │ þ │* ̑ │ ù │ î │ ò │ œ │ « │ » │ │
* ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐ │
* │ │ à │ æ │ ë │ │* Ω│ ÿ │ ü │ ï │ ö │ ´ │ ̀ │ │ │
* ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴────┤
* │ │ ≤ │ ä │ × │ ç │ │ ß │ ñ │* ∫│* ¸│ · │ │ │
* ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤
* │ │ │ │ non-breaking space │ │ │ │ │
* └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘
*/
// Row 1
#define QF_DGRV RALT(KC_GRV) // ` (dead)
#define QF_SUP1 RALT(KC_1) // ¹
#define QF_SUP2 RALT(KC_2) // ²
#define QF_ECIR RALT(KC_3) // ê
#define QF_EURO RALT(KC_4) // €
#define QF_MACR RALT(KC_5) // ¯ (dead)
#define QF_DCIR RALT(KC_6) // ^ (dead)
#define QF_UCIR RALT(KC_7) // û
#define QF_ICIR RALT(KC_8) // î
#define QF_OCIR RALT(KC_9) // ô
#define QF_OSTR RALT(KC_0) // ø
#define QF_DASH RALT(KC_MINUS) //
#define QF_NEQL RALT(KC_EQUAL) // ≠
// Row 2
#define QF_ACIR RALT(KC_Q) // â
#define QF_EACU RALT(KC_W) // é
#define QF_EGRV RALT(KC_E) // è
#define QF_REGD RALT(KC_R) // ®
#define QF_THRN RALT(KC_T) // þ
#define QF_RBRV RALT(KC_Y) // ̑ (dead)
#define QF_UGRV RALT(KC_U) // ù
#define QF_IGRV RALT(KC_I) // ì
#define QF_OGRV RALT(KC_O) // ò
#define QF_OE RALT(KC_P) // œ
#define QF_LDAQ RALT(KC_LBRC) // «
#define QF_RDAQ RALT(KC_RBRC) // »
// Row 3
#define QF_AGRV RALT(KC_A) // à
#define QF_AE RALT(KC_S) // æ
#define QF_EDIA RALT(KC_D) // ë
#define QF_GR RALT(KC_G) // Greek (dead)
#define QF_YDIA RALT(KC_H) // ÿ
#define QF_UDIA RALT(KC_J) // ü
#define QF_IDIA RALT(KC_K) // ï
#define QF_ODIA RALT(KC_L) // ö
#define QF_ACUT RALT(KC_SCLN) // ´ (dead)
#define QF_AGR RALT(KC_QUOT) // ̀ (dead)
// Row 4
#define QF_LTEQ RALT(KC_NUBS) // ≤
#define QF_ADIA RALT(KC_Z) // ä
#define QF_MUL RALT(KC_X) // ×
#define QF_CCED RALT(KC_C) // ç
#define QF_SS RALT(KC_B) // ß
#define QF_NTIL RALT(KC_N) // ñ
#define QF_MATH RALT(KC_M) // Math (dead)
#define QF_CEDL RALT(KC_COMM) // ¸ (dead)
#define QF_MED RALT(KC_DOT) // ·
#define QF_APO RALT(KC_SLSH) //
// Row 5
#define QF_NBSP RALT(KC_SPC) //   (non-breaking space)
/* Shift+AltGr symbols
* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐
* │* ~│ ¡ │* ˝│ Ê │* ¤│* ˙│* ˇ│ Û │ Î │ Ô │ Ø │ — │ ≈ │ │
* ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤
* │ │  │ É │ È │ © │ Þ │* ˘│ Ù │ Ì │ Ò │ Œ │ “ │ ” │ │
* ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐ │
* │ │ À │ Æ │ Ë │ │ │ Ÿ │ Ü │ Ï │ Ö │* °│* ¨│ „ │ │
* ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴────┤
* │ │ ≥ │ Ä │ ÷ │ Ç │ │ ẞ │ Ñ │ │ ˛ │ … │ ¿ │ │
* ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤
* │ │ │ │ narrow non-breaking spc│ │ │ │ │
* └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘
*/
// Row 1
#define QF_DTIL S(RALT(KC_GRV)) // ~ (dead)
#define QF_IEXL S(RALT(KC_1)) // ¡
#define QF_DACU S(RALT(KC_2)) // ˝ (dead)
#define QF_ECIU S(RALT(KC_3)) // Ê
#define QF_CURR S(RALT(KC_4)) // ¤ (dead)
#define QF_NTON S(RALT(KC_5)) // ˙ (dead)
#define QF_CARN S(RALT(KC_6)) // ˇ (dead)
#define QF_UCIU S(RALT(KC_7)) // Û
#define QF_ICIU S(RALT(KC_8)) // Î
#define QF_OCIO S(RALT(KC_9)) // Ô
#define QF_UOST S(RALT(KC_0)) // Ø
#define QF_NDSH S(RALT(KC_MINUS)) // —
#define QF_APPR S(RALT(KC_EQUAL)) // ≈
// Row 2
#define QF_ACIU S(RALT(KC_Q)) // Â
#define QF_ECUU S(RALT(KC_W)) // É
#define QF_EGRU S(RALT(KC_E)) // È
#define QF_COPY S(RALT(KC_R)) // ©
#define QF_UTRN S(RALT(KC_T)) // Þ
#define QF_BRV S(RALT(KC_Y)) // ˘ (dead)
#define QF_UGRU S(RALT(KC_U)) // Ù
#define QF_IGRU S(RALT(KC_I)) // Ì
#define QF_OGRU S(RALT(KC_O)) // Ò
#define QF_OEU S(RALT(KC_P)) // Œ
#define QF_LDQU S(RALT(KC_LBRC)) // “
#define QF_RDQU S(RALT(KC_RBRC)) // ”
// Row 3
#define QF_AGRU S(RALT(KC_A)) // À
#define QF_AEU S(RALT(KC_S)) // Æ
#define QF_EDIU S(RALT(KC_D)) // Ë
#define QF_YDIU S(RALT(KC_H)) // Ÿ
#define QF_UDIU S(RALT(KC_J)) // Ü
#define QF_IDIU S(RALT(KC_K)) // Ï
#define QF_ODIU S(RALT(KC_L)) // Ö
#define QF_DEG S(RALT(KC_SCLN)) // ° (dead)
#define QF_DIAE S(RALT(KC_QUOT)) // ¨ (dead)
#define QF_DLQM S(RALT(KC_BSLS)) // „
// Row 4
#define QF_GTEQ S(RALT(KC_NUBS)) // ≥
#define QF_ADIU S(RALT(KC_Z)) // Ä
#define QF_DIV S(RALT(KC_X)) // ÷
#define QF_CCDU S(RALT(KC_C)) // Ç
#define QF_USS S(RALT(KC_B)) // ẞ
#define QF_NTIU S(RALT(KC_N)) // Ñ
#define QF_OGON S(RALT(KC_COMM)) // ˛ (dead)
#define QF_SUSP S(RALT(KC_DOT)) // …
#define QF_IQUE S(RALT(KC_SLSH)) // ¿
// Row 5
#define QF_NNBS RALT(KC_SPC) // (narrow non-breaking space)