1
0
forked from um/cli

Compare commits

..

No commits in common. "main" and "main" have entirely different histories.
main ... main

View File

@ -122,32 +122,27 @@ func appMain(c *cli.Context) (err error) {
printSupportedExtensions() printSupportedExtensions()
return nil return nil
} }
var inputs []string
input := c.String("input") input := c.String("input")
if input != "" { if input == "" {
inputs = append(inputs, input) switch c.Args().Len() {
case 0:
input = cwd
case 1:
input = c.Args().Get(0)
default:
return errors.New("please specify input file (or directory)")
}
} }
if c.Args().Len() > 0 {
inputs = append(inputs, c.Args().Slice()...)
}
if len(inputs) == 0 {
inputs = append(inputs, cwd)
}
for _, input := range inputs {
input, absErr := filepath.Abs(input) input, absErr := filepath.Abs(input)
if absErr != nil { if absErr != nil {
logger.Warn("get abs path failed", zap.String("input", input), zap.Error(absErr)) return fmt.Errorf("get abs path failed: %w", absErr)
continue
} }
output := c.String("output")
inputStat, err := os.Stat(input) inputStat, err := os.Stat(input)
if err != nil { if err != nil {
logger.Warn("stat input failed", zap.String("input", input), zap.Error(err)) return err
continue
} }
var inputDir string var inputDir string
@ -161,7 +156,6 @@ func appMain(c *cli.Context) (err error) {
return fmt.Errorf("get abs path (inputDir) failed: %w", absErr) return fmt.Errorf("get abs path (inputDir) failed: %w", absErr)
} }
output := c.String("output")
if output == "" { if output == "" {
// Default to where the input dir is // Default to where the input dir is
output = inputDir output = inputDir
@ -202,19 +196,14 @@ func appMain(c *cli.Context) (err error) {
if inputStat.IsDir() { if inputStat.IsDir() {
watchDir := c.Bool("watch") watchDir := c.Bool("watch")
if !watchDir { if !watchDir {
err = proc.processDir(input) return proc.processDir(input)
} else { } else {
err = proc.watchDir(input) return proc.watchDir(input)
} }
} else { } else {
err = proc.processFile(input) return proc.processFile(input)
}
if err != nil {
logger.Error("conversion failed", zap.String("source", input), zap.Error(err))
}
} }
return nil
} }
type processor struct { type processor struct {