diff --git a/README.md b/README.md index a7306ddabbb6..ce6d483f0dff 100644 --- a/README.md +++ b/README.md @@ -54,6 +54,7 @@ contains documents describing how to build and contribute to Electron. - [Traditional Chinese](https://github.com/atom/electron/tree/master/docs-translations/zh-TW) - [Ukrainian](https://github.com/atom/electron/tree/master/docs-translations/uk-UA) - [Russian](https://github.com/atom/electron/tree/master/docs-translations/ru-RU) +- [French](https://github.com/atom/electron/tree/master/docs-translations/fr-FR) ## Quick Start diff --git a/docs-translations/fr-FR/README.md b/docs-translations/fr-FR/README.md new file mode 100644 index 000000000000..666a03e99a3a --- /dev/null +++ b/docs-translations/fr-FR/README.md @@ -0,0 +1,91 @@ +Vérifiez que vous utilisez la bonne version de la documentation. +Le numéro de version devrait faire partie de l'URL de la page. +Si ce n'est pas le cas, vous utilisez probablement la documentation d'une +branche de développement qui peut contenir des changements API qui ne sont pas +compatibles avec votre version d'Electron. Si c'est le cas, vous pouvez changer +de version sur la liste [versions disponibles](http://electron.atom.io/docs/), +ou, si vous utilisez l'interface de GitHub, ouvrez la liste déroulante "Switch +branches/tags" afin de sélectionner le tag de votre version. + +## FAQ + +Avant de créer un ticket, vérifiez que votre problème n'a pas déjà sa réponse +dans la FAQ : + +* [Electron FAQ](faq/electron-faq.md) + +## Guides + +* [Plateformes supportées](tutorial/supported-platforms.md) +* [Distribution de l'Application](tutorial/application-distribution.md) +* [Guide de Soumission Mac App Store](tutorial/mac-app-store-submission-guide.md) +* [Créer une archive](tutorial/application-packaging.md) +* [Utiliser Modules Natifs de Node](tutorial/using-native-node-modules.md) +* [Debugger Processus Principal](tutorial/debugging-main-process.md) +* [Utiliser Selenium et WebDriver](tutorial/using-selenium-and-webdriver.md) +* [Extension DevTools](tutorial/devtools-extension.md) +* [Utiliser le Plugin Pepper Flash](tutorial/using-pepper-flash-plugin.md) +* [Utiliser le Plugin Widevine CDM](tutorial/using-widevine-cdm-plugin.md) + +## Tutoriels + +* [Démarrage Rapide](tutorial/quick-start.md) +* [Intégration Environnement de Bureau](tutorial/desktop-environment-integration.md) +* [Détection des Evènements En ligne/Hors ligne](tutorial/online-offline-events.md) + +## Références API + +* [Synopsis](api/synopsis.md) +* [L'objet Process](api/process.md) +* [Commandes Chromes Supportées](api/chrome-command-line-switches.md) +* [Variables d'Environnement](api/environment-variables.md) + +### Eléments DOM Personnalisés: + +* [Objet `File`](api/file-object.md) +* [Tag ``](api/web-view-tag.md) +* [Fonction `window.open`](api/window-open.md) + +### Modules pour le Processus Principal : + +* [app](api/app.md) +* [autoUpdater](api/auto-updater.md) +* [BrowserWindow](api/browser-window.md) +* [contentTracing](api/content-tracing.md) +* [dialog](api/dialog.md) +* [globalShortcut](api/global-shortcut.md) +* [ipcMain](api/ipc-main.md) +* [Menu](api/menu.md) +* [MenuItem](api/menu-item.md) +* [powerMonitor](api/power-monitor.md) +* [powerSaveBlocker](api/power-save-blocker.md) +* [protocol](api/protocol.md) +* [session](api/session.md) +* [webContents](api/web-contents.md) +* [Tray](api/tray.md) + +### Modules pour le Processus d'Affichage (Page Web) : + +* [desktopCapturer](api/desktop-capturer.md) +* [ipcRenderer](api/ipc-renderer.md) +* [remote](api/remote.md) +* [webFrame](api/web-frame.md) + +### Modules pour les deux Processus : + +* [clipboard](api/clipboard.md) +* [crashReporter](api/crash-reporter.md) +* [nativeImage](api/native-image.md) +* [screen](api/screen.md) +* [shell](api/shell.md) + +## Développement + +* [Style de Code](development/coding-style.md) +* [Hiérarchie du Code Source](development/source-code-directory-structure.md) +* [Différences Techniques par rapport à NW.js (anciennement node-webkit)](development/atom-shell-vs-node-webkit.md) +* [Aperçu du Système de Build](development/build-system-overview.md) +* [Instructions de Build (OS X)](development/build-instructions-osx.md) +* [Instructions de Build (Windows)](development/build-instructions-windows.md) +* [Instructions de Build (Linux)](development/build-instructions-linux.md) +* [Installer un Serveur de Symbol dans le debugger](development/setting-up-symbol-server.md) diff --git a/docs-translations/fr-FR/faq/electron-faq.md b/docs-translations/fr-FR/faq/electron-faq.md new file mode 100644 index 000000000000..1a82bce68009 --- /dev/null +++ b/docs-translations/fr-FR/faq/electron-faq.md @@ -0,0 +1,129 @@ +# Electron FAQ + +## Quand est mise à jour la version de Chrome utilisée par Electron ? + +La version de Chrome qu'utilise Electron est en général mise à jour une ou deux +semaines après la sortie d'une nouvelle version stable de Chrome. + +Etant donné que nous n'utilisons que les versions stables de Chrome, si un fix +important est en beta ou en dev, nous l'intégrerons à la version que nous +utilisons. + +## Quand est mise à jour la version de Node.js utilisée par Electron ? + +Quand une nouvelle version de Node.js sort, nous attendons en général un mois +avant de mettre à jour celle que nous utilisons dans Electron. Ceci afin +d'éviter les bugs introduits par les nouvelles versions, ce qui arrive très +souvent. + +Les nouvelles fonctionnalités de Node.js arrivant la plupart du temps via V8, +et Electron utilisant le V8 du navigateur Chrome, la nouvelle fonctionnalité +JavaScript de la nouvelle version de Node.js est bien souvent déjà dans +Electron. + +## La fenêtre/barre d'état de mon application disparait après quelques minutes. + +Cela se produit quand la variable qui est utilisée pour stocker la fenêtre/barre +d'état est libérée par le ramasse-miettes. + +Nous vous recommandons de lire les articles suivants quand vous rencontrez le +problème : + +* [Management de la Mémoire][memory-management] (Anglais) +* [Portée d'une Variable][variable-scope] (Anglais) + +Si vous voulez corriger rapidement le problème, vous pouvez rendre les variables +globales en changeant votre code de ça : + +```javascript +app.on('ready', function() { + var tray = new Tray('/path/to/icon.png'); +}) +``` + +à ça : + +```javascript +var tray = null; +app.on('ready', function() { + tray = new Tray('/path/to/icon.png'); +}) +``` + +## Je n'arrive pas à utiliser jQuery/RequireJS/Meteor/AngularJS dans Electron. + +A cause de l'intégration de Node.js dans Electron, certains mots-clés sont +insérés dans la DOM, comme `module`, `exports`, `require`. Ceci pose des +problèmes pour certaines bibliothèques qui utilisent les mêmes mots-clés. + +Pour résoudre ce problème, vous pouvez désactiver l'intégration de node dans +Electron : + +```javascript +// Dans le processus principal. +var mainWindow = new BrowserWindow({ + webPreferences: { + nodeIntegration: false + } +}); +``` + +Mais si vous voulez garder la possibilité d'utiliser Node.js et les APIs +Electron, vous devez renommer les mots-clés dans la page avant d'inclure +d'autres bibliothèques : + +```html + + + + +``` + +## `require('electron').xxx` is undefined. + +Lors de l'utilisation des modules d'Electron, vous pouvez avoir une erreur : + +``` +> require('electron').webFrame.setZoomFactor(1.0); +Uncaught TypeError: Cannot read property 'setZoomLevel' of undefined +``` + +Ceci se produit quand vous avez le [module npm `electron`][electron-module] +d'installé, soit en local ou en global, ce qui a pour effet d'écraser les +modules de base d'Electron. + +Vous vérifiez que vous utilisez les bons modules, vous pouvez afficher le +chemin du module `electron` : + +```javascript +console.log(require.resolve('electron')); +``` + +et vérifier si il est de la forme : + +``` +"/path/to/Electron.app/Contents/Resources/atom.asar/renderer/api/lib/exports/electron.js" +``` + +S'il est de la forme `node_modules/electron/index.js`, vous devez supprimer le +module npm `electron`, ou le renommer. + +```bash +npm uninstall electron +npm uninstall -g electron +``` + +Si vous utilisez le module de base mais que vous continuez d'avoir +l'erreur, ça vient probablement du fait que vous utilisez le module dans le +mauvais processus. Par exemple `electron.app` peut uniquement être utilisé +dans le processus principal, tandis que `electron.webFrame` est uniquement +disponible dans le processus d'affichage. + +[memory-management]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Memory_Management +[variable-scope]: https://msdn.microsoft.com/library/bzt2dkta(v=vs.94).aspx +[electron-module]: https://www.npmjs.com/package/electron diff --git a/docs-translations/fr-FR/styleguide.md b/docs-translations/fr-FR/styleguide.md new file mode 100644 index 000000000000..5fe781773c12 --- /dev/null +++ b/docs-translations/fr-FR/styleguide.md @@ -0,0 +1,101 @@ +# Règles de style pour la documentation d'Electron + +Choisissez la section appropriée : [lire la documentation d'Electron](#reading-electron-documentation) +ou [écrire de la documentation pour Electron](#writing-electron-documentation). + +## Ecrire de la documentation pour Electron + +La documentation d'Electron a été écrite en suivant les règles ci-dessous : + +- Maximum un titre `h1` par page. +- Utilisation de `bash` au lieu de `cmd` dans les blocs de code (à cause de la + coloration syntaxique). +- Les titres `h1` devraient reprendre le nom de l'objet (i.e. `browser-window` → + `BrowserWindow`). + - Cependant, les traits d'union sont acceptés pour les noms de fichier. +- Pas de titre directement après un autre, ajoutez au minimum une ligne de + description entre les deux. +- Les entêtes des méthodes sont entre accents graves (backquotes) `code`. +- Les entêtes des évènements sont entre des apostrophes 'quotation'. +- Les listes ne doivent pas dépasser 2 niveaux (à cause du formattage du + markdown). +- Ajouter des titres de section: Evènements, Méthodes de classe, et Méthodes + d'instance. +- Utiliser 'will' au lieu de 'would' lors de la description du retour. +- Les évènements et méthodes sont des titres `h3`. +- Les arguments optionnels sont notés `function (required[, optional])`. +- Les arguments optionnels sont indiqués quand appelés dans la liste. +- La longueur des lignes ne dépasse pas 80 caractères. +- Les méthodes spécifiques à une plateforme sont notées en italique. + - ```### `method(foo, bar)` _OS X_``` +- Préférer 'in the ___ process' au lieu de 'on' + +### Traductions de la Documentation + +Les traductions de la documentation d'Electron sont dans le dossier +`docs-translations`. + +Pour ajouter une nouvelle langue (ou commencer) : + +- Créer un sous-dossier avec comme nom le code langage. +- A l'intérieur de ce dossier, dupliquer le dossier `docs`, en gardant le même + nom de dossiers et de fichiers. +- Traduire les fichiers. +- Mettre à jour le `README.md` à l'intérieur du dossier de langue en mettant les + liens vers les fichiers traduits. +- Ajouter un lien vers le nouveau dossier de langue dans le [README](https://github.com/atom/electron#documentation-translations) + principal d'Electron. + +## Lire la documentation d'Electron + +Quelques indications pour comprendre la syntaxe de la documentation d'Electron. + +### Méthodes + +Un exemple de la documentation d'une [méthode](https://developer.mozilla.org/en-US/docs/Glossary/Method) +(Anglais) + +--- + +`methodName(required[, optional]))` + +* `require` String (**required**) +* `optional` Integer + +--- + +Le nom de la méthode est suivi des arguments de celle-ci. Les arguments +optionnels sont notés entre crochets, avec une virgule si ceux-ci suivent un +autre argument. + +En-dessous de la méthode, chaque argument est détaillé avec son type. +Celui-ci peut être un type générique : +[`String`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String), +[`Number`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number), +[`Object`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object), +[`Array`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array) +ou un type personnalisé comme le [`webContent`](api/web-content.md) d'Electron. + +### Evènements + +Un exemple d'une documentation d'un [évènement](https://developer.mozilla.org/en-US/docs/Web/API/Event) +(Anglais) +--- + +Event: 'wake-up' + +Returns: + +* `time` String + +--- + +L'évènement est une chaine utilisée après un listener `.on`. Si il retourne une +valeur, elle est écrite en dessous ainsi que son type. Si vous voulez écouter et +répondre à l'évènement wake-up, ça donne quelque chose comme : + +```javascript +Alarm.on('wake-up', function(time) { + console.log(time) +}) +```