diff options
| author | Junegunn Choi <junegunn.c@gmail.com> | 2022-08-01 10:42:16 +0900 |
|---|---|---|
| committer | Junegunn Choi <junegunn.c@gmail.com> | 2022-08-02 20:57:12 +0900 |
| commit | bbbcd780c91b00a04bfc613364a82d36cbacd3e0 (patch) | |
| tree | 3a4971c1c92dabc61de1e26b2c0c0986c16a8c5b /src | |
| parent | 475469a2e7131c6917f8b46a4d2bdf0c02ca4a21 (diff) | |
| download | fzf-bbbcd780c91b00a04bfc613364a82d36cbacd3e0.tar.gz | |
Allow "--version" to be used as the argument to --query, --header, et al.
But why?
Diffstat (limited to 'src')
| -rw-r--r-- | src/options.go | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/options.go b/src/options.go index 1fdded3b..79748f7d 100644 --- a/src/options.go +++ b/src/options.go @@ -1742,12 +1742,20 @@ func postProcessOptions(opts *Options) { } } +func expectsArbitraryString(opt string) bool { + switch opt { + case "-q", "--query", "-f", "--filter", "--header", "--prompt": + return true + } + return false +} + // ParseOptions parses command-line options func ParseOptions() *Options { opts := defaultOptions() - for _, arg := range os.Args[1:] { - if arg == "--version" { + for idx, arg := range os.Args[1:] { + if arg == "--version" && (idx == 0 || idx > 0 && !expectsArbitraryString(os.Args[idx])) { opts.Version = true return opts } |
