From 86dfcd1a96396fba1e65d9ffad3c34a5d8dc41a6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zlatan=20Vasovi=C4=87?= Date: Sun, 9 Mar 2014 13:04:48 +0100 Subject: [PATCH] Add build-glyphicons-data log Closes #12987 --- Gruntfile.js | 2 +- grunt/bs-glyphicons-data-generator.js | 11 +++++++++-- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/Gruntfile.js b/Gruntfile.js index 59205a25a4..b4438e89d3 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -453,7 +453,7 @@ module.exports = function (grunt) { // This can be overzealous, so its changes should always be manually reviewed! grunt.registerTask('change-version-number', 'sed'); - grunt.registerTask('build-glyphicons-data', generateGlyphiconsData); + grunt.registerTask('build-glyphicons-data', function () { generateGlyphiconsData.call(this, grunt); }); // task for building customizer grunt.registerTask('build-customizer', ['build-customizer-html', 'build-raw-files']); diff --git a/grunt/bs-glyphicons-data-generator.js b/grunt/bs-glyphicons-data-generator.js index b711943678..82dc727b6f 100644 --- a/grunt/bs-glyphicons-data-generator.js +++ b/grunt/bs-glyphicons-data-generator.js @@ -7,7 +7,7 @@ 'use strict'; var fs = require('fs'); -module.exports = function generateGlyphiconsData() { +module.exports = function generateGlyphiconsData(grunt) { // Pass encoding, utf8, so `readFileSync` will return a string instead of a // buffer var glyphiconsFile = fs.readFileSync('less/glyphicons.less', 'utf8'); @@ -17,6 +17,7 @@ module.exports = function generateGlyphiconsData() { var iconClassName = /^\.(glyphicon-[^\s]+)/; var glyphiconsData = '# This file is generated via Grunt task. **Do not edit directly.**\n' + '# See the \'build-glyphicons-data\' task in Gruntfile.js.\n\n'; + var glyphiconsYml = 'docs/_data/glyphicons.yml'; for (var i = 0, len = glyphiconsLines.length; i < len; i++) { var match = glyphiconsLines[i].match(iconClassName); @@ -30,5 +31,11 @@ module.exports = function generateGlyphiconsData() { fs.mkdirSync('docs/_data'); } - fs.writeFileSync('docs/_data/glyphicons.yml', glyphiconsData); + try { + fs.writeFileSync(glyphiconsYml, glyphiconsData); + } + catch (err) { + grunt.fail.warn(err); + } + grunt.log.writeln('File ' + glyphiconsYml.cyan + ' created.'); };