|
Lines 175-181
def attribute(self, token, base):
Link Here
|
| 175 |
token.value = token.attrs.get('default', '') |
175 |
token.value = token.attrs.get('default', '') |
| 176 |
else: |
176 |
else: |
| 177 |
sep = token.attrs.get('separator', ', ') |
177 |
sep = token.attrs.get('separator', ', ') |
| 178 |
token.value = sep.join(value) |
178 |
inner_separator = token.attrs.get('inner-separator', ' ') |
|
|
179 |
|
| 180 |
if base.descriptions[token.attrs['name']].multivalue: |
| 181 |
if all(isinstance(element, (list, tuple)) for element in value): |
| 182 |
if all(isinstance(v, str) for element in value for v in element): |
| 183 |
value = [inner_separator.join(element) for element in value] |
| 184 |
else: |
| 185 |
value = [inner_separator.join([str(v) for v in element]) for element in value] |
| 186 |
elif not all(isinstance(element, str) for element in value): |
| 187 |
value = [str(element) for element in value] |
| 188 |
token.value = sep.join(value) |
| 189 |
else: |
| 190 |
if isinstance(value, (list, tuple)): |
| 191 |
if all(isinstance(v, str) for v in value): |
| 192 |
token.value = inner_separator.join(value) |
| 193 |
else: |
| 194 |
token.value = inner_separator.join([str(v) for v in value]) |
| 179 |
else: |
195 |
else: |
| 180 |
token.value = value |
196 |
token.value = value |
| 181 |
elif 'default' in token.attrs: |
197 |
elif 'default' in token.attrs: |