summaryrefslogtreecommitdiffstats
path: root/docs
diff options
context:
space:
mode:
Diffstat (limited to 'docs')
-rw-r--r--docs/_langs.md3
-rw-r--r--docs/fr-FR/README.md32
-rw-r--r--docs/fr-FR/_summary.md125
-rw-r--r--docs/fr-FR/flashing.md236
-rw-r--r--docs/fr-FR/newbs.md23
-rw-r--r--docs/fr-FR/newbs_best_practices.md161
-rw-r--r--docs/fr-FR/newbs_building_firmware.md81
-rw-r--r--docs/fr-FR/newbs_building_firmware_configurator.md105
-rw-r--r--docs/fr-FR/newbs_flashing.md348
-rw-r--r--docs/fr-FR/newbs_getting_started.md101
-rw-r--r--docs/fr-FR/newbs_learn_more_resources.md14
-rw-r--r--docs/fr-FR/newbs_testing_debugging.md101
12 files changed, 1329 insertions, 1 deletions
diff --git a/docs/_langs.md b/docs/_langs.md
index 382231d505..c91e0d93fc 100644
--- a/docs/_langs.md
+++ b/docs/_langs.md
@@ -1,3 +1,4 @@
- Translations
- [:uk: English](/)
- - [:cn: 中文](/zh-cn/) \ No newline at end of file
+ - [:cn: 中文](/zh-cn/)
+ - [:fr: Français](/fr-fr/)
diff --git a/docs/fr-FR/README.md b/docs/fr-FR/README.md
new file mode 100644
index 0000000000..5bbe353b48
--- /dev/null
+++ b/docs/fr-FR/README.md
@@ -0,0 +1,32 @@
+# Quantum Mechanical Keyboard Firmware
+
+[![Version courante](https://img.shields.io/github/tag/qmk/qmk_firmware.svg)](https://github.com/qmk/qmk_firmware/tags)
+[![Statut du build](https://travis-ci.org/qmk/qmk_firmware.svg?branch=master)](https://travis-ci.org/qmk/qmk_firmware)
+[![Discord](https://img.shields.io/discord/440868230475677696.svg)](https://discord.gg/Uq7gcHh)
+[![Statut de la doc](https://img.shields.io/badge/docs-ready-orange.svg)](https://docs.qmk.fm)
+[![Contributeurs Github](https://img.shields.io/github/contributors/qmk/qmk_firmware.svg)](https://github.com/qmk/qmk_firmware/pulse/monthly)
+[![Forks Github](https://img.shields.io/github/forks/qmk/qmk_firmware.svg?style=social&label=Fork)](https://github.com/qmk/qmk_firmware/)
+
+## Qu'est ce que QMK Firmware ?
+
+QMK (*Quantum Mechanical Keyboard*) est une communauté open source qui maintient le firmware QMK, la QMK Toolbox (*Boite à outil*), qmk.fm et leurs documentations. QMK Firmware est un firmware dédié aux claviers qui est basé sur [tmk\_keyboard](http://github.com/tmk/tmk_keyboard). Il offre des fonctionnalités très utiles pour les contrôleurs Atmel AVR, et, plus spécifiquement pour [les produits d'OLKB](http://olkb.com), le clavier [ErgoDox EZ](http://www.ergodox-ez.com), et pour les [produits Clueboard](http://clueboard.co/). Il prend désormais aussi en charge les processeurs ARM qui utilisent ChibiOS. Vous pouvez l'utiliser pour contrôler un clavier personnalisé soudé à la main ou alors sur un clavier avec un PCB personnalisé.
+
+## Comment l'obtenir
+
+Si vous souhaitez contribuer à une disposition de clavier (keymap), ou à des fonctionnalités de QMK alors le plus simple est de [forker le dépôt avec Github](https://github.com/qmk/qmk_firmware#fork-destination-box) puis cloner le dépôt localement pour y faire des changements. Vous pourrez pousser vos changements sur github puis ouvrir un [Pull Request](https://github.com/qmk/qmk_firmware/pulls) depuis votre fork Github.
+
+Sinon, vous pouvez aussi le télécharger directement en ([zip](https://github.com/qmk/qmk_firmware/zipball/master), [tar](https://github.com/qmk/qmk_firmware/tarball/master)), ou le cloner avec git en ssh (`git@github.com:qmk/qmk_firmware.git`), ou https (`https://github.com/qmk/qmk_firmware.git`).
+
+## Comment le compiler
+
+Avant d'être prêt à compiler vous allez devoir [installer un environnement](getting_started_build_tools.md) pour les développements AVR et/ou ARM. Une fois ceci fait, vous pourrez utiliser la commande `make` pour compiler le clavier et la disposition avec une commande de ce type :
+
+ make planck/rev4:default
+
+Cette commande compilera la révision `rev4` du clavier `planck` avec la disposition `default`. Notez que tous les claviers n'ont pas forcément de révisions (aussi appelées sous-projects ou dossiers, ou en en Anglais « subprojects » ou « folder »). Cette option peut donc être omise :
+
+ make preonic:default
+
+## Comment le personnaliser
+
+QMK a beaucoup de [fonctionnalités](features.md) à explorer, et [une documentation](http://docs.qmk.fm) très abondante que vous pourrez parcourir. La plupart des fonctionnalités vous permettrons de modifier vos [dispositions](keymap.md) (keymaps) et de changer [les codes de caractères](keycodes.md) (keycodes).
diff --git a/docs/fr-FR/_summary.md b/docs/fr-FR/_summary.md
new file mode 100644
index 0000000000..7b87d4605f
--- /dev/null
+++ b/docs/fr-FR/_summary.md
@@ -0,0 +1,125 @@
+**En Français**
+
+* [Guide pour débutant complet](fr-FR/newbs.md)
+ * [Pour débuter](fr-FR/newbs_getting_started.md)
+ * [Compiler son premier firmware](fr-FR/newbs_building_firmware.md)
+ * [Flasher le Firmware](fr-FR/newbs_flashing.md)
+ * [Test et Débuggage](fr-FR/newbs_testing_debugging.md)
+ * [Bonnes pratiques Git](fr-FR/newbs_best_practices.md)
+ * [Ressources d'apprentissage](fr-FR/newbs_learn_more_resources.md)
+
+**En Anglais**
+
+* [Les bases de QMK](README.md)
+ * [Introduction à QMK](getting_started_introduction.md)
+ * [QMK en ligne de commande](cli.md)
+ * [Configurer les lignes de commandes CLI](cli_configuration.md)
+ * [Contribuer à QMK](contributing.md)
+ * [Comment utiliser Github](getting_started_github.md)
+ * [Obtenir de l’aide](getting_started_getting_help.md)
+
+* [Changements non rétro-compatibles](breaking_changes.md)
+ * [30 Aout 2019](ChangeLog/20190830.md)
+
+* [FAQ](faq.md)
+ * [FAQ Générale](faq_general.md)
+ * [Compiler QMK](faq_build.md)
+ * [Débugguer / Dépanner QMK](faq_debug.md)
+ * [Keymap / Disposition](faq_keymap.md)
+ * [Installer les drivers avec Zadig](driver_installation_zadig.md)
+
+* Guides détaillés
+ * [Installation des outils de compilation](getting_started_build_tools.md)
+ * [Guide Vagrant](getting_started_vagrant.md)
+ * [Commandes de compilations](getting_started_make_guide.md)
+ * [Flasher les firmwares](fr-fr/flashing.md)
+ * [Personnaliser les fonctionnalités](custom_quantum_functions.md)
+ * [Aperçu des fonctionnalités des dispositions](keymap.md)
+
+* [Hardware](hardware.md)
+ * [Processeurs AVR](hardware_avr.md)
+ * [Pilotes / Drivers](hardware_drivers.md)
+
+* Réferences
+ * [Lignes de conduite des claviers](hardware_keyboard_guidelines.md)
+ * [Options de configurations](config_options.md)
+ * [Keycodes / Codes des caractères](keycodes.md)
+ * [Conventions de codage - C](coding_conventions_c.md)
+ * [Conventions de codage - Python](coding_conventions_python.md)
+ * [Meilleurs pratiques sur la documentation](documentation_best_practices.md)
+ * [Modèles de documentation](documentation_templates.md)
+ * [Glossaire](reference_glossary.md)
+ * [Tests unitaires](unit_testing.md)
+ * [Fonctions utiles](ref_functions.md)
+ * [Support de configuration](reference_configurator_support.md)
+ * [Format du fichier info.json](reference_info_json.md)
+ * [Développer la CLI en Python](cli_development.md)
+
+* [Fonctionnalités](features.md)
+ * [Keycodes basiques](keycodes_basic.md)
+ * [Touches utilisées avec Shift (US ANSI)](keycodes_us_ansi_shifted.md)
+ * [Keycodes quantiques](quantum_keycodes.md)
+ * [Keycodes avancés](feature_advanced_keycodes.md)
+ * [Fonctionnalités audio](feature_audio.md)
+ * [Majuscule automatique](feature_auto_shift.md)
+ * [Rétroéclairage](feature_backlight.md)
+ * [Bluetooth](feature_bluetooth.md)
+ * [Bootmagic](feature_bootmagic.md)
+ * [Combos](feature_combo.md)
+ * [Commande](feature_command.md)
+ * [API anti-rebond](feature_debounce_type.md)
+ * [DIP Switch](feature_dip_switch.md)
+ * [Macros dynamiques](feature_dynamic_macros.md)
+ * [Interrupteurs rotatifs](feature_encoders.md)
+ * [Grave Escape](feature_grave_esc.md)
+ * [Retour haptique](feature_haptic_feedback.md)
+ * [Contrôleur LCD HD44780](feature_hd44780.md)
+ * [Touche à verrou / Lock-key](feature_key_lock.md)
+ * [Dispositions / layouts](feature_layouts.md)
+ * [Touche leader](feature_leader_key.md)
+ * [Matrice LED](feature_led_matrix.md)
+ * [Macros](feature_macros.md)
+ * [Boutons de souris](feature_mouse_keys.md)
+ * [Pilotes / Drivers OLED](feature_oled_driver.md)
+ * [Touche one-shot](feature_advanced_keycodes.md#one-shot-keys)
+ * [Périphériques de pointage](feature_pointing_device.md)
+ * [Souris PS/2](feature_ps2_mouse.md)
+ * [Éclairage RGB](feature_rgblight.md)
+ * [Matrice RGB](feature_rgb_matrix.md)
+ * [Space Cadet](feature_space_cadet.md)
+ * [Claviers scindés / splittés](feature_split_keyboard.md)
+ * [Stenographie](feature_stenography.md)
+ * [Inversion des mains](feature_swap_hands.md)
+ * [Tap Dance](feature_tap_dance.md)
+ * [Terminale](feature_terminal.md)
+ * [Imprimante thermique](feature_thermal_printer.md)
+ * [Caractères unicodes](feature_unicode.md)
+ * [Dossier utilisateur](feature_userspace.md)
+ * [Velocikey](feature_velocikey.md)
+
+* Pour les makers et les bricoleurs
+ * [Guide des claviers soudés à la main](hand_wire.md)
+ * [Guide de flash de l’ISP](isp_flashing_guide.md)
+ * [Guide du débogage ARM](arm_debugging.md)
+ * [Drivers i2c](i2c_driver.md)
+ * [Contrôles des GPIO](internals_gpio_control.md)
+ * [Conversion en Proton C](proton_c_conversion.md)
+
+* Pour aller plus loin
+ * [Comment fonctionnent les claviers](how_keyboards_work.md)
+ * [Comprendre QMK](understanding_qmk.md)
+
+* Autres sujets
+ * [Utiliser Eclipse avec QMK](other_eclipse.md)
+ * [Utiliser VSCode avec QMK](other_vscode.md)
+ * [Support](support.md)
+ * [Comment ajouter des traductions](translating.md)
+
+* À l’intérieur de QMK (En cours de documentation)
+ * [Définitions](internals_defines.md)
+ * [Input Callback Reg](internals_input_callback_reg.md)
+ * [Appareils Midi](internals_midi_device.md)
+ * [Installation d’un appareil Midi](internals_midi_device_setup_process.md)
+ * [Utilitaires Midi](internals_midi_util.md)
+ * [Fonctions Midi](internals_send_functions.md)
+ * [Outils Sysex](internals_sysex_tools.md)
diff --git a/docs/fr-FR/flashing.md b/docs/fr-FR/flashing.md
new file mode 100644
index 0000000000..f4379189a7
--- /dev/null
+++ b/docs/fr-FR/flashing.md
@@ -0,0 +1,236 @@
+# Instructions pour flasher et informations sur les bootloader
+
+Les claviers utilisent différents types de bootloaders et certains doivent être flashés différement. Heureusement, certains projets comme la [QMK Toolbox](https://github.com/qmk/qmk_toolbox/releases) ont pour objectifs de permettre de flasher les différents bootloader sans trop se faire de soucis et ça peut importe les manières de les flasher.
+
+Si vous avez un bootloader sélectionné avec la variable `BOOTLOADER` dans votre fichier `rules.mk` alors QMK vas automatiquement calculer si votre fichier .hex n'est pas trop grand pour être flashé sur votre appareil, et il affichera la taille finale du firmware. Pour vérifier la taille manuellement, vous pouvez aussi compiler le firmware avec l'option `check-size`. Exemple : `make planck/rev4:default:check-size`.
+
+## DFU
+
+Le bootloader pour les processeurs Atmel DFU est fourni par défaut sur tous les processeurs atmega32u4. Celui-ci est utilisé par beaucoup de claviers plus vieux que les OLKB et Clueboard qui ont leur propre ICs sur leurs PCBs. D'autres claviers utilisent le bootloader DFU de LUFA (ou son fork QMK), notamment les nouveaux claviers OLKB. Ce dernier ajoute des fonctionnalités spécifiques sur le matériel.
+
+Pour vérifier la compatibilité avec le bootloader DFU, vérifiez que ce bloc de code est présent dans votre fichier `rules.mk`. Parfois il peut être inscrit `lufa-dfu` ou `qmk-dfu` à la place.
+
+```make
+# Bootloader selection
+# Teensy halfkay
+# Pro Micro caterina
+# Atmel DFU atmel-dfu
+# LUFA DFU lufa-dfu
+# QMK DFU qmk-dfu
+# ATmega32A bootloadHID
+# ATmega328P USBasp
+BOOTLOADER = atmel-dfu
+```
+
+Méthodes de flash compatibles :
+
+* [QMK Toolbox](https://github.com/qmk/qmk_toolbox/releases) (interface graphique recommandé)
+* [dfu-programmer](https://github.com/dfu-programmer/dfu-programmer) / `:dfu` avec QMK (outil en ligne de commande recommandé)
+* [Atmel's Flip](http://www.microchip.com/developmenttools/productdetails.aspx?partno=flip) (non recommandé)
+
+Ordre des actions :
+
+1. Pressez le keycode `RESET`, ou appuyez sur le bouton physique RESET ou alors créez un contact entre RST et GND.
+2. Attendez que l'OS detecte l'appareil.
+3. Éffacez la mémoire, cela peut être fait automatiquement.
+4. Flasher le fichier .hex.
+5. Redémarrez l'appareil en mode « application », cela peut être fait automatiquement.
+
+Alternativement :
+
+ make <keyboard>:<keymap>:dfu
+
+### DFU QMK
+
+QMK a un fork du bootloader LUFA DFU qui vous permet de faire un simple scan de la matrice pour quitter le bootloader et retourner à l'application. En même temps que le flash se produira, il est possible de faire flasher un led ou de produire un son via un haut parleur. Pour activer ces fonctionnalités, vous pouvez utiliser ce bloc dans votre fichier `config.h` (La touche permettant de quitter le bootloader a besoin d'être reliée entre les ports définis en INPUT et OUTPUT ici):
+
+ #define QMK_ESC_OUTPUT F1 // usually COL
+ #define QMK_ESC_INPUT D5 // usually ROW
+ #define QMK_LED E6
+ #define QMK_SPEAKER C6
+
+Le fabriquant et le nom du produit proviennent de vos définitions dans fichier `config.h`, et la chaîne de caractère « bootloader » est ajoutée au nom du prodruit.
+
+Pour génerer le bootloader, utilisez la cible `bootloader`. Exemple : `make planck/rev4:default:bootloader`.
+
+Pour génerer un fichier .hex prêt pour la production qui contiendra tant l'application que le bootloader, utilisez la cible `production`. Exemple : `make planck/rev4:default:production`.
+
+### Commandes DFU
+
+Il y a plusieurs commandes DFU que vous pouvez utiliser pour flasher le firmware sur un appareil DFU.
+
+* `:dfu` - C'est l'option normale qui attend qu'un appareil DFU soit disponible et qui flashe le firmware dès que c'est le cas. La vérification sera faite toutes les 5 secondes.
+* `:dfu-ee` - Cette option flash un fichier `.eep` à la place d'un fichier `.hex`. Ce cas est plutôt rare.
+* `:dfu-split-left` - Cette option flashe le firmware normal comme avec l'option (`:dfu`). Mais cela aussi flash le coté gauche du fichier EEPROM pour les claviers scindés. _C'est l'option idéale pour un clavier scindé basé sur le Elite C_
+* `:dfu-split-right` - Cette option flashe le firmware normal comme avec l'option (`:dfu`). Mais cela aussi flash le coté droite du fichier EEPROM pour les claviers scindés. _C'est l'option idéale pour un clavier scindé basé sur le Elite C_
+
+## Caterina
+
+Les cartes arduinos et leurs clones utilisent le [bootloader Caterina](https://github.com/arduino/ArduinoCore-avr/tree/master/bootloaders/caterina) (tous les claviers utilisant un Pro Micro, ou un clone). Ils utilisent aussi le protocole avr109 pour communiquer en virtuellement en série (serial en Anglais). Les bootloaders comme le [A-Star](https://www.pololu.com/docs/0J61/9) sont basés sur Caterina.
+
+Pour vérifier la compatibilité avec un bootloader Caterina, vérifiez que ce bloc est présent dans votre fichier `rules.mk` :
+
+```make
+# Bootloader selection
+# Teensy halfkay
+# Pro Micro caterina
+# Atmel DFU atmel-dfu
+# LUFA DFU lufa-dfu
+# QMK DFU qmk-dfu
+# ATmega32A bootloadHID
+# ATmega328P USBasp
+BOOTLOADER = caterina
+```
+
+Flashers compatibles :
+
+* [QMK Toolbox](https://github.com/qmk/qmk_toolbox/releases) (Interface graphique recomandée)
+* [avrdude](http://www.nongnu.org/avrdude/) avec avr109 / `:avrdude` (Outil en ligne de commande recomandé)
+* [AVRDUDESS](https://github.com/zkemble/AVRDUDESS)
+
+Séquence de flash : 
+
+1. Pressez la touche avec le keycode `RESET`, ou reliez les ports GND et RST. Vous n'avez que 7 secondes pour flasher une fois que l'opération a été faite.
+2. Attendez que l'OS détecte l'appareil.
+3. Flasher le fichier .hex.
+4. Attendez que l'appareil redémarre automatiquement.
+
+ou, utilisez :
+
+ make <keyboard>:<keymap>:avrdude
+
+ou, si vous vous voulez flasher plusieurs claviers, utilisez la commande suivante :
+
+ make <keyboard>:<keymap>:avrdude-loop
+
+Quand vous avez fini de flasher vos claviers, vous aurez besoin d'utiliser Ctrl + C ou alors la touche ayant la fonction similaire sur votre OS pour sortir de la boucle.
+
+## Halfkay
+
+Halfkay est un protocole ultra-simple développé par PJRC qui utilise HID et qui est fourni avec tous les Teensys après le modèle 2.0.
+
+Pour vérifier la compatibilité avec le booloader Halfkay, vérifiez que ce bloc est présent dans votre fichier `rules.mk` :
+
+```make
+# Bootloader selection
+# Teensy halfkay
+# Pro Micro caterina
+# Atmel DFU atmel-dfu
+# LUFA DFU lufa-dfu
+# QMK DFU qmk-dfu
+# ATmega32A bootloadHID
+# ATmega328P USBasp
+BOOTLOADER = halfkay
+```
+
+Flasher compatibles :
+
+* [QMK Toolbox](https://github.com/qmk/qmk_toolbox/releases) (Interface graphique recomandée)
+* [Teensy Loader](https://www.pjrc.com/teensy/loader.html) (petit utilitaire ultra simple)
+ [Teensy Loader en ligne de commande](https://www.pjrc.com/teensy/loader_cli.html) (Outil en ligne de commande recommandé)
+
+Séquence de flash :
+
+1. Pressez la touche du keycode `RESET`, ou reliez les ports RST et GND rapidement. Vous avez ensuite 7 secondes pour réaliser le flash.
+2. Attendez que l'OS détecte l'appareil.
+3. Flasher le fichier .hex.
+4. Redémarrez l'appareil en mode « application ». Cela peut être fait automatiquement.
+
+## USBasploader
+
+USBasploader est un bootloader développé par matrixstorm. Il est utilisé sur des processeurs AVR non-USB comme le ATmega328P, qui fonctionne grâce à V-USB.
+
+Pour vérifier la compatibilité avec le booloader USBasploader, vérifiez que ce bloc est présent dans votre fichier `rules.mk` :
+
+```make
+# Bootloader selection
+# Teensy halfkay
+# Pro Micro caterina
+# Atmel DFU atmel-dfu
+# LUFA DFU lufa-dfu
+# QMK DFU qmk-dfu
+# ATmega32A bootloadHID
+# ATmega328P USBasp
+BOOTLOADER = USBasp
+```
+
+Flashers compatibles :
+
+* [QMK Toolbox](https://github.com/qmk/qmk_toolbox/releases) (Interface graphique recommandé)
+* [avrdude](http://www.nongnu.org/avrdude/) avec le programmeur `usbasp`.
+* [AVRDUDESS](https://github.com/zkemble/AVRDUDESS)
+
+Séquence de flash :
+
+1. Pressez la touche du keycode `RESET`, ou reliez le port de boot pendant que RST et GND snt reliés. Cela doit être fait très rapidement.
+2. Attendez que l'OS détecte l'appareil.
+3. Flasher le fichier .hex.
+4. Redémarrez l'appareil en mode « application ». Cela peut être fait automatiquement.
+
+## BootloadHID
+
+BootloadHID est un bootloader pour les microcontroleurs AVR. L'utilitaire de téleversement ne demande pas de drivers au niveau du kernel et peut être lancé sans installer aucune DLLs.
+
+Pour vérifier la compatibilité avec le bootloader bootloadHID, vérifiez que ce bloc existe dans votre fichier `rules.mk` : 
+
+```make
+# Bootloader selection
+# Teensy halfkay
+# Pro Micro caterina
+# Atmel DFU atmel-dfu
+# LUFA DFU lufa-dfu
+# QMK DFU qmk-dfu
+# ATmega32A bootloadHID
+# ATmega328P USBasp
+BOOTLOADER = bootloadHID
+```
+
+Utilitaires de flash compatibles :
+
+* [HIDBootFlash](http://vusb.wikidot.com/project:hidbootflash) (Utilitaire avec interface graphique recommandé)
+* [bootloadhid Command Line](https://www.obdev.at/products/vusb/bootloadhid.html) / `:BootloadHID` avec QMK (utilitaire en ligne de commande recommandé)
+
+Séquence de flash
+
+1. Entrez dans le bootloader en utilisant l'une de ces méthodes :
+ * Pressez la touche du keycode `RESET` (Cela ne fonctionnera pas sur certains appareils).
+ * Verouillez la touche « Salt » tout en branchant le clavier (Géneralement ce principe est documenté dans le fichier readme du clavier)
+2. Attendez que l'OS détecte l'appareil.
+3. Flasher le fichier .hex.
+4. Redémarrez l'appareil en mode « application ». Cela peut être fait automatiquement.
+
+Ou alors :
+
+ make <keyboard>:<keymap>:bootloadHID
+
+## STM32
+
+Tous les processeurs STM32 contiennent un bootloader installé en usine qui ne peut pas être modifié ou supprimé. Certains processeurs STM32 ont des bootloaders qui ne peuvent pas être programmés par USB (ex : STM32F103) mais le processus reste le même.
+
+Pour le moment, aucune variable `BOOTLOADER` n'est nécessaire dans le fichier `rules.mk`.
+
+Flashers compatibles :
+
+* [QMK Toolbox](https://github.com/qmk/qmk_toolbox/releases) (interface graphique recommandé)
+* [dfu-util](https://github.com/Stefan-Schmidt/dfu-util) / `:dfu-util` (utilitaire en ligne de commande recommandé)
+
+Séquence pour flasher:
+
+1. Entrez dans le bootloader en utilisant l'une de ces méthodes :
+ * Utilisez une touche sur laquelle le keycode `RESET` (Cela peut ne pas fonctionner sur les appareils STM32F042)
+ * Si un circuit de réinitialisation (Reset) est présent alors utilisé le bouton qui lui est dédié.
+ * Autrement, vous devez réaliser une liaison entre BOOT0 et VCC (en appuyant sur le bouton ou à l'aide d'un pont) puis faire un pont entre RESET et GND et enfin relacher le pont BOOT0.
+2. Attendre que l'os détecte l'appareil.
+3. Flasher un fichier `.bin`.h
+ * Vous allez recevoir un avertissement à propos de la signature DFU. Ignorez-la.
+4. Réinitialisez l'appareil en mode « application ». Cela peut être fait automatiquement.
+ * Si vous êtes en train de travailler en ligne de commande, par exemple avec un `make planck/rev6:default:dfu-util` alors soyez bien sur que l'argument `:leave` est passé aux argument DFU grâce à la variable `DFU_ARGS` à l'intérieur de votre fichier `rules.mk` (Ex : `DFU_ARGS = -d 0483:df11 -a 0 -s 0x08000000:leave`) afin que votre appareil redémarre après avoir été flashé.
+
+### Commandes STM32
+
+Il y a différentes commandes que vous pouvez utiliser pour flasher un firmware dans un appareil STM32  :
+
+* `:dfu-util` - La commande par défaut pour flasher un appareil STM32.
+* `:dfu-util-split-left` - Permet de flasher un firmware normalement, tout comme l'option précedente mais permet de configurer le coté gauche des paramètres EEPROM sur un clavier scindé.
+* `:dfu-util-split-right` - Permet de flasher un firmware normalement, tout comme l'option précedente mais permet de configurer le coté droit des paramètres EEPROM sur un clavier scindé.
+* `:st-link-cli` - Cela permet de flasher le firmware avec l'utilitaire en ligne de commande ST-LINK's plutôt que d'utiliser dfu-util.
diff --git a/docs/fr-FR/newbs.md b/docs/fr-FR/newbs.md
new file mode 100644
index 0000000000..13b06b429e
--- /dev/null
+++ b/docs/fr-FR/newbs.md
@@ -0,0 +1,23 @@
+# Le Guide pour débutant complet à QMK
+
+QMK est un firmware Open Source pour votre clavier mécanique. Vous pouvez utiliser QMK pour customiser votre clavier de manière simple et puissante. Tout le monde, du débutant complet au développeur avancé, ont utilisé avec succès QMK pour customiser leur clavier. Ce guide vous aidera à faire de même, quelles que soient vos compétences.
+
+Vous voulez savoir si votre clavier peut utiliser QMK? Si c'est un clavier mécanique que vous avez vous-même construit, il y a de bonnes chances que vous pouvez. Nous supportons un [grand nombre de "hobbyist boards"](http://qmk.fr/keyboards), donc même si votre clavier ne peut pas utiliser QMK, vous ne devriez pas avoir trop de problème pour en trouver un qui vous convienne.
+
+## Vue d'ensemble
+
+Il y a 7 sections principales dans ce guide:
+
+* [Pour débuter](fr-FR/newbs_getting_started.md)
+* [Compiler votre premier firmware en utilisant la ligne de commande](fr-FR/newbs_building_firmware.md)
+* [Compiler votre premier firmware en utilisant l'interface graphique en ligne](fr-FR/newbs_building_firmware_configurator.md)
+* [Flasher le Firmware](fr-FR/newbs_flashing.md)
+* [Test et Débuggage](fr-FR/newbs_testing_debugging.md)
+* [Bonnes pratiques Git](fr-FR/newbs_best_practices.md)
+* [Ressources d'apprentissage](fr-FR/newbs_learn_more_resources.md)
+
+Ce guide a pour but principal d'aider quelqu'un qui n'a jamais compilé de logiciel avant. Les recommandations et les choix qu'il contient vont donc dans ce sens. Il y a des méthodes alternatives pour beaucoup de ces procédures, et nous supportons la plupart de ces alternatives. Si vous avez un doute sur comment accomplir une tâche, vous pouvez [nous demander de l'aide](fr-FR/getting_started_getting_help.md).
+
+## Ressources additionnelles
+
+* [Thomas Baart's QMK Basics Blog](https://thomasbaart.nl/category/mechanical-keyboards/firmware/qmk/qmk-basics/) – Un blog créé par un utilisateur qui couvre les bases de l'utilisation du Firmware QMK, vue d'un point de vue d'un nouvel utilisateur (anglais).
diff --git a/docs/fr-FR/newbs_best_practices.md b/docs/fr-FR/newbs_best_practices.md
new file mode 100644
index 0000000000..c0e76b1c96
--- /dev/null
+++ b/docs/fr-FR/newbs_best_practices.md
@@ -0,0 +1,161 @@
+# Bonnes Pratiques
+
+## Ou, "Comment j'ai appris à ne plus m'en faire et aimer Git."
+
+Ce document a pour but d'apprendre aux novices les meilleures solutions pour faciliter la contribution à QMK. Nous allons étudier le processus de contribution à QMK, détaillant quelques moyens de rendre cette tâche plus simple. Nous allons faire quelques erreurs afin de vous apprendre à les résoudre.
+
+Ce document suppose les choses suivantes:
+
+1. Vous avez un compte GitHub, et avez [créé un "fork" pour le dépôt qmk_firmware](fr-FR/getting_started_github.md) avec votre compte.
+2. Vous avez [configuré votre environnement de compilation](fr-FR/newbs_getting_started.md?id=environment-setup).
+
+## La branche master de votre fork: Mettre à jour souvent, ne jamais commit
+
+Il est hautement recommandé pour le développement de QMK, peu importe ce qui est fait ou où, de garder votre branche `master` à jour, mais de ne ***jamais*** commit dessus. A la place, faites tous vos changement dans une branche de développement et crééz des "pull requests" de votre branche lorsque vous développez.
+
+Pour réduire les chances de conflits de fusion (merge) &mdash; des cas où deux ou plus d'utilisateurs ont édité la même section d'un fichier en parallèle &mdash; gardez votre branche `master` relativement à jour et démarrez chaque nouveau développement en créant une nouvelle branche.
+
+### Mettre à jour votre branche master
+
+Pour garder votre branche `master` à jour, il est recommandé d'ajouter le dépôt du firmware QMK comme un dépôt distant (remote) dans git. pour se faire, ouvrez votre interface de ligne de commande Git et entrez:
+
+```bash
+git remote add upstream https://github.com/qmk/qmk_firmware.git
+```
+
+Pour vérifier que le dépôt a bien été ajouté, lancez la commande `git remote -v`, qui devrait retourner le résultat suivant:
+
+```bash
+$ git remote -v
+origin https://github.com/<your_username>/qmk_firmware.git (fetch)
+origin https://github.com/<your_username>/qmk_firmware.git (push)
+upstream https://github.com/qmk/qmk_firmware.git (fetch)
+upstream https://github.com/qmk/qmk_firmware.git (push)
+```
+
+Maintenant que c'est fait, vous pouvez vérifier les mises à jour au dépôt en lançant `git fetch upstream`. Cela récupère les branches et les tags &mdash; appelé de manière générale "refs" &mdash; du dépôt QMK, qui a maintenant le surnom `upstream`. Nous pouvons maintenant comparer les données sur notre "fork" `origin` à celles contenues par QMK.
+
+Pour mettre à jour la branche master de votre "fork", lancez les commandes suivantes (en appuyant sur Enter après chaque ligne):
+
+```bash
+git checkout master
+git fetch upstream
+git pull upstream master
+git push origin master
+```
+
+Cela vous change la branche courante en master, synchronise les données de réferences du dépôt QMK vers votre ordinateur. La commande pull tire les données de réferences vers votre branche courante puis les y téleverse. La commande push permet de pousser la branche courante (master) vers votre fork github.
+
+### Faire des changements
+
+Pour faire des changements, créez une nouvelle branche en entrant:
+
+```bash
+git checkout -b dev_branch
+git push --set-upstream origin dev_branch
+```
+
+Ceci crée une branche nommée `dev_branch`, bascule vers cette branche, et ensuite sauvegarde cette nouvelle branche vers votre fork. L'argument `--set-upstream` demande à git d'utiliser votre fork et la branche `dev_branch` à chaque fois que vous utilisez `git push` ou `git pull` depuis cette branche. Vous ne devez l'utiliser que pour le premier "push", après celà, vous pouvez utiliser simplement `git push` ou `git pull`, sans le reste des arguments.
+
+!> Avec `git push`, vous pouvez utiliser `-u` à la place de `--set-upstream` &mdash; `-u` est un alias pour `--set-upstream`.
+
+Vous pouvez appeler votre branche à peu prêt comme vous voulez, toutefois il est recommandé d'utiliser un nom qui est lié aux changements que vous allez faire.
+
+Par défaut, `git checkout -b` va faire de la branche actuelle la branche de base de votre nouvelle branche. Vous pouvez définir la base de votre nouvelle branche comme étant n'importe quelle branche existante qui n'est pas la courante en utilisant la commande:
+
+```bash
+git checkout -b dev_branch master
+```
+
+Maintenant que vous avez une branche de développement, ouvrez votre éditeur de texte et faites vos changements. Il est recommandé de faire beaucoup de petits commits dans votre branche. Ainsi, un changement qui crée un problème peut être plus facilement retracé et annulé si nécessaire. Pour faire un changement, éditez et sauvez n'importe quel fichier qui doit être mis à jour, ajoutez les à la *zone de staging* de Git, et commitez les vers votre branche:
+
+```bash
+git add path/to/updated_file
+git commit -m "My commit message."
+```
+
+`git add` ajoute les fichiers qui ont été changés dans la *zone de staging* de Git, qui est sa "zone de chargement". Elle contient tous les changements qui vont être *validés* (committed) par `git commit`, qui sauvegarde les changements vers le dépôt. Utilisez des messages de validation descriptifs afin que vous puissiez savoir ce qui a changé d'un coup d'oeil.
+
+!> Si vous changez beaucoup de fichiers, mais tous les fichiers font partie du même changement, vous pouvez utiliser `git add .` pour ajouter tous les fichiers changés dans le répertoire courant, plutôt que d'avoir à ajouter chaque fichiers individuellement.
+
+### Publier Vos Changements
+
+La dernière étape est de pousser vos changements vers votre fork. pour se faire, entrez `git push`. Git publie maintenant l'état courant de `dev_branch` vers votre fork.
+
+## Résoudre Les Conflits De Merge
+
+Parfois, lorsque votre travail sur une branche met beaucoup de temps à se compléter, des changements réalisés par d'autres peuvent entrer en conflit avec les changements que vous avez fait sur votre branche au moment où vous avez ouvert un pull request. Ceci est appelé un *conflit de merge*, et c'est ce qui arrive lorsque plusieurs personnes modifient les mêmes parties de mêmes fichiers.
+
+### Rebaser Vos Changements
+
+Un *rebase* est la manière pour Git de prendre les changements qui ont été faits à un point, les annuler, et les réappliquer sur un autre point. Dans le cas d'un conflit de merge, vous pouvez rebaser votre branche pour récupérer les changements qui ont été faits entre le moment où vous avez créé votre branche et le présent.
+
+Pour démarrer, lancez les commandes suivantes:
+
+```bash
+git fetch upstream
+git rev-list --left-right --count HEAD...upstream/master
+```
+
+La commande `git rev-list` retourne le nombre de commits qui diffère entre la branche courante et la branche master de QMK. Nous lançons `git fetch` en premier afin d'être sûr que les refs qui représentent l'état courant du dépôt upstream soient à jour. Le résultat de la commande `git rev-list` retourne deux nombres:
+
+```bash
+$ git rev-list --left-right --count HEAD...upstream/master
+7 35
+```
+
+Le premier nombre représente combien il y a eu de commits sur la branche courante depuis qu'elle a été créée, et le second nombre est combien de commits ont été faits sur la branche `upstream/master` depuis que la branche a été créée et, ainsi, les changements qui ne sont pas enregistrés sur la branche courante.
+
+Maintenant que l'état actuel de la branche courante et la branche upstream sont connus, nous pouvons maintenant démarrer une opération de rebase:
+
+```bash
+git rebase upstream/master
+```
+
+Ceci dit à Git d'annuler les commits de la branche courrante puis de les réappliquer sur la branche master de QMK.
+
+```bash
+$ git rebase upstream/master
+First, rewinding head to replay your work on top of it...
+Applying: Commit #1
+Using index info to reconstruct a base tree...
+M conflicting_file_1.txt
+Falling back to patching base and 3-way merge...
+Auto-merging conflicting_file_1.txt
+CONFLICT (content): Merge conflict in conflicting_file_1.txt
+error: Failed to merge in the changes.
+hint: Use 'git am --show-current-patch' to see the failed patch
+Patch failed at 0001 Commit #1
+
+Resolve all conflicts manually, mark them as resolved with
+"git add/rm <conflicted_files>", then run "git rebase --continue".
+You can instead skip this commit: run "git rebase --skip".
+To abort and get back to the state before "git rebase", run "git rebase --abort".
+```
+
+Ceci nous dit que nous avons un conflit de merge, et nous donne le nom du fichier en conflit. Ouvez le fichier conflictuel dans votre éditeur de texte et, quelque part dans le fichier, vous trouverez quelque chose comme ça:
+
+```bash
+<<<<<<< HEAD
+<p>For help with any issues, email us at support@webhost.us.</p>
+=======
+<p>Need help? Email support@webhost.us.</p>
+>>>>>>> Commit #1
+```
+
+La ligne `<<<<<<< HEAD` montre le début d'un conflit de merge et la ligne `>>>>>>> Commit #1` indique la fin, avec les sections conflictuelles séparées par `=======`. La partie du côté `HEAD` vient de la version du fichier provenant de la branche master de QMK, et la partie marquée avec le numéro du commit provient de la branche courrante.
+
+Parce que Git suis *les changements des fichiers*, plutôt que les contenus des fichiers directement, si Git ne peut pas trouver le texte qu'il y avait dans le fichier avant que le commit soit fait, il ne saura pas comment modifier le fichier. Modifier le fichier à nouveau va résoudre le conflit. Faites votre changement, et sauvez le fichier.
+
+```bash
+<p>Need help? Email support@webhost.us.</p>
+```
+
+Maintenant, lancez:
+
+```bash
+git add conflicting_file_1.txt
+git rebase --continue
+```
+
+Git enregistre le changement dans le fichier conflictuel, et continue à appliquer les commits depuis votre branche jusqu'à ce qu'il arrive à la fin.
diff --git a/docs/fr-FR/newbs_building_firmware.md b/docs/fr-FR/newbs_building_firmware.md
new file mode 100644
index 0000000000..81870d31e4
--- /dev/null
+++ b/docs/fr-FR/newbs_building_firmware.md
@@ -0,0 +1,81 @@
+# Compiler Votre Premier Firmware
+
+Maintenant que vous avez configuré votre environnement de build, vous être prêts à compiler un firmware customisé. Pour cette section, nous allons utiliser trois programmes différents: votre explorateur de fichier, votre éditeur de texte et votre fenêtre de terminal. Gardez les 3 ouverts jusqu'à ce que vous ayez terminé et soyez content de votre firmware de clavier.
+
+Si vous avez fermé et rouvert votre fenêtre de terminal depuis le démarrage de ce guide, n'oubliez pas de `cd qmk_firmware` afin que votre terminal soit dans le bon répertoire.
+
+## Naviguez vers votre répertoire keymaps
+
+Démarrez par naviguer dans le répertoire `keymaps` de votre clavier.
+
+?> Si vous êtes sous macOS ou Windows, il y a des commandes que vous pouvez utiliser pour facilement ouvrir le dossier keymaps.
+
+?> macOS:
+
+ open keyboards/<keyboard_folder>/keymaps
+
+?> Windows:
+
+ start .\\keyboards\\<keyboard_folder>\\keymaps
+
+## Créez une copie de la keymap `default`
+
+Une fois le dossier `keymaps` ouvert, créez une copie du répertoire `default`. Nous vous recommandons de nommer ce répertoire de la même manière que votre nom d'utilisateur GitHub. Vous pouvez aussi utiliser le nom que vous voulez, tant qu'il contient uniquement des lettres minuscules, des nombres et le caractère souligné (_).
+
+Afin d'automatiser ce processus, vous avez aussi l'option de lancer le script `new_keymap.sh`.
+
+Naviguez vers le répertoire `qmk_firmware/util` et tapez ce qui suit:
+
+```
+./new_keymap.sh <keyboard path> <username>
+```
+
+Par exemple, pour un utilisateur s'appeleant John, essayant de créer une nouvelle keymap pour le 1up60hse, il taperait:
+
+```
+./new_keymap.sh 1upkeyboards/1up60hse john
+```
+
+## Ouvrez `keymap.c` dans votre éditeur de texte préféré
+
+Ouvrez votre fichier `keymap.c`. Dans ce fichier, vous trouverez la structure qui contrôle comment votre clavier se comporte. En haut du fichier `keymap.c` il peut y avoir quelques `defines` et `enums` qui rendent la keymap plus simple à lire. Plus bas, vous trouverez une ligne telle que celle-ci:
+
+ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+Cette ligne indique le début d'une liste de calques (layers). En dessous, vous trouverez des lignes contenant soit `LAYOUT`, soit `KEYMAP` et ces lignes indiquent le début d'un calque. En dessous de cette ligne se trouve la liste des touches qui comprennent ce calque particulier.
+
+!> Lorsque vous éditez votre fichier keymap, faites attention à ne pas ajouter ou enlever une virgule. Si vous le faites, vous aller empêcher votre firmware de compiler et il ne sera pas facile de trouver où la virgule est manquante ou en trop.
+
+## Customisez le layout à votre goût
+
+Libre à vous de choisir comment compléter cette étape. Faites le petit changement qui vous dérange ou retravaillez tout de zéro. Vous pouvez supprimer des calques si vous ne les utilisez pas tous, ou ajouter des calques jusqu'à un maximum de 32. Vérifiez la documentation suivante pour trouver ce que vous pouvez définir ici:
+
+* [Keycodes](keycodes.md)
+* [Fonctionnalités](features.md)
+* [FAQ](faq.md)
+
+?> Lorsque vous découvrez comment des keymaps fonctionnent, faites de petits changements. De gros changements rendent le débuggage des problèmes éventuels plus difficile.
+
+## Compilez votre firmware
+
+Lorsque les changements de votre keymap sont complets, vous allez devoir compiler le firmware. Pour ce faire, retournez à votre terminal et lancez la commande de compilation:
+
+ make <my_keyboard>:<my_keymap>
+
+Par exemple, si votre keymap s'appelle "xyverz" et vous compilez une keymap pour une plank rev5, vous allez utiliser cette commande:
+
+ make planck/rev5:xyverz
+
+Durant la compilation, vous allez avoir beaucoup de messages sur l'écran vous informant de quels fichiers sont en train d'être compilés. Il devrait se terminer avec des messages qui ressemblent comme suit:
+
+```
+Linking: .build/planck_rev5_xyverz.elf [OK]
+Creating load file for flashing: .build/planck_rev5_xyverz.hex [OK]
+Copying planck_rev5_xyverz.hex to qmk_firmware folder [OK]
+Checking file size of planck_rev5_xyverz.hex [OK]
+ * File size is fine - 18392/28672
+```
+
+## Flasher votre firmware
+
+Allez sur la page [Flasher le firmware](fr-FR/newbs_flashing.md) pour apprendre comment écrire votre nouveau firmware sur votre clavier.
diff --git a/docs/fr-FR/ne