gulp-sourcemapsを使う。sourcemaps.writeを引数なしで呼ぶと生成したJSの中にSoucemapを埋め込むが、それだと ChromeDevToolsでうまく動かなかった。"./"を渡すとJSと同じ場所にSoucemapを生成してくれる。これだとちゃんと機能した。
var sourcemaps = require('gulp-sourcemaps');
var mainProject = typescript.createProject(compilerOptions);
gulp.task('compile', function(){
var result = gulp.src(mainDir + '/**/*.ts')
.pipe(sourcemaps.init())
.pipe(typescript(mainProject));
return result.js.pipe(sourcemaps.write("./")).pipe(gulp.dest(publicDir));
});
参考: