docs: def main():
      """Main function for :command:`fabulous-text`."""
      import optparse
      parser = optparse.OptionParser()
      parser.add_option(
          "-l", "--list", dest="list", action="store_true", default=False,
          help=("List available fonts"))
      parser.add_option(
          "-S", "--skew", dest="skew", type="int", default=None,
          help=("Apply skew effect (measured in pixels) to make it look "
                "extra cool.  For example, Fabulous' logo logo is skewed "
                "by 5 pixels.  Default: %default"))
      parser.add_option(
          "-C", "--color", dest="color", default="#0099ff",
          help=("Color of your text.  This can be specified as you would "
                "using HTML/CSS.  Default: %default"))
      parser.add_option(
          "-B", "--term-color", dest="term_color", default=None,
          help=("If you terminal background isn't black, please change "
                "this value to the proper background so semi-transparent "
                "pixels will blend properly."))
      parser.add_option(
          "-F", "--font", dest="font", default='NotoSans-Bold',
          help=("Name of font file, or absolute path to one. Use the --list "
                "flag to see what fonts are available. Fabulous bundles the "
                "NotoSans-Bold and NotoEmoji-Regular fonts, which are guaranteed "
                "to work. Default: %default"))
      parser.add_option(
          "-Z", "--size", dest="fsize", type="int", default=23,
          help=("Size of font in points.  Default: %default"))
      parser.add_option(
          "-s", "--shadow", dest="shadow", action="store_true", default=False,
          help=("Size of font in points.  Default: %default"))
      (options, args) = parser.parse_args(args=sys.argv[1:])
      if options.list:
          print("\n".join(sorted(get_font_files())))
          return
      if options.term_color:
          utils.term.bgcolor = options.term_color
      text = " ".join(args)
      if not isinstance(text, unicode):
          text = text.decode('utf-8')
      for line in text.split("\n"):
          fab_text = Text(line, skew=options.skew, color=options.color,
                          font=options.font, fsize=options.fsize,
                          shadow=options.shadow)
          for chunk in fab_text:
              printy(chunk)