-
<c       s5    d  Z    h  d d <d d <d d <d d <d	 d
 <d d <d d <d d <Z 0 y 1 e d i d  d Z Wn 2 3 d Z n X8 d k Z 9 d k Z : d k Z ; d k Z < d k Z = d k	 Z	 > d k
 Z
 ? d k Z D d k Z J d Z K e Z M d e i i f d     YZ d S(   s.   Command line application class for HappyDoc.

s   $RCSfile: appclass.py,v $s   module_names=   $Id: appclass.py,v 1.9 2002/05/12 20:17:56 doughellmann Exp $s   rcs_ids    Doug Hellmann <doug@hellfly.net>s   creators   HappyDocs   projects   Sun, 13-Aug-2000 11:27:00 EDTs   createds   $Author: doughellmann $s   authors   $Revision: 1.9 $s   versions   $Date: 2002/05/12 20:17:56 $s   dates    i   s   0.0Nc      s  M d  Z  V X d Z Z e Z [ e Z \ d Z ] e Z ^ d Z _ d Z	 ` d Z
 a e Z c e Z d d Z i e i i   Z n e i i   Z s e i i   Z y d   Z  d   Z  d	   Z  d
   Z  d   Z  d   Z  d   Z  d   Z  d   Z   d   Z! d   Z" 	d   Z# d   Z$ !d   Z% &d   Z& +d   Z' 3d   Z( 8d   Z) =d   Z* Hd   Z+ RS(   s  
    HappyDoc is a documentation generation/extraction tool which does
    not depend on being able to import modules.

    The data extraction library used by this app is based on the
    Demos/parser/example.py module distributed with the Python source
    distribution.

    s   file...s   ./docs    Doug Hellmann <doug@hellfly.net>s    http://HappyDoc.sourceforge.net/s
   README.txts    HappyDoc Generated Documentationc    s   y z |  i i |  _ { t i   |  _ } |  i d  ~ |  i d   g  |  _	  |  i
 d d d d d   t i i |  _  d  Sd  S(   Ns	   MultiFiles	   HTMLTables   CVSs   dists   builds   docs   docs(   s   selfs	   __class__s   __name__s	   _app_names   happydoclibs   cvsProductVersions   _app_versions   set_docset_types
   set_formats   _ignore_dir_patternss   addIgnoreDirectoryPatterns	   parseinfos   getDocss   parser_function(   s   self(    (    sR   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/appclass.pys   appInity s   c    si      xR | D ]G }  | |  i j o.  |  i i |   |  i d | d  n q W d Sd S(   sL   Add one or more directory name patterns to the list which should be ignored.s   Ignoring %si   N(   s   dirNamePatternss   dir_name_patterns   selfs   _ignore_dir_patternss   appends   statusMessage(   s   selfs   dirNamePatternss   dir_name_pattern(    (    sR   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/appclass.pys   addIgnoreDirectoryPattern s   
 	c    sD      t  i i |  }  | |  i j o  d Sn  d Sd S(   s   Determines whether 'dirName' matches pattern to be ignored.

        Arguments

          'dirName' -- Full path of the directory to be tested.

        Returns true value if 'dirName' should be ignored, false value
        otherwise.

        i   i    N(   s   happydoclibs   paths   basenames   dirNames   dir_bases   selfs   _ignore_dir_patterns(   s   selfs   dirNames   dir_base(    (    sR   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/appclass.pys   ignoreDirectoryTest s
   
c    sr      | |  _   y  |  i | |  _ Wn8  t j
 o)  t d |  i i    |   n X d Sd S(   s   Set the formatter to be used.s   format must be one of %sN(   s   formats   selfs   supported_formatss   formatter_factorys   KeyErrors
   ValueErrors   keys(   s   selfs   format(    (    sR   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/appclass.pys
   set_format s   c    sr      | |  _   y  |  i | |  _ Wn8  t j
 o)  t d |  i i    |   n X d Sd S(   s   Set the docset to be used.s   docset_type must be one of %sN(   s   docset_types   selfs   supported_docset_typess   docset_factorys   KeyErrors
   ValueErrors   keys(   s   selfs   docset_type(    (    sR   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/appclass.pys   set_docset_type s   c    s     | i    x^ | D ]S \ } }  | i o  t | i  i   } n
  d }  d | | | f GHq W d  Sd  S(   Ns    s     %s %s: %s
(	   s   itemss   sorts   names   objs   __doc__s   strs   strips   descriptions   title(   s   selfs   titles   itemss   objs   descriptions   name(    (    sR   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/appclass.pys   _showOptionItemsDescription s   
 	c    s     t  i i i |    d GH |  i d |  i i     H d GH |  i d |  i i     d GH H d t  i i	 i
 GH H |  i d |  i i     H d GH H d	 GH d
 GH d GH H d GH H d GH H d GH d GH d GH H d Sd S(   s5   Overloaded to show supported docset and format types.s   SUPPORTED DOCSTRING SYNTAXES:
s   SYNTAX TYPEs!   SUPPORTED FORMATS for -F Option:
s   FORMATTER TYPEs%   SUPPORTED DOCSET TYPES for -T Option:s     %ss   DOCSET TYPEs   PARSER ARGUMENTS:s6     Parser arguments control the default behavior of thes5     documentation extraction parser.  Pass the arguments6     as an argument on the command line using the syntax:s       parser_<argument>=values     Arguments:s6       docStringFormat -- Name of the docstring converters?                          format used in the inline documentation.s4                          Defaults to "StructuredText".N(   s   happydoclibs   CommandLineApps   showVerboseSyntaxHelps   selfs   _showOptionItemsDescriptions   docstring_syntaxess   itemss   supported_formatss   happydocsets   DocSets   __doc__s   supported_docset_types(   s   self(    (    sR   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/appclass.pys   showVerboseSyntaxHelp s8   c    s      | |  _  d Sd S(   sQ   Specify the author identification to be inserted for
        references.
        N(   s   authorNameAndEmails   selfs   author_name(   s   selfs   authorNameAndEmail(    (    sR   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/appclass.pys   optionHandler_author s   c    s)      t  i i |  |  _  d Sd S(   s9   Specify an outputDirectory.

        Defaults to './doc'.N(   s   oss   paths   normcases   outputDirectorys   selfs   output_directory(   s   selfs   outputDirectory(    (    sR   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/appclass.pys   optionHandler_d s   c    s1      |  i d   |  i d   d Sd S(   s2   Generate UML diagram in Gnome dia format.
        s   DiaN(   s   selfs   set_docset_types
   set_format(   s   self(    (    sR   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/appclass.pys   optionHandler_dia s   c    s!   |  i |  d Sd S(   s<   Specify the output format.

        Defaults to 'HTMLTable'.N(   s   selfs
   set_formats   format(   s   selfs   format(    (    sR   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/appclass.pys   optionHandler_Fs   c    sG   	t  i |  } |  i d |  |  i |  d Sd S(   s  Specify a directory basename to be ignored.

        Use just the base name of the directory.
        For instance, to ignore all directories
        with the name CVS, specify: -i CVS.

        Defaults to ignore::
        
          CVS, dist, build, doc, docs.
          
        s   Adding ignore directive for %sN(   s   strings   strips   ignoreDirectorys   selfs   statusMessages   addIgnoreDirectoryPattern(   s   selfs   ignoreDirectory(    (    sR   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/appclass.pys   optionHandler_i	s
   c    s   t  |  _ d Sd S(   sR   Do not include comment text as though it was
           a __doc__ string.
        N(   s   Falses   selfs   include_comments(   s   self(    (    sR   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/appclass.pys   optionHandler_no_commentss   c    s   !"#t  |  _ $d Sd S(   s&   Do not include names beginning with _.N(   s   Falses   selfs   include_private_names(   s   self(    (    sR   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/appclass.pys   optionHandler_no_private_names!s   c    s!   &'(|  i d  )d Sd S(   s(   Specify that output should go to stdout.s   StdOutN(   s   selfs   set_docset_type(   s   self(    (    sR   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/appclass.pys   optionHandler_o&s   c    s   +/0| |  _ 1d Sd S(   su   Specify a file with a description of the package.

        The default packageDescriptionFile is README.txt.
        N(   s   packageDescriptionFiles   selfs   package_description_file(   s   selfs   packageDescriptionFile(    (    sR   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/appclass.pys   optionHandler_p+s   c    s   345t  |  _ 6d Sd S(   s&   Disable recursion into subdirectories.N(   s   Falses   selfs   recurse_into_subdirs(   s   self(    (    sR   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/appclass.pys   optionHandler_r3s   c    s   89:| |  _ ;d Sd S(   s*   Specify a title for the documentation set.N(   s   titles   selfs   docset_title(   s   selfs   title(    (    sR   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/appclass.pys   optionHandler_t8s   c    s!   =@A|  i |  Bd Sd S(   sL   Specify the documentation set type.

        Defaults to 'multifile_docset'.N(   s   selfs   set_docset_types   docset_type(   s   selfs   docset_type(    (    sR   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/appclass.pys   optionHandler_T=s   c    sk  HJ|  i d |  i |  i f  P|  i d t i i d Qd  R|  i d t i i d Sd  T|  i d t i i d Ud  Zh  d d <} `|  i d	 d
  at i
 i d |  \ } } c| i |  d|  i d d  ex: | i   De]) \ } }
 f|  i d | |
 f d  qWk|  i d d
  lt i
 i d |  \ } } m|  i d d  nx: | i   Dn]) \ } }
 o|  i d | |
 f d  qWt|  i d d
  ut i
 i d |  \ } } v|  i d d  wx: | i   Dw]) \ } }
 x|  i d | |
 f d  qW}| o# |  i d  |  i d  n= g  } x- | D]" } | i t i i |   q~W|  i o |  i } |  i d |  i d
  | d d j o< t i i t i i    |  } |  i d | d
  n t i i! |  } |  i d | d
  t i i" |  | |  _ n h  |  i# d <|  i$ d <| d <| d <|  i% d <|  i d  <|  i& d! <| d" <|  i' d# <|  i( d$ <|  i) d% <|  i d& <|  i* d' <|  i+ d( <}	 |	 i |  t- |  i. f  |	  } | i0   t1 } d  Sd  S()   Ns   %s version %ss   Docstring converters from %si    i   s   Docsets list from %ss   Formatters from %ss   StructuredTexts   docStringFormats   Looking for parser parametersi   s   parsers   DEBUG: Parser parameters:i   s   DEBUG: 	%s:%ss   Looking for docset parameterss   docsets   DEBUG: Docset parameters:s    Looking for formatter parameterss	   formatters   DEBUG: Formatter parameters:s&   Specify input file(s) to be processed.s   No input file(s) specified.s   Output directory is %ss   /s   Setting output directory to %ss   Creating output directory %ss   formatterFactorys
   parserFuncs   defaultParserConfigValuess   inputModuleNamess   authors   outputBaseDirectorys   descriptionFilenames   formatterParameterss   ignoreDirFuncs   includeCommentss   includePrivateNamess   statusMessageFuncs   titles   useRecursion(2   s   selfs   statusMessages	   _app_names   _app_versions   happydoclibs	   docstrings   __path__s   docsets	   formatters   parser_paramss   optiontoolss   getParameterss   argss   user_supplied_parser_paramss   updates   itemss   ps   vs   docset_paramss   formatter_paramss   showHelps   HelpRequesteds   input_moduless   input_module_names   appends   oss   paths   normcases   outputs   output_directorys   ods   joins   cwds   normpaths   rmkdirs   formatter_factorys   parser_functions   author_names   package_description_files   ignoreDirectoryTests   include_commentss   include_private_namess   docset_titles   recurse_into_subdirss   docset_init_paramss   applys   docset_factorys   parsed_moduless   writes   None(   s   selfs   argss   user_supplied_parser_paramss   docset_paramss   input_moduless   parsed_moduless   parser_paramss   ps   input_module_names   docset_init_paramss   vs   formatter_paramss   od(    (    sR   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/appclass.pys   mainHsd    


 ! ! !	
 	 !	(,   s   __doc__s   shortArgumentsDescriptions   Trues   include_private_namess   include_commentss   output_directorys   Nones   outputs   author_names   app_homes   package_description_files   recurse_into_subdirss   docset_types   docset_titles   happydoclibs	   docstrings   DocStringLoaders   docstring_syntaxess	   formatters   FormatterLoaders   supported_formatss   docsets   DocSetLoaders   supported_docset_typess   appInits   addIgnoreDirectoryPatterns   ignoreDirectoryTests
   set_formats   set_docset_types   _showOptionItemsDescriptions   showVerboseSyntaxHelps   optionHandler_authors   optionHandler_ds   optionHandler_dias   optionHandler_Fs   optionHandler_is   optionHandler_no_commentss   optionHandler_no_private_namess   optionHandler_os   optionHandler_ps   optionHandler_rs   optionHandler_ts   optionHandler_Ts   main(    (    (    sR   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/appclass.pys   HappyDocM sF   													
*(   s   __doc__s   __rcs_info__s   splits   __version__s   oss   globs   syss   typess   strings   res   parsers	   tracebacks   happydoclibs   Trues   Nones   Falses   CommandLineApps   HappyDoc(   s	   tracebacks   Falses   strings   Trues   globs   parsers   syss   res   typess   HappyDocs   __version__s   oss   happydoclibs   __rcs_info__(    (    sR   /home/dhellmann/Personal/Devel/HappyDoc/dist/HappyDoc-r2_1/happydoclib/appclass.pys   ? s"   Q		