533fe487a1
use do dov for both engines drop #TODO comments changing defaults is bad, but I expect ruby folks to expect do to type do .. doo has the advantage to get a completion popup .. but its too long to type The UtiSnips do snippet didn't make sense: the nested placeholder still didn't remove the space after the "do" when deleting it - so it was written badly. Could be fixed, by why bother? Thus learn do and dov and be happy forever. Would Do be a better choice (upper case chars?) Don't know. This was used by UltiSnips. Comment on this commit if you don't like this choice.
567 lines
10 KiB
Plaintext
567 lines
10 KiB
Plaintext
snippet "^#!" "#!/usr/bin/env ruby" r
|
|
#!/usr/bin/env ruby
|
|
$0
|
|
endsnippet
|
|
|
|
|
|
snippet "^# ?[uU][tT][fF]-?8" "# encoding: UTF-8" r
|
|
# encoding: UTF-8
|
|
$0
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet If "<command> if <expression>"
|
|
${1:command} if ${0:expression}
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet Unless "<command> unless <expression>"
|
|
${1:command} unless ${0:expression}
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet if "if <condition> ... end"
|
|
if ${1:condition}
|
|
${2}
|
|
end
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet ife "if <condition> ... else ... end"
|
|
if ${1:condition}
|
|
${2}
|
|
else
|
|
${3}
|
|
end
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet ifee "if <condition> ... elseif <condition> ... else ... end"
|
|
if ${1:condition}
|
|
${2}
|
|
elsif ${3:condition}
|
|
${4}
|
|
else
|
|
${0}
|
|
end
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet unless "unless <condition> ... end"
|
|
unless ${1:condition}
|
|
${0}
|
|
end
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet unlesse "unless <condition> ... else ... end"
|
|
unless ${1:condition}
|
|
${2}
|
|
else
|
|
${0}
|
|
end
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet unlesee "unless <condition> ... elseif <condition> ... else ... end"
|
|
unless ${1:condition}
|
|
${2}
|
|
elsif ${3:condition}
|
|
${4}
|
|
else
|
|
${0}
|
|
end
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet "\b(de)?f" "def <name>..." r
|
|
def ${1:function_name}${2: ${3:*args}}
|
|
${0}
|
|
end
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet defi "def initialize ..."
|
|
def initialize${1: ${2:*args}}
|
|
${0}
|
|
end
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet defr "def <name> ... rescue ..."
|
|
def ${1:function_name}${2: ${3:*args}}
|
|
${4}
|
|
rescue
|
|
${0}
|
|
end
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet For "(<from>..<to>).each { |<i>| <block> }"
|
|
(${1:from}..${2:to}).each { |${3:i}| ${4} }
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet for "(<from>..<to>).each do |<i>| <block> end"
|
|
(${1:from}..${2:to}).each do |${3:i}|
|
|
${0}
|
|
end
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet "(\S+)\.Merge!" ".merge!(<other_hash>) { |<key>,<oldval>,<newval>| <block> }" r
|
|
`!p snip.rv=match.group(1)`.merge!(${1:other_hash}) { |${2:key},${3:oldval},${4:newval}| ${5:block} }
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet "(\S+)\.merge!" ".merge!(<other_hash>) do |<key>,<oldval>,<newval>| <block> end" r
|
|
`!p snip.rv=match.group(1)`.merge!(${1:other_hash}) do |${2:key},${3:oldval},${4:newval}|
|
|
${0:block}
|
|
end
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet "(\S+)\.Del(ete)?_?if" ".delete_if { |<key>,<value>| <block> }" r
|
|
`!p snip.rv=match.group(1)`.delete_if { |${1:key},${2:value}| ${3} }
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet "(\S+)\.del(ete)?_?if" ".delete_if do |<key>,<value>| <block> end" r
|
|
`!p snip.rv=match.group(1)`.delete_if do |${1:key},${2:value}|
|
|
${0}
|
|
end
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet "(\S+)\.Keep_?if" ".keep_if { |<key>,<value>| <block> }" r
|
|
`!p snip.rv=match.group(1)`.keep_if { |${1:key},${2:value}| ${3} }
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet "(\S+)\.keep_?if" ".keep_if do <key>,<value>| <block> end" r
|
|
`!p snip.rv=match.group(1)`.keep_if do |${1:key},${2:value}|
|
|
${0}
|
|
end
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet "(\S+)\.Reject" ".reject { |<key>,<value>| <block> }" r
|
|
`!p snip.rv=match.group(1)`.reject { |${1:key},${2:value}| ${3} }
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet "(\S+)\.reject" ".reject do <key>,<value>| <block> end" r
|
|
`!p snip.rv=match.group(1)`.reject do |${1:key},${2:value}|
|
|
${0}
|
|
end
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet "(\S+)\.Select" ".select { |<item>| <block>}" r
|
|
`!p snip.rv=match.group(1)`.select { |${1:item}| ${2:block} }
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet "(\S+)\.select" ".select do |<item>| <block> end" r
|
|
`!p snip.rv=match.group(1)`.select do |${1:item}|
|
|
${0:block}
|
|
end
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet "(\S+)\.Sort" ".sort { |<a>,<b>| <block> }" r
|
|
`!p snip.rv=match.group(1)`.sort { |${1:a},${2:b}| ${3} }
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet "(\S+)\.sort" ".sort do |<a>,<b>| <block> end" r
|
|
`!p snip.rv=match.group(1)`.sort do |${1:a},${2:b}|
|
|
${0}
|
|
end
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet "(\S+)\.Each_?k(ey)?" ".each_key { |<key>| <block> }" r
|
|
`!p snip.rv=match.group(1)`.each_key { |${1:key}| ${2} }
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet "(\S+)\.each_?k(ey)?" ".each_key do |key| <block> end" r
|
|
`!p snip.rv=match.group(1)`.each_key do |${1:key}|
|
|
${0}
|
|
end
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet "(\S+)\.Each_?val(ue)?" ".each_value { |<value>| <block> }" r
|
|
`!p snip.rv=match.group(1)`.each_value { |${1:value}| ${2} }
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet "(\S+)\.each_?val(ue)?" ".each_value do |<value>| <block> end" r
|
|
`!p snip.rv=match.group(1)`.each_value do |${1:value}|
|
|
${0}
|
|
end
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet Each "<elements>.each { |<element>| <block> }"
|
|
${1:elements}.each { |${2:${1/s$//}}| ${3} }
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet each "<elements>.each do |<element>| <block> end"
|
|
${1:elements}.each do |${2:${1/s$//}}|
|
|
${0}
|
|
end
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet each_?s(lice)? "<array>.each_slice(n) do |slice| <block> end"
|
|
each_slice(${1:2}) do |${2:slice}|
|
|
${0}
|
|
end
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet Each_?s(lice)? "<array>.each_slice(n) { |slice| <block> }"
|
|
each_slice(${1:2}) { |${2:slice}| ${3} }
|
|
endsnippet
|
|
|
|
|
|
|
|
|
|
snippet "(\S+)\.Map" ".map { |<element>| <block> }" r
|
|
`!p snip.rv=match.group(1)`.map { |${1:`!p
|
|
element_name = match.group(1).lstrip('$@')
|
|
ematch = re.search("([A-Za-z][A-Za-z0-9_]+?)s?[^A-Za-z0-9_]*?$", element_name)
|
|
try:
|
|
wmatch = re.search("([A-Za-z][A-Za-z0-9_]+)$", ematch.group(1))
|
|
snip.rv = wmatch.group(1).lower()
|
|
except:
|
|
snip.rv = 'element'
|
|
`}| ${2} }
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet "(\S+)\.map" ".map do |<element>| <block> end" r
|
|
`!p snip.rv=match.group(1)`.map do |${1:`!p
|
|
element_name = match.group(1).lstrip('$@')
|
|
ematch = re.search("([A-Za-z][A-Za-z0-9_]+?)s?[^A-Za-z0-9_]*?$", element_name)
|
|
try:
|
|
wmatch = re.search("([A-Za-z][A-Za-z0-9_]+)$", ematch.group(1))
|
|
snip.rv = wmatch.group(1).lower()
|
|
except:
|
|
snip.rv = 'element'
|
|
`}|
|
|
${0}
|
|
end
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet "(\S+)\.Rev(erse)?_?each" ".reverse_each { |<element>| <block> }" r
|
|
`!p snip.rv=match.group(1)`.reverse_each { |${1:`!p
|
|
element_name = match.group(1).lstrip('$@')
|
|
ematch = re.search("([A-Za-z][A-Za-z0-9_]+?)s?[^A-Za-z0-9_]*?$", element_name)
|
|
try:
|
|
wmatch = re.search("([A-Za-z][A-Za-z0-9_]+)$", ematch.group(1))
|
|
snip.rv = wmatch.group(1).lower()
|
|
except:
|
|
snip.rv = 'element'
|
|
`}| ${2} }
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet "(\S+)\.rev(erse)?_?each" ".reverse_each do |<element>| <block> end" r
|
|
`!p snip.rv=match.group(1)`.reverse_each do |${1:`!p
|
|
element_name = match.group(1).lstrip('$@')
|
|
ematch = re.search("([A-Za-z][A-Za-z0-9_]+?)s?[^A-Za-z0-9_]*?$", element_name)
|
|
try:
|
|
wmatch = re.search("([A-Za-z][A-Za-z0-9_]+)$", ematch.group(1))
|
|
snip.rv = wmatch.group(1).lower()
|
|
except:
|
|
snip.rv = 'element'
|
|
`}|
|
|
${0}
|
|
end
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet "(\S+)\.Each" ".each { |<element>| <block> }" r
|
|
`!p snip.rv=match.group(1)`.each { |${1:`!p
|
|
element_name = match.group(1).lstrip('$@')
|
|
ematch = re.search("([A-Za-z][A-Za-z0-9_]+?)s?[^A-Za-z0-9_]*?$", element_name)
|
|
try:
|
|
wmatch = re.search("([A-Za-z][A-Za-z0-9_]+)$", ematch.group(1))
|
|
snip.rv = wmatch.group(1).lower()
|
|
except:
|
|
snip.rv = 'element'
|
|
`}| ${2} }
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet "(\S+)\.each" ".each do |<element>| <block> end" r
|
|
`!p snip.rv=match.group(1)`.each do |${1:`!p
|
|
element_name = match.group(1).lstrip('$@')
|
|
ematch = re.search("([A-Za-z][A-Za-z0-9_]+?)s?[^A-Za-z0-9_]*?$", element_name)
|
|
try:
|
|
wmatch = re.search("([A-Za-z][A-Za-z0-9_]+)$", ematch.group(1))
|
|
snip.rv = wmatch.group(1).lower()
|
|
except:
|
|
snip.rv = 'element'
|
|
`}|
|
|
${0}
|
|
end
|
|
endsnippet
|
|
|
|
|
|
|
|
|
|
snippet "(\S+)\.Each_w(ith)?_?i(ndex)?" ".each_with_index { |<element>,<i>| <block> }" r
|
|
`!p snip.rv=match.group(1)`.each_with_index { |${1:`!p
|
|
element_name = match.group(1).lstrip('$@')
|
|
ematch = re.search("([A-Za-z][A-Za-z0-9_]+?)s?[^A-Za-z0-9_]*?$", element_name)
|
|
try:
|
|
wmatch = re.search("([A-Za-z][A-Za-z0-9_]+)$", ematch.group(1))
|
|
snip.rv = wmatch.group(1).lower()
|
|
except:
|
|
snip.rv = 'element'
|
|
`},${2:i}| ${3} }$0
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet "(\S+)\.each_?w(ith)?_?i(ndex)?" ".each_with_index do |<element>,<i>| <block> end" r
|
|
`!p snip.rv=match.group(1)`.each_with_index do |${1:`!p
|
|
element_name = match.group(1).lstrip('$@')
|
|
ematch = re.search("([A-Za-z][A-Za-z0-9_]+?)s?[^A-Za-z0-9_]*?$", element_name)
|
|
try:
|
|
wmatch = re.search("([A-Za-z][A-Za-z0-9_]+)$", ematch.group(1))
|
|
snip.rv = wmatch.group(1).lower()
|
|
except:
|
|
snip.rv = 'element'
|
|
`},${2:i}|
|
|
${0}
|
|
end
|
|
endsnippet
|
|
|
|
|
|
|
|
|
|
snippet "(\S+)\.Each_?p(air)?" ".each_pair { |<key>,<value>| <block> }" r
|
|
`!p snip.rv=match.group(1)`.each_pair { |${1:key},${2:value}| ${3} }
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet "(\S+)\.each_?p(air)?" ".each_pair do |<key>,<value>| <block> end" r
|
|
`!p snip.rv=match.group(1)`.each_pair do |${1:key},${2:value}|
|
|
${0}
|
|
end
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet "(\S+)\.sub" ".sub(<expression>) { <block> }" r
|
|
`!p snip.rv=match.group(1)`.sub(${1:expression}) { ${2:"replace_with"} }
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet "(\S+)\.gsub" ".gsub(<expression>) { <block> }" r
|
|
`!p snip.rv=match.group(1)`.gsub(${1:expression}) { ${2:"replace_with"} }
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet "(\S+)\.index" ".index { |item| <block> }" r
|
|
`!p snip.rv=match.group(1)`.index { |${1:item}| ${2:block} }
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet "(\S+)\.Index" ".index do |item| ... end" r
|
|
`!p snip.rv=match.group(1)`.index do |${1:item}|
|
|
${0:block}
|
|
end
|
|
endsnippet
|
|
|
|
# comments about do and dov see snippets/ruby.snippets
|
|
snippet do "do ... end" i
|
|
do
|
|
$0
|
|
end
|
|
endsnippet
|
|
|
|
snippet dov "do |<key>| ... end" i
|
|
do |${0:v}|
|
|
$1
|
|
end
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet until "until <expression> ... end"
|
|
until ${1:expression}
|
|
${0}
|
|
end
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet Until "begin ... end until <expression>"
|
|
begin
|
|
${0}
|
|
end until ${1:expression}
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet while "while <expression> ... end"
|
|
while ${1:expression}
|
|
${0}
|
|
end
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet While "begin ... end while <expression>"
|
|
begin
|
|
${0}
|
|
end while ${1:expression}
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet "\b(r|attr)" "attr_reader :<attr_names>" r
|
|
attr_reader :${0:attr_names}
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet "\b(w|attr)" "attr_writer :<attr_names>" r
|
|
attr_writer :${0:attr_names}
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet "\b(rw|attr)" "attr_accessor :<attr_names>" r
|
|
attr_accessor :${0:attr_names}
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet begin "begin ... rescue ... end"
|
|
begin
|
|
${1}
|
|
rescue
|
|
${0}
|
|
end
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet begin "begin ... rescue ... else ... ensure ... end"
|
|
begin
|
|
${1:# Raise exception}
|
|
rescue Exception => e
|
|
puts e.message
|
|
puts e.backtrace.inspect
|
|
${2:# Rescue}
|
|
else
|
|
${3:# other exception}
|
|
ensure
|
|
${0:# always excute}
|
|
end
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet rescue
|
|
rescue Exception => e
|
|
puts e.message
|
|
puts e.backtrace.inspect
|
|
${0:# Rescue}
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet "\b(case|sw(itch)?)" "case <variable> when <expression> ... end" r
|
|
case ${1:variable}
|
|
when ${2:expression}
|
|
$0
|
|
end
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet alias "alias :<new_name> :<old_name>"
|
|
alias :${1:new_name} :${2:old_name}
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet class "class <class_name> def initialize ... end end"
|
|
class ${1:class_name}
|
|
def initialize ${2:*args}
|
|
$0
|
|
end
|
|
end
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet module "module"
|
|
module ${1:module_name}
|
|
$0
|
|
end
|
|
endsnippet
|
|
|
|
|
|
|
|
snippet ###
|
|
=begin
|
|
$0
|
|
=end
|
|
endsnippet
|
|
|
|
# vim: set ts=2 sw=2 expandtab:
|