├── README.md └── snippets ├── spacebars.snippets ├── html.snippets ├── javascript.snippets └── coffee.snippets /README.md: -------------------------------------------------------------------------------- 1 | vim-meteor-snippets 2 | =================== 3 | 4 | Some vim snippets for Meteor development 5 | -------------------------------------------------------------------------------- /snippets/spacebars.snippets: -------------------------------------------------------------------------------- 1 | snippet tmp 2 | 4 | 5 | snippet #if 6 | {{#if ${1}}} 7 | ${2} 8 | {{/if}} 9 | 10 | snippet #ife 11 | {{#if ${1}}} 12 | ${2} 13 | {{else}} 14 | ${3} 15 | {{/if}} 16 | 17 | snippet >tmp 18 | {{> ${1}}} 19 | 20 | snippet #each 21 | {{#each ${1}}} 22 | ${2} 23 | {{/each}} 24 | 25 | snippet #with 26 | {{#with ${1}}} 27 | ${2} 28 | {{/with}} 29 | -------------------------------------------------------------------------------- /snippets/html.snippets: -------------------------------------------------------------------------------- 1 | snippet tmpl 2 | 5 | snippet with 6 | {{#with ${1}}} 7 | ${2} 8 | {{/with}} 9 | snippet each 10 | {{#each ${1}}} 11 | ${2} 12 | {{/each}} 13 | snippet link 14 | {{#linkTo "${1}"}} 15 | ${2} 16 | {{/linkTo}} 17 | snippet group 18 | 19 | 20 | 21 | snippet incl 22 | {{> ${1}}} 23 | snippet block 24 | {{#${1}}} 25 | ${2} 26 | {{/$1}} 27 | -------------------------------------------------------------------------------- /snippets/javascript.snippets: -------------------------------------------------------------------------------- 1 | snippet thelpers 2 | Template.${1:template_name}.helpers({ 3 | ${2} 4 | }); 5 | snippet te 6 | Template.${1:template_name}.events({ 7 | ${2} 8 | }); 9 | snippet ehandler 10 | '${1:selector}': function (e, tmpl) { 11 | ${3} 12 | }${2:,} 13 | snippet pub 14 | Meteor.publish('${1}', function () { 15 | ${2} 16 | }); 17 | snippet sub 18 | Meteor.subscribe('${1}'); 19 | snippet startup 20 | Meteor.startup(function () { 21 | ${1} 22 | }); 23 | snippet helper 24 | Handlebars.registerHelper('${1}', function (options) { 25 | ${2} 26 | }); 27 | snippet filter 28 | function ${1} (context, page) { 29 | ${2} 30 | } 31 | snippet pages 32 | Meteor.pages({ 33 | ${1} 34 | }); 35 | snippet rmap 36 | Router.map(function () { 37 | ${1} 38 | }); 39 | snippet rconfig 40 | Router.configure({ 41 | ${1} 42 | }); 43 | snippet route 44 | Router.route('${1}', { 45 | name: '${2}', 46 | controller: '${3}', 47 | action: '${4}' 48 | }); 49 | snippet sset 50 | Session.set('${1:key}', ${2:value}); 51 | snippet sget 52 | Session.get('${1:key}'); 53 | snippet sequals 54 | Session.equals('${1:key}', ${2:value}); 55 | 56 | snippet group 57 | /*****************************************************************************/ 58 | /* ${1} */ 59 | /*****************************************************************************/ 60 | snippet test 61 | Tinytest.add('${1}', function (test) { 62 | ${2} 63 | }); 64 | snippet auto 65 | Deps.autorun(function (c) { 66 | ${1} 67 | }); 68 | snippet client 69 | if (Meteor.isClient) { 70 | ${1} 71 | } 72 | snippet server 73 | if (Meteor.isServer) { 74 | ${1} 75 | } 76 | snippet methods 77 | Meteor.methods({ 78 | ${1} 79 | }); 80 | -------------------------------------------------------------------------------- /snippets/coffee.snippets: -------------------------------------------------------------------------------- 1 | # collection 2 | snippet coll 3 | ${1:Collection} = new Meteor.Collection "${2:collection}" 4 | 5 | # isClient block 6 | snippet isc 7 | if Meteor.isClient 8 | ${1:isClient block} 9 | 10 | # isServer block 11 | snippet iss 12 | if Meteor.isServer 13 | ${1:isServer block} 14 | 15 | # startup 16 | snippet start 17 | if Meteor.startup -> 18 | ${1:startup block} 19 | 20 | # publication 21 | snippet pub 22 | Meteor.publish "${1:pub-name}", -> 23 | ${2:collection}.find(${3:target}) 24 | 25 | # subscription 26 | snippet sub 27 | Meteor.subscribe "${1:sub}" 28 | 29 | # Template events 30 | snippet tle 31 | Template.${1:Template}.events 32 | "${2: action} ${3: on}": -> 33 | ${4: event-block} 34 | 35 | # Template helper 36 | snippet tlh 37 | Template.${1:Template}.${2:helper}= -> 38 | ${3:block} 39 | 40 | # Template mulitiple helpers 41 | snippet tlhs 42 | Template.${1:Template}.helpers 43 | ${2:name}: -> 44 | ${3: block-1} 45 | ${4:name}: -> 46 | ${5: block-2} 47 | 48 | # Template rendered 49 | snippet tlr 50 | Template.${1:Template}.rendered= -> 51 | ${2: block} 52 | 53 | # Deps.autorun 54 | snippet deps 55 | Deps.autorun -> 56 | ${1:deps block} 57 | 58 | # Set Session 59 | snippet sset 60 | Session.set "${1:key}", "${2:value}" 61 | 62 | # get Session 63 | snippet sget 64 | Session.get "${1:key}" 65 | 66 | # Meteor.methods 67 | snippet meth 68 | Meteor.methods 69 | ${1:name}: (${2:arg1, arg2}) -> 70 | ${4: code} 71 | 72 | # Allow method 73 | snippet allow 74 | ${1:name}.allow 75 | ${2:target} 76 | 77 | # Deny method 78 | snippet deny 79 | ${1:name}.deny 80 | ${2:target} 81 | 82 | # Router.configure 83 | snippet rconfig 84 | Router.configure 85 | layoutTemplate: '${1:MasterLayout}', 86 | loadingTemplate: '${2:Loading}', 87 | notFoundTemplate: '${3:NotFound}', 88 | 89 | # Router.map 90 | snippet rmap 91 | Router.map -> 92 | @route '${1:name}', path: '${2:path}' 93 | 94 | # Router go 95 | snippet rgo 96 | Router.go "${1:path}" 97 | 98 | # single route 99 | snippet route 100 | @route '${1:name}', 101 | path: '${2:path}' 102 | template: '${3:template}' 103 | # single route with controller 104 | 105 | snippet rcon 106 | @route '${1:name}', 107 | path: '${2:path}' 108 | template: '${3:template}' 109 | controller: ${4:controller} 110 | 111 | # register global helper 112 | snippet regh 113 | UI.registerHelper "${1}", ("${2}") -> 114 | ${3:code} 115 | 116 | # user name only for accounts ui 117 | snippet aconfig 118 | Accounts.ui.config 119 | passwordSignupFields: 'USERNAME_ONLY' 120 | --------------------------------------------------------------------------------