diff options
| author | unwox <me@unwox.com> | 2024-10-15 16:31:16 +0600 |
|---|---|---|
| committer | unwox <me@unwox.com> | 2024-10-15 16:31:16 +0600 |
| commit | ccce95dcd0cb3336182dd38faa0d56acd1b728e4 (patch) | |
| tree | f70790480d0f7bf4dcf54cca1bdafc47e0a0eadc /main.go | |
| parent | 36a70cd8311ea60e621edfffeddb545ba8792f42 (diff) | |
improve luna.utf methods
Diffstat (limited to 'main.go')
| -rw-r--r-- | main.go | 7 |
1 files changed, 5 insertions, 2 deletions
@@ -10,6 +10,7 @@ import ( "log" "net/http" "os" + "unicode/utf8" "runtime" "runtime/cgo" "strings" @@ -348,7 +349,7 @@ func main() { if err != nil { return luaErr(l, err) } - return luaOk(l, len(str)) + return luaOk(l, utf8.RuneCountInString(str)) } utfModule["lower"] = func (l *Lua) int { var str string @@ -365,7 +366,9 @@ func main() { if err != nil { return luaErr(l, err) } - return luaOk(l, str[start-1:start-1+length]) + runes := []rune(str) + cut := runes[start-1:start-1+length] + return luaOk(l, string(cut)) } module := make(map[string]any) |
