From 6f6e4415c630ad3dd736ff685984df00649dfb5b Mon Sep 17 00:00:00 2001 From: Joe Biellik Date: Thu, 8 Sep 2016 15:28:14 +0100 Subject: [PATCH] Update from Jade to Pug --- .editorconfig | 2 +- app.js | 2 +- package.json | 10 +++++----- views/{highlight.jade => highlight.pug} | 12 ++++++------ views/{index.jade => index.pug} | 15 ++++++++------- views/layout.jade | 11 ----------- views/layout.pug | 12 ++++++++++++ 7 files changed, 33 insertions(+), 31 deletions(-) rename views/{highlight.jade => highlight.pug} (64%) rename views/{index.jade => index.pug} (75%) delete mode 100644 views/layout.jade create mode 100644 views/layout.pug diff --git a/.editorconfig b/.editorconfig index e4281f1..39865c5 100644 --- a/.editorconfig +++ b/.editorconfig @@ -8,6 +8,6 @@ end_of_line = lf insert_final_newline = true trim_trailing_whitespace = true -[{.eslintrc,*.json,*.yml,*.jade,*.md}] +[{.eslintrc,*.json,*.yml,*.pug,*.md}] indent_style = space indent_size = 2 diff --git a/app.js b/app.js index 89cf233..e09a8ff 100644 --- a/app.js +++ b/app.js @@ -23,7 +23,7 @@ app.use(require('koa-body')({ textLimit: config.sizeLimit })); app.use(require('koa-views')(__dirname + '/views', { - extension: 'jade' + extension: 'pug' })); app.use(router.routes(), router.allowedMethods()); diff --git a/package.json b/package.json index 1909859..d7273a8 100644 --- a/package.json +++ b/package.json @@ -20,14 +20,13 @@ "main": "server.js", "scripts": { "watch": "./node_modules/.bin/nodemon -L -e js,json", - "lint": "./node_modules/.bin/eslint . && ./node_modules/.bin/jade-lint ./views/" + "lint": "./node_modules/.bin/eslint . && ./node_modules/.bin/pug-lint ./views/" }, "dependencies": { "babel-core": "^6.1.2", "babel-polyfill": "^6.0.16", "babel-preset-es2015": "^6.1.2", "config": "^1.16.0", - "jade": "^1.11.0", "koa": "^1.1.0", "koa-body": "^1.3.0", "koa-compress": "^1.0.8", @@ -36,12 +35,13 @@ "koa-static-cache": "^3.1.2", "koa-views": "^4.1.0", "mongoose": "^4.1.12", + "pug": "^2.0.0-beta4", "shortid": "^2.2.4" }, "devDependencies": { "babel-eslint": "^6.0.2", - "eslint": "^2.6.0", - "jade-lint": "^2.0.0", - "nodemon": "^1.7.2" + "eslint": "^3.2.2", + "nodemon": "^1.7.2", + "pug-lint": "^2.3.0" } } diff --git a/views/highlight.jade b/views/highlight.pug similarity index 64% rename from views/highlight.jade rename to views/highlight.pug index 1ecf142..641dbb3 100644 --- a/views/highlight.jade +++ b/views/highlight.pug @@ -1,8 +1,8 @@ extends layout block head - link(rel='stylesheet', href='https://cdn.jsdelivr.net/prism/1.4.1/themes/prism-coy.css') - link(rel='stylesheet', href='https://cdn.jsdelivr.net/prism/1.4.1/plugins/line-numbers/prism-line-numbers.css') + link(rel='stylesheet', href='https://cdn.jsdelivr.net/prism/1.5.1/themes/prism-coy.css') + link(rel='stylesheet', href='https://cdn.jsdelivr.net/prism/1.5.1/plugins/line-numbers/prism-line-numbers.css') style. html, body { height: 100%; @@ -23,8 +23,8 @@ block head block content pre.line-numbers - code(class='language-#{lang}') + code(class='language-' + lang) | #{paste} - script(src='https://cdn.jsdelivr.net/prism/1.4.1/prism.js') - script(src='https://cdn.jsdelivr.net/prism/1.4.1/components/prism-#{lang}.min.js') - script(src='https://cdn.jsdelivr.net/prism/1.4.1/plugins/line-numbers/prism-line-numbers.min.js') + script(src='https://cdn.jsdelivr.net/prism/1.5.1/prism.js') + script(src='https://cdn.jsdelivr.net/prism/1.5.1/components/prism-' + lang + '.min.js') + script(src='https://cdn.jsdelivr.net/prism/1.5.1/plugins/line-numbers/prism-line-numbers.min.js') diff --git a/views/index.jade b/views/index.pug similarity index 75% rename from views/index.jade rename to views/index.pug index 3e5c711..924a128 100644 --- a/views/index.jade +++ b/views/index.pug @@ -8,7 +8,7 @@ block head min-height: 100%; } body { - font-family: "Open Sans", "Helvetica Neue", Helvetica, Arial, sans-serif; + font-family: "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; margin-bottom: 60px; } @media (min-width: 1800px) { @@ -26,6 +26,7 @@ block head } textarea, textarea:required, textarea:invalid { font-family: monospace, serif; + line-height: 1.5em; box-shadow: none; } footer { @@ -46,15 +47,15 @@ block content fieldset.form-group textarea.form-control(name='paste', rows='10', required, autofocus) - select#highlight.c-select.select-lg.m-t-2.m-r-2(name='highlight') + select#highlight.custom-select.select-lg.m-t-2.m-r-2(name='highlight') option(value='', selected) Choose syntax highlighting each val, key in highlights - option(value='#{key}') #{val} + option(value=key) #{val} - select#expire.c-select.select-lg.m-t-2(name='expire') + select#expire.custom-select.select-lg.m-t-2(name='expire') option(value='', selected) Choose expiry each val, key in expires - option(value='#{key}') #{val} + option(value=key) #{val} button.btn.btn-primary.btn-lg.m-t-2.m-l-2.pull-md-right(type='submit') Upload @@ -62,6 +63,6 @@ block content pre.text-md-center.text-muted.m-b-0. echo 'Hello World' | curl -F 'paste=<-' #{url} - script(src='https://cdnjs.cloudflare.com/ajax/libs/autosize.js/3.0.15/autosize.min.js') - script(src='https://code.jquery.com/jquery-2.2.2.min.js') + script(src='https://cdnjs.cloudflare.com/ajax/libs/autosize.js/3.0.17/autosize.min.js') + script(src='https://code.jquery.com/jquery-2.2.4.min.js', integrity='sha256-BbhdlvQf/xTY9gja0Dq3HiwQF8LaCRTXxZKRutelT44=', crossorigin='anonymous') script(src='/main.js') diff --git a/views/layout.jade b/views/layout.jade deleted file mode 100644 index 5405877..0000000 --- a/views/layout.jade +++ /dev/null @@ -1,11 +0,0 @@ -doctype html -html(lang='en') - head - meta(charset='utf-8') - meta(name='viewport', content='width=device-width, initial-scale=1') - title #{title} - link(rel='stylesheet', href='https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.0.0-alpha.2/css/bootstrap.min.css') - block head - - body - block content diff --git a/views/layout.pug b/views/layout.pug new file mode 100644 index 0000000..0500b46 --- /dev/null +++ b/views/layout.pug @@ -0,0 +1,12 @@ +doctype html +html(lang='en') + head + meta(charset='utf-8') + meta(name='viewport', content='width=device-width, initial-scale=1, shrink-to-fit=no') + title #{title} + link(rel='stylesheet', href='https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.3/css/bootstrap.min.css', integrity='sha384-MIwDKRSSImVFAZCVLtU0LMDdON6KVCrZHyVQQj6e8wIEJkW4tvwqXrbMIya1vriY', crossorigin='anonymous') + + block head + + body + block content