# Path: floyd/core/multiopt.py
#     def gettext(message):
#   def __init__(self,
#                indent_increment=2,
#                max_help_position=24,
#                width=None,
#                short_first=1):
#   def set_parser(self, parser):
#   def format_description(self, description):
#   def format_usage(self, usage):
#   def format_heading(self, heading):
#   def command_help_long(self):
#   def command_help_short(self):
#   def __init__(self,
#                  usage=None,
#                  option_list=None,
#                  version=None,
#                  description=None,
#                  add_help_option=True,
#                  prog=None,
#                  epilog=None,
#                  commands=[]):
#   def error(self, msg):
#   def exit(self, status=0, msg=None):
#   def print_version(self, file=None):
#   def print_help(self, file=None):
#   def print_cmd_error(self, errstr=None):
#   def print_exec_error(self, errcmd=None, errstr=None):
#   def _print_err(self, errstr=""):
#   def print_lax_help(self):
#   def _process_args(self, largs, rargs, values):
#   def __init__(self,
#                  usage=None,
#                  option_list=None,
#                  version=None,
#                  description=None,
#                  add_help_option=True,
#                  prog=None,
#                  epilog=None,
#                  help_short=None,
#                  help_long=None,
#                  cmdname=None):
#   def print_exec_error(self, errcmd=None, errstr=None):
#   def print_help_long(self):
#   def format_help_long(self):
#   def _print_err(self, errstr=""):
#   def _print(self, helpstr, file=None):
#   def __init__(self, header=None, footer=None, options=None, cmdname=None):
#   def set_cmdname(self, cmdname):
#   def get_parser(self, clsname, version, global_options):
#   def __init__(self, func=None, usage=None, desc_short='', options=[], arguments=[], desc_long='', common=True, header=None, footer=None):
#   def __call__(self, func):
#   def __init__(self, command_set={}, argv=[], clsname='', version='', 
#                desc_short="", global_options=[], add_help=False, 
#                add_version=False, footer=None):
#   def _attach_help_command(self):
#   def _attach_version_command(self):
#   def autocomplete(self):
#   def run(self):
# class CommandError(Exception): pass
# class ArgumentError(Exception): pass
# class OptionError(Exception): pass
# class MultioptHelpFormatter(optparse.HelpFormatter):
# class MultioptOptionParser(optparse.OptionParser):
# class SubcommandParser(optparse.OptionParser):
# class BaseCommand(object):
# class SubCommand(BaseCommand):
# class MultioptParser(object):


import os
import sys
import logging
import floyd.core.commands
from floyd.core.multiopt import MultioptParser, SubCommand, make_option


commands = {

  'init': SubCommand(
    func=floyd.core.commands.init,
    usage='%prog init [options] <type> [directory]',
    desc_short='Initialize a new site directory',
    desc_long="""Generates a new site with a template in directory
specified by <directory> or by default in the
current directory

'type' must be one of 'static', 'gae' for AppEngine or 's3' for Amazon S3""",
    options=[
    ]
  ),

  'generate': SubCommand(
    func=floyd.core.commands.generate,
    usage='%prog [options] generate <source> <destination>',
    desc_short='Generate site or page from source into destination',
    desc_long="""Generate a single page from markdown source 'README.md' to HTML page 'README.html':

  $ floyd generate README.md README.html

Generate from a site directory with config to an output directory using template 'default'

  $ floyd generate -t default sources/ site/
""",
    options=[

# Path: floyd/core/multiopt.py
#     def gettext(message):
#   def __init__(self,
#                indent_increment=2,
#                max_help_position=24,
#                width=None,
#                short_first=1):
#   def set_parser(self, parser):
#   def format_description(self, description):
#   def format_usage(self, usage):
#   def format_heading(self, heading):
#   def command_help_long(self):
#   def command_help_short(self):
#   def __init__(self,
#                  usage=None,
#                  option_list=None,
#                  version=None,
#                  description=None,
#                  add_help_option=True,
#                  prog=None,
#                  epilog=None,
#                  commands=[]):
#   def error(self, msg):
#   def exit(self, status=0, msg=None):
#   def print_version(self, file=None):
#   def print_help(self, file=None):
#   def print_cmd_error(self, errstr=None):
#   def print_exec_error(self, errcmd=None, errstr=None):
#   def _print_err(self, errstr=""):
#   def print_lax_help(self):
#   def _process_args(self, largs, rargs, values):
#   def __init__(self,
#                  usage=None,
#                  option_list=None,
#                  version=None,
#                  description=None,
#                  add_help_option=True,
#                  prog=None,
#                  epilog=None,
#                  help_short=None,
#                  help_long=None,
#                  cmdname=None):
#   def print_exec_error(self, errcmd=None, errstr=None):
#   def print_help_long(self):
#   def format_help_long(self):
#   def _print_err(self, errstr=""):
#   def _print(self, helpstr, file=None):
#   def __init__(self, header=None, footer=None, options=None, cmdname=None):
#   def set_cmdname(self, cmdname):
#   def get_parser(self, clsname, version, global_options):
#   def __init__(self, func=None, usage=None, desc_short='', options=[], arguments=[], desc_long='', common=True, header=None, footer=None):
#   def __call__(self, func):
#   def __init__(self, command_set={}, argv=[], clsname='', version='', 
#                desc_short="", global_options=[], add_help=False, 
#                add_version=False, footer=None):
#   def _attach_help_command(self):
#   def _attach_version_command(self):
#   def autocomplete(self):
#   def run(self):
# class CommandError(Exception): pass
# class ArgumentError(Exception): pass
# class OptionError(Exception): pass
# class MultioptHelpFormatter(optparse.HelpFormatter):
# class MultioptOptionParser(optparse.OptionParser):
# class SubcommandParser(optparse.OptionParser):
# class BaseCommand(object):
# class SubCommand(BaseCommand):
# class MultioptParser(object):


# Path: floyd/core/command_utils.py
import os
import sys
import logging
import floyd.core.commands
from floyd.core.multiopt import MultioptParser, SubCommand, make_option



commands = {

  'init': SubCommand(
    func=floyd.core.commands.init,
    usage='%prog init [options] <type> [directory]',
    desc_short='Initialize a new site directory',
    desc_long="""Generates a new site with a template in directory
specified by <directory> or by default in the
current directory

'type' must be one of 'static', 'gae' for AppEngine or 's3' for Amazon S3""",
    options=[
    ]
  ),

  'generate': SubCommand(
    func=floyd.core.commands.generate,
    usage='%prog [options] generate <source> <destination>',
    desc_short='Generate site or page from source into destination',
    desc_long="""Generate a single page from markdown source 'README.md' to HTML page 'README.html':

  $ floyd generate README.md README.html

Generate from a site directory with config to an output directory using template 'default'

  $ floyd generate -t default sources/ site/
""",
    options=[

      make_option('-t', '--template', action="store", default='default', type="string", dest="template"),