mirror of
https://github.com/stashapp/stash.git
synced 2025-12-18 12:54:38 +03:00
123 lines
3.1 KiB
Go
123 lines
3.1 KiB
Go
package flect
|
|
|
|
var singularRules = []rule{}
|
|
|
|
// AddSingular adds a rule that will replace the given suffix with the replacement suffix.
|
|
func AddSingular(ext string, repl string) {
|
|
singularMoot.Lock()
|
|
defer singularMoot.Unlock()
|
|
singularRules = append(singularRules, rule{
|
|
suffix: ext,
|
|
fn: func(s string) string {
|
|
s = s[:len(s)-len(ext)]
|
|
return s + repl
|
|
},
|
|
})
|
|
|
|
singularRules = append(singularRules, rule{
|
|
suffix: repl,
|
|
fn: func(s string) string {
|
|
return s
|
|
},
|
|
})
|
|
}
|
|
|
|
func init() {
|
|
AddSingular("ria", "rion")
|
|
AddSingular("news", "news")
|
|
AddSingular("halves", "half")
|
|
AddSingular("appendix", "appendix")
|
|
AddSingular("zzes", "zz")
|
|
AddSingular("ulas", "ula")
|
|
AddSingular("psis", "pse")
|
|
AddSingular("genus", "genera")
|
|
AddSingular("phyla", "phylum")
|
|
AddSingular("odice", "odex")
|
|
AddSingular("oxen", "ox")
|
|
AddSingular("ianos", "iano")
|
|
AddSingular("ulus", "uli")
|
|
AddSingular("mice", "mouse")
|
|
AddSingular("ouses", "ouse")
|
|
AddSingular("mni", "mnus")
|
|
AddSingular("ocus", "oci")
|
|
AddSingular("shoes", "shoe")
|
|
AddSingular("oasis", "oasis")
|
|
AddSingular("lice", "louse")
|
|
AddSingular("men", "man")
|
|
AddSingular("ta", "tum")
|
|
AddSingular("ia", "ium")
|
|
AddSingular("tives", "tive")
|
|
AddSingular("ldren", "ld")
|
|
AddSingular("people", "person")
|
|
AddSingular("aves", "afe")
|
|
AddSingular("uses", "us")
|
|
AddSingular("bves", "bfe")
|
|
AddSingular("cves", "cfe")
|
|
AddSingular("dves", "dfe")
|
|
AddSingular("eves", "efe")
|
|
AddSingular("gves", "gfe")
|
|
AddSingular("hves", "hfe")
|
|
AddSingular("chives", "chive")
|
|
AddSingular("ives", "ife")
|
|
AddSingular("movies", "movie")
|
|
AddSingular("jeans", "jeans")
|
|
AddSingular("cesses", "cess")
|
|
AddSingular("cess", "cess")
|
|
AddSingular("acti", "actus")
|
|
AddSingular("itzes", "itz")
|
|
AddSingular("usses", "uss")
|
|
AddSingular("uss", "uss")
|
|
AddSingular("jves", "jfe")
|
|
AddSingular("kves", "kfe")
|
|
AddSingular("mves", "mfe")
|
|
AddSingular("nves", "nfe")
|
|
AddSingular("moves", "move")
|
|
AddSingular("oves", "ofe")
|
|
AddSingular("pves", "pfe")
|
|
AddSingular("qves", "qfe")
|
|
AddSingular("sves", "sfe")
|
|
AddSingular("tves", "tfe")
|
|
AddSingular("uves", "ufe")
|
|
AddSingular("vves", "vfe")
|
|
AddSingular("wves", "wfe")
|
|
AddSingular("xves", "xfe")
|
|
AddSingular("yves", "yfe")
|
|
AddSingular("zves", "zfe")
|
|
AddSingular("hives", "hive")
|
|
AddSingular("lves", "lf")
|
|
AddSingular("rves", "rf")
|
|
AddSingular("quies", "quy")
|
|
AddSingular("bies", "by")
|
|
AddSingular("cies", "cy")
|
|
AddSingular("dies", "dy")
|
|
AddSingular("fies", "fy")
|
|
AddSingular("gies", "gy")
|
|
AddSingular("hies", "hy")
|
|
AddSingular("jies", "jy")
|
|
AddSingular("kies", "ky")
|
|
AddSingular("lies", "ly")
|
|
AddSingular("mies", "my")
|
|
AddSingular("nies", "ny")
|
|
AddSingular("pies", "py")
|
|
AddSingular("qies", "qy")
|
|
AddSingular("ries", "ry")
|
|
AddSingular("sies", "sy")
|
|
AddSingular("ties", "ty")
|
|
AddSingular("vies", "vy")
|
|
AddSingular("wies", "wy")
|
|
AddSingular("xies", "xy")
|
|
AddSingular("zies", "zy")
|
|
AddSingular("xes", "x")
|
|
AddSingular("ches", "ch")
|
|
AddSingular("sses", "ss")
|
|
AddSingular("shes", "sh")
|
|
AddSingular("oes", "o")
|
|
AddSingular("ress", "ress")
|
|
AddSingular("iri", "irus")
|
|
AddSingular("irus", "irus")
|
|
AddSingular("tuses", "tus")
|
|
AddSingular("tus", "tus")
|
|
AddSingular("s", "")
|
|
AddSingular("ss", "ss")
|
|
}
|