Skip to content

Commit d9c0c40

Browse files
committed
ENH: HTML: Collapse orig source docstring into <details><summary>
Fixes #192
1 parent b7f7f6a commit d9c0c40

File tree

2 files changed

+13
-1
lines changed

2 files changed

+13
-1
lines changed

pdoc/templates/css.mako

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -219,7 +219,7 @@
219219
background: inherit; /* Don't grey-back parameters */
220220
}
221221
222-
.source summary,
222+
.source > summary,
223223
.git-link-div {
224224
color: #666;
225225
text-align: right;
@@ -243,6 +243,7 @@
243243
.source pre code {
244244
font-size: 12px;
245245
overflow: visible;
246+
min-width: max-content;
246247
}
247248
.hlist {
248249
list-style: none;

pdoc/templates/html.mako

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -424,6 +424,17 @@
424424
<script>window.addEventListener('DOMContentLoaded', () => {
425425
hljs.configure({languages: ['bash', 'css', 'diff', 'graphql', 'ini', 'javascript', 'json', 'plaintext', 'python', 'python-repl', 'rust', 'shell', 'sql', 'typescript', 'xml', 'yaml']});
426426
hljs.highlightAll();
427+
/* Collapse source docstrings */
428+
setTimeout(() => {
429+
[...document.querySelectorAll('.hljs.language-python > .hljs-string')]
430+
.filter(el => el.innerHTML.length > 200 && ['"""', "'''"].includes(el.innerHTML.substring(0, 3)))
431+
.forEach(el => {
432+
let d = document.createElement('details');
433+
d.classList.add('hljs-string');
434+
d.innerHTML = '<summary>"""</summary>' + el.innerHTML.substring(3);
435+
el.replaceWith(d);
436+
});
437+
}, 100);
427438
})</script>
428439
% endif
429440

0 commit comments

Comments
 (0)