Width and height argtypes, kdesc --argtypes from ref/, txt @define/@left_right/@columns, kdiag --check value validation (from dev d6993110e9b3)

Also: the klammertext argtype (descriptions kept as source), txt table
wrapping and :hpos/:offset, @c between ‹ ›, txt section headings, the
ktext newline-only trim, capitalize(), and the argtype test suite.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
ackandClaude Fable 5.1 committed 2026-09-16 16:59:49 +02:00
1 parent 9b0d0d7897
commit 0ead40f272
39 files changed
+734 -158

No files matched your search

+11
View File
@@ -46,6 +46,17 @@ std::vector<std::string> word_split(const std::string& s);
// whose description happens to fit one line and miss the identically worded
// one that does not.
std::string collapse_whitespace(const std::string& s);
// Klammertext source shown as PLAIN text: "^" before an ASCII punctuation
// character is removed ("^@date" -> "@date"), nothing else changes. For an
// error message or a log line that quotes a literal description; a display
// that can render should hand the source to a Machine instead.
std::string unquote_punctuation(const std::string& s);
// The string with its first character in upper case ("table" -> "Table").
// ASCII only: a non-ASCII first byte is left as it is, since a std::string
// is bytes and the standard library has no Unicode case mapping. Unlike
// Python's str.capitalize(), the rest of the string is untouched.
std::string capitalize(std::string s);
// Case-insensitive substring test, ASCII folding only. The project takes no
// ICU or locale dependency (the same rule as the language tables and