mirror of
https://github.com/nim-lang/Nim.git
synced 2025-12-31 10:22:15 +00:00
feature dracula themed doc (#12816)
* Implement gorgeous Dracula themed Nim documentation * Add color for escape sequences * fixes the test cases * the big CSS cleanup
This commit is contained in:
@@ -84,6 +84,13 @@ $content
|
||||
doc.body_toc = """
|
||||
<div class="row">
|
||||
<div class="three columns">
|
||||
<div class="theme-switch-wrapper">
|
||||
<label class="theme-switch" for="checkbox">
|
||||
<input type="checkbox" id="checkbox" />
|
||||
<div class="slider round"></div>
|
||||
</label>
|
||||
<em>Dark Mode</em>
|
||||
</div>
|
||||
<div id="global-links">
|
||||
<ul class="simple-boot">
|
||||
<li>
|
||||
@@ -120,6 +127,13 @@ doc.body_toc = """
|
||||
doc.body_toc_group = """
|
||||
<div class="row">
|
||||
<div class="three columns">
|
||||
<div class="theme-switch-wrapper">
|
||||
<label class="theme-switch" for="checkbox">
|
||||
<input type="checkbox" id="checkbox" />
|
||||
<div class="slider round"></div>
|
||||
</label>
|
||||
<em>Dark Mode</em>
|
||||
</div>
|
||||
<div id="global-links">
|
||||
<ul class="simple-boot">
|
||||
<li>
|
||||
@@ -160,6 +174,13 @@ doc.body_toc_group = """
|
||||
doc.body_toc_group = """
|
||||
<div class="row">
|
||||
<div class="three columns">
|
||||
<div class="theme-switch-wrapper">
|
||||
<label class="theme-switch" for="checkbox">
|
||||
<input type="checkbox" id="checkbox" />
|
||||
<div class="slider round"></div>
|
||||
</label>
|
||||
<em>Dark Mode</em>
|
||||
</div>
|
||||
<div id="global-links">
|
||||
<ul class="simple">
|
||||
</ul>
|
||||
@@ -216,772 +237,7 @@ doc.file = """<?xml version="1.0" encoding="utf-8" ?>
|
||||
|
||||
<!-- CSS -->
|
||||
<title>$title</title>
|
||||
<style type="text/css" >
|
||||
/*
|
||||
Stylesheet for use with Docutils/rst2html.
|
||||
|
||||
See http://docutils.sf.net/docs/howto/html-stylesheets.html for how to
|
||||
customize this style sheet.
|
||||
|
||||
Modified from Chad Skeeters' rst2html-style
|
||||
https://bitbucket.org/cskeeters/rst2html-style/
|
||||
|
||||
Modified by Boyd Greenfield and narimiran
|
||||
*/
|
||||
|
||||
html {
|
||||
font-size: 100%;
|
||||
-webkit-text-size-adjust: 100%;
|
||||
-ms-text-size-adjust: 100%; }
|
||||
|
||||
body {
|
||||
font-family: "Lato", "Helvetica Neue", "HelveticaNeue", Helvetica, Arial, sans-serif;
|
||||
font-weight: 400;
|
||||
font-size: 1.125em;
|
||||
line-height: 1.5;
|
||||
color: #222;
|
||||
background-color: #FCFCFC; }
|
||||
|
||||
/* Skeleton grid */
|
||||
.container {
|
||||
position: relative;
|
||||
width: 100%;
|
||||
max-width: 1050px;
|
||||
margin: 0 auto;
|
||||
padding: 0;
|
||||
box-sizing: border-box; }
|
||||
|
||||
.column,
|
||||
.columns {
|
||||
width: 100%;
|
||||
float: left;
|
||||
box-sizing: border-box;
|
||||
margin-left: 1%;
|
||||
}
|
||||
|
||||
.column:first-child,
|
||||
.columns:first-child {
|
||||
margin-left: 0; }
|
||||
|
||||
.three.columns {
|
||||
width: 19%; }
|
||||
|
||||
.nine.columns {
|
||||
width: 80.0%; }
|
||||
|
||||
.twelve.columns {
|
||||
width: 100%;
|
||||
margin-left: 0; }
|
||||
|
||||
@media screen and (max-width: 860px) {
|
||||
.three.columns {
|
||||
display: none;
|
||||
}
|
||||
.nine.columns {
|
||||
width: 98.0%;
|
||||
}
|
||||
body {
|
||||
font-size: 1em;
|
||||
line-height: 1.35;
|
||||
}
|
||||
}
|
||||
|
||||
cite {
|
||||
font-style: italic !important; }
|
||||
|
||||
|
||||
/* Nim search input */
|
||||
div#searchInputDiv {
|
||||
margin-bottom: 1em;
|
||||
}
|
||||
input#searchInput {
|
||||
width: 80%;
|
||||
}
|
||||
|
||||
/*
|
||||
* Some custom formatting for input forms.
|
||||
* This also fixes input form colors on Firefox with a dark system theme on Linux.
|
||||
*/
|
||||
input {
|
||||
-moz-appearance: none;
|
||||
color: #333;
|
||||
background-color: #f8f8f8;
|
||||
border: 1px solid #aaa;
|
||||
font-family: "Lato", "Helvetica Neue", "HelveticaNeue", Helvetica, Arial, sans-serif;
|
||||
font-size: 0.9em;
|
||||
padding: 6px;
|
||||
}
|
||||
input:focus {
|
||||
border: 1px solid #1fa0eb;
|
||||
box-shadow: 0 0 2px #1fa0eb;
|
||||
}
|
||||
|
||||
/* Docgen styles */
|
||||
/* Links */
|
||||
a {
|
||||
color: #07b;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
a span.Identifier {
|
||||
text-decoration: underline;
|
||||
text-decoration-color: #aab;
|
||||
}
|
||||
|
||||
a.reference-toplevel {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
a.toc-backref {
|
||||
text-decoration: none;
|
||||
color: #222; }
|
||||
|
||||
a.link-seesrc {
|
||||
color: #607c9f;
|
||||
font-size: 0.9em;
|
||||
font-style: italic; }
|
||||
|
||||
a:hover,
|
||||
a:focus {
|
||||
color: #607c9f;
|
||||
text-decoration: underline; }
|
||||
|
||||
a:hover span.Identifier {
|
||||
color: #607c9f;
|
||||
}
|
||||
|
||||
|
||||
sub,
|
||||
sup {
|
||||
position: relative;
|
||||
font-size: 75%;
|
||||
line-height: 0;
|
||||
vertical-align: baseline; }
|
||||
|
||||
sup {
|
||||
top: -0.5em; }
|
||||
|
||||
sub {
|
||||
bottom: -0.25em; }
|
||||
|
||||
img {
|
||||
width: auto;
|
||||
height: auto;
|
||||
max-width: 100%;
|
||||
vertical-align: middle;
|
||||
border: 0;
|
||||
-ms-interpolation-mode: bicubic; }
|
||||
|
||||
@media print {
|
||||
* {
|
||||
color: black !important;
|
||||
text-shadow: none !important;
|
||||
background: transparent !important;
|
||||
box-shadow: none !important; }
|
||||
|
||||
a,
|
||||
a:visited {
|
||||
text-decoration: underline; }
|
||||
|
||||
a[href]:after {
|
||||
content: " (" attr(href) ")"; }
|
||||
|
||||
abbr[title]:after {
|
||||
content: " (" attr(title) ")"; }
|
||||
|
||||
.ir a:after,
|
||||
a[href^="javascript:"]:after,
|
||||
a[href^="#"]:after {
|
||||
content: ""; }
|
||||
|
||||
pre,
|
||||
blockquote {
|
||||
border: 1px solid #999;
|
||||
page-break-inside: avoid; }
|
||||
|
||||
thead {
|
||||
display: table-header-group; }
|
||||
|
||||
tr,
|
||||
img {
|
||||
page-break-inside: avoid; }
|
||||
|
||||
img {
|
||||
max-width: 100% !important; }
|
||||
|
||||
@page {
|
||||
margin: 0.5cm; }
|
||||
|
||||
h1 {
|
||||
page-break-before: always; }
|
||||
|
||||
h1.title {
|
||||
page-break-before: avoid; }
|
||||
|
||||
p,
|
||||
h2,
|
||||
h3 {
|
||||
orphans: 3;
|
||||
widows: 3; }
|
||||
|
||||
h2,
|
||||
h3 {
|
||||
page-break-after: avoid; }
|
||||
}
|
||||
|
||||
|
||||
p {
|
||||
margin-top: 0.5em;
|
||||
margin-bottom: 0.5em;
|
||||
}
|
||||
|
||||
small {
|
||||
font-size: 85%; }
|
||||
|
||||
strong {
|
||||
font-weight: 600;
|
||||
font-size: 0.95em;
|
||||
color: #3c3c3c;
|
||||
}
|
||||
|
||||
em {
|
||||
font-style: italic; }
|
||||
|
||||
h1 {
|
||||
font-size: 1.8em;
|
||||
font-weight: 400;
|
||||
padding-bottom: .25em;
|
||||
border-bottom: 1px solid #aaa;
|
||||
margin-top: 2.5em;
|
||||
margin-bottom: 1em;
|
||||
line-height: 1.2em; }
|
||||
|
||||
h1.title {
|
||||
padding-bottom: 1em;
|
||||
border-bottom: 0px;
|
||||
font-size: 2.5em;
|
||||
text-align: center;
|
||||
font-weight: 900;
|
||||
margin-top: 0.75em;
|
||||
margin-bottom: 0em;
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: 1.3em;
|
||||
margin-top: 2em; }
|
||||
|
||||
h2.subtitle {
|
||||
text-align: center; }
|
||||
|
||||
h3 {
|
||||
font-size: 1.125em;
|
||||
font-style: italic;
|
||||
margin-top: 1.5em; }
|
||||
|
||||
h4 {
|
||||
font-size: 1.125em;
|
||||
margin-top: 1em; }
|
||||
|
||||
h5 {
|
||||
font-size: 1.125em;
|
||||
margin-top: 0.75em; }
|
||||
|
||||
h6 {
|
||||
font-size: 1.1em; }
|
||||
|
||||
|
||||
ul,
|
||||
ol {
|
||||
padding: 0;
|
||||
margin-top: 0.5em;
|
||||
margin-left: 0.75em; }
|
||||
|
||||
ul ul,
|
||||
ul ol,
|
||||
ol ol,
|
||||
ol ul {
|
||||
margin-bottom: 0;
|
||||
margin-left: 1.25em; }
|
||||
|
||||
li {
|
||||
list-style-type: circle;
|
||||
}
|
||||
|
||||
ul.simple-boot li {
|
||||
list-style-type: none;
|
||||
margin-left: 0em;
|
||||
margin-bottom: 0.5em;
|
||||
}
|
||||
|
||||
ol.simple > li, ul.simple > li {
|
||||
margin-bottom: 0.25em;
|
||||
margin-left: 0.4em }
|
||||
|
||||
ul.simple.simple-toc > li {
|
||||
margin-top: 1em;
|
||||
}
|
||||
|
||||
ul.simple-toc {
|
||||
list-style: none;
|
||||
font-size: 0.9em;
|
||||
margin-left: -0.3em;
|
||||
margin-top: 1em; }
|
||||
|
||||
ul.simple-toc > li {
|
||||
list-style-type: none;
|
||||
}
|
||||
|
||||
ul.simple-toc-section {
|
||||
list-style-type: circle;
|
||||
margin-left: 1em;
|
||||
color: #6c9aae; }
|
||||
|
||||
|
||||
ol.arabic {
|
||||
list-style: decimal; }
|
||||
|
||||
ol.loweralpha {
|
||||
list-style: lower-alpha; }
|
||||
|
||||
ol.upperalpha {
|
||||
list-style: upper-alpha; }
|
||||
|
||||
ol.lowerroman {
|
||||
list-style: lower-roman; }
|
||||
|
||||
ol.upperroman {
|
||||
list-style: upper-roman; }
|
||||
|
||||
ul.auto-toc {
|
||||
list-style-type: none; }
|
||||
|
||||
|
||||
dl {
|
||||
margin-bottom: 1.5em; }
|
||||
|
||||
dt {
|
||||
margin-bottom: -0.5em;
|
||||
margin-left: 0.0em; }
|
||||
|
||||
dd {
|
||||
margin-left: 2.0em;
|
||||
margin-bottom: 3.0em;
|
||||
margin-top: 0.5em; }
|
||||
|
||||
|
||||
hr {
|
||||
margin: 2em 0;
|
||||
border: 0;
|
||||
border-top: 1px solid #aaa; }
|
||||
|
||||
blockquote {
|
||||
font-size: 0.9em;
|
||||
font-style: italic;
|
||||
padding-left: 0.5em;
|
||||
margin-left: 0;
|
||||
border-left: 5px solid #bbc;
|
||||
}
|
||||
|
||||
.pre {
|
||||
font-family: "Source Code Pro", Monaco, Menlo, Consolas, "Courier New", monospace;
|
||||
font-weight: 500;
|
||||
font-size: 0.85em;
|
||||
background-color: #f0f3ff;
|
||||
padding-left: 3px;
|
||||
padding-right: 3px;
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
pre {
|
||||
font-family: "Source Code Pro", Monaco, Menlo, Consolas, "Courier New", monospace;
|
||||
color: #222;
|
||||
font-weight: 500;
|
||||
display: inline-block;
|
||||
box-sizing: border-box;
|
||||
min-width: 100%;
|
||||
padding: 0.5em;
|
||||
margin-top: 0.5em;
|
||||
margin-bottom: 0.5em;
|
||||
font-size: 0.85em;
|
||||
white-space: pre !important;
|
||||
overflow-y: hidden;
|
||||
overflow-x: visible;
|
||||
background-color: ghostwhite;
|
||||
border: 1px solid #dde;
|
||||
-webkit-border-radius: 6px;
|
||||
-moz-border-radius: 6px;
|
||||
border-radius: 6px; }
|
||||
|
||||
.pre-scrollable {
|
||||
max-height: 340px;
|
||||
overflow-y: scroll; }
|
||||
|
||||
|
||||
/* Nim line-numbered tables */
|
||||
.line-nums-table {
|
||||
width: 100%;
|
||||
table-layout: fixed; }
|
||||
|
||||
table.line-nums-table {
|
||||
border-radius: 4px;
|
||||
border: 1px solid #cccccc;
|
||||
background-color: ghostwhite;
|
||||
border-collapse: separate;
|
||||
margin-top: 15px;
|
||||
margin-bottom: 25px; }
|
||||
|
||||
.line-nums-table tbody {
|
||||
border: none; }
|
||||
|
||||
.line-nums-table td pre {
|
||||
border: none;
|
||||
background-color: transparent; }
|
||||
|
||||
.line-nums-table td.blob-line-nums {
|
||||
width: 28px; }
|
||||
|
||||
.line-nums-table td.blob-line-nums pre {
|
||||
color: #b0b0b0;
|
||||
-webkit-filter: opacity(75%);
|
||||
text-align: right;
|
||||
border-color: transparent;
|
||||
background-color: transparent;
|
||||
padding-left: 0px;
|
||||
margin-left: 0px;
|
||||
padding-right: 0px;
|
||||
margin-right: 0px; }
|
||||
|
||||
|
||||
table {
|
||||
max-width: 100%;
|
||||
background-color: transparent;
|
||||
margin-top: 0.5em;
|
||||
margin-bottom: 1.5em;
|
||||
border-collapse: collapse;
|
||||
border-color: #ccc;
|
||||
border-spacing: 0;
|
||||
font-size: 0.9em;
|
||||
}
|
||||
|
||||
table th, table td {
|
||||
padding: 0px 0.5em 0px;
|
||||
}
|
||||
|
||||
table th {
|
||||
background-color: #e8e8e8;
|
||||
font-weight: bold; }
|
||||
|
||||
table th.docinfo-name {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
table tr:hover {
|
||||
background-color: ghostwhite; }
|
||||
|
||||
|
||||
/* rst2html default used to remove borders from tables and images */
|
||||
.borderless, table.borderless td, table.borderless th {
|
||||
border: 0; }
|
||||
|
||||
table.borderless td, table.borderless th {
|
||||
/* Override padding for "table.docutils td" with "! important".
|
||||
The right padding separates the table cells. */
|
||||
padding: 0 0.5em 0 0 !important; }
|
||||
|
||||
.first {
|
||||
/* Override more specific margin styles with "! important". */
|
||||
margin-top: 0 !important; }
|
||||
|
||||
.last, .with-subtitle {
|
||||
margin-bottom: 0 !important; }
|
||||
|
||||
.hidden {
|
||||
display: none; }
|
||||
|
||||
blockquote.epigraph {
|
||||
margin: 2em 5em; }
|
||||
|
||||
dl.docutils dd {
|
||||
margin-bottom: 0.5em; }
|
||||
|
||||
object[type="image/svg+xml"], object[type="application/x-shockwave-flash"] {
|
||||
overflow: hidden; }
|
||||
|
||||
|
||||
div.figure {
|
||||
margin-left: 2em;
|
||||
margin-right: 2em; }
|
||||
|
||||
div.footer, div.header {
|
||||
clear: both;
|
||||
text-align: center;
|
||||
color: #666;
|
||||
font-size: smaller; }
|
||||
|
||||
div.footer {
|
||||
padding-top: 5em;
|
||||
}
|
||||
|
||||
div.line-block {
|
||||
display: block;
|
||||
margin-top: 1em;
|
||||
margin-bottom: 1em; }
|
||||
|
||||
div.line-block div.line-block {
|
||||
margin-top: 0;
|
||||
margin-bottom: 0;
|
||||
margin-left: 1.5em; }
|
||||
|
||||
div.topic {
|
||||
margin: 2em; }
|
||||
|
||||
div.search_results {
|
||||
background-color: antiquewhite;
|
||||
margin: 3em;
|
||||
padding: 1em;
|
||||
border: 1px solid #4d4d4d;
|
||||
}
|
||||
|
||||
div#global-links ul {
|
||||
margin-left: 0;
|
||||
list-style-type: none;
|
||||
}
|
||||
|
||||
div#global-links > simple-boot {
|
||||
margin-left: 3em;
|
||||
}
|
||||
|
||||
hr.docutils {
|
||||
width: 75%; }
|
||||
|
||||
img.align-left, .figure.align-left, object.align-left {
|
||||
clear: left;
|
||||
float: left;
|
||||
margin-right: 1em; }
|
||||
|
||||
img.align-right, .figure.align-right, object.align-right {
|
||||
clear: right;
|
||||
float: right;
|
||||
margin-left: 1em; }
|
||||
|
||||
img.align-center, .figure.align-center, object.align-center {
|
||||
display: block;
|
||||
margin-left: auto;
|
||||
margin-right: auto; }
|
||||
|
||||
.align-left {
|
||||
text-align: left; }
|
||||
|
||||
.align-center {
|
||||
clear: both;
|
||||
text-align: center; }
|
||||
|
||||
.align-right {
|
||||
text-align: right; }
|
||||
|
||||
/* reset inner alignment in figures */
|
||||
div.align-right {
|
||||
text-align: inherit; }
|
||||
|
||||
p.attribution {
|
||||
text-align: right;
|
||||
margin-left: 50%; }
|
||||
|
||||
p.caption {
|
||||
font-style: italic; }
|
||||
|
||||
p.credits {
|
||||
font-style: italic;
|
||||
font-size: smaller; }
|
||||
|
||||
p.label {
|
||||
white-space: nowrap; }
|
||||
|
||||
p.rubric {
|
||||
font-weight: bold;
|
||||
font-size: larger;
|
||||
color: maroon;
|
||||
text-align: center; }
|
||||
|
||||
p.topic-title {
|
||||
font-weight: bold; }
|
||||
|
||||
pre.address {
|
||||
margin-bottom: 0;
|
||||
margin-top: 0;
|
||||
font: inherit; }
|
||||
|
||||
pre.literal-block, pre.doctest-block, pre.math, pre.code {
|
||||
margin-left: 2em;
|
||||
margin-right: 2em; }
|
||||
|
||||
pre.code .ln {
|
||||
color: grey; }
|
||||
|
||||
/* line numbers */
|
||||
pre.code, code {
|
||||
background-color: #eeeeee; }
|
||||
|
||||
pre.code .comment, code .comment {
|
||||
color: #5c6576; }
|
||||
|
||||
pre.code .keyword, code .keyword {
|
||||
color: #3B0D06;
|
||||
font-weight: bold; }
|
||||
|
||||
pre.code .literal.string, code .literal.string {
|
||||
color: #0c5404; }
|
||||
|
||||
pre.code .name.builtin, code .name.builtin {
|
||||
color: #352b84; }
|
||||
|
||||
pre.code .deleted, code .deleted {
|
||||
background-color: #DEB0A1; }
|
||||
|
||||
pre.code .inserted, code .inserted {
|
||||
background-color: #A3D289; }
|
||||
|
||||
span.classifier {
|
||||
font-style: oblique; }
|
||||
|
||||
span.classifier-delimiter {
|
||||
font-weight: bold; }
|
||||
|
||||
span.option {
|
||||
white-space: nowrap; }
|
||||
|
||||
span.problematic {
|
||||
color: #b30000; }
|
||||
|
||||
span.section-subtitle {
|
||||
/* font-size relative to parent (h1..h6 element) */
|
||||
font-size: 80%; }
|
||||
|
||||
span.DecNumber {
|
||||
color: #252dbe; }
|
||||
|
||||
span.BinNumber {
|
||||
color: #252dbe; }
|
||||
|
||||
span.HexNumber {
|
||||
color: #252dbe; }
|
||||
|
||||
span.OctNumber {
|
||||
color: #252dbe; }
|
||||
|
||||
span.FloatNumber {
|
||||
color: #252dbe; }
|
||||
|
||||
span.Identifier {
|
||||
color: #222; }
|
||||
|
||||
span.Keyword {
|
||||
font-weight: 600;
|
||||
color: #5e8f60; }
|
||||
|
||||
span.StringLit {
|
||||
color: #a4255b; }
|
||||
|
||||
span.LongStringLit {
|
||||
color: #a4255b; }
|
||||
|
||||
span.CharLit {
|
||||
color: #a4255b; }
|
||||
|
||||
span.EscapeSequence {
|
||||
color: black; }
|
||||
|
||||
span.Operator {
|
||||
color: black; }
|
||||
|
||||
span.Punctuation {
|
||||
color: black; }
|
||||
|
||||
span.Comment, span.LongComment {
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
color: #484a86; }
|
||||
|
||||
span.RegularExpression {
|
||||
color: darkviolet; }
|
||||
|
||||
span.TagStart {
|
||||
color: darkviolet; }
|
||||
|
||||
span.TagEnd {
|
||||
color: darkviolet; }
|
||||
|
||||
span.Key {
|
||||
color: #252dbe; }
|
||||
|
||||
span.Value {
|
||||
color: #252dbe; }
|
||||
|
||||
span.RawData {
|
||||
color: #a4255b; }
|
||||
|
||||
span.Assembler {
|
||||
color: #252dbe; }
|
||||
|
||||
span.Preprocessor {
|
||||
color: #252dbe; }
|
||||
|
||||
span.Directive {
|
||||
color: #252dbe; }
|
||||
|
||||
span.Command, span.Rule, span.Hyperlink, span.Label, span.Reference,
|
||||
span.Other {
|
||||
color: black; }
|
||||
|
||||
/* Pop type, const, proc, and iterator defs in nim def blocks */
|
||||
dt pre > span.Identifier, dt pre > span.Operator {
|
||||
color: #155da4;
|
||||
font-weight: 700; }
|
||||
|
||||
dt pre > span.Keyword ~ span.Identifier, dt pre > span.Identifier ~ span.Identifier,
|
||||
dt pre > span.Operator ~ span.Identifier, dt pre > span.Other ~ span.Identifier {
|
||||
color: inherit;
|
||||
font-weight: inherit; }
|
||||
|
||||
/* Nim sprite for the footer (taken from main page favicon) */
|
||||
.nim-sprite {
|
||||
display: inline-block;
|
||||
height: 16px;
|
||||
width: 16px;
|
||||
background-position: 0 0;
|
||||
background-size: 16px 16px;
|
||||
-webkit-filter: opacity(50%);
|
||||
background-repeat: no-repeat;
|
||||
background-image: url("data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AAAAAAUAAAAF////AP///wD///8A////AP///wD///8A////AP///wD///8A////AAAAAAIAAABbAAAAlQAAAKIAAACbAAAAmwAAAKIAAACVAAAAWwAAAAL///8A////AP///wD///8A////AAAAABQAAADAAAAAYwAAAA3///8A////AP///wD///8AAAAADQAAAGMAAADAAAAAFP///wD///8A////AP///wAAAACdAAAAOv///wD///8A////AP///wD///8A////AP///wD///8AAAAAOgAAAJ3///8A////AP///wAAAAAnAAAAcP///wAAAAAoAAAASv///wD///8A////AP///wAAAABKAAAAKP///wAAAABwAAAAJ////wD///8AAAAAgQAAABwAAACIAAAAkAAAAJMAAACtAAAAFQAAABUAAACtAAAAkwAAAJAAAACIAAAAHAAAAIH///8A////AAAAAKQAAACrAAAAaP///wD///8AAAAARQAAANIAAADSAAAARf///wD///8AAAAAaAAAAKsAAACk////AAAAADMAAACcAAAAnQAAABj///8A////AP///wAAAAAYAAAAGP///wD///8A////AAAAABgAAACdAAAAnAAAADMAAAB1AAAAwwAAAP8AAADpAAAAsQAAAE4AAAAb////AP///wAAAAAbAAAATgAAALEAAADpAAAA/wAAAMMAAAB1AAAAtwAAAOkAAAD/AAAA/wAAAP8AAADvAAAA3gAAAN4AAADeAAAA3gAAAO8AAAD/AAAA/wAAAP8AAADpAAAAtwAAAGUAAAA/AAAA3wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAADfAAAAPwAAAGX///8A////AAAAAEgAAADtAAAAvwAAAL0AAADGAAAA7wAAAO8AAADGAAAAvQAAAL8AAADtAAAASP///wD///8A////AP///wD///8AAAAAO////wD///8A////AAAAAIcAAACH////AP///wD///8AAAAAO////wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A//8AAP//AAD4HwAA7/cAAN/7AAD//wAAoYUAAJ55AACf+QAAh+EAAAAAAADAAwAA4AcAAP5/AAD//wAA//8AAA==");
|
||||
margin-bottom: -5px; }
|
||||
|
||||
span.pragmadots {
|
||||
/* Position: relative frees us up to make the dots
|
||||
look really nice without fucking up the layout and
|
||||
causing bulging in the parent container */
|
||||
position: relative;
|
||||
/* 1px down looks slightly nicer */
|
||||
top: 1px;
|
||||
padding: 2px;
|
||||
background-color: #e8e8e8;
|
||||
border-radius: 4px;
|
||||
margin: 0 2px;
|
||||
cursor: pointer;
|
||||
font-size: 0.8em;
|
||||
}
|
||||
|
||||
span.pragmadots:hover {
|
||||
background-color: #DBDBDB;
|
||||
}
|
||||
span.pragmawrap {
|
||||
display: none;
|
||||
}
|
||||
|
||||
span.attachedType {
|
||||
display: none;
|
||||
visibility: hidden;
|
||||
}
|
||||
</style>
|
||||
<link rel="stylesheet" type="text/css" href="nimdoc.css">
|
||||
|
||||
<script type="text/javascript" src="dochack.js"></script>
|
||||
|
||||
@@ -996,6 +252,37 @@ function main() {
|
||||
event.target.parentNode.nextElementSibling.style.display = "inline";
|
||||
}
|
||||
}
|
||||
|
||||
const toggleSwitch = document.querySelector('.theme-switch input[type="checkbox"]');
|
||||
function switchTheme(e) {
|
||||
if (e.target.checked) {
|
||||
document.documentElement.setAttribute('data-theme', 'dark');
|
||||
localStorage.setItem('theme', 'dark');
|
||||
} else {
|
||||
document.documentElement.setAttribute('data-theme', 'light');
|
||||
localStorage.setItem('theme', 'light');
|
||||
}
|
||||
}
|
||||
|
||||
toggleSwitch.addEventListener('change', switchTheme, false);
|
||||
|
||||
|
||||
if (window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches) {
|
||||
document.documentElement.setAttribute('data-theme', "dark");
|
||||
toggleSwitch.checked = true;
|
||||
} else if (window.matchMedia && window.matchMedia('(prefers-color-scheme: light)').matches) {
|
||||
document.documentElement.setAttribute('data-theme', "light");
|
||||
toggleSwitch.checked = false;
|
||||
} else {
|
||||
const currentTheme = localStorage.getItem('theme') ? localStorage.getItem('theme') : null;
|
||||
if (currentTheme) {
|
||||
document.documentElement.setAttribute('data-theme', currentTheme);
|
||||
|
||||
if (currentTheme === 'dark') {
|
||||
toggleSwitch.checked = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
@@ -1009,7 +296,7 @@ function main() {
|
||||
<div class="twelve-columns footer">
|
||||
<span class="nim-sprite"></span>
|
||||
<br/>
|
||||
<small>Made with Nim. Generated: $date $time UTC</small>
|
||||
<small style="color: var(--hint);">Made with Nim. Generated: $date $time UTC</small>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
1020
doc/nimdoc.css
1020
doc/nimdoc.css
File diff suppressed because one or more lines are too long
@@ -213,9 +213,9 @@ proc splitPath*(path: string): tuple[head, tail: string] {.
|
||||
assert splitPath("usr/local/bin/") == ("usr/local/bin", "")
|
||||
assert splitPath("/bin/") == ("/bin", "")
|
||||
when (NimMajor, NimMinor) <= (1, 0):
|
||||
assert splitPath("/bin") == ("", "bin")
|
||||
assert splitPath("/bin") == ("", "bin")
|
||||
else:
|
||||
assert splitPath("/bin") == ("/", "bin")
|
||||
assert splitPath("/bin") == ("/", "bin")
|
||||
assert splitPath("bin") == ("", "bin")
|
||||
assert splitPath("") == ("", "")
|
||||
|
||||
|
||||
@@ -18,772 +18,7 @@
|
||||
|
||||
<!-- CSS -->
|
||||
<title>foo</title>
|
||||
<style type="text/css" >
|
||||
/*
|
||||
Stylesheet for use with Docutils/rst2html.
|
||||
|
||||
See http://docutils.sf.net/docs/howto/html-stylesheets.html for how to
|
||||
customize this style sheet.
|
||||
|
||||
Modified from Chad Skeeters' rst2html-style
|
||||
https://bitbucket.org/cskeeters/rst2html-style/
|
||||
|
||||
Modified by Boyd Greenfield and narimiran
|
||||
*/
|
||||
|
||||
html {
|
||||
font-size: 100%;
|
||||
-webkit-text-size-adjust: 100%;
|
||||
-ms-text-size-adjust: 100%; }
|
||||
|
||||
body {
|
||||
font-family: "Lato", "Helvetica Neue", "HelveticaNeue", Helvetica, Arial, sans-serif;
|
||||
font-weight: 400;
|
||||
font-size: 1.125em;
|
||||
line-height: 1.5;
|
||||
color: #222;
|
||||
background-color: #FCFCFC; }
|
||||
|
||||
/* Skeleton grid */
|
||||
.container {
|
||||
position: relative;
|
||||
width: 100%;
|
||||
max-width: 1050px;
|
||||
margin: 0 auto;
|
||||
padding: 0;
|
||||
box-sizing: border-box; }
|
||||
|
||||
.column,
|
||||
.columns {
|
||||
width: 100%;
|
||||
float: left;
|
||||
box-sizing: border-box;
|
||||
margin-left: 1%;
|
||||
}
|
||||
|
||||
.column:first-child,
|
||||
.columns:first-child {
|
||||
margin-left: 0; }
|
||||
|
||||
.three.columns {
|
||||
width: 19%; }
|
||||
|
||||
.nine.columns {
|
||||
width: 80.0%; }
|
||||
|
||||
.twelve.columns {
|
||||
width: 100%;
|
||||
margin-left: 0; }
|
||||
|
||||
@media screen and (max-width: 860px) {
|
||||
.three.columns {
|
||||
display: none;
|
||||
}
|
||||
.nine.columns {
|
||||
width: 98.0%;
|
||||
}
|
||||
body {
|
||||
font-size: 1em;
|
||||
line-height: 1.35;
|
||||
}
|
||||
}
|
||||
|
||||
cite {
|
||||
font-style: italic !important; }
|
||||
|
||||
|
||||
/* Nim search input */
|
||||
div#searchInputDiv {
|
||||
margin-bottom: 1em;
|
||||
}
|
||||
input#searchInput {
|
||||
width: 80%;
|
||||
}
|
||||
|
||||
/*
|
||||
* Some custom formatting for input forms.
|
||||
* This also fixes input form colors on Firefox with a dark system theme on Linux.
|
||||
*/
|
||||
input {
|
||||
-moz-appearance: none;
|
||||
color: #333;
|
||||
background-color: #f8f8f8;
|
||||
border: 1px solid #aaa;
|
||||
font-family: "Lato", "Helvetica Neue", "HelveticaNeue", Helvetica, Arial, sans-serif;
|
||||
font-size: 0.9em;
|
||||
padding: 6px;
|
||||
}
|
||||
input:focus {
|
||||
border: 1px solid #1fa0eb;
|
||||
box-shadow: 0 0 2px #1fa0eb;
|
||||
}
|
||||
|
||||
/* Docgen styles */
|
||||
/* Links */
|
||||
a {
|
||||
color: #07b;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
a span.Identifier {
|
||||
text-decoration: underline;
|
||||
text-decoration-color: #aab;
|
||||
}
|
||||
|
||||
a.reference-toplevel {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
a.toc-backref {
|
||||
text-decoration: none;
|
||||
color: #222; }
|
||||
|
||||
a.link-seesrc {
|
||||
color: #607c9f;
|
||||
font-size: 0.9em;
|
||||
font-style: italic; }
|
||||
|
||||
a:hover,
|
||||
a:focus {
|
||||
color: #607c9f;
|
||||
text-decoration: underline; }
|
||||
|
||||
a:hover span.Identifier {
|
||||
color: #607c9f;
|
||||
}
|
||||
|
||||
|
||||
sub,
|
||||
sup {
|
||||
position: relative;
|
||||
font-size: 75%;
|
||||
line-height: 0;
|
||||
vertical-align: baseline; }
|
||||
|
||||
sup {
|
||||
top: -0.5em; }
|
||||
|
||||
sub {
|
||||
bottom: -0.25em; }
|
||||
|
||||
img {
|
||||
width: auto;
|
||||
height: auto;
|
||||
max-width: 100%;
|
||||
vertical-align: middle;
|
||||
border: 0;
|
||||
-ms-interpolation-mode: bicubic; }
|
||||
|
||||
@media print {
|
||||
* {
|
||||
color: black !important;
|
||||
text-shadow: none !important;
|
||||
background: transparent !important;
|
||||
box-shadow: none !important; }
|
||||
|
||||
a,
|
||||
a:visited {
|
||||
text-decoration: underline; }
|
||||
|
||||
a[href]:after {
|
||||
content: " (" attr(href) ")"; }
|
||||
|
||||
abbr[title]:after {
|
||||
content: " (" attr(title) ")"; }
|
||||
|
||||
.ir a:after,
|
||||
a[href^="javascript:"]:after,
|
||||
a[href^="#"]:after {
|
||||
content: ""; }
|
||||
|
||||
pre,
|
||||
blockquote {
|
||||
border: 1px solid #999;
|
||||
page-break-inside: avoid; }
|
||||
|
||||
thead {
|
||||
display: table-header-group; }
|
||||
|
||||
tr,
|
||||
img {
|
||||
page-break-inside: avoid; }
|
||||
|
||||
img {
|
||||
max-width: 100% !important; }
|
||||
|
||||
@page {
|
||||
margin: 0.5cm; }
|
||||
|
||||
h1 {
|
||||
page-break-before: always; }
|
||||
|
||||
h1.title {
|
||||
page-break-before: avoid; }
|
||||
|
||||
p,
|
||||
h2,
|
||||
h3 {
|
||||
orphans: 3;
|
||||
widows: 3; }
|
||||
|
||||
h2,
|
||||
h3 {
|
||||
page-break-after: avoid; }
|
||||
}
|
||||
|
||||
|
||||
p {
|
||||
margin-top: 0.5em;
|
||||
margin-bottom: 0.5em;
|
||||
}
|
||||
|
||||
small {
|
||||
font-size: 85%; }
|
||||
|
||||
strong {
|
||||
font-weight: 600;
|
||||
font-size: 0.95em;
|
||||
color: #3c3c3c;
|
||||
}
|
||||
|
||||
em {
|
||||
font-style: italic; }
|
||||
|
||||
h1 {
|
||||
font-size: 1.8em;
|
||||
font-weight: 400;
|
||||
padding-bottom: .25em;
|
||||
border-bottom: 1px solid #aaa;
|
||||
margin-top: 2.5em;
|
||||
margin-bottom: 1em;
|
||||
line-height: 1.2em; }
|
||||
|
||||
h1.title {
|
||||
padding-bottom: 1em;
|
||||
border-bottom: 0px;
|
||||
font-size: 2.5em;
|
||||
text-align: center;
|
||||
font-weight: 900;
|
||||
margin-top: 0.75em;
|
||||
margin-bottom: 0em;
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: 1.3em;
|
||||
margin-top: 2em; }
|
||||
|
||||
h2.subtitle {
|
||||
text-align: center; }
|
||||
|
||||
h3 {
|
||||
font-size: 1.125em;
|
||||
font-style: italic;
|
||||
margin-top: 1.5em; }
|
||||
|
||||
h4 {
|
||||
font-size: 1.125em;
|
||||
margin-top: 1em; }
|
||||
|
||||
h5 {
|
||||
font-size: 1.125em;
|
||||
margin-top: 0.75em; }
|
||||
|
||||
h6 {
|
||||
font-size: 1.1em; }
|
||||
|
||||
|
||||
ul,
|
||||
ol {
|
||||
padding: 0;
|
||||
margin-top: 0.5em;
|
||||
margin-left: 0.75em; }
|
||||
|
||||
ul ul,
|
||||
ul ol,
|
||||
ol ol,
|
||||
ol ul {
|
||||
margin-bottom: 0;
|
||||
margin-left: 1.25em; }
|
||||
|
||||
li {
|
||||
list-style-type: circle;
|
||||
}
|
||||
|
||||
ul.simple-boot li {
|
||||
list-style-type: none;
|
||||
margin-left: 0em;
|
||||
margin-bottom: 0.5em;
|
||||
}
|
||||
|
||||
ol.simple > li, ul.simple > li {
|
||||
margin-bottom: 0.25em;
|
||||
margin-left: 0.4em }
|
||||
|
||||
ul.simple.simple-toc > li {
|
||||
margin-top: 1em;
|
||||
}
|
||||
|
||||
ul.simple-toc {
|
||||
list-style: none;
|
||||
font-size: 0.9em;
|
||||
margin-left: -0.3em;
|
||||
margin-top: 1em; }
|
||||
|
||||
ul.simple-toc > li {
|
||||
list-style-type: none;
|
||||
}
|
||||
|
||||
ul.simple-toc-section {
|
||||
list-style-type: circle;
|
||||
margin-left: 1em;
|
||||
color: #6c9aae; }
|
||||
|
||||
|
||||
ol.arabic {
|
||||
list-style: decimal; }
|
||||
|
||||
ol.loweralpha {
|
||||
list-style: lower-alpha; }
|
||||
|
||||
ol.upperalpha {
|
||||
list-style: upper-alpha; }
|
||||
|
||||
ol.lowerroman {
|
||||
list-style: lower-roman; }
|
||||
|
||||
ol.upperroman {
|
||||
list-style: upper-roman; }
|
||||
|
||||
ul.auto-toc {
|
||||
list-style-type: none; }
|
||||
|
||||
|
||||
dl {
|
||||
margin-bottom: 1.5em; }
|
||||
|
||||
dt {
|
||||
margin-bottom: -0.5em;
|
||||
margin-left: 0.0em; }
|
||||
|
||||
dd {
|
||||
margin-left: 2.0em;
|
||||
margin-bottom: 3.0em;
|
||||
margin-top: 0.5em; }
|
||||
|
||||
|
||||
hr {
|
||||
margin: 2em 0;
|
||||
border: 0;
|
||||
border-top: 1px solid #aaa; }
|
||||
|
||||
blockquote {
|
||||
font-size: 0.9em;
|
||||
font-style: italic;
|
||||
padding-left: 0.5em;
|
||||
margin-left: 0;
|
||||
border-left: 5px solid #bbc;
|
||||
}
|
||||
|
||||
.pre {
|
||||
font-family: "Source Code Pro", Monaco, Menlo, Consolas, "Courier New", monospace;
|
||||
font-weight: 500;
|
||||
font-size: 0.85em;
|
||||
background-color: #f0f3ff;
|
||||
padding-left: 3px;
|
||||
padding-right: 3px;
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
pre {
|
||||
font-family: "Source Code Pro", Monaco, Menlo, Consolas, "Courier New", monospace;
|
||||
color: #222;
|
||||
font-weight: 500;
|
||||
display: inline-block;
|
||||
box-sizing: border-box;
|
||||
min-width: 100%;
|
||||
padding: 0.5em;
|
||||
margin-top: 0.5em;
|
||||
margin-bottom: 0.5em;
|
||||
font-size: 0.85em;
|
||||
white-space: pre !important;
|
||||
overflow-y: hidden;
|
||||
overflow-x: visible;
|
||||
background-color: ghostwhite;
|
||||
border: 1px solid #dde;
|
||||
-webkit-border-radius: 6px;
|
||||
-moz-border-radius: 6px;
|
||||
border-radius: 6px; }
|
||||
|
||||
.pre-scrollable {
|
||||
max-height: 340px;
|
||||
overflow-y: scroll; }
|
||||
|
||||
|
||||
/* Nim line-numbered tables */
|
||||
.line-nums-table {
|
||||
width: 100%;
|
||||
table-layout: fixed; }
|
||||
|
||||
table.line-nums-table {
|
||||
border-radius: 4px;
|
||||
border: 1px solid #cccccc;
|
||||
background-color: ghostwhite;
|
||||
border-collapse: separate;
|
||||
margin-top: 15px;
|
||||
margin-bottom: 25px; }
|
||||
|
||||
.line-nums-table tbody {
|
||||
border: none; }
|
||||
|
||||
.line-nums-table td pre {
|
||||
border: none;
|
||||
background-color: transparent; }
|
||||
|
||||
.line-nums-table td.blob-line-nums {
|
||||
width: 28px; }
|
||||
|
||||
.line-nums-table td.blob-line-nums pre {
|
||||
color: #b0b0b0;
|
||||
-webkit-filter: opacity(75%);
|
||||
text-align: right;
|
||||
border-color: transparent;
|
||||
background-color: transparent;
|
||||
padding-left: 0px;
|
||||
margin-left: 0px;
|
||||
padding-right: 0px;
|
||||
margin-right: 0px; }
|
||||
|
||||
|
||||
table {
|
||||
max-width: 100%;
|
||||
background-color: transparent;
|
||||
margin-top: 0.5em;
|
||||
margin-bottom: 1.5em;
|
||||
border-collapse: collapse;
|
||||
border-color: #ccc;
|
||||
border-spacing: 0;
|
||||
font-size: 0.9em;
|
||||
}
|
||||
|
||||
table th, table td {
|
||||
padding: 0px 0.5em 0px;
|
||||
}
|
||||
|
||||
table th {
|
||||
background-color: #e8e8e8;
|
||||
font-weight: bold; }
|
||||
|
||||
table th.docinfo-name {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
table tr:hover {
|
||||
background-color: ghostwhite; }
|
||||
|
||||
|
||||
/* rst2html default used to remove borders from tables and images */
|
||||
.borderless, table.borderless td, table.borderless th {
|
||||
border: 0; }
|
||||
|
||||
table.borderless td, table.borderless th {
|
||||
/* Override padding for "table.docutils td" with "! important".
|
||||
The right padding separates the table cells. */
|
||||
padding: 0 0.5em 0 0 !important; }
|
||||
|
||||
.first {
|
||||
/* Override more specific margin styles with "! important". */
|
||||
margin-top: 0 !important; }
|
||||
|
||||
.last, .with-subtitle {
|
||||
margin-bottom: 0 !important; }
|
||||
|
||||
.hidden {
|
||||
display: none; }
|
||||
|
||||
blockquote.epigraph {
|
||||
margin: 2em 5em; }
|
||||
|
||||
dl.docutils dd {
|
||||
margin-bottom: 0.5em; }
|
||||
|
||||
object[type="image/svg+xml"], object[type="application/x-shockwave-flash"] {
|
||||
overflow: hidden; }
|
||||
|
||||
|
||||
div.figure {
|
||||
margin-left: 2em;
|
||||
margin-right: 2em; }
|
||||
|
||||
div.footer, div.header {
|
||||
clear: both;
|
||||
text-align: center;
|
||||
color: #666;
|
||||
font-size: smaller; }
|
||||
|
||||
div.footer {
|
||||
padding-top: 5em;
|
||||
}
|
||||
|
||||
div.line-block {
|
||||
display: block;
|
||||
margin-top: 1em;
|
||||
margin-bottom: 1em; }
|
||||
|
||||
div.line-block div.line-block {
|
||||
margin-top: 0;
|
||||
margin-bottom: 0;
|
||||
margin-left: 1.5em; }
|
||||
|
||||
div.topic {
|
||||
margin: 2em; }
|
||||
|
||||
div.search_results {
|
||||
background-color: antiquewhite;
|
||||
margin: 3em;
|
||||
padding: 1em;
|
||||
border: 1px solid #4d4d4d;
|
||||
}
|
||||
|
||||
div#global-links ul {
|
||||
margin-left: 0;
|
||||
list-style-type: none;
|
||||
}
|
||||
|
||||
div#global-links > simple-boot {
|
||||
margin-left: 3em;
|
||||
}
|
||||
|
||||
hr.docutils {
|
||||
width: 75%; }
|
||||
|
||||
img.align-left, .figure.align-left, object.align-left {
|
||||
clear: left;
|
||||
float: left;
|
||||
margin-right: 1em; }
|
||||
|
||||
img.align-right, .figure.align-right, object.align-right {
|
||||
clear: right;
|
||||
float: right;
|
||||
margin-left: 1em; }
|
||||
|
||||
img.align-center, .figure.align-center, object.align-center {
|
||||
display: block;
|
||||
margin-left: auto;
|
||||
margin-right: auto; }
|
||||
|
||||
.align-left {
|
||||
text-align: left; }
|
||||
|
||||
.align-center {
|
||||
clear: both;
|
||||
text-align: center; }
|
||||
|
||||
.align-right {
|
||||
text-align: right; }
|
||||
|
||||
/* reset inner alignment in figures */
|
||||
div.align-right {
|
||||
text-align: inherit; }
|
||||
|
||||
p.attribution {
|
||||
text-align: right;
|
||||
margin-left: 50%; }
|
||||
|
||||
p.caption {
|
||||
font-style: italic; }
|
||||
|
||||
p.credits {
|
||||
font-style: italic;
|
||||
font-size: smaller; }
|
||||
|
||||
p.label {
|
||||
white-space: nowrap; }
|
||||
|
||||
p.rubric {
|
||||
font-weight: bold;
|
||||
font-size: larger;
|
||||
color: maroon;
|
||||
text-align: center; }
|
||||
|
||||
p.topic-title {
|
||||
font-weight: bold; }
|
||||
|
||||
pre.address {
|
||||
margin-bottom: 0;
|
||||
margin-top: 0;
|
||||
font: inherit; }
|
||||
|
||||
pre.literal-block, pre.doctest-block, pre.math, pre.code {
|
||||
margin-left: 2em;
|
||||
margin-right: 2em; }
|
||||
|
||||
pre.code .ln {
|
||||
color: grey; }
|
||||
|
||||
/* line numbers */
|
||||
pre.code, code {
|
||||
background-color: #eeeeee; }
|
||||
|
||||
pre.code .comment, code .comment {
|
||||
color: #5c6576; }
|
||||
|
||||
pre.code .keyword, code .keyword {
|
||||
color: #3B0D06;
|
||||
font-weight: bold; }
|
||||
|
||||
pre.code .literal.string, code .literal.string {
|
||||
color: #0c5404; }
|
||||
|
||||
pre.code .name.builtin, code .name.builtin {
|
||||
color: #352b84; }
|
||||
|
||||
pre.code .deleted, code .deleted {
|
||||
background-color: #DEB0A1; }
|
||||
|
||||
pre.code .inserted, code .inserted {
|
||||
background-color: #A3D289; }
|
||||
|
||||
span.classifier {
|
||||
font-style: oblique; }
|
||||
|
||||
span.classifier-delimiter {
|
||||
font-weight: bold; }
|
||||
|
||||
span.option {
|
||||
white-space: nowrap; }
|
||||
|
||||
span.problematic {
|
||||
color: #b30000; }
|
||||
|
||||
span.section-subtitle {
|
||||
/* font-size relative to parent (h1..h6 element) */
|
||||
font-size: 80%; }
|
||||
|
||||
span.DecNumber {
|
||||
color: #252dbe; }
|
||||
|
||||
span.BinNumber {
|
||||
color: #252dbe; }
|
||||
|
||||
span.HexNumber {
|
||||
color: #252dbe; }
|
||||
|
||||
span.OctNumber {
|
||||
color: #252dbe; }
|
||||
|
||||
span.FloatNumber {
|
||||
color: #252dbe; }
|
||||
|
||||
span.Identifier {
|
||||
color: #222; }
|
||||
|
||||
span.Keyword {
|
||||
font-weight: 600;
|
||||
color: #5e8f60; }
|
||||
|
||||
span.StringLit {
|
||||
color: #a4255b; }
|
||||
|
||||
span.LongStringLit {
|
||||
color: #a4255b; }
|
||||
|
||||
span.CharLit {
|
||||
color: #a4255b; }
|
||||
|
||||
span.EscapeSequence {
|
||||
color: black; }
|
||||
|
||||
span.Operator {
|
||||
color: black; }
|
||||
|
||||
span.Punctuation {
|
||||
color: black; }
|
||||
|
||||
span.Comment, span.LongComment {
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
color: #484a86; }
|
||||
|
||||
span.RegularExpression {
|
||||
color: darkviolet; }
|
||||
|
||||
span.TagStart {
|
||||
color: darkviolet; }
|
||||
|
||||
span.TagEnd {
|
||||
color: darkviolet; }
|
||||
|
||||
span.Key {
|
||||
color: #252dbe; }
|
||||
|
||||
span.Value {
|
||||
color: #252dbe; }
|
||||
|
||||
span.RawData {
|
||||
color: #a4255b; }
|
||||
|
||||
span.Assembler {
|
||||
color: #252dbe; }
|
||||
|
||||
span.Preprocessor {
|
||||
color: #252dbe; }
|
||||
|
||||
span.Directive {
|
||||
color: #252dbe; }
|
||||
|
||||
span.Command, span.Rule, span.Hyperlink, span.Label, span.Reference,
|
||||
span.Other {
|
||||
color: black; }
|
||||
|
||||
/* Pop type, const, proc, and iterator defs in nim def blocks */
|
||||
dt pre > span.Identifier, dt pre > span.Operator {
|
||||
color: #155da4;
|
||||
font-weight: 700; }
|
||||
|
||||
dt pre > span.Keyword ~ span.Identifier, dt pre > span.Identifier ~ span.Identifier,
|
||||
dt pre > span.Operator ~ span.Identifier, dt pre > span.Other ~ span.Identifier {
|
||||
color: inherit;
|
||||
font-weight: inherit; }
|
||||
|
||||
/* Nim sprite for the footer (taken from main page favicon) */
|
||||
.nim-sprite {
|
||||
display: inline-block;
|
||||
height: 16px;
|
||||
width: 16px;
|
||||
background-position: 0 0;
|
||||
background-size: 16px 16px;
|
||||
-webkit-filter: opacity(50%);
|
||||
background-repeat: no-repeat;
|
||||
background-image: url("data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AAAAAAUAAAAF////AP///wD///8A////AP///wD///8A////AP///wD///8A////AAAAAAIAAABbAAAAlQAAAKIAAACbAAAAmwAAAKIAAACVAAAAWwAAAAL///8A////AP///wD///8A////AAAAABQAAADAAAAAYwAAAA3///8A////AP///wD///8AAAAADQAAAGMAAADAAAAAFP///wD///8A////AP///wAAAACdAAAAOv///wD///8A////AP///wD///8A////AP///wD///8AAAAAOgAAAJ3///8A////AP///wAAAAAnAAAAcP///wAAAAAoAAAASv///wD///8A////AP///wAAAABKAAAAKP///wAAAABwAAAAJ////wD///8AAAAAgQAAABwAAACIAAAAkAAAAJMAAACtAAAAFQAAABUAAACtAAAAkwAAAJAAAACIAAAAHAAAAIH///8A////AAAAAKQAAACrAAAAaP///wD///8AAAAARQAAANIAAADSAAAARf///wD///8AAAAAaAAAAKsAAACk////AAAAADMAAACcAAAAnQAAABj///8A////AP///wAAAAAYAAAAGP///wD///8A////AAAAABgAAACdAAAAnAAAADMAAAB1AAAAwwAAAP8AAADpAAAAsQAAAE4AAAAb////AP///wAAAAAbAAAATgAAALEAAADpAAAA/wAAAMMAAAB1AAAAtwAAAOkAAAD/AAAA/wAAAP8AAADvAAAA3gAAAN4AAADeAAAA3gAAAO8AAAD/AAAA/wAAAP8AAADpAAAAtwAAAGUAAAA/AAAA3wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAADfAAAAPwAAAGX///8A////AAAAAEgAAADtAAAAvwAAAL0AAADGAAAA7wAAAO8AAADGAAAAvQAAAL8AAADtAAAASP///wD///8A////AP///wD///8AAAAAO////wD///8A////AAAAAIcAAACH////AP///wD///8AAAAAO////wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A//8AAP//AAD4HwAA7/cAAN/7AAD//wAAoYUAAJ55AACf+QAAh+EAAAAAAADAAwAA4AcAAP5/AAD//wAA//8AAA==");
|
||||
margin-bottom: -5px; }
|
||||
|
||||
span.pragmadots {
|
||||
/* Position: relative frees us up to make the dots
|
||||
look really nice without fucking up the layout and
|
||||
causing bulging in the parent container */
|
||||
position: relative;
|
||||
/* 1px down looks slightly nicer */
|
||||
top: 1px;
|
||||
padding: 2px;
|
||||
background-color: #e8e8e8;
|
||||
border-radius: 4px;
|
||||
margin: 0 2px;
|
||||
cursor: pointer;
|
||||
font-size: 0.8em;
|
||||
}
|
||||
|
||||
span.pragmadots:hover {
|
||||
background-color: #DBDBDB;
|
||||
}
|
||||
span.pragmawrap {
|
||||
display: none;
|
||||
}
|
||||
|
||||
span.attachedType {
|
||||
display: none;
|
||||
visibility: hidden;
|
||||
}
|
||||
</style>
|
||||
<link rel="stylesheet" type="text/css" href="nimdoc.css">
|
||||
|
||||
<script type="text/javascript" src="dochack.js"></script>
|
||||
|
||||
@@ -798,6 +33,37 @@ function main() {
|
||||
event.target.parentNode.nextElementSibling.style.display = "inline";
|
||||
}
|
||||
}
|
||||
|
||||
const toggleSwitch = document.querySelector('.theme-switch input[type="checkbox"]');
|
||||
function switchTheme(e) {
|
||||
if (e.target.checked) {
|
||||
document.documentElement.setAttribute('data-theme', 'dark');
|
||||
localStorage.setItem('theme', 'dark');
|
||||
} else {
|
||||
document.documentElement.setAttribute('data-theme', 'light');
|
||||
localStorage.setItem('theme', 'light');
|
||||
}
|
||||
}
|
||||
|
||||
toggleSwitch.addEventListener('change', switchTheme, false);
|
||||
|
||||
|
||||
if (window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches) {
|
||||
document.documentElement.setAttribute('data-theme', "dark");
|
||||
toggleSwitch.checked = true;
|
||||
} else if (window.matchMedia && window.matchMedia('(prefers-color-scheme: light)').matches) {
|
||||
document.documentElement.setAttribute('data-theme', "light");
|
||||
toggleSwitch.checked = false;
|
||||
} else {
|
||||
const currentTheme = localStorage.getItem('theme') ? localStorage.getItem('theme') : null;
|
||||
if (currentTheme) {
|
||||
document.documentElement.setAttribute('data-theme', currentTheme);
|
||||
|
||||
if (currentTheme === 'dark') {
|
||||
toggleSwitch.checked = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
@@ -808,6 +74,13 @@ function main() {
|
||||
<h1 class="title">foo</h1>
|
||||
<div class="row">
|
||||
<div class="three columns">
|
||||
<div class="theme-switch-wrapper">
|
||||
<label class="theme-switch" for="checkbox">
|
||||
<input type="checkbox" id="checkbox" />
|
||||
<div class="slider round"></div>
|
||||
</label>
|
||||
<em>Dark Mode</em>
|
||||
</div>
|
||||
<div id="global-links">
|
||||
<ul class="simple">
|
||||
</ul>
|
||||
@@ -860,7 +133,7 @@ I do foo
|
||||
<div class="twelve-columns footer">
|
||||
<span class="nim-sprite"></span>
|
||||
<br/>
|
||||
<small>Made with Nim. Generated: 1970-01-02 03:46:40 UTC</small>
|
||||
<small style="color: var(--hint);">Made with Nim. Generated: 1970-01-02 03:46:40 UTC</small>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -18,772 +18,7 @@
|
||||
|
||||
<!-- CSS -->
|
||||
<title>Index</title>
|
||||
<style type="text/css" >
|
||||
/*
|
||||
Stylesheet for use with Docutils/rst2html.
|
||||
|
||||
See http://docutils.sf.net/docs/howto/html-stylesheets.html for how to
|
||||
customize this style sheet.
|
||||
|
||||
Modified from Chad Skeeters' rst2html-style
|
||||
https://bitbucket.org/cskeeters/rst2html-style/
|
||||
|
||||
Modified by Boyd Greenfield and narimiran
|
||||
*/
|
||||
|
||||
html {
|
||||
font-size: 100%;
|
||||
-webkit-text-size-adjust: 100%;
|
||||
-ms-text-size-adjust: 100%; }
|
||||
|
||||
body {
|
||||
font-family: "Lato", "Helvetica Neue", "HelveticaNeue", Helvetica, Arial, sans-serif;
|
||||
font-weight: 400;
|
||||
font-size: 1.125em;
|
||||
line-height: 1.5;
|
||||
color: #222;
|
||||
background-color: #FCFCFC; }
|
||||
|
||||
/* Skeleton grid */
|
||||
.container {
|
||||
position: relative;
|
||||
width: 100%;
|
||||
max-width: 1050px;
|
||||
margin: 0 auto;
|
||||
padding: 0;
|
||||
box-sizing: border-box; }
|
||||
|
||||
.column,
|
||||
.columns {
|
||||
width: 100%;
|
||||
float: left;
|
||||
box-sizing: border-box;
|
||||
margin-left: 1%;
|
||||
}
|
||||
|
||||
.column:first-child,
|
||||
.columns:first-child {
|
||||
margin-left: 0; }
|
||||
|
||||
.three.columns {
|
||||
width: 19%; }
|
||||
|
||||
.nine.columns {
|
||||
width: 80.0%; }
|
||||
|
||||
.twelve.columns {
|
||||
width: 100%;
|
||||
margin-left: 0; }
|
||||
|
||||
@media screen and (max-width: 860px) {
|
||||
.three.columns {
|
||||
display: none;
|
||||
}
|
||||
.nine.columns {
|
||||
width: 98.0%;
|
||||
}
|
||||
body {
|
||||
font-size: 1em;
|
||||
line-height: 1.35;
|
||||
}
|
||||
}
|
||||
|
||||
cite {
|
||||
font-style: italic !important; }
|
||||
|
||||
|
||||
/* Nim search input */
|
||||
div#searchInputDiv {
|
||||
margin-bottom: 1em;
|
||||
}
|
||||
input#searchInput {
|
||||
width: 80%;
|
||||
}
|
||||
|
||||
/*
|
||||
* Some custom formatting for input forms.
|
||||
* This also fixes input form colors on Firefox with a dark system theme on Linux.
|
||||
*/
|
||||
input {
|
||||
-moz-appearance: none;
|
||||
color: #333;
|
||||
background-color: #f8f8f8;
|
||||
border: 1px solid #aaa;
|
||||
font-family: "Lato", "Helvetica Neue", "HelveticaNeue", Helvetica, Arial, sans-serif;
|
||||
font-size: 0.9em;
|
||||
padding: 6px;
|
||||
}
|
||||
input:focus {
|
||||
border: 1px solid #1fa0eb;
|
||||
box-shadow: 0 0 2px #1fa0eb;
|
||||
}
|
||||
|
||||
/* Docgen styles */
|
||||
/* Links */
|
||||
a {
|
||||
color: #07b;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
a span.Identifier {
|
||||
text-decoration: underline;
|
||||
text-decoration-color: #aab;
|
||||
}
|
||||
|
||||
a.reference-toplevel {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
a.toc-backref {
|
||||
text-decoration: none;
|
||||
color: #222; }
|
||||
|
||||
a.link-seesrc {
|
||||
color: #607c9f;
|
||||
font-size: 0.9em;
|
||||
font-style: italic; }
|
||||
|
||||
a:hover,
|
||||
a:focus {
|
||||
color: #607c9f;
|
||||
text-decoration: underline; }
|
||||
|
||||
a:hover span.Identifier {
|
||||
color: #607c9f;
|
||||
}
|
||||
|
||||
|
||||
sub,
|
||||
sup {
|
||||
position: relative;
|
||||
font-size: 75%;
|
||||
line-height: 0;
|
||||
vertical-align: baseline; }
|
||||
|
||||
sup {
|
||||
top: -0.5em; }
|
||||
|
||||
sub {
|
||||
bottom: -0.25em; }
|
||||
|
||||
img {
|
||||
width: auto;
|
||||
height: auto;
|
||||
max-width: 100%;
|
||||
vertical-align: middle;
|
||||
border: 0;
|
||||
-ms-interpolation-mode: bicubic; }
|
||||
|
||||
@media print {
|
||||
* {
|
||||
color: black !important;
|
||||
text-shadow: none !important;
|
||||
background: transparent !important;
|
||||
box-shadow: none !important; }
|
||||
|
||||
a,
|
||||
a:visited {
|
||||
text-decoration: underline; }
|
||||
|
||||
a[href]:after {
|
||||
content: " (" attr(href) ")"; }
|
||||
|
||||
abbr[title]:after {
|
||||
content: " (" attr(title) ")"; }
|
||||
|
||||
.ir a:after,
|
||||
a[href^="javascript:"]:after,
|
||||
a[href^="#"]:after {
|
||||
content: ""; }
|
||||
|
||||
pre,
|
||||
blockquote {
|
||||
border: 1px solid #999;
|
||||
page-break-inside: avoid; }
|
||||
|
||||
thead {
|
||||
display: table-header-group; }
|
||||
|
||||
tr,
|
||||
img {
|
||||
page-break-inside: avoid; }
|
||||
|
||||
img {
|
||||
max-width: 100% !important; }
|
||||
|
||||
@page {
|
||||
margin: 0.5cm; }
|
||||
|
||||
h1 {
|
||||
page-break-before: always; }
|
||||
|
||||
h1.title {
|
||||
page-break-before: avoid; }
|
||||
|
||||
p,
|
||||
h2,
|
||||
h3 {
|
||||
orphans: 3;
|
||||
widows: 3; }
|
||||
|
||||
h2,
|
||||
h3 {
|
||||
page-break-after: avoid; }
|
||||
}
|
||||
|
||||
|
||||
p {
|
||||
margin-top: 0.5em;
|
||||
margin-bottom: 0.5em;
|
||||
}
|
||||
|
||||
small {
|
||||
font-size: 85%; }
|
||||
|
||||
strong {
|
||||
font-weight: 600;
|
||||
font-size: 0.95em;
|
||||
color: #3c3c3c;
|
||||
}
|
||||
|
||||
em {
|
||||
font-style: italic; }
|
||||
|
||||
h1 {
|
||||
font-size: 1.8em;
|
||||
font-weight: 400;
|
||||
padding-bottom: .25em;
|
||||
border-bottom: 1px solid #aaa;
|
||||
margin-top: 2.5em;
|
||||
margin-bottom: 1em;
|
||||
line-height: 1.2em; }
|
||||
|
||||
h1.title {
|
||||
padding-bottom: 1em;
|
||||
border-bottom: 0px;
|
||||
font-size: 2.5em;
|
||||
text-align: center;
|
||||
font-weight: 900;
|
||||
margin-top: 0.75em;
|
||||
margin-bottom: 0em;
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: 1.3em;
|
||||
margin-top: 2em; }
|
||||
|
||||
h2.subtitle {
|
||||
text-align: center; }
|
||||
|
||||
h3 {
|
||||
font-size: 1.125em;
|
||||
font-style: italic;
|
||||
margin-top: 1.5em; }
|
||||
|
||||
h4 {
|
||||
font-size: 1.125em;
|
||||
margin-top: 1em; }
|
||||
|
||||
h5 {
|
||||
font-size: 1.125em;
|
||||
margin-top: 0.75em; }
|
||||
|
||||
h6 {
|
||||
font-size: 1.1em; }
|
||||
|
||||
|
||||
ul,
|
||||
ol {
|
||||
padding: 0;
|
||||
margin-top: 0.5em;
|
||||
margin-left: 0.75em; }
|
||||
|
||||
ul ul,
|
||||
ul ol,
|
||||
ol ol,
|
||||
ol ul {
|
||||
margin-bottom: 0;
|
||||
margin-left: 1.25em; }
|
||||
|
||||
li {
|
||||
list-style-type: circle;
|
||||
}
|
||||
|
||||
ul.simple-boot li {
|
||||
list-style-type: none;
|
||||
margin-left: 0em;
|
||||
margin-bottom: 0.5em;
|
||||
}
|
||||
|
||||
ol.simple > li, ul.simple > li {
|
||||
margin-bottom: 0.25em;
|
||||
margin-left: 0.4em }
|
||||
|
||||
ul.simple.simple-toc > li {
|
||||
margin-top: 1em;
|
||||
}
|
||||
|
||||
ul.simple-toc {
|
||||
list-style: none;
|
||||
font-size: 0.9em;
|
||||
margin-left: -0.3em;
|
||||
margin-top: 1em; }
|
||||
|
||||
ul.simple-toc > li {
|
||||
list-style-type: none;
|
||||
}
|
||||
|
||||
ul.simple-toc-section {
|
||||
list-style-type: circle;
|
||||
margin-left: 1em;
|
||||
color: #6c9aae; }
|
||||
|
||||
|
||||
ol.arabic {
|
||||
list-style: decimal; }
|
||||
|
||||
ol.loweralpha {
|
||||
list-style: lower-alpha; }
|
||||
|
||||
ol.upperalpha {
|
||||
list-style: upper-alpha; }
|
||||
|
||||
ol.lowerroman {
|
||||
list-style: lower-roman; }
|
||||
|
||||
ol.upperroman {
|
||||
list-style: upper-roman; }
|
||||
|
||||
ul.auto-toc {
|
||||
list-style-type: none; }
|
||||
|
||||
|
||||
dl {
|
||||
margin-bottom: 1.5em; }
|
||||
|
||||
dt {
|
||||
margin-bottom: -0.5em;
|
||||
margin-left: 0.0em; }
|
||||
|
||||
dd {
|
||||
margin-left: 2.0em;
|
||||
margin-bottom: 3.0em;
|
||||
margin-top: 0.5em; }
|
||||
|
||||
|
||||
hr {
|
||||
margin: 2em 0;
|
||||
border: 0;
|
||||
border-top: 1px solid #aaa; }
|
||||
|
||||
blockquote {
|
||||
font-size: 0.9em;
|
||||
font-style: italic;
|
||||
padding-left: 0.5em;
|
||||
margin-left: 0;
|
||||
border-left: 5px solid #bbc;
|
||||
}
|
||||
|
||||
.pre {
|
||||
font-family: "Source Code Pro", Monaco, Menlo, Consolas, "Courier New", monospace;
|
||||
font-weight: 500;
|
||||
font-size: 0.85em;
|
||||
background-color: #f0f3ff;
|
||||
padding-left: 3px;
|
||||
padding-right: 3px;
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
pre {
|
||||
font-family: "Source Code Pro", Monaco, Menlo, Consolas, "Courier New", monospace;
|
||||
color: #222;
|
||||
font-weight: 500;
|
||||
display: inline-block;
|
||||
box-sizing: border-box;
|
||||
min-width: 100%;
|
||||
padding: 0.5em;
|
||||
margin-top: 0.5em;
|
||||
margin-bottom: 0.5em;
|
||||
font-size: 0.85em;
|
||||
white-space: pre !important;
|
||||
overflow-y: hidden;
|
||||
overflow-x: visible;
|
||||
background-color: ghostwhite;
|
||||
border: 1px solid #dde;
|
||||
-webkit-border-radius: 6px;
|
||||
-moz-border-radius: 6px;
|
||||
border-radius: 6px; }
|
||||
|
||||
.pre-scrollable {
|
||||
max-height: 340px;
|
||||
overflow-y: scroll; }
|
||||
|
||||
|
||||
/* Nim line-numbered tables */
|
||||
.line-nums-table {
|
||||
width: 100%;
|
||||
table-layout: fixed; }
|
||||
|
||||
table.line-nums-table {
|
||||
border-radius: 4px;
|
||||
border: 1px solid #cccccc;
|
||||
background-color: ghostwhite;
|
||||
border-collapse: separate;
|
||||
margin-top: 15px;
|
||||
margin-bottom: 25px; }
|
||||
|
||||
.line-nums-table tbody {
|
||||
border: none; }
|
||||
|
||||
.line-nums-table td pre {
|
||||
border: none;
|
||||
background-color: transparent; }
|
||||
|
||||
.line-nums-table td.blob-line-nums {
|
||||
width: 28px; }
|
||||
|
||||
.line-nums-table td.blob-line-nums pre {
|
||||
color: #b0b0b0;
|
||||
-webkit-filter: opacity(75%);
|
||||
text-align: right;
|
||||
border-color: transparent;
|
||||
background-color: transparent;
|
||||
padding-left: 0px;
|
||||
margin-left: 0px;
|
||||
padding-right: 0px;
|
||||
margin-right: 0px; }
|
||||
|
||||
|
||||
table {
|
||||
max-width: 100%;
|
||||
background-color: transparent;
|
||||
margin-top: 0.5em;
|
||||
margin-bottom: 1.5em;
|
||||
border-collapse: collapse;
|
||||
border-color: #ccc;
|
||||
border-spacing: 0;
|
||||
font-size: 0.9em;
|
||||
}
|
||||
|
||||
table th, table td {
|
||||
padding: 0px 0.5em 0px;
|
||||
}
|
||||
|
||||
table th {
|
||||
background-color: #e8e8e8;
|
||||
font-weight: bold; }
|
||||
|
||||
table th.docinfo-name {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
table tr:hover {
|
||||
background-color: ghostwhite; }
|
||||
|
||||
|
||||
/* rst2html default used to remove borders from tables and images */
|
||||
.borderless, table.borderless td, table.borderless th {
|
||||
border: 0; }
|
||||
|
||||
table.borderless td, table.borderless th {
|
||||
/* Override padding for "table.docutils td" with "! important".
|
||||
The right padding separates the table cells. */
|
||||
padding: 0 0.5em 0 0 !important; }
|
||||
|
||||
.first {
|
||||
/* Override more specific margin styles with "! important". */
|
||||
margin-top: 0 !important; }
|
||||
|
||||
.last, .with-subtitle {
|
||||
margin-bottom: 0 !important; }
|
||||
|
||||
.hidden {
|
||||
display: none; }
|
||||
|
||||
blockquote.epigraph {
|
||||
margin: 2em 5em; }
|
||||
|
||||
dl.docutils dd {
|
||||
margin-bottom: 0.5em; }
|
||||
|
||||
object[type="image/svg+xml"], object[type="application/x-shockwave-flash"] {
|
||||
overflow: hidden; }
|
||||
|
||||
|
||||
div.figure {
|
||||
margin-left: 2em;
|
||||
margin-right: 2em; }
|
||||
|
||||
div.footer, div.header {
|
||||
clear: both;
|
||||
text-align: center;
|
||||
color: #666;
|
||||
font-size: smaller; }
|
||||
|
||||
div.footer {
|
||||
padding-top: 5em;
|
||||
}
|
||||
|
||||
div.line-block {
|
||||
display: block;
|
||||
margin-top: 1em;
|
||||
margin-bottom: 1em; }
|
||||
|
||||
div.line-block div.line-block {
|
||||
margin-top: 0;
|
||||
margin-bottom: 0;
|
||||
margin-left: 1.5em; }
|
||||
|
||||
div.topic {
|
||||
margin: 2em; }
|
||||
|
||||
div.search_results {
|
||||
background-color: antiquewhite;
|
||||
margin: 3em;
|
||||
padding: 1em;
|
||||
border: 1px solid #4d4d4d;
|
||||
}
|
||||
|
||||
div#global-links ul {
|
||||
margin-left: 0;
|
||||
list-style-type: none;
|
||||
}
|
||||
|
||||
div#global-links > simple-boot {
|
||||
margin-left: 3em;
|
||||
}
|
||||
|
||||
hr.docutils {
|
||||
width: 75%; }
|
||||
|
||||
img.align-left, .figure.align-left, object.align-left {
|
||||
clear: left;
|
||||
float: left;
|
||||
margin-right: 1em; }
|
||||
|
||||
img.align-right, .figure.align-right, object.align-right {
|
||||
clear: right;
|
||||
float: right;
|
||||
margin-left: 1em; }
|
||||
|
||||
img.align-center, .figure.align-center, object.align-center {
|
||||
display: block;
|
||||
margin-left: auto;
|
||||
margin-right: auto; }
|
||||
|
||||
.align-left {
|
||||
text-align: left; }
|
||||
|
||||
.align-center {
|
||||
clear: both;
|
||||
text-align: center; }
|
||||
|
||||
.align-right {
|
||||
text-align: right; }
|
||||
|
||||
/* reset inner alignment in figures */
|
||||
div.align-right {
|
||||
text-align: inherit; }
|
||||
|
||||
p.attribution {
|
||||
text-align: right;
|
||||
margin-left: 50%; }
|
||||
|
||||
p.caption {
|
||||
font-style: italic; }
|
||||
|
||||
p.credits {
|
||||
font-style: italic;
|
||||
font-size: smaller; }
|
||||
|
||||
p.label {
|
||||
white-space: nowrap; }
|
||||
|
||||
p.rubric {
|
||||
font-weight: bold;
|
||||
font-size: larger;
|
||||
color: maroon;
|
||||
text-align: center; }
|
||||
|
||||
p.topic-title {
|
||||
font-weight: bold; }
|
||||
|
||||
pre.address {
|
||||
margin-bottom: 0;
|
||||
margin-top: 0;
|
||||
font: inherit; }
|
||||
|
||||
pre.literal-block, pre.doctest-block, pre.math, pre.code {
|
||||
margin-left: 2em;
|
||||
margin-right: 2em; }
|
||||
|
||||
pre.code .ln {
|
||||
color: grey; }
|
||||
|
||||
/* line numbers */
|
||||
pre.code, code {
|
||||
background-color: #eeeeee; }
|
||||
|
||||
pre.code .comment, code .comment {
|
||||
color: #5c6576; }
|
||||
|
||||
pre.code .keyword, code .keyword {
|
||||
color: #3B0D06;
|
||||
font-weight: bold; }
|
||||
|
||||
pre.code .literal.string, code .literal.string {
|
||||
color: #0c5404; }
|
||||
|
||||
pre.code .name.builtin, code .name.builtin {
|
||||
color: #352b84; }
|
||||
|
||||
pre.code .deleted, code .deleted {
|
||||
background-color: #DEB0A1; }
|
||||
|
||||
pre.code .inserted, code .inserted {
|
||||
background-color: #A3D289; }
|
||||
|
||||
span.classifier {
|
||||
font-style: oblique; }
|
||||
|
||||
span.classifier-delimiter {
|
||||
font-weight: bold; }
|
||||
|
||||
span.option {
|
||||
white-space: nowrap; }
|
||||
|
||||
span.problematic {
|
||||
color: #b30000; }
|
||||
|
||||
span.section-subtitle {
|
||||
/* font-size relative to parent (h1..h6 element) */
|
||||
font-size: 80%; }
|
||||
|
||||
span.DecNumber {
|
||||
color: #252dbe; }
|
||||
|
||||
span.BinNumber {
|
||||
color: #252dbe; }
|
||||
|
||||
span.HexNumber {
|
||||
color: #252dbe; }
|
||||
|
||||
span.OctNumber {
|
||||
color: #252dbe; }
|
||||
|
||||
span.FloatNumber {
|
||||
color: #252dbe; }
|
||||
|
||||
span.Identifier {
|
||||
color: #222; }
|
||||
|
||||
span.Keyword {
|
||||
font-weight: 600;
|
||||
color: #5e8f60; }
|
||||
|
||||
span.StringLit {
|
||||
color: #a4255b; }
|
||||
|
||||
span.LongStringLit {
|
||||
color: #a4255b; }
|
||||
|
||||
span.CharLit {
|
||||
color: #a4255b; }
|
||||
|
||||
span.EscapeSequence {
|
||||
color: black; }
|
||||
|
||||
span.Operator {
|
||||
color: black; }
|
||||
|
||||
span.Punctuation {
|
||||
color: black; }
|
||||
|
||||
span.Comment, span.LongComment {
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
color: #484a86; }
|
||||
|
||||
span.RegularExpression {
|
||||
color: darkviolet; }
|
||||
|
||||
span.TagStart {
|
||||
color: darkviolet; }
|
||||
|
||||
span.TagEnd {
|
||||
color: darkviolet; }
|
||||
|
||||
span.Key {
|
||||
color: #252dbe; }
|
||||
|
||||
span.Value {
|
||||
color: #252dbe; }
|
||||
|
||||
span.RawData {
|
||||
color: #a4255b; }
|
||||
|
||||
span.Assembler {
|
||||
color: #252dbe; }
|
||||
|
||||
span.Preprocessor {
|
||||
color: #252dbe; }
|
||||
|
||||
span.Directive {
|
||||
color: #252dbe; }
|
||||
|
||||
span.Command, span.Rule, span.Hyperlink, span.Label, span.Reference,
|
||||
span.Other {
|
||||
color: black; }
|
||||
|
||||
/* Pop type, const, proc, and iterator defs in nim def blocks */
|
||||
dt pre > span.Identifier, dt pre > span.Operator {
|
||||
color: #155da4;
|
||||
font-weight: 700; }
|
||||
|
||||
dt pre > span.Keyword ~ span.Identifier, dt pre > span.Identifier ~ span.Identifier,
|
||||
dt pre > span.Operator ~ span.Identifier, dt pre > span.Other ~ span.Identifier {
|
||||
color: inherit;
|
||||
font-weight: inherit; }
|
||||
|
||||
/* Nim sprite for the footer (taken from main page favicon) */
|
||||
.nim-sprite {
|
||||
display: inline-block;
|
||||
height: 16px;
|
||||
width: 16px;
|
||||
background-position: 0 0;
|
||||
background-size: 16px 16px;
|
||||
-webkit-filter: opacity(50%);
|
||||
background-repeat: no-repeat;
|
||||
background-image: url("data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AAAAAAUAAAAF////AP///wD///8A////AP///wD///8A////AP///wD///8A////AAAAAAIAAABbAAAAlQAAAKIAAACbAAAAmwAAAKIAAACVAAAAWwAAAAL///8A////AP///wD///8A////AAAAABQAAADAAAAAYwAAAA3///8A////AP///wD///8AAAAADQAAAGMAAADAAAAAFP///wD///8A////AP///wAAAACdAAAAOv///wD///8A////AP///wD///8A////AP///wD///8AAAAAOgAAAJ3///8A////AP///wAAAAAnAAAAcP///wAAAAAoAAAASv///wD///8A////AP///wAAAABKAAAAKP///wAAAABwAAAAJ////wD///8AAAAAgQAAABwAAACIAAAAkAAAAJMAAACtAAAAFQAAABUAAACtAAAAkwAAAJAAAACIAAAAHAAAAIH///8A////AAAAAKQAAACrAAAAaP///wD///8AAAAARQAAANIAAADSAAAARf///wD///8AAAAAaAAAAKsAAACk////AAAAADMAAACcAAAAnQAAABj///8A////AP///wAAAAAYAAAAGP///wD///8A////AAAAABgAAACdAAAAnAAAADMAAAB1AAAAwwAAAP8AAADpAAAAsQAAAE4AAAAb////AP///wAAAAAbAAAATgAAALEAAADpAAAA/wAAAMMAAAB1AAAAtwAAAOkAAAD/AAAA/wAAAP8AAADvAAAA3gAAAN4AAADeAAAA3gAAAO8AAAD/AAAA/wAAAP8AAADpAAAAtwAAAGUAAAA/AAAA3wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAADfAAAAPwAAAGX///8A////AAAAAEgAAADtAAAAvwAAAL0AAADGAAAA7wAAAO8AAADGAAAAvQAAAL8AAADtAAAASP///wD///8A////AP///wD///8AAAAAO////wD///8A////AAAAAIcAAACH////AP///wD///8AAAAAO////wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A//8AAP//AAD4HwAA7/cAAN/7AAD//wAAoYUAAJ55AACf+QAAh+EAAAAAAADAAwAA4AcAAP5/AAD//wAA//8AAA==");
|
||||
margin-bottom: -5px; }
|
||||
|
||||
span.pragmadots {
|
||||
/* Position: relative frees us up to make the dots
|
||||
look really nice without fucking up the layout and
|
||||
causing bulging in the parent container */
|
||||
position: relative;
|
||||
/* 1px down looks slightly nicer */
|
||||
top: 1px;
|
||||
padding: 2px;
|
||||
background-color: #e8e8e8;
|
||||
border-radius: 4px;
|
||||
margin: 0 2px;
|
||||
cursor: pointer;
|
||||
font-size: 0.8em;
|
||||
}
|
||||
|
||||
span.pragmadots:hover {
|
||||
background-color: #DBDBDB;
|
||||
}
|
||||
span.pragmawrap {
|
||||
display: none;
|
||||
}
|
||||
|
||||
span.attachedType {
|
||||
display: none;
|
||||
visibility: hidden;
|
||||
}
|
||||
</style>
|
||||
<link rel="stylesheet" type="text/css" href="nimdoc.css">
|
||||
|
||||
<script type="text/javascript" src="dochack.js"></script>
|
||||
|
||||
@@ -798,6 +33,37 @@ function main() {
|
||||
event.target.parentNode.nextElementSibling.style.display = "inline";
|
||||
}
|
||||
}
|
||||
|
||||
const toggleSwitch = document.querySelector('.theme-switch input[type="checkbox"]');
|
||||
function switchTheme(e) {
|
||||
if (e.target.checked) {
|
||||
document.documentElement.setAttribute('data-theme', 'dark');
|
||||
localStorage.setItem('theme', 'dark');
|
||||
} else {
|
||||
document.documentElement.setAttribute('data-theme', 'light');
|
||||
localStorage.setItem('theme', 'light');
|
||||
}
|
||||
}
|
||||
|
||||
toggleSwitch.addEventListener('change', switchTheme, false);
|
||||
|
||||
|
||||
if (window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches) {
|
||||
document.documentElement.setAttribute('data-theme', "dark");
|
||||
toggleSwitch.checked = true;
|
||||
} else if (window.matchMedia && window.matchMedia('(prefers-color-scheme: light)').matches) {
|
||||
document.documentElement.setAttribute('data-theme', "light");
|
||||
toggleSwitch.checked = false;
|
||||
} else {
|
||||
const currentTheme = localStorage.getItem('theme') ? localStorage.getItem('theme') : null;
|
||||
if (currentTheme) {
|
||||
document.documentElement.setAttribute('data-theme', currentTheme);
|
||||
|
||||
if (currentTheme === 'dark') {
|
||||
toggleSwitch.checked = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
@@ -816,7 +82,7 @@ function main() {
|
||||
<div class="twelve-columns footer">
|
||||
<span class="nim-sprite"></span>
|
||||
<br/>
|
||||
<small>Made with Nim. Generated: 1970-01-02 03:46:40 UTC</small>
|
||||
<small style="color: var(--hint);">Made with Nim. Generated: 1970-01-02 03:46:40 UTC</small>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -18,772 +18,7 @@
|
||||
|
||||
<!-- CSS -->
|
||||
<title>utils</title>
|
||||
<style type="text/css" >
|
||||
/*
|
||||
Stylesheet for use with Docutils/rst2html.
|
||||
|
||||
See http://docutils.sf.net/docs/howto/html-stylesheets.html for how to
|
||||
customize this style sheet.
|
||||
|
||||
Modified from Chad Skeeters' rst2html-style
|
||||
https://bitbucket.org/cskeeters/rst2html-style/
|
||||
|
||||
Modified by Boyd Greenfield and narimiran
|
||||
*/
|
||||
|
||||
html {
|
||||
font-size: 100%;
|
||||
-webkit-text-size-adjust: 100%;
|
||||
-ms-text-size-adjust: 100%; }
|
||||
|
||||
body {
|
||||
font-family: "Lato", "Helvetica Neue", "HelveticaNeue", Helvetica, Arial, sans-serif;
|
||||
font-weight: 400;
|
||||
font-size: 1.125em;
|
||||
line-height: 1.5;
|
||||
color: #222;
|
||||
background-color: #FCFCFC; }
|
||||
|
||||
/* Skeleton grid */
|
||||
.container {
|
||||
position: relative;
|
||||
width: 100%;
|
||||
max-width: 1050px;
|
||||
margin: 0 auto;
|
||||
padding: 0;
|
||||
box-sizing: border-box; }
|
||||
|
||||
.column,
|
||||
.columns {
|
||||
width: 100%;
|
||||
float: left;
|
||||
box-sizing: border-box;
|
||||
margin-left: 1%;
|
||||
}
|
||||
|
||||
.column:first-child,
|
||||
.columns:first-child {
|
||||
margin-left: 0; }
|
||||
|
||||
.three.columns {
|
||||
width: 19%; }
|
||||
|
||||
.nine.columns {
|
||||
width: 80.0%; }
|
||||
|
||||
.twelve.columns {
|
||||
width: 100%;
|
||||
margin-left: 0; }
|
||||
|
||||
@media screen and (max-width: 860px) {
|
||||
.three.columns {
|
||||
display: none;
|
||||
}
|
||||
.nine.columns {
|
||||
width: 98.0%;
|
||||
}
|
||||
body {
|
||||
font-size: 1em;
|
||||
line-height: 1.35;
|
||||
}
|
||||
}
|
||||
|
||||
cite {
|
||||
font-style: italic !important; }
|
||||
|
||||
|
||||
/* Nim search input */
|
||||
div#searchInputDiv {
|
||||
margin-bottom: 1em;
|
||||
}
|
||||
input#searchInput {
|
||||
width: 80%;
|
||||
}
|
||||
|
||||
/*
|
||||
* Some custom formatting for input forms.
|
||||
* This also fixes input form colors on Firefox with a dark system theme on Linux.
|
||||
*/
|
||||
input {
|
||||
-moz-appearance: none;
|
||||
color: #333;
|
||||
background-color: #f8f8f8;
|
||||
border: 1px solid #aaa;
|
||||
font-family: "Lato", "Helvetica Neue", "HelveticaNeue", Helvetica, Arial, sans-serif;
|
||||
font-size: 0.9em;
|
||||
padding: 6px;
|
||||
}
|
||||
input:focus {
|
||||
border: 1px solid #1fa0eb;
|
||||
box-shadow: 0 0 2px #1fa0eb;
|
||||
}
|
||||
|
||||
/* Docgen styles */
|
||||
/* Links */
|
||||
a {
|
||||
color: #07b;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
a span.Identifier {
|
||||
text-decoration: underline;
|
||||
text-decoration-color: #aab;
|
||||
}
|
||||
|
||||
a.reference-toplevel {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
a.toc-backref {
|
||||
text-decoration: none;
|
||||
color: #222; }
|
||||
|
||||
a.link-seesrc {
|
||||
color: #607c9f;
|
||||
font-size: 0.9em;
|
||||
font-style: italic; }
|
||||
|
||||
a:hover,
|
||||
a:focus {
|
||||
color: #607c9f;
|
||||
text-decoration: underline; }
|
||||
|
||||
a:hover span.Identifier {
|
||||
color: #607c9f;
|
||||
}
|
||||
|
||||
|
||||
sub,
|
||||
sup {
|
||||
position: relative;
|
||||
font-size: 75%;
|
||||
line-height: 0;
|
||||
vertical-align: baseline; }
|
||||
|
||||
sup {
|
||||
top: -0.5em; }
|
||||
|
||||
sub {
|
||||
bottom: -0.25em; }
|
||||
|
||||
img {
|
||||
width: auto;
|
||||
height: auto;
|
||||
max-width: 100%;
|
||||
vertical-align: middle;
|
||||
border: 0;
|
||||
-ms-interpolation-mode: bicubic; }
|
||||
|
||||
@media print {
|
||||
* {
|
||||
color: black !important;
|
||||
text-shadow: none !important;
|
||||
background: transparent !important;
|
||||
box-shadow: none !important; }
|
||||
|
||||
a,
|
||||
a:visited {
|
||||
text-decoration: underline; }
|
||||
|
||||
a[href]:after {
|
||||
content: " (" attr(href) ")"; }
|
||||
|
||||
abbr[title]:after {
|
||||
content: " (" attr(title) ")"; }
|
||||
|
||||
.ir a:after,
|
||||
a[href^="javascript:"]:after,
|
||||
a[href^="#"]:after {
|
||||
content: ""; }
|
||||
|
||||
pre,
|
||||
blockquote {
|
||||
border: 1px solid #999;
|
||||
page-break-inside: avoid; }
|
||||
|
||||
thead {
|
||||
display: table-header-group; }
|
||||
|
||||
tr,
|
||||
img {
|
||||
page-break-inside: avoid; }
|
||||
|
||||
img {
|
||||
max-width: 100% !important; }
|
||||
|
||||
@page {
|
||||
margin: 0.5cm; }
|
||||
|
||||
h1 {
|
||||
page-break-before: always; }
|
||||
|
||||
h1.title {
|
||||
page-break-before: avoid; }
|
||||
|
||||
p,
|
||||
h2,
|
||||
h3 {
|
||||
orphans: 3;
|
||||
widows: 3; }
|
||||
|
||||
h2,
|
||||
h3 {
|
||||
page-break-after: avoid; }
|
||||
}
|
||||
|
||||
|
||||
p {
|
||||
margin-top: 0.5em;
|
||||
margin-bottom: 0.5em;
|
||||
}
|
||||
|
||||
small {
|
||||
font-size: 85%; }
|
||||
|
||||
strong {
|
||||
font-weight: 600;
|
||||
font-size: 0.95em;
|
||||
color: #3c3c3c;
|
||||
}
|
||||
|
||||
em {
|
||||
font-style: italic; }
|
||||
|
||||
h1 {
|
||||
font-size: 1.8em;
|
||||
font-weight: 400;
|
||||
padding-bottom: .25em;
|
||||
border-bottom: 1px solid #aaa;
|
||||
margin-top: 2.5em;
|
||||
margin-bottom: 1em;
|
||||
line-height: 1.2em; }
|
||||
|
||||
h1.title {
|
||||
padding-bottom: 1em;
|
||||
border-bottom: 0px;
|
||||
font-size: 2.5em;
|
||||
text-align: center;
|
||||
font-weight: 900;
|
||||
margin-top: 0.75em;
|
||||
margin-bottom: 0em;
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: 1.3em;
|
||||
margin-top: 2em; }
|
||||
|
||||
h2.subtitle {
|
||||
text-align: center; }
|
||||
|
||||
h3 {
|
||||
font-size: 1.125em;
|
||||
font-style: italic;
|
||||
margin-top: 1.5em; }
|
||||
|
||||
h4 {
|
||||
font-size: 1.125em;
|
||||
margin-top: 1em; }
|
||||
|
||||
h5 {
|
||||
font-size: 1.125em;
|
||||
margin-top: 0.75em; }
|
||||
|
||||
h6 {
|
||||
font-size: 1.1em; }
|
||||
|
||||
|
||||
ul,
|
||||
ol {
|
||||
padding: 0;
|
||||
margin-top: 0.5em;
|
||||
margin-left: 0.75em; }
|
||||
|
||||
ul ul,
|
||||
ul ol,
|
||||
ol ol,
|
||||
ol ul {
|
||||
margin-bottom: 0;
|
||||
margin-left: 1.25em; }
|
||||
|
||||
li {
|
||||
list-style-type: circle;
|
||||
}
|
||||
|
||||
ul.simple-boot li {
|
||||
list-style-type: none;
|
||||
margin-left: 0em;
|
||||
margin-bottom: 0.5em;
|
||||
}
|
||||
|
||||
ol.simple > li, ul.simple > li {
|
||||
margin-bottom: 0.25em;
|
||||
margin-left: 0.4em }
|
||||
|
||||
ul.simple.simple-toc > li {
|
||||
margin-top: 1em;
|
||||
}
|
||||
|
||||
ul.simple-toc {
|
||||
list-style: none;
|
||||
font-size: 0.9em;
|
||||
margin-left: -0.3em;
|
||||
margin-top: 1em; }
|
||||
|
||||
ul.simple-toc > li {
|
||||
list-style-type: none;
|
||||
}
|
||||
|
||||
ul.simple-toc-section {
|
||||
list-style-type: circle;
|
||||
margin-left: 1em;
|
||||
color: #6c9aae; }
|
||||
|
||||
|
||||
ol.arabic {
|
||||
list-style: decimal; }
|
||||
|
||||
ol.loweralpha {
|
||||
list-style: lower-alpha; }
|
||||
|
||||
ol.upperalpha {
|
||||
list-style: upper-alpha; }
|
||||
|
||||
ol.lowerroman {
|
||||
list-style: lower-roman; }
|
||||
|
||||
ol.upperroman {
|
||||
list-style: upper-roman; }
|
||||
|
||||
ul.auto-toc {
|
||||
list-style-type: none; }
|
||||
|
||||
|
||||
dl {
|
||||
margin-bottom: 1.5em; }
|
||||
|
||||
dt {
|
||||
margin-bottom: -0.5em;
|
||||
margin-left: 0.0em; }
|
||||
|
||||
dd {
|
||||
margin-left: 2.0em;
|
||||
margin-bottom: 3.0em;
|
||||
margin-top: 0.5em; }
|
||||
|
||||
|
||||
hr {
|
||||
margin: 2em 0;
|
||||
border: 0;
|
||||
border-top: 1px solid #aaa; }
|
||||
|
||||
blockquote {
|
||||
font-size: 0.9em;
|
||||
font-style: italic;
|
||||
padding-left: 0.5em;
|
||||
margin-left: 0;
|
||||
border-left: 5px solid #bbc;
|
||||
}
|
||||
|
||||
.pre {
|
||||
font-family: "Source Code Pro", Monaco, Menlo, Consolas, "Courier New", monospace;
|
||||
font-weight: 500;
|
||||
font-size: 0.85em;
|
||||
background-color: #f0f3ff;
|
||||
padding-left: 3px;
|
||||
padding-right: 3px;
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
pre {
|
||||
font-family: "Source Code Pro", Monaco, Menlo, Consolas, "Courier New", monospace;
|
||||
color: #222;
|
||||
font-weight: 500;
|
||||
display: inline-block;
|
||||
box-sizing: border-box;
|
||||
min-width: 100%;
|
||||
padding: 0.5em;
|
||||
margin-top: 0.5em;
|
||||
margin-bottom: 0.5em;
|
||||
font-size: 0.85em;
|
||||
white-space: pre !important;
|
||||
overflow-y: hidden;
|
||||
overflow-x: visible;
|
||||
background-color: ghostwhite;
|
||||
border: 1px solid #dde;
|
||||
-webkit-border-radius: 6px;
|
||||
-moz-border-radius: 6px;
|
||||
border-radius: 6px; }
|
||||
|
||||
.pre-scrollable {
|
||||
max-height: 340px;
|
||||
overflow-y: scroll; }
|
||||
|
||||
|
||||
/* Nim line-numbered tables */
|
||||
.line-nums-table {
|
||||
width: 100%;
|
||||
table-layout: fixed; }
|
||||
|
||||
table.line-nums-table {
|
||||
border-radius: 4px;
|
||||
border: 1px solid #cccccc;
|
||||
background-color: ghostwhite;
|
||||
border-collapse: separate;
|
||||
margin-top: 15px;
|
||||
margin-bottom: 25px; }
|
||||
|
||||
.line-nums-table tbody {
|
||||
border: none; }
|
||||
|
||||
.line-nums-table td pre {
|
||||
border: none;
|
||||
background-color: transparent; }
|
||||
|
||||
.line-nums-table td.blob-line-nums {
|
||||
width: 28px; }
|
||||
|
||||
.line-nums-table td.blob-line-nums pre {
|
||||
color: #b0b0b0;
|
||||
-webkit-filter: opacity(75%);
|
||||
text-align: right;
|
||||
border-color: transparent;
|
||||
background-color: transparent;
|
||||
padding-left: 0px;
|
||||
margin-left: 0px;
|
||||
padding-right: 0px;
|
||||
margin-right: 0px; }
|
||||
|
||||
|
||||
table {
|
||||
max-width: 100%;
|
||||
background-color: transparent;
|
||||
margin-top: 0.5em;
|
||||
margin-bottom: 1.5em;
|
||||
border-collapse: collapse;
|
||||
border-color: #ccc;
|
||||
border-spacing: 0;
|
||||
font-size: 0.9em;
|
||||
}
|
||||
|
||||
table th, table td {
|
||||
padding: 0px 0.5em 0px;
|
||||
}
|
||||
|
||||
table th {
|
||||
background-color: #e8e8e8;
|
||||
font-weight: bold; }
|
||||
|
||||
table th.docinfo-name {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
table tr:hover {
|
||||
background-color: ghostwhite; }
|
||||
|
||||
|
||||
/* rst2html default used to remove borders from tables and images */
|
||||
.borderless, table.borderless td, table.borderless th {
|
||||
border: 0; }
|
||||
|
||||
table.borderless td, table.borderless th {
|
||||
/* Override padding for "table.docutils td" with "! important".
|
||||
The right padding separates the table cells. */
|
||||
padding: 0 0.5em 0 0 !important; }
|
||||
|
||||
.first {
|
||||
/* Override more specific margin styles with "! important". */
|
||||
margin-top: 0 !important; }
|
||||
|
||||
.last, .with-subtitle {
|
||||
margin-bottom: 0 !important; }
|
||||
|
||||
.hidden {
|
||||
display: none; }
|
||||
|
||||
blockquote.epigraph {
|
||||
margin: 2em 5em; }
|
||||
|
||||
dl.docutils dd {
|
||||
margin-bottom: 0.5em; }
|
||||
|
||||
object[type="image/svg+xml"], object[type="application/x-shockwave-flash"] {
|
||||
overflow: hidden; }
|
||||
|
||||
|
||||
div.figure {
|
||||
margin-left: 2em;
|
||||
margin-right: 2em; }
|
||||
|
||||
div.footer, div.header {
|
||||
clear: both;
|
||||
text-align: center;
|
||||
color: #666;
|
||||
font-size: smaller; }
|
||||
|
||||
div.footer {
|
||||
padding-top: 5em;
|
||||
}
|
||||
|
||||
div.line-block {
|
||||
display: block;
|
||||
margin-top: 1em;
|
||||
margin-bottom: 1em; }
|
||||
|
||||
div.line-block div.line-block {
|
||||
margin-top: 0;
|
||||
margin-bottom: 0;
|
||||
margin-left: 1.5em; }
|
||||
|
||||
div.topic {
|
||||
margin: 2em; }
|
||||
|
||||
div.search_results {
|
||||
background-color: antiquewhite;
|
||||
margin: 3em;
|
||||
padding: 1em;
|
||||
border: 1px solid #4d4d4d;
|
||||
}
|
||||
|
||||
div#global-links ul {
|
||||
margin-left: 0;
|
||||
list-style-type: none;
|
||||
}
|
||||
|
||||
div#global-links > simple-boot {
|
||||
margin-left: 3em;
|
||||
}
|
||||
|
||||
hr.docutils {
|
||||
width: 75%; }
|
||||
|
||||
img.align-left, .figure.align-left, object.align-left {
|
||||
clear: left;
|
||||
float: left;
|
||||
margin-right: 1em; }
|
||||
|
||||
img.align-right, .figure.align-right, object.align-right {
|
||||
clear: right;
|
||||
float: right;
|
||||
margin-left: 1em; }
|
||||
|
||||
img.align-center, .figure.align-center, object.align-center {
|
||||
display: block;
|
||||
margin-left: auto;
|
||||
margin-right: auto; }
|
||||
|
||||
.align-left {
|
||||
text-align: left; }
|
||||
|
||||
.align-center {
|
||||
clear: both;
|
||||
text-align: center; }
|
||||
|
||||
.align-right {
|
||||
text-align: right; }
|
||||
|
||||
/* reset inner alignment in figures */
|
||||
div.align-right {
|
||||
text-align: inherit; }
|
||||
|
||||
p.attribution {
|
||||
text-align: right;
|
||||
margin-left: 50%; }
|
||||
|
||||
p.caption {
|
||||
font-style: italic; }
|
||||
|
||||
p.credits {
|
||||
font-style: italic;
|
||||
font-size: smaller; }
|
||||
|
||||
p.label {
|
||||
white-space: nowrap; }
|
||||
|
||||
p.rubric {
|
||||
font-weight: bold;
|
||||
font-size: larger;
|
||||
color: maroon;
|
||||
text-align: center; }
|
||||
|
||||
p.topic-title {
|
||||
font-weight: bold; }
|
||||
|
||||
pre.address {
|
||||
margin-bottom: 0;
|
||||
margin-top: 0;
|
||||
font: inherit; }
|
||||
|
||||
pre.literal-block, pre.doctest-block, pre.math, pre.code {
|
||||
margin-left: 2em;
|
||||
margin-right: 2em; }
|
||||
|
||||
pre.code .ln {
|
||||
color: grey; }
|
||||
|
||||
/* line numbers */
|
||||
pre.code, code {
|
||||
background-color: #eeeeee; }
|
||||
|
||||
pre.code .comment, code .comment {
|
||||
color: #5c6576; }
|
||||
|
||||
pre.code .keyword, code .keyword {
|
||||
color: #3B0D06;
|
||||
font-weight: bold; }
|
||||
|
||||
pre.code .literal.string, code .literal.string {
|
||||
color: #0c5404; }
|
||||
|
||||
pre.code .name.builtin, code .name.builtin {
|
||||
color: #352b84; }
|
||||
|
||||
pre.code .deleted, code .deleted {
|
||||
background-color: #DEB0A1; }
|
||||
|
||||
pre.code .inserted, code .inserted {
|
||||
background-color: #A3D289; }
|
||||
|
||||
span.classifier {
|
||||
font-style: oblique; }
|
||||
|
||||
span.classifier-delimiter {
|
||||
font-weight: bold; }
|
||||
|
||||
span.option {
|
||||
white-space: nowrap; }
|
||||
|
||||
span.problematic {
|
||||
color: #b30000; }
|
||||
|
||||
span.section-subtitle {
|
||||
/* font-size relative to parent (h1..h6 element) */
|
||||
font-size: 80%; }
|
||||
|
||||
span.DecNumber {
|
||||
color: #252dbe; }
|
||||
|
||||
span.BinNumber {
|
||||
color: #252dbe; }
|
||||
|
||||
span.HexNumber {
|
||||
color: #252dbe; }
|
||||
|
||||
span.OctNumber {
|
||||
color: #252dbe; }
|
||||
|
||||
span.FloatNumber {
|
||||
color: #252dbe; }
|
||||
|
||||
span.Identifier {
|
||||
color: #222; }
|
||||
|
||||
span.Keyword {
|
||||
font-weight: 600;
|
||||
color: #5e8f60; }
|
||||
|
||||
span.StringLit {
|
||||
color: #a4255b; }
|
||||
|
||||
span.LongStringLit {
|
||||
color: #a4255b; }
|
||||
|
||||
span.CharLit {
|
||||
color: #a4255b; }
|
||||
|
||||
span.EscapeSequence {
|
||||
color: black; }
|
||||
|
||||
span.Operator {
|
||||
color: black; }
|
||||
|
||||
span.Punctuation {
|
||||
color: black; }
|
||||
|
||||
span.Comment, span.LongComment {
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
color: #484a86; }
|
||||
|
||||
span.RegularExpression {
|
||||
color: darkviolet; }
|
||||
|
||||
span.TagStart {
|
||||
color: darkviolet; }
|
||||
|
||||
span.TagEnd {
|
||||
color: darkviolet; }
|
||||
|
||||
span.Key {
|
||||
color: #252dbe; }
|
||||
|
||||
span.Value {
|
||||
color: #252dbe; }
|
||||
|
||||
span.RawData {
|
||||
color: #a4255b; }
|
||||
|
||||
span.Assembler {
|
||||
color: #252dbe; }
|
||||
|
||||
span.Preprocessor {
|
||||
color: #252dbe; }
|
||||
|
||||
span.Directive {
|
||||
color: #252dbe; }
|
||||
|
||||
span.Command, span.Rule, span.Hyperlink, span.Label, span.Reference,
|
||||
span.Other {
|
||||
color: black; }
|
||||
|
||||
/* Pop type, const, proc, and iterator defs in nim def blocks */
|
||||
dt pre > span.Identifier, dt pre > span.Operator {
|
||||
color: #155da4;
|
||||
font-weight: 700; }
|
||||
|
||||
dt pre > span.Keyword ~ span.Identifier, dt pre > span.Identifier ~ span.Identifier,
|
||||
dt pre > span.Operator ~ span.Identifier, dt pre > span.Other ~ span.Identifier {
|
||||
color: inherit;
|
||||
font-weight: inherit; }
|
||||
|
||||
/* Nim sprite for the footer (taken from main page favicon) */
|
||||
.nim-sprite {
|
||||
display: inline-block;
|
||||
height: 16px;
|
||||
width: 16px;
|
||||
background-position: 0 0;
|
||||
background-size: 16px 16px;
|
||||
-webkit-filter: opacity(50%);
|
||||
background-repeat: no-repeat;
|
||||
background-image: url("data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AAAAAAUAAAAF////AP///wD///8A////AP///wD///8A////AP///wD///8A////AAAAAAIAAABbAAAAlQAAAKIAAACbAAAAmwAAAKIAAACVAAAAWwAAAAL///8A////AP///wD///8A////AAAAABQAAADAAAAAYwAAAA3///8A////AP///wD///8AAAAADQAAAGMAAADAAAAAFP///wD///8A////AP///wAAAACdAAAAOv///wD///8A////AP///wD///8A////AP///wD///8AAAAAOgAAAJ3///8A////AP///wAAAAAnAAAAcP///wAAAAAoAAAASv///wD///8A////AP///wAAAABKAAAAKP///wAAAABwAAAAJ////wD///8AAAAAgQAAABwAAACIAAAAkAAAAJMAAACtAAAAFQAAABUAAACtAAAAkwAAAJAAAACIAAAAHAAAAIH///8A////AAAAAKQAAACrAAAAaP///wD///8AAAAARQAAANIAAADSAAAARf///wD///8AAAAAaAAAAKsAAACk////AAAAADMAAACcAAAAnQAAABj///8A////AP///wAAAAAYAAAAGP///wD///8A////AAAAABgAAACdAAAAnAAAADMAAAB1AAAAwwAAAP8AAADpAAAAsQAAAE4AAAAb////AP///wAAAAAbAAAATgAAALEAAADpAAAA/wAAAMMAAAB1AAAAtwAAAOkAAAD/AAAA/wAAAP8AAADvAAAA3gAAAN4AAADeAAAA3gAAAO8AAAD/AAAA/wAAAP8AAADpAAAAtwAAAGUAAAA/AAAA3wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAADfAAAAPwAAAGX///8A////AAAAAEgAAADtAAAAvwAAAL0AAADGAAAA7wAAAO8AAADGAAAAvQAAAL8AAADtAAAASP///wD///8A////AP///wD///8AAAAAO////wD///8A////AAAAAIcAAACH////AP///wD///8AAAAAO////wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A//8AAP//AAD4HwAA7/cAAN/7AAD//wAAoYUAAJ55AACf+QAAh+EAAAAAAADAAwAA4AcAAP5/AAD//wAA//8AAA==");
|
||||
margin-bottom: -5px; }
|
||||
|
||||
span.pragmadots {
|
||||
/* Position: relative frees us up to make the dots
|
||||
look really nice without fucking up the layout and
|
||||
causing bulging in the parent container */
|
||||
position: relative;
|
||||
/* 1px down looks slightly nicer */
|
||||
top: 1px;
|
||||
padding: 2px;
|
||||
background-color: #e8e8e8;
|
||||
border-radius: 4px;
|
||||
margin: 0 2px;
|
||||
cursor: pointer;
|
||||
font-size: 0.8em;
|
||||
}
|
||||
|
||||
span.pragmadots:hover {
|
||||
background-color: #DBDBDB;
|
||||
}
|
||||
span.pragmawrap {
|
||||
display: none;
|
||||
}
|
||||
|
||||
span.attachedType {
|
||||
display: none;
|
||||
visibility: hidden;
|
||||
}
|
||||
</style>
|
||||
<link rel="stylesheet" type="text/css" href="nimdoc.css">
|
||||
|
||||
<script type="text/javascript" src="dochack.js"></script>
|
||||
|
||||
@@ -798,6 +33,37 @@ function main() {
|
||||
event.target.parentNode.nextElementSibling.style.display = "inline";
|
||||
}
|
||||
}
|
||||
|
||||
const toggleSwitch = document.querySelector('.theme-switch input[type="checkbox"]');
|
||||
function switchTheme(e) {
|
||||
if (e.target.checked) {
|
||||
document.documentElement.setAttribute('data-theme', 'dark');
|
||||
localStorage.setItem('theme', 'dark');
|
||||
} else {
|
||||
document.documentElement.setAttribute('data-theme', 'light');
|
||||
localStorage.setItem('theme', 'light');
|
||||
}
|
||||
}
|
||||
|
||||
toggleSwitch.addEventListener('change', switchTheme, false);
|
||||
|
||||
|
||||
if (window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches) {
|
||||
document.documentElement.setAttribute('data-theme', "dark");
|
||||
toggleSwitch.checked = true;
|
||||
} else if (window.matchMedia && window.matchMedia('(prefers-color-scheme: light)').matches) {
|
||||
document.documentElement.setAttribute('data-theme', "light");
|
||||
toggleSwitch.checked = false;
|
||||
} else {
|
||||
const currentTheme = localStorage.getItem('theme') ? localStorage.getItem('theme') : null;
|
||||
if (currentTheme) {
|
||||
document.documentElement.setAttribute('data-theme', currentTheme);
|
||||
|
||||
if (currentTheme === 'dark') {
|
||||
toggleSwitch.checked = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
@@ -808,6 +74,13 @@ function main() {
|
||||
<h1 class="title">utils</h1>
|
||||
<div class="row">
|
||||
<div class="three columns">
|
||||
<div class="theme-switch-wrapper">
|
||||
<label class="theme-switch" for="checkbox">
|
||||
<input type="checkbox" id="checkbox" />
|
||||
<div class="slider round"></div>
|
||||
</label>
|
||||
<em>Dark Mode</em>
|
||||
</div>
|
||||
<div id="global-links">
|
||||
<ul class="simple">
|
||||
</ul>
|
||||
@@ -928,7 +201,7 @@ constructor.
|
||||
<div class="twelve-columns footer">
|
||||
<span class="nim-sprite"></span>
|
||||
<br/>
|
||||
<small>Made with Nim. Generated: 1970-01-02 03:46:40 UTC</small>
|
||||
<small style="color: var(--hint);">Made with Nim. Generated: 1970-01-02 03:46:40 UTC</small>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -18,772 +18,7 @@
|
||||
|
||||
<!-- CSS -->
|
||||
<title>testproject</title>
|
||||
<style type="text/css" >
|
||||
/*
|
||||
Stylesheet for use with Docutils/rst2html.
|
||||
|
||||
See http://docutils.sf.net/docs/howto/html-stylesheets.html for how to
|
||||
customize this style sheet.
|
||||
|
||||
Modified from Chad Skeeters' rst2html-style
|
||||
https://bitbucket.org/cskeeters/rst2html-style/
|
||||
|
||||
Modified by Boyd Greenfield and narimiran
|
||||
*/
|
||||
|
||||
html {
|
||||
font-size: 100%;
|
||||
-webkit-text-size-adjust: 100%;
|
||||
-ms-text-size-adjust: 100%; }
|
||||
|
||||
body {
|
||||
font-family: "Lato", "Helvetica Neue", "HelveticaNeue", Helvetica, Arial, sans-serif;
|
||||
font-weight: 400;
|
||||
font-size: 1.125em;
|
||||
line-height: 1.5;
|
||||
color: #222;
|
||||
background-color: #FCFCFC; }
|
||||
|
||||
/* Skeleton grid */
|
||||
.container {
|
||||
position: relative;
|
||||
width: 100%;
|
||||
max-width: 1050px;
|
||||
margin: 0 auto;
|
||||
padding: 0;
|
||||
box-sizing: border-box; }
|
||||
|
||||
.column,
|
||||
.columns {
|
||||
width: 100%;
|
||||
float: left;
|
||||
box-sizing: border-box;
|
||||
margin-left: 1%;
|
||||
}
|
||||
|
||||
.column:first-child,
|
||||
.columns:first-child {
|
||||
margin-left: 0; }
|
||||
|
||||
.three.columns {
|
||||
width: 19%; }
|
||||
|
||||
.nine.columns {
|
||||
width: 80.0%; }
|
||||
|
||||
.twelve.columns {
|
||||
width: 100%;
|
||||
margin-left: 0; }
|
||||
|
||||
@media screen and (max-width: 860px) {
|
||||
.three.columns {
|
||||
display: none;
|
||||
}
|
||||
.nine.columns {
|
||||
width: 98.0%;
|
||||
}
|
||||
body {
|
||||
font-size: 1em;
|
||||
line-height: 1.35;
|
||||
}
|
||||
}
|
||||
|
||||
cite {
|
||||
font-style: italic !important; }
|
||||
|
||||
|
||||
/* Nim search input */
|
||||
div#searchInputDiv {
|
||||
margin-bottom: 1em;
|
||||
}
|
||||
input#searchInput {
|
||||
width: 80%;
|
||||
}
|
||||
|
||||
/*
|
||||
* Some custom formatting for input forms.
|
||||
* This also fixes input form colors on Firefox with a dark system theme on Linux.
|
||||
*/
|
||||
input {
|
||||
-moz-appearance: none;
|
||||
color: #333;
|
||||
background-color: #f8f8f8;
|
||||
border: 1px solid #aaa;
|
||||
font-family: "Lato", "Helvetica Neue", "HelveticaNeue", Helvetica, Arial, sans-serif;
|
||||
font-size: 0.9em;
|
||||
padding: 6px;
|
||||
}
|
||||
input:focus {
|
||||
border: 1px solid #1fa0eb;
|
||||
box-shadow: 0 0 2px #1fa0eb;
|
||||
}
|
||||
|
||||
/* Docgen styles */
|
||||
/* Links */
|
||||
a {
|
||||
color: #07b;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
a span.Identifier {
|
||||
text-decoration: underline;
|
||||
text-decoration-color: #aab;
|
||||
}
|
||||
|
||||
a.reference-toplevel {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
a.toc-backref {
|
||||
text-decoration: none;
|
||||
color: #222; }
|
||||
|
||||
a.link-seesrc {
|
||||
color: #607c9f;
|
||||
font-size: 0.9em;
|
||||
font-style: italic; }
|
||||
|
||||
a:hover,
|
||||
a:focus {
|
||||
color: #607c9f;
|
||||
text-decoration: underline; }
|
||||
|
||||
a:hover span.Identifier {
|
||||
color: #607c9f;
|
||||
}
|
||||
|
||||
|
||||
sub,
|
||||
sup {
|
||||
position: relative;
|
||||
font-size: 75%;
|
||||
line-height: 0;
|
||||
vertical-align: baseline; }
|
||||
|
||||
sup {
|
||||
top: -0.5em; }
|
||||
|
||||
sub {
|
||||
bottom: -0.25em; }
|
||||
|
||||
img {
|
||||
width: auto;
|
||||
height: auto;
|
||||
max-width: 100%;
|
||||
vertical-align: middle;
|
||||
border: 0;
|
||||
-ms-interpolation-mode: bicubic; }
|
||||
|
||||
@media print {
|
||||
* {
|
||||
color: black !important;
|
||||
text-shadow: none !important;
|
||||
background: transparent !important;
|
||||
box-shadow: none !important; }
|
||||
|
||||
a,
|
||||
a:visited {
|
||||
text-decoration: underline; }
|
||||
|
||||
a[href]:after {
|
||||
content: " (" attr(href) ")"; }
|
||||
|
||||
abbr[title]:after {
|
||||
content: " (" attr(title) ")"; }
|
||||
|
||||
.ir a:after,
|
||||
a[href^="javascript:"]:after,
|
||||
a[href^="#"]:after {
|
||||
content: ""; }
|
||||
|
||||
pre,
|
||||
blockquote {
|
||||
border: 1px solid #999;
|
||||
page-break-inside: avoid; }
|
||||
|
||||
thead {
|
||||
display: table-header-group; }
|
||||
|
||||
tr,
|
||||
img {
|
||||
page-break-inside: avoid; }
|
||||
|
||||
img {
|
||||
max-width: 100% !important; }
|
||||
|
||||
@page {
|
||||
margin: 0.5cm; }
|
||||
|
||||
h1 {
|
||||
page-break-before: always; }
|
||||
|
||||
h1.title {
|
||||
page-break-before: avoid; }
|
||||
|
||||
p,
|
||||
h2,
|
||||
h3 {
|
||||
orphans: 3;
|
||||
widows: 3; }
|
||||
|
||||
h2,
|
||||
h3 {
|
||||
page-break-after: avoid; }
|
||||
}
|
||||
|
||||
|
||||
p {
|
||||
margin-top: 0.5em;
|
||||
margin-bottom: 0.5em;
|
||||
}
|
||||
|
||||
small {
|
||||
font-size: 85%; }
|
||||
|
||||
strong {
|
||||
font-weight: 600;
|
||||
font-size: 0.95em;
|
||||
color: #3c3c3c;
|
||||
}
|
||||
|
||||
em {
|
||||
font-style: italic; }
|
||||
|
||||
h1 {
|
||||
font-size: 1.8em;
|
||||
font-weight: 400;
|
||||
padding-bottom: .25em;
|
||||
border-bottom: 1px solid #aaa;
|
||||
margin-top: 2.5em;
|
||||
margin-bottom: 1em;
|
||||
line-height: 1.2em; }
|
||||
|
||||
h1.title {
|
||||
padding-bottom: 1em;
|
||||
border-bottom: 0px;
|
||||
font-size: 2.5em;
|
||||
text-align: center;
|
||||
font-weight: 900;
|
||||
margin-top: 0.75em;
|
||||
margin-bottom: 0em;
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: 1.3em;
|
||||
margin-top: 2em; }
|
||||
|
||||
h2.subtitle {
|
||||
text-align: center; }
|
||||
|
||||
h3 {
|
||||
font-size: 1.125em;
|
||||
font-style: italic;
|
||||
margin-top: 1.5em; }
|
||||
|
||||
h4 {
|
||||
font-size: 1.125em;
|
||||
margin-top: 1em; }
|
||||
|
||||
h5 {
|
||||
font-size: 1.125em;
|
||||
margin-top: 0.75em; }
|
||||
|
||||
h6 {
|
||||
font-size: 1.1em; }
|
||||
|
||||
|
||||
ul,
|
||||
ol {
|
||||
padding: 0;
|
||||
margin-top: 0.5em;
|
||||
margin-left: 0.75em; }
|
||||
|
||||
ul ul,
|
||||
ul ol,
|
||||
ol ol,
|
||||
ol ul {
|
||||
margin-bottom: 0;
|
||||
margin-left: 1.25em; }
|
||||
|
||||
li {
|
||||
list-style-type: circle;
|
||||
}
|
||||
|
||||
ul.simple-boot li {
|
||||
list-style-type: none;
|
||||
margin-left: 0em;
|
||||
margin-bottom: 0.5em;
|
||||
}
|
||||
|
||||
ol.simple > li, ul.simple > li {
|
||||
margin-bottom: 0.25em;
|
||||
margin-left: 0.4em }
|
||||
|
||||
ul.simple.simple-toc > li {
|
||||
margin-top: 1em;
|
||||
}
|
||||
|
||||
ul.simple-toc {
|
||||
list-style: none;
|
||||
font-size: 0.9em;
|
||||
margin-left: -0.3em;
|
||||
margin-top: 1em; }
|
||||
|
||||
ul.simple-toc > li {
|
||||
list-style-type: none;
|
||||
}
|
||||
|
||||
ul.simple-toc-section {
|
||||
list-style-type: circle;
|
||||
margin-left: 1em;
|
||||
color: #6c9aae; }
|
||||
|
||||
|
||||
ol.arabic {
|
||||
list-style: decimal; }
|
||||
|
||||
ol.loweralpha {
|
||||
list-style: lower-alpha; }
|
||||
|
||||
ol.upperalpha {
|
||||
list-style: upper-alpha; }
|
||||
|
||||
ol.lowerroman {
|
||||
list-style: lower-roman; }
|
||||
|
||||
ol.upperroman {
|
||||
list-style: upper-roman; }
|
||||
|
||||
ul.auto-toc {
|
||||
list-style-type: none; }
|
||||
|
||||
|
||||
dl {
|
||||
margin-bottom: 1.5em; }
|
||||
|
||||
dt {
|
||||
margin-bottom: -0.5em;
|
||||
margin-left: 0.0em; }
|
||||
|
||||
dd {
|
||||
margin-left: 2.0em;
|
||||
margin-bottom: 3.0em;
|
||||
margin-top: 0.5em; }
|
||||
|
||||
|
||||
hr {
|
||||
margin: 2em 0;
|
||||
border: 0;
|
||||
border-top: 1px solid #aaa; }
|
||||
|
||||
blockquote {
|
||||
font-size: 0.9em;
|
||||
font-style: italic;
|
||||
padding-left: 0.5em;
|
||||
margin-left: 0;
|
||||
border-left: 5px solid #bbc;
|
||||
}
|
||||
|
||||
.pre {
|
||||
font-family: "Source Code Pro", Monaco, Menlo, Consolas, "Courier New", monospace;
|
||||
font-weight: 500;
|
||||
font-size: 0.85em;
|
||||
background-color: #f0f3ff;
|
||||
padding-left: 3px;
|
||||
padding-right: 3px;
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
pre {
|
||||
font-family: "Source Code Pro", Monaco, Menlo, Consolas, "Courier New", monospace;
|
||||
color: #222;
|
||||
font-weight: 500;
|
||||
display: inline-block;
|
||||
box-sizing: border-box;
|
||||
min-width: 100%;
|
||||
padding: 0.5em;
|
||||
margin-top: 0.5em;
|
||||
margin-bottom: 0.5em;
|
||||
font-size: 0.85em;
|
||||
white-space: pre !important;
|
||||
overflow-y: hidden;
|
||||
overflow-x: visible;
|
||||
background-color: ghostwhite;
|
||||
border: 1px solid #dde;
|
||||
-webkit-border-radius: 6px;
|
||||
-moz-border-radius: 6px;
|
||||
border-radius: 6px; }
|
||||
|
||||
.pre-scrollable {
|
||||
max-height: 340px;
|
||||
overflow-y: scroll; }
|
||||
|
||||
|
||||
/* Nim line-numbered tables */
|
||||
.line-nums-table {
|
||||
width: 100%;
|
||||
table-layout: fixed; }
|
||||
|
||||
table.line-nums-table {
|
||||
border-radius: 4px;
|
||||
border: 1px solid #cccccc;
|
||||
background-color: ghostwhite;
|
||||
border-collapse: separate;
|
||||
margin-top: 15px;
|
||||
margin-bottom: 25px; }
|
||||
|
||||
.line-nums-table tbody {
|
||||
border: none; }
|
||||
|
||||
.line-nums-table td pre {
|
||||
border: none;
|
||||
background-color: transparent; }
|
||||
|
||||
.line-nums-table td.blob-line-nums {
|
||||
width: 28px; }
|
||||
|
||||
.line-nums-table td.blob-line-nums pre {
|
||||
color: #b0b0b0;
|
||||
-webkit-filter: opacity(75%);
|
||||
text-align: right;
|
||||
border-color: transparent;
|
||||
background-color: transparent;
|
||||
padding-left: 0px;
|
||||
margin-left: 0px;
|
||||
padding-right: 0px;
|
||||
margin-right: 0px; }
|
||||
|
||||
|
||||
table {
|
||||
max-width: 100%;
|
||||
background-color: transparent;
|
||||
margin-top: 0.5em;
|
||||
margin-bottom: 1.5em;
|
||||
border-collapse: collapse;
|
||||
border-color: #ccc;
|
||||
border-spacing: 0;
|
||||
font-size: 0.9em;
|
||||
}
|
||||
|
||||
table th, table td {
|
||||
padding: 0px 0.5em 0px;
|
||||
}
|
||||
|
||||
table th {
|
||||
background-color: #e8e8e8;
|
||||
font-weight: bold; }
|
||||
|
||||
table th.docinfo-name {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
table tr:hover {
|
||||
background-color: ghostwhite; }
|
||||
|
||||
|
||||
/* rst2html default used to remove borders from tables and images */
|
||||
.borderless, table.borderless td, table.borderless th {
|
||||
border: 0; }
|
||||
|
||||
table.borderless td, table.borderless th {
|
||||
/* Override padding for "table.docutils td" with "! important".
|
||||
The right padding separates the table cells. */
|
||||
padding: 0 0.5em 0 0 !important; }
|
||||
|
||||
.first {
|
||||
/* Override more specific margin styles with "! important". */
|
||||
margin-top: 0 !important; }
|
||||
|
||||
.last, .with-subtitle {
|
||||
margin-bottom: 0 !important; }
|
||||
|
||||
.hidden {
|
||||
display: none; }
|
||||
|
||||
blockquote.epigraph {
|
||||
margin: 2em 5em; }
|
||||
|
||||
dl.docutils dd {
|
||||
margin-bottom: 0.5em; }
|
||||
|
||||
object[type="image/svg+xml"], object[type="application/x-shockwave-flash"] {
|
||||
overflow: hidden; }
|
||||
|
||||
|
||||
div.figure {
|
||||
margin-left: 2em;
|
||||
margin-right: 2em; }
|
||||
|
||||
div.footer, div.header {
|
||||
clear: both;
|
||||
text-align: center;
|
||||
color: #666;
|
||||
font-size: smaller; }
|
||||
|
||||
div.footer {
|
||||
padding-top: 5em;
|
||||
}
|
||||
|
||||
div.line-block {
|
||||
display: block;
|
||||
margin-top: 1em;
|
||||
margin-bottom: 1em; }
|
||||
|
||||
div.line-block div.line-block {
|
||||
margin-top: 0;
|
||||
margin-bottom: 0;
|
||||
margin-left: 1.5em; }
|
||||
|
||||
div.topic {
|
||||
margin: 2em; }
|
||||
|
||||
div.search_results {
|
||||
background-color: antiquewhite;
|
||||
margin: 3em;
|
||||
padding: 1em;
|
||||
border: 1px solid #4d4d4d;
|
||||
}
|
||||
|
||||
div#global-links ul {
|
||||
margin-left: 0;
|
||||
list-style-type: none;
|
||||
}
|
||||
|
||||
div#global-links > simple-boot {
|
||||
margin-left: 3em;
|
||||
}
|
||||
|
||||
hr.docutils {
|
||||
width: 75%; }
|
||||
|
||||
img.align-left, .figure.align-left, object.align-left {
|
||||
clear: left;
|
||||
float: left;
|
||||
margin-right: 1em; }
|
||||
|
||||
img.align-right, .figure.align-right, object.align-right {
|
||||
clear: right;
|
||||
float: right;
|
||||
margin-left: 1em; }
|
||||
|
||||
img.align-center, .figure.align-center, object.align-center {
|
||||
display: block;
|
||||
margin-left: auto;
|
||||
margin-right: auto; }
|
||||
|
||||
.align-left {
|
||||
text-align: left; }
|
||||
|
||||
.align-center {
|
||||
clear: both;
|
||||
text-align: center; }
|
||||
|
||||
.align-right {
|
||||
text-align: right; }
|
||||
|
||||
/* reset inner alignment in figures */
|
||||
div.align-right {
|
||||
text-align: inherit; }
|
||||
|
||||
p.attribution {
|
||||
text-align: right;
|
||||
margin-left: 50%; }
|
||||
|
||||
p.caption {
|
||||
font-style: italic; }
|
||||
|
||||
p.credits {
|
||||
font-style: italic;
|
||||
font-size: smaller; }
|
||||
|
||||
p.label {
|
||||
white-space: nowrap; }
|
||||
|
||||
p.rubric {
|
||||
font-weight: bold;
|
||||
font-size: larger;
|
||||
color: maroon;
|
||||
text-align: center; }
|
||||
|
||||
p.topic-title {
|
||||
font-weight: bold; }
|
||||
|
||||
pre.address {
|
||||
margin-bottom: 0;
|
||||
margin-top: 0;
|
||||
font: inherit; }
|
||||
|
||||
pre.literal-block, pre.doctest-block, pre.math, pre.code {
|
||||
margin-left: 2em;
|
||||
margin-right: 2em; }
|
||||
|
||||
pre.code .ln {
|
||||
color: grey; }
|
||||
|
||||
/* line numbers */
|
||||
pre.code, code {
|
||||
background-color: #eeeeee; }
|
||||
|
||||
pre.code .comment, code .comment {
|
||||
color: #5c6576; }
|
||||
|
||||
pre.code .keyword, code .keyword {
|
||||
color: #3B0D06;
|
||||
font-weight: bold; }
|
||||
|
||||
pre.code .literal.string, code .literal.string {
|
||||
color: #0c5404; }
|
||||
|
||||
pre.code .name.builtin, code .name.builtin {
|
||||
color: #352b84; }
|
||||
|
||||
pre.code .deleted, code .deleted {
|
||||
background-color: #DEB0A1; }
|
||||
|
||||
pre.code .inserted, code .inserted {
|
||||
background-color: #A3D289; }
|
||||
|
||||
span.classifier {
|
||||
font-style: oblique; }
|
||||
|
||||
span.classifier-delimiter {
|
||||
font-weight: bold; }
|
||||
|
||||
span.option {
|
||||
white-space: nowrap; }
|
||||
|
||||
span.problematic {
|
||||
color: #b30000; }
|
||||
|
||||
span.section-subtitle {
|
||||
/* font-size relative to parent (h1..h6 element) */
|
||||
font-size: 80%; }
|
||||
|
||||
span.DecNumber {
|
||||
color: #252dbe; }
|
||||
|
||||
span.BinNumber {
|
||||
color: #252dbe; }
|
||||
|
||||
span.HexNumber {
|
||||
color: #252dbe; }
|
||||
|
||||
span.OctNumber {
|
||||
color: #252dbe; }
|
||||
|
||||
span.FloatNumber {
|
||||
color: #252dbe; }
|
||||
|
||||
span.Identifier {
|
||||
color: #222; }
|
||||
|
||||
span.Keyword {
|
||||
font-weight: 600;
|
||||
color: #5e8f60; }
|
||||
|
||||
span.StringLit {
|
||||
color: #a4255b; }
|
||||
|
||||
span.LongStringLit {
|
||||
color: #a4255b; }
|
||||
|
||||
span.CharLit {
|
||||
color: #a4255b; }
|
||||
|
||||
span.EscapeSequence {
|
||||
color: black; }
|
||||
|
||||
span.Operator {
|
||||
color: black; }
|
||||
|
||||
span.Punctuation {
|
||||
color: black; }
|
||||
|
||||
span.Comment, span.LongComment {
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
color: #484a86; }
|
||||
|
||||
span.RegularExpression {
|
||||
color: darkviolet; }
|
||||
|
||||
span.TagStart {
|
||||
color: darkviolet; }
|
||||
|
||||
span.TagEnd {
|
||||
color: darkviolet; }
|
||||
|
||||
span.Key {
|
||||
color: #252dbe; }
|
||||
|
||||
span.Value {
|
||||
color: #252dbe; }
|
||||
|
||||
span.RawData {
|
||||
color: #a4255b; }
|
||||
|
||||
span.Assembler {
|
||||
color: #252dbe; }
|
||||
|
||||
span.Preprocessor {
|
||||
color: #252dbe; }
|
||||
|
||||
span.Directive {
|
||||
color: #252dbe; }
|
||||
|
||||
span.Command, span.Rule, span.Hyperlink, span.Label, span.Reference,
|
||||
span.Other {
|
||||
color: black; }
|
||||
|
||||
/* Pop type, const, proc, and iterator defs in nim def blocks */
|
||||
dt pre > span.Identifier, dt pre > span.Operator {
|
||||
color: #155da4;
|
||||
font-weight: 700; }
|
||||
|
||||
dt pre > span.Keyword ~ span.Identifier, dt pre > span.Identifier ~ span.Identifier,
|
||||
dt pre > span.Operator ~ span.Identifier, dt pre > span.Other ~ span.Identifier {
|
||||
color: inherit;
|
||||
font-weight: inherit; }
|
||||
|
||||
/* Nim sprite for the footer (taken from main page favicon) */
|
||||
.nim-sprite {
|
||||
display: inline-block;
|
||||
height: 16px;
|
||||
width: 16px;
|
||||
background-position: 0 0;
|
||||
background-size: 16px 16px;
|
||||
-webkit-filter: opacity(50%);
|
||||
background-repeat: no-repeat;
|
||||
background-image: url("data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AAAAAAUAAAAF////AP///wD///8A////AP///wD///8A////AP///wD///8A////AAAAAAIAAABbAAAAlQAAAKIAAACbAAAAmwAAAKIAAACVAAAAWwAAAAL///8A////AP///wD///8A////AAAAABQAAADAAAAAYwAAAA3///8A////AP///wD///8AAAAADQAAAGMAAADAAAAAFP///wD///8A////AP///wAAAACdAAAAOv///wD///8A////AP///wD///8A////AP///wD///8AAAAAOgAAAJ3///8A////AP///wAAAAAnAAAAcP///wAAAAAoAAAASv///wD///8A////AP///wAAAABKAAAAKP///wAAAABwAAAAJ////wD///8AAAAAgQAAABwAAACIAAAAkAAAAJMAAACtAAAAFQAAABUAAACtAAAAkwAAAJAAAACIAAAAHAAAAIH///8A////AAAAAKQAAACrAAAAaP///wD///8AAAAARQAAANIAAADSAAAARf///wD///8AAAAAaAAAAKsAAACk////AAAAADMAAACcAAAAnQAAABj///8A////AP///wAAAAAYAAAAGP///wD///8A////AAAAABgAAACdAAAAnAAAADMAAAB1AAAAwwAAAP8AAADpAAAAsQAAAE4AAAAb////AP///wAAAAAbAAAATgAAALEAAADpAAAA/wAAAMMAAAB1AAAAtwAAAOkAAAD/AAAA/wAAAP8AAADvAAAA3gAAAN4AAADeAAAA3gAAAO8AAAD/AAAA/wAAAP8AAADpAAAAtwAAAGUAAAA/AAAA3wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAADfAAAAPwAAAGX///8A////AAAAAEgAAADtAAAAvwAAAL0AAADGAAAA7wAAAO8AAADGAAAAvQAAAL8AAADtAAAASP///wD///8A////AP///wD///8AAAAAO////wD///8A////AAAAAIcAAACH////AP///wD///8AAAAAO////wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A//8AAP//AAD4HwAA7/cAAN/7AAD//wAAoYUAAJ55AACf+QAAh+EAAAAAAADAAwAA4AcAAP5/AAD//wAA//8AAA==");
|
||||
margin-bottom: -5px; }
|
||||
|
||||
span.pragmadots {
|
||||
/* Position: relative frees us up to make the dots
|
||||
look really nice without fucking up the layout and
|
||||
causing bulging in the parent container */
|
||||
position: relative;
|
||||
/* 1px down looks slightly nicer */
|
||||
top: 1px;
|
||||
padding: 2px;
|
||||
background-color: #e8e8e8;
|
||||
border-radius: 4px;
|
||||
margin: 0 2px;
|
||||
cursor: pointer;
|
||||
font-size: 0.8em;
|
||||
}
|
||||
|
||||
span.pragmadots:hover {
|
||||
background-color: #DBDBDB;
|
||||
}
|
||||
span.pragmawrap {
|
||||
display: none;
|
||||
}
|
||||
|
||||
span.attachedType {
|
||||
display: none;
|
||||
visibility: hidden;
|
||||
}
|
||||
</style>
|
||||
<link rel="stylesheet" type="text/css" href="nimdoc.css">
|
||||
|
||||
<script type="text/javascript" src="dochack.js"></script>
|
||||
|
||||
@@ -798,6 +33,37 @@ function main() {
|
||||
event.target.parentNode.nextElementSibling.style.display = "inline";
|
||||
}
|
||||
}
|
||||
|
||||
const toggleSwitch = document.querySelector('.theme-switch input[type="checkbox"]');
|
||||
function switchTheme(e) {
|
||||
if (e.target.checked) {
|
||||
document.documentElement.setAttribute('data-theme', 'dark');
|
||||
localStorage.setItem('theme', 'dark');
|
||||
} else {
|
||||
document.documentElement.setAttribute('data-theme', 'light');
|
||||
localStorage.setItem('theme', 'light');
|
||||
}
|
||||
}
|
||||
|
||||
toggleSwitch.addEventListener('change', switchTheme, false);
|
||||
|
||||
|
||||
if (window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches) {
|
||||
document.documentElement.setAttribute('data-theme', "dark");
|
||||
toggleSwitch.checked = true;
|
||||
} else if (window.matchMedia && window.matchMedia('(prefers-color-scheme: light)').matches) {
|
||||
document.documentElement.setAttribute('data-theme', "light");
|
||||
toggleSwitch.checked = false;
|
||||
} else {
|
||||
const currentTheme = localStorage.getItem('theme') ? localStorage.getItem('theme') : null;
|
||||
if (currentTheme) {
|
||||
document.documentElement.setAttribute('data-theme', currentTheme);
|
||||
|
||||
if (currentTheme === 'dark') {
|
||||
toggleSwitch.checked = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
@@ -808,6 +74,13 @@ function main() {
|
||||
<h1 class="title">testproject</h1>
|
||||
<div class="row">
|
||||
<div class="three columns">
|
||||
<div class="theme-switch-wrapper">
|
||||
<label class="theme-switch" for="checkbox">
|
||||
<input type="checkbox" id="checkbox" />
|
||||
<div class="slider round"></div>
|
||||
</label>
|
||||
<em>Dark Mode</em>
|
||||
</div>
|
||||
<div id="global-links">
|
||||
<ul class="simple">
|
||||
</ul>
|
||||
@@ -1072,7 +345,7 @@ This does nothing
|
||||
<div class="twelve-columns footer">
|
||||
<span class="nim-sprite"></span>
|
||||
<br/>
|
||||
<small>Made with Nim. Generated: 1970-01-02 03:46:40 UTC</small>
|
||||
<small style="color: var(--hint);">Made with Nim. Generated: 1970-01-02 03:46:40 UTC</small>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -18,772 +18,7 @@
|
||||
|
||||
<!-- CSS -->
|
||||
<title>Index</title>
|
||||
<style type="text/css" >
|
||||
/*
|
||||
Stylesheet for use with Docutils/rst2html.
|
||||
|
||||
See http://docutils.sf.net/docs/howto/html-stylesheets.html for how to
|
||||
customize this style sheet.
|
||||
|
||||
Modified from Chad Skeeters' rst2html-style
|
||||
https://bitbucket.org/cskeeters/rst2html-style/
|
||||
|
||||
Modified by Boyd Greenfield and narimiran
|
||||
*/
|
||||
|
||||
html {
|
||||
font-size: 100%;
|
||||
-webkit-text-size-adjust: 100%;
|
||||
-ms-text-size-adjust: 100%; }
|
||||
|
||||
body {
|
||||
font-family: "Lato", "Helvetica Neue", "HelveticaNeue", Helvetica, Arial, sans-serif;
|
||||
font-weight: 400;
|
||||
font-size: 1.125em;
|
||||
line-height: 1.5;
|
||||
color: #222;
|
||||
background-color: #FCFCFC; }
|
||||
|
||||
/* Skeleton grid */
|
||||
.container {
|
||||
position: relative;
|
||||
width: 100%;
|
||||
max-width: 1050px;
|
||||
margin: 0 auto;
|
||||
padding: 0;
|
||||
box-sizing: border-box; }
|
||||
|
||||
.column,
|
||||
.columns {
|
||||
width: 100%;
|
||||
float: left;
|
||||
box-sizing: border-box;
|
||||
margin-left: 1%;
|
||||
}
|
||||
|
||||
.column:first-child,
|
||||
.columns:first-child {
|
||||
margin-left: 0; }
|
||||
|
||||
.three.columns {
|
||||
width: 19%; }
|
||||
|
||||
.nine.columns {
|
||||
width: 80.0%; }
|
||||
|
||||
.twelve.columns {
|
||||
width: 100%;
|
||||
margin-left: 0; }
|
||||
|
||||
@media screen and (max-width: 860px) {
|
||||
.three.columns {
|
||||
display: none;
|
||||
}
|
||||
.nine.columns {
|
||||
width: 98.0%;
|
||||
}
|
||||
body {
|
||||
font-size: 1em;
|
||||
line-height: 1.35;
|
||||
}
|
||||
}
|
||||
|
||||
cite {
|
||||
font-style: italic !important; }
|
||||
|
||||
|
||||
/* Nim search input */
|
||||
div#searchInputDiv {
|
||||
margin-bottom: 1em;
|
||||
}
|
||||
input#searchInput {
|
||||
width: 80%;
|
||||
}
|
||||
|
||||
/*
|
||||
* Some custom formatting for input forms.
|
||||
* This also fixes input form colors on Firefox with a dark system theme on Linux.
|
||||
*/
|
||||
input {
|
||||
-moz-appearance: none;
|
||||
color: #333;
|
||||
background-color: #f8f8f8;
|
||||
border: 1px solid #aaa;
|
||||
font-family: "Lato", "Helvetica Neue", "HelveticaNeue", Helvetica, Arial, sans-serif;
|
||||
font-size: 0.9em;
|
||||
padding: 6px;
|
||||
}
|
||||
input:focus {
|
||||
border: 1px solid #1fa0eb;
|
||||
box-shadow: 0 0 2px #1fa0eb;
|
||||
}
|
||||
|
||||
/* Docgen styles */
|
||||
/* Links */
|
||||
a {
|
||||
color: #07b;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
a span.Identifier {
|
||||
text-decoration: underline;
|
||||
text-decoration-color: #aab;
|
||||
}
|
||||
|
||||
a.reference-toplevel {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
a.toc-backref {
|
||||
text-decoration: none;
|
||||
color: #222; }
|
||||
|
||||
a.link-seesrc {
|
||||
color: #607c9f;
|
||||
font-size: 0.9em;
|
||||
font-style: italic; }
|
||||
|
||||
a:hover,
|
||||
a:focus {
|
||||
color: #607c9f;
|
||||
text-decoration: underline; }
|
||||
|
||||
a:hover span.Identifier {
|
||||
color: #607c9f;
|
||||
}
|
||||
|
||||
|
||||
sub,
|
||||
sup {
|
||||
position: relative;
|
||||
font-size: 75%;
|
||||
line-height: 0;
|
||||
vertical-align: baseline; }
|
||||
|
||||
sup {
|
||||
top: -0.5em; }
|
||||
|
||||
sub {
|
||||
bottom: -0.25em; }
|
||||
|
||||
img {
|
||||
width: auto;
|
||||
height: auto;
|
||||
max-width: 100%;
|
||||
vertical-align: middle;
|
||||
border: 0;
|
||||
-ms-interpolation-mode: bicubic; }
|
||||
|
||||
@media print {
|
||||
* {
|
||||
color: black !important;
|
||||
text-shadow: none !important;
|
||||
background: transparent !important;
|
||||
box-shadow: none !important; }
|
||||
|
||||
a,
|
||||
a:visited {
|
||||
text-decoration: underline; }
|
||||
|
||||
a[href]:after {
|
||||
content: " (" attr(href) ")"; }
|
||||
|
||||
abbr[title]:after {
|
||||
content: " (" attr(title) ")"; }
|
||||
|
||||
.ir a:after,
|
||||
a[href^="javascript:"]:after,
|
||||
a[href^="#"]:after {
|
||||
content: ""; }
|
||||
|
||||
pre,
|
||||
blockquote {
|
||||
border: 1px solid #999;
|
||||
page-break-inside: avoid; }
|
||||
|
||||
thead {
|
||||
display: table-header-group; }
|
||||
|
||||
tr,
|
||||
img {
|
||||
page-break-inside: avoid; }
|
||||
|
||||
img {
|
||||
max-width: 100% !important; }
|
||||
|
||||
@page {
|
||||
margin: 0.5cm; }
|
||||
|
||||
h1 {
|
||||
page-break-before: always; }
|
||||
|
||||
h1.title {
|
||||
page-break-before: avoid; }
|
||||
|
||||
p,
|
||||
h2,
|
||||
h3 {
|
||||
orphans: 3;
|
||||
widows: 3; }
|
||||
|
||||
h2,
|
||||
h3 {
|
||||
page-break-after: avoid; }
|
||||
}
|
||||
|
||||
|
||||
p {
|
||||
margin-top: 0.5em;
|
||||
margin-bottom: 0.5em;
|
||||
}
|
||||
|
||||
small {
|
||||
font-size: 85%; }
|
||||
|
||||
strong {
|
||||
font-weight: 600;
|
||||
font-size: 0.95em;
|
||||
color: #3c3c3c;
|
||||
}
|
||||
|
||||
em {
|
||||
font-style: italic; }
|
||||
|
||||
h1 {
|
||||
font-size: 1.8em;
|
||||
font-weight: 400;
|
||||
padding-bottom: .25em;
|
||||
border-bottom: 1px solid #aaa;
|
||||
margin-top: 2.5em;
|
||||
margin-bottom: 1em;
|
||||
line-height: 1.2em; }
|
||||
|
||||
h1.title {
|
||||
padding-bottom: 1em;
|
||||
border-bottom: 0px;
|
||||
font-size: 2.5em;
|
||||
text-align: center;
|
||||
font-weight: 900;
|
||||
margin-top: 0.75em;
|
||||
margin-bottom: 0em;
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: 1.3em;
|
||||
margin-top: 2em; }
|
||||
|
||||
h2.subtitle {
|
||||
text-align: center; }
|
||||
|
||||
h3 {
|
||||
font-size: 1.125em;
|
||||
font-style: italic;
|
||||
margin-top: 1.5em; }
|
||||
|
||||
h4 {
|
||||
font-size: 1.125em;
|
||||
margin-top: 1em; }
|
||||
|
||||
h5 {
|
||||
font-size: 1.125em;
|
||||
margin-top: 0.75em; }
|
||||
|
||||
h6 {
|
||||
font-size: 1.1em; }
|
||||
|
||||
|
||||
ul,
|
||||
ol {
|
||||
padding: 0;
|
||||
margin-top: 0.5em;
|
||||
margin-left: 0.75em; }
|
||||
|
||||
ul ul,
|
||||
ul ol,
|
||||
ol ol,
|
||||
ol ul {
|
||||
margin-bottom: 0;
|
||||
margin-left: 1.25em; }
|
||||
|
||||
li {
|
||||
list-style-type: circle;
|
||||
}
|
||||
|
||||
ul.simple-boot li {
|
||||
list-style-type: none;
|
||||
margin-left: 0em;
|
||||
margin-bottom: 0.5em;
|
||||
}
|
||||
|
||||
ol.simple > li, ul.simple > li {
|
||||
margin-bottom: 0.25em;
|
||||
margin-left: 0.4em }
|
||||
|
||||
ul.simple.simple-toc > li {
|
||||
margin-top: 1em;
|
||||
}
|
||||
|
||||
ul.simple-toc {
|
||||
list-style: none;
|
||||
font-size: 0.9em;
|
||||
margin-left: -0.3em;
|
||||
margin-top: 1em; }
|
||||
|
||||
ul.simple-toc > li {
|
||||
list-style-type: none;
|
||||
}
|
||||
|
||||
ul.simple-toc-section {
|
||||
list-style-type: circle;
|
||||
margin-left: 1em;
|
||||
color: #6c9aae; }
|
||||
|
||||
|
||||
ol.arabic {
|
||||
list-style: decimal; }
|
||||
|
||||
ol.loweralpha {
|
||||
list-style: lower-alpha; }
|
||||
|
||||
ol.upperalpha {
|
||||
list-style: upper-alpha; }
|
||||
|
||||
ol.lowerroman {
|
||||
list-style: lower-roman; }
|
||||
|
||||
ol.upperroman {
|
||||
list-style: upper-roman; }
|
||||
|
||||
ul.auto-toc {
|
||||
list-style-type: none; }
|
||||
|
||||
|
||||
dl {
|
||||
margin-bottom: 1.5em; }
|
||||
|
||||
dt {
|
||||
margin-bottom: -0.5em;
|
||||
margin-left: 0.0em; }
|
||||
|
||||
dd {
|
||||
margin-left: 2.0em;
|
||||
margin-bottom: 3.0em;
|
||||
margin-top: 0.5em; }
|
||||
|
||||
|
||||
hr {
|
||||
margin: 2em 0;
|
||||
border: 0;
|
||||
border-top: 1px solid #aaa; }
|
||||
|
||||
blockquote {
|
||||
font-size: 0.9em;
|
||||
font-style: italic;
|
||||
padding-left: 0.5em;
|
||||
margin-left: 0;
|
||||
border-left: 5px solid #bbc;
|
||||
}
|
||||
|
||||
.pre {
|
||||
font-family: "Source Code Pro", Monaco, Menlo, Consolas, "Courier New", monospace;
|
||||
font-weight: 500;
|
||||
font-size: 0.85em;
|
||||
background-color: #f0f3ff;
|
||||
padding-left: 3px;
|
||||
padding-right: 3px;
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
pre {
|
||||
font-family: "Source Code Pro", Monaco, Menlo, Consolas, "Courier New", monospace;
|
||||
color: #222;
|
||||
font-weight: 500;
|
||||
display: inline-block;
|
||||
box-sizing: border-box;
|
||||
min-width: 100%;
|
||||
padding: 0.5em;
|
||||
margin-top: 0.5em;
|
||||
margin-bottom: 0.5em;
|
||||
font-size: 0.85em;
|
||||
white-space: pre !important;
|
||||
overflow-y: hidden;
|
||||
overflow-x: visible;
|
||||
background-color: ghostwhite;
|
||||
border: 1px solid #dde;
|
||||
-webkit-border-radius: 6px;
|
||||
-moz-border-radius: 6px;
|
||||
border-radius: 6px; }
|
||||
|
||||
.pre-scrollable {
|
||||
max-height: 340px;
|
||||
overflow-y: scroll; }
|
||||
|
||||
|
||||
/* Nim line-numbered tables */
|
||||
.line-nums-table {
|
||||
width: 100%;
|
||||
table-layout: fixed; }
|
||||
|
||||
table.line-nums-table {
|
||||
border-radius: 4px;
|
||||
border: 1px solid #cccccc;
|
||||
background-color: ghostwhite;
|
||||
border-collapse: separate;
|
||||
margin-top: 15px;
|
||||
margin-bottom: 25px; }
|
||||
|
||||
.line-nums-table tbody {
|
||||
border: none; }
|
||||
|
||||
.line-nums-table td pre {
|
||||
border: none;
|
||||
background-color: transparent; }
|
||||
|
||||
.line-nums-table td.blob-line-nums {
|
||||
width: 28px; }
|
||||
|
||||
.line-nums-table td.blob-line-nums pre {
|
||||
color: #b0b0b0;
|
||||
-webkit-filter: opacity(75%);
|
||||
text-align: right;
|
||||
border-color: transparent;
|
||||
background-color: transparent;
|
||||
padding-left: 0px;
|
||||
margin-left: 0px;
|
||||
padding-right: 0px;
|
||||
margin-right: 0px; }
|
||||
|
||||
|
||||
table {
|
||||
max-width: 100%;
|
||||
background-color: transparent;
|
||||
margin-top: 0.5em;
|
||||
margin-bottom: 1.5em;
|
||||
border-collapse: collapse;
|
||||
border-color: #ccc;
|
||||
border-spacing: 0;
|
||||
font-size: 0.9em;
|
||||
}
|
||||
|
||||
table th, table td {
|
||||
padding: 0px 0.5em 0px;
|
||||
}
|
||||
|
||||
table th {
|
||||
background-color: #e8e8e8;
|
||||
font-weight: bold; }
|
||||
|
||||
table th.docinfo-name {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
table tr:hover {
|
||||
background-color: ghostwhite; }
|
||||
|
||||
|
||||
/* rst2html default used to remove borders from tables and images */
|
||||
.borderless, table.borderless td, table.borderless th {
|
||||
border: 0; }
|
||||
|
||||
table.borderless td, table.borderless th {
|
||||
/* Override padding for "table.docutils td" with "! important".
|
||||
The right padding separates the table cells. */
|
||||
padding: 0 0.5em 0 0 !important; }
|
||||
|
||||
.first {
|
||||
/* Override more specific margin styles with "! important". */
|
||||
margin-top: 0 !important; }
|
||||
|
||||
.last, .with-subtitle {
|
||||
margin-bottom: 0 !important; }
|
||||
|
||||
.hidden {
|
||||
display: none; }
|
||||
|
||||
blockquote.epigraph {
|
||||
margin: 2em 5em; }
|
||||
|
||||
dl.docutils dd {
|
||||
margin-bottom: 0.5em; }
|
||||
|
||||
object[type="image/svg+xml"], object[type="application/x-shockwave-flash"] {
|
||||
overflow: hidden; }
|
||||
|
||||
|
||||
div.figure {
|
||||
margin-left: 2em;
|
||||
margin-right: 2em; }
|
||||
|
||||
div.footer, div.header {
|
||||
clear: both;
|
||||
text-align: center;
|
||||
color: #666;
|
||||
font-size: smaller; }
|
||||
|
||||
div.footer {
|
||||
padding-top: 5em;
|
||||
}
|
||||
|
||||
div.line-block {
|
||||
display: block;
|
||||
margin-top: 1em;
|
||||
margin-bottom: 1em; }
|
||||
|
||||
div.line-block div.line-block {
|
||||
margin-top: 0;
|
||||
margin-bottom: 0;
|
||||
margin-left: 1.5em; }
|
||||
|
||||
div.topic {
|
||||
margin: 2em; }
|
||||
|
||||
div.search_results {
|
||||
background-color: antiquewhite;
|
||||
margin: 3em;
|
||||
padding: 1em;
|
||||
border: 1px solid #4d4d4d;
|
||||
}
|
||||
|
||||
div#global-links ul {
|
||||
margin-left: 0;
|
||||
list-style-type: none;
|
||||
}
|
||||
|
||||
div#global-links > simple-boot {
|
||||
margin-left: 3em;
|
||||
}
|
||||
|
||||
hr.docutils {
|
||||
width: 75%; }
|
||||
|
||||
img.align-left, .figure.align-left, object.align-left {
|
||||
clear: left;
|
||||
float: left;
|
||||
margin-right: 1em; }
|
||||
|
||||
img.align-right, .figure.align-right, object.align-right {
|
||||
clear: right;
|
||||
float: right;
|
||||
margin-left: 1em; }
|
||||
|
||||
img.align-center, .figure.align-center, object.align-center {
|
||||
display: block;
|
||||
margin-left: auto;
|
||||
margin-right: auto; }
|
||||
|
||||
.align-left {
|
||||
text-align: left; }
|
||||
|
||||
.align-center {
|
||||
clear: both;
|
||||
text-align: center; }
|
||||
|
||||
.align-right {
|
||||
text-align: right; }
|
||||
|
||||
/* reset inner alignment in figures */
|
||||
div.align-right {
|
||||
text-align: inherit; }
|
||||
|
||||
p.attribution {
|
||||
text-align: right;
|
||||
margin-left: 50%; }
|
||||
|
||||
p.caption {
|
||||
font-style: italic; }
|
||||
|
||||
p.credits {
|
||||
font-style: italic;
|
||||
font-size: smaller; }
|
||||
|
||||
p.label {
|
||||
white-space: nowrap; }
|
||||
|
||||
p.rubric {
|
||||
font-weight: bold;
|
||||
font-size: larger;
|
||||
color: maroon;
|
||||
text-align: center; }
|
||||
|
||||
p.topic-title {
|
||||
font-weight: bold; }
|
||||
|
||||
pre.address {
|
||||
margin-bottom: 0;
|
||||
margin-top: 0;
|
||||
font: inherit; }
|
||||
|
||||
pre.literal-block, pre.doctest-block, pre.math, pre.code {
|
||||
margin-left: 2em;
|
||||
margin-right: 2em; }
|
||||
|
||||
pre.code .ln {
|
||||
color: grey; }
|
||||
|
||||
/* line numbers */
|
||||
pre.code, code {
|
||||
background-color: #eeeeee; }
|
||||
|
||||
pre.code .comment, code .comment {
|
||||
color: #5c6576; }
|
||||
|
||||
pre.code .keyword, code .keyword {
|
||||
color: #3B0D06;
|
||||
font-weight: bold; }
|
||||
|
||||
pre.code .literal.string, code .literal.string {
|
||||
color: #0c5404; }
|
||||
|
||||
pre.code .name.builtin, code .name.builtin {
|
||||
color: #352b84; }
|
||||
|
||||
pre.code .deleted, code .deleted {
|
||||
background-color: #DEB0A1; }
|
||||
|
||||
pre.code .inserted, code .inserted {
|
||||
background-color: #A3D289; }
|
||||
|
||||
span.classifier {
|
||||
font-style: oblique; }
|
||||
|
||||
span.classifier-delimiter {
|
||||
font-weight: bold; }
|
||||
|
||||
span.option {
|
||||
white-space: nowrap; }
|
||||
|
||||
span.problematic {
|
||||
color: #b30000; }
|
||||
|
||||
span.section-subtitle {
|
||||
/* font-size relative to parent (h1..h6 element) */
|
||||
font-size: 80%; }
|
||||
|
||||
span.DecNumber {
|
||||
color: #252dbe; }
|
||||
|
||||
span.BinNumber {
|
||||
color: #252dbe; }
|
||||
|
||||
span.HexNumber {
|
||||
color: #252dbe; }
|
||||
|
||||
span.OctNumber {
|
||||
color: #252dbe; }
|
||||
|
||||
span.FloatNumber {
|
||||
color: #252dbe; }
|
||||
|
||||
span.Identifier {
|
||||
color: #222; }
|
||||
|
||||
span.Keyword {
|
||||
font-weight: 600;
|
||||
color: #5e8f60; }
|
||||
|
||||
span.StringLit {
|
||||
color: #a4255b; }
|
||||
|
||||
span.LongStringLit {
|
||||
color: #a4255b; }
|
||||
|
||||
span.CharLit {
|
||||
color: #a4255b; }
|
||||
|
||||
span.EscapeSequence {
|
||||
color: black; }
|
||||
|
||||
span.Operator {
|
||||
color: black; }
|
||||
|
||||
span.Punctuation {
|
||||
color: black; }
|
||||
|
||||
span.Comment, span.LongComment {
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
color: #484a86; }
|
||||
|
||||
span.RegularExpression {
|
||||
color: darkviolet; }
|
||||
|
||||
span.TagStart {
|
||||
color: darkviolet; }
|
||||
|
||||
span.TagEnd {
|
||||
color: darkviolet; }
|
||||
|
||||
span.Key {
|
||||
color: #252dbe; }
|
||||
|
||||
span.Value {
|
||||
color: #252dbe; }
|
||||
|
||||
span.RawData {
|
||||
color: #a4255b; }
|
||||
|
||||
span.Assembler {
|
||||
color: #252dbe; }
|
||||
|
||||
span.Preprocessor {
|
||||
color: #252dbe; }
|
||||
|
||||
span.Directive {
|
||||
color: #252dbe; }
|
||||
|
||||
span.Command, span.Rule, span.Hyperlink, span.Label, span.Reference,
|
||||
span.Other {
|
||||
color: black; }
|
||||
|
||||
/* Pop type, const, proc, and iterator defs in nim def blocks */
|
||||
dt pre > span.Identifier, dt pre > span.Operator {
|
||||
color: #155da4;
|
||||
font-weight: 700; }
|
||||
|
||||
dt pre > span.Keyword ~ span.Identifier, dt pre > span.Identifier ~ span.Identifier,
|
||||
dt pre > span.Operator ~ span.Identifier, dt pre > span.Other ~ span.Identifier {
|
||||
color: inherit;
|
||||
font-weight: inherit; }
|
||||
|
||||
/* Nim sprite for the footer (taken from main page favicon) */
|
||||
.nim-sprite {
|
||||
display: inline-block;
|
||||
height: 16px;
|
||||
width: 16px;
|
||||
background-position: 0 0;
|
||||
background-size: 16px 16px;
|
||||
-webkit-filter: opacity(50%);
|
||||
background-repeat: no-repeat;
|
||||
background-image: url("data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AAAAAAUAAAAF////AP///wD///8A////AP///wD///8A////AP///wD///8A////AAAAAAIAAABbAAAAlQAAAKIAAACbAAAAmwAAAKIAAACVAAAAWwAAAAL///8A////AP///wD///8A////AAAAABQAAADAAAAAYwAAAA3///8A////AP///wD///8AAAAADQAAAGMAAADAAAAAFP///wD///8A////AP///wAAAACdAAAAOv///wD///8A////AP///wD///8A////AP///wD///8AAAAAOgAAAJ3///8A////AP///wAAAAAnAAAAcP///wAAAAAoAAAASv///wD///8A////AP///wAAAABKAAAAKP///wAAAABwAAAAJ////wD///8AAAAAgQAAABwAAACIAAAAkAAAAJMAAACtAAAAFQAAABUAAACtAAAAkwAAAJAAAACIAAAAHAAAAIH///8A////AAAAAKQAAACrAAAAaP///wD///8AAAAARQAAANIAAADSAAAARf///wD///8AAAAAaAAAAKsAAACk////AAAAADMAAACcAAAAnQAAABj///8A////AP///wAAAAAYAAAAGP///wD///8A////AAAAABgAAACdAAAAnAAAADMAAAB1AAAAwwAAAP8AAADpAAAAsQAAAE4AAAAb////AP///wAAAAAbAAAATgAAALEAAADpAAAA/wAAAMMAAAB1AAAAtwAAAOkAAAD/AAAA/wAAAP8AAADvAAAA3gAAAN4AAADeAAAA3gAAAO8AAAD/AAAA/wAAAP8AAADpAAAAtwAAAGUAAAA/AAAA3wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAADfAAAAPwAAAGX///8A////AAAAAEgAAADtAAAAvwAAAL0AAADGAAAA7wAAAO8AAADGAAAAvQAAAL8AAADtAAAASP///wD///8A////AP///wD///8AAAAAO////wD///8A////AAAAAIcAAACH////AP///wD///8AAAAAO////wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A//8AAP//AAD4HwAA7/cAAN/7AAD//wAAoYUAAJ55AACf+QAAh+EAAAAAAADAAwAA4AcAAP5/AAD//wAA//8AAA==");
|
||||
margin-bottom: -5px; }
|
||||
|
||||
span.pragmadots {
|
||||
/* Position: relative frees us up to make the dots
|
||||
look really nice without fucking up the layout and
|
||||
causing bulging in the parent container */
|
||||
position: relative;
|
||||
/* 1px down looks slightly nicer */
|
||||
top: 1px;
|
||||
padding: 2px;
|
||||
background-color: #e8e8e8;
|
||||
border-radius: 4px;
|
||||
margin: 0 2px;
|
||||
cursor: pointer;
|
||||
font-size: 0.8em;
|
||||
}
|
||||
|
||||
span.pragmadots:hover {
|
||||
background-color: #DBDBDB;
|
||||
}
|
||||
span.pragmawrap {
|
||||
display: none;
|
||||
}
|
||||
|
||||
span.attachedType {
|
||||
display: none;
|
||||
visibility: hidden;
|
||||
}
|
||||
</style>
|
||||
<link rel="stylesheet" type="text/css" href="nimdoc.css">
|
||||
|
||||
<script type="text/javascript" src="dochack.js"></script>
|
||||
|
||||
@@ -798,6 +33,37 @@ function main() {
|
||||
event.target.parentNode.nextElementSibling.style.display = "inline";
|
||||
}
|
||||
}
|
||||
|
||||
const toggleSwitch = document.querySelector('.theme-switch input[type="checkbox"]');
|
||||
function switchTheme(e) {
|
||||
if (e.target.checked) {
|
||||
document.documentElement.setAttribute('data-theme', 'dark');
|
||||
localStorage.setItem('theme', 'dark');
|
||||
} else {
|
||||
document.documentElement.setAttribute('data-theme', 'light');
|
||||
localStorage.setItem('theme', 'light');
|
||||
}
|
||||
}
|
||||
|
||||
toggleSwitch.addEventListener('change', switchTheme, false);
|
||||
|
||||
|
||||
if (window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches) {
|
||||
document.documentElement.setAttribute('data-theme', "dark");
|
||||
toggleSwitch.checked = true;
|
||||
} else if (window.matchMedia && window.matchMedia('(prefers-color-scheme: light)').matches) {
|
||||
document.documentElement.setAttribute('data-theme', "light");
|
||||
toggleSwitch.checked = false;
|
||||
} else {
|
||||
const currentTheme = localStorage.getItem('theme') ? localStorage.getItem('theme') : null;
|
||||
if (currentTheme) {
|
||||
document.documentElement.setAttribute('data-theme', currentTheme);
|
||||
|
||||
if (currentTheme === 'dark') {
|
||||
toggleSwitch.checked = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
@@ -894,7 +160,7 @@ function main() {
|
||||
<div class="twelve-columns footer">
|
||||
<span class="nim-sprite"></span>
|
||||
<br/>
|
||||
<small>Made with Nim. Generated: 1970-01-02 03:46:40 UTC</small>
|
||||
<small style="color: var(--hint);">Made with Nim. Generated: 1970-01-02 03:46:40 UTC</small>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -364,11 +364,16 @@ proc buildJS() =
|
||||
exec(findNim() & " js " & (docHackDir / "dochack.nim"))
|
||||
|
||||
proc buildDocs*(args: string) =
|
||||
const
|
||||
docHackJs = "dochack.js"
|
||||
css = "nimdoc.css"
|
||||
let
|
||||
a = nimArgs & " " & args
|
||||
docHackJs = "dochack.js"
|
||||
docHackJsSource = docHackDir / docHackJs
|
||||
docHackJsDest = docHtmlOutput / docHackJs
|
||||
|
||||
cssSource = "doc" / css
|
||||
cssDest = docHtmlOutput / css
|
||||
buildJS() # This call generates docHackJsSource
|
||||
let docup = webUploadOutput / NimVersion
|
||||
createDir(docup)
|
||||
@@ -382,3 +387,6 @@ proc buildDocs*(args: string) =
|
||||
buildDoc(nimArgs, docHtmlOutput)
|
||||
copyFile(docHackJsSource, docHackJsDest)
|
||||
copyFile(docHackJsSource, docup / docHackJs)
|
||||
|
||||
copyFile(cssSource, cssDest)
|
||||
copyFile(cssSource, docup / css)
|
||||
|
||||
Reference in New Issue
Block a user