diff options
| author | 2024-04-23 00:38:24 -0400 | |
|---|---|---|
| committer | 2024-04-23 00:38:24 -0400 | |
| commit | 0199f695e93782d728bd31857afe54f4df92f351 (patch) | |
| tree | 34e9030a05a89461d222172615c74891fba1e5ef /docs | |
| parent | 22b8f5dae59e876643e8e3002f72282f3e8608c5 (diff) | |
| parent | 9b0e86a8e74768c4fe848fb5ce8d754292db4e3e (diff) | |
Update upstream source from tag 'upstream/8.3.0'
Update to upstream version '8.3.0'
with Debian dir bc13791b86ab63e4473e92288f1749c55a6ad540
Diffstat (limited to 'docs')
| -rw-r--r-- | docs/architecture/nikola-architecture-draw-io.png | bin | 90059 -> 163583 bytes | |||
| -rw-r--r-- | docs/architecture/nikola-architecture-draw-io.svg | 5 | ||||
| -rw-r--r-- | docs/architecture/nikola-architecture-draw-io.xml | 214 | ||||
| -rw-r--r-- | docs/creating-a-site.rst | 2 | ||||
| -rw-r--r-- | docs/extending.rst | 79 | ||||
| -rw-r--r-- | docs/internals.rst | 10 | ||||
| -rw-r--r-- | docs/man/nikola.1.gz | bin | 1787 -> 1787 bytes | |||
| -rw-r--r-- | docs/man/nikola.rst | 2 | ||||
| -rw-r--r-- | docs/manual.rst | 4 | ||||
| -rw-r--r-- | docs/social_buttons.rst | 2 | ||||
| -rw-r--r-- | docs/sphinx/conf.py | 6 | ||||
| -rw-r--r-- | docs/support.rst | 2 | ||||
| -rw-r--r-- | docs/template-variables.rst | 2 | ||||
| -rw-r--r-- | docs/theming.rst | 5 |
14 files changed, 279 insertions, 54 deletions
diff --git a/docs/architecture/nikola-architecture-draw-io.png b/docs/architecture/nikola-architecture-draw-io.png Binary files differindex 0e0f391..8180cf5 100644 --- a/docs/architecture/nikola-architecture-draw-io.png +++ b/docs/architecture/nikola-architecture-draw-io.png diff --git a/docs/architecture/nikola-architecture-draw-io.svg b/docs/architecture/nikola-architecture-draw-io.svg index 9470c32..3ed2c16 100644 --- a/docs/architecture/nikola-architecture-draw-io.svg +++ b/docs/architecture/nikola-architecture-draw-io.svg @@ -1 +1,4 @@ -<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="2556px" height="548px" version="1.1"><defs><linearGradient x1="0%" y1="0%" x2="0%" y2="100%" id="mx-gradient-e1d5e7-1-8c6c9c-1-s-0"><stop offset="0%" style="stop-color:#E1D5E7"/><stop offset="100%" style="stop-color:#8C6C9C"/></linearGradient><linearGradient x1="0%" y1="0%" x2="0%" y2="100%" id="mx-gradient-ffffff-0.9-ffffff-0.1-s-0"><stop offset="0%" style="stop-color:#ffffff;stop-opacity:0.9"/><stop offset="100%" style="stop-color:#ffffff;stop-opacity:0.1"/></linearGradient><linearGradient x1="0%" y1="0%" x2="0%" y2="100%" id="mx-gradient-dae8fc-1-7ea6e0-1-s-0"><stop offset="0%" style="stop-color:#DAE8FC"/><stop offset="100%" style="stop-color:#7EA6E0"/></linearGradient><linearGradient x1="0%" y1="100%" x2="0%" y2="0%" id="mx-gradient-ffffff-1-ffff33-1-s-0"><stop offset="0%" style="stop-color:#FFFF33"/><stop offset="100%" style="stop-color:#ffffff"/></linearGradient><linearGradient x1="0%" y1="0%" x2="0%" y2="100%" id="mx-gradient-f8cecc-1-66ff66-1-s-0"><stop offset="0%" style="stop-color:#F8CECC"/><stop offset="100%" style="stop-color:#66FF66"/></linearGradient><linearGradient x1="0%" y1="0%" x2="0%" y2="100%" id="mx-gradient-ffffff-1-ff66b3-1-s-0"><stop offset="0%" style="stop-color:#ffffff"/><stop offset="100%" style="stop-color:#FF66B3"/></linearGradient><linearGradient x1="0%" y1="0%" x2="0%" y2="100%" id="mx-gradient-ffffff-1-ff9933-1-s-0"><stop offset="0%" style="stop-color:#ffffff"/><stop offset="100%" style="stop-color:#FF9933"/></linearGradient><linearGradient x1="0%" y1="0%" x2="0%" y2="100%" id="mx-gradient-ffffff-1-66ff66-1-s-0"><stop offset="0%" style="stop-color:#ffffff"/><stop offset="100%" style="stop-color:#66FF66"/></linearGradient><linearGradient x1="0%" y1="0%" x2="0%" y2="100%" id="mx-gradient-ffffff-1-66ffff-1-s-0"><stop offset="0%" style="stop-color:#ffffff"/><stop offset="100%" style="stop-color:#66FFFF"/></linearGradient><linearGradient x1="0%" y1="0%" x2="0%" y2="100%" id="mx-gradient-ffffff-1-ffff66-1-s-0"><stop offset="0%" style="stop-color:#ffffff"/><stop offset="100%" style="stop-color:#FFFF66"/></linearGradient></defs><g transform="translate(0.5,0.5)"><rect x="2.58" y="425.61" width="1530" height="56" fill="#d0d0d0" stroke="#d0d0d0" transform="translate(2,3)" opacity="1"/><rect x="2.58" y="425.61" width="1530" height="56" fill="url(#mx-gradient-e1d5e7-1-8c6c9c-1-s-0)" stroke="#000000" pointer-events="none"/><path d="M 1.58 424.61 L 1.58 448.01 Q 767.58 464.81 1533.58 448.01 L 1533.58 424.61 Z" fill="url(#mx-gradient-ffffff-0.9-ffffff-0.1-s-0)" stroke="none" pointer-events="none"/><g transform="translate(712,415)"><switch><foreignObject pointer-events="all" width="109" height="78" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; width: 109px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><h1><font style="font-size: 35px ; font-weight: normal">Yapsy</font></h1></div></div></foreignObject><text x="55" y="45" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="1550.58" y="425.61" width="1001" height="60" fill="#d0d0d0" stroke="#d0d0d0" transform="translate(2,3)" opacity="1"/><rect x="1550.58" y="425.61" width="1001" height="60" fill="url(#mx-gradient-dae8fc-1-7ea6e0-1-s-0)" stroke="#000000" pointer-events="none"/><path d="M 1549.58 424.61 L 1549.58 449.61 Q 2051.08 467.61 2552.58 449.61 L 2552.58 424.61 Z" fill="url(#mx-gradient-ffffff-0.9-ffffff-0.1-s-0)" stroke="none" pointer-events="none"/><g transform="translate(2019,420)"><switch><foreignObject pointer-events="all" width="62" height="71" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; width: 62px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><h2><font style="font-size: 31px ; font-weight: normal">doit</font></h2></div></div></foreignObject><text x="31" y="42" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="2.58" y="377.61" width="1529" height="38" fill="url(#mx-gradient-ffffff-1-ffff33-1-s-0)" stroke="#000000" pointer-events="none"/><g transform="translate(730,371)"><switch><foreignObject pointer-events="all" width="72" height="52" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; width: 72px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><h3><font style="font-size: 18px">IPlugin</font></h3></div></div></foreignObject><text x="36" y="32" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="3.58" y="287.61" width="1526" height="79" fill="#d0d0d0" stroke="#d0d0d0" transform="translate(2,3)" opacity="1"/><rect x="3.58" y="287.61" width="1526" height="79" fill="url(#mx-gradient-f8cecc-1-66ff66-1-s-0)" stroke="#000000" pointer-events="none"/><path d="M 2.58 286.61 L 2.58 319.21 Q 766.58 342.91 1530.58 319.21 L 1530.58 286.61 Z" fill="url(#mx-gradient-ffffff-0.9-ffffff-0.1-s-0)" stroke="none" pointer-events="none"/><rect x="162.58" y="297.61" width="149" height="30" fill="#ffffff" stroke="#000000" pointer-events="none"/><g transform="translate(215,304)"><switch><foreignObject pointer-events="all" width="42" height="18" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; width: 42px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><b><font style="font-size: 13px">Task</font></b></div></div></foreignObject><text x="21" y="15" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="464.58" y="297.61" width="149" height="30" fill="#ffffff" stroke="#000000" pointer-events="none"/><g transform="translate(480,304)"><switch><foreignObject pointer-events="all" width="116" height="18" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; width: 116px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><b><font style="font-size: 13px">TemplateSystem</font></b></div></div></foreignObject><text x="58" y="15" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="1370.58" y="297.61" width="149" height="30" fill="#ffffff" stroke="#000000" pointer-events="none"/><g transform="translate(1398,304)"><switch><foreignObject pointer-events="all" width="92" height="18" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; width: 92px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><b><font style="font-size: 13px">ConfigPlugin</font></b></div></div></foreignObject><text x="46" y="15" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="1068.58" y="297.61" width="149" height="30" fill="#ffffff" stroke="#000000" pointer-events="none"/><g transform="translate(1073,304)"><switch><foreignObject pointer-events="all" width="138" height="18" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; width: 138px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><b><font style="font-size: 13px">MarkdownExtension</font></b></div></div></foreignObject><text x="69" y="15" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="914.58" y="297.61" width="149" height="30" fill="#ffffff" stroke="#000000" pointer-events="none"/><g transform="translate(938,304)"><switch><foreignObject pointer-events="all" width="100" height="17" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; width: 100px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><span style="line-height: 13.8599996566772px"><b><font style="font-size: 13px">TaskMultiplier</font></b></span></div></div></foreignObject><text x="50" y="15" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="766.58" y="297.61" width="143" height="30" fill="#ffffff" stroke="#000000" pointer-events="none"/><g transform="translate(786,304)"><switch><foreignObject pointer-events="all" width="102" height="18" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; width: 102px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><b><font style="font-size: 13px">RestExtension</font></b></div></div></foreignObject><text x="51" y="15" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="1222.58" y="297.61" width="143" height="30" fill="#ffffff" stroke="#000000" pointer-events="none"/><g transform="translate(1243,304)"><switch><foreignObject pointer-events="all" width="100" height="18" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; width: 100px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><b><font style="font-size: 13px">SignalHandler</font></b></div></div></foreignObject><text x="50" y="15" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="14.58" y="297.61" width="143" height="30" fill="#ffffff" stroke="#000000" pointer-events="none"/><g transform="translate(47,304)"><switch><foreignObject pointer-events="all" width="76" height="18" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; width: 76px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><b><font style="font-size: 13px">Command</font></b></div></div></foreignObject><text x="38" y="15" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="316.58" y="297.61" width="143" height="30" fill="#ffffff" stroke="#000000" pointer-events="none"/><g transform="translate(353,304)"><switch><foreignObject pointer-events="all" width="68" height="18" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; width: 68px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><b><font style="font-size: 13px">LateTask</font></b></div></div></foreignObject><text x="34" y="15" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="618.58" y="297.61" width="143" height="30" fill="#ffffff" stroke="#000000" pointer-events="none"/><g transform="translate(639,304)"><switch><foreignObject pointer-events="all" width="100" height="18" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; width: 100px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><b><font style="font-size: 13px">PageCompiler</font></b></div></div></foreignObject><text x="50" y="15" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="615.58" y="334.61" width="295" height="25" fill="none" stroke="none" pointer-events="none"/><g transform="translate(703,339)"><switch><foreignObject pointer-events="all" width="121" height="19" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; overflow: hidden; max-height: 21px; max-width: 291px; width: 121px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><b><font style="font-size: 14px">Plugin Categories</font></b></div></div></foreignObject><text x="61" y="16" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="14.58" y="109.61" width="143" height="169" fill="none" stroke="#000000" pointer-events="none"/><g transform="translate(79,186)"><switch><foreignObject pointer-events="all" width="12" height="17" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; width: 12px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><div style="text-align: left"><br /></div></div></div></foreignObject><text x="6" y="15" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="23.58" y="118.61" width="129" height="22" fill="none" stroke="none" pointer-events="none"/><g transform="translate(52,122)"><switch><foreignObject pointer-events="all" width="73" height="18" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; overflow: hidden; max-height: 18px; max-width: 125px; width: 73px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><b><font style="font-size: 13px">Commands</font></b><div><br /></div></div></div></foreignObject><text x="37" y="15" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="29.58" y="140.61" width="114" height="129" fill="none" stroke="none" pointer-events="none"/><g transform="translate(51,145)"><switch><foreignObject pointer-events="all" width="72" height="122" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; overflow: hidden; max-height: 125px; max-width: 110px; width: 72px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">init<div>install_theme</div><div>new_post</div><div>new_page</div><div>deploy</div><div>serve</div><div>...</div><div><br /></div></div></div></foreignObject><text x="36" y="67" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="163.58" y="110.61" width="143" height="169" fill="none" stroke="#000000" pointer-events="none"/><g transform="translate(228,187)"><switch><foreignObject pointer-events="all" width="12" height="17" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; width: 12px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><div style="text-align: left"><br /></div></div></div></foreignObject><text x="6" y="15" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="174.58" y="118.61" width="129" height="22" fill="none" stroke="none" pointer-events="none"/><g transform="translate(220,122)"><switch><foreignObject pointer-events="all" width="39" height="18" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; overflow: hidden; max-height: 18px; max-width: 125px; width: 39px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><b><font style="font-size: 13px">Tasks</font></b></div></div></foreignObject><text x="20" y="15" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="181.58" y="141.61" width="114" height="129" fill="none" stroke="none" pointer-events="none"/><g transform="translate(216,146)"><switch><foreignObject pointer-events="all" width="46" height="122" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; overflow: hidden; max-height: 125px; max-width: 110px; width: 46px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><div>archives</div><div>galleries</div><div>indexes</div><div>pages</div><div>posts</div><div>rss</div><div>tags</div><div>...</div></div></div></foreignObject><text x="23" y="67" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="482.58" y="169.61" width="114" height="55" fill="none" stroke="none" pointer-events="none"/><g transform="translate(524,182)"><switch><foreignObject pointer-events="all" width="32" height="32" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; overflow: hidden; max-height: 51px; max-width: 110px; width: 32px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">jinja<div>mako</div></div></div></foreignObject><text x="16" y="22" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="467.58" y="109.61" width="143" height="169" fill="none" stroke="#000000" pointer-events="none"/><g transform="translate(532,186)"><switch><foreignObject pointer-events="all" width="12" height="17" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; width: 12px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><div style="text-align: left"><br /></div></div></div></foreignObject><text x="6" y="15" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="477.58" y="118.61" width="129" height="22" fill="none" stroke="none" pointer-events="none"/><g transform="translate(484,122)"><switch><foreignObject pointer-events="all" width="117" height="18" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; overflow: hidden; max-height: 18px; max-width: 125px; width: 117px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><b><font style="font-size: 13px">Template Systems</font></b></div></div></foreignObject><text x="59" y="15" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="619.58" y="109.61" width="143" height="169" fill="none" stroke="#000000" pointer-events="none"/><g transform="translate(656,156)"><switch><foreignObject pointer-events="all" width="68" height="77" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; width: 68px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><div style="text-align: left">ipynb</div><div style="text-align: left">markdown</div><div style="text-align: left">rest</div><div style="text-align: left">php</div><div style="text-align: left">pandoc</div></div></div></foreignObject><text x="34" y="45" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="626.58" y="119.61" width="129" height="22" fill="none" stroke="none" pointer-events="none"/><g transform="translate(641,123)"><switch><foreignObject pointer-events="all" width="101" height="18" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; overflow: hidden; max-height: 18px; max-width: 125px; width: 101px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><b><font style="font-size: 13px">Page Compilers</font></b></div></div></foreignObject><text x="51" y="15" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="1879.58" y="274.61" width="544" height="85" fill="none" stroke="#000000" pointer-events="none"/><g transform="translate(2145,309)"><switch><foreignObject pointer-events="all" width="12" height="17" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; width: 12px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><br /></div></div></foreignObject><text x="6" y="15" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="1550.58" y="378.61" width="320" height="37" fill="url(#mx-gradient-ffffff-1-ff66b3-1-s-0)" stroke="#000000" pointer-events="none"/><g transform="translate(1664,388)"><switch><foreignObject pointer-events="all" width="91" height="19" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; width: 91px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><font style="font-size: 14px"><b>TaskLoader</b></font></div></div></foreignObject><text x="46" y="16" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="1550.58" y="333.61" width="320" height="37" fill="url(#mx-gradient-ffffff-1-ff9933-1-s-0)" stroke="#000000" pointer-events="none"/><g transform="translate(1643,343)"><switch><foreignObject pointer-events="all" width="133" height="19" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; width: 133px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><font style="font-size: 14px"><b>NikolaTaskLoader</b></font></div></div></foreignObject><text x="67" y="16" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="1887.58" y="286.61" width="128" height="32" fill="url(#mx-gradient-ffffff-1-ff9933-1-s-0)" stroke="#000000" pointer-events="none"/><g transform="translate(1931,293)"><switch><foreignObject pointer-events="all" width="39" height="19" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; width: 39px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><b><font style="font-size: 14px">Run</font></b></div></div></foreignObject><text x="20" y="16" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="2288.58" y="286.61" width="128" height="32" fill="url(#mx-gradient-ffffff-1-ffff33-1-s-0)" stroke="#000000" pointer-events="none"/><g transform="translate(2330,293)"><switch><foreignObject pointer-events="all" width="43" height="19" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; width: 43px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><b><font style="font-size: 14px">Auto</font></b></div></div></foreignObject><text x="22" y="16" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="2155.58" y="286.61" width="128" height="32" fill="url(#mx-gradient-ffffff-1-66ff66-1-s-0)" stroke="#000000" pointer-events="none"/><g transform="translate(2197,293)"><switch><foreignObject pointer-events="all" width="43" height="19" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; width: 43px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><b><font style="font-size: 14px">Help</font></b></div></div></foreignObject><text x="22" y="16" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="2022.58" y="286.61" width="128" height="32" fill="url(#mx-gradient-ffffff-1-66ffff-1-s-0)" stroke="#000000" pointer-events="none"/><g transform="translate(2060,293)"><switch><foreignObject pointer-events="all" width="51" height="19" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; width: 51px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><b><font style="font-size: 14px">Clean</font></b></div></div></foreignObject><text x="26" y="16" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="1890.58" y="314.61" width="525" height="40" fill="none" stroke="none" pointer-events="none"/><g transform="translate(2075,318)"><switch><foreignObject pointer-events="all" width="157" height="36" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; overflow: hidden; max-height: 36px; max-width: 521px; width: 157px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><h3><b><font style="font-size: 16px">doit Sub Commands</font></b></h3><div><br /></div></div></div></foreignObject><text x="79" y="24" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="1879.58" y="186.61" width="544" height="79" fill="none" stroke="#000000" pointer-events="none"/><g transform="translate(2145,218)"><switch><foreignObject pointer-events="all" width="12" height="17" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; width: 12px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><br /></div></div></foreignObject><text x="6" y="15" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="1889.58" y="177.61" width="525" height="40" fill="none" stroke="none" pointer-events="none"/><g transform="translate(2064,181)"><switch><foreignObject pointer-events="all" width="177" height="36" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; overflow: hidden; max-height: 36px; max-width: 521px; width: 177px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><h3><b><font style="font-size: 16px">Nikola Sub Commands</font></b></h3><div><br /></div></div></div></foreignObject><text x="89" y="24" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="1887.58" y="225.61" width="128" height="32" fill="url(#mx-gradient-ffffff-1-ff9933-1-s-0)" stroke="#000000" pointer-events="none"/><g transform="translate(1927,232)"><switch><foreignObject pointer-events="all" width="47" height="19" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; width: 47px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><b><font style="font-size: 14px">Build</font></b></div></div></foreignObject><text x="24" y="16" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="2021.58" y="225.61" width="128" height="32" fill="url(#mx-gradient-ffffff-1-66ffff-1-s-0)" stroke="#000000" pointer-events="none"/><g transform="translate(2059,232)"><switch><foreignObject pointer-events="all" width="51" height="19" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; width: 51px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><b><font style="font-size: 14px">Clean</font></b></div></div></foreignObject><text x="26" y="16" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="2155.58" y="225.61" width="128" height="32" fill="url(#mx-gradient-ffffff-1-66ff66-1-s-0)" stroke="#000000" pointer-events="none"/><g transform="translate(2197,232)"><switch><foreignObject pointer-events="all" width="43" height="19" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; width: 43px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><b><font style="font-size: 14px">Help</font></b></div></div></foreignObject><text x="22" y="16" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="2288.58" y="225.61" width="128" height="32" fill="url(#mx-gradient-ffffff-1-ffff66-1-s-0)" stroke="#000000" pointer-events="none"/><g transform="translate(2330,232)"><switch><foreignObject pointer-events="all" width="43" height="19" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; width: 43px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><b><font style="font-size: 14px">Auto</font></b></div></div></foreignObject><text x="22" y="16" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="1550.58" y="150.61" width="321" height="138" fill="none" stroke="#000000" pointer-events="none"/><g transform="translate(1704,211)"><switch><foreignObject pointer-events="all" width="12" height="17" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; width: 12px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><br /></div></div></foreignObject><text x="6" y="15" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="1593.58" y="122.61" width="232" height="59" fill="none" stroke="none" pointer-events="none"/><g transform="translate(1671,130)"><switch><foreignObject pointer-events="all" width="78" height="47" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; overflow: hidden; max-height: 55px; max-width: 228px; width: 78px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><b><br /></b><div><div><b><br /></b></div><div><b>default_tasks</b></div></div></div></div></foreignObject><text x="39" y="30" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><path d="M 1710.76 122.88 L 1710.76 122.88" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 1710.76 122.88 L 1710.76 122.88 L 1710.76 122.88 L 1710.76 122.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><rect x="1552.58" y="296.61" width="318" height="28" fill="none" stroke="#000000" pointer-events="none"/><g transform="translate(1668,301)"><switch><foreignObject pointer-events="all" width="85" height="19" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; width: 85px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><b><font style="font-size: 14px">load_tasks</font></b></div></div></foreignObject><text x="43" y="16" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="1561.58" y="189.61" width="138" height="80" fill="none" stroke="#000000" pointer-events="none"/><g transform="translate(1562,206)"><switch><foreignObject pointer-events="all" width="135" height="47" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; width: 133px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><b>render_site</b><div>Group of tasks to render the site<br /></div></div></div></foreignObject><text x="68" y="30" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="1713.58" y="190.61" width="141" height="79" fill="none" stroke="#000000" pointer-events="none"/><g transform="translate(1714,199)"><switch><foreignObject pointer-events="all" width="138" height="62" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; width: 136px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><div><b>post_render</b></div>Group of tasks to be executed after site is rendered.</div></div></foreignObject><text x="69" y="37" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><path d="M 1950.15 225.91 L 1950.15 41.61 L 1710.76 41.61 L 1710.76 143.78" fill="none" stroke="#d0d0d0" stroke-miterlimit="10" stroke-dasharray="3 3" transform="translate(2,3)" opacity="1"/><path d="M 1950.15 225.91 L 1950.15 41.61 L 1710.76 41.61 L 1710.76 143.78" fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="none"/><path d="M 1710.76 149.03 L 1707.26 142.03 L 1710.76 143.78 L 1714.26 142.03 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><g transform="translate(1771,13)"><switch><foreignObject pointer-events="all" width="92" height="73" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; white-space: nowrap; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;background-color:#ffffff;"><h2><b><font color="#cc0000" style="font-size: 21px">executes</font></b></h2><div><br /></div></div></div></foreignObject><text x="46" y="43" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><path d="M 1628.94 186.52 L 1628.94 32.61 L 235 32.61 L 235 104.39" fill="none" stroke="#d0d0d0" stroke-miterlimit="10" stroke-dasharray="3 3" transform="translate(2,3)" opacity="1"/><path d="M 1628.94 186.52 L 1628.94 32.61 L 235 32.61 L 235 104.39" fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="none"/><path d="M 235 109.64 L 231.5 102.64 L 235 104.39 L 238.5 102.64 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><g transform="translate(861,3)"><switch><foreignObject pointer-events="all" width="193" height="60" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; white-space: nowrap; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;background-color:#ffffff;"><h4><font style="font-size: 21px" color="#cc0000">implemented using</font></h4></div></div></foreignObject><text x="97" y="36" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><path d="M 1783.48 189.55 L 1784.08 82.61 L 388.08 82.61 L 389.5 292.27" fill="none" stroke="#d0d0d0" stroke-miterlimit="10" stroke-dasharray="3 3" transform="translate(2,3)" opacity="1"/><path d="M 1783.48 189.55 L 1784.08 82.61 L 388.08 82.61 L 389.5 292.27" fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="none"/><path d="M 389.54 297.52 L 385.99 290.54 L 389.5 292.27 L 392.99 290.49 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><g transform="translate(1007,53)"><switch><foreignObject pointer-events="all" width="193" height="60" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; white-space: nowrap; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;background-color:#ffffff;"><h4><font style="font-size: 21px" color="#cc0000">implemented using</font></h4></div></div></foreignObject><text x="97" y="36" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="2429.58" y="370.61" width="120" height="49" fill="#ffffff" stroke="#000000" pointer-events="none"/><g transform="translate(2449,384)"><switch><foreignObject pointer-events="all" width="79" height="22" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; width: 79px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><b><font style="font-size: 16px">DoitMain</font></b></div></div></foreignObject><text x="40" y="17" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="2429.58" y="310.61" width="120" height="49" fill="#ffffff" stroke="#000000" pointer-events="none"/><g transform="translate(2443,324)"><switch><foreignObject pointer-events="all" width="91" height="22" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; width: 91px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><b><font style="font-size: 16px">DoitNikola</font></b></div></div></foreignObject><text x="46" y="17" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><rect x="1879.58" y="368.61" width="543" height="51" fill="#ffffff" stroke="#000000" pointer-events="none"/><g transform="translate(2100,382)"><switch><foreignObject pointer-events="all" width="100" height="24" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; width: 100px; white-space: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;"><b><font style="font-size: 18px">Command</font></b></div></div></foreignObject><text x="50" y="18" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g><path d="M 86.52 268.33 L 86.52 533.61 L 2150.15 533.61 L 2150.15 426.22" fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="none"/><path d="M 2150.15 420.97 L 2153.65 427.97 L 2150.15 426.22 L 2146.65 427.97 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><g transform="translate(1051,521)"><switch><foreignObject pointer-events="all" width="193" height="28" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.26; vertical-align: top; white-space: nowrap; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;background-color:#ffffff;"><font style="font-size: 21px" color="#cc0000"><b>implemented using</b></font></div></div></foreignObject><text x="97" y="20" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">[Not supported by viewer]</text></switch></g></g></svg>
\ No newline at end of file +<?xml version="1.0" encoding="UTF-8"?> +<!-- Do not edit this file with editors other than draw.io --> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> +<svg xmlns="http://www.w3.org/2000/svg" style="background-color: rgb(255, 255, 255);" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="2552px" height="542px" viewBox="-0.5 -0.5 2552 542" content="<mxfile host="app.diagrams.net" modified="2024-01-10T20:15:10.246Z" agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:121.0) Gecko/20100101 Firefox/121.0" version="22.1.18" etag="fiU1s8v93AACBP9rMY6I" type="device"><diagram id="0" name="Page-1">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</diagram></mxfile>"><defs><linearGradient x1="0%" y1="0%" x2="0%" y2="100%" id="mx-gradient-e1d5e7-1-8c6c9c-1-s-0"><stop offset="0%" style="stop-color: rgb(225, 213, 231); stop-opacity: 1;"/><stop offset="100%" style="stop-color: rgb(140, 108, 156); stop-opacity: 1;"/></linearGradient><linearGradient x1="0%" y1="0%" x2="0%" y2="100%" id="mx-gradient-ffffff-0.9-ffffff-0.1-s-0"><stop offset="0%" style="stop-color: rgb(255, 255, 255); stop-opacity: 0.9;"/><stop offset="100%" style="stop-color: rgb(255, 255, 255); stop-opacity: 0.1;"/></linearGradient><linearGradient x1="0%" y1="0%" x2="0%" y2="100%" id="mx-gradient-dae8fc-1-7ea6e0-1-s-0"><stop offset="0%" style="stop-color: rgb(218, 232, 252); stop-opacity: 1;"/><stop offset="100%" style="stop-color: rgb(126, 166, 224); stop-opacity: 1;"/></linearGradient><linearGradient x1="0%" y1="100%" x2="0%" y2="0%" id="mx-gradient-ffffff-1-ffff33-1-s-0"><stop offset="0%" style="stop-color: rgb(255, 255, 51); stop-opacity: 1;"/><stop offset="100%" style="stop-color: rgb(255, 255, 255); stop-opacity: 1;"/></linearGradient><linearGradient x1="0%" y1="0%" x2="0%" y2="100%" id="mx-gradient-f8cecc-1-66ff66-1-s-0"><stop offset="0%" style="stop-color: rgb(248, 206, 204); stop-opacity: 1;"/><stop offset="100%" style="stop-color: rgb(102, 255, 102); stop-opacity: 1;"/></linearGradient><linearGradient x1="0%" y1="0%" x2="0%" y2="100%" id="mx-gradient-ffffff-1-ff66b3-1-s-0"><stop offset="0%" style="stop-color: rgb(255, 255, 255); stop-opacity: 1;"/><stop offset="100%" style="stop-color: rgb(255, 102, 179); stop-opacity: 1;"/></linearGradient><linearGradient x1="0%" y1="0%" x2="0%" y2="100%" id="mx-gradient-ffffff-1-ff9933-1-s-0"><stop offset="0%" style="stop-color: rgb(255, 255, 255); stop-opacity: 1;"/><stop offset="100%" style="stop-color: rgb(255, 153, 51); stop-opacity: 1;"/></linearGradient><linearGradient x1="0%" y1="0%" x2="0%" y2="100%" id="mx-gradient-ffffff-1-66ff66-1-s-0"><stop offset="0%" style="stop-color: rgb(255, 255, 255); stop-opacity: 1;"/><stop offset="100%" style="stop-color: rgb(102, 255, 102); stop-opacity: 1;"/></linearGradient><linearGradient x1="0%" y1="0%" x2="0%" y2="100%" id="mx-gradient-ffffff-1-66ffff-1-s-0"><stop offset="0%" style="stop-color: rgb(255, 255, 255); stop-opacity: 1;"/><stop offset="100%" style="stop-color: rgb(102, 255, 255); stop-opacity: 1;"/></linearGradient><linearGradient x1="0%" y1="0%" x2="0%" y2="100%" id="mx-gradient-ffffff-1-ffff66-1-s-0"><stop offset="0%" style="stop-color: rgb(255, 255, 255); stop-opacity: 1;"/><stop offset="100%" style="stop-color: rgb(255, 255, 102); stop-opacity: 1;"/></linearGradient></defs><g><rect x="0" y="422" width="1530" height="56" fill="#000000" stroke="#000000" pointer-events="all" transform="translate(2,3)" opacity="0.25"/><rect x="0" y="422" width="1530" height="56" fill="url(#mx-gradient-e1d5e7-1-8c6c9c-1-s-0)" stroke="#000000" pointer-events="all"/><path d="M -1 421 L -1 444.4 Q 765 461.2 1531 444.4 L 1531 421 Z" fill="url(#mx-gradient-ffffff-0.9-ffffff-0.1-s-0)" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1528px; height: 1px; padding-top: 450px; margin-left: 1px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><h1><font style="font-size: 35px ; font-weight: normal">Nikola Plugin Manager</font></h1></div></div></div></foreignObject><text x="765" y="454" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">Nikola Plugin Manager</text></switch></g><rect x="1548" y="422" width="1001" height="60" fill="#000000" stroke="#000000" pointer-events="all" transform="translate(2,3)" opacity="0.25"/><rect x="1548" y="422" width="1001" height="60" fill="url(#mx-gradient-dae8fc-1-7ea6e0-1-s-0)" stroke="#000000" pointer-events="all"/><path d="M 1547 421 L 1547 446 Q 2048.5 464 2550 446 L 2550 421 Z" fill="url(#mx-gradient-ffffff-0.9-ffffff-0.1-s-0)" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 999px; height: 1px; padding-top: 452px; margin-left: 1549px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><h2><font style="font-size: 31px ; font-weight: normal">doit</font></h2></div></div></div></foreignObject><text x="2049" y="456" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">doit</text></switch></g><rect x="0" y="374" width="1529" height="38" fill="url(#mx-gradient-ffffff-1-ffff33-1-s-0)" stroke="#000000" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1527px; height: 1px; padding-top: 393px; margin-left: 1px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><h3><font style="font-size: 18px">BasePlugin</font></h3></div></div></div></foreignObject><text x="765" y="397" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">BasePlugin</text></switch></g><rect x="1" y="284" width="1526" height="79" fill="#000000" stroke="#000000" pointer-events="all" transform="translate(2,3)" opacity="0.25"/><rect x="1" y="284" width="1526" height="79" fill="url(#mx-gradient-f8cecc-1-66ff66-1-s-0)" stroke="#000000" pointer-events="all"/><path d="M 0 283 L 0 315.6 Q 764 339.3 1528 315.6 L 1528 283 Z" fill="url(#mx-gradient-ffffff-0.9-ffffff-0.1-s-0)" stroke="none" pointer-events="all"/><rect x="160" y="294" width="149" height="30" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 147px; height: 1px; padding-top: 309px; margin-left: 161px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><b><font style="font-size: 13px">Task</font></b></div></div></div></foreignObject><text x="235" y="313" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">Task</text></switch></g><rect x="462" y="294" width="149" height="30" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 147px; height: 1px; padding-top: 309px; margin-left: 463px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><b><font style="font-size: 13px">TemplateSystem</font></b></div></div></div></foreignObject><text x="537" y="313" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">TemplateSystem</text></switch></g><rect x="1368" y="294" width="149" height="30" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 147px; height: 1px; padding-top: 309px; margin-left: 1369px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><b><font style="font-size: 13px">ConfigPlugin</font></b></div></div></div></foreignObject><text x="1443" y="313" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">ConfigPlugin</text></switch></g><rect x="1066" y="294" width="149" height="30" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 147px; height: 1px; padding-top: 309px; margin-left: 1067px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><b><font style="font-size: 13px">MarkdownExtension</font></b></div></div></div></foreignObject><text x="1141" y="313" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">MarkdownExtension</text></switch></g><rect x="912" y="294" width="149" height="30" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 147px; height: 1px; padding-top: 309px; margin-left: 913px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><span style="line-height: 13.8599996566772px"><b><font style="font-size: 13px">TaskMultiplier</font></b></span></div></div></div></foreignObject><text x="987" y="313" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">TaskMultiplier</text></switch></g><rect x="764" y="294" width="143" height="30" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 141px; height: 1px; padding-top: 309px; margin-left: 765px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><b><font style="font-size: 13px">RestExtension</font></b></div></div></div></foreignObject><text x="836" y="313" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">RestExtension</text></switch></g><rect x="1220" y="294" width="143" height="30" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 141px; height: 1px; padding-top: 309px; margin-left: 1221px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><b><font style="font-size: 13px">SignalHandler</font></b></div></div></div></foreignObject><text x="1292" y="313" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">SignalHandler</text></switch></g><rect x="12" y="294" width="143" height="30" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 141px; height: 1px; padding-top: 309px; margin-left: 13px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><b><font style="font-size: 13px">Command</font></b></div></div></div></foreignObject><text x="84" y="313" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">Command</text></switch></g><rect x="314" y="294" width="143" height="30" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 141px; height: 1px; padding-top: 309px; margin-left: 315px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><b><font style="font-size: 13px">LateTask</font></b></div></div></div></foreignObject><text x="386" y="313" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">LateTask</text></switch></g><rect x="616" y="294" width="143" height="30" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 141px; height: 1px; padding-top: 309px; margin-left: 617px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><b><font style="font-size: 13px">PageCompiler</font></b></div></div></div></foreignObject><text x="688" y="313" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">PageCompiler</text></switch></g><rect x="613" y="331" width="295" height="25" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 293px; height: 1px; padding-top: 344px; margin-left: 614px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center; max-height: 21px; overflow: hidden;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><b><font style="font-size: 14px">Plugin Categories</font></b></div></div></div></foreignObject><text x="761" y="347" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">Plugin Categories</text></switch></g><rect x="12" y="106" width="143" height="169" fill="none" stroke="rgb(0, 0, 0)" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 141px; height: 1px; padding-top: 191px; margin-left: 13px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><div style="text-align: left"><br /></div></div></div></div></foreignObject><text x="84" y="194" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
</text></switch></g><rect x="21" y="115" width="129" height="22" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 127px; height: 1px; padding-top: 126px; margin-left: 22px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center; max-height: 18px; overflow: hidden;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><b><font style="font-size: 13px">Commands</font></b><div><br /></div></div></div></div></foreignObject><text x="86" y="130" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">Commands
</text></switch></g><rect x="27" y="137" width="114" height="129" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 112px; height: 1px; padding-top: 202px; margin-left: 28px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center; max-height: 125px; overflow: hidden;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">init<div>install_theme</div><div>new_post</div><div>new_page</div><div>deploy</div><div>serve</div><div>...</div><div><br /></div></div></div></div></foreignObject><text x="84" y="205" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">init...</text></switch></g><rect x="161" y="107" width="143" height="169" fill="none" stroke="rgb(0, 0, 0)" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 141px; height: 1px; padding-top: 192px; margin-left: 162px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><div style="text-align: left"><br /></div></div></div></div></foreignObject><text x="233" y="195" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
</text></switch></g><rect x="172" y="115" width="129" height="22" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 127px; height: 1px; padding-top: 126px; margin-left: 173px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center; max-height: 18px; overflow: hidden;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><b><font style="font-size: 13px">Tasks</font></b></div></div></div></foreignObject><text x="237" y="130" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">Tasks</text></switch></g><rect x="179" y="138" width="114" height="129" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 112px; height: 1px; padding-top: 203px; margin-left: 180px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center; max-height: 125px; overflow: hidden;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><div>archives</div><div>galleries</div><div>indexes</div><div>pages</div><div>posts</div><div>rss</div><div>tags</div><div>...</div></div></div></div></foreignObject><text x="236" y="206" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">archives...</text></switch></g><rect x="480" y="166" width="114" height="55" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 112px; height: 1px; padding-top: 194px; margin-left: 481px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center; max-height: 51px; overflow: hidden;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">jinja<div>mako</div></div></div></div></foreignObject><text x="537" y="197" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">jinja...</text></switch></g><rect x="465" y="106" width="143" height="169" fill="none" stroke="rgb(0, 0, 0)" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 141px; height: 1px; padding-top: 191px; margin-left: 466px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><div style="text-align: left"><br /></div></div></div></div></foreignObject><text x="537" y="194" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
</text></switch></g><rect x="475" y="115" width="129" height="22" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 127px; height: 1px; padding-top: 126px; margin-left: 476px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center; max-height: 18px; overflow: hidden;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><b><font style="font-size: 13px">Template Systems</font></b></div></div></div></foreignObject><text x="540" y="130" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">Template Systems</text></switch></g><rect x="617" y="106" width="143" height="169" fill="none" stroke="rgb(0, 0, 0)" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 141px; height: 1px; padding-top: 191px; margin-left: 618px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><div style="text-align: left">ipynb</div><div style="text-align: left">markdown</div><div style="text-align: left">rest</div><div style="text-align: left">php</div><div style="text-align: left">pandoc</div></div></div></div></foreignObject><text x="689" y="194" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">ipynb...</text></switch></g><rect x="624" y="116" width="129" height="22" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 127px; height: 1px; padding-top: 127px; margin-left: 625px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center; max-height: 18px; overflow: hidden;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><b><font style="font-size: 13px">Page Compilers</font></b></div></div></div></foreignObject><text x="689" y="131" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">Page Compilers</text></switch></g><rect x="1877" y="271" width="544" height="85" fill="none" stroke="#000000" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 542px; height: 1px; padding-top: 314px; margin-left: 1878px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><br /></div></div></div></foreignObject><text x="2149" y="317" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle"></text></switch></g><rect x="1548" y="375" width="320" height="37" fill="url(#mx-gradient-ffffff-1-ff66b3-1-s-0)" stroke="#000000" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 318px; height: 1px; padding-top: 394px; margin-left: 1549px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><font style="font-size: 14px"><b>TaskLoader</b></font></div></div></div></foreignObject><text x="1708" y="397" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">TaskLoader</text></switch></g><rect x="1548" y="330" width="320" height="37" fill="url(#mx-gradient-ffffff-1-ff9933-1-s-0)" stroke="#000000" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 318px; height: 1px; padding-top: 349px; margin-left: 1549px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><font style="font-size: 14px"><b>NikolaTaskLoader</b></font></div></div></div></foreignObject><text x="1708" y="352" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">NikolaTaskLoader</text></switch></g><rect x="1885" y="283" width="128" height="32" fill="url(#mx-gradient-ffffff-1-ff9933-1-s-0)" stroke="#000000" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 126px; height: 1px; padding-top: 299px; margin-left: 1886px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><b><font style="font-size: 14px">Run</font></b></div></div></div></foreignObject><text x="1949" y="303" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">Run</text></switch></g><rect x="2286" y="283" width="128" height="32" fill="url(#mx-gradient-ffffff-1-ffff33-1-s-0)" stroke="#000000" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 126px; height: 1px; padding-top: 299px; margin-left: 2287px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><b><font style="font-size: 14px">Auto</font></b></div></div></div></foreignObject><text x="2350" y="303" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">Auto</text></switch></g><rect x="2153" y="283" width="128" height="32" fill="url(#mx-gradient-ffffff-1-66ff66-1-s-0)" stroke="#000000" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 126px; height: 1px; padding-top: 299px; margin-left: 2154px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><b><font style="font-size: 14px">Help</font></b></div></div></div></foreignObject><text x="2217" y="303" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">Help</text></switch></g><rect x="2020" y="283" width="128" height="32" fill="url(#mx-gradient-ffffff-1-66ffff-1-s-0)" stroke="#000000" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 126px; height: 1px; padding-top: 299px; margin-left: 2021px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><b><font style="font-size: 14px">Clean</font></b></div></div></div></foreignObject><text x="2084" y="303" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">Clean</text></switch></g><rect x="1888" y="311" width="525" height="40" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 523px; height: 1px; padding-top: 331px; margin-left: 1889px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center; max-height: 36px; overflow: hidden;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><h3><b><font style="font-size: 16px">doit Sub Commands</font></b></h3><div><br /></div></div></div></div></foreignObject><text x="2151" y="335" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">doit Sub Commands
</text></switch></g><rect x="1877" y="183" width="544" height="79" fill="none" stroke="#000000" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 542px; height: 1px; padding-top: 223px; margin-left: 1878px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><br /></div></div></div></foreignObject><text x="2149" y="226" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle"></text></switch></g><rect x="1887" y="174" width="525" height="40" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 523px; height: 1px; padding-top: 194px; margin-left: 1888px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center; max-height: 36px; overflow: hidden;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><h3><b><font style="font-size: 16px">Nikola Sub Commands</font></b></h3><div><br /></div></div></div></div></foreignObject><text x="2150" y="198" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">Nikola Sub Commands
</text></switch></g><rect x="1885" y="222" width="128" height="32" fill="url(#mx-gradient-ffffff-1-ff9933-1-s-0)" stroke="#000000" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 126px; height: 1px; padding-top: 238px; margin-left: 1886px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><b><font style="font-size: 14px">Build</font></b></div></div></div></foreignObject><text x="1949" y="242" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">Build</text></switch></g><rect x="2019" y="222" width="128" height="32" fill="url(#mx-gradient-ffffff-1-66ffff-1-s-0)" stroke="#000000" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 126px; height: 1px; padding-top: 238px; margin-left: 2020px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><b><font style="font-size: 14px">Clean</font></b></div></div></div></foreignObject><text x="2083" y="242" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">Clean</text></switch></g><rect x="2153" y="222" width="128" height="32" fill="url(#mx-gradient-ffffff-1-66ff66-1-s-0)" stroke="#000000" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 126px; height: 1px; padding-top: 238px; margin-left: 2154px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><b><font style="font-size: 14px">Help</font></b></div></div></div></foreignObject><text x="2217" y="242" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">Help</text></switch></g><rect x="2286" y="222" width="128" height="32" fill="url(#mx-gradient-ffffff-1-ffff66-1-s-0)" stroke="#000000" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 126px; height: 1px; padding-top: 238px; margin-left: 2287px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><b><font style="font-size: 14px">Auto</font></b></div></div></div></foreignObject><text x="2350" y="242" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">Auto</text></switch></g><rect x="1548" y="147" width="321" height="138" fill="none" stroke="#000000" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 319px; height: 1px; padding-top: 216px; margin-left: 1549px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><br /></div></div></div></foreignObject><text x="1709" y="220" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle"></text></switch></g><rect x="1591" y="119" width="232" height="59" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 230px; height: 1px; padding-top: 149px; margin-left: 1592px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center; max-height: 55px; overflow: hidden;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><b><br /></b><div><div><b><br /></b></div><div><b>default_tasks</b></div></div></div></div></div></foreignObject><text x="1707" y="152" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">default_tasks...</text></switch></g><rect x="1550" y="293" width="318" height="28" fill="none" stroke="#000000" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 316px; height: 1px; padding-top: 307px; margin-left: 1551px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><b><font style="font-size: 14px">load_tasks</font></b></div></div></div></foreignObject><text x="1709" y="311" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">load_tasks</text></switch></g><rect x="1559" y="186" width="138" height="80" fill="none" stroke="#000000" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 136px; height: 1px; padding-top: 226px; margin-left: 1560px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><b>render_site</b><div>Group of tasks to render the site<br /></div></div></div></div></foreignObject><text x="1628" y="230" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">render_site...</text></switch></g><rect x="1711" y="187" width="141" height="79" fill="none" stroke="#000000" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 139px; height: 1px; padding-top: 227px; margin-left: 1712px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><div><b>post_render</b></div>Group of tasks to be executed after site is rendered.</div></div></div></foreignObject><text x="1782" y="230" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">post_renderGroup of tas...</text></switch></g><path d="M 1947.9 221 L 1947.9 38 L 1708.5 38 L 1708.5 140.63" fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="stroke" transform="translate(2,3)" opacity="0.25"/><path d="M 1947.9 221 L 1947.9 38 L 1708.5 38 L 1708.5 140.63" fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="stroke"/><path d="M 1708.5 145.88 L 1705 138.88 L 1708.5 140.63 L 1712 138.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 45px; margin-left: 1813px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); background-color: #ffffff; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;"><h2><b><font style="font-size: 21px" color="#cc0000">executes</font></b></h2><div><br /></div></div></div></div></foreignObject><text x="1813" y="48" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">executes
</text></switch></g><path d="M 1626.03 184.02 L 1626.03 29 L 232.5 29 L 232.5 100.63" fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="stroke" transform="translate(2,3)" opacity="0.25"/><path d="M 1626.03 184.02 L 1626.03 29 L 232.5 29 L 232.5 100.63" fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="stroke"/><path d="M 232.5 105.88 L 229 98.88 L 232.5 100.63 L 236 98.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 29px; margin-left: 955px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); background-color: #ffffff; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;"><h4><font color="#cc0000" style="font-size: 21px">implemented using</font></h4></div></div></div></foreignObject><text x="955" y="32" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">implemented using</text></switch></g><path d="M 1781.5 187 L 1781.5 79 L 385.5 79 L 385.5 287.63" fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="stroke" transform="translate(2,3)" opacity="0.25"/><path d="M 1781.5 187 L 1781.5 79 L 385.5 79 L 385.5 287.63" fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="stroke"/><path d="M 385.5 292.88 L 382 285.88 L 385.5 287.63 L 389 285.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 79px; margin-left: 1101px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); background-color: #ffffff; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;"><h4><font color="#cc0000" style="font-size: 21px">implemented using</font></h4></div></div></div></foreignObject><text x="1101" y="82" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">implemented using</text></switch></g><rect x="2427" y="367" width="120" height="49" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 392px; margin-left: 2428px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><b><font style="font-size: 16px">DoitMain</font></b></div></div></div></foreignObject><text x="2487" y="395" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">DoitMain</text></switch></g><rect x="2427" y="307" width="120" height="49" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 332px; margin-left: 2428px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><b><font style="font-size: 16px">DoitNikola</font></b></div></div></div></foreignObject><text x="2487" y="335" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">DoitNikola</text></switch></g><rect x="1877" y="365" width="543" height="51" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 541px; height: 1px; padding-top: 391px; margin-left: 1878px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><b><font style="font-size: 18px">Command</font></b></div></div></div></foreignObject><text x="2149" y="394" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">Command</text></switch></g><path d="M 84 266 L 84 530 L 2148.5 530 L 2148.5 422.37" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="stroke"/><path d="M 2148.5 417.12 L 2152 424.12 L 2148.5 422.37 L 2145 424.12 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 530px; margin-left: 1146px;"><div style="box-sizing: border-box; font-size: 0px; text-align: center;" data-drawio-colors="color: rgb(0, 0, 0); background-color: #ffffff; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;"><font color="#cc0000" style="font-size: 21px"><b>implemented using</b></font></div></div></div></foreignObject><text x="1146" y="533" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">implemented using</text></switch></g></g><switch><g requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"/><a transform="translate(0,-5)" xlink:href="https://www.drawio.com/doc/faq/svg-export-text-problems" target="_blank"><text text-anchor="middle" font-size="10px" x="50%" y="100%">Text is not SVG - cannot display</text></a></switch></svg>
\ No newline at end of file diff --git a/docs/architecture/nikola-architecture-draw-io.xml b/docs/architecture/nikola-architecture-draw-io.xml index d5aeec7..8909b3c 100644 --- a/docs/architecture/nikola-architecture-draw-io.xml +++ b/docs/architecture/nikola-architecture-draw-io.xml @@ -1 +1,213 @@ -<mxfile type="device"><diagram>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</diagram></mxfile> +<mxfile host="app.diagrams.net" modified="2024-01-10T20:14:23.549Z" agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:121.0) Gecko/20100101 Firefox/121.0" version="22.1.18" etag="x4HqE3g8h-SoqtZgw4K6" type="device"> + <diagram id="0" name="Page-1"> + <mxGraphModel dx="1434" dy="759" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="2800" pageHeight="800" math="0" shadow="0"> + <root> + <mxCell id="0" /> + <mxCell id="1" parent="0" /> + <mxCell id="3" value="<h1><font style="font-size: 35px ; font-weight: normal">Nikola Plugin Manager</font></h1>" style="whiteSpace=wrap;html=1;purple;strokeColor=#000000" parent="1" vertex="1"> + <mxGeometry x="110" y="430" width="1530" height="56" as="geometry" /> + </mxCell> + <mxCell id="4" value="<h2><font style="font-size: 31px ; font-weight: normal">doit</font></h2>" style="whiteSpace=wrap;html=1;blue;strokeColor=#000000" parent="1" vertex="1"> + <mxGeometry x="1658" y="430" width="1001" height="60" as="geometry" /> + </mxCell> + <mxCell id="7" value="<h3><font style="font-size: 18px">BasePlugin</font></h3>" style="whiteSpace=wrap;html=1;fillColor=#FFFF33;gradientColor=#ffffff;gradientDirection=north;strokeColor=#000000" parent="1" vertex="1"> + <mxGeometry x="110" y="382" width="1529" height="38" as="geometry" /> + </mxCell> + <mxCell id="8" value="" style="whiteSpace=wrap;html=1;red;gradientColor=#66FF66;strokeColor=#000000" parent="1" vertex="1"> + <mxGeometry x="111" y="292" width="1526" height="79" as="geometry" /> + </mxCell> + <mxCell id="10" value="<b><font style="font-size: 13px">Task</font></b>" style="whiteSpace=wrap;html=1;" parent="1" vertex="1"> + <mxGeometry x="270" y="302" width="149" height="30" as="geometry" /> + </mxCell> + <mxCell id="11" value="<b><font style="font-size: 13px">TemplateSystem</font></b>" style="whiteSpace=wrap;html=1;" parent="1" vertex="1"> + <mxGeometry x="572" y="302" width="149" height="30" as="geometry" /> + </mxCell> + <mxCell id="15" value="<b><font style="font-size: 13px">ConfigPlugin</font></b>" style="whiteSpace=wrap;html=1;" parent="1" vertex="1"> + <mxGeometry x="1478" y="302" width="149" height="30" as="geometry" /> + </mxCell> + <mxCell id="17" value="<b><font style="font-size: 13px">MarkdownExtension</font></b>" style="whiteSpace=wrap;html=1;" parent="1" vertex="1"> + <mxGeometry x="1176" y="302" width="149" height="30" as="geometry" /> + </mxCell> + <mxCell id="18" value="<span style="line-height: 13.8599996566772px"><b><font style="font-size: 13px">TaskMultiplier</font></b></span>" style="whiteSpace=wrap;html=1;" parent="1" vertex="1"> + <mxGeometry x="1022" y="302" width="149" height="30" as="geometry" /> + </mxCell> + <mxCell id="28" value="<b><font style="font-size: 13px">RestExtension</font></b>" style="whiteSpace=wrap;html=1;" parent="1" vertex="1"> + <mxGeometry x="874" y="302" width="143" height="30" as="geometry" /> + </mxCell> + <mxCell id="29" value="<b><font style="font-size: 13px">SignalHandler</font></b>" style="whiteSpace=wrap;html=1;" parent="1" vertex="1"> + <mxGeometry x="1330" y="302" width="143" height="30" as="geometry" /> + </mxCell> + <mxCell id="30" value="<b><font style="font-size: 13px">Command</font></b>" style="whiteSpace=wrap;html=1;" parent="1" vertex="1"> + <mxGeometry x="122" y="302" width="143" height="30" as="geometry" /> + </mxCell> + <mxCell id="31" value="<b><font style="font-size: 13px">LateTask</font></b>" style="whiteSpace=wrap;html=1;" parent="1" vertex="1"> + <mxGeometry x="424" y="302" width="143" height="30" as="geometry" /> + </mxCell> + <mxCell id="32" value="<b><font style="font-size: 13px">PageCompiler</font></b>" style="whiteSpace=wrap;html=1;" parent="1" vertex="1"> + <mxGeometry x="726" y="302" width="143" height="30" as="geometry" /> + </mxCell> + <mxCell id="33" value="<b><font style="font-size: 14px">Plugin Categories</font></b>" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;overflow=hidden;" parent="1" vertex="1"> + <mxGeometry x="723" y="339" width="295" height="25" as="geometry" /> + </mxCell> + <mxCell id="39" value="<div style="text-align: left"><br></div>" style="whiteSpace=wrap;html=1;fillColor=none;gradientColor=#66FF66" parent="1" vertex="1"> + <mxGeometry x="122" y="114" width="143" height="169" as="geometry" /> + </mxCell> + <mxCell id="40" value="<b><font style="font-size: 13px">Commands</font></b><div><br></div>" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;overflow=hidden;" parent="1" vertex="1"> + <mxGeometry x="131" y="123" width="129" height="22" as="geometry" /> + </mxCell> + <mxCell id="41" value="init<div>install_theme</div><div>new_post</div><div>new_page</div><div>deploy</div><div>serve</div><div>...</div><div><br></div>" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;overflow=hidden;" parent="1" vertex="1"> + <mxGeometry x="137" y="145" width="114" height="129" as="geometry" /> + </mxCell> + <mxCell id="42" value="<div style="text-align: left"><br></div>" style="whiteSpace=wrap;html=1;fillColor=none;gradientColor=#66FF66" parent="1" vertex="1"> + <mxGeometry x="271" y="115" width="143" height="169" as="geometry" /> + </mxCell> + <mxCell id="43" value="<b><font style="font-size: 13px">Tasks</font></b>" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;overflow=hidden;" parent="1" vertex="1"> + <mxGeometry x="282" y="123" width="129" height="22" as="geometry" /> + </mxCell> + <mxCell id="44" value="<div>archives</div><div>galleries</div><div>indexes</div><div>pages</div><div>posts</div><div>rss</div><div>tags</div><div>...</div>" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;overflow=hidden;" parent="1" vertex="1"> + <mxGeometry x="289" y="146" width="114" height="129" as="geometry" /> + </mxCell> + <mxCell id="49" value="jinja<div>mako</div>" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;overflow=hidden;" parent="1" vertex="1"> + <mxGeometry x="590" y="174" width="114" height="55" as="geometry" /> + </mxCell> + <mxCell id="51" value="<div style="text-align: left"><br></div>" style="whiteSpace=wrap;html=1;fillColor=none;gradientColor=#66FF66" parent="1" vertex="1"> + <mxGeometry x="575" y="114" width="143" height="169" as="geometry" /> + </mxCell> + <mxCell id="52" value="<b><font style="font-size: 13px">Template Systems</font></b>" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;overflow=hidden;" parent="1" vertex="1"> + <mxGeometry x="585" y="123" width="129" height="22" as="geometry" /> + </mxCell> + <mxCell id="53" value="<div style="text-align: left">ipynb</div><div style="text-align: left">markdown</div><div style="text-align: left">rest</div><div style="text-align: left">php</div><div style="text-align: left">pandoc</div>" style="whiteSpace=wrap;html=1;fillColor=none;gradientColor=#66FF66" parent="1" vertex="1"> + <mxGeometry x="727" y="114" width="143" height="169" as="geometry" /> + </mxCell> + <mxCell id="54" value="<b><font style="font-size: 13px">Page Compilers</font></b>" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;overflow=hidden;" parent="1" vertex="1"> + <mxGeometry x="734" y="124" width="129" height="22" as="geometry" /> + </mxCell> + <mxCell id="56" value="<br>" style="whiteSpace=wrap;html=1;fillColor=none;gradientColor=#FF9933;strokeColor=#000000" parent="1" vertex="1"> + <mxGeometry x="1987" y="279" width="544" height="85" as="geometry" /> + </mxCell> + <mxCell id="57" value="<font style="font-size: 14px"><b>TaskLoader</b></font>" style="whiteSpace=wrap;html=1;fillColor=#ffffff;gradientColor=#FF66B3;strokeColor=#000000" parent="1" vertex="1"> + <mxGeometry x="1658" y="383" width="320" height="37" as="geometry" /> + </mxCell> + <mxCell id="58" value="<font style="font-size: 14px"><b>NikolaTaskLoader</b></font>" style="whiteSpace=wrap;html=1;fillColor=#ffffff;gradientColor=#FF9933;strokeColor=#000000" parent="1" vertex="1"> + <mxGeometry x="1658" y="338" width="320" height="37" as="geometry" /> + </mxCell> + <mxCell id="59" value="<b><font style="font-size: 14px">Run</font></b>" style="whiteSpace=wrap;html=1;strokeColor=#000000;fillColor=#ffffff;gradientColor=#FF9933" parent="1" vertex="1"> + <mxGeometry x="1995" y="291" width="128" height="32" as="geometry" /> + </mxCell> + <mxCell id="60" value="<b><font style="font-size: 14px">Auto</font></b>" style="whiteSpace=wrap;html=1;strokeColor=#000000;fillColor=#ffffff;gradientColor=#FFFF33" parent="1" vertex="1"> + <mxGeometry x="2396" y="291" width="128" height="32" as="geometry" /> + </mxCell> + <mxCell id="61" value="<b><font style="font-size: 14px">Help</font></b>" style="whiteSpace=wrap;html=1;strokeColor=#000000;fillColor=#ffffff;gradientColor=#66FF66" parent="1" vertex="1"> + <mxGeometry x="2263" y="291" width="128" height="32" as="geometry" /> + </mxCell> + <mxCell id="62" value="<b><font style="font-size: 14px">Clean</font></b>" style="whiteSpace=wrap;html=1;strokeColor=#000000;fillColor=#ffffff;gradientColor=#66FFFF" parent="1" vertex="1"> + <mxGeometry x="2130" y="291" width="128" height="32" as="geometry" /> + </mxCell> + <mxCell id="63" value="<h3><b><font style="font-size: 16px">doit Sub Commands</font></b></h3><div><br></div>" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;overflow=hidden;" parent="1" vertex="1"> + <mxGeometry x="1998" y="319" width="525" height="40" as="geometry" /> + </mxCell> + <mxCell id="64" value="<br>" style="whiteSpace=wrap;html=1;fillColor=none;gradientColor=#FF9933;strokeColor=#000000" parent="1" vertex="1"> + <mxGeometry x="1987" y="191" width="544" height="79" as="geometry" /> + </mxCell> + <mxCell id="65" value="<h3><b><font style="font-size: 16px">Nikola Sub Commands</font></b></h3><div><br></div>" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;overflow=hidden;" parent="1" vertex="1"> + <mxGeometry x="1997" y="182" width="525" height="40" as="geometry" /> + </mxCell> + <mxCell id="66" value="<b><font style="font-size: 14px">Build</font></b>" style="whiteSpace=wrap;html=1;strokeColor=#000000;fillColor=#ffffff;gradientColor=#FF9933" parent="1" vertex="1"> + <mxGeometry x="1995" y="230" width="128" height="32" as="geometry" /> + </mxCell> + <mxCell id="67" value="<b><font style="font-size: 14px">Clean</font></b>" style="whiteSpace=wrap;html=1;strokeColor=#000000;fillColor=#ffffff;gradientColor=#66FFFF" parent="1" vertex="1"> + <mxGeometry x="2129" y="230" width="128" height="32" as="geometry" /> + </mxCell> + <mxCell id="68" value="<b><font style="font-size: 14px">Help</font></b>" style="whiteSpace=wrap;html=1;strokeColor=#000000;fillColor=#ffffff;gradientColor=#66FF66" parent="1" vertex="1"> + <mxGeometry x="2263" y="230" width="128" height="32" as="geometry" /> + </mxCell> + <mxCell id="69" value="<b><font style="font-size: 14px">Auto</font></b>" style="whiteSpace=wrap;html=1;strokeColor=#000000;fillColor=#ffffff;gradientColor=#FFFF66" parent="1" vertex="1"> + <mxGeometry x="2396" y="230" width="128" height="32" as="geometry" /> + </mxCell> + <mxCell id="73" value="<br>" style="whiteSpace=wrap;html=1;fillColor=none;gradientColor=#FF9933;strokeColor=#000000" parent="1" vertex="1"> + <mxGeometry x="1658" y="155" width="321" height="138" as="geometry" /> + </mxCell> + <mxCell id="74" value="<b><br></b><div><div><b><br></b></div><div><b>default_tasks</b></div></div>" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;overflow=hidden;" parent="1" vertex="1"> + <mxGeometry x="1701" y="127" width="232" height="59" as="geometry" /> + </mxCell> + <mxCell id="76" style="edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;exitX=0.5;exitY=0;entryX=0.5;entryY=0" parent="1" source="74" target="74" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="77" value="<b><font style="font-size: 14px">load_tasks</font></b>" style="whiteSpace=wrap;html=1;strokeColor=#000000;fillColor=none;gradientColor=#FFFF66" parent="1" vertex="1"> + <mxGeometry x="1660" y="301" width="318" height="28" as="geometry" /> + </mxCell> + <mxCell id="78" value="<b>render_site</b><div>Group of tasks to render the site<br></div>" style="whiteSpace=wrap;html=1;strokeColor=#000000;fillColor=none;gradientColor=#FFFF66" parent="1" vertex="1"> + <mxGeometry x="1669" y="194" width="138" height="80" as="geometry" /> + </mxCell> + <mxCell id="81" value="<div><b>post_render</b></div>Group of tasks to be executed after site is rendered." style="whiteSpace=wrap;html=1;strokeColor=#000000;fillColor=none;gradientColor=#FFFF66" parent="1" vertex="1"> + <mxGeometry x="1821" y="195" width="141" height="79" as="geometry" /> + </mxCell> + <mxCell id="84" value="" style="edgeStyle=elbowEdgeStyle;elbow=vertical;endArrow=classic;html=1;entryX=0.5;entryY=0;exitX=0.116;exitY=1.175;exitPerimeter=0;rounded=0;startSize=6;shadow=1;sourcePerimeterSpacing=0;strokeColor=#000000;strokeWidth=1;dashed=1" parent="1" source="65" target="73" edge="1"> + <mxGeometry width="100" height="100" relative="1" as="geometry"> + <mxPoint x="1559" y="203" as="sourcePoint" /> + <mxPoint x="1659" y="103" as="targetPoint" /> + <Array as="points"> + <mxPoint x="1942" y="46" /> + </Array> + </mxGeometry> + </mxCell> + <mxCell id="86" value="<h2><b><font color="#cc0000" style="font-size: 21px">executes</font></b></h2><div><br></div>" style="text;html=1;resizable=0;align=center;verticalAlign=middle;labelBackgroundColor=#ffffff;strokeColor=#000000;fillColor=none;gradientColor=#FFFF66" parent="84" connectable="0" vertex="1"> + <mxGeometry x="0.0603" y="3" relative="1" as="geometry"> + <mxPoint x="-36" y="3" as="offset" /> + </mxGeometry> + </mxCell> + <mxCell id="87" value="" style="edgeStyle=elbowEdgeStyle;elbow=horizontal;endArrow=classic;html=1;shadow=1;strokeColor=#000000;exitX=0.151;exitY=1.102;entryX=0.5;entryY=0;flipH=0;flipV=0;exitPerimeter=0;dashed=1;rounded=0" parent="1" source="74" target="42" edge="1"> + <mxGeometry width="100" height="100" relative="1" as="geometry"> + <mxPoint x="770" y="-32" as="sourcePoint" /> + <mxPoint x="50" y="-5" as="targetPoint" /> + <Array as="points"> + <mxPoint x="1040" y="37" /> + </Array> + </mxGeometry> + </mxCell> + <mxCell id="89" value="<h4><font style="font-size: 21px" color="#cc0000">implemented using</font></h4>" style="text;html=1;resizable=0;align=center;verticalAlign=middle;labelBackgroundColor=#ffffff;strokeColor=#000000;fillColor=none;gradientColor=#FFFF66" parent="87" connectable="0" vertex="1"> + <mxGeometry x="0.0163" y="-1" relative="1" as="geometry"> + <mxPoint as="offset" /> + </mxGeometry> + </mxCell> + <mxCell id="91" value="" style="edgeStyle=elbowEdgeStyle;elbow=horizontal;endArrow=classic;html=1;shadow=1;strokeColor=#000000;dashed=1;rounded=0" parent="1" source="81" target="31" edge="1"> + <mxGeometry width="100" height="100" relative="1" as="geometry"> + <mxPoint x="911" y="-105" as="sourcePoint" /> + <mxPoint x="811" y="-5" as="targetPoint" /> + <Array as="points"> + <mxPoint x="1200" y="87" /> + </Array> + </mxGeometry> + </mxCell> + <mxCell id="92" value="<h4><font style="font-size: 21px" color="#cc0000">implemented using</font></h4>" style="text;html=1;resizable=0;align=center;verticalAlign=middle;labelBackgroundColor=#ffffff;strokeColor=#000000;fillColor=none;gradientColor=#FFFF66" parent="91" connectable="0" vertex="1"> + <mxGeometry x="-0.0826" y="1" relative="1" as="geometry"> + <mxPoint y="-2" as="offset" /> + </mxGeometry> + </mxCell> + <mxCell id="93" value="<b><font style="font-size: 16px">DoitMain</font></b>" style="whiteSpace=wrap;html=1;" parent="1" vertex="1"> + <mxGeometry x="2537" y="375" width="120" height="49" as="geometry" /> + </mxCell> + <mxCell id="94" value="<b><font style="font-size: 16px">DoitNikola</font></b>" style="whiteSpace=wrap;html=1;" parent="1" vertex="1"> + <mxGeometry x="2537" y="315" width="120" height="49" as="geometry" /> + </mxCell> + <mxCell id="95" value="<b><font style="font-size: 18px">Command</font></b>" style="whiteSpace=wrap;html=1;" parent="1" vertex="1"> + <mxGeometry x="1987" y="373" width="543" height="51" as="geometry" /> + </mxCell> + <mxCell id="97" value="" style="edgeStyle=elbowEdgeStyle;elbow=horizontal;endArrow=classic;html=1;entryX=0.5;entryY=1;exitX=0.5;exitY=1;dashed=1;rounded=0" parent="1" source="41" target="95" edge="1"> + <mxGeometry width="100" height="100" relative="1" as="geometry"> + <mxPoint x="2137" y="621" as="sourcePoint" /> + <mxPoint x="2237" y="521" as="targetPoint" /> + <Array as="points"> + <mxPoint x="1228" y="538" /> + </Array> + </mxGeometry> + </mxCell> + <mxCell id="98" value="<font style="font-size: 21px" color="#cc0000"><b>implemented using</b></font>" style="text;html=1;resizable=0;align=center;verticalAlign=middle;labelBackgroundColor=#ffffff;" parent="97" connectable="0" vertex="1"> + <mxGeometry x="0.0847" y="-3" relative="1" as="geometry"> + <mxPoint y="-4" as="offset" /> + </mxGeometry> + </mxCell> + </root> + </mxGraphModel> + </diagram> +</mxfile> diff --git a/docs/creating-a-site.rst b/docs/creating-a-site.rst index 6efc855..bfd7a99 100644 --- a/docs/creating-a-site.rst +++ b/docs/creating-a-site.rst @@ -160,7 +160,7 @@ you can use anything you like from it: (on by default) And that's it. You will want to change the NAVIGATION_LINKS option to create a reasonable -menu for your site, you may want to modify the theme (check ``nikola help bootswatch_theme`` +menu for your site, you may want to modify the theme (check ``nikola help subtheme`` for a quick & dirty solution), and you may want to add a blog later on, for company news or whatever. diff --git a/docs/extending.rst b/docs/extending.rst index eead796..abd76e4 100644 --- a/docs/extending.rst +++ b/docs/extending.rst @@ -6,7 +6,7 @@ .. description: .. author: The Nikola Team -:Version: 8.2.3 +:Version: 8.3.0 :Author: Roberto Alsina <ralsina@netmanagers.com.ar> .. class:: alert alert-primary float-md-right @@ -40,41 +40,46 @@ When you run ``nikola --help`` you will see something like this: .. code-block:: console $ nikola help - Nikola is a tool to create static websites and blogs. For full documentation and more - information, please visit https://getnikola.com/ - + Nikola is a tool to create static websites and blogs. + For full documentation and more information, please visit https://getnikola.com/ Available commands: - nikola auto automatically detect site changes, rebuild - and optionally refresh a browser - nikola bootswatch_theme given a swatch name from bootswatch.com and a - parent theme, creates a custom theme - nikola build run tasks - nikola check check links and files in the generated site - nikola clean clean action / remove targets - nikola console start an interactive python console with access to - your site and configuration - nikola deploy deploy the site - nikola dumpdb dump dependency DB - nikola forget clear successful run status from internal DB - nikola help show help - nikola ignore ignore task (skip) on subsequent runs - nikola import_blogger import a blogger dump - nikola import_feed import a RSS/Atom dump - nikola import_wordpress import a WordPress dump - nikola init create a Nikola site in the specified folder - nikola list list tasks from dodo file - nikola mincss apply mincss to the generated site - nikola new_post create a new blog post or site page - nikola run run tasks - nikola serve start the test webserver - nikola strace use strace to list file_deps and targets - nikola theme manage themes - nikola version print the Nikola version number - - nikola help show help / reference - nikola help <command> show command usage - nikola help <task-name> show task usage + nikola auto builds and serves a site; automatically detects site changes, + rebuilds, and optionally refreshes a browser + nikola build run tasks + nikola check check links and files in the generated site + nikola clean clean action / remove targets + nikola console start an interactive Python console with access to your site + nikola default_config Print the default Nikola configuration. + nikola deploy deploy the site + nikola dumpdb dump dependency DB + nikola forget clear successful run status from internal DB + nikola github_deploy deploy the site to GitHub Pages + nikola help show help + nikola ignore ignore task (skip) on subsequent runs + nikola import_wordpress import a WordPress dump + nikola info show info about a task + nikola init create a Nikola site in the specified folder + nikola list list tasks from dodo file + nikola new_page create a new page in the site + nikola new_post create a new blog post or site page + nikola orphans list all orphans + nikola plugin manage plugins + nikola reset-dep recompute and save the state of file dependencies + without executing actions + nikola rst2html compile reStructuredText to HTML files + nikola serve start the test webserver + nikola status display site status + nikola strace use strace to list file_deps and targets + nikola subtheme given a swatch name from bootswatch.com or hackerthemes.com + and a parent theme, creates a custom theme + nikola tabcompletion generate script for tab-completion + nikola theme manage themes + nikola version print the Nikola version number + + nikola help show help / reference + nikola help <command> show command usage + nikola help <task-name> show task usage That will give you a list of all available commands in your version of Nikola. Each and every one of those is a plugin. Let's look at a typical example: @@ -621,10 +626,10 @@ Some (hopefully all) markup compilers support shortcodes in these forms: .. code:: text {{% raw %}}{{% foo %}}{{% /raw %}} # No arguments - {{% raw %}{{% foo bar %}}{{% /raw %}} # One argument, containing "bar" - {{% raw %}{{% foo bar baz=bat %}}{{% /raw %}} # Two arguments, one containing "bar", one called "baz" containing "bat" + {{% raw %}}{{% foo bar %}}{{% /raw %}} # One argument, containing "bar" + {{% raw %}}{{% foo bar baz=bat %}}{{% /raw %}} # Two arguments, one containing "bar", one called "baz" containing "bat" - {{% raw %}{{% foo %}}Some text{{% /foo %}}{{% /raw %}} # one argument called "data" containing "Some text" + {{% raw %}}{{% foo %}}Some text{{% /foo %}}{{% /raw %}} # one argument called "data" containing "Some text" So, if you are creating a plugin that generates markup, it may be a good idea to register it as a shortcode in addition of to restructured text directive or diff --git a/docs/internals.rst b/docs/internals.rst index 6b49e92..a3b7af2 100644 --- a/docs/internals.rst +++ b/docs/internals.rst @@ -15,7 +15,7 @@ So, this is a short document explaining what each piece of Nikola does and how it all fits together. Nikola is a Pile of Plugins - Most of Nikola is implemented as plugins using `Yapsy <http://yapsy.sourceforge.net/>`_. + Most of Nikola is implemented as plugins (using a custom plugin manager inspired by Yapsy). You can ignore that they are plugins and just think of them as regular python modules and packages with a funny little ``.plugin`` file next to them. @@ -44,7 +44,7 @@ The Build Command Nikola's goal is similar, deep at heart, to a Makefile. Take sources, compile them into something, in this case a website. Instead of a Makefile, Nikola uses -`doit <https://pydoit.org>`_ +`doit <https://pydoit.org>`_. Doit has the concept of "tasks". The 1 minute summary of tasks is that they have: @@ -64,7 +64,11 @@ basename:name .. sidebar:: More about tasks If you ever want to do your own tasks, you really should read the doit - `documentation on tasks <https://pydoit.org/tasks.html>`_ + `documentation on tasks <https://pydoit.org/tasks.html>`_. + + Notably, by default doit redirects ``stdout`` and ``stderr``. To get a + proper PDB debugging shell, you need to use doit's own + `set_trace <https://pydoit.org/tools.html#set-trace>`_ function. So, what Nikola does, when you use the build command, is to read the configuration ``conf.py`` from the current folder, instantiate diff --git a/docs/man/nikola.1.gz b/docs/man/nikola.1.gz Binary files differindex c850b70..f24dc1e 100644 --- a/docs/man/nikola.1.gz +++ b/docs/man/nikola.1.gz diff --git a/docs/man/nikola.rst b/docs/man/nikola.rst index 7290887..53c3b9f 100644 --- a/docs/man/nikola.rst +++ b/docs/man/nikola.rst @@ -6,7 +6,7 @@ Nikola A Static Site and Blog Generator -------------------------------- -:Version: Nikola 8.2.3 +:Version: Nikola 8.3.0 :Manual section: 1 :Manual group: User Commands diff --git a/docs/manual.rst b/docs/manual.rst index 1ca7a72..0ddc877 100644 --- a/docs/manual.rst +++ b/docs/manual.rst @@ -7,7 +7,7 @@ .. has_math: true .. author: The Nikola Team -:Version: 8.2.3 +:Version: 8.3.0 .. class:: alert alert-primary float-md-right @@ -1909,6 +1909,7 @@ are probably expecting: comments. Nikola supports several third party comment systems: * `DISQUS <https://disqus.com>`_ +* `Discourse <https://discourse.com>`_ * `IntenseDebate <https://www.intensedebate.com/>`_ * `Muut (Formerly moot) <https://muut.com/>`_ * `Facebook <https://facebook.com/>`_ @@ -1936,6 +1937,7 @@ It is also possible to use a comment system added by a plugin, see the Punycode (if using Internationalized Domain Names) and **have a trailing slash**, default ``http://localhost:8080/``). You can add custom config options via ``GLOBAL_CONTEXT``, e.g., ``GLOBAL_CONTEXT['isso_config'] = {"require-author": "true"}`` + * For Discourse, it's the forum instance (must be world-accessible) and **have a trailing slash**. * For Commento, it's the URL of the commento instance as required by the ``serverUrl`` parameter in commento's documentation. * For Utterances, it's the **repo name** (``"org/user"``) on GitHub whose diff --git a/docs/social_buttons.rst b/docs/social_buttons.rst index f093a70..31c9c03 100644 --- a/docs/social_buttons.rst +++ b/docs/social_buttons.rst @@ -6,7 +6,7 @@ .. description: .. author: The Nikola Team -:Version: 8.2.3 +:Version: 8.3.0 .. class:: alert alert-primary float-md-right diff --git a/docs/sphinx/conf.py b/docs/sphinx/conf.py index 51b3483..44890f5 100644 --- a/docs/sphinx/conf.py +++ b/docs/sphinx/conf.py @@ -48,16 +48,16 @@ master_doc = 'index' # General information about the project. project = 'Nikola' -copyright = '2012-2022, The Nikola Contributors' +copyright = '2012-2024, The Nikola Contributors' # The version info for the project yo're documenting, acts as replacement for # |version| and |release|, also used in various other places throughout the # built documents. # # The short X.Y version. -version = '8.2.3' +version = '8.3.0' # The full version, including alpha/beta/rc tags. -release = '8.2.3' +release = '8.3.0' # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. diff --git a/docs/support.rst b/docs/support.rst index e895bac..cc803f9 100644 --- a/docs/support.rst +++ b/docs/support.rst @@ -4,7 +4,7 @@ .. description: Get help using Nikola, or contact us. .. author: The Nikola Team -:Version: 8.2.3 +:Version: 8.3.0 .. class:: alert alert-primary float-md-right diff --git a/docs/template-variables.rst b/docs/template-variables.rst index 63210c1..2d10f27 100644 --- a/docs/template-variables.rst +++ b/docs/template-variables.rst @@ -3,7 +3,7 @@ .. date: 2017-04-13 12:00:00 .. author: The Nikola Team -:Version: 8.2.3 +:Version: 8.3.0 :Author: Chris Warrick <chris@getnikola.com> Variables available in templates are listed below. diff --git a/docs/theming.rst b/docs/theming.rst index ff10d28..5beecd1 100644 --- a/docs/theming.rst +++ b/docs/theming.rst @@ -6,7 +6,7 @@ .. description: .. author: The Nikola Team -:Version: 8.2.3 +:Version: 8.3.0 :Author: Roberto Alsina <ralsina@netmanagers.com.ar> .. class:: alert alert-primary float-md-right @@ -461,9 +461,8 @@ List of page kinds provided by default plugins: * list, tags_page * post_page * page_page -* story_page +* story_page (alternate/legacy name for page_page) * listing -* generic_page * gallery_front * gallery_page |
