summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJunegunn Choi <junegunn.c@gmail.com>2016-09-29 22:40:22 +0900
committerJunegunn Choi <junegunn.c@gmail.com>2016-09-29 22:40:22 +0900
commit04492bab10aeb0d081eeb8806792ccb77a8c5cb6 (patch)
treeed1543b0d1b85ac53c26e1a0ecc887328e5ea734
parent8b0d0342d43ed410e8542655932b60c9c0d817c6 (diff)
downloadfzf-04492bab10aeb0d081eeb8806792ccb77a8c5cb6.tar.gz
Use unicode.IsSpace to cover more whitespace characters
-rw-r--r--src/result.go3
-rw-r--r--src/util/chars.go7
2 files changed, 6 insertions, 4 deletions
diff --git a/src/result.go b/src/result.go
index 9152f671..bc1deb47 100644
--- a/src/result.go
+++ b/src/result.go
@@ -3,6 +3,7 @@ package fzf
import (
"math"
"sort"
+ "unicode"
"github.com/junegunn/fzf/src/curses"
"github.com/junegunn/fzf/src/util"
@@ -62,7 +63,7 @@ func buildResult(item *Item, offsets []Offset, score int, trimLen int) *Result {
for idx := 0; idx < numChars; idx++ {
r := item.text.Get(idx)
whitePrefixLen = idx
- if idx == minBegin || r != ' ' && r != '\t' {
+ if idx == minBegin || !unicode.IsSpace(r) {
break
}
}
diff --git a/src/util/chars.go b/src/util/chars.go
index 12417c66..061120e0 100644
--- a/src/util/chars.go
+++ b/src/util/chars.go
@@ -1,6 +1,7 @@
package util
import (
+ "unicode"
"unicode/utf8"
)
@@ -63,7 +64,7 @@ func (chars *Chars) TrimLength() int {
len := chars.Length()
for i = len - 1; i >= 0; i-- {
char := chars.Get(i)
- if char != ' ' && char != '\t' {
+ if !unicode.IsSpace(char) {
break
}
}
@@ -75,7 +76,7 @@ func (chars *Chars) TrimLength() int {
var j int
for j = 0; j < len; j++ {
char := chars.Get(j)
- if char != ' ' && char != '\t' {
+ if !unicode.IsSpace(char) {
break
}
}
@@ -86,7 +87,7 @@ func (chars *Chars) TrailingWhitespaces() int {
whitespaces := 0
for i := chars.Length() - 1; i >= 0; i-- {
char := chars.Get(i)
- if char != ' ' && char != '\t' {
+ if !unicode.IsSpace(char) {
break
}
whitespaces++