Comment configurer Brunch a l'aide d'une Regex ?

Indiquer mes dossiers publics a Brunch via une Regex

L'auteur de ce sujet a trouvé une solution à son problème.
Auteur du sujet

Bonjour à tous !

Je commence à apprendre Brunch afin d'essayer d'avoir un meilleur workflow. Mon but est ainsi d'avoir d'un coté une application en développement, avec une organisation des fichers qui m'est propre et d'utiliser brunch pour concaténer les fichers, les minifiers etc dans un dossier production.

Mon architectures de dossiers est la suivante :

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
app/
---assets/
------img
------css
------js
---components/
------home/
---------homeCtrl.js
---------homeTemplate.html
------inscription/
---------inscriptionCtrl.js
---------inscriptionTemplate.html
---static/
------pleins de fichiers ici (utilisation de nw.js)
public/
node_modules/
brunch-config.js
package.json

Voici mon ficher de config de brunch :

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
exports.config = {
    "paths": {
        "watched": ["app"],
        "public": "public"
    },
    "files": {
        "stylesheets": {
            "joinTo": "css/app.min.css"
        },
        "javascripts": {
            "joinTo": "js/app.min.js",
            "order": {
                "after": ["app\assets\js\angular-min.js"]
            }
        }
    },
    "conventions": {
        "assets": /static[\\/]/
    },
    "modules": {
        "wrapper": false,
        "definition": false
    }
}

Ce que je voudrais faire et qui me pose problème c'est :

  • copier le contenu du dossier "app/img" dans un dossier "public/img
  • copier l'ensemble des fichiers de templates (du type homeTemplate.html) dans un dossier "templates" dans le dossier public.
  • mon fichier concaténé pour le js (app.min.js) ne commence par le fichier angular et je ne comprends pas pourquoi…

Pour les deux premiers problèmes il faut je penses configurer cette ligne :

1
2
3
"conventions": {
        "assets": /static[\\/]/
    },

Le problème c'est que je n'y connait rien en regex et que je sais absolument pas comment lui dire de mettre les images et surtout les templates…

Pour le 3éme problème j'avoue ne pas comprendre non plus l'origine du problème.

Merci d'avance pour votre aide !

Édité par Demandred

"Il est vraiment regrettable que tous les gens qui savent parfaitement comment diriger un pays soient trop occupés à conduire des taxis et à couper des cheveux"

+0 -0
Staff

Brunch n'est pas vraiment fait pour ça. A la différence de ses concurrents, brunch est opinionated, basé sur des conventions. Un peu comme ember comparé à angular.

Du coup soit tu utilises ses conventions (par exemple avec un squelette brunch pour angular), soit tu prends un outil configurable.

Je recommande vraiment pas de prendre un outil qui force des conventions pour ensuite ne pas respecter ces conventions.

Je parle de JavaScript et d'autres trucs sur mon blog : https://draft.li/blog

+0 -0
Auteur du sujet

Hum je n'aime pas du tout l'organisation des squelettes brunch pour angular, et surtout j'ai besoin d'une organisation un peu spéciale vu que j'utilise nw.js !

Pourquoi je ne devrait pas essayer de configurer la regex pour lui faire copier les fichers dont j'ai besoin de la façon dont j'ai besoin ?

Quel autre outil me conseille-tu pour garder ma structure de fichiers et avoir une build correct ? Je découvre tout ça et il m'a semblé que Brunch était le plus efficace et le moins verbeux des outils de builds mais on trouve peu de tutos… Je voudrais juste un outil pour compiler les fichiers js (en commençant par ceux d'angular) et css, copier quelque part mes templates html, et copier les fichiers statics (ceux de nw et ceux du genre img, fonts etc).

"Il est vraiment regrettable que tous les gens qui savent parfaitement comment diriger un pays soient trop occupés à conduire des taxis et à couper des cheveux"

+0 -0
Staff

Hum je n'aime pas du tout l'organisation des squelettes brunch pour angular, et surtout j'ai besoin d'une organisation un peu spéciale vu que j'utilise nw.js !

Pourquoi je ne devrait pas essayer de configurer la regex pour lui faire copier les fichers dont j'ai besoin de la façon dont j'ai besoin ?

Je l'ai dit : il y a deux types d'outils pour faire ce que tu veux faire. Ceux qui sont compliqués à configurer parce qu'ils te laissent tout faire, ceux qui sont simples mais dont tu dois suivre les conventions.

Je sais pas trop comment expliquer mieux que ça. Prends le framework .NET : t'as tout ce qu'il faut pour faire des sites web avec un back et un front, MVC. Par contre tu te démerdes pour organiser ton truc. Tu peux faire ce que tu veux : un dossier par "module" avec un sous-dossier par "fonction" (template, controleur, modèle, …). Un dossier par fonction puis dedans un dossier par module. Pas de dossiers du tout. Les templates en base de donnée et les modèles dans les controleurs. Tout ce que tu veux.

Prends Ruby on Rails : t'as aussi tout ce que tu veux pour faire la même chose. Par contre tu choisis pas, tu suis les conventions. Tes modèles doivent être dans TEL dossier avec TEL nom de fichier qui définit TELLE classe.

Quel autre outil me conseille-tu pour garder ma structure de fichiers et avoir une build correct ? Je découvre tout ça et il m'a semblé que Brunch était le plus efficace et le moins verbeux des outils de builds mais on trouve peu de tutos…

Oui, tu as pris Brunch parce que c'est simple à configurer, pas verbeux, simple à utiliser. Y'a une bonne raison à ces avantages : il t'impose des conventions et part du principe que tu les suis. C'est pour ça que Brunch est attirant, et c'est pour ça que tu l'as choisi. Du coup, à quoi bon faire tout différent ?

Je voudrais juste un outil pour compiler les fichiers js (en commençant par ceux d'angular) et css, copier quelque part mes templates html, et copier les fichiers statics (ceux de nw et ceux du genre img, fonts etc).

Y'a 50 outils qui font ça de façon non-opinionated. Gulp, Grunt, Webpack, Broccoli… Perso j'aime bien Broccoli.

Je parle de JavaScript et d'autres trucs sur mon blog : https://draft.li/blog

+0 -0
Vous devez être connecté pour pouvoir poster un message.
Connexion

Pas encore inscrit ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte