[PATCH 02/14] docs: kdoc_re: better represent long regular expressions
From: Mauro Carvalho Chehab
Date: Wed Mar 18 2026 - 05:17:40 EST
The Sphinx output from autodoc doesn't automatically break long
lines, except on spaces.
Change KernRe __repr__() to break the pattern on multiple strings,
each one with a maximum limit of 60 characters.
With that, documentation output for KernRe should now be displayable,
even on long strings.
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@xxxxxxxxxx>
---
tools/lib/python/kdoc/kdoc_re.py | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/tools/lib/python/kdoc/kdoc_re.py b/tools/lib/python/kdoc/kdoc_re.py
index 6f3ae28859ea..28292efe25a2 100644
--- a/tools/lib/python/kdoc/kdoc_re.py
+++ b/tools/lib/python/kdoc/kdoc_re.py
@@ -70,10 +70,15 @@ class KernRe:
flags_name = " | ".join(flags)
+ max_len = 60
+ pattern = ""
+ for pos in range(0, len(self.regex.pattern), max_len):
+ pattern += '"' + self.regex.pattern[pos:max_len + pos] + '" '
+
if flags_name:
- return f'KernRe("{self.regex.pattern}", {flags_name})'
+ return f'KernRe({pattern}, {flags_name})'
else:
- return f'KernRe("{self.regex.pattern}")'
+ return f'KernRe({pattern})'
def __add__(self, other):
"""
--
2.53.0