mirror of
https://github.com/danielmiessler/Fabric.git
synced 2026-02-12 23:15:05 -05:00
- Add GitHub and Buy Me a Coffee funding configuration. - Localize setup prompts and error messages across multiple languages. - Implement helper for localized questions with static environment keys. - Update environment variable builder to handle hyphenated plugin names. - Replace hardcoded console output with localized i18n translation strings. - Expand locale files with comprehensive pattern and strategy translations. - Add new i18n keys for optional and required markers - Remove hardcoded `[required]` markers from description strings - Add custom patterns, Jina AI, YouTube, and language labels - Switch plugin descriptions to use i18n translation keys - Append markers dynamically to setup descriptions in Go code - Remove trailing newlines from plugin question prompt strings - Standardize all locale files with consistent formatting changes
44 lines
984 B
Go
44 lines
984 B
Go
package lang
|
|
|
|
import (
|
|
"github.com/danielmiessler/fabric/internal/i18n"
|
|
"github.com/danielmiessler/fabric/internal/plugins"
|
|
"golang.org/x/text/language"
|
|
)
|
|
|
|
func NewLanguage() (ret *Language) {
|
|
|
|
label := "Language"
|
|
ret = &Language{}
|
|
|
|
ret.PluginBase = &plugins.PluginBase{
|
|
Name: i18n.T("language_label"),
|
|
SetupDescription: i18n.T("language_setup_description") + " " + i18n.T("optional_marker"),
|
|
EnvNamePrefix: plugins.BuildEnvVariablePrefix(label),
|
|
ConfigureCustom: ret.configure,
|
|
}
|
|
|
|
ret.DefaultLanguage = ret.AddSetupQuestionWithEnvName("Output", false,
|
|
i18n.T("language_output_question"))
|
|
|
|
return
|
|
}
|
|
|
|
type Language struct {
|
|
*plugins.PluginBase
|
|
DefaultLanguage *plugins.SetupQuestion
|
|
}
|
|
|
|
func (o *Language) configure() error {
|
|
if o.DefaultLanguage.Value != "" {
|
|
langTag, err := language.Parse(o.DefaultLanguage.Value)
|
|
if err == nil {
|
|
o.DefaultLanguage.Value = langTag.String()
|
|
} else {
|
|
o.DefaultLanguage.Value = ""
|
|
}
|
|
}
|
|
|
|
return nil
|
|
}
|