diff --git a/.gitea/workflows/deploy.yaml b/.gitea/workflows/deploy.yaml
index dec8636..9133d3c 100644
--- a/.gitea/workflows/deploy.yaml
+++ b/.gitea/workflows/deploy.yaml
@@ -9,15 +9,13 @@ jobs:
build:
runs-on: hugo-latest
steps:
- - name: Grab packages
- run: apk add rsync openssh-client curl
- uses: actions/checkout@v4
with:
submodules: 'true'
- name: Run build task
run: hugo --minify
- - name: Test static page
- run: bash ${{ gitea.workspace }}/bin/test_static_page.sh
+ - name: pre-compress
+ run: find ./public/* -type f \( -name '*.html' -o -name '*.js' -o -name '*.css' \) -exec gzip -v -k -f --best {} \;
- name: Deploy to Server
uses: easingthemes/ssh-deploy@main
env:
diff --git a/bin/test_static_page.sh b/bin/test_static_page.sh
deleted file mode 100755
index efa9881..0000000
--- a/bin/test_static_page.sh
+++ /dev/null
@@ -1,26 +0,0 @@
-#!/bin/bash
-
-PORT=21300
-python3 -m http.server $PORT --directory public/ &
-SERVER_PID=$!
-
-# Give it a moment to start
-sleep 2
-
-# Check if the server is running
-if [ ! -d "/proc/$SERVER_PID" ]; then
- echo "HTTP server failed to start."
- exit 1
-fi
-
-# Check HTTP status
-status_code=$(curl -o /dev/null -s -w "%{http_code}" http://localhost:$PORT)
-
-# Kill the http server
-kill $SERVER_PID
-
-# Check if status code is 200
-if [ "$status_code" -ne 200 ]; then
- echo "Website returned a non-200 status code: $status_code"
- exit 1
-fi
\ No newline at end of file
diff --git a/static/troll.ttf b/static/troll.ttf
new file mode 100644
index 0000000..5e91ac8
Binary files /dev/null and b/static/troll.ttf differ
diff --git a/themes/terminal/assets/css/buttons.scss b/themes/terminal/assets/css/buttons.scss
deleted file mode 100755
index 2adc317..0000000
--- a/themes/terminal/assets/css/buttons.scss
+++ /dev/null
@@ -1,95 +0,0 @@
-.button-container {
- display: table;
- margin-left: auto;
- margin-right: auto;
-}
-
-button,
-.button,
-a.button {
- position: relative;
- display: flex;
- align-items: center;
- justify-content: center;
- padding: 8px 18px;
- margin-bottom: 5px;
- text-decoration: none;
- text-align: center;
- border-radius: 8;
- border: 1px solid $accent;
- background: $accent;
- color: $background;
- font: inherit;
- font-weight: bold;
- appearance: none;
- cursor: pointer;
- outline: none;
-
- &:hover {
- background: transparentize($accent, .1);
- }
-
- /* variants */
-
- &.outline {
- background: transparent;
- box-shadow: none;
- padding: 8px 18px;
-
- :hover {
- transform: none;
- box-shadow: none;
- }
- }
-
- &.link {
- background: none;
- font-size: 1rem;
- }
-
- /* sizes */
-
- &.small {
- font-size: .8rem;
- }
-
- &.wide {
- min-width: 200px;
- padding: 14px 24px;
- }
-}
-
-a.read-more,
-a.read-more:hover,
-a.read-more:active {
- display: inline-flex;
- border: none;
- color: $accent;
- background: none;
- box-shadow: none;
- padding: 0;
- margin: 20px 0;
- max-width: 100%;
-}
-
-.code-toolbar {
- margin-bottom: 20px;
-
- .toolbar-item a {
- position: relative;
- display: inline-flex;
- align-items: center;
- justify-content: center;
- padding: 3px 8px;
- margin-bottom: 5px;
- text-decoration: none;
- text-align: center;
- font-size: 13px;
- font-weight: 500;
- border-radius: 8px;
- border: 1px solid transparent;
- appearance: none;
- cursor: pointer;
- outline: none;
- }
-}
diff --git a/themes/terminal/assets/css/code.scss b/themes/terminal/assets/css/code.scss
deleted file mode 100755
index 9ac2f6b..0000000
--- a/themes/terminal/assets/css/code.scss
+++ /dev/null
@@ -1,84 +0,0 @@
-.collapsable-code {
- $border-color: mix($accent, #999, 90%);
-
- position: relative;
- width: 100%;
- margin: 40px 0;
-
- input[type="checkbox"] {
- position: absolute;
- visibility: hidden;
- }
-
- input[type="checkbox"]:checked {
- ~ pre,
- ~ .code-toolbar pre {
- height: 0;
- padding: 0;
- border-top: none;
- }
-
- ~ .code-toolbar {
- padding: 0;
- border-top: none;
-
- .toolbar {
- display: none;
- }
- }
-
- ~ label .collapsable-code__toggle:after {
- content: attr(data-label-expand);
- }
- }
-
- label {
- position: relative;
- display: flex;
- justify-content: space-between;
- min-width: 30px;
- min-height: 30px;
- margin: 0;
- border-bottom: 1px solid $border-color;
- cursor: pointer;
- }
-
- &__title {
- flex: 1;
- color: $accent;
- padding: 3px 10px;
- text-overflow: ellipsis;
- white-space: nowrap;
- overflow: hidden;
- }
-
- &__language {
- color: $accent;
- border: 1px solid $border-color;
- border-bottom: none;
- text-transform: uppercase;
- padding: 3px 10px;
- }
-
- &__toggle {
- color: $accent;
- font-size: 16px;
- padding: 3px 10px;
-
- &:after {
- content: attr(data-label-collapse);
- }
- }
-
- pre {
- margin-top: 0;
-
- &::first-line {
- line-height: 0;
- }
- }
-
- .code-toolbar {
- margin: 0;
- }
-}
diff --git a/themes/terminal/assets/css/color/blue.scss b/themes/terminal/assets/css/color/blue.scss
deleted file mode 100755
index 5a3b455..0000000
--- a/themes/terminal/assets/css/color/blue.scss
+++ /dev/null
@@ -1 +0,0 @@
-$accent: #23B0FF;
diff --git a/themes/terminal/assets/css/color/green.scss b/themes/terminal/assets/css/color/green.scss
deleted file mode 100755
index efb853a..0000000
--- a/themes/terminal/assets/css/color/green.scss
+++ /dev/null
@@ -1 +0,0 @@
-$accent: #78E2A0;
diff --git a/themes/terminal/assets/css/color/orange.scss b/themes/terminal/assets/css/color/orange.scss
deleted file mode 100755
index 5a6ab3c..0000000
--- a/themes/terminal/assets/css/color/orange.scss
+++ /dev/null
@@ -1 +0,0 @@
-$accent: #FFA86A;
diff --git a/themes/terminal/assets/css/color/pink.scss b/themes/terminal/assets/css/color/pink.scss
deleted file mode 100755
index fce2e73..0000000
--- a/themes/terminal/assets/css/color/pink.scss
+++ /dev/null
@@ -1 +0,0 @@
-$accent: #EE72F1;
diff --git a/themes/terminal/assets/css/color/red.scss b/themes/terminal/assets/css/color/red.scss
deleted file mode 100755
index 1f9bd6e..0000000
--- a/themes/terminal/assets/css/color/red.scss
+++ /dev/null
@@ -1 +0,0 @@
-$accent: #FF6266;
diff --git a/themes/terminal/assets/css/font.scss b/themes/terminal/assets/css/font.scss
deleted file mode 100755
index aab7249..0000000
--- a/themes/terminal/assets/css/font.scss
+++ /dev/null
@@ -1,15 +0,0 @@
-@font-face {
- font-display: swap;
- font-family: 'Fira Code';
- font-style: normal;
- font-weight: 400;
- src: url("../fonts/FiraCode-Regular.woff") format("woff");
-}
-
-@font-face {
- font-display: swap;
- font-family: 'Fira Code';
- font-style: normal;
- font-weight: 800;
- src: url("../fonts/FiraCode-Bold.woff") format("woff");
-}
diff --git a/themes/terminal/assets/css/footer.scss b/themes/terminal/assets/css/footer.scss
deleted file mode 100755
index d7297b6..0000000
--- a/themes/terminal/assets/css/footer.scss
+++ /dev/null
@@ -1,44 +0,0 @@
-.footer {
- padding: 40px 0;
- flex-grow: 0;
- opacity: .5;
-
- &__inner {
- display: flex;
- align-items: center;
- justify-content: space-between;
- margin: 0;
- width: 760px;
- max-width: 100%;
-
- @media ($tablet) {
- flex-direction: column;
- }
- }
-
- a {
- color: inherit;
- }
-
- .copyright {
- display: flex;
- flex-flow: row wrap;
- flex: 1;
- align-items: center;
- font-size: 1rem;
- justify-content: center;
-
- &--user {
- margin: auto;
- text-align: center;
- }
-
- & > *:first-child:not(:only-child) {
- margin-right: 10px;
- }
-
- span {
- white-space: nowrap;
- }
- }
-}
diff --git a/themes/terminal/assets/css/form.scss b/themes/terminal/assets/css/form.scss
deleted file mode 100755
index 5ce8a04..0000000
--- a/themes/terminal/assets/css/form.scss
+++ /dev/null
@@ -1,30 +0,0 @@
-input, textarea, select {
- background: transparent;
- color: $accent;
- border: 1px solid $accent;
- border-radius: 0;
- padding: 10px;
- font: inherit;
- appearance: none;
-
- &:focus, :active {
- border-color: $color;
- outline: 1px solid $color;
- }
-
- &:active {
- box-shadow: none;
- }
-}
-
-select {
- background: $background;
-
- option {
- background: $background;
- }
-}
-
-::placeholder {
- color: transparentize($accent, .5);
-}
diff --git a/themes/terminal/assets/css/gist.scss b/themes/terminal/assets/css/gist.scss
deleted file mode 100755
index 3ed8145..0000000
--- a/themes/terminal/assets/css/gist.scss
+++ /dev/null
@@ -1,6 +0,0 @@
-body .gist .blob-num /* line numbers */,
-body .gist .blob-code-inner
-{
- border: none;
-}
-
diff --git a/themes/terminal/assets/css/header.scss b/themes/terminal/assets/css/header.scss
deleted file mode 100755
index 61c45a8..0000000
--- a/themes/terminal/assets/css/header.scss
+++ /dev/null
@@ -1,34 +0,0 @@
-.header {
- display: flex;
- flex-direction: column;
- position: relative;
-
- @media print {
- display: none;
- }
-
- &__inner {
- display: flex;
- align-items: center;
- justify-content: space-between;
- }
-
- &__logo {
- display: flex;
- flex: 1;
-
- &:after {
- content: '';
- background: repeating-linear-gradient(90deg, $accent, $accent 2px, transparent 0, transparent 10px);
- display: block;
- width: 100%;
- right: 10px;
- }
-
- a {
- flex: 0 0 auto;
- max-width: 100%;
- text-decoration: none;
- }
- }
-}
diff --git a/themes/terminal/assets/css/logo.scss b/themes/terminal/assets/css/logo.scss
deleted file mode 100755
index 33c7fef..0000000
--- a/themes/terminal/assets/css/logo.scss
+++ /dev/null
@@ -1,8 +0,0 @@
-.logo {
- display: flex;
- align-items: center;
- text-decoration: none;
- background: $accent;
- color: black;
- padding: 5px 10px;
-}
diff --git a/themes/terminal/assets/css/main.scss b/themes/terminal/assets/css/main.scss
deleted file mode 100755
index ae5b87c..0000000
--- a/themes/terminal/assets/css/main.scss
+++ /dev/null
@@ -1,346 +0,0 @@
-html {
- box-sizing: border-box;
-}
-
-*,
-*:before,
-*:after {
- box-sizing: inherit;
-}
-
-body {
- margin: 0;
- padding: 0;
- font-family: 'Courier New', monospace;
- font-size: 1rem;
- line-height: 1.54;
- letter-spacing: -0.02em;
- background-color: $background;
- color: $color;
- text-rendering: optimizeLegibility;
- -webkit-font-smoothing: antialiased;
- font-feature-settings: "liga", "tnum", "zero", "ss01", "locl";
- font-variant-ligatures: contextual;
- -webkit-overflow-scrolling: touch;
- -webkit-text-size-adjust: 100%;
-
- @media ($phone) {
- font-size: 1rem;
- }
-}
-
-.headings--one-size {
- h1,
- h2,
- h3,
- h4,
- h5,
- h6 {
- line-height: 1.3;
-
- &:not(first-child) {
- margin-top: 40px;
- }
- }
-
- h1,
- h2,
- h3 {
- font-size: 1.4rem;
- }
-
- h4,
- h5,
- h6 {
- font-size: 1.2rem;
- }
-}
-
-a {
- color: inherit;
-
- /* Waiting for a better times... */
- /* &:has(code) {
- text-decoration-color: $accent;
- } */
-}
-
-img {
- display: block;
- max-width: 100%;
-
- &.left {
- margin-right: auto;
- }
-
- &.center {
- margin-left: auto;
- margin-right: auto;
- }
-
- &.right {
- margin-left: auto;
- }
-}
-
-p {
- margin-bottom: 20px;
-}
-
-figure {
- display: table;
- max-width: 100%;
- margin: 25px 0;
-
- &.left {
- margin-right: auto;
- }
-
- &.center {
- margin-left: auto;
- margin-right: auto;
- }
-
- &.right {
- margin-left: auto;
- }
-
- figcaption {
- font-size: 14px;
- padding: 5px 10px;
- margin-top: 5px;
- background: $accent;
- color: $background;
- /* opacity: .8; */
-
- &.left {
- text-align: left;
- }
-
- &.center {
- text-align: center;
- }
-
- &.right {
- text-align: right;
- }
- }
-}
-
-code, kbd {
- font-family: 'Fira Code', Monaco, Consolas, Ubuntu Mono, monospace !important;
- font-feature-settings: normal;
- background: transparentize($accent, .8);
- color: $accent;
- padding: 1px 6px;
- margin: 0 2px;
- font-size: .95rem;
-
- code, kbd {
- background: transparent;
- padding: 0;
- margin: 0;
- }
-}
-
-pre {
- background: transparent !important;
- padding: 20px 10px;
- margin: 40px 0;
- font-size: .95rem !important;
- overflow: auto;
- border-top: 1px solid rgba(255, 255, 255, .1);
- border-bottom: 1px solid rgba(255, 255, 255, .1);
-
- + pre {
- border-top: 0;
- margin-top: -40px;
- }
-
- @media ($phone) {
- white-space: pre-wrap;
- word-wrap: break-word;
- }
-
- code {
- background: none !important;
- margin: 0;
- padding: 0;
- font-size: inherit;
- border: none;
- }
-}
-
-blockquote {
- border-top: 1px solid $accent;
- border-bottom: 1px solid $accent;
- margin: 40px 0;
- padding: 25px;
-
- @media ($phone) {
- padding-right: 0;
- }
-
- p:first-of-type {
- margin-top: 0;
- }
-
- p:last-of-type {
- margin-bottom: 0;
- }
-
- p {
- position: relative;
- }
-
- p:first-of-type:before {
- content: '>';
- display: block;
- position: absolute;
- left: -25px;
- color: $accent;
- }
-
- &.twitter-tweet {
- position: relative;
- background: transparentize($accent, .9);
- font: inherit;
- color: inherit;
- border: 1px solid $accent;
- padding-top: 60px;
-
- p:before {
- content: '';
- }
-
- &:before {
- content: '> From Twitter:';
- position: absolute;
- top: 20px;
- color: $accent;
- font-weight: bold;
- }
-
- a {
- color: $accent;
- }
- }
-}
-
-table {
- table-layout: auto;
- border-collapse: collapse;
- width: 100%;
- margin: 40px 0;
-}
-
-table,
-th,
-td {
- border: 1px dashed $accent;
- padding: 10px;
-}
-
-th {
- color: $accent;
-}
-
-ul,
-ol {
- margin-left: 22px;
- padding: 0;
-
- li {
- position: relative;
- }
-
- @media ($phone) {
- margin-left: 20px;
- }
-}
-
-ol {
- list-style: none;
- counter-reset: li;
-
- li {
- counter-increment: li;
- }
-
- li:before {
- content: counter(li);
- position: absolute;
- right: calc(100% + 10px);
- color: $accent;
- display: inline-block;
- text-align: right;
- }
-
- ol {
- margin-left: 38px;
-
- li {
- counter-increment: li;
- }
-
- li:before {
- content: counters(li, ".") " ";
- }
- }
-}
-
-mark {
- background: $accent;
- color: $background;
-}
-
-.container {
- display: flex;
- flex-direction: column;
- padding: 40px;
- max-width: 864px;
- min-height: 100vh;
- border-right: 1px solid rgba(255, 255, 255, 0.1);
-
- &.full,
- &.center {
- border: none;
- margin: 0 auto;
- }
-
- &.full {
- max-width: 100%;
- }
-
- @media ($phone) {
- padding: 20px;
- }
-
- @media print {
- display: initial;
- }
-}
-
-.content {
- display: flex;
- flex-direction: column;
-
- @media print {
- display: initial;
- }
-}
-
-hr {
- width: 100%;
- border: none;
- background: $border-color;
- height: 1px;
-}
-
-.hidden {
- display: none;
-}
-
-sup {
- line-height: 0;
-}
diff --git a/themes/terminal/assets/css/menu.scss b/themes/terminal/assets/css/menu.scss
deleted file mode 100755
index fdd3075..0000000
--- a/themes/terminal/assets/css/menu.scss
+++ /dev/null
@@ -1,157 +0,0 @@
-@mixin menu {
- display: none;
- flex-direction: column;
- $shadow-color: transparentize($background, .2);
- $shadow: 0 10px $shadow-color, -10px 10px $shadow-color, 10px 10px $shadow-color;
- position: absolute;
- background: $background;
- box-shadow: $shadow;
- color: white;
- border: 2px solid;
- margin: 0;
- padding: 10px;
- top: 10px;
- left: 0;
- list-style: none;
- z-index: 99;
-}
-
-@mixin header-menu-trigger {
- color: $accent;
- border: 2px solid;
- margin-left: 10px;
- height: 100%;
- padding: 3px 8px;
- margin-bottom: 0 !important;
- position: relative;
- cursor: pointer;
-}
-
-.navigation-menu {
- display: flex;
- align-items: flex-start;
- justify-content: space-between;
- margin: 20px 1px;
-
- @media ($phone) {
- margin: 0;
- }
-
- &__inner {
- display: flex;
- flex: 1;
- flex-wrap: wrap;
- list-style: none;
- margin: 0;
- padding: 0;
-
- > li {
- flex: 0 0 auto;
- margin-bottom: 10px;
- white-space: nowrap;
-
- &:not(:last-of-type) {
- margin-right: 20px;
- }
- }
-
- @media ($phone) {
- flex-direction: column;
- align-items: flex-start;
- padding: 0;
-
- li {
- margin: 0;
- padding: 5px;
- }
- }
- }
-
- .spacer {
- flex-grow: 1 !important;
- }
-}
-
-.menu {
- display: flex;
- flex-direction: column;
- position: relative;
- list-style: none;
- padding: 0;
- margin: 0;
-
- &__trigger {
- margin-right: 0 !important;
- color: $accent;
- user-select: none;
- cursor: pointer;
- }
-
- &__dropdown {
- @include menu;
-
- .open & {
- display: flex;
- }
-
- > li {
- flex: 0 0 auto;
-
- &:not(:last-of-type) {
- margin-bottom: 10px;
- }
-
- a {
- display: flex;
- padding: 5px;
- }
- }
- }
-
- &--desktop {
- @media ($phone) {
- display: none
- }
- }
-
- &--mobile {
- .menu__trigger {
- @include header-menu-trigger;
- display: none;
-
- @media ($phone) {
- display: block;
- }
- }
-
- .menu__dropdown {
- @media ($phone) {
- left: auto;
- right: 0;
- }
- }
-
- li {
- flex: 0 0 auto;
-
- &:not(:last-of-type) {
- margin-bottom: 10px;
- }
- }
- }
-
- &--language-selector {
- .menu__trigger {
- @include header-menu-trigger;
-
- @media ($phone) {
- display: none;
- }
- }
-
- .menu__dropdown {
- left: auto;
- right: 0;
- }
- }
-}
diff --git a/themes/terminal/assets/css/pagination.scss b/themes/terminal/assets/css/pagination.scss
deleted file mode 100755
index c65efcb..0000000
--- a/themes/terminal/assets/css/pagination.scss
+++ /dev/null
@@ -1,87 +0,0 @@
-.pagination {
- margin-top: 50px;
-
- @media print {
- display: none;
- }
-
- &__title {
- display: flex;
- text-align: center;
- position: relative;
- margin: 100px 0 20px;
-
- &-h {
- text-align: center;
- margin: 0 auto;
- padding: 5px 10px;
- background: $background;
- color: transparentize($color, .7);
- font-size: .8rem;
- text-transform: uppercase;
- text-decoration: none;
- letter-spacing: .1em;
- z-index: 1;
- }
-
- hr {
- position: absolute;
- left: 0;
- right: 0;
- width: 100%;
- margin-top: 15px;
- z-index: 0;
- }
- }
-
- &__buttons {
- display: flex;
- align-items: center;
- justify-content: center;
- flex-flow: row wrap;
- gap: 10px;
-
- a {
- text-decoration: none;
- }
- }
-}
-
-.button {
- position: relative;
- display: inline-flex;
- align-items: center;
- justify-content: center;
- font-size: 1rem;
- padding: 0;
- appearance: none;
-
- @media($phone) {
- flex: 1;
- }
-
- a {
- display: flex;
- justify-content: center;
- flex: 1;
- padding: 8px 16px;
- text-decoration: none;
- text-overflow: ellipsis;
- white-space: nowrap;
- overflow: hidden;
- }
-
- &__text {
- text-overflow: ellipsis;
- white-space: nowrap;
- overflow: hidden;
- }
-
- &.next .button__icon {
- margin-left: 8px;
- }
-
- &.previous .button__icon {
- margin-right: 8px;
- }
-}
diff --git a/themes/terminal/assets/css/post.scss b/themes/terminal/assets/css/post.scss
deleted file mode 100755
index 223139b..0000000
--- a/themes/terminal/assets/css/post.scss
+++ /dev/null
@@ -1,128 +0,0 @@
-.index-content {
- margin-top: 20px;
-}
-
-.framed {
- border: 1px solid $accent;
- padding: 20px;
-
- *:first-child {
- margin-top: 0;
- }
-
- *:last-child {
- margin-bottom: 0;
- }
-}
-
-.posts {
- width: 100%;
-}
-
-.post {
- width: 100%;
- text-align: left;
- margin: 20px auto;
- padding: 20px 0;
-
- &:not(:last-of-type) {
- border-bottom: 1px solid $border-color;
- }
-
- &-meta {
- font-size: 1rem;
- margin-bottom: 10px;
- color: transparentize($accent, .3);
- }
-
- &-title {
- $border: 3px dotted $accent;
- position: relative;
- color: $accent;
- margin: 0 0 15px;
- padding-bottom: 15px;
- border-bottom: $border;
-
- &:after {
- content: '';
- position: absolute;
- bottom: 2px;
- display: block;
- width: 100%;
- border-bottom: $border;
- }
-
- a {
- text-decoration: none;
- }
- }
-
- &-tags {
- display: block;
- margin-bottom: 20px;
- font-size: 1rem;
- opacity: .5;
-
- a {
- text-decoration: none;
- }
- }
-
- &-content {
- margin-top: 30px;
- }
-
- &-cover {
- border: 20px solid $accent;
- background: transparent;
- margin: 40px 0;
- padding: 20px;
-
- @media ($phone) {
- padding: 10px;
- border-width: 10px;
- }
- }
-
- ul {
- list-style: none;
-
- li:not(:empty):before {
- content: '-';
- position: absolute;
- left: -20px;
- color: $accent;
- }
- }
-}
-
-.post--regulation {
- h1 {
- justify-content: center;
- }
-
- h2 {
- justify-content: center;
- margin-bottom: 10px;
-
- & + h2 {
- margin-top: -10px;
- margin-bottom: 20px;
- }
- }
-}
-
-.hanchor {
- color: transparentize($accent, .1);
- text-decoration: none;
- margin-left: 10px;
- visibility: hidden;
-}
-
-h1:hover a, h2:hover a, h3:hover a, h4:hover a {
- visibility: visible;
-}
-
-.footnotes {
- color: transparentize($color, .5);
-}
diff --git a/themes/terminal/assets/css/prism.scss b/themes/terminal/assets/css/prism.scss
deleted file mode 100755
index e4268ae..0000000
--- a/themes/terminal/assets/css/prism.scss
+++ /dev/null
@@ -1,336 +0,0 @@
-/* PrismJS 1.24.1
-https://prismjs.com/download.html#themes=prism-tomorrow&languages=markup+css+clike+javascript+actionscript+apacheconf+applescript+bash+c+csharp+cpp+cmake+coffeescript+csp+css-extras+diff+django+docker+elixir+elm+erlang+fsharp+flow+git+go+graphql+haml+handlebars+haskell+http+java+json+kotlin+latex+less+llvm+makefile+markdown+markup-templating+nasm+objectivec+ocaml+perl+php+php-extras+powershell+processing+pug+python+r+jsx+tsx+reason+ruby+rust+sass+scss+scala+scheme+sql+stylus+swift+textile+toml+twig+typescript+vim+visual-basic+wasm+yaml&plugins=line-highlight+line-numbers+jsonp-highlight+highlight-keywords+command-line+toolbar+copy-to-clipboard */
-/**
- * prism.js tomorrow night eighties for JavaScript, CoffeeScript, CSS and HTML
- * Based on https://github.com/chriskempson/tomorrow-theme
- * @author Rose Pritchard
- */
-
-code[class*="language-"],
-pre[class*="language-"] {
- color: #ccc;
- background: none;
- font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;
- font-size: 1em;
- text-align: left;
- white-space: pre;
- word-spacing: normal;
- word-break: normal;
- word-wrap: normal;
- line-height: 1.5;
-
- -moz-tab-size: 4;
- -o-tab-size: 4;
- tab-size: 4;
-
- -webkit-hyphens: none;
- -moz-hyphens: none;
- -ms-hyphens: none;
- hyphens: none;
-
-}
-
-/* Code blocks */
-pre[class*="language-"] {
- padding: 1em;
- margin: .5em 0;
- overflow: auto;
-}
-
-:not(pre) > code[class*="language-"],
-pre[class*="language-"] {
- background: #2d2d2d;
-}
-
-/* Inline code */
-:not(pre) > code[class*="language-"] {
- padding: .1em;
- border-radius: .3em;
- white-space: normal;
-}
-
-.token.comment,
-.token.block-comment,
-.token.prolog,
-.token.doctype,
-.token.cdata {
- color: #999;
-}
-
-.token.punctuation {
- color: #ccc;
-}
-
-.token.tag,
-.token.attr-name,
-.token.namespace,
-.token.deleted {
- color: #e2777a;
-}
-
-.token.function-name {
- color: #6196cc;
-}
-
-.token.boolean,
-.token.number,
-.token.function {
- color: #f08d49;
-}
-
-.token.property,
-.token.class-name,
-.token.constant,
-.token.symbol {
- color: #f8c555;
-}
-
-.token.selector,
-.token.important,
-.token.atrule,
-.token.keyword,
-.token.builtin {
- color: #cc99cd;
-}
-
-.token.string,
-.token.char,
-.token.attr-value,
-.token.regex,
-.token.variable {
- color: #7ec699;
-}
-
-.token.operator,
-.token.entity,
-.token.url {
- color: #67cdcc;
-}
-
-.token.important,
-.token.bold {
- font-weight: bold;
-}
-.token.italic {
- font-style: italic;
-}
-
-.token.entity {
- cursor: help;
-}
-
-.token.inserted {
- color: green;
-}
-
-pre[data-line] {
- position: relative;
- padding: 1em 0 1em 3em;
-}
-
-.line-highlight {
- position: absolute;
- left: 0;
- right: 0;
- padding: inherit 0;
- margin-top: 1em; /* Same as .prism’s padding-top */
-
- background: hsla(24, 20%, 50%,.08);
- background: linear-gradient(to right, hsla(24, 20%, 50%,.1) 70%, hsla(24, 20%, 50%,0));
-
- pointer-events: none;
-
- line-height: inherit;
- white-space: pre;
-}
-
-@media print {
- .line-highlight {
- /*
- * This will prevent browsers from replacing the background color with white.
- * It's necessary because the element is layered on top of the displayed code.
- */
- -webkit-print-color-adjust: exact;
- color-adjust: exact;
- }
-}
-
- .line-highlight:before,
- .line-highlight[data-end]:after {
- content: attr(data-start);
- position: absolute;
- top: .4em;
- left: .6em;
- min-width: 1em;
- padding: 0 .5em;
- background-color: hsla(24, 20%, 50%,.4);
- color: hsl(24, 20%, 95%);
- font: bold 65%/1.5 sans-serif;
- text-align: center;
- vertical-align: .3em;
- border-radius: 999px;
- text-shadow: none;
- box-shadow: 0 1px white;
- }
-
- .line-highlight[data-end]:after {
- content: attr(data-end);
- top: auto;
- bottom: .4em;
- }
-
-.line-numbers .line-highlight:before,
-.line-numbers .line-highlight:after {
- content: none;
-}
-
-pre[id].linkable-line-numbers span.line-numbers-rows {
- pointer-events: all;
-}
-pre[id].linkable-line-numbers span.line-numbers-rows > span:before {
- cursor: pointer;
-}
-pre[id].linkable-line-numbers span.line-numbers-rows > span:hover:before {
- background-color: rgba(128, 128, 128, .2);
-}
-
-pre[class*="language-"].line-numbers {
- position: relative;
- padding-left: 3.8em;
- counter-reset: linenumber;
-}
-
-pre[class*="language-"].line-numbers > code {
- position: relative;
- white-space: inherit;
-}
-
-.line-numbers .line-numbers-rows {
- position: absolute;
- pointer-events: none;
- top: 0;
- font-size: 100%;
- left: -3.8em;
- width: 3em; /* works for line-numbers below 1000 lines */
- letter-spacing: -1px;
- border-right: 1px solid #999;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- -ms-user-select: none;
- user-select: none;
-
-}
-
- .line-numbers-rows > span {
- display: block;
- counter-increment: linenumber;
- }
-
- .line-numbers-rows > span:before {
- content: counter(linenumber);
- color: #999;
- display: block;
- padding-right: 0.8em;
- text-align: right;
- }
-
-.command-line-prompt {
- border-right: 1px solid #999;
- display: block;
- float: left;
- font-size: 100%;
- letter-spacing: -1px;
- margin-right: 1em;
- pointer-events: none;
-
- -webkit-user-select: none;
- -moz-user-select: none;
- -ms-user-select: none;
- user-select: none;
-}
-
-.command-line-prompt > span:before {
- color: #999;
- content: ' ';
- display: block;
- padding-right: 0.8em;
-}
-
-.command-line-prompt > span[data-user]:before {
- content: "[" attr(data-user) "@" attr(data-host) "] $";
-}
-
-.command-line-prompt > span[data-user="root"]:before {
- content: "[" attr(data-user) "@" attr(data-host) "] #";
-}
-
-.command-line-prompt > span[data-prompt]:before {
- content: attr(data-prompt);
-}
-
-div.code-toolbar {
- position: relative;
-}
-
-div.code-toolbar > .toolbar {
- position: absolute;
- top: .3em;
- right: .2em;
- transition: opacity 0.3s ease-in-out;
- opacity: 0;
-}
-
-div.code-toolbar:hover > .toolbar {
- opacity: 1;
-}
-
-/* Separate line b/c rules are thrown out if selector is invalid.
- IE11 and old Edge versions don't support :focus-within. */
-div.code-toolbar:focus-within > .toolbar {
- opacity: 1;
-}
-
-div.code-toolbar > .toolbar > .toolbar-item {
- display: inline-block;
-}
-
-div.code-toolbar > .toolbar > .toolbar-item > a {
- cursor: pointer;
-}
-
-div.code-toolbar > .toolbar > .toolbar-item > button {
- background: none;
- border: 0;
- color: inherit;
- font: inherit;
- line-height: normal;
- overflow: visible;
- padding: 0;
- -webkit-user-select: none; /* for button */
- -moz-user-select: none;
- -ms-user-select: none;
-}
-
-div.code-toolbar > .toolbar > .toolbar-item > a,
-div.code-toolbar > .toolbar > .toolbar-item > button,
-div.code-toolbar > .toolbar > .toolbar-item > span {
- color: #bbb;
- font-size: .8em;
- padding: 0 .5em;
- background: #f5f2f0;
- background: rgba(224, 224, 224, 0.2);
- box-shadow: 0 2px 0 0 rgba(0,0,0,0.2);
- border-radius: .5em;
-}
-
-div.code-toolbar > .toolbar > .toolbar-item > a:hover,
-div.code-toolbar > .toolbar > .toolbar-item > a:focus,
-div.code-toolbar > .toolbar > .toolbar-item > button:hover,
-div.code-toolbar > .toolbar > .toolbar-item > button:focus,
-div.code-toolbar > .toolbar > .toolbar-item > span:hover,
-div.code-toolbar > .toolbar > .toolbar-item > span:focus {
- color: inherit;
- text-decoration: none;
-}
-
diff --git a/themes/terminal/assets/css/style.scss b/themes/terminal/assets/css/style.scss
deleted file mode 100755
index f32f759..0000000
--- a/themes/terminal/assets/css/style.scss
+++ /dev/null
@@ -1,19 +0,0 @@
-@import "variables";
-
-@import "font";
-@import "buttons";
-@import "form";
-
-@import "header";
-@import "menu";
-@import "logo";
-@import "main";
-@import "post";
-@import "pagination";
-@import "footer";
-
-@import "prism";
-@import "syntax";
-@import "code";
-@import "terms";
-@import "gist";
diff --git a/themes/terminal/assets/css/styles.css b/themes/terminal/assets/css/styles.css
new file mode 100644
index 0000000..c59fea0
--- /dev/null
+++ b/themes/terminal/assets/css/styles.css
@@ -0,0 +1,1336 @@
+:root {
+ --phoneWidth: (max-width: 684px);
+ --tabletWidth: (max-width: 900px);
+}
+
+@font-face {
+ font-family: 'Troll';
+ src: url('/troll.ttf');
+}
+
+.button-container {
+ display: table;
+ margin-left: auto;
+ margin-right: auto;
+}
+button,
+.button,
+a.button {
+ position: relative;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ padding: 8px 18px;
+ margin-bottom: 5px;
+ text-decoration: none;
+ text-align: center;
+ border-radius: 8;
+ border: 1px solid #ee72f1;
+ background: #ee72f1;
+ color: #21202c;
+ font: inherit;
+ font-weight: bold;
+ appearance: none;
+ cursor: pointer;
+ outline: none;
+}
+button:hover,
+.button:hover,
+a.button:hover {
+ background: rgba(238, 114, 241, 0.9);
+}
+button.outline,
+.button.outline,
+a.button.outline {
+ background: transparent;
+ box-shadow: none;
+ padding: 8px 18px;
+}
+button.outline :hover,
+.button.outline :hover,
+a.button.outline :hover {
+ transform: none;
+ box-shadow: none;
+}
+button.link,
+.button.link,
+a.button.link {
+ background: none;
+ font-size: 1rem;
+}
+button.small,
+.button.small,
+a.button.small {
+ font-size: 0.8rem;
+}
+button.wide,
+.button.wide,
+a.button.wide {
+ min-width: 200px;
+ padding: 14px 24px;
+}
+a.read-more,
+a.read-more:hover,
+a.read-more:active {
+ display: inline-flex;
+ border: none;
+ color: #ee72f1;
+ background: none;
+ box-shadow: none;
+ padding: 0;
+ margin: 20px 0;
+ max-width: 100%;
+}
+.code-toolbar {
+ margin-bottom: 20px;
+}
+.code-toolbar .toolbar-item a {
+ position: relative;
+ display: inline-flex;
+ align-items: center;
+ justify-content: center;
+ padding: 3px 8px;
+ margin-bottom: 5px;
+ text-decoration: none;
+ text-align: center;
+ font-size: 13px;
+ font-weight: 500;
+ border-radius: 8px;
+ border: 1px solid transparent;
+ appearance: none;
+ cursor: pointer;
+ outline: none;
+}
+input,
+textarea,
+select {
+ background: transparent;
+ color: #ee72f1;
+ border: 1px solid #ee72f1;
+ border-radius: 0;
+ padding: 10px;
+ font: inherit;
+ appearance: none;
+}
+input:focus,
+input :active,
+textarea:focus,
+textarea :active,
+select:focus,
+select :active {
+ border-color: #fff;
+ outline: 1px solid #fff;
+}
+input:active,
+textarea:active,
+select:active {
+ box-shadow: none;
+}
+select {
+ background: #21202c;
+}
+select option {
+ background: #21202c;
+}
+::placeholder {
+ color: rgba(238, 114, 241, 0.5);
+}
+.header {
+ display: flex;
+ flex-direction: column;
+ position: relative;
+}
+@media print {
+ .header {
+ display: none;
+ }
+}
+.header__inner {
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+}
+.header__logo {
+ display: flex;
+ flex: 1;
+}
+.header__logo:after {
+ content: "";
+ background: repeating-linear-gradient(
+ 90deg,
+ #ee72f1,
+ #ee72f1 2px,
+ transparent 0,
+ transparent 10px
+ );
+ display: block;
+ width: 100%;
+ right: 10px;
+}
+.header__logo a {
+ flex: 0 0 auto;
+ max-width: 100%;
+ text-decoration: none;
+}
+.navigation-menu {
+ display: flex;
+ align-items: flex-start;
+ justify-content: space-between;
+ margin: 20px 1px;
+}
+@media (max-width: 684px) {
+ .navigation-menu {
+ margin: 0;
+ }
+}
+.navigation-menu__inner {
+ display: flex;
+ flex: 1;
+ flex-wrap: wrap;
+ list-style: none;
+ margin: 0;
+ padding: 0;
+}
+.navigation-menu__inner > li {
+ flex: 0 0 auto;
+ margin-bottom: 10px;
+ white-space: nowrap;
+}
+.navigation-menu__inner > li:not(:last-of-type) {
+ margin-right: 20px;
+}
+@media (max-width: 684px) {
+ .navigation-menu__inner {
+ flex-direction: column;
+ align-items: flex-start;
+ padding: 0;
+ }
+ .navigation-menu__inner li {
+ margin: 0;
+ padding: 5px;
+ }
+}
+.navigation-menu .spacer {
+ flex-grow: 1 !important;
+}
+.menu {
+ display: flex;
+ flex-direction: column;
+ position: relative;
+ list-style: none;
+ padding: 0;
+ margin: 0;
+}
+.menu__trigger {
+ margin-right: 0 !important;
+ color: #ee72f1;
+ user-select: none;
+ cursor: pointer;
+}
+.menu__dropdown {
+ display: none;
+ flex-direction: column;
+ position: absolute;
+ background: #21202c;
+ box-shadow: 0 10px rgba(33, 32, 44, 0.8), -10px 10px rgba(33, 32, 44, 0.8),
+ 10px 10px rgba(33, 32, 44, 0.8);
+ color: white;
+ border: 2px solid;
+ margin: 0;
+ padding: 10px;
+ top: 10px;
+ left: 0;
+ list-style: none;
+ z-index: 99;
+}
+.open .menu__dropdown {
+ display: flex;
+}
+.menu__dropdown > li {
+ flex: 0 0 auto;
+}
+.menu__dropdown > li:not(:last-of-type) {
+ margin-bottom: 10px;
+}
+.menu__dropdown > li a {
+ display: flex;
+ padding: 5px;
+}
+@media (max-width: 684px) {
+ .menu--desktop {
+ display: none;
+ }
+}
+.menu--mobile .menu__trigger {
+ color: #ee72f1;
+ border: 2px solid;
+ margin-left: 10px;
+ height: 100%;
+ padding: 3px 8px;
+ margin-bottom: 0 !important;
+ position: relative;
+ cursor: pointer;
+ display: none;
+}
+@media (max-width: 684px) {
+ .menu--mobile .menu__trigger {
+ display: block;
+ }
+}
+@media (max-width: 684px) {
+ .menu--mobile .menu__dropdown {
+ left: auto;
+ right: 0;
+ }
+}
+.menu--mobile li {
+ flex: 0 0 auto;
+}
+.menu--mobile li:not(:last-of-type) {
+ margin-bottom: 10px;
+}
+.menu--language-selector .menu__trigger {
+ color: #ee72f1;
+ border: 2px solid;
+ margin-left: 10px;
+ height: 100%;
+ padding: 3px 8px;
+ margin-bottom: 0 !important;
+ position: relative;
+ cursor: pointer;
+}
+@media (max-width: 684px) {
+ .menu--language-selector .menu__trigger {
+ display: none;
+ }
+}
+.menu--language-selector .menu__dropdown {
+ left: auto;
+ right: 0;
+}
+.logo {
+ display: flex;
+ align-items: center;
+ text-decoration: none;
+ background: #ee72f1;
+ color: black;
+ padding: 5px 10px;
+ font-size: 24px;
+ font-weight: 600;
+ font-family: 'Troll' !important;
+}
+html {
+ box-sizing: border-box;
+}
+*,
+*:before,
+*:after {
+ box-sizing: inherit;
+}
+body {
+ margin: 0;
+ padding: 0;
+ font-family: "Courier New", monospace;
+ font-size: 1rem;
+ line-height: 1.54;
+ letter-spacing: -0.02em;
+ background-color: #21202c;
+ color: #fff;
+ text-rendering: optimizeLegibility;
+ -webkit-font-smoothing: antialiased;
+ font-feature-settings: "liga", "tnum", "zero", "ss01", "locl";
+ font-variant-ligatures: contextual;
+ -webkit-overflow-scrolling: touch;
+ -webkit-text-size-adjust: 100%;
+}
+@media (max-width: 684px) {
+ body {
+ font-size: 1rem;
+ }
+}
+.headings--one-size h1,
+.headings--one-size h2,
+.headings--one-size h3,
+.headings--one-size h4,
+.headings--one-size h5,
+.headings--one-size h6 {
+ line-height: 1.3;
+}
+.headings--one-size h1:not(first-child),
+.headings--one-size h2:not(first-child),
+.headings--one-size h3:not(first-child),
+.headings--one-size h4:not(first-child),
+.headings--one-size h5:not(first-child),
+.headings--one-size h6:not(first-child) {
+ margin-top: 40px;
+}
+.headings--one-size h1,
+.headings--one-size h2,
+.headings--one-size h3 {
+ font-size: 1.4rem;
+}
+.headings--one-size h4,
+.headings--one-size h5,
+.headings--one-size h6 {
+ font-size: 1.2rem;
+}
+a {
+ color: inherit;
+}
+img {
+ display: block;
+ max-width: 100%;
+}
+img.left {
+ margin-right: auto;
+}
+img.center {
+ margin-left: auto;
+ margin-right: auto;
+}
+img.right {
+ margin-left: auto;
+}
+p {
+ margin-bottom: 20px;
+}
+figure {
+ display: table;
+ max-width: 100%;
+ margin: 25px 0;
+}
+figure.left {
+ margin-right: auto;
+}
+figure.center {
+ margin-left: auto;
+ margin-right: auto;
+}
+figure.right {
+ margin-left: auto;
+}
+figure figcaption {
+ font-size: 14px;
+ padding: 5px 10px;
+ margin-top: 5px;
+ background: #ee72f1;
+ color: #21202c;
+}
+figure figcaption.left {
+ text-align: left;
+}
+figure figcaption.center {
+ text-align: center;
+}
+figure figcaption.right {
+ text-align: right;
+}
+code,
+kbd {
+ font-family: "Fira Code", Monaco, Consolas, Ubuntu Mono, monospace !important;
+ font-feature-settings: normal;
+ background: rgba(238, 114, 241, 0.2);
+ color: #ee72f1;
+ padding: 1px 6px;
+ margin: 0 2px;
+ font-size: 0.95rem;
+}
+code code,
+code kbd,
+kbd code,
+kbd kbd {
+ background: transparent;
+ padding: 0;
+ margin: 0;
+}
+pre {
+ background: transparent !important;
+ padding: 20px 10px;
+ margin: 40px 0;
+ font-size: 0.95rem !important;
+ overflow: auto;
+ border-top: 1px solid rgba(255, 255, 255, 0.1);
+ border-bottom: 1px solid rgba(255, 255, 255, 0.1);
+}
+pre + pre {
+ border-top: 0;
+ margin-top: -40px;
+}
+@media (max-width: 684px) {
+ pre {
+ white-space: pre-wrap;
+ word-wrap: break-word;
+ }
+}
+pre code {
+ background: none !important;
+ margin: 0;
+ padding: 0;
+ font-size: inherit;
+ border: none;
+}
+blockquote {
+ border-top: 1px solid #ee72f1;
+ border-bottom: 1px solid #ee72f1;
+ margin: 40px 0;
+ padding: 25px;
+}
+@media (max-width: 684px) {
+ blockquote {
+ padding-right: 0;
+ }
+}
+blockquote p:first-of-type {
+ margin-top: 0;
+}
+blockquote p:last-of-type {
+ margin-bottom: 0;
+}
+blockquote p {
+ position: relative;
+}
+blockquote p:first-of-type:before {
+ content: ">";
+ display: block;
+ position: absolute;
+ left: -25px;
+ color: #ee72f1;
+}
+blockquote.twitter-tweet {
+ position: relative;
+ background: rgba(238, 114, 241, 0.1);
+ font: inherit;
+ color: inherit;
+ border: 1px solid #ee72f1;
+ padding-top: 60px;
+}
+blockquote.twitter-tweet p:before {
+ content: "";
+}
+blockquote.twitter-tweet:before {
+ content: "> From Twitter:";
+ position: absolute;
+ top: 20px;
+ color: #ee72f1;
+ font-weight: bold;
+}
+blockquote.twitter-tweet a {
+ color: #ee72f1;
+}
+table {
+ table-layout: auto;
+ border-collapse: collapse;
+ width: 100%;
+ margin: 40px 0;
+}
+table,
+th,
+td {
+ border: 1px dashed #ee72f1;
+ padding: 10px;
+}
+th {
+ color: #ee72f1;
+}
+ul,
+ol {
+ margin-left: 22px;
+ padding: 0;
+}
+ul li,
+ol li {
+ position: relative;
+}
+@media (max-width: 684px) {
+ ul,
+ ol {
+ margin-left: 20px;
+ }
+}
+ol {
+ list-style: none;
+ counter-reset: li;
+}
+ol li {
+ counter-increment: li;
+}
+ol li:before {
+ content: counter(li);
+ position: absolute;
+ right: calc(100% + 10px);
+ color: #ee72f1;
+ display: inline-block;
+ text-align: right;
+}
+ol ol {
+ margin-left: 38px;
+}
+ol ol li {
+ counter-increment: li;
+}
+ol ol li:before {
+ content: counters(li, ".") " ";
+}
+mark {
+ background: #ee72f1;
+ color: #21202c;
+}
+.container {
+ display: flex;
+ flex-direction: column;
+ padding: 40px;
+ max-width: 864px;
+ min-height: 100vh;
+ border-right: 1px solid rgba(255, 255, 255, 0.1);
+}
+.container.full,
+.container.center {
+ border: none;
+ margin: 0 auto;
+}
+.container.full {
+ max-width: 100%;
+}
+@media (max-width: 684px) {
+ .container {
+ padding: 20px;
+ }
+}
+@media print {
+ .container {
+ display: initial;
+ }
+}
+.content {
+ display: flex;
+ flex-direction: column;
+}
+@media print {
+ .content {
+ display: initial;
+ }
+}
+hr {
+ width: 100%;
+ border: none;
+ background: rgba(255, 255, 255, 0.1);
+ height: 1px;
+}
+.hidden {
+ display: none;
+}
+sup {
+ line-height: 0;
+}
+.index-content {
+ margin-top: 20px;
+}
+.framed {
+ border: 1px solid #ee72f1;
+ padding: 20px;
+}
+.framed *:first-child {
+ margin-top: 0;
+}
+.framed *:last-child {
+ margin-bottom: 0;
+}
+.posts {
+ width: 100%;
+}
+.post {
+ width: 100%;
+ text-align: left;
+ margin: 20px auto;
+ padding: 20px 0;
+}
+.post:not(:last-of-type) {
+ border-bottom: 1px solid rgba(255, 255, 255, 0.1);
+}
+.post-meta {
+ font-size: 1rem;
+ margin-bottom: 10px;
+ color: rgba(238, 114, 241, 0.7);
+}
+.post-title {
+ position: relative;
+ color: #ee72f1;
+ margin: 0 0 15px;
+ padding-bottom: 15px;
+ border-bottom: 3px dotted #ee72f1;
+}
+.post-title:after {
+ content: "";
+ position: absolute;
+ bottom: 2px;
+ display: block;
+ width: 100%;
+ border-bottom: 3px dotted #ee72f1;
+}
+.post-title a {
+ text-decoration: none;
+}
+.post-tags {
+ display: block;
+ margin-bottom: 20px;
+ font-size: 1rem;
+ opacity: 0.5;
+}
+.post-tags a {
+ text-decoration: none;
+}
+.post-content {
+ margin-top: 30px;
+}
+.post-cover {
+ border: 20px solid #ee72f1;
+ background: transparent;
+ margin: 40px 0;
+ padding: 20px;
+}
+@media (max-width: 684px) {
+ .post-cover {
+ padding: 10px;
+ border-width: 10px;
+ }
+}
+.post ul {
+ list-style: none;
+}
+.post ul li:not(:empty):before {
+ content: "-";
+ position: absolute;
+ left: -20px;
+ color: #ee72f1;
+}
+.post--regulation h1 {
+ justify-content: center;
+}
+.post--regulation h2 {
+ justify-content: center;
+ margin-bottom: 10px;
+}
+.post--regulation h2 + h2 {
+ margin-top: -10px;
+ margin-bottom: 20px;
+}
+.hanchor {
+ color: rgba(238, 114, 241, 0.9);
+ text-decoration: none;
+ margin-left: 10px;
+ visibility: hidden;
+}
+h1:hover a,
+h2:hover a,
+h3:hover a,
+h4:hover a {
+ visibility: visible;
+}
+.footnotes {
+ color: rgba(255, 255, 255, 0.5);
+}
+.pagination {
+ margin-top: 50px;
+}
+@media print {
+ .pagination {
+ display: none;
+ }
+}
+.pagination__title {
+ display: flex;
+ text-align: center;
+ position: relative;
+ margin: 100px 0 20px;
+}
+.pagination__title-h {
+ text-align: center;
+ margin: 0 auto;
+ padding: 5px 10px;
+ background: #21202c;
+ color: rgba(255, 255, 255, 0.3);
+ font-size: 0.8rem;
+ text-transform: uppercase;
+ text-decoration: none;
+ letter-spacing: 0.1em;
+ z-index: 1;
+}
+.pagination__title hr {
+ position: absolute;
+ left: 0;
+ right: 0;
+ width: 100%;
+ margin-top: 15px;
+ z-index: 0;
+}
+.pagination__buttons {
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ flex-flow: row wrap;
+ gap: 10px;
+}
+.pagination__buttons a {
+ text-decoration: none;
+}
+.button {
+ position: relative;
+ display: inline-flex;
+ align-items: center;
+ justify-content: center;
+ font-size: 1rem;
+ padding: 0;
+ appearance: none;
+}
+@media (max-width: 684px) {
+ .button {
+ flex: 1;
+ }
+}
+.button a {
+ display: flex;
+ justify-content: center;
+ flex: 1;
+ padding: 8px 16px;
+ text-decoration: none;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+ overflow: hidden;
+}
+.button__text {
+ text-overflow: ellipsis;
+ white-space: nowrap;
+ overflow: hidden;
+}
+.button.next .button__icon {
+ margin-left: 8px;
+}
+.button.previous .button__icon {
+ margin-right: 8px;
+}
+.footer {
+ padding: 40px 0;
+ flex-grow: 0;
+ opacity: 0.5;
+}
+.footer__inner {
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+ margin: 0;
+ width: 760px;
+ max-width: 100%;
+}
+@media (max-width: 900px) {
+ .footer__inner {
+ flex-direction: column;
+ }
+}
+.footer a {
+ color: inherit;
+}
+.footer .copyright {
+ display: flex;
+ flex-flow: row wrap;
+ flex: 1;
+ align-items: center;
+ font-size: 1rem;
+ justify-content: center;
+}
+.footer .copyright--user {
+ margin: auto;
+ text-align: center;
+}
+.footer .copyright > *:first-child:not(:only-child) {
+ margin-right: 10px;
+}
+.footer .copyright span {
+ white-space: nowrap;
+}
+code[class*="language-"],
+pre[class*="language-"] {
+ color: #ccc;
+ background: none;
+ font-family: Consolas, Monaco, "Andale Mono", "Ubuntu Mono", monospace;
+ font-size: 1em;
+ text-align: left;
+ white-space: pre;
+ word-spacing: normal;
+ word-break: normal;
+ word-wrap: normal;
+ line-height: 1.5;
+ -moz-tab-size: 4;
+ -o-tab-size: 4;
+ tab-size: 4;
+ -webkit-hyphens: none;
+ -moz-hyphens: none;
+ -ms-hyphens: none;
+ hyphens: none;
+}
+pre[class*="language-"] {
+ padding: 1em;
+ margin: 0.5em 0;
+ overflow: auto;
+}
+:not(pre) > code[class*="language-"],
+pre[class*="language-"] {
+ background: #2d2d2d;
+}
+:not(pre) > code[class*="language-"] {
+ padding: 0.1em;
+ border-radius: 0.3em;
+ white-space: normal;
+}
+.token.comment,
+.token.block-comment,
+.token.prolog,
+.token.doctype,
+.token.cdata {
+ color: #999;
+}
+.token.punctuation {
+ color: #ccc;
+}
+.token.tag,
+.token.attr-name,
+.token.namespace,
+.token.deleted {
+ color: #e2777a;
+}
+.token.function-name {
+ color: #6196cc;
+}
+.token.boolean,
+.token.number,
+.token.function {
+ color: #f08d49;
+}
+.token.property,
+.token.class-name,
+.token.constant,
+.token.symbol {
+ color: #f8c555;
+}
+.token.selector,
+.token.important,
+.token.atrule,
+.token.keyword,
+.token.builtin {
+ color: #cc99cd;
+}
+.token.string,
+.token.char,
+.token.attr-value,
+.token.regex,
+.token.variable {
+ color: #7ec699;
+}
+.token.operator,
+.token.entity,
+.token.url {
+ color: #67cdcc;
+}
+.token.important,
+.token.bold {
+ font-weight: bold;
+}
+.token.italic {
+ font-style: italic;
+}
+.token.entity {
+ cursor: help;
+}
+.token.inserted {
+ color: green;
+}
+pre[data-line] {
+ position: relative;
+ padding: 1em 0 1em 3em;
+}
+.line-highlight {
+ position: absolute;
+ left: 0;
+ right: 0;
+ padding: inherit 0;
+ margin-top: 1em;
+ background: rgba(153, 122, 102, 0.08);
+ background: linear-gradient(
+ to right,
+ rgba(153, 122, 102, 0.1) 70%,
+ rgba(153, 122, 102, 0)
+ );
+ pointer-events: none;
+ line-height: inherit;
+ white-space: pre;
+}
+@media print {
+ .line-highlight {
+ -webkit-print-color-adjust: exact;
+ color-adjust: exact;
+ }
+}
+.line-highlight:before,
+.line-highlight[data-end]:after {
+ content: attr(data-start);
+ position: absolute;
+ top: 0.4em;
+ left: 0.6em;
+ min-width: 1em;
+ padding: 0 0.5em;
+ background-color: rgba(153, 122, 102, 0.4);
+ color: #f5f2f0;
+ font: bold 65%/1.5 sans-serif;
+ text-align: center;
+ vertical-align: 0.3em;
+ border-radius: 999px;
+ text-shadow: none;
+ box-shadow: 0 1px white;
+}
+.line-highlight[data-end]:after {
+ content: attr(data-end);
+ top: auto;
+ bottom: 0.4em;
+}
+.line-numbers .line-highlight:before,
+.line-numbers .line-highlight:after {
+ content: none;
+}
+pre[id].linkable-line-numbers span.line-numbers-rows {
+ pointer-events: all;
+}
+pre[id].linkable-line-numbers span.line-numbers-rows > span:before {
+ cursor: pointer;
+}
+pre[id].linkable-line-numbers span.line-numbers-rows > span:hover:before {
+ background-color: rgba(128, 128, 128, 0.2);
+}
+pre[class*="language-"].line-numbers {
+ position: relative;
+ padding-left: 3.8em;
+ counter-reset: linenumber;
+}
+pre[class*="language-"].line-numbers > code {
+ position: relative;
+ white-space: inherit;
+}
+.line-numbers .line-numbers-rows {
+ position: absolute;
+ pointer-events: none;
+ top: 0;
+ font-size: 100%;
+ left: -3.8em;
+ width: 3em;
+ letter-spacing: -1px;
+ border-right: 1px solid #999;
+ -webkit-user-select: none;
+ -moz-user-select: none;
+ -ms-user-select: none;
+ user-select: none;
+}
+.line-numbers-rows > span {
+ display: block;
+ counter-increment: linenumber;
+}
+.line-numbers-rows > span:before {
+ content: counter(linenumber);
+ color: #999;
+ display: block;
+ padding-right: 0.8em;
+ text-align: right;
+}
+.command-line-prompt {
+ border-right: 1px solid #999;
+ display: block;
+ float: left;
+ font-size: 100%;
+ letter-spacing: -1px;
+ margin-right: 1em;
+ pointer-events: none;
+ -webkit-user-select: none;
+ -moz-user-select: none;
+ -ms-user-select: none;
+ user-select: none;
+}
+.command-line-prompt > span:before {
+ color: #999;
+ content: " ";
+ display: block;
+ padding-right: 0.8em;
+}
+.command-line-prompt > span[data-user]:before {
+ content: "[" attr(data-user) "@" attr(data-host) "] $";
+}
+.command-line-prompt > span[data-user="root"]:before {
+ content: "[" attr(data-user) "@" attr(data-host) "] #";
+}
+.command-line-prompt > span[data-prompt]:before {
+ content: attr(data-prompt);
+}
+div.code-toolbar {
+ position: relative;
+}
+div.code-toolbar > .toolbar {
+ position: absolute;
+ top: 0.3em;
+ right: 0.2em;
+ transition: opacity 0.3s ease-in-out;
+ opacity: 0;
+}
+div.code-toolbar:hover > .toolbar {
+ opacity: 1;
+}
+div.code-toolbar:focus-within > .toolbar {
+ opacity: 1;
+}
+div.code-toolbar > .toolbar > .toolbar-item {
+ display: inline-block;
+}
+div.code-toolbar > .toolbar > .toolbar-item > a {
+ cursor: pointer;
+}
+div.code-toolbar > .toolbar > .toolbar-item > button {
+ background: none;
+ border: 0;
+ color: inherit;
+ font: inherit;
+ line-height: normal;
+ overflow: visible;
+ padding: 0;
+ -webkit-user-select: none;
+ -moz-user-select: none;
+ -ms-user-select: none;
+}
+div.code-toolbar > .toolbar > .toolbar-item > a,
+div.code-toolbar > .toolbar > .toolbar-item > button,
+div.code-toolbar > .toolbar > .toolbar-item > span {
+ color: #bbb;
+ font-size: 0.8em;
+ padding: 0 0.5em;
+ background: #f5f2f0;
+ background: rgba(224, 224, 224, 0.2);
+ box-shadow: 0 2px 0 0 rgba(0, 0, 0, 0.2);
+ border-radius: 0.5em;
+}
+div.code-toolbar > .toolbar > .toolbar-item > a:hover,
+div.code-toolbar > .toolbar > .toolbar-item > a:focus,
+div.code-toolbar > .toolbar > .toolbar-item > button:hover,
+div.code-toolbar > .toolbar > .toolbar-item > button:focus,
+div.code-toolbar > .toolbar > .toolbar-item > span:hover,
+div.code-toolbar > .toolbar > .toolbar-item > span:focus {
+ color: inherit;
+ text-decoration: none;
+}
+code.language-css,
+code.language-scss,
+.token.boolean,
+.token.string,
+.token.entity,
+.token.url,
+.language-css .token.string,
+.language-scss .token.string,
+.style .token.string,
+.token.attr-value,
+.token.keyword,
+.token.control,
+.token.directive,
+.token.statement,
+.token.regex,
+.token.atrule,
+.token.number,
+.token.inserted,
+.token.important {
+ color: #ee72f1 !important;
+}
+.token.tag-id,
+.token.atrule-id,
+.token.operator,
+.token.unit,
+.token.placeholder,
+.token.variable,
+.token.tag,
+.token.attr-name,
+.token.namespace,
+.token.deleted,
+.token.property,
+.token.class-name,
+.token.constant,
+.token.symbol {
+ color: rgba(238, 114, 241, 0.7) !important;
+}
+.token.property,
+.token.function,
+.token.function-name,
+.token.deleted,
+code.language-javascript,
+code.language-html,
+.command-line-prompt > span:before {
+ color: #9a999a !important;
+}
+.token.selector,
+.token.tag,
+.token.punctuation {
+ color: white;
+}
+.token.comment,
+.token.prolog,
+.token.doctype,
+.token.cdata {
+ color: rgba(255, 255, 255, 0.3) !important;
+}
+.token.namespace {
+ opacity: 0.7 !important;
+}
+pre[data-line] {
+ position: relative;
+}
+pre[class*="language-"] {
+ margin: 0;
+ padding: 0;
+ overflow: auto;
+}
+.line-highlight {
+ position: absolute;
+ left: 0;
+ right: 0;
+ padding: 0;
+ margin: 0;
+ background: rgba(230, 118, 232, 0.08);
+ pointer-events: none;
+ line-height: inherit;
+ white-space: pre;
+}
+.line-highlight:before,
+.line-highlight[data-end]:after {
+ content: attr(data-start);
+ position: absolute;
+ left: 0.6em;
+ min-width: 1em;
+ padding: 0 0.5em;
+ background-color: rgba(153, 122, 102, 0.4);
+ color: #f5f2f0;
+ font: bold 65%/1.5 sans-serif;
+ text-align: center;
+ vertical-align: 0.3em;
+ border-radius: 999px;
+ text-shadow: none;
+ box-shadow: 0 1px white;
+}
+.line-highlight[data-end]:after {
+ content: attr(data-end);
+ top: auto;
+ bottom: 0.4em;
+}
+.line-numbers .line-highlight:before,
+.line-numbers .line-highlight:after {
+ content: none;
+}
+.code-toolbar {
+ position: relative;
+ margin: 40px 0;
+ padding: 20px;
+ border: 1px solid rgba(255, 255, 255, 0.1);
+}
+.code-toolbar + .code-toolbar,
+.code-toolbar + .highlight,
+.code-toolbar + .highlight .code-toolbar {
+ border-top: 0;
+ margin-top: calc(-1 * $code-margin);
+}
+.code-toolbar pre,
+.code-toolbar code {
+ border: none;
+}
+.code-toolbar code {
+ display: block;
+ color: inherit;
+}
+.code-toolbar > .toolbar button {
+ font-size: 0.8em !important;
+ background: rgba(224, 224, 224, 0.2) !important;
+ color: #bbb !important;
+ box-shadow: 0 2px 0 0 rgba(0, 0, 0, 0.2) !important;
+ border-radius: 0 !important;
+ margin: 6px !important;
+ padding: 10px !important;
+ user-select: none;
+}
+.collapsable-code {
+ position: relative;
+ width: 100%;
+ margin: 40px 0;
+}
+.collapsable-code input[type="checkbox"] {
+ position: absolute;
+ visibility: hidden;
+}
+.collapsable-code input[type="checkbox"]:checked ~ pre,
+.collapsable-code input[type="checkbox"]:checked ~ .code-toolbar pre {
+ height: 0;
+ padding: 0;
+ border-top: none;
+}
+.collapsable-code input[type="checkbox"]:checked ~ .code-toolbar {
+ padding: 0;
+ border-top: none;
+}
+.collapsable-code input[type="checkbox"]:checked ~ .code-toolbar .toolbar {
+ display: none;
+}
+.collapsable-code
+ input[type="checkbox"]:checked
+ ~ label
+ .collapsable-code__toggle:after {
+ content: attr(data-label-expand);
+}
+.collapsable-code label {
+ position: relative;
+ display: flex;
+ justify-content: space-between;
+ min-width: 30px;
+ min-height: 30px;
+ margin: 0;
+ border-bottom: 1px solid #e676e8;
+ cursor: pointer;
+}
+.collapsable-code__title {
+ flex: 1;
+ color: #ee72f1;
+ padding: 3px 10px;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+ overflow: hidden;
+}
+.collapsable-code__language {
+ color: #ee72f1;
+ border: 1px solid #e676e8;
+ border-bottom: none;
+ text-transform: uppercase;
+ padding: 3px 10px;
+}
+.collapsable-code__toggle {
+ color: #ee72f1;
+ font-size: 16px;
+ padding: 3px 10px;
+}
+.collapsable-code__toggle:after {
+ content: attr(data-label-collapse);
+}
+.collapsable-code pre {
+ margin-top: 0;
+}
+.collapsable-code pre::first-line {
+ line-height: 0;
+}
+.collapsable-code .code-toolbar {
+ margin: 0;
+}
+.terms h1 {
+ color: #ee72f1;
+}
+.terms h3 {
+ font-size: initial;
+}
+body .gist .blob-num,
+body .gist .blob-code-inner {
+ border: none;
+}
diff --git a/themes/terminal/assets/css/syntax.scss b/themes/terminal/assets/css/syntax.scss
deleted file mode 100755
index 27aecc7..0000000
--- a/themes/terminal/assets/css/syntax.scss
+++ /dev/null
@@ -1,153 +0,0 @@
-code.language-css,
-code.language-scss,
-.token.boolean,
-.token.string,
-.token.entity,
-.token.url,
-.language-css .token.string,
-.language-scss .token.string,
-.style .token.string,
-.token.attr-value,
-.token.keyword,
-.token.control,
-.token.directive,
-.token.statement,
-.token.regex,
-.token.atrule,
-.token.number,
-.token.inserted,
-.token.important {
- color: $accent !important;
-}
-
-.token.tag-id,
-.token.atrule-id,
-.token.operator,
-.token.unit,
-.token.placeholder,
-.token.variable,
-.token.tag,
-.token.attr-name,
-.token.namespace,
-.token.deleted,
-.token.property,
-.token.class-name,
-.token.constant,
-.token.symbol {
- color: transparentize($accent, .3) !important;
-}
-
-.token.property,
-.token.function,
-.token.function-name,
-.token.deleted,
-code.language-javascript,
-code.language-html,
-.command-line-prompt > span:before {
- color: mix($accent, #999, .9) !important;
-}
-
-.token.selector,
-.token.tag,
-.token.punctuation {
- color: white;
-}
-
-.token.comment,
-.token.prolog,
-.token.doctype,
-.token.cdata {
- color: rgba(255, 255, 255, .3) !important;
-}
-
-.token.namespace {
- opacity: .7 !important;
-}
-
-pre[data-line] {
- position: relative;
-}
-
-pre[class*="language-"] {
- margin: 0;
- padding: 0;
- overflow: auto;
-}
-
-.line-highlight {
- position: absolute;
- left: 0;
- right: 0;
- padding: 0;
- margin: 0;
- background: transparentize(mix($accent, #999, 90%), .92);
- pointer-events: none;
- line-height: inherit;
- white-space: pre;
-}
-
-.line-highlight:before,
-.line-highlight[data-end]:after {
- content: attr(data-start);
- position: absolute;
- /* top: .4em; */
- left: .6em;
- min-width: 1em;
- padding: 0 .5em;
- background-color: hsla(24, 20%, 50%, .4);
- color: hsl(24, 20%, 95%);
- font: bold 65%/1.5 sans-serif;
- text-align: center;
- vertical-align: .3em;
- border-radius: 999px;
- text-shadow: none;
- box-shadow: 0 1px white;
-}
-
-.line-highlight[data-end]:after {
- content: attr(data-end);
- top: auto;
- bottom: .4em;
-}
-
-.line-numbers .line-highlight:before,
-.line-numbers .line-highlight:after {
- content: none;
-}
-
-.code-toolbar {
- $code-margin: 40px;
- position: relative;
- margin: $code-margin 0;
- padding: 20px;
- border: 1px solid rgba(255, 255, 255, .1);
-
- + .code-toolbar,
- + .highlight,
- + .highlight .code-toolbar {
- border-top: 0;
- margin-top: calc(-1 * $code-margin);
- }
-
- pre, code {
- border: none;
- }
-
- code {
- display: block;
- color: inherit;
- }
-
- > .toolbar {
- button {
- font-size: .8em !important;
- background: hsla(0,0%,87.8%,.2) !important;
- color: #bbb !important;
- box-shadow: 0 2px 0 0 rgba(0,0,0,.2) !important;
- border-radius: 0 !important;
- margin: 6px !important;
- padding: 10px !important;
- user-select:none
- }
- }
-}
diff --git a/themes/terminal/assets/css/terms.scss b/themes/terminal/assets/css/terms.scss
deleted file mode 100755
index 0c9a61b..0000000
--- a/themes/terminal/assets/css/terms.scss
+++ /dev/null
@@ -1,9 +0,0 @@
-.terms {
- h1 {
- color: $accent;
- }
-
- h3 {
- font-size: initial;
- }
-}
diff --git a/themes/terminal/assets/css/variables.scss b/themes/terminal/assets/css/variables.scss
deleted file mode 100755
index 09c7e28..0000000
--- a/themes/terminal/assets/css/variables.scss
+++ /dev/null
@@ -1,14 +0,0 @@
-/* COLOR VARIABLES */
-$background: mix($accent, #1D1E28, 2%);
-$color: white;
-$border-color: rgba(255, 255, 255, .1);
-
-/* MEDIA QUERIES */
-$phone: "max-width: 684px";
-$tablet: "max-width: 900px";
-
-/* variables for js, must be the same as these in @custom-media queries */
-:root {
- --phoneWidth: (max-width: 684px);
- --tabletWidth: (max-width: 900px);
-}
diff --git a/themes/terminal/layouts/partials/head.html b/themes/terminal/layouts/partials/head.html
index f91ea16..50c9a0c 100755
--- a/themes/terminal/layouts/partials/head.html
+++ b/themes/terminal/layouts/partials/head.html
@@ -1,94 +1,95 @@
-
-
-
-{{ if .Params.noindex }}
- {{ if or (eq (.Param "noindex") true) (eq (.Param "noindex") "true") }}
-
- {{ end }}
-{{ else }}
-
+
+
+ {{ if .Params.noindex }} {{ if
+or (eq (.Param "noindex") true) (eq (.Param "noindex") "true") }}
+
+{{ end }} {{ else }}
+
{{ end }}
-{{ template "_internal/google_analytics.html" . }}
-
-{{ $defaultStyles := resources.Get "css/style.scss" }}
-
-{{ if and (isset .Params "color") (not (eq .Params.color "")) }}
- {{ $localColorCss := resources.Get (printf "css/color/%s.scss" .Params.color) }}
- {{ $localCss := slice $localColorCss $defaultStyles | resources.Concat (printf "css/%s-local.scss" .Params.color) }}
- {{ $localColorStyles := $localCss | resources.ToCSS }}
-
-{{ else }}
-
- {{ $colorCss := resources.Get (printf "css/color/%s.scss" ($.Site.Params.ThemeColor | default "orange")) }}
- {{ $css := slice $colorCss $defaultStyles | resources.Concat "css/base.scss" }}
- {{ $options := (dict "targetPath" "styles.css" "outputStyle" "compressed" "enableSourceMap" true "precision" 6 "includePaths" (slice "node_modules")) }}
- {{ $styles := $css | resources.ToCSS $options }}
-
-{{ end }}
-
-
-{{ if (fileExists "static/style.css") -}}
-
-{{- end }}
+{{- with resources.Get "css/styles.css" }} {{- if eq hugo.Environment
+"development" }}
+
+{{- else }} {{- with . | minify | fingerprint }}
+
+{{- end }} {{- end }} {{- end }}
{{ if isset $.Site.Params "favicon" }}
-
-{{ else }}
-
-
+
{{ end }}
-{{ if (isset $.Site.Params "twitter") }}
- {{ if (isset $.Site.Params.Twitter "site") }}
-
- {{ end }}
-
-{{ end }}
+{{ if (isset $.Site.Params "twitter") }} {{ if (isset $.Site.Params.Twitter
+"site") }}
+
+{{ end }} {{ end }}
-
-
-
+
+
+
-{{ if (isset .Params "cover") }}
- {{ $pageCover := .Param "cover" }}
- {{ with (.Resources.GetMatch (.Param "cover")) }}
- {{ $pageCover = .RelPermalink }}
- {{ end }}
-
-{{ else }}
- {{ if isset $.Site.Params "favicon" }}
-
- {{ else }}
-
- {{ end }}
-{{ end }}
-
-
+{{ if (isset .Params "cover") }} {{ $pageCover := .Param "cover" }} {{ with
+(.Resources.GetMatch (.Param "cover")) }} {{ $pageCover = .RelPermalink }} {{
+end }}
+
+{{ else }} {{ if isset $.Site.Params "favicon" }}
+
+{{ else }} {{ end }} {{ end }}
+
+
{{ range .Params.categories }}
-
-{{ end }}
-{{ if isset .Params "date" }}
-
+
+{{ end }} {{ if isset .Params "date" }}
+
{{ end }}
{{ with .OutputFormats.Get "RSS" }}
-
+
{{ end }}
{{ with .OutputFormats.Get "json" }}
-
+
{{ end }}