2016-03-28 11 views
2

私はこのプロジェクトに取り組んでおり、gulpを使用しています。私は(_jadefilesフォルダに)書き込んだヒスイをコンパイルして、自分のプロジェクトの_includesフォルダに.htmlとして出力する必要があります。「gulp-jade」が動作していないか、jade to htmlをコンパイルしています

私は現在のコンパイルと一口で実行しているものは次のとおりです(。技術的にはSCSS) - - BrowserSync サス - Autoprefixer - 私はjekyll-gulp-sass-browser-syncいわゆる「githubの上のキット」で開始した子プロセス(と呼ばれるもの) - そして明らかにジェイド。

注:私もジキルを使用していますが、うまくいけば問題ではありません。

私はDevTipsによって映像を以下のよは、Design+Code Hour 4.1

と呼ばここで彼の現在のコードです:

var gulp  = require('gulp'); 
var browserSync = require('browser-sync'); 
var sass  = require('gulp-sass'); 
var prefix  = require('gulp-autoprefixer'); 
var cp   = require('child_process'); 
var jade  = require('gulp-jade'); 

var messages = { 
    jekyllBuild: '<span style="color: grey">Running:</span> $ jekyll build' 
}; 




/** 
* Build the Jekyll Site 
*/ 
gulp.task('jekyll-build', function (done) { 
    browserSync.notify(messages.jekyllBuild); 
    return cp.spawn('jekyll', ['build'], {stdio: 'inherit'}) 
     .on('close', done); 
}); 




/** 
* Rebuild Jekyll & do page reload 
*/ 
gulp.task('jekyll-rebuild', ['jekyll-build'], function() { 
    browserSync.reload(); 
}); 




/** 
* Wait for jekyll-build, then launch the Server 
*/ 
gulp.task('browser-sync', ['sass', 'jekyll-build'], function() { 
    browserSync({ 
     server: { 
      baseDir: '_site' 
     }, 
     notify: false 
    }); 
}); 




/** 
* Compile files from _scss into both _site/css (for live injecting) and site (for future jekyll builds) 
*/ 
gulp.task('sass', function() { 
    return gulp.src('assets/css/main.scss') 
     .pipe(sass({ 
      includePaths: ['css'], 
      onError: browserSync.notify 
     })) 
     .pipe(prefix(['last 15 versions', '> 1%', 'ie 8', 'ie 7'], { cascade: true })) 
     .pipe(gulp.dest('_site/assets/css')) 
     .pipe(browserSync.reload({stream:true})) 
     .pipe(gulp.dest('assets/css')); 
}); 

彼のヒスイの一気のもの:

/* 
* I'm trying to gulp stuff, too. - 
*/ 

gulp.task('jade', function(){ 
    return gulp.src('_jadefiles/*.jade') 
    .pipe(jade()) 
    .pipe(gulp.dest('_includes')); 
}); 


/** 
* Watch scss files for changes & recompile 
* Watch html/md files, run jekyll & reload BrowserSync 
*/ 
gulp.task('watch', function() { 
    gulp.watch('assets/css/**', ['sass']); 
    gulp.watch(['index.html', '_layouts/*.html', '_includes/*'], ['jekyll-rebuild']); 
    gulp.watch('_jadefiles/*.jade', ['jade']); 
}); 




/** 
* Default task, running just `gulp` will compile the sass, 
* compile the jekyll site, launch BrowserSync & watch files. 
*/ 
gulp.task('default', ['browser-sync', 'watch']); 

は、他のすべてが正常に動作していますこれを実行しなさい。

+0

端末に何かエラーがありますか? – draftdraft88

+0

なし、なし。それは、それが内部の端末をコンパイルしているということさえない。 – LimpingLlama

答えて

0

あなたはどんなエラーでも展開できますか?

gulp jadeは単独で実行されるか、またはスタンドアロンで実行されますか?が実行されていないことを確認してください。

私の直感では、(我々はそれを呼び出して起動する必要があるとして、またはパグ)あなたのヒスイのマークアップでエラーである可能性が高いがありますです

あなたはそのいずれかを投稿することができますか?

+0

奇妙なことに、はい。私はこれを前に投稿したはずです。エラーもありません。申し訳ありませんが、私にとっては、まずは肥満です。 – LimpingLlama

+0

pugマークアップでエラーになることはできません(なぜ... Just _why_ ??)私が言っていることはすべて 'p Lololol' – LimpingLlama

1

少し遅れていますが、似たような答えを探している人を助けてくれることを願って、私は自分自身でこれを理解しようと夢中になりました。

これはちょっとばかげているようですが、同様の問題が発生した後には (jade-gulpはエラーなしで実行されますがindex.htmlは出力されません)、Web上で運のない回答を検索すると、私の.jadeファイル(余分なスペース文字)の構文ミス、それは何にコンパイルされません。

.jadeファイルのコンテンツ全体をコメントにして、gulp-jadeで非常に単純な行(例:h1 hello)を解析してみます。それが機能するかどうかをチェックし、そうであれば、コードのデバッグを開始します。あるいは、元のファイルをコメントアウトするのではなく、簡単なコードで新しい.jadeファイルを作成することもできます。

希望すると助かります!

関連する問題