Мне нужен этот объект: https://github.com/gruntjs/grunt-contrib-watch/blob/master/tasks/watch.js#L33
поэтому я могу передать эту строку в эту подзадачу (я использую grunt-shell и написать-хорошо):
grunt.initConfig({
shell: {
checkAll: {
command: 'write-good *.md --no-passive',
options: {
//callback: checkForErrors
}
},
checkSpecified: {
command: 'write-good <%= filepath %> --no-passive',
options: {
//callback: checkForErrors
}
}
},
watch: {
docs: {
files: '**/*.md',
tasks: ['shell:checkSpecified'],
options: {
livereload: true
}
}
}
});
grunt.registerTask('default', "Checking for good prose, excluding passive voice.", function(){
grunt.task.run('shell:checkAll', 'watch');
});
Надеюсь, сопровождающие Grunt увидят эту относительно грубую идею и помогут мне :) У меня OS X 10.9.4, пожалуйста, дайте мне знать, если я могу предоставить любую другую соответствующую информацию.
grunt.event.on('watch', function(action, filepath){});
, но теперь я не знаю, как установить свойствоfilepath.name
(и, возможно, потребовать его) перед выполнением задачиcheckSpecified
. - person JaKXz   schedule 23.07.2014grunt.config.set('filepath', filepath);
помещает имя в объект конфигурации, но использование<%= filepath %>
в командной строке терпит неудачу, потому что он думает, что я не указываю файл... но в моей функцииon watch
я могу получить объект конфигурации и увидеть, что он указал правильное имя файла. Я так близок! - person JaKXz   schedule 23.07.2014grunt.config.set('filepath', grunt.config.escape(filepath));
, поскольку во всех именах файлов есть.
. Все равно не повезло :( - person JaKXz   schedule 23.07.2014