Replace --normalize with --literal and enable normalization by default

Ref #790
pull/794/head
Junegunn Choi 7 years ago
parent 03f5ef08c8
commit 4ecb7f3a16
No known key found for this signature in database
GPG Key ID: 254BC280FEF9C627

@ -6,8 +6,9 @@ CHANGELOG
- Added `--height HEIGHT[%]` option
- Preview window will truncate long lines by default. Line wrap can be enabled
by `:wrap` flag in `--preview-window`.
- Added `--normalize` option to normalize latin script letters before
matching. e.g. `sodanco` can match `Só Danço Samba`.
- Latin script letters will be normalized before matching so that it's easier
to match against accented letters. e.g. `sodanco` can match `Só Danço Samba`.
- Normalization can be disabled via `--literal`
0.15.9
------

@ -48,9 +48,8 @@ Case-insensitive match (default: smart-case match)
.B "+i"
Case-sensitive match
.TP
.B "--normalize"
Normalize latin script letters before matching. This is not enabled by default
to avoid performance overhead.
.B "--literal"
Do not normalize latin script letters for matching.
.TP
.BI "--algo=" TYPE
Fuzzy matching algorithm (default: v2)

@ -67,6 +67,7 @@ _fzf_opts_completion() {
--no-hscroll
--jump-labels
--height
--literal
--reverse
--margin
--inline-info

@ -24,7 +24,7 @@ const usage = `usage: fzf [options]
--algo=TYPE Fuzzy matching algorithm: [v1|v2] (default: v2)
-i Case-insensitive match (default: smart-case match)
+i Case-sensitive match
--normalize Normalize latin script letters before matching
--literal Do not normalize latin script letters before matching
-n, --nth=N[,..] Comma-separated list of field index expressions
for limiting search scope. Each can be a non-zero
integer or a range expression ([BEGIN]..[END]).
@ -190,7 +190,7 @@ func defaultOptions() *Options {
FuzzyAlgo: algo.FuzzyMatchV2,
Extended: true,
Case: CaseSmart,
Normalize: false,
Normalize: true,
Nth: make([]Range, 0),
WithNth: make([]Range, 0),
Delimiter: Delimiter{},
@ -901,10 +901,10 @@ func parseOptions(opts *Options, allArgs []string) {
case "-f", "--filter":
filter := nextString(allArgs, &i, "query string required")
opts.Filter = &filter
case "--normalize":
opts.Normalize = true
case "--no-normalize":
case "--literal":
opts.Normalize = false
case "--no-literal":
opts.Normalize = true
case "--algo":
opts.FuzzyAlgo = parseAlgo(nextString(allArgs, &i, "algorithm required (v1|v2)"))
case "--expect":

Loading…
Cancel
Save