docs: def execute():
      """ Main function. """
      args = docopt_arguments()
      term = TerminalView()
  
      # print list of installed templates
      if args['--list']:
          run_list()
          return
  
      # instanciate the class
      if args['<template>']:
          template = template_class_from_name(args['<template>'])
  
      # print info on a template
      if args['--info']:
          if args['<template>']:
              run_info(template)
          else:
              term.print_error_and_exit("Please specify a template")
          return
  
      # launch the template
      template.create(args['<project>'],
                      args['<template>'],
                      args['<substitution>'])
      term.print_info("Done!")