Code Duplication    Length = 26-27 lines in 2 locations

docs/exts/sphinxarg/markdown.py 2 locations

@@ 144-170 (lines=27) @@
141
    return o
142
143
144
def literal_block(node):
145
    """
146
    A block of code
147
    """
148
    rendered = []
149
    try:
150
        if node.info is not None:
151
            l = Lexer(node.literal, node.info, tokennames="long")
152
            for _ in l:
153
                rendered.append(node.inline(classes=_[0], text=_[1]))
154
    except Exception:
155
        pass
156
157
    classes = ['code']
158
    if node.info is not None:
159
        classes.append(node.info)
160
    if len(rendered) > 0:
161
        o = nodes.literal_block(classes=classes)
162
        for element in rendered:
163
            o += element
164
    else:
165
        o = nodes.literal_block(text=node.literal, classes=classes)
166
167
    o.line = node.sourcepos[0][0]
168
    for n in markdown(node):
169
        o += n
170
    return o
171
172
173
def raw(node):
@@ 116-141 (lines=26) @@
113
    return o
114
115
116
def literal(node):
117
    """
118
    Inline code
119
    """
120
    rendered = []
121
    try:
122
        if node.info is not None:
123
            l = Lexer(node.literal, node.info, tokennames="long")
124
            for _ in l:
125
                rendered.append(node.inline(classes=_[0], text=_[1]))
126
    except Exception:
127
        pass
128
129
    classes = ['code']
130
    if node.info is not None:
131
        classes.append(node.info)
132
    if len(rendered) > 0:
133
        o = nodes.literal(classes=classes)
134
        for element in rendered:
135
            o += element
136
    else:
137
        o = nodes.literal(text=node.literal, classes=classes)
138
139
    for n in markdown(node):
140
        o += n
141
    return o
142
143
144
def literal_block(node):