Skip to content

Instantly share code, notes, and snippets.

@ikekou
Last active August 29, 2015 14:04
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ikekou/b6b4d90d7a16931660d6 to your computer and use it in GitHub Desktop.
Save ikekou/b6b4d90d7a16931660d6 to your computer and use it in GitHub Desktop.
[node.js][gulp.js][coffeescript] gulpつかってみたテンプレ
# modules
gulp = require 'gulp'
connect = require 'gulp-connect'
coffee = require 'gulp-coffee'
gutil = require 'gulp-util'
sourcemaps = require 'gulp-sourcemaps'
concat = require 'gulp-concat'
gulpif = require 'gulp-if'
uglify = require 'gulp-uglify'
# paths
root_dir = 'src/'
coffee_dir = root_dir+'content/_coffee/'
js_dir = root_dir+'content/js/'
html_files = root_dir+'**/*.html'
coffee_files = coffee_dir+'**/*.coffee'
# arguments
console.log 'env : ', gutil.env
isRelease = gutil.env.release || false
console.log 'isRelease : ', isRelease
# server
gulp.task 'connect', ->
connect.server
root: 'src'
livereload: true
return
# html
gulp.task 'html', ->
gulp.src html_files
.pipe connect.reload()
return
# coffee
gulp.task 'coffee', ->
gulp.src([
coffee_dir+'core.coffee'
coffee_dir+'common.coffee'
coffee_dir+'page1.coffee'
coffee_dir+'page2.coffee'
coffee_dir+'page3.coffee'
coffee_dir+'main.coffee'
])
.pipe concat 'app.coffee'
.pipe gulpif(not isRelease, sourcemaps.init())
.pipe coffee()
.on 'error', (event) ->
gutil.log event
gutil.beep()
return
.pipe gulpif(not isRelease, sourcemaps.write())
.pipe gulpif(isRelease, uglify())
.pipe gulp.dest(js_dir)
.pipe connect.reload()
return
# watch
gulp.task 'watch', ->
gulp.watch [html_files], ['html']
gulp.watch [coffee_files], ['coffee']
return
# default
gulp.task 'default', [
'connect'
'watch'
]
{
"name": "gulp-example-projext",
"version": "0.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC",
"devDependencies": {
"gulp-sourcemaps": "^1.1.0",
"gulp-if": "^1.2.4",
"gulp-util": "^3.0.0",
"gulp-concat": "^2.3.4",
"gulp-uglify": "^0.3.1",
"gulp-coffee": "^2.1.1",
"gulp-connect": "^2.0.6",
"gulp": "^3.8.6"
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment