Merge pull request #4471 from rsezille/master

Docs: Start french translation
This commit is contained in:
Cheng Zhao 2016-02-16 16:22:55 +08:00
commit 5b4f29e7ed
4 changed files with 322 additions and 0 deletions

View file

@ -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

View file

@ -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 `<webview>`](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)

View file

@ -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
<head>
<script>
window.nodeRequire = require;
delete window.require;
delete window.exports;
delete window.module;
</script>
<script type="text/javascript" src="jquery.js"></script>
</head>
```
## `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

View file

@ -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)
})
```