|
- package main
-
- import (
- "flag"
- "fmt"
- amber "github.com/eknkc/amber"
- "os"
- )
-
- var prettyPrint bool
- var lineNumbers bool
-
- func init() {
- flag.BoolVar(&prettyPrint, "prettyprint", true, "Use pretty indentation in output html.")
- flag.BoolVar(&prettyPrint, "pp", true, "Use pretty indentation in output html.")
-
- flag.BoolVar(&lineNumbers, "linenos", true, "Enable debugging information in output html.")
- flag.BoolVar(&lineNumbers, "ln", true, "Enable debugging information in output html.")
-
- flag.Parse()
- }
-
- func main() {
- input := flag.Arg(0)
-
- if len(input) == 0 {
- fmt.Fprintln(os.Stderr, "Please provide an input file. (amberc input.amber)")
- os.Exit(1)
- }
-
- cmp := amber.New()
- cmp.PrettyPrint = prettyPrint
- cmp.LineNumbers = lineNumbers
-
- err := cmp.ParseFile(input)
-
- if err != nil {
- fmt.Fprintln(os.Stderr, err)
- os.Exit(1)
- }
-
- err = cmp.CompileWriter(os.Stdout)
-
- if err != nil {
- fmt.Fprintln(os.Stderr, err)
- os.Exit(1)
- }
- }
|