docs: parse-headers.py: simplify the rules for hashes

Normal :ref domain accept either hashes or underscores, but
c-domain ones don't. Fix it and remove unneeded places where
we opt to disable underscore transformation.

Ideally, we should have a rule about the default, or change
the way media docs have their references.

Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Link: https://lore.kernel.org/r/0c011090272f7a1068545409222f970ddb1ed431.1755872208.git.mchehab+huawei@kernel.org
pull/1354/merge
Mauro Carvalho Chehab 2025-08-22 16:19:17 +02:00 committed by Jonathan Corbet
parent 285b8d3db2
commit 37497a4dc5
1 changed files with 4 additions and 5 deletions

View File

@ -162,7 +162,8 @@ class ParseHeader:
if not ref_name:
ref_name = symbol.lower()
if replace_underscores:
# c-type references don't support hash
if ref_type == ":ref" and replace_underscores:
ref_name = ref_name.replace("_", "-")
ref_link = f"{ref_type}:`{symbol} <{ref_name}>`"
@ -258,8 +259,7 @@ class ParseHeader:
if match:
name = match.group(2).strip()
symbol = match.group(3)
self.store_type("typedef", symbol, ref_name=name,
replace_underscores=False)
self.store_type("typedef", symbol, ref_name=name)
continue
for re_enum in self.RE_ENUMS:
@ -272,8 +272,7 @@ class ParseHeader:
for re_struct in self.RE_STRUCTS:
match = re_struct.match(line)
if match:
self.store_type("struct", match.group(1),
replace_underscores=False)
self.store_type("struct", match.group(1))
break
def process_exceptions(self, fname: str):