From 4ecb7f3a162186fd7758f3bdedb3a0b4bb32f9d0 Mon Sep 17 00:00:00 2001 From: Junegunn Choi Date: Sun, 15 Jan 2017 13:22:09 +0900 Subject: [PATCH] Replace --normalize with --literal and enable normalization by default Ref #790 --- CHANGELOG.md | 5 +++-- man/man1/fzf.1 | 5 ++--- shell/completion.bash | 1 + src/options.go | 10 +++++----- 4 files changed, 11 insertions(+), 10 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index fbc1e41..22a5b75 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -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 ------ diff --git a/man/man1/fzf.1 b/man/man1/fzf.1 index 2ef3cdd..8980316 100644 --- a/man/man1/fzf.1 +++ b/man/man1/fzf.1 @@ -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) diff --git a/shell/completion.bash b/shell/completion.bash index 9c4cdb1..d17bb19 100644 --- a/shell/completion.bash +++ b/shell/completion.bash @@ -67,6 +67,7 @@ _fzf_opts_completion() { --no-hscroll --jump-labels --height + --literal --reverse --margin --inline-info diff --git a/src/options.go b/src/options.go index bcd2458..a0653d4 100644 --- a/src/options.go +++ b/src/options.go @@ -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":