Gulp now pretty formats JS and CSS

This commit is contained in:
Wes Cossick 2015-09-01 20:26:52 -05:00
parent b43b99e50d
commit 8218391cfd
5 changed files with 86 additions and 1222 deletions

View File

@ -4,7 +4,7 @@ var gulp = require('gulp'),
concat = require('gulp-concat'), concat = require('gulp-concat'),
header = require('gulp-header'), header = require('gulp-header'),
pkg = require('./package.json'), pkg = require('./package.json'),
beautify = require('gulp-beautify'); prettify = require('gulp-jsbeautifier');
var banner = ['/**', var banner = ['/**',
' * <%= pkg.name %> v<%= pkg.version %>', ' * <%= pkg.name %> v<%= pkg.version %>',
@ -46,10 +46,16 @@ gulp.task('styles', function() {
.pipe(gulp.dest('dist')); .pipe(gulp.dest('dist'));
}); });
gulp.task('beautify', function() { gulp.task('prettify-js', function() {
gulp.src('./src/js/simplemde.js') gulp.src('./src/js/simplemde.js')
.pipe(beautify({indentSize: 4})) .pipe(prettify({js: {braceStyle: "collapse", indentChar: "\t", indentSize: 1, maxPreserveNewlines: 3, spaceBeforeConditional: false}}))
.pipe(gulp.dest('./src/js/test')) .pipe(gulp.dest('./src/js'));
}); });
gulp.task('default', ['scripts', 'styles', 'beautify']); gulp.task('prettify-css', function() {
gulp.src('./src/css/simplemde.css')
.pipe(prettify({css: {indentChar: "\t", indentSize: 1}}))
.pipe(gulp.dest('./src/css'));
});
gulp.task('default', ['scripts', 'styles', 'prettify-js', 'prettify-css']);

View File

@ -20,7 +20,7 @@
"gulp-uglify": "*", "gulp-uglify": "*",
"gulp-concat": "*", "gulp-concat": "*",
"gulp-header": "*", "gulp-header": "*",
"gulp-beautify": "*" "gulp-jsbeautifier": "*"
}, },
"repository": { "repository": {
"type": "git", "type": "git",

View File

@ -13,7 +13,7 @@
} }
.CodeMirror-fullscreen { .CodeMirror-fullscreen {
background:#fff; background: #fff;
position: fixed !important; position: fixed !important;
top: 50px; top: 50px;
left: 0; left: 0;
@ -43,7 +43,8 @@
border-top-right-radius: 4px; border-top-right-radius: 4px;
} }
.editor-toolbar:after, .editor-toolbar:before { .editor-toolbar:after,
.editor-toolbar:before {
display: block; display: block;
content: ' '; content: ' ';
height: 1px; height: 1px;
@ -57,7 +58,9 @@
margin-top: 8px margin-top: 8px
} }
.editor-toolbar:hover, .editor-wrapper input.title:focus, .editor-wrapper input.title:hover { .editor-toolbar:hover,
.editor-wrapper input.title:focus,
.editor-wrapper input.title:hover {
opacity: .8 opacity: .8
} }
@ -89,7 +92,8 @@
cursor: pointer; cursor: pointer;
} }
.editor-toolbar a.active, .editor-toolbar a:hover { .editor-toolbar a.active,
.editor-toolbar a:hover {
background: #fcfcfc; background: #fcfcfc;
border-color: #95a5a6; border-color: #95a5a6;
} }
@ -112,8 +116,8 @@
font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
font-size: 65%; font-size: 65%;
vertical-align: text-bottom; vertical-align: text-bottom;
position:relative; position: relative;
top:2px; top: 2px;
} }
.editor-toolbar a.fa-header-1:after { .editor-toolbar a.fa-header-1:after {
@ -157,8 +161,8 @@
.editor-preview { .editor-preview {
padding: 10px; padding: 10px;
position: absolute; position: absolute;
width:100%; width: 100%;
height:100%; height: 100%;
top: 0; top: 0;
left: 0; left: 0;
background: #fafafa; background: #fafafa;
@ -191,16 +195,21 @@
display: block display: block
} }
.editor-preview>p, .editor-preview-side>p { .editor-preview>p,
.editor-preview-side>p {
margin-top: 0 margin-top: 0
} }
.editor-preview pre, .editor-preview-side pre { .editor-preview pre,
.editor-preview-side pre {
background: #eee; background: #eee;
margin-bottom: 10px; margin-bottom: 10px;
} }
.editor-preview table td, .editor-preview table th, .editor-preview-side table td, .editor-preview-side table th { .editor-preview table td,
.editor-preview table th,
.editor-preview-side table td,
.editor-preview-side table th {
border: 1px solid #ddd; border: 1px solid #ddd;
padding: 5px; padding: 5px;
} }

View File

@ -125,7 +125,7 @@ function toggleFullScreen(editor) {
// Hide side by side if needed // Hide side by side if needed
var sidebyside = cm.getWrapperElement().nextSibling; var sidebyside = cm.getWrapperElement().nextSibling;
if (/editor-preview-active-side/.test(sidebyside.className)) if(/editor-preview-active-side/.test(sidebyside.className))
toggleSideBySide(editor); toggleSideBySide(editor);
} }
@ -287,7 +287,7 @@ function toggleSideBySide(editor) {
var preview = wrapper.nextSibling; var preview = wrapper.nextSibling;
var toolbarButton = editor.toolbarElements["side-by-side"]; var toolbarButton = editor.toolbarElements["side-by-side"];
if (/editor-preview-active-side/.test(preview.className)) { if(/editor-preview-active-side/.test(preview.className)) {
preview.className = preview.className.replace( preview.className = preview.className.replace(
/\s*editor-preview-active-side\s*/g, '' /\s*editor-preview-active-side\s*/g, ''
); );
@ -299,7 +299,7 @@ function toggleSideBySide(editor) {
* instead of just appearing. * instead of just appearing.
*/ */
setTimeout(function() { setTimeout(function() {
if (!cm.getOption("fullScreen")) toggleFullScreen(editor); if(!cm.getOption("fullScreen")) toggleFullScreen(editor);
preview.className += ' editor-preview-active-side' preview.className += ' editor-preview-active-side'
}, 1); }, 1);
toolbarButton.className += ' active'; toolbarButton.className += ' active';
@ -366,7 +366,7 @@ function togglePreview(editor) {
// Turn off side by side if needed // Turn off side by side if needed
var sidebyside = cm.getWrapperElement().nextSibling; var sidebyside = cm.getWrapperElement().nextSibling;
if (/editor-preview-active-side/.test(sidebyside.className)) if(/editor-preview-active-side/.test(sidebyside.className))
toggleSideBySide(editor); toggleSideBySide(editor);
} }
@ -408,56 +408,47 @@ function _toggleHeading(cm, direction, size) {
var text = cm.getLine(i); var text = cm.getLine(i);
var currHeadingLevel = text.search(/[^#]/); var currHeadingLevel = text.search(/[^#]/);
if(direction !== undefined){ if(direction !== undefined) {
if (currHeadingLevel <= 0) { if(currHeadingLevel <= 0) {
if (direction == 'bigger') { if(direction == 'bigger') {
text = '###### ' + text; text = '###### ' + text;
} else { } else {
text = '# ' + text; text = '# ' + text;
} }
} else if (currHeadingLevel == 6 && direction == 'smaller') { } else if(currHeadingLevel == 6 && direction == 'smaller') {
text = text.substr(7); text = text.substr(7);
} else if (currHeadingLevel == 1 && direction == 'bigger') { } else if(currHeadingLevel == 1 && direction == 'bigger') {
text = text.substr(2); text = text.substr(2);
} else { } else {
if (direction == 'bigger') { if(direction == 'bigger') {
text = text.substr(1); text = text.substr(1);
} else { } else {
text = '#' + text; text = '#' + text;
} }
} }
} } else {
else{ if(size == 1) {
if(size == 1){ if(currHeadingLevel <= 0) {
if (currHeadingLevel <= 0) {
text = '# ' + text; text = '# ' + text;
} } else if(currHeadingLevel == size) {
else if(currHeadingLevel == size){
text = text.substr(currHeadingLevel + 1); text = text.substr(currHeadingLevel + 1);
} } else {
else{
text = '# ' + text.substr(currHeadingLevel + 1); text = '# ' + text.substr(currHeadingLevel + 1);
} }
} } else if(size == 2) {
else if(size == 2){ if(currHeadingLevel <= 0) {
if (currHeadingLevel <= 0) {
text = '## ' + text; text = '## ' + text;
} } else if(currHeadingLevel == size) {
else if(currHeadingLevel == size){
text = text.substr(currHeadingLevel + 1); text = text.substr(currHeadingLevel + 1);
} } else {
else{
text = '## ' + text.substr(currHeadingLevel + 1); text = '## ' + text.substr(currHeadingLevel + 1);
} }
} } else {
else{ if(currHeadingLevel <= 0) {
if (currHeadingLevel <= 0) {
text = '### ' + text; text = '### ' + text;
} } else if(currHeadingLevel == size) {
else if(currHeadingLevel == size){
text = text.substr(currHeadingLevel + 1); text = text.substr(currHeadingLevel + 1);
} } else {
else{
text = '### ' + text.substr(currHeadingLevel + 1); text = '### ' + text.substr(currHeadingLevel + 1);
} }
} }
@ -762,7 +753,7 @@ SimpleMDE.toolbar = toolbar;
SimpleMDE.markdown = function(text) { SimpleMDE.markdown = function(text) {
if(window.marked) { if(window.marked) {
// Update options // Update options
if(this.options.singleLineBreaks !== false){ if(this.options.singleLineBreaks !== false) {
marked.setOptions({ marked.setOptions({
breaks: true breaks: true
}); });
@ -903,7 +894,7 @@ SimpleMDE.prototype.createSidebyside = function() {
var wrapper = cm.getWrapperElement(); var wrapper = cm.getWrapperElement();
var preview = wrapper.nextSibling; var preview = wrapper.nextSibling;
if (!/editor-preview-side/.test(preview.className)) { if(!/editor-preview-side/.test(preview.className)) {
preview = document.createElement('div'); preview = document.createElement('div');
preview.className = 'editor-preview-side'; preview.className = 'editor-preview-side';
wrapper.parentNode.insertBefore(preview, wrapper.nextSibling); wrapper.parentNode.insertBefore(preview, wrapper.nextSibling);
@ -913,7 +904,11 @@ SimpleMDE.prototype.createSidebyside = function() {
var cScroll = false; var cScroll = false;
var pScroll = false; var pScroll = false;
cm.on('scroll', function(v) { cm.on('scroll', function(v) {
if (cScroll){cScroll=false; return;}; pScroll=true; if(cScroll) {
cScroll = false;
return;
};
pScroll = true;
height = v.getScrollInfo().height - v.getScrollInfo().clientHeight; height = v.getScrollInfo().height - v.getScrollInfo().clientHeight;
ratio = parseFloat(v.getScrollInfo().top) / height; ratio = parseFloat(v.getScrollInfo().top) / height;
move = (preview.scrollHeight - preview.clientHeight) * ratio; move = (preview.scrollHeight - preview.clientHeight) * ratio;
@ -922,7 +917,11 @@ SimpleMDE.prototype.createSidebyside = function() {
// Syncs scroll preview -> editor // Syncs scroll preview -> editor
preview.onscroll = function(v) { preview.onscroll = function(v) {
if (pScroll){pScroll=false; return;}; cScroll=true; if(pScroll) {
pScroll = false;
return;
};
cScroll = true;
height = preview.scrollHeight - preview.clientHeight; height = preview.scrollHeight - preview.clientHeight;
ratio = parseFloat(preview.scrollTop) / height; ratio = parseFloat(preview.scrollTop) / height;
move = (cm.getScrollInfo().height - cm.getScrollInfo().clientHeight) * ratio; move = (cm.getScrollInfo().height - cm.getScrollInfo().clientHeight) * ratio;
@ -939,7 +938,7 @@ SimpleMDE.prototype.createToolbar = function(items) {
} }
for(var i = 0; i < items.length; i++) { for(var i = 0; i < items.length; i++) {
if(toolbarBuiltInButtons[items[i]] != undefined){ if(toolbarBuiltInButtons[items[i]] != undefined) {
items[i] = toolbarBuiltInButtons[items[i]]; items[i] = toolbarBuiltInButtons[items[i]];
} }
} }

File diff suppressed because it is too large Load Diff