module Thor::Util

def snake_case(str)


String
==== Returns

String
==== Parameters

Receives a string and convert it to snake case. SnakeCase returns snake_case.
def snake_case(str)
  return str.downcase if str =~ /^[A-Z_]+$/
  str.gsub(/\B[A-Z]/, '_\&').squeeze("_") =~ /_*(.*)/
  $+.downcase
end