7.6.2.3 rnrs unicode

The (rnrs unicode (6)) library provides procedures for manipulating Unicode characters and strings.

Scheme Procedure: char-upcase char
Scheme Procedure: char-downcase char
Scheme Procedure: char-titlecase char
Scheme Procedure: char-foldcase char

These procedures translate their arguments from one Unicode character set to another. char-upcase, char-downcase, and char-titlecase are identical to their counterparts in the Guile core library; See Characters, for documentation.

char-foldcase returns the result of applying char-upcase to its argument, followed by char-downcase—except in the case of the Turkic characters U+0130 and U+0131, for which the procedure acts as the identity function.

Scheme Procedure: char-ci=? char1 char2 char3 ...
Scheme Procedure: char-ci<? char1 char2 char3 ...
Scheme Procedure: char-ci>? char1 char2 char3 ...
Scheme Procedure: char-ci<=? char1 char2 char3 ...
Scheme Procedure: char-ci>=? char1 char2 char3 ...

These procedures facilitate case-insensitive comparison of Unicode characters. They are identical to the procedures provided by Guile’s core library. See Characters, for documentation.

Scheme Procedure: char-alphabetic? char
Scheme Procedure: char-numeric? char
Scheme Procedure: char-whitespace? char
Scheme Procedure: char-upper-case? char
Scheme Procedure: char-lower-case? char
Scheme Procedure: char-title-case? char

These procedures implement various Unicode character set predicates. They are identical to the procedures provided by Guile’s core library. See Characters, for documentation.

Scheme Procedure: char-general-category char

See Characters, for documentation.

Scheme Procedure: string-upcase string
Scheme Procedure: string-downcase string
Scheme Procedure: string-titlecase string
Scheme Procedure: string-foldcase string

These procedures perform Unicode case folding operations on their input. See Alphabetic Case Mapping, for documentation.

Scheme Procedure: string-ci=? string1 string2 string3 ...
Scheme Procedure: string-ci<? string1 string2 string3 ...
Scheme Procedure: string-ci>? string1 string2 string3 ...
Scheme Procedure: string-ci<=? string1 string2 string3 ...
Scheme Procedure: string-ci>=? string1 string2 string3 ...

These procedures perform case-insensitive comparison on their input. See String Comparison, for documentation.

Scheme Procedure: string-normalize-nfd string
Scheme Procedure: string-normalize-nfkd string
Scheme Procedure: string-normalize-nfc string
Scheme Procedure: string-normalize-nfkc string

These procedures perform Unicode string normalization operations on their input. See String Comparison, for documentation.