Last active
July 3, 2018 03:58
-
-
Save BTBTravis/5b7ae1b83d1a6edbc6dae4328cc529fb to your computer and use it in GitHub Desktop.
ever improving js snippets for vim
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
priority -50 | |
global !p | |
from javascript_snippets import ( | |
semi, space_before_function_paren, keyword_spacing | |
) | |
endglobal | |
########################################################################### | |
# Custom Snippets # | |
########################################################################### | |
snippet log "Console Log Object Style" | |
console.log({"$1": $1}); | |
endsnippet | |
snippet log2 "Console Log Object Style" | |
console.log('$1: ', $1); | |
endsnippet | |
snippet JSON.s "JSON.stringify()" | |
JSON.stringify($1); | |
endsnippet | |
snippet promise "new Promise" | |
new Promise(function(resolve, reject) { | |
}); | |
endsnippet | |
snippet document.q "document.querySelector()" | |
document.querySelector('$1'); | |
endsnippet | |
snippet document.qAll "document.querySelectorAll()" | |
Array.from(document.querySelectorAll('$1')); | |
endsnippet | |
snippet for "forloop" | |
for (var ${1:i} = 0; $1 < ${2:arr}.length; $1++) { | |
$0 | |
} | |
endsnippet | |
snippet has "does object have property?" | |
$1.hasOwnProperty($0) | |
endsnippet | |
########################################################################### | |
# TextMate Snippets # | |
########################################################################### | |
snippet get "Get Elements" | |
getElement${1/(T)|.*/(?1:s)/}By${1:T}${1/(T)|(I)|.*/(?1:agName)(?2:d)/}('$2') | |
endsnippet | |
snippet '':f "object method string" | |
'${1:${2:#thing}:${3:click}}': function`!p snip.rv = space_before_function_paren(snip)`(element) { | |
${VISUAL}$0 | |
}${10:,} | |
endsnippet | |
snippet :f "Object Method" | |
${1:method_name}: function`!p snip.rv = space_before_function_paren(snip)`(${3:attribute}) { | |
${VISUAL}$0 | |
}${10:,} | |
endsnippet | |
snippet :, "Object Value JS" | |
${1:value_name}: ${0:value}, | |
endsnippet | |
snippet : "Object key key: 'value'" | |
${1:key}: ${2:"${3:value}"}${4:, } | |
endsnippet | |
snippet proto "Prototype (proto)" | |
${1:class_name}.prototype.${2:method_name} = function`!p snip.rv = space_before_function_paren(snip)`(${3:first_argument}) { | |
${VISUAL}$0 | |
}`!p snip.rv = semi(snip)` | |
endsnippet | |
snippet fun "function (fun)" w | |
function ${1:function_name}`!p snip.rv = space_before_function_paren(snip)`(${2:argument}) { | |
${VISUAL}$0 | |
} | |
endsnippet | |
snippet vf "Function assigned to var" | |
${1:var }${2:function_name} = function $2`!p snip.rv = space_before_function_paren(snip)`($3) { | |
${VISUAL}$0 | |
}`!p snip.rv = semi(snip)` | |
endsnippet | |
snippet af "Anonymous Function" i | |
function`!p snip.rv = space_before_function_paren(snip)`($1) { | |
${VISUAL}$0 | |
} | |
endsnippet | |
snippet iife "Immediately-Invoked Function Expression (iife)" | |
(function`!p snip.rv = space_before_function_paren(snip)`(${1:window}) { | |
${VISUAL}$0 | |
}(${2:$1}))`!p snip.rv = semi(snip)` | |
endsnippet | |
snippet ;fe "Minify safe iife" | |
;(function`!p snip.rv = space_before_function_paren(snip)`(${1}) { | |
${VISUAL}$0 | |
}(${2})) | |
endsnippet | |
snippet timeout "setTimeout function" | |
setTimeout(function`!p snip.rv = space_before_function_paren(snip)`() { | |
${VISUAL}$0 | |
}${2:.bind(${3:this})}, ${1:10})`!p snip.rv = semi(snip)` | |
endsnippet | |
snippet fi "for prop in obj using hasOwnProperty" b | |
for`!p snip.rv = keyword_spacing(snip)`(${1:prop} in ${2:obj}){ | |
if`!p snip.rv = keyword_spacing(snip)`($2.hasOwnProperty($1)) { | |
${VISUAL}$0 | |
} | |
} | |
endsnippet | |
snippet if "if (condition) { ... }" | |
if`!p snip.rv = keyword_spacing(snip)`(${1:true}) { | |
${VISUAL}$0 | |
} | |
endsnippet | |
snippet ife "if (condition) { ... } else { ... }" | |
if`!p snip.rv = keyword_spacing(snip)`(${1:true}) { | |
${VISUAL}$0 | |
}`!p snip.rv = keyword_spacing(snip)`else`!p snip.rv = keyword_spacing(snip)`{ | |
${2} | |
} | |
endsnippet | |
snippet switch | |
switch`!p snip.rv = keyword_spacing(snip)`(${VISUAL}${1:expression}) { | |
case '${VISUAL}${3:case}': | |
${4} | |
break`!p snip.rv = semi(snip)` | |
${0} | |
default: | |
${2} | |
} | |
endsnippet | |
snippet case "case 'xyz': ... break" | |
case`!p snip.rv = keyword_spacing(snip)`'${VISUAL}${1:case}': | |
${VISUAL}$0 | |
break`!p snip.rv = semi(snip)` | |
endsnippet | |
snippet do "do { ... } while (condition)" | |
do`!p snip.rv = keyword_spacing(snip)`{ | |
${VISUAL}$0 | |
}`!p snip.rv = keyword_spacing(snip)`while`!p snip.rv = keyword_spacing(snip)`(${1:/* condition */})`!p snip.rv = semi(snip)` | |
endsnippet | |
snippet ret "Return statement" | |
return ${VISUAL}$0`!p snip.rv = semi(snip)` | |
endsnippet | |
snippet us | |
'use strict'`!p snip.rv = semi(snip)` | |
endsnippet | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment