character—a character.
name—a string or nil
.
Returns a string that is the name of the character,
or nil
if the character has no name.
All non-graphic characters are required to have names unless they have some implementation-defined attribute which is not null. Whether or not other characters have names is implementation-dependent.
The standard characters
<Newline> and <Space> have the respective names "Newline"
and "Space"
.
The semi-standard characters
<Tab>, <Page>, <Rubout>, <Linefeed>, <Return>, and <Backspace>
(if they are supported by the implementation)
have the respective names
"Tab"
, "Page"
, "Rubout"
, "Linefeed"
, "Return"
, and "Backspace"
(in the indicated case, even though name lookup by “#\
”
and by the function name-char
is not case sensitive).
(char-name #\ ) → "Space" (char-name #\Space) → "Space" (char-name #\Page) → "Page" (char-name #\a) → NIL or→ "LOWERCASE-a" or→ "Small-A" or→ "LA01" (char-name #\A) → NIL or→ "UPPERCASE-A" or→ "Capital-A" or→ "LA02" ;; Even though its CHAR-NAME can vary, #\A prints as #\A (prin1-to-string (read-from-string (format nil "#\\~A" (or (char-name #\A) "A")))) → "#\\A"
Should signal an error of type type-error
if character is not a character.
name-char, Section 22.1.3.2 (Printing Characters)
Non-graphic
characters having names are written by the Lisp printer
as “#\
” followed by the their name; see Section 22.1.3.2 (Printing Characters).