mirror of
https://github.com/go-gitea/gitea
synced 2025-07-22 18:28:37 +00:00
Improve issue & code search (#33860)
Each "indexer" should provide the "search modes" they support by themselves. And we need to remove the "fuzzy" search for code.
This commit is contained in:
54
modules/indexer/indexer.go
Normal file
54
modules/indexer/indexer.go
Normal file
@@ -0,0 +1,54 @@
|
||||
// Copyright 2025 The Gitea Authors. All rights reserved.
|
||||
// SPDX-License-Identifier: MIT
|
||||
|
||||
package indexer
|
||||
|
||||
type SearchModeType string
|
||||
|
||||
const (
|
||||
SearchModeExact SearchModeType = "exact"
|
||||
SearchModeWords SearchModeType = "words"
|
||||
SearchModeFuzzy SearchModeType = "fuzzy"
|
||||
SearchModeRegexp SearchModeType = "regexp"
|
||||
)
|
||||
|
||||
type SearchMode struct {
|
||||
ModeValue SearchModeType
|
||||
TooltipTrKey string
|
||||
TitleTrKey string
|
||||
}
|
||||
|
||||
func SearchModesExactWords() []SearchMode {
|
||||
return []SearchMode{
|
||||
{
|
||||
ModeValue: SearchModeExact,
|
||||
TooltipTrKey: "search.exact_tooltip",
|
||||
TitleTrKey: "search.exact",
|
||||
},
|
||||
{
|
||||
ModeValue: SearchModeWords,
|
||||
TooltipTrKey: "search.words_tooltip",
|
||||
TitleTrKey: "search.words",
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
func SearchModesExactWordsFuzzy() []SearchMode {
|
||||
return append(SearchModesExactWords(), []SearchMode{
|
||||
{
|
||||
ModeValue: SearchModeFuzzy,
|
||||
TooltipTrKey: "search.fuzzy_tooltip",
|
||||
TitleTrKey: "search.fuzzy",
|
||||
},
|
||||
}...)
|
||||
}
|
||||
|
||||
func GitGrepSupportedSearchModes() []SearchMode {
|
||||
return append(SearchModesExactWords(), []SearchMode{
|
||||
{
|
||||
ModeValue: SearchModeRegexp,
|
||||
TooltipTrKey: "search.regexp_tooltip",
|
||||
TitleTrKey: "search.regexp",
|
||||
},
|
||||
}...)
|
||||
}
|
Reference in New Issue
Block a user