From 87992468e1dedcc8a5d765f87738f18dce671845 Mon Sep 17 00:00:00 2001 From: User Mms Date: Sun, 13 Oct 2024 21:57:58 +0200 Subject: feat: more of new site --- themes/24-unification/layouts/_default/baseof.html | 297 +++++++++ themes/24-unification/layouts/_default/list.html | 38 ++ themes/24-unification/layouts/_default/rss.xml | 81 +++ themes/24-unification/layouts/_default/single.html | 4 + themes/24-unification/static/style.css | 709 +++++++++++++++++++++ 5 files changed, 1129 insertions(+) create mode 100644 themes/24-unification/layouts/_default/baseof.html create mode 100644 themes/24-unification/layouts/_default/list.html create mode 100644 themes/24-unification/layouts/_default/rss.xml create mode 100644 themes/24-unification/layouts/_default/single.html create mode 100644 themes/24-unification/static/style.css (limited to 'themes') diff --git a/themes/24-unification/layouts/_default/baseof.html b/themes/24-unification/layouts/_default/baseof.html new file mode 100644 index 0000000..c484d92 --- /dev/null +++ b/themes/24-unification/layouts/_default/baseof.html @@ -0,0 +1,297 @@ + + + + + + {{ .Page.Title }} + + + + + + + {{- $header_rect := resources.Get "blog/logo/right.png" }} + {{- $header_rect_180 := $header_rect.Resize "180x webp q90"}} + + + {{- $header_rect_32 := $header_rect.Resize "32x webp q90"}} + + + {{- $header_rect_16 := $header_rect.Resize "16x webp q90"}} + + + + + + + + + {{- $imageUrl := default "blog/logo/right.png" .Params.image }} + {{- $image := resources.Get $imageUrl }} + + + + + + + + + + + + + + + + + + + + +
+ {{ block "main" . }} + {{ end }} +
+ + diff --git a/themes/24-unification/layouts/_default/list.html b/themes/24-unification/layouts/_default/list.html new file mode 100644 index 0000000..58cb880 --- /dev/null +++ b/themes/24-unification/layouts/_default/list.html @@ -0,0 +1,38 @@ +{{ define "main" }} + +{{if .Page.Content}} +
+ {{ .Page.Content }} +
+{{ else }} +{{ $paginator := .Paginate .Site.RegularPages.ByDate.Reverse 10 }} + +{{ range $paginator.Pages }} +{{ if eq .Section "blog" }} +{{ partial "partials/blog/full-post.html" . }} +{{ else }} +{{ partial "partials/blog/cross-site-post.html" . }} +{{ end }} +{{ end }} + + + +{{end}} +{{end}} diff --git a/themes/24-unification/layouts/_default/rss.xml b/themes/24-unification/layouts/_default/rss.xml new file mode 100644 index 0000000..fa34bd5 --- /dev/null +++ b/themes/24-unification/layouts/_default/rss.xml @@ -0,0 +1,81 @@ +{{- /* Deprecate site.Author.email in favor of site.Params.author.email */}} +{{- $authorEmail := "" }} +{{- with site.Params.author }} + {{- if reflect.IsMap . }} + {{- with .email }} + {{- $authorEmail = . }} + {{- end }} + {{- end }} +{{- else }} + {{- with site.Author.email }} + {{- $authorEmail = . }} + {{- warnf "The author key in site configuration is deprecated. Use params.author.email instead." }} + {{- end }} +{{- end }} + +{{- /* Deprecate site.Author.name in favor of site.Params.author.name */}} +{{- $authorName := "" }} +{{- with site.Params.author }} + {{- if reflect.IsMap . }} + {{- with .name }} + {{- $authorName = . }} + {{- end }} + {{- else }} + {{- $authorName = . }} + {{- end }} +{{- else }} + {{- with site.Author.name }} + {{- $authorName = . }} + {{- warnf "The author key in site configuration is deprecated. Use params.author.name instead." }} + {{- end }} +{{- end }} + +{{- $pctx := . }} +{{- if .IsHome }}{{ $pctx = .Site }}{{ end }} +{{- $pages := slice }} +{{- if $.IsHome }} +{{- $pages = $pctx.RegularPages}} +{{- else if $.IsSection }} +{{- $pages = $pctx.RegularPagesRecursive}} +{{- else }} +{{- $pages = $pctx.Pages }} +{{- end }} +{{- $limit := .Site.Config.Services.RSS.Limit }} +{{- if ge $limit 1 }} +{{- $pages = $pages | first $limit }} +{{- end }} +{{- printf "" | safeHTML }} + + + {{ if eq .Title .Site.Title }}{{ .Site.Title }}{{ else }}{{ with .Title }}{{ . }} on {{ end }}{{ .Site.Title }}{{ end }} + {{ .Permalink }} + Recent content {{ if ne .Title .Site.Title }}{{ with .Title }}in {{ . }} {{ end }}{{ end }}on {{ .Site.Title }} + Hugo -- gohugo.io + {{ site.Language.LanguageCode }}{{ with $authorEmail }} + {{.}}{{ with $authorName }} ({{ . }}){{ end }}{{ end }}{{ with $authorEmail }} + {{ . }}{{ with $authorName }} ({{ . }}){{ end }}{{ end }}{{ with .Site.Copyright }} + {{ . }}{{ end }}{{ if not .Date.IsZero }} + {{ (index $pages.ByLastmod.Reverse 0).Lastmod.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }}{{ end }} + {{- with .OutputFormats.Get "RSS" }} + {{ printf "" .Permalink .MediaType | safeHTML }} + {{- end }} + {{- range $pages.ByPublishDate.Reverse}} + + {{ .Title }} + {{ .Permalink }} + {{ .Date.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }} + {{- with $authorEmail }}{{ . }}{{ with $authorName }} ({{ . }}){{ end }}{{ end }} + {{ crypto.MD5 .Date }} + + {{ if in .Page.Params.Categories "blog" }} + {{ safeHTML "

Reply via email

]]> + {{ else }} + {{ safeHTML "

Reply via email

]]> + {{ end }} +
+
+ {{- end }} +
+
diff --git a/themes/24-unification/layouts/_default/single.html b/themes/24-unification/layouts/_default/single.html new file mode 100644 index 0000000..fdfcdd4 --- /dev/null +++ b/themes/24-unification/layouts/_default/single.html @@ -0,0 +1,4 @@ +{{ define "main" }} +{{ partial "partials/blog/full-post.html" . }} + +{{- end }} diff --git a/themes/24-unification/static/style.css b/themes/24-unification/static/style.css new file mode 100644 index 0000000..c594514 --- /dev/null +++ b/themes/24-unification/static/style.css @@ -0,0 +1,709 @@ +:root { + color-scheme: light dark; + + --site-bg: #fff; + --menu-bg: var(--menu-bg) + --text-color: #000; + --link-color: var(--text-color); + + --logo-bg-color: #000; + + --article-bg: ##fcfcfc; + --article-border-color: #f3f1f1; + --highlight-bg: rgba(240, 240, 240, 0.42); + + --border-color: var(--text-color); + + --blockquote-border-color: #d2d2d2; + --blockquote-color: ##666666; + + --pre-bg: #f0f0f0; + + --font-size: 1.2em; + --mobile-font-size: 1hem; + --header-font-size: 0.9em; + + --site-font: monospace; + --header-font: arial; +} +/* default_variables_end */ + +/* article_variables_start */ +:root { + --article-highlight-color: #863fc1; + --article-logo-bg-color: var(--article-highlight-color); + --article-logo-h1-color: var(--article-highlight-color); +} +/* article_variables_end */ + +/* ste_info_variables_start */ +:root { + --site-info-hightlight-color: #9ba89a; + --site-info-logo-bg-color: var(--site-info-hightlight-color); + --site-info-h1-color: var(--site-info-hightlight-color); +} +/* ste_info_variables_end */ + + + + + + +/* dark_mode_variables_end */ +@media (prefers-color-scheme: dark) { + :root { + --site-bg: #000; + --text-color: #abb1b1; + + --logo-bg-color: #abb1b1; + + --article-bg: #141818; + + --article-border-color: var(--article-bg); + --highlight-bg: rgb(31 27 27); + + --border-color: var(--text-color); + + --pre-bg: #1b2121; + } +} +/* dark_mode_variables_end */ + +/* site_start */ +body { + font-family: var(--site-font); + padding: 0; + font-size: var(--font-size); + background-color: var(--site-bg); + color: var(--text-color); + max-width: 800px; + margin: auto; +} +@media only screen and (max-width: 600px) { + body { + font-size: var(--mobile-font-size); + } +} +main, footer { + width: 100%; + max-width: 95%; + margin-left: auto; + margin-right: auto; +} +img { + max-width: 99%; + width: auto; + height: auto; +} +a { color: var(--link-color); } +h2 a { text-decoration: none; } + +.placeholder { + opacity: 0.55; +} +/* site_end */ + +/* generic_header_start */ +header { + display: flex; + flex-direction: row; + flex-wrap: nowrap; + justify-content: normal; + align-items: normal; + align-content: normal; + max-width: 95%; + margin-left: auto; + margin-right: auto; +} +header > .logo { + display: block; + flex-grow: 0; + flex-shrink: 1; + flex-basis: auto; + align-self: auto; + order: 0; + width: 50px; + height: 80px; + background-color: var(--logo-bg-color); + position: relative; + overflow: hidden; +} +header > .name { + display: block; + flex-grow: 1; + flex-shrink: 0; + flex-basis: auto; + align-self: auto; + order: 0; + text-align: left; + position: relative; +} +header > .name > nav { + position: absolute; + bottom: -10px; + padding: 10px; +} +h1 { + font-size: inherit; + margin: 0; + text-decoration: none; +} +h1 a, +h2 a { + text-decoration: none; + color: inherit; +} +.breadcrumb { +} +sup { + font-size: 0.6em; +} +header ol { + padding-left: 0; + margin-top: 0; + margin-bottom: 0; +} + +header li { + display: block; +} +/* */ +header li:not(:last-child)::after { + content: "ยป"; +} + +/* generic_header_end */ + +h2 a { color: inherit; } +h3 a { color: inherit; } +h4 a { color: inherit; } +h5 a { color: inherit; } + +/* article_header_end */ +body.article > header > .logo { + background-color: var(--article-logo-bg-color); +} +body.article > header > .logo > img.files { + position: absolute; + bottom: 4px; + right: -2px; + transform: scale(1); +} +body.article h1{ + color: var(--article-logo-h1-color); +} + + + + +/* site_info_header_end */ +body.site-info > header > .logo { + background-color: var(--site-info-logo-bg-color); +} +body.site-info h1{ + color: var(--site-info-h1-color); +} +/* site_info_header_end */ + + + +/* blog_post_list_start */ +article.blog-post-item > h2 > a { + text-decoration: none; +} +article.blog-post-item > nav { + display: inline-block; +} +nav.blog-pages-list { + margin-bottom: 20px; +} +nav.blog-pages-list a { + text-decoration: underline; +} +/* blog_post_list_end */ + +/* article_list_start */ +article.article-abstract-list-item { + margin-bottom: 5px; +} +article.article-abstract-list-item > h2 { + margin-top: 0; +} +article.article-abstract-list-item > h2 > a { + text-decoration: none; +} +article.article-abstract-list-item > a > aside { + margin-top: 7px; + opacity : 0.7; +} + +/* article_list_end */ + +/* index_start */ +nav.personal { +} +nav.personal > a { + font-weight: bold; +} +table { width: 100% } +td { border-style: solid!important; border-width: 1px;} + +table.small { width: auto; border-style: none!important; } +table.small td { border-style: none!important; } +table.small tr { border-style: none!important; } + +/* single_start */ + +article > .publish-date { + text-align: right; +} + +article > .publish-date a { + text-decoration: none; +} +/*single_end */ + +/* inline_nav_start */ +.inline-nav > h4 { + text-transform: none!important; +} +.inline-nav > ul > li > b { + color: var(--star-trek-highlight-color); +} + +/* inline_nav_end */ + + + + + +/* legacy_code_start */ + +/* ---------- Main */ +main { + margin-top: 30px; +} + + +/* ----------- Taxmomy list */ + +.list-item time { + opacity: 0.5; +} +.list-item span { + font-weight: bold; +} + +/* ----------- Articles / Posts */ +article { + margin-bottom: 20px; + padding: 5px; + line-height: 1.32em; +} +article p { + text-align: justify; +} +article a { + text-decoration: underline; +} +h2, h3, h4, h5 { + text-align: left; + border: 0; + border-bottom-width: 0px; + border-style: solid; + font-size: inherit; + text-transform: uppercase; +} +h2 { + border-bottom-width: 1px; +} + + + +/* emacs_article_start */ + +/* emacs_article_end */ + + +blockquote { + border: 0; + border-left: 3px; + border-style: solid; + border-color: var(--blockquote-border-color); + margin-left: 15px; + padding-left: 15px; + color: var(--blockquote-color); +} +pre { + padding-bottom: 5px; + white-space: pre-wrap; + padding: 11px; + background-color: var(--pre-bg); + word-break: keep-all; +} +pre code { + max-width: 100%; + /* word-break: break-all; */ +} + +/* ----------- Articles images */ +article figure { + text-align: center; + margin: 0; + max-width: 100%; + font-size: 0.8em; +} +img.float-right { + float: right; + display: inline; + margin-left: 10px; +} +img.center { + max-width: 100%; + height: auto; +} +img.small { + max-width: 50%; + height: auto; +} +figure.graph { + background-color: var(--highlight-bg); + padding: 5px; + padding-top: 20px; +} +figure.graph img { + width: 95%; +} + +/* ----------- Articles adjustement navigation */ +.next-link { + float: right; +} + +/* ----------- Footer */ +footer { + text-align: center; + padding: 10px 0 30px 0; +} + +/* ---------- Footnotes */ +a[href^="#fn:"], a[href^="#fnref:"] { + text-decoration: none; +} +a[href^="#fn:"]:before{ content: '[' } +a[href^="#fn:"]:after{ content: ']' } +.footnotes p { + margin: 3px; +} +.footnotes hr { + size: 1px; +} +.footnotes::before { + border: 0; + border-bottom-width: 1px; + border-style: solid; + font-weight: bold; + display: block; + text-transform: uppercase; +} + +/* ----------- Donations */ +.donor { + display: flex; + flex-direction: row; + flex-wrap: wrap; + justify-content: center; + align-items: center; + align-content: flex-start; + gap: 50px; +} + +/* --------- Code blocks */ + +/* Background */ .bg { background-color: #f8f8f8; } +/* PreWrapper */ .chroma { background-color: #f8f8f8; } +/* Other */ .chroma .x { } +/* Error */ .chroma .err { } +/* CodeLine */ .chroma .cl { } +/* LineLink */ .chroma .lnlinks { outline: none; text-decoration: none; color: inherit } +/* LineTableTD */ .chroma .lntd { vertical-align: top; padding: 0; margin: 0; border: 0; } +/* LineTable */ .chroma .lntable { border-spacing: 0; padding: 0; margin: 0; border: 0; } +/* LineHighlight */ .chroma .hl { background-color: #ffffcc } +/* LineNumbersTable */ .chroma .lnt { white-space: pre; -webkit-user-select: none; user-select: none; margin-right: 0.4em; padding: 0 0.4em 0 0.4em;color: #7f7f7f } +/* LineNumbers */ .chroma .ln { white-space: pre; -webkit-user-select: none; user-select: none; margin-right: 0.4em; padding: 0 0.4em 0 0.4em;color: #7f7f7f } +/* Line */ .chroma .line { display: flex; } +/* Keyword */ .chroma .k { color: #aa22ff; font-weight: bold } +/* KeywordConstant */ .chroma .kc { color: #aa22ff; font-weight: bold } +/* KeywordDeclaration */ .chroma .kd { color: #aa22ff; font-weight: bold } +/* KeywordNamespace */ .chroma .kn { color: #aa22ff; font-weight: bold } +/* KeywordPseudo */ .chroma .kp { color: #aa22ff } +/* KeywordReserved */ .chroma .kr { color: #aa22ff; font-weight: bold } +/* KeywordType */ .chroma .kt { color: #00bb00; font-weight: bold } +/* Name */ .chroma .n { } +/* NameAttribute */ .chroma .na { color: #bb4444 } +/* NameBuiltin */ .chroma .nb { color: #aa22ff } +/* NameBuiltinPseudo */ .chroma .bp { } +/* NameClass */ .chroma .nc { color: #0000ff } +/* NameConstant */ .chroma .no { color: #880000 } +/* NameDecorator */ .chroma .nd { color: #aa22ff } +/* NameEntity */ .chroma .ni { color: #999999; font-weight: bold } +/* NameException */ .chroma .ne { color: #d2413a; font-weight: bold } +/* NameFunction */ .chroma .nf { color: #00a000 } +/* NameFunctionMagic */ .chroma .fm { } +/* NameLabel */ .chroma .nl { color: #a0a000 } +/* NameNamespace */ .chroma .nn { color: #0000ff; font-weight: bold } +/* NameOther */ .chroma .nx { } +/* NameProperty */ .chroma .py { } +/* NameTag */ .chroma .nt { color: #008000; font-weight: bold } +/* NameVariable */ .chroma .nv { color: #b8860b } +/* NameVariableClass */ .chroma .vc { } +/* NameVariableGlobal */ .chroma .vg { } +/* NameVariableInstance */ .chroma .vi { } +/* NameVariableMagic */ .chroma .vm { } +/* Literal */ .chroma .l { } +/* LiteralDate */ .chroma .ld { } +/* LiteralString */ .chroma .s { color: #bb4444 } +/* LiteralStringAffix */ .chroma .sa { color: #bb4444 } +/* LiteralStringBacktick */ .chroma .sb { color: #bb4444 } +/* LiteralStringChar */ .chroma .sc { color: #bb4444 } +/* LiteralStringDelimiter */ .chroma .dl { color: #bb4444 } +/* LiteralStringDoc */ .chroma .sd { color: #bb4444; font-style: italic } +/* LiteralStringDouble */ .chroma .s2 { color: #bb4444 } +/* LiteralStringEscape */ .chroma .se { color: #bb6622; font-weight: bold } +/* LiteralStringHeredoc */ .chroma .sh { color: #bb4444 } +/* LiteralStringInterpol */ .chroma .si { color: #bb6688; font-weight: bold } +/* LiteralStringOther */ .chroma .sx { color: #008000 } +/* LiteralStringRegex */ .chroma .sr { color: #bb6688 } +/* LiteralStringSingle */ .chroma .s1 { color: #bb4444 } +/* LiteralStringSymbol */ .chroma .ss { color: #b8860b } +/* LiteralNumber */ .chroma .m { color: #666666 } +/* LiteralNumberBin */ .chroma .mb { color: #666666 } +/* LiteralNumberFloat */ .chroma .mf { color: #666666 } +/* LiteralNumberHex */ .chroma .mh { color: #666666 } +/* LiteralNumberInteger */ .chroma .mi { color: #666666 } +/* LiteralNumberIntegerLong */ .chroma .il { color: #666666 } +/* LiteralNumberOct */ .chroma .mo { color: #666666 } +/* Operator */ .chroma .o { color: #666666 } +/* OperatorWord */ .chroma .ow { color: #aa22ff; font-weight: bold } +/* Punctuation */ .chroma .p { } +/* Comment */ .chroma .c { color: #008800; font-style: italic } +/* CommentHashbang */ .chroma .ch { color: #008800; font-style: italic } +/* CommentMultiline */ .chroma .cm { color: #008800; font-style: italic } +/* CommentSingle */ .chroma .c1 { color: #008800; font-style: italic } +/* CommentSpecial */ .chroma .cs { color: #008800; font-weight: bold } +/* CommentPreproc */ .chroma .cp { color: #008800 } +/* CommentPreprocFile */ .chroma .cpf { color: #008800 } +/* Generic */ .chroma .g { } +/* GenericDeleted */ .chroma .gd { color: #a00000 } +/* GenericEmph */ .chroma .ge { font-style: italic } +/* GenericError */ .chroma .gr { color: #ff0000 } +/* GenericHeading */ .chroma .gh { color: #000080; font-weight: bold } +/* GenericInserted */ .chroma .gi { color: #00a000 } +/* GenericOutput */ .chroma .go { color: #888888 } +/* GenericPrompt */ .chroma .gp { color: #000080; font-weight: bold } +/* GenericStrong */ .chroma .gs { font-weight: bold } +/* GenericSubheading */ .chroma .gu { color: #800080; font-weight: bold } +/* GenericTraceback */ .chroma .gt { color: #0044dd } +/* GenericUnderline */ .chroma .gl { text-decoration: underline } +/* TextWhitespace */ .chroma .w { color: #bbbbbb } + +/* legacy_code_end */ + + +/* brain_rot_start */ +:root { + --brain-rot-highlight-color: #978b27; +} + +.brain-rot > header > .logo { + background-color: var(--brain-rot-highlight-color); +} +.brain-rot > header > .logo > img { + position: absolute; + bottom: 0px; + right: -5px; + transform: scale(0.9); +} +.brain-rot h1 { + color: var(--brain-rot-highlight-color); +} + +.brain-rot h2, +.brain-rot h3, +.brain-rot h4, +.brain-rot h5, +.brain-rot h6 { + color: var(--brain-rot-highlight-color); + border-color: var(--brain-rot-highlight-color) +} +.brain-rot .new { + color: var(--brain-rot-highlight-color); +} +.rating-box { + float: right; + margin: 10px; + text-align: center; +} +/* brain_rot_end */ + +/* star_trek_start */ + +:root { + --star-trek-highlight-color: #3e7dc0; +} + +body.star-trek > header > .logo { + background-color: var(--star-trek-highlight-color); +} +body.star-trek > header > .logo > img.stbadge { + position: absolute; + bottom: -12px; + right: -6px; + transform: scale(0.8); +} +body.star-trek h1{ + color: var(--star-trek-highlight-color); +} + +.star-trek h2, +.star-trek h3, +.star-trek h4, +.star-trek h5, +.star-trek h6 { + color: var(--star-trek-highlight-color); + border-color: var(--star-trek-highlight-color) +} + +.star-trek .new { + color: var(--star-trek-highlight-color) +} + +img.vert-move:hover { + animation: mover 1s infinite alternate; +} + +@keyframes mover { + 0% { transform: translateY(0); } + 100% { transform: translateY(-10px); } +} + +/* star_trek__end */ + + + +/* bsd_start */ +:root { + --bsd-highlight-color: #ab2b28; +} + +body.bsd > header > .logo { + background-color: var(--bsd-highlight-color); +} +body.bsd > header > .logo > img.beastie { + position: absolute; + bottom: 0px; + right: -11px; + transform: scale(1.1); +} +.bsd h1 { + color: var(--bsd-highlight-color); +} + +.bsd h2, +.bsd h3, +.bsd h4, +.bsd h5, +.bsd h6 { + color: var(--bsd-highlight-color); + border-color: var(--bsd-highlight-color) +} + +.bsd .new { + color: var(--bsd-highlight-color) +} + + +/* bsd_end */ + + + +/* emacs_start */ +:root { + --emacs-highlight-color: #7F5AB6; +} + +body.emacs > header > .logo { + background-color: var(--emacs-highlight-color); +} +body.emacs > header > .logo > img { + position: absolute; + bottom: 0px; + right: -2px; + transform: scale(0.9); +} +.emacs h1 { + color: var(--emacs-h1-color); +} + +.emacs h2, +.emacs h3, +.emacs h4, +.emacs h5, +.emacs h6 { + color: var(--emacs-highlight-color); + border-color: var(--emacs-highlight-color) +} +.emacs .new { + color: var(--emacs-highlight-color) +} + +/* emacs_end */ + + +/* blog_start */ +:root { + --blog-highlight-color: #4c683c;; +} + +body.blog > header > .logo { + background-color: var(--blog-highlight-color); +} +body.blog > header > .logo > img.blogicon { + position: absolute; + bottom: 0px; + right: -2px; + transform: scale(0.9); +} +body.blog h1 { + color: var(--blog-h1-color); +} + +.blog h2, +.blog h3, +.blog h4, +.blog h5, +.blog h6 { + color: var(--blog-highlight-color); + border-color: var(--blog-highlight-color) +} +/* emacs_end */ + +/* omake_start */ +:root { + --omake-highlight-color: #b47379; +} + +.omake h1 { + color: var(--omake-h1-color); +} + + .omake h2, + .omake h3, + .omake h4, + .omake h5, + .omake h6 { + color: var(--omake-highlight-color); + border-color: var(--omake-highlight-color) + } + + /* omake_end */ -- cgit v1.2.3