github.com/argots/stencil@v0.0.2/stencil.go (about)

     1  package main
     2  
     3  import (
     4  	"flag"
     5  	"log"
     6  	"os"
     7  
     8  	"github.com/argots/stencil/pkg/stencil"
     9  )
    10  
    11  func main() {
    12  	baseDir, err := stencil.BaseDir()
    13  	if err != nil {
    14  		log.Fatal("stencil: basedir", err)
    15  	}
    16  
    17  	flags := flag.NewFlagSet("stencil", flag.ExitOnError)
    18  	verbose := log.New(os.Stdout, "stencil: ", 0)
    19  	errorl := log.New(os.Stderr, "stencil: ", 0)
    20  	fs := &stencil.FS{BaseDir: baseDir, Verbose: verbose, Errorl: errorl}
    21  	p := &stencil.ConsolePrompt{Stdin: os.Stdin, Stdout: os.Stdout}
    22  
    23  	s := stencil.New(verbose, errorl, p, fs)
    24  	if err := s.Main(flags, os.Args); err != nil {
    25  		errorl.Printf("error %v\n", err)
    26  		os.Exit(1)
    27  	}
    28  }