Move simplified string-utf8? to util-utf8.
This commit is contained in:
parent
0b383c6fa6
commit
06746c1c40
4 changed files with 12 additions and 11 deletions
|
@ -314,7 +314,7 @@ util-proc.o: util-proc.import.scm
|
||||||
util-proc.import.scm: $(UTIL-PROC-SOURCES)
|
util-proc.import.scm: $(UTIL-PROC-SOURCES)
|
||||||
|
|
||||||
UTIL-MAIL-SOURCES=util-mail.scm util-io.import.scm \
|
UTIL-MAIL-SOURCES=util-mail.scm util-io.import.scm \
|
||||||
util-string.import.scm
|
util-string.import.scm util-utf8.import.scm
|
||||||
|
|
||||||
util-mail.o: util-mail.import.scm
|
util-mail.o: util-mail.import.scm
|
||||||
util-mail.import.scm: $(UTIL-MAIL-SOURCES)
|
util-mail.import.scm: $(UTIL-MAIL-SOURCES)
|
||||||
|
|
|
@ -37,6 +37,7 @@
|
||||||
(chicken keyword)
|
(chicken keyword)
|
||||||
(chicken string)
|
(chicken string)
|
||||||
util-io
|
util-io
|
||||||
|
util-utf8
|
||||||
util-string)
|
util-string)
|
||||||
|
|
||||||
;; All emails go to this override
|
;; All emails go to this override
|
||||||
|
|
|
@ -30,8 +30,6 @@
|
||||||
(
|
(
|
||||||
string-first+rest
|
string-first+rest
|
||||||
|
|
||||||
string-utf8?
|
|
||||||
|
|
||||||
string->qp
|
string->qp
|
||||||
|
|
||||||
string-upcase
|
string-upcase
|
||||||
|
@ -56,12 +54,6 @@
|
||||||
(cons key-str val))
|
(cons key-str val))
|
||||||
(cons str ""))))
|
(cons str ""))))
|
||||||
|
|
||||||
;; Returns true, if given string contains UTF-8 characters
|
|
||||||
(define (string-utf8? str)
|
|
||||||
(let ((asciilen (string-length str))
|
|
||||||
(utf8len (length (string->list/utf8 str))))
|
|
||||||
(not (= asciilen utf8len))))
|
|
||||||
|
|
||||||
;; Converts given UTF-8 string into a list of UTF-8 string characters.
|
;; Converts given UTF-8 string into a list of UTF-8 string characters.
|
||||||
(define (string->list/utf8 str)
|
(define (string->list/utf8 str)
|
||||||
(irregex-extract (irregex "." 'u) str))
|
(irregex-extract (irregex "." 'u) str))
|
||||||
|
@ -111,8 +103,6 @@
|
||||||
(test-equal? string-first+rest
|
(test-equal? string-first+rest
|
||||||
(string-first+rest "asdf")
|
(string-first+rest "asdf")
|
||||||
'("asdf" . ""))
|
'("asdf" . ""))
|
||||||
(test-true string-utf8? (string-utf8? "ěščř"))
|
|
||||||
(test-false string-utf8? (string-utf8? "Hello World!"))
|
|
||||||
(test-equal? string->qp
|
(test-equal? string->qp
|
||||||
(string->qp "asdf")
|
(string->qp "asdf")
|
||||||
"asdf")
|
"asdf")
|
||||||
|
|
|
@ -44,6 +44,8 @@
|
||||||
utf8-string->list
|
utf8-string->list
|
||||||
list->utf8-string
|
list->utf8-string
|
||||||
|
|
||||||
|
string-utf8?
|
||||||
|
|
||||||
util-utf8-tests!
|
util-utf8-tests!
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -272,6 +274,12 @@
|
||||||
(loop (cdr lst)
|
(loop (cdr lst)
|
||||||
(prepend-unicode-char-to-utf8-list (car lst) res)))))
|
(prepend-unicode-char-to-utf8-list (car lst) res)))))
|
||||||
|
|
||||||
|
;; Returns true, if given string contains UTF-8 characters
|
||||||
|
(define (string-utf8? s)
|
||||||
|
(let ((asciilen (string-length s))
|
||||||
|
(utf8len (utf8-string-length s)))
|
||||||
|
(not (= asciilen utf8len))))
|
||||||
|
|
||||||
;; Module self-tests
|
;; Module self-tests
|
||||||
(define (util-utf8-tests!)
|
(define (util-utf8-tests!)
|
||||||
(run-tests
|
(run-tests
|
||||||
|
@ -303,6 +311,8 @@
|
||||||
(test-equal? utf8-string-next-char
|
(test-equal? utf8-string-next-char
|
||||||
(utf8-string-next-char "ěščř" 2)
|
(utf8-string-next-char "ěščř" 2)
|
||||||
4)
|
4)
|
||||||
|
(test-true string-utf8? (string-utf8? "ěščř"))
|
||||||
|
(test-false string-utf8? (string-utf8? "Hello World!"))
|
||||||
))
|
))
|
||||||
|
|
||||||
)
|
)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue