Как использовать Gruntfile.ls (сценарий Grunt)

Я хочу написать свой Gruntfile.js с жизненным сценарием.

я сделал Gruntfile.js а также Gruntfile.coffee которые оба работают из коробки

Gruntfile.ls должно работать... верно?

Я видел несколько Gruntfile.ls онлайн или это должны быть компиляции (кроме версии.coffee)?

LiveScript

(Ошибка при звонке $ grunt)

A valid Gruntfile could not be found. Please see the getting started guide for
more information on how to configure grunt: http://gruntjs.com/getting-started
Fatal error: Unable to find Gruntfile.

Gruntfile.ls

#global module:false

module.exports = (grunt) ->

  # Project configuration.
  grunt.init-config {}=

    meta:
      version: \0.0.1

    livescript:
      src:
        files:
          "build/js/main.js": "src/scripts/main.ls"

    watch:
     livescript:
        files: <[src/scripts/**/*.ls]>
        tasks: <[livescript]>
        options: {+livereload}

  # load tasks
  grunt.loadNpmTasks \grunt-livescript
  grunt.loadNpmTasks \grunt-contrib-watch

  # register tasks
  grunt.registerTask \default, <[livescript]>

компилируется:

(работает при звонке $ grunt)

Gruntfile.js

module.exports = function(grunt){
  grunt.initConfig({
    meta: {
      version: '0.0.1'
    },
    livescript: {
      src: {
        files: {
          "build/js/main.js": "src/scripts/main.ls"
        }
      }
    },
    watch: {
      livescript: {
        files: ['src/scripts/**/*.ls'],
        tasks: ['livescript'],
        options: {
          livereload: true
        }
      }
    }
  });
  grunt.loadNpmTasks('grunt-livescript');
  grunt.loadNpmTasks('grunt-contrib-watch');
  return grunt.registerTask('default', ['livescript']);
};

2 ответа

Решение

Используйте это как свой Gruntfile.js:

require('LiveScript');

module.exports = function (grunt) {
    require('./Gruntfile.ls')(grunt);
}

Требуется LiveScript пакет от нпм.

Я предпочитаю хранить основной Gruntfile в js, а задачи в ls.

Пример настройки:

require("LiveScript")
module.exports = function(grunt){
  require('load-grunt-tasks')(grunt) // autoload npmtasks from package.json
  require('load-grunt-config')(grunt) // lets you keep each task in separate file
}

На самом деле, я использую свою собственную вилку load-grunt-config находится по https://github.com/wolfflow/load-grunt-config/tree/beta/0.8.0

если вы хотите попробовать это, просто добавьте следующую строку в ваш файл package.json:

"load-grunt-config": "git://github.com/wolfflow/load-grunt-config.git#beta/0.8.0"

а потом беги npm install,

Другие вопросы по тегам