tavern/config/i18n.go

32 lines
645 B
Go

package config
import (
"github.com/go-playground/locales/en"
ut "github.com/go-playground/universal-translator"
"github.com/urfave/cli/v2"
)
var TranslationsFlag = cli.StringFlag{
Name: "translations",
Usage: "The path translations are located",
EnvVars: []string{"TRANSLATIONS"},
Value: "translations",
}
func Trans(cliCtx *cli.Context) (*ut.UniversalTranslator, error) {
english := en.New()
utrans := ut.New(english, english)
err := utrans.Import(ut.FormatJSON, cliCtx.String("translations"))
if err != nil {
return nil, err
}
err = utrans.VerifyTranslations()
if err != nil {
return nil, err
}
return utrans, nil
}