-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathgulpfile.js
89 lines (77 loc) · 2.67 KB
/
gulpfile.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
var gulp = require('gulp');
var concat = require('gulp-concat');//ñêëåèâàåò ôàéëû
var cssmin = require('gulp-cssmin');
var uglify = require('gulp-uglify');//ìèíèôèöèðóåò js
var plumber = require('gulp-plumber');//îòñëåæèâàåò è ïðè îøèáêàõ äàåò ñðàáîòàòü âñåìó îñòàëüíîìó
var autoprefixer = require('gulp-autoprefixer');
var imagemin = require('gulp-imagemin');
var webserver = require('gulp-webserver');
var notify = require("gulp-notify");//ñîîáùåíèå î âûïîëíåíîì äåéñòâèè
var jade = require('gulp-jade');
var nib = require('nib'); //Mixins äëÿ Stylus
var stylus = require('gulp-stylus');
gulp.task('default', ['jade', 'stylus', 'cssMin', 'uglify', 'imageMin', 'webserver', 'watch']);
gulp.task('jade', function() {
gulp.src('./assets/templates/pages/index.jade')
.pipe(plumber())
.pipe(jade({
pretty: true
})) // Ñîáèðàåì Jade òîëüêî â ïàïêå ./assets/template/ èñêëþ÷àÿ ôàéëû ñ _*
.on('error', console.log) // Åñëè åñòü îøèáêè, âûâîäèì è ïðîäîëæàåì
.pipe(gulp.dest('./public/')) // Çàïèñûâàåì ñîáðàííûå ôàéëû
.pipe(notify("Done jade!"));
});
gulp.task('stylus', function() {
gulp.src('./assets/styles/common.styl')
.pipe(plumber())
.pipe(stylus({
use: (nib())
}))
.on('error', console.log)
.pipe(gulp.dest('./assets/css/'))
.pipe(notify("Done stylus!"));
});
gulp.task('cssMin', function() {
gulp.src('./assets/css/*.css')
.pipe(plumber())
.pipe(concat('all.min.css'))
.pipe(autoprefixer())
.pipe(cssmin())
.pipe(gulp.dest('./public/css/'))
.pipe(notify("Done cssMin!"));
});
gulp.task('uglify', function() {
gulp.src(['./assets/scripts/jquery-2.1.3.js', './assets/scripts/jquery.lazyload.js', './assets/scripts/*.js'])
.pipe(plumber())
.pipe(concat('all.min.js'))
.pipe(uglify({
compress:true
}))
.pipe(gulp.dest('./public/js/'))
.pipe(notify("Done uglify!"));
});
gulp.task('imageMin', function() {
gulp.src('./assets/images/**/*.*')
.pipe(plumber())//îòñëåæèâàåò è ïðè îøèáêàõ äàåò ñðàáîòàòü âñåìó îñòàëüíîìó
.pipe(imagemin({
optimizationLevel: 7
}))
.pipe(gulp.dest('./public/images/'))
.pipe(notify("Done imageMin!"));
});
gulp.task('webserver', function() {
gulp.src('./') //óêàçûâàåì âñþ ïàïêó moi_start(ïî äðóãîìó íå ôóðû÷èò)
.pipe(webserver({
livereload: true,
directoryListing: true,
open: true,
port: 9000
}));
});
gulp.task('watch', function() {
gulp.watch('./assets/**/*.jade', ['jade']);
gulp.watch('./assets/**/*.styl', ['stylus']);
gulp.watch('./assets/**/*.css', ['cssMin']);
gulp.watch('./assets/**/*.js', ['uglify']);
gulp.watch('./assets/images/**/*.*', ['imageMin']);
});