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-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.import.scm: $(UTIL-MAIL-SOURCES)
|
||||
|
|
|
@ -37,6 +37,7 @@
|
|||
(chicken keyword)
|
||||
(chicken string)
|
||||
util-io
|
||||
util-utf8
|
||||
util-string)
|
||||
|
||||
;; All emails go to this override
|
||||
|
|
|
@ -30,8 +30,6 @@
|
|||
(
|
||||
string-first+rest
|
||||
|
||||
string-utf8?
|
||||
|
||||
string->qp
|
||||
|
||||
string-upcase
|
||||
|
@ -56,12 +54,6 @@
|
|||
(cons key-str val))
|
||||
(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.
|
||||
(define (string->list/utf8 str)
|
||||
(irregex-extract (irregex "." 'u) str))
|
||||
|
@ -111,8 +103,6 @@
|
|||
(test-equal? string-first+rest
|
||||
(string-first+rest "asdf")
|
||||
'("asdf" . ""))
|
||||
(test-true string-utf8? (string-utf8? "ěščř"))
|
||||
(test-false string-utf8? (string-utf8? "Hello World!"))
|
||||
(test-equal? string->qp
|
||||
(string->qp "asdf")
|
||||
"asdf")
|
||||
|
|
|
@ -44,6 +44,8 @@
|
|||
utf8-string->list
|
||||
list->utf8-string
|
||||
|
||||
string-utf8?
|
||||
|
||||
util-utf8-tests!
|
||||
)
|
||||
|
||||
|
@ -272,6 +274,12 @@
|
|||
(loop (cdr lst)
|
||||
(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
|
||||
(define (util-utf8-tests!)
|
||||
(run-tests
|
||||
|
@ -303,6 +311,8 @@
|
|||
(test-equal? utf8-string-next-char
|
||||
(utf8-string-next-char "ěščř" 2)
|
||||
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