class Object

Public Instance Methods

apply_template(file) click to toggle source
# File lib/template.rb, line 20
def apply_template(file)
  template "#{File.dirname(__FILE__)}/files/#{file}.erb", file, force: true
  system "sed '/^$/N;/^\\n$/D' #{file} > sed_output" # remove duplicated empty lines
  system "mv sed_output #{file}"
end
commit(description) click to toggle source
# File lib/template.rb, line 26
def commit(description)
  system 'git add .'
  system 'git add --update .'
  system "git commit -am '#{description}'"
end
database_adapter() click to toggle source
# File lib/template.rb, line 32
def database_adapter
  case @database
  when 'postgresql', 'postgres', 'psql' then 'pg'
  when 'mysql'                          then 'mysql2'
  when 'sqlite'                         then 'sqlite3'
  else @database
  end
end
database_encoding() click to toggle source
# File lib/template.rb, line 48
def database_encoding
  case database_adapter
  when 'pg'     then 'unicode'
  when 'mysql2' then 'utf8'
  end
end
database_yaml_adapter() click to toggle source
# File lib/template.rb, line 41
def database_yaml_adapter
  case database_adapter
  when 'pg' then 'postgresql'
  else database_adapter
  end
end
prompt(question, options) click to toggle source
# File lib/template.rb, line 15
def prompt(question, options)
  answer = ask("     \e[1m\e[32mpromp".rjust(10) + "  \e[0m#{question} \e[33m[#{options[:default_answer]}]\e[0m").strip
  answer.present? ? answer : options[:default_answer]
end
yes?(question) click to toggle source

generate(:scaffold, “person name:string”) route “root to: ‘people#index’”

# File lib/template.rb, line 4
def yes?(question)
  return true unless @customized

  answer = ask "     \e[1m\e[32mpromp".rjust(10) + "  \e[0m#{question} \e[33m(y/n)\e[0m"
  case answer.downcase
  when 'yes', 'y' then true
  when 'no',  'n' then false
  else yes?(question)
  end
end