snippet #! abbr #!/usr/bin/env ruby alias shebang options head #!/usr/bin/env ruby ${0} snippet if abbr if ... end if ${1:#:condition} ${2:TARGET} end snippet unless abbr unless ... end unless ${1:#:condition} ${2:TARGET} end snippet def abbr def ... end def ${1:#:method_name} ${2:TARGET} end snippet defrescue alias defr abbr def ... rescue ... end def ${1:#:method_name} ${2:TARGET} rescue ${3:#:StandardError} => ${4:error} ${5} end snippet do abbr do ... end do ${1:TARGET} end snippet dovar abbr do |var| ... end do |${1:#:var}| ${2:TARGET} end snippet block abbr { ... } { ${1:TARGET} } snippet blockvar abbr {|var| ... } {|${1:#:var}| ${2:TARGET} } snippet fileopen alias open abbr File.open(filename) do ... end File.open(${1:#:filename}, '${2:#:mode}') do |${3:io}| ${0:TARGET} end snippet edn abbr => end? end snippet urlencode # coding: utf-8 require 'erb' puts ERB::Util.url_encode '${1}' snippet encoding alias enc # coding: utf-8 ${0} snippet each options word each do |${1:#:variable}| ${2} end snippet each_byte options word each_byte {|${1:#:variable}| ${2} } snippet each_char options word each_char {|${1:#:variable}| ${2} } snippet each_index options word each_index {|${1:#:variable}| ${2} } snippet each_key options word each_key {|${1:#:variable}| ${2} } snippet each_line options word each_line {|${1:#:variable}| ${2} } snippet each_with_index options word each_with_index {|${1:#:variable}| ${2} } snippet each_pair options word each_pair {|${1:#:key}, ${2:value}| ${3} } snippet each_pair_do options word each_pair do |${1:key}, ${2:value}| ${3} end snippet map options word map {|${1:#:variable}| ${2} } snippet sort options word sort {|${1:x}, ${2:y}| ${2} } snippet sort_by options word sort_by {|${1:#:variable}| ${2} } snippet lambda options word -> (${1:#:args}) { ${2} } snippet lambda-keyword options word lambda {|${1:#:args}| ${2} } snippet main options head if __FILE__ == \$0 ${0:TARGET} end # This idiom is only for legacy ruby such as 1.9.3 snippet filedir-legacy-compatibility alias __dir__ abbr File.dirname(...) File.dirname(File.expand_path(__FILE__)) snippet glob options head Dir.glob(${1:'**/*'}) do |fname| ${0:TARGET} end snippet case abbr case ... when ... else ... end options head case ${1} when ${2} ${3} else ${4} end snippet class class ${1:`substitute(expand('%:t:r:r:r'), '\v%(^(.)|_(.))', '\u\1\u\2', 'g')`} ${0} end snippet module module ${1:`substitute(expand('%:t:r:r:r'), '\v%(^(.)|_(.))', '\u\1\u\2', 'g')`} ${0} end # vim:set et ts=2 sts=2 sw=2 tw=0: