summaryrefslogtreecommitdiff
path: root/src/options.go
diff options
context:
space:
mode:
authorJunegunn Choi <junegunn.c@gmail.com>2025-01-26 01:50:08 +0900
committerJunegunn Choi <junegunn.c@gmail.com>2025-01-26 01:50:08 +0900
commit7220d8233e81291db8bda3d4eb5286ca45f07be0 (patch)
tree0bbb9c4593e50c0a06408982c0b907c30db8661b /src/options.go
parent0237bf09bf1fe70d94727b040ac39110f56b497f (diff)
downloadfzf-7220d8233e81291db8bda3d4eb5286ca45f07be0.tar.gz
Add 'search' and 'transform-search'
Close #4202
Diffstat (limited to 'src/options.go')
-rw-r--r--src/options.go12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/options.go b/src/options.go
index 9d233b57..2b9a5196 100644
--- a/src/options.go
+++ b/src/options.go
@@ -1332,7 +1332,7 @@ const (
func init() {
executeRegexp = regexp.MustCompile(
- `(?si)[:+](become|execute(?:-multi|-silent)?|reload(?:-sync)?|preview|(?:change|transform)-(?:query|prompt|(?:border|list|preview|input|header)-label|header)|transform|change-(?:preview-window|preview|multi|nth)|(?:re|un)bind|pos|put|print)`)
+ `(?si)[:+](become|execute(?:-multi|-silent)?|reload(?:-sync)?|preview|(?:change|transform)-(?:query|prompt|(?:border|list|preview|input|header)-label|header|search)|transform|change-(?:preview-window|preview|multi|nth)|(?:re|un)bind|pos|put|print|search)`)
splitRegexp = regexp.MustCompile("[,:]+")
actionNameRegexp = regexp.MustCompile("(?i)^[a-z-]+")
}
@@ -1744,6 +1744,10 @@ func isExecuteAction(str string) actionType {
return actTransformPrompt
case "transform-query":
return actTransformQuery
+ case "transform-search":
+ return actTransformSearch
+ case "search":
+ return actSearch
}
return actIgnore
}
@@ -3252,7 +3256,7 @@ func ParseOptions(useDefaults bool, args []string) (*Options, error) {
// 1. explicitly set --scheme=default,
// 2. or replace $FZF_DEFAULT_COMMAND with an equivalent 'start:reload'
// binding, which is the new preferred way.
- if !opts.hasReloadOnStart() && util.IsTty(os.Stdin) {
+ if !opts.hasReloadOrTransformOnStart() && util.IsTty(os.Stdin) {
opts.Scheme = "path"
}
_, opts.Criteria, _ = parseScheme(opts.Scheme)
@@ -3267,10 +3271,10 @@ func ParseOptions(useDefaults bool, args []string) (*Options, error) {
return opts, nil
}
-func (opts *Options) hasReloadOnStart() bool {
+func (opts *Options) hasReloadOrTransformOnStart() bool {
if actions, prs := opts.Keymap[tui.Start.AsEvent()]; prs {
for _, action := range actions {
- if action.t == actReload || action.t == actReloadSync {
+ if action.t == actReload || action.t == actReloadSync || action.t == actTransform {
return true
}
}