@@ -48,9 +48,10 @@ def _cvt_param(name, line):
48
48
49
49
def cvt (m ):
50
50
modifier , objname , paramname = m .group (1 ) or '' , name , m .group (2 )
51
+ refname = _refname_from_paramname (paramname )
51
52
doc_idx .append (
52
- ('single' , '%s (%s parameter)' % (paramname , objname ),
53
- '%s.params.%s' % (objname , paramname ), '' )
53
+ ('single' , '%s (%s parameter)' % (refname , objname ),
54
+ '%s.params.%s' % (objname , refname ), '' )
54
55
)
55
56
56
57
return ":param %s_sphinx_paramlinks_%s.%s:" % (
@@ -61,6 +62,17 @@ def cvt(m):
61
62
lines [:] = [_cvt_param (name , line ) for line in lines ]
62
63
63
64
65
+ def _refname_from_paramname (paramname ):
66
+ literal_match = re .match (r'^``(.+?)``$' , paramname )
67
+ if literal_match :
68
+ paramname = literal_match .group (1 )
69
+ refname = paramname
70
+ eq_match = re .match (r'(.+?)=.+$' , refname )
71
+ if eq_match :
72
+ refname = eq_match .group (1 )
73
+ return refname
74
+
75
+
64
76
class LinkParams (Transform ):
65
77
# apply references targets and optional references
66
78
# to nodes that contain our target text.
@@ -77,13 +89,7 @@ def apply(self):
77
89
if text .startswith ("_sphinx_paramlinks_" ):
78
90
components = re .match (r'_sphinx_paramlinks_(.+)\.(.+)$' , text )
79
91
location , paramname = components .group (1 , 2 )
80
- literal_match = re .match (r'^``(.+?)``$' , paramname )
81
- if literal_match :
82
- paramname = literal_match .group (1 )
83
- refname = paramname
84
- eq_match = re .match (r'(.+?)=.+$' , refname )
85
- if eq_match :
86
- refname = eq_match .group (1 )
92
+ refname = _refname_from_paramname (paramname )
87
93
88
94
refid = "%s.params.%s" % (location , refname )
89
95
ref .parent .insert (
0 commit comments