docs: def cmd_dot(conf: Config):
      """Print out a neat targets dependency tree based on requested targets.
  
      Use graphviz to render the dot file, e.g.:
  
      > ybt dot :foo :bar | dot -Tpng -o graph.png
      """
      build_context = BuildContext(conf)
      populate_targets_graph(build_context, conf)
      if conf.output_dot_file is None:
          write_dot(build_context, conf, sys.stdout)
      else:
          with open(conf.output_dot_file, 'w') as out_file:
              write_dot(build_context, conf, out_file)