Skip to content

Traduction de modules.md #21

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 10 commits into from
Oct 2, 2017
Merged

Traduction de modules.md #21

merged 10 commits into from
Oct 2, 2017

Conversation

MachinisteWeb
Copy link
Member

Je commence cette traduction. Je laisse cette PR pour recueiller vos avis à l'avance si vous le souhaitez !

@MachinisteWeb
Copy link
Member Author

MachinisteWeb commented Sep 30, 2017

Je corrige les fautes d'ortho que j'arrive a trouver et je passe ça en relecture !

Signed-off-by: Bruno Lesieur <[email protected]>
@MachinisteWeb
Copy link
Member Author

Voilà c'est prêt ! Pas d'inquiétude pour le nombre de ligne qui diffère, j'ai déjà PR l'original avec les changements clean qui vont bien ! nuxt#267


Another point of using modules is that they can be refactored and packaged out of the project and released as NPM packages
so you can share and use high quality integration and solutions from nuxt community with no pain! You might interested in modules if you:
C'est pourquoi Nuxt introduit un système modulaire d'ordre supérieur pour facilement étendre ses fonctionnalités de base. Les modules sont en fait des **fonctions** qui sont appelées de manière séquentielle lors de la phase de démarrage de Nuxt. Le cœur va attendre que chacun d'entre eux soient chargés avant de continuer son travail. Ainsi vous avez la possibilité de personnaliser le moindre aspect de Nuxt. Grâce à sa conception modulaire ainsi que webpack [Tapable](https://github.com/webpack/tapable), il peut également abonner des points d'ancrage (« hooks ») pour certaines étapes comme l'initialisation de la phase de build.
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"chacun d'entre eux soit chargé"

Accord avec chacun qui est invariable

- vous êtes un membre d'une **équipe agile** qui souhaite mettre en place son projet instantanément et éviter de **réinventer** la roue pour les tâches habituelles comme des mécanismes Google Analytics pour vos nouveaux projets,
- vous êtes une **société** qui accorde de l'importance à la **qualité** et la **réutilisabilité** de ses projets,
- Vous êtes un membre super enthousiaste de la communauté *Open Source* et que vous souhaitez *partager* avec la communauté d'une façon simple.
- Vous êtes un développeur flaimard et vous n'aimez pas vous encombrer avec des détails comme le paramétrage de chaque nouvelle bibliothèque ou intégration (quelqu'un l'aura surement déjà fait pour vous, ou vous pourriez demander à quelqu'un de la communauté de le faire).
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"flémard"

J'éviterais flémard/paresseux. Pour moi dans ce contexte c'est plutôt être un développeur futé ;)

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Mais un bon développeur est un développeur flémard !

Le terme est probablement péjoratif. Mais je suis pas sur non plus que se soit futé qui conviennent ici. Je vais opter pour « occupé »

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Mais un bon développeur est un développeur flémar

Ahahah oui je plussoie ^^

Le terme est probablement péjoratif. Mais je suis pas sur non plus que se soit futé qui conviennent ici. Je vais opter pour « occupé »

Parfait!

- vous êtes une **société** qui accorde de l'importance à la **qualité** et la **réutilisabilité** de ses projets,
- Vous êtes un membre super enthousiaste de la communauté *Open Source* et que vous souhaitez *partager* avec la communauté d'une façon simple.
- Vous êtes un développeur flaimard et vous n'aimez pas vous encombrer avec des détails comme le paramétrage de chaque nouvelle bibliothèque ou intégration (quelqu'un l'aura surement déjà fait pour vous, ou vous pourriez demander à quelqu'un de la communauté de le faire).
- Vous êtes fatigué de l'utilisation des API bas niveau et de leur changement continue et vous souhaiter **simplement des choses fonctionnelles**.
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"changement continu"

They can be packaged as NPM modules or directly included in project source code.
## Écrire un module basique

Comme précédemment mentionné, les modules sont juste de simples fonctions. Ils peuvent être packagés en tant que modules npm ou directement inclus dans le code source du projet.
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"Comme précédemment mentionnés,"

Accord avec "modules"

You can directly access to Nuxt options using this reference.
This is _nuxt.config.js_ with all default options assigned to and can be used for shared options between modules.

Vous pouvez accéder directement aux options de Nuxt en utilisant cette référence. C'est la configuration `nuxt.config.js` avec ses options par défaut assignées qui peut être utilisées en tant qu'options partagées à travers les modules.
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"qui peuvent être"

So if you are a module developer at least warn users about that if using them.
For heavily async modules or better legacy support you can use either a bundler to transform it for older node comparability or using promise method.
</p>
<p class="Alert Alert--orange">Faites attention avec `async` et `await`, ils sont supportés uniquement depuis Node.js 7.2+. Donc si vous êtes un développeur de modules, n'oubliez pas d'avertir vos utilisateurs si vous les utilisez. Pour des modules asynchrones plus stables ou avec un support de version antérieur vous pouvez utiliser un paqueteur pour les transformer en de vieille version de compatibilité Node.js ou utilisant des méthodes de promesse.</p>
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"version antérieure"

### Top level options
Sometimes it is more convenient if we can use top level options while register modules in `nuxt.config.js`.
So we can combine multiply option sources.
Parfois il est plus simple d'utiliser des options de hauts niveaux lors de l'abonnement de modules à `nuxt.config.js`. Donc nous pouvons combiner les options de sources multiples.
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"haut niveau"

For this we can use `this.addPlugin` helper.
### Fournir des plugins

Il est courant que les modules fournissent un ou plusieurs plugins quand ils sont ajoutés. Par exemple le module [bootstrap-vue](https://bootstrap-vue.js.org) nécessite d'être enregistrer lui-même dans Vue. Pour cela, nous pouvons utiliser la fonction utilitaire `this.addPlugin`.
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"d'être enregistré"

config.module.rules.push({
test: /\.foo$/,
use: [...]
})

// Customize existing loaders
// Refer to source code for Nuxt internals:
// Personnalisation des loaders existant
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"Personnalisation des loaders existants"

Copy link
Member Author

@MachinisteWeb MachinisteWeb left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Merci @rspt ! C'est dans la boîte. Juste une proposition de « occupé » à la place de « flémard »

- vous êtes un membre d'une **équipe agile** qui souhaite mettre en place son projet instantanément et éviter de **réinventer** la roue pour les tâches habituelles comme des mécanismes Google Analytics pour vos nouveaux projets,
- vous êtes une **société** qui accorde de l'importance à la **qualité** et la **réutilisabilité** de ses projets,
- Vous êtes un membre super enthousiaste de la communauté *Open Source* et que vous souhaitez *partager* avec la communauté d'une façon simple.
- Vous êtes un développeur flaimard et vous n'aimez pas vous encombrer avec des détails comme le paramétrage de chaque nouvelle bibliothèque ou intégration (quelqu'un l'aura surement déjà fait pour vous, ou vous pourriez demander à quelqu'un de la communauté de le faire).
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Mais un bon développeur est un développeur flémard !

Le terme est probablement péjoratif. Mais je suis pas sur non plus que se soit futé qui conviennent ici. Je vais opter pour « occupé »

Signed-off-by: Bruno Lesieur <[email protected]>
@MachinisteWeb
Copy link
Member Author

Top @rspt ! @Kocal ou @forresst ? Une seconde relecture ?

Copy link

@forresst forresst left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Quelques erreurs et remarques

Modules are basically **functions** which are called sequentially when booting Nuxt and core awaits for all of them
to be finished before continue it's job. So they have the chance to customize almost any aspect of Nuxt and thanks to modular design of nuxt itself and Webpack [Tapable](https://github.com/webpack/tapable) technology they can also register hooks
for certain entry points like builder initialization.
Pendant votre phase d'amélioration du passage du développement à la production avec Nuxt, vous allez découvrir que les fonctionnalités offertes par celui-ci ne sont pas complètes. Faire la configuration et ajouter les plugins de chaque projet est répétitif, ennuyant et prend du temps. Ajouter chaque nouvelle fonctionnalité dans Nuxt serait impossible sans rendre le framework lourd.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tout en développant une application de qualité du niveau de la production en utilisant Nuxt, ...

la traduction actuelle me paraît incorrecte

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oui. J'ai bloqué sur cette traduction. Je trouve ta proposition étrange aussi cependant :)

Que penses-tu tout simplement de « Pendant la phase d'amélioration de votre application pour la production » ?

Parceque ce dont il est question ici, c'est exactement ça : tout ce que vous aller améliorer dans votre application pour qu'elle soit optimisée pour la production et facile à mettre en production. Et il s'avère que dans cette quête, on va utiliser plus que ce que fournit Nuxt de base.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pendant la phase d'amélioration de votre application pour la production

👍

this.addPlugin({
src: path.resolve(__dirname, 'plugin.js'),
options: {
// Nuxt will replace options.ua with 123 when copying plugin to project
// Nuxt va remplacer `options.ua` par `123` quand il va copier le plugin au projet.
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

va remplacer => remplacera
va copier => copiera


**module.js**

```js
module.exports = function (moduleOptions) {
if (moduleOptions.fontAwesome !== false) {
// Add font-awesome
// Ajouter Font Awesome
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ajouter => Ajoute

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Je vais mettre « Ajout de ». Ce qui me gène avec « ajoute » c'est que c'est typiquement la description de ce que fait une méthode. Hors là c'est pas vraiment le cas, c'est surtout l'utilisateur qui fait l'action en augmentant le nombre d'élément dans l'option css.

// Source can be buffer too

// Cela va générer `.nuxt/dist/info.txt' avec les contenus des variables d'information.
// La source peut être mise en tampon aussi
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

La source peut être aussi mise en tampon aussi

this.nuxt.plugin('module', moduleContainer => {
// This will be called when all modules finished loading
// Ceci va être appelé quand tous les modules auront fini d'être chargés
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

va être => sera

this.nuxt.plugin('build', async builder => {
// This Will be called once when builder created
// Ceci va être appelé une fois le build fait
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

va être => sera

builder.plugin('compile', ({compiler}) => {
// This will be run just before webpack compiler starts
// Ceci va être lancé juste avant que le compilateur de webpack démarre
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

va être => sera

})
})

// Add hook for generate
// Ajouter un point d'ancrage à la génération
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ajouter => Ajoute

this.nuxt.plugin('generate', async generator => {
// This Will be called when a nuxt generate starts
// Ceci va être appelé quand la génération de Nuxt va commencer
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

va être => sera

<p class="Alert">Il y a encore bien de points d'ancrage et de possibilités pour les modules. Consultez les [mécanismes de Nuxt](/api/internals) pour en apprendre plus à propos de l'API interne de Nuxt.</p>
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Il y a encore bien de points d'ancrage => Il existe beaucoup d'autres points d'ancrage

Signed-off-by: Bruno Lesieur <[email protected]>
Signed-off-by: Bruno Lesieur <[email protected]>
Copy link

@forresst forresst left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Des oublis (désolé)

this.nuxt.plugin('generate', async generator => {
// This Will be called when a nuxt generate starts
// Ceci va être appelé quand la génération de Nuxt va commencer
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ceci va être appelé quand la génération de Nuxt va commencer => Ceci sera appelé quand la génération de Nuxt commencera

this.nuxt.plugin('build', async builder => {
// This Will be called once when builder created
// Ceci va être appelé une fois le build fait
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ceci va être appelé une fois le build fait => Ceci sera appelé une fois le build fait

this.nuxt.plugin('renderer', renderer => {
// This will be called when renderer was created
// Ceci va être appelé quand le moteur de rendu aura été créé
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ceci va être appelé quand le moteur de rendu aura été créé => Ceci sera appelé quand le moteur de rendu aura été créé

this.nuxt.plugin('module', moduleContainer => {
// This will be called when all modules finished loading
// Ceci va être appelé quand tous les modules auront fini d'être chargés
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ceci va être appelé quand tous les modules auront fini d'être chargés => Ceci sera appelé quand tous les modules auront fini d'être chargés

Signed-off-by: Bruno Lesieur <[email protected]>
@MachinisteWeb
Copy link
Member Author

Pas de soucis @forresst !

C'est dans la boîte !

@MachinisteWeb MachinisteWeb merged commit 177e1dc into working Oct 2, 2017
@MachinisteWeb
Copy link
Member Author

Le site fr part live ! Je voudrais passer cette dernière page. Si il y a encore des soucis, je les ajouterais manuellement dans la prochaine monté !

@MachinisteWeb MachinisteWeb deleted the modules branch October 2, 2017 14:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants