Skip to content

Instantly share code, notes, and snippets.

@nickdotht
Last active August 3, 2016 19:28
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save nickdotht/0aa44066ad7ea12420fd8822e61752ea to your computer and use it in GitHub Desktop.
Save nickdotht/0aa44066ad7ea12420fd8822e61752ea to your computer and use it in GitHub Desktop.
My sublime text 3 configuration and snippets
<snippet>
<content><![CDATA[
{
"name": "${1:app-name}",
"version": "${2:1.0.0}",
"description": "${3:A simple description}",
"main": "${4:app.js}",
"scripts": {
"test": "${5:echo \"Error: no test specified\" && exit 1}",
"start": "${6:nodemon} ${7:app}"
},
"keywords": [
"${8:key}"${9}
],
"author": "${10:Nick Rameau}",
"license": "${11:MIT}",
"dependencies": {
${12:"bcrypt-nodejs": "${13:latest}",}
${14:"body-parser": "${15:latest}",}
${16:"connect-flash": "${17:latest}",}
${18:"cookie-parser": "${19:latest}",}
${20:"ejs": "${21:latest}",}
${22:"express": "${23:latest}",}
${24:"express-session": "${25:latest}",}
${26:"mongoose": "${27:latest}",}
${28:"passport": "${29:latest}",}
${30:"passport-local": "${31:latest}"}
}
}
]]></content>
<!-- Optional: Set a tabTrigger to define how to trigger the snippet -->
<tabTrigger>npm</tabTrigger>
<!-- Optional: Set a scope to limit where the snippet will trigger -->
<scope>source.json</scope>
</snippet>
{
"bootstrapped": true,
"in_process_packages":
[
],
"installed_packages":
[
"Emmet",
"JsFormat",
"JSHint",
"Material Theme",
"Package Control",
"Theme - Otto"
]
}
<snippet>
<content><![CDATA[
${1:var passport = require('passport')}
${2:, localStrategy = require('passport-local').Strategy;}
${3:var User = require('${4:../models/user}');}
${5:passport.use('${6:login}', new ${7:localStrategy}(function(${8:${9:username,} ${10:password,}} done) {
User.findOne({${11:username: username}\}, function(err, user) {
if (err) {
return done(err);
\}
if (!user) {
return done(null, false, {message: '${12:No user has that username!}'\});
\}
user.checkPassword(password, function(err, isMatch) {
if (err) {
return done(err);
\}
if (!isMatch) {
return done(null, false, {message: '${13:Invalid password!}'\});
\}
return done(null, user);
\});
\});
\}));}
module.exports = function() {
passport.serializeUser(function(user, done) {
done(null, user._id);
});
passport.deserializeUser(function(id, done) {
User.findById(id, function(err, user) {
done(err, user);
});
});
};
]]></content>
<!-- Optional: Set a tabTrigger to define how to trigger the snippet -->
<tabTrigger>passport</tabTrigger>
<!-- Optional: Set a scope to limit where the snippet will trigger -->
<scope>source.js</scope>
</snippet>
{
"always_show_minimap_viewport": true,
"bold_folder_labels": true,
"caret_extra_bottom": 1,
"caret_extra_top": 1,
"caret_extra_width": 1,
"caret_style": "blink",
"color_scheme": "Packages/Material Theme/schemes/Material-Theme-Darker.tmTheme",
"default_line_ending": "unix",
"draw_white_space": "selection",
"ensure_newline_at_eof_on_save": true,
"fade_fold_buttons": false,
"fallback_encoding": "UTF-8",
"font_face": "Monaco",
"font_options":
[
"gray_antialias",
"subpixel_antialias"
],
"font_size": 15,
"ignored_packages":
[
"Vintage"
],
"indent_guide_options":
[
"draw_normal",
"draw_active"
],
"line_padding_bottom": 3,
"line_padding_top": 3,
"material_theme_accent_blue": true,
"material_theme_small_tab": true,
"overlay_scroll_bars": "enabled",
"rulers":
[
80
],
"show_encoding": true,
"show_line_endings": true,
"tab_size": 2,
"theme": "Material-Theme-Darker.sublime-theme",
"trim_trailing_white_space_on_save": true
}
<snippet>
<content><![CDATA[
${1:var express = require('express'),}
${2:mongoose = require('mongoose'),}
${3:path = require('path'),}
${4:bodyParser = require('body-parser'),}
${5:cookieParser = require('cookie-parser'),}
${6:session = require('express-session'),}
${7:flash = require('connect-flash'),}
${8:passport = require('passport'),}
${9:setupPassport = require('./config/setuppassport');}
${10:var app = express();}
${11:mongoose.connect('mongodb://localhost:27017/${12:test}');}
${13:setupPassport();}
${14:var routes = require('${15:./routes}');}
${16:var staticDir = path.resolve(__dirname, '${17:public}');}
${18:app.use(express.static(staticDir));}
${19:app.set('port', process.env.PORT || ${20:3000});}
${21:app.set('views', path.resolve(__dirname, '${22:views}'));}
${23:app.set('view engine', '${24:html}');}
${25:app.engine('html', ${26:require('ejs').renderFile});}
${27:app.use(bodyParser.urlencoded({extended: ${28:false}\}));}
${29:app.use(cookieParser());}
${30:app.use(session({
secret: "${31:I almost ran over an old lady once}",
resave: ${32:true},
saveUninitialized: ${33:true},
${34:maxAge: ${35:60000}}
\}));}
${36:app.use(flash());}
${37:app.use(passport.initialize());}
${38:app.use(passport.session());}
${39}
${40:app.use(routes);}
${41:app.listen(${42:app.get('port')}, function() {
console.log(${43:'${44:${45:App} listening on port} '+ ${42:app.get('port')}});
\});}
]]></content>
<!-- Optional: Set a tabTrigger to define how to trigger the snippet -->
<tabTrigger>server</tabTrigger>
<!-- Optional: Set a scope to limit where the snippet will trigger -->
<scope>source.js</scope>
</snippet>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment