code: def extract_command(outputdir, domain_methods, text_domain, keywords,
                      comment_tags, base_dir, project, version,
                      msgid_bugs_address):
      
      # Must monkeypatch first to fix i18n extensions stomping issues!
      monkeypatch_i18n()
  
      # Create the outputdir if it doesn't exist
      outputdir = os.path.abspath(outputdir)
      if not os.path.isdir(outputdir):
          print('Creating output dir %s ...' % outputdir)
          os.makedirs(outputdir)
  
      domains = domain_methods.keys()
  
      def callback(filename, method, options):
          if method != 'ignore':
              print('  %s' % filename)
  
      # Extract string for each domain
      for domain in domains:
          print('Extracting all strings in domain %s...' % domain)
  
          methods = domain_methods[domain]
  
          catalog = Catalog(
              header_comment='',
              project=project,
              version=version,
              msgid_bugs_address=msgid_bugs_address,
              charset='utf-8',
          )
          extracted = extract_from_dir(
              base_dir,
              method_map=methods,
              options_map=generate_options_map(),
              keywords=keywords,
              comment_tags=comment_tags,
              callback=callback,
          )
  
          for filename, lineno, msg, cmts, ctxt in extracted:
              catalog.add(msg, None, [(filename, lineno)], auto_comments=cmts,
                          context=ctxt)
  
          with open(os.path.join(outputdir, '%s.pot' % domain), 'wb') as fp:
              write_po(fp, catalog, width=80)
  
      print('Done')
docs: Extracts strings into .pot files
  
      :arg domain: domains to generate strings for or 'all' for all domains
      :arg outputdir: output dir for .pot files; usually
          locale/templates/LC_MESSAGES/
      :arg domain_methods: DOMAIN_METHODS setting
      :arg text_domain: TEXT_DOMAIN settings
      :arg keywords: KEYWORDS setting
      :arg comment_tags: COMMENT_TAGS setting
      :arg base_dir: BASE_DIR setting
      :arg project: PROJECT setting
      :arg version: VERSION setting
      :arg msgid_bugs_address: MSGID_BUGS_ADDRESS setting