Ariver
2026-06-03 9a85354d8b41e05ba8729cd8f44592291de9117a
privatevoice.src/internal/model/registry.go
@@ -1,6 +1,9 @@
package model
import "fmt"
import (
   "fmt"
   "sort"
)
const (
   BackendSenseVoice = "sensevoice"
@@ -43,11 +46,20 @@
}
var languageProfiles = map[string]LanguageProfile{
   "zh-CN": {
      ID:             "zh-CN",
      DisplayName:    "中文",
      UILocale:       "zh-CN",
   DefaultLanguageID: {
      ID:             DefaultLanguageID,
      DisplayName:    "Chinese",
      NativeName:     "中文",
      UILocale:       "zh",
      SystemMatchers: []string{"zh", "zh-CN", "zh-Hans", "zh-Hant"},
      DefaultModelID: DefaultModelID,
   },
   EnglishLanguageID: {
      ID:             EnglishLanguageID,
      DisplayName:    "English",
      NativeName:     "English",
      UILocale:       "en",
      SystemMatchers: []string{"en", "en-US", "en-GB", "en-AU", "en-CA"},
      DefaultModelID: DefaultModelID,
   },
}
@@ -95,5 +107,21 @@
   for _, profile := range languageProfiles {
      profiles = append(profiles, profile)
   }
   sort.Slice(profiles, func(i, j int) bool {
      if profiles[i].ID == DefaultLanguageID {
         return true
      }
      if profiles[j].ID == DefaultLanguageID {
         return false
      }
      return profiles[i].ID < profiles[j].ID
   })
   return profiles
}
func NormalizeLanguageID(id string) string {
   if _, err := GetLanguageProfile(id); err != nil {
      return DefaultLanguageID
   }
   return id
}