docs: document control codepoints correctly

The previous documentation did not correctly exclude 127 (DEL) and the C1 control character
range 128-159 from the control codepoints.

However, the function unichar_is_control() defined on src/basic/utf8.c includes the range
0x7F (i.e. 127) to 0x9F (i.e. 159) as control codepoints. This commit explicitly documents the
127-159 range as control.

Fixes #44202.

(cherry picked from commit db16b6c8ec)
(cherry picked from commit 1e9a5b1522)
This commit is contained in:
DavidVB10 authored and Luca Boccassi committed 2026-11-05 14:30:22 +00:00
1 parent 3edbca4a21
commit a4e20e95c7
1 file changed
+2 -1
+2 -1
View File
@@ -23,7 +23,8 @@ The format is like this:
* Journal fields consisting only of valid non-control UTF-8 codepoints are serialized as they are
(i.e. the field name, followed by '=', followed by field data), followed by a newline as separator to the next field.
Note that fields containing newlines cannot be formatted like this.
Non-control UTF-8 codepoints are the codepoints with value at or above 32 (' '), or equal to 9 (TAB).
Non-control UTF-8 codepoints are the codepoints with value equal to 9 (TAB), or greater than or equal to 32 (' '),
excluding 127 (DEL) and the range 128-159 of C1 control codepoints.
* Other journal fields are serialized in a special binary safe way:
field name, followed by newline, followed by a binary 64-bit little endian size value, followed by the binary field data, followed by a newline as separator to the next field.
* Entry metadata that is not actually a field is serialized like it was a field, but beginning with two underscores.